first commit
This commit is contained in:
71
src/modules/ticket/validation/ticket.validation.ts
Normal file
71
src/modules/ticket/validation/ticket.validation.ts
Normal file
@@ -0,0 +1,71 @@
|
||||
import Joi from "joi";
|
||||
import { TicketPriority, TicketStatus } from "../../../core/types";
|
||||
|
||||
export const ticketValidationSchema = Joi.object({
|
||||
// ticketNumber: Joi.string().optional().allow(null,""),
|
||||
departmentId: Joi.string().uuid().required().messages({
|
||||
"string.base": "شناسه دپارتمان نامعتبر است",
|
||||
"string.empty": "شناسه دپارتمان الزامی است",
|
||||
"string.guid": "فرمت شناسه دپارتمان صحیح نیست",
|
||||
"any.required": "شناسه دپارتمان الزامی است",
|
||||
}),
|
||||
|
||||
internalPhone: Joi.string()
|
||||
.pattern(/^[0-9]{3,10}$/)
|
||||
.optional()
|
||||
.messages({
|
||||
"string.pattern.base": "شماره داخلی باید فقط عدد و بین ۳ تا ۱۰ رقم باشد",
|
||||
}),
|
||||
|
||||
requestType: Joi.string().required().messages({
|
||||
"string.empty": "نوع درخواست الزامی است",
|
||||
"any.required": "نوع درخواست الزامی است",
|
||||
}),
|
||||
|
||||
priority: Joi.string()
|
||||
.valid(...Object.values(TicketPriority))
|
||||
.optional()
|
||||
.messages({
|
||||
"any.only": "اولویت انتخاب شده معتبر نیست",
|
||||
}),
|
||||
|
||||
description: Joi.string().min(5).required().messages({
|
||||
"string.empty": "توضیحات الزامی است",
|
||||
"string.min": "توضیحات باید حداقل ۵ کاراکتر باشد",
|
||||
"any.required": "توضیحات الزامی است",
|
||||
}),
|
||||
|
||||
relatedSystem: Joi.string().optional().allow("").messages({
|
||||
"string.base": "سیستم مرتبط نامعتبر است",
|
||||
}),
|
||||
|
||||
location: Joi.string().optional().allow("").messages({
|
||||
"string.base": "موقعیت وارد شده نامعتبر است",
|
||||
}),
|
||||
createdBy: Joi.string().required().allow("").messages({
|
||||
"string.empty": "نام نام خانوادگي كاربر الزامی است",
|
||||
"any.required": "نام نام خانوادگي كاربر الزامی است",
|
||||
}),
|
||||
helpdeskAction: Joi.string().optional().allow("").messages({
|
||||
"string.base": "اقدام واحد پشتیبانی نامعتبر است",
|
||||
}),
|
||||
|
||||
assignedTo: Joi.string().uuid().optional().messages({
|
||||
"string.guid": "شناسه کاربر تخصیص داده شده نامعتبر است",
|
||||
}),
|
||||
|
||||
status: Joi.string()
|
||||
.valid(...Object.values(TicketStatus))
|
||||
.optional()
|
||||
.messages({
|
||||
"any.only": "وضعیت تیکت نامعتبر است",
|
||||
}),
|
||||
|
||||
resolvedAt: Joi.date().optional().messages({
|
||||
"date.base": "تاریخ حل شدن نامعتبر است",
|
||||
}),
|
||||
|
||||
finalNotes: Joi.string().optional().allow("").messages({
|
||||
"string.base": "یادداشت نهایی نامعتبر است",
|
||||
}),
|
||||
});
|
||||
Reference in New Issue
Block a user