feat:审批

This commit is contained in:
dzc committed 2025-01-12 20:50:10 +08:00
1 parent 15509313fc
commit 01b0623913
40 files changed
+1354 -575

No files matched your search

@@ -5,7 +5,9 @@ import cn.hutool.core.util.ObjectUtil;
import com.bsd.pjcloud.admin.api.entity.SysDept;
import com.bsd.pjcloud.admin.api.entity.SysMenu;
import com.bsd.pjcloud.admin.api.entity.SysUser;
import com.bsd.pjcloud.admin.api.vo.SysUserFaceVo;
import com.bsd.pjcloud.admin.api.vo.base.BaseDeptInterface;
import com.bsd.pjcloud.admin.api.vo.base.BaseFacesInterface;
import com.bsd.pjcloud.admin.api.vo.base.BaseUserInterface;
import com.bsd.pjcloud.common.core.util.CollectionUtils;
import lombok.experimental.UtilityClass;
@@ -115,4 +117,14 @@ public class DataUtil {
return v;
}
public <T extends BaseFacesInterface> List<T> convertFacesList(List<T> list, Map<Long, SysUserFaceVo> map) {
return CollectionUtils.convertList(list, entity -> convertFaces(entity, map.get(entity.getUserId())));
}
public <T extends BaseFacesInterface> T convertFaces(T v, SysUserFaceVo dept) {
if (ObjectUtil.isEmpty(dept)) return v;
v.setFaceImgs(dept.getFaceImgs());
return v;
}
}
@@ -8,6 +8,11 @@ import lombok.Data;
@Data
public class SysUserFaceVo extends SysUserFaceEntity implements BaseUserInterface, BaseDeptInterface {
/**
* 人脸图片
*/
private String faceImgs;
/**
* 用户相关
*/
@@ -0,0 +1,47 @@
package com.bsd.pjcloud.admin.api.vo;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.bsd.pjcloud.common.excel.annotation.ExcelLine;
import lombok.Data;
@Data
@ColumnWidth(30)
public class UserExcelFaceVo {
@ExcelLine
@ExcelIgnore
private Long lineNum;
/**
* 账号登录名没有就用手机号
*/
@ExcelProperty("用户名称")
private String username;
/**
* 用户真实姓名
*/
@ExcelProperty("用户昵称")
private String name;
/**
* 部门名称
*/
@ExcelProperty("部门名称")
private String deptName;
/**
* 手机号码
*/
@ExcelProperty("手机号码")
private String mobile;
/**
* 用户性别
*/
@ExcelProperty("用户性别")
private String sex;
}
@@ -19,6 +19,7 @@
package com.bsd.pjcloud.admin.api.vo;
import com.bsd.pjcloud.admin.api.vo.base.BaseFacesInterface;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.bsd.pjcloud.admin.api.entity.SysPost;
import com.bsd.pjcloud.admin.api.entity.SysRole;
@@ -37,169 +38,173 @@ import java.util.List;
*/
@Data
@Schema(description = "前端用户展示对象")
public class UserVO implements Serializable {
public class UserVO implements BaseFacesInterface, Serializable {
private static final long serialVersionUID = 1L;
private static final long serialVersionUID = 1L;
/**
* 主键ID
*/
@Schema(description = "主键")
private Long userId;
/**
* 主键ID
*/
@Schema(description = "主键")
private Long userId;
/**
* 用户名
*/
@Schema(description = "用户名")
private String username;
/**
* 用户名
*/
@Schema(description = "用户名")
private String username;
/**
* 密码
*/
@JsonIgnore
private String password;
/**
* 密码
*/
@JsonIgnore
private String password;
/**
* 随机盐
*/
@JsonIgnore
private String salt;
/**
* 随机盐
*/
@JsonIgnore
private String salt;
/**
* 微信openid
*/
@Schema(description = "微信open id")
private String wxOpenid;
/**
* 微信openid
*/
@Schema(description = "微信open id")
private String wxOpenid;
/**
* QQ openid
*/
@Schema(description = "qq open id")
private String qqOpenid;
/**
* QQ openid
*/
@Schema(description = "qq open id")
private String qqOpenid;
/**
* gitee openid
*/
@Schema(description = "gitee open id")
private String giteeOpenId;
/**
* gitee openid
*/
@Schema(description = "gitee open id")
private String giteeOpenId;
/**
* 开源中国 openid
*/
@Schema(description = "开源中国 open id")
private String oscOpenId;
/**
* 开源中国 openid
*/
@Schema(description = "开源中国 open id")
private String oscOpenId;
/**
* 企微微信 userid
*/
@Schema(description = "企微微信 userid")
private String wxCpUserid;
/**
* 企微微信 userid
*/
@Schema(description = "企微微信 userid")
private String wxCpUserid;
/**
* 钉钉 userid
*/
@Schema(description = "钉钉 userid")
private String wxDingUserid;
/**
* 钉钉 userid
*/
@Schema(description = "钉钉 userid")
private String wxDingUserid;
/**
* 创建时间
*/
@Schema(description = "创建时间")
private LocalDateTime createTime;
/**
* 创建时间
*/
@Schema(description = "创建时间")
private LocalDateTime createTime;
/**
* 修改时间
*/
@Schema(description = "修改时间")
private LocalDateTime updateTime;
/**
* 修改时间
*/
@Schema(description = "修改时间")
private LocalDateTime updateTime;
/**
* 0-正常,1-删除
*/
@Schema(description = "删除标记,1:已删除,0:正常")
private String delFlag;
/**
* 0-正常,1-删除
*/
@Schema(description = "删除标记,1:已删除,0:正常")
private String delFlag;
/**
* 锁定标记
*/
@Schema(description = "锁定标记,0:正常,9:已锁定")
private String lockFlag;
/**
* 锁定标记
*/
@Schema(description = "锁定标记,0:正常,9:已锁定")
private String lockFlag;
/**
* 密码过期标记
*/
@Schema(description = "密码过期标记")
private String passwordExpireFlag;
/**
* 密码过期标记
*/
@Schema(description = "密码过期标记")
private String passwordExpireFlag;
/**
* 密码修改时间
*/
@Schema(description = "密码修改时间")
private LocalDateTime passwordModifyTime;
/**
* 密码修改时间
*/
@Schema(description = "密码修改时间")
private LocalDateTime passwordModifyTime;
/**
* 手机号
*/
@Sensitive(type = SensitiveTypeEnum.MOBILE_PHONE)
@Schema(description = "手机号")
private String phone;
/**
* 手机号
*/
@Sensitive(type = SensitiveTypeEnum.MOBILE_PHONE)
@Schema(description = "手机号")
private String phone;
/**
* 头像
*/
@Schema(description = "头像")
private String avatar;
/**
* 头像
*/
@Schema(description = "头像")
private String avatar;
/**
* 部门ID
*/
@Schema(description = "所属部门")
private Long deptId;
/**
* 部门ID
*/
@Schema(description = "所属部门")
private Long deptId;
/**
* 租户ID
*/
@Schema(description = "所属租户")
private Long tenantId;
/**
* 租户ID
*/
@Schema(description = "所属租户")
private Long tenantId;
/**
* 部门名称
*/
@Schema(description = "所属部门名称")
private String deptName;
/**
* 部门名称
*/
@Schema(description = "所属部门名称")
private String deptName;
/**
* 角色列表
*/
@Schema(description = "拥有的角色列表")
private List<SysRole> roleList;
/**
* 角色列表
*/
@Schema(description = "拥有的角色列表")
private List<SysRole> roleList;
/**
* 岗位列表
*/
private List<SysPost> postList;
/**
* 岗位列表
*/
private List<SysPost> postList;
/**
* 昵称
*/
@Schema(description = "昵称")
private String nickname;
/**
* 昵称
*/
@Schema(description = "昵称")
private String nickname;
/**
* 姓名
*/
@Schema(description = "姓名")
private String name;
/**
* 姓名
*/
@Schema(description = "姓名")
private String name;
/**
* 邮箱
*/
@Schema(description = "邮箱")
private String email;
/**
* 邮箱
*/
@Schema(description = "邮箱")
private String email;
@Schema(description = "员工浙政钉编码")
private String dingtalkEmployeeCode;
@Schema(description = "员工浙政钉编码")
private String dingtalkEmployeeCode;
/**
* 人脸
*/
private String faceImgs;
}
@@ -0,0 +1,12 @@
package com.bsd.pjcloud.admin.api.vo.base;
public interface BaseFacesInterface {
Long getUserId();
void setUserId(Long userId);
String getFaceImgs();
void setFaceImgs(String faceImgs);
}