---
description: "从旧数据sql创建通用curd开发指令"
---
先分析旧数据表结构，找出原有的关联关系，在后续创建时加上关联。如商品与商品分类的关联，订单商品与订单的关联等

然后逐个按通用curd开发规范开发

创建实体类 your-entity.entity.ts
创建实体Zod Schema定义 your-entity.schema.ts
注册实体到数据源
创建服务类继承GenericCrudService
创建通用CRUD路由
注册路由到API
创建客户端API调用方法
创建管理后台页面，按照 .roo/commands/shadcn-manage-page.md 指令规范
注册路由和菜单

注意：
1. 旧数据表文件中的时间字段定义，创建时统一改为使用 TypeORM 标准的 @CreateDateColumn 和 @UpdateDateColumn 格式
2. 为每个验证字段添加 中文错误提示

    示例：
    ```typescript
    // 用户 schema
    export const UserSchema = z.object({
    username: z.string().min(3, '用户名至少3个字符').max(255, '最多255个字符'),
    password: z.string().min(6, '密码至少6位').max(255, '最多255位'),
    phone: z.string().regex(/^1[3-9]\d{9}$/, '请输入正确的手机号'),
    email: z.email('请输入正确的邮箱格式'),
    name: z.string().max(255, '姓名最多255个字符').optional()
    });
3. 旧数据表文件中的创建人，修改人字段定义，创建时统一改为使用  createdBy, updateBy