mirror of
https://github.com/cheveguerra/whaticket-community.git
synced 2026-04-19 20:29:17 +00:00
add validation to whatsapp name
This commit is contained in:
@@ -17,15 +17,13 @@ export const index = async (req: Request, res: Response): Promise<Response> => {
|
||||
|
||||
interface WhatsappData {
|
||||
name: string;
|
||||
status: string;
|
||||
status?: string;
|
||||
isDefault?: boolean;
|
||||
}
|
||||
|
||||
export const store = async (req: Request, res: Response): Promise<Response> => {
|
||||
// const io = getIO();
|
||||
|
||||
console.log("aqui");
|
||||
|
||||
const { name, status, isDefault }: WhatsappData = req.body;
|
||||
|
||||
const whatsapp = await CreateWhatsAppService({ name, status, isDefault });
|
||||
|
||||
@@ -9,7 +9,8 @@ import {
|
||||
AutoIncrement,
|
||||
Default,
|
||||
AllowNull,
|
||||
HasMany
|
||||
HasMany,
|
||||
Unique
|
||||
} from "sequelize-typescript";
|
||||
import Ticket from "./Ticket";
|
||||
|
||||
@@ -20,6 +21,8 @@ class Whatsapp extends Model<Whatsapp> {
|
||||
@Column
|
||||
id: number;
|
||||
|
||||
@AllowNull
|
||||
@Unique
|
||||
@Column(DataType.TEXT)
|
||||
name: string;
|
||||
|
||||
|
||||
@@ -15,12 +15,27 @@ const CreateWhatsAppService = async ({
|
||||
isDefault = false
|
||||
}: Request): Promise<Whatsapp> => {
|
||||
const schema = Yup.object().shape({
|
||||
name: Yup.string().required().min(2),
|
||||
name: Yup.string()
|
||||
.required()
|
||||
.min(2)
|
||||
.test(
|
||||
"Check-name",
|
||||
"This whatsapp name is already used.",
|
||||
async value => {
|
||||
if (value) {
|
||||
const whatsappFound = await Whatsapp.findOne({
|
||||
where: { name: value }
|
||||
});
|
||||
return !whatsappFound;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
),
|
||||
isDefault: Yup.boolean()
|
||||
.required()
|
||||
.test(
|
||||
"Check-default",
|
||||
"Only one default whatsapp is permited",
|
||||
"Only one default whatsapp is permitted",
|
||||
async value => {
|
||||
if (value === true) {
|
||||
const whatsappFound = await Whatsapp.findOne({
|
||||
|
||||
Reference in New Issue
Block a user