重构后端,改为 node 技术栈

This commit is contained in:
eafonyang
2026-06-09 16:36:23 +08:00
parent abab985769
commit e4e6529577
59 changed files with 4901 additions and 1916 deletions
+11
View File
@@ -0,0 +1,11 @@
const { z } = require('zod');
const BrandCreateSchema = z.object({
name: z.string().min(1).max(100, '品牌名称最多100字符'),
});
const BrandUpdateSchema = z.object({
name: z.string().min(1).max(100, '品牌名称最多100字符').optional(),
});
module.exports = { BrandCreateSchema, BrandUpdateSchema };
+21
View File
@@ -0,0 +1,21 @@
const { z } = require('zod');
const ModelCreateSchema = z.object({
brand_name: z.string().min(1).max(100, '品牌名称最多100字符'),
name: z.string().min(1).max(100, '型号名称最多100字符'),
form: z.string().max(100).optional().nullable(),
rig: z.string().max(100).optional().nullable(),
source: z.string().max(100).optional().nullable(),
eq_key: z.string().max(255).optional().nullable(),
});
const ModelUpdateSchema = z.object({
brand_name: z.string().min(1).max(100).optional().nullable(),
name: z.string().min(1).max(100).optional().nullable(),
form: z.string().max(100).optional().nullable(),
rig: z.string().max(100).optional().nullable(),
source: z.string().max(100).optional().nullable(),
eq_key: z.string().max(255).optional().nullable(),
});
module.exports = { ModelCreateSchema, ModelUpdateSchema };
+43
View File
@@ -0,0 +1,43 @@
const { z } = require('zod');
const OtaCreateSchema = z.object({
verCode: z.number().int({ message: '版本号须为整数' }),
verName: z.string().min(1).max(20, '版本名称最多20字符'),
url: z.string().max(255, 'URL最多255字符'),
md5: z.string().length(32, 'MD5须为32字符'),
force: z.number().int().min(0).max(1).optional().default(0),
desc: z.string().max(255).optional().nullable(),
model: z.string().max(100).optional().nullable(),
hw: z.number().int().optional().default(0),
target: z.number().int().min(0).max(1).optional().default(0),
beta: z.number().int().min(0).max(1).optional().default(0),
pawVerCode: z.number().int().optional().default(0),
pawVerName: z.string().max(20).optional().default(''),
pawUrl: z.string().max(255).optional().default(''),
pawMd5: z.string().length(32).optional().default(''),
startTime: z.string().optional().nullable(),
endTime: z.string().optional().nullable(),
status: z.number().int().min(0).max(1).optional().default(1),
});
const OtaUpdateSchema = z.object({
verCode: z.number().int().optional().nullable(),
verName: z.string().min(1).max(20).optional().nullable(),
url: z.string().max(255).optional().nullable(),
md5: z.string().length(32).optional().nullable(),
force: z.number().int().min(0).max(1).optional().nullable(),
desc: z.string().max(255).optional().nullable(),
model: z.string().max(100).optional().nullable(),
hw: z.number().int().optional().nullable(),
target: z.number().int().min(0).max(1).optional().nullable(),
beta: z.number().int().min(0).max(1).optional().nullable(),
pawVerCode: z.number().int().optional().nullable(),
pawVerName: z.string().max(20).optional().nullable(),
pawUrl: z.string().max(255).optional().nullable(),
pawMd5: z.string().length(32).optional().nullable(),
startTime: z.string().optional().nullable(),
endTime: z.string().optional().nullable(),
status: z.number().int().min(0).max(1).optional().nullable(),
});
module.exports = { OtaCreateSchema, OtaUpdateSchema };