|
@@ -1,15 +1,11 @@
|
|
|
import { z } from 'zod';
|
|
import { z } from 'zod';
|
|
|
import { DisabledStatus } from '../../share/types';
|
|
import { DisabledStatus } from '../../share/types';
|
|
|
-import { ActivityType } from './activity.entity';
|
|
|
|
|
import { locationInfoSchema } from '../locations/location.schema';
|
|
import { locationInfoSchema } from '../locations/location.schema';
|
|
|
|
|
|
|
|
// 活动创建Schema
|
|
// 活动创建Schema
|
|
|
export const createActivitySchema = z.object({
|
|
export const createActivitySchema = z.object({
|
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
|
- type: z.nativeEnum(ActivityType, {
|
|
|
|
|
- message: '活动类型必须是departure(去程)或return(返程)'
|
|
|
|
|
- }),
|
|
|
|
|
startDate: z.coerce.date('开始日期格式不正确'),
|
|
startDate: z.coerce.date('开始日期格式不正确'),
|
|
|
endDate: z.coerce.date('结束日期格式不正确'),
|
|
endDate: z.coerce.date('结束日期格式不正确'),
|
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|
|
@@ -22,9 +18,6 @@ export const createActivitySchema = z.object({
|
|
|
export const updateActivitySchema = z.object({
|
|
export const updateActivitySchema = z.object({
|
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符').optional(),
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符').optional(),
|
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
|
- type: z.nativeEnum(ActivityType, {
|
|
|
|
|
- message: '活动类型必须是departure(去程)或return(返程)'
|
|
|
|
|
- }).optional(),
|
|
|
|
|
startDate: z.coerce.date('开始日期格式不正确').optional(),
|
|
startDate: z.coerce.date('开始日期格式不正确').optional(),
|
|
|
endDate: z.coerce.date('结束日期格式不正确').optional(),
|
|
endDate: z.coerce.date('结束日期格式不正确').optional(),
|
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数').optional(),
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数').optional(),
|
|
@@ -44,9 +37,6 @@ export const getActivitySchema = z.object({
|
|
|
id: z.number().int().positive('ID必须为正整数'),
|
|
id: z.number().int().positive('ID必须为正整数'),
|
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
|
- type: z.nativeEnum(ActivityType, {
|
|
|
|
|
- message: '活动类型必须是departure(去程)或return(返程)'
|
|
|
|
|
- }),
|
|
|
|
|
startDate: z.coerce.date(),
|
|
startDate: z.coerce.date(),
|
|
|
endDate: z.coerce.date(),
|
|
endDate: z.coerce.date(),
|
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|
|
@@ -61,7 +51,6 @@ export const getActivitySchema = z.object({
|
|
|
// 活动列表查询Schema
|
|
// 活动列表查询Schema
|
|
|
export const listActivitiesSchema = z.object({
|
|
export const listActivitiesSchema = z.object({
|
|
|
keyword: z.string().optional(),
|
|
keyword: z.string().optional(),
|
|
|
- type: z.nativeEnum(ActivityType).optional(),
|
|
|
|
|
isDisabled: z.coerce.number().int().optional(),
|
|
isDisabled: z.coerce.number().int().optional(),
|
|
|
page: z.coerce.number().int().min(1).default(1),
|
|
page: z.coerce.number().int().min(1).default(1),
|
|
|
pageSize: z.coerce.number().int().min(1).max(100).default(20),
|
|
pageSize: z.coerce.number().int().min(1).max(100).default(20),
|
|
@@ -74,9 +63,6 @@ export const activityListResponseSchema = z.object({
|
|
|
id: z.number().int().positive('ID必须为正整数'),
|
|
id: z.number().int().positive('ID必须为正整数'),
|
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
name: z.string().min(1, '活动名称不能为空').max(255, '活动名称不能超过255个字符'),
|
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
description: z.string().max(1000, '活动描述不能超过1000个字符').optional().nullable(),
|
|
|
- type: z.nativeEnum(ActivityType, {
|
|
|
|
|
- message: '活动类型必须是departure(去程)或return(返程)'
|
|
|
|
|
- }),
|
|
|
|
|
startDate: z.coerce.date(),
|
|
startDate: z.coerce.date(),
|
|
|
endDate: z.coerce.date(),
|
|
endDate: z.coerce.date(),
|
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|
|
venueLocationId: z.number().int().positive('举办地点ID必须为正整数'),
|