feat: 完成 NestJS 后端核心底座开发 (M1-M6) 和 Ant Design Vue 前端迁移

主要更新:
1. 后端核心底座完成 (M1-M6):
   - 健康检查、指标监控、分布式锁
   - 事件总线、队列系统、事务管理
   - 安全守卫、多租户隔离、存储适配器
   - 审计日志、配置管理、多语言支持

2. 前端迁移到 Ant Design Vue:
   - 从 Element Plus 迁移到 Ant Design Vue
   - 完善 system 模块 (role/menu/dept)
   - 修复依赖和配置问题

3. 文档完善:
   - AI 开发工作流文档
   - 架构约束和开发规范
   - 项目进度跟踪

4. 其他改进:
   - 修复编译错误和类型问题
   - 完善测试用例
   - 优化项目结构
This commit is contained in:
万物街
2025-08-27 11:24:22 +08:00
parent be07b9ffec
commit 1cd5d3bdef
696 changed files with 36708 additions and 16868 deletions

View File

@@ -1,14 +1,12 @@
import { Entity, PrimaryGeneratedColumn, Column, CreateDateColumn, UpdateDateColumn, OneToMany } from 'typeorm';
import { Entity, PrimaryGeneratedColumn, Column, OneToMany } from 'typeorm';
import { BaseEntity } from '@wwjCore/base/BaseEntity';
import { Member } from './Member';
@Entity('member_level')
export class MemberLevel {
export class MemberLevel extends BaseEntity {
@PrimaryGeneratedColumn()
level_id: number;
@Column({ type: 'int', default: 0, comment: '站点ID' })
site_id: number;
@Column({ type: 'varchar', length: 50, comment: '等级名称' })
level_name: string;
@@ -18,10 +16,22 @@ export class MemberLevel {
@Column({ type: 'int', default: 0, comment: '升级所需积分' })
upgrade_point: number;
@Column({ type: 'decimal', precision: 5, scale: 2, default: 1.0, comment: '积分倍率' })
@Column({
type: 'decimal',
precision: 5,
scale: 2,
default: 1.0,
comment: '积分倍率',
})
point_rate: number;
@Column({ type: 'decimal', precision: 5, scale: 2, default: 1.0, comment: '折扣率' })
@Column({
type: 'decimal',
precision: 5,
scale: 2,
default: 1.0,
comment: '折扣率',
})
discount_rate: number;
@Column({ type: 'int', default: 0, comment: '排序' })
@@ -36,16 +46,7 @@ export class MemberLevel {
@Column({ type: 'varchar', length: 255, comment: '等级权益' })
benefits: string;
@Column({type: 'tinyint', default: 0, comment: '是否删除 0:否 1:是' })
is_del: number;
@CreateDateColumn({ comment: '创建时间' })
create_time: Date;
@UpdateDateColumn({ comment: '更新时间' })
update_time: Date;
// 关联关系
@OneToMany(() => Member, member => member.level)
@OneToMany(() => Member, (member) => member.level)
members: Member[];
}
}