Nestjs构建Certeasy证书自动化平台 - 业务实现(用户模块)

58 阅读1分钟

Certeasy

摘要

一个系统中,用户模块是所有数据的基础

模块实现

1. 初始化模块

使用 NestJS CLI命令初始化模块,构建控制器及服务

nest g mo modules/user

image.png

  • 创建 Controller
nest g co modules/user --no-spec

image.png

  • 创建 Service
nest g s modules/user --no-spec

image.png

image.png

2.用户实体

  • 创建实体文件内容
......
@Entity('user')
export class UserEntity extends BaseEntity {
  @PrimaryGeneratedColumn({ type: 'int', name: 'id' })
  id: number;

  @Unique('unique_user_code', ['user_code'])
  @Column({ type: 'varchar', name: 'user_code', comment: '编码' })
  userCode: string;

  @Column({ type: 'varchar', name: 'nick_name', comment: '昵称' })
  nickName: string;

  @Unique('unique_email', ['email'])
  @Column({ type: 'varchar', name: 'email', comment: '邮箱' })
  email: string;

  @Column({ type: 'varchar', name: 'passwd', comment: '密码' })
  passwd: string;

  @Column({ type: 'tinyint', name: 'status' })
  status: number;

  @CreateDateColumn({ type: 'datetime', name: 'create_time' })
  createTime: Date | string;

  @UpdateDateColumn({ type: 'datetime', name: 'update_time' })
  updateTime: Date | string;
  
  ......
}
  • 引入实体

image.png

3.用户服务

  • 通过邮件地址取得用户 getUserByMail
  • 通过编码取得用户 getUserByCode
  • 获取用户摘要信息 userInfo
  • ......

更多代码请查看 certeasy_nest_open/src/modules/user at main · CerteasyTeam/certeasy_nest_open (github.com)

系列文章

开源

联系

wechat: zuxcloud

Email: zuxing.xu@lettered.cn