Procházet zdrojové kódy

♻️ refactor(activity): 修改日期字段类型为date

- 将startDate字段从string类型改为z.coerce.date类型,自动转换日期格式
- 将endDate字段从string类型改为z.coerce.date类型,优化日期处理逻辑
yourname před 4 měsíci
rodič
revize
a12e1aa70b

+ 4 - 4
src/server/modules/activities/activity.schema.ts

@@ -9,8 +9,8 @@ export const createActivitySchema = z.object({
   type: z.nativeEnum(ActivityType, {
     message: '活动类型必须是departure(去程)或return(返程)'
   }),
-  startDate: z.string().datetime('开始日期格式不正确'),
-  endDate: z.string().datetime('结束日期格式不正确'),
+  startDate: z.coerce.date('开始日期格式不正确'),
+  endDate: z.coerce.date('结束日期格式不正确'),
 }).refine((data) => new Date(data.startDate) < new Date(data.endDate), {
   message: '开始日期必须早于结束日期',
   path: ['endDate'],
@@ -23,8 +23,8 @@ export const updateActivitySchema = z.object({
   type: z.nativeEnum(ActivityType, {
     message: '活动类型必须是departure(去程)或return(返程)'
   }).optional(),
-  startDate: z.string().datetime('开始日期格式不正确').optional(),
-  endDate: z.string().datetime('结束日期格式不正确').optional(),
+  startDate: z.coerce.date('开始日期格式不正确').optional(),
+  endDate: z.coerce.date('结束日期格式不正确').optional(),
   isDisabled: z.nativeEnum(DisabledStatus).optional(),
 }).refine((data) => {
   if (data.startDate && data.endDate) {