diff --git a/core/src/main/java/com/dite/znpt/context/UserContext.java b/core/src/main/java/com/dite/znpt/context/UserContext.java index 796e9e4..fdd2bdf 100644 --- a/core/src/main/java/com/dite/znpt/context/UserContext.java +++ b/core/src/main/java/com/dite/znpt/context/UserContext.java @@ -3,7 +3,7 @@ package com.dite.znpt.context; //import cn.dev33.satoken.stp.StpUtil; import cn.hutool.extra.spring.SpringUtil; -import com.dite.znpt.domain.vo.PersonResp; +import com.dite.znpt.domain.vo.UserResp; import com.dite.znpt.service.RedisService; /** @@ -25,7 +25,7 @@ public class UserContext { * @Param [] * @Return com.gaea.common.vo.common.UserInfo */ - public static PersonResp getUserInfo() { + public static UserResp getUserInfo() { // try { // String token = StpUtil.getTokenValue(); // if (!StringUtils.isEmpty(token)) { @@ -41,9 +41,9 @@ public class UserContext { // userInfo.setId(Constants.SYSTEM_USER); // return userInfo; // } - - PersonResp resp = new PersonResp(); - resp.setRoleType("Builder"); +//TODO + UserResp resp = new UserResp(); +// resp.setRoleType("Builder"); return resp; } @@ -55,6 +55,8 @@ public class UserContext { * @date 2025/04/25 11:23 **/ public static String getRoleCode() { - return getUserInfo().getRoleType(); + //TODO +// return getUserInfo().getRoleType(); + return null; } } diff --git a/core/src/main/java/com/dite/znpt/domain/dto/OutWorkDefectDTO.java b/core/src/main/java/com/dite/znpt/domain/dto/OutWorkDefectDTO.java index d7dd931..0aaad42 100644 --- a/core/src/main/java/com/dite/znpt/domain/dto/OutWorkDefectDTO.java +++ b/core/src/main/java/com/dite/znpt/domain/dto/OutWorkDefectDTO.java @@ -2,13 +2,10 @@ package com.dite.znpt.domain.dto; import com.dite.znpt.annotations.MatchType; import com.dite.znpt.annotations.QueryCondition; -import com.dite.znpt.domain.entity.DefectEntity; -import com.dite.znpt.domain.entity.OutWorkDefectEntity; import com.dite.znpt.domain.entity.job.DefectDTO; import com.fasterxml.jackson.annotation.JsonIgnore; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import lombok.EqualsAndHashCode; import java.io.Serializable; import java.util.List; diff --git a/core/src/main/java/com/dite/znpt/domain/entity/MenuEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/MenuEntity.java new file mode 100644 index 0000000..85abe4a --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/MenuEntity.java @@ -0,0 +1,72 @@ +package com.dite.znpt.domain.entity; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dite.znpt.domain.AuditableEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; +import java.io.Serializable; + +/** + * @Author: gaoxiong + * @Date: 2025/5/15 23:33 + * @Description: + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("menu") +@ApiModel(value="MenuEntity对象", description="菜单信息表") +public class MenuEntity extends AuditableEntity implements Serializable { + + @Serial + private static final long serialVersionUID = -6913953673120999054L; + + @ExcelProperty("菜单id") + @ApiModelProperty("菜单id") + @TableId(value = "menu_id", type = IdType.ASSIGN_UUID) + private String menuId; + + @ExcelProperty("菜单名称") + @ApiModelProperty("菜单名称") + @TableField("menu_name") + private String menuName; + + @ExcelProperty("父菜单ID") + @ApiModelProperty("父菜单ID") + @TableField("parent_id") + private String parentId; + + @ExcelProperty("order_num") + @ApiModelProperty("显示顺序") + @TableField("order_num") + private Integer orderNum; + + @ExcelProperty("请求地址") + @ApiModelProperty("请求地址") + @TableField("url") + private String url; + + @ExcelProperty("菜单类型(M目录 C菜单 F按钮)") + @ApiModelProperty("菜单类型(M目录 C菜单 F按钮)") + @TableField("menu_type") + private String menuType; + + @ExcelProperty("菜单状态(0显示 1隐藏)") + @ApiModelProperty("菜单状态(0显示 1隐藏)") + @TableField("visible") + private String visible; + + + + @ExcelProperty("权限标识") + @ApiModelProperty("权限标识") + @TableField("perms") + private String perms; +} diff --git a/core/src/main/java/com/dite/znpt/domain/entity/PersonEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/PersonEntity.java deleted file mode 100644 index 730480e..0000000 --- a/core/src/main/java/com/dite/znpt/domain/entity/PersonEntity.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.dite.znpt.domain.entity; - -import java.io.Serializable; - -import com.baomidou.mybatisplus.annotation.*; -import com.dite.znpt.domain.AuditableEntity; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.EqualsAndHashCode; -import com.alibaba.excel.annotation.ExcelProperty; - -/** - * @author huise23 - * @date 2025/04/11 23:17 - * @Description: 人员信息表实体类 - */ -@Data -@EqualsAndHashCode(callSuper = false) -@TableName("person") -@ApiModel(value="PersonEntity对象", description="人员信息表") -public class PersonEntity extends AuditableEntity implements Serializable { - - private static final long serialVersionUID = -62273861742734411L; - - @ExcelProperty("用户名") - @ApiModelProperty("用户名") - @TableId(value = "person_id", type = IdType.ASSIGN_UUID) - private String personId; - - @ExcelProperty("姓名") - @ApiModelProperty("姓名") - @TableField("name") - private String name; - - @ExcelProperty("角色类型,字典role_type") - @ApiModelProperty("角色类型,字典role_type") - @TableField("role_type") - private String roleType; - - @ExcelProperty("密码") - @ApiModelProperty("密码") - @TableField("password") - private String password; - - @ExcelProperty("1正常0禁用") - @ApiModelProperty("1正常0禁用") - @TableField("status") - private Integer status; -} - diff --git a/core/src/main/java/com/dite/znpt/domain/entity/ProjectEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/ProjectEntity.java index 36d3d07..26a40ad 100644 --- a/core/src/main/java/com/dite/znpt/domain/entity/ProjectEntity.java +++ b/core/src/main/java/com/dite/znpt/domain/entity/ProjectEntity.java @@ -82,13 +82,9 @@ public class ProjectEntity extends AuditableEntity implements Serializable { @TableField("turbine_model") private String turbineModel; - @ApiModelProperty("施工人员") - @TableField("construction_person") - private String constructionPerson; - @ApiModelProperty("施工人员id") - @TableField("construction_person_id") - private String constructionPersonId; + @TableField("constructor_ids") + private String constructorIds; @ApiModelProperty("安全员id") @TableField("auditor_id") diff --git a/core/src/main/java/com/dite/znpt/domain/entity/RoleEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/RoleEntity.java new file mode 100644 index 0000000..28ea120 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/RoleEntity.java @@ -0,0 +1,56 @@ +package com.dite.znpt.domain.entity; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dite.znpt.domain.AuditableEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; +import java.io.Serializable; + +/** + * @Author: gaoxiong + * @Date: 2025/5/15 23:33 + * @Description: + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("role") +@ApiModel(value="RoleEntity对象", description="角色信息表") +public class RoleEntity extends AuditableEntity implements Serializable { + + @Serial + private static final long serialVersionUID = -561827154209083475L; + + @ExcelProperty("角色id") + @ApiModelProperty("角色id") + @TableId(value = "role_id", type = IdType.ASSIGN_UUID) + private String roleId; + + @ExcelProperty("角色名称") + @ApiModelProperty("角色名称") + @TableField("role_name") + private String roleName; + + @ExcelProperty("角色权限字符") + @ApiModelProperty("角色权限字符") + @TableField("role_key") + private String roleKey; + + @ExcelProperty("1正常0禁用") + @ApiModelProperty("1正常0禁用") + @TableField("status") + private Integer status; + + @ExcelProperty("删除标志(0代表存在 1代表删除)") + @ApiModelProperty("删除标志(0代表存在 1代表删除)") + @TableField("del_flag") + private Integer delFlag; + +} diff --git a/core/src/main/java/com/dite/znpt/domain/entity/RoleMenuEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/RoleMenuEntity.java new file mode 100644 index 0000000..057f9bc --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/RoleMenuEntity.java @@ -0,0 +1,34 @@ +package com.dite.znpt.domain.entity; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dite.znpt.domain.AuditableEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + * @Author: gaoxiong + * @Date: 2025/5/15 23:33 + * @Description: + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("role_menu") +@ApiModel(value="RoleMenuEntity对象", description="角色和菜单关联表") +public class RoleMenuEntity extends AuditableEntity implements Serializable { + + @ApiModelProperty("角色id") + @TableField("role_id") + private String roleId; + + @ApiModelProperty("菜单id") + @TableField("menu_id") + private String menuId; +} diff --git a/core/src/main/java/com/dite/znpt/domain/entity/UserEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/UserEntity.java new file mode 100644 index 0000000..4eafef5 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/UserEntity.java @@ -0,0 +1,97 @@ +package com.dite.znpt.domain.entity; + +import java.io.Serializable; +import java.time.LocalDateTime; + +import com.baomidou.mybatisplus.annotation.*; +import com.dite.znpt.domain.AuditableEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import com.alibaba.excel.annotation.ExcelProperty; + +/** + * @author huise23 + * @date 2025/04/11 23:17 + * @Description: 人员信息表实体类 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("user") +@ApiModel(value="UserEntity对象", description="用户信息表") +public class UserEntity extends AuditableEntity implements Serializable { + + private static final long serialVersionUID = -62273861742734411L; + + @ExcelProperty("用户名") + @ApiModelProperty("用户名") + @TableId(value = "user_id", type = IdType.ASSIGN_UUID) + private String userId; + + @ExcelProperty("账号") + @ApiModelProperty("账号") + @TableField("account") + private String account; + + @ExcelProperty("头像地址") + @ApiModelProperty("头像地址") + @TableField("avatar") + private String avatar; + + @ExcelProperty("姓名") + @ApiModelProperty("姓名") + @TableField("name") + private String name; + + @ExcelProperty("性别") + @ApiModelProperty("性别") + @TableField("gender") + private String gender; + + @ExcelProperty("手机号码") + @ApiModelProperty("手机号码") + @TableField("mobile") + private String mobile; + + @ExcelProperty("邮箱") + @ApiModelProperty("邮箱") + @TableField("email") + private String email; + + @ExcelProperty("密码") + @ApiModelProperty("密码") + @TableField("password") + private String password; + + @ExcelProperty("加密盐") + @ApiModelProperty("加密盐") + @TableField("salt") + private String salt; + + @ExcelProperty("1正常0禁用") + @ApiModelProperty("1正常0禁用") + @TableField("status") + private Integer status; + + @ExcelProperty("最后登录ip") + @ApiModelProperty("最后登录ip") + @TableField("last_login_ip") + private String lastLoginIp; + + @ExcelProperty("最后登录时间") + @ApiModelProperty("最后登录时间") + @TableField("last_login_time") + private LocalDateTime lastLoginTime; + + @ExcelProperty("密码修改时间") + @ApiModelProperty("密码修改时间") + @TableField("password_update_time") + private LocalDateTime passwordUpdateTime; + + @ExcelProperty("删除标志(0代表存在 ,1代表删除)") + @ApiModelProperty("删除标志(0代表存在 ,1代表删除)") + @TableField("del_flag") + private String delFlag; +} + diff --git a/core/src/main/java/com/dite/znpt/domain/entity/UserRoleEntity.java b/core/src/main/java/com/dite/znpt/domain/entity/UserRoleEntity.java new file mode 100644 index 0000000..86bbbd6 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/entity/UserRoleEntity.java @@ -0,0 +1,35 @@ +package com.dite.znpt.domain.entity; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dite.znpt.domain.AuditableEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serial; +import java.io.Serializable; + +/** + * @Author: gaoxiong + * @Date: 2025/5/15 23:33 + * @Description: + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("user_role") +@ApiModel(value="UserRoleEntity对象", description="用户和角色信息表") +public class UserRoleEntity extends AuditableEntity implements Serializable { + + @Serial + private static final long serialVersionUID = 1078827043026958140L; + + @ApiModelProperty("用户id") + @TableField("user_id") + private String userId; + + @ApiModelProperty("角色id") + @TableField("role_id") + private String roleId; +} diff --git a/core/src/main/java/com/dite/znpt/domain/vo/ProjectListResp.java b/core/src/main/java/com/dite/znpt/domain/vo/ProjectListResp.java index a1e763f..c7545d4 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/ProjectListResp.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/ProjectListResp.java @@ -76,10 +76,10 @@ public class ProjectListResp implements Serializable { private String projectManagerName; @ApiModelProperty("施工人员id") - private String constructionPersonnelId; + private String constructorIds; @ApiModelProperty("施工人员") - private String constructionPersonnelName; + private String constructorName; @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("创建时间") diff --git a/core/src/main/java/com/dite/znpt/domain/vo/ProjectReq.java b/core/src/main/java/com/dite/znpt/domain/vo/ProjectReq.java index c59c45e..08f9b63 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/ProjectReq.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/ProjectReq.java @@ -62,10 +62,7 @@ public class ProjectReq implements Serializable { private String turbineModel; @ApiModelProperty("施工人员id") - private String constructionPersonId; - - @ApiModelProperty("施工人员") - private String constructionPersonName; + private String constructorIds; @ApiModelProperty("安全员id") private String auditorId; diff --git a/core/src/main/java/com/dite/znpt/domain/vo/ProjectResp.java b/core/src/main/java/com/dite/znpt/domain/vo/ProjectResp.java index 8bdfd18..4d438cf 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/ProjectResp.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/ProjectResp.java @@ -30,6 +30,9 @@ public class ProjectResp extends ProjectReq implements Serializable { @ApiModelProperty("项目id") private String projectId; + @ApiModelProperty("施工人员") + private String constructorName; + @ApiModelProperty("安全员") private String auditorName; diff --git a/core/src/main/java/com/dite/znpt/domain/vo/PersonListReq.java b/core/src/main/java/com/dite/znpt/domain/vo/UserListReq.java similarity index 54% rename from core/src/main/java/com/dite/znpt/domain/vo/PersonListReq.java rename to core/src/main/java/com/dite/znpt/domain/vo/UserListReq.java index 8cf43c2..3d96872 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/PersonListReq.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/UserListReq.java @@ -9,31 +9,28 @@ import lombok.Data; /** * @author huise23 * @date 2025/04/11 23:17 - * @Description: 人员信息请求实体 + * @Description: 用户信息请求实体 */ @Data -@ApiModel("人员信息列表请求实体") -public class PersonListReq implements Serializable { +@ApiModel("用户信息列表请求实体") +public class UserListReq implements Serializable { private static final long serialVersionUID = -10363935468256543L; @ApiModelProperty("查询关键字") private String keyword; - @ApiModelProperty("人员信息Id") - private String personId; + @ApiModelProperty("账号") + private String account; @ApiModelProperty("姓名") private String name; - @ApiModelProperty("角色类型,字典role_type") - private String roleType; + @ApiModelProperty("手机号码") + private String mobile; - @ApiModelProperty("公司id") - private String companyId; - - @ApiModelProperty("密码") - private String password; + @ApiModelProperty("邮箱") + private String email; @ApiModelProperty("1正常0禁用") private Integer status; diff --git a/core/src/main/java/com/dite/znpt/domain/vo/UserReq.java b/core/src/main/java/com/dite/znpt/domain/vo/UserReq.java new file mode 100644 index 0000000..ec6f7f4 --- /dev/null +++ b/core/src/main/java/com/dite/znpt/domain/vo/UserReq.java @@ -0,0 +1,9 @@ +package com.dite.znpt.domain.vo; + +/** + * @Author: gaoxiong + * @Date: 2025/5/15 23:14 + * @Description: + */ +public class UserReq { +} diff --git a/core/src/main/java/com/dite/znpt/domain/vo/PersonResp.java b/core/src/main/java/com/dite/znpt/domain/vo/UserResp.java similarity index 56% rename from core/src/main/java/com/dite/znpt/domain/vo/PersonResp.java rename to core/src/main/java/com/dite/znpt/domain/vo/UserResp.java index 587c10c..5a85ea6 100644 --- a/core/src/main/java/com/dite/znpt/domain/vo/PersonResp.java +++ b/core/src/main/java/com/dite/znpt/domain/vo/UserResp.java @@ -3,16 +3,16 @@ package com.dite.znpt.domain.vo; import io.swagger.annotations.ApiModel; import lombok.Data; import lombok.EqualsAndHashCode; -import com.dite.znpt.domain.entity.PersonEntity; +import com.dite.znpt.domain.entity.UserEntity; /** * @author huise23 * @date 2025/04/11 23:17 - * @Description: 人员信息响应实体 + * @Description: 用户信息响应实体 */ @Data @EqualsAndHashCode(callSuper = true) -@ApiModel("人员信息响应实体") -public class PersonResp extends PersonEntity { +@ApiModel("用户信息响应实体") +public class UserResp extends UserEntity { } diff --git a/core/src/main/java/com/dite/znpt/mapper/PersonnelMapper.java b/core/src/main/java/com/dite/znpt/mapper/PersonnelMapper.java deleted file mode 100644 index 5a8d6d7..0000000 --- a/core/src/main/java/com/dite/znpt/mapper/PersonnelMapper.java +++ /dev/null @@ -1,18 +0,0 @@ -package com.dite.znpt.mapper; - -import com.baomidou.mybatisplus.core.mapper.BaseMapper; -import com.dite.znpt.domain.entity.PersonEntity; -import com.dite.znpt.domain.vo.PersonListReq; -import com.dite.znpt.domain.vo.PersonResp; - -import java.util.List; - -/** - * @author huise23 - * @date 2025/04/11 23:17 - * @Description: 人员信息表数据库访问层 - */ -public interface PersonnelMapper extends BaseMapper { - List queryBySelective(PersonListReq personnelReq); -} - diff --git a/core/src/main/java/com/dite/znpt/mapper/UserMapper.java b/core/src/main/java/com/dite/znpt/mapper/UserMapper.java new file mode 100644 index 0000000..51cd24b --- /dev/null +++ b/core/src/main/java/com/dite/znpt/mapper/UserMapper.java @@ -0,0 +1,18 @@ +package com.dite.znpt.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dite.znpt.domain.entity.UserEntity; +import com.dite.znpt.domain.vo.UserListReq; +import com.dite.znpt.domain.vo.UserResp; + +import java.util.List; + +/** + * @author huise23 + * @date 2025/04/11 23:17 + * @Description: 用户信息表数据库访问层 + */ +public interface UserMapper extends BaseMapper { + List queryBySelective(UserListReq req); +} + diff --git a/core/src/main/java/com/dite/znpt/service/PersonService.java b/core/src/main/java/com/dite/znpt/service/PersonService.java deleted file mode 100644 index 6a7ac97..0000000 --- a/core/src/main/java/com/dite/znpt/service/PersonService.java +++ /dev/null @@ -1,64 +0,0 @@ -package com.dite.znpt.service; - -import com.baomidou.mybatisplus.extension.service.IService; -import com.dite.znpt.domain.entity.PersonEntity; -import com.dite.znpt.domain.vo.PersonListReq; -import com.dite.znpt.domain.vo.PersonResp; - -import java.util.List; - -/** - * @author huise23 - * @date 2025/04/11 23:17 - * @Description: 人员信息表服务接口 - */ -public interface PersonService extends IService { - - /** - * 功能描述:查询人员信息列表 - * - * @param personnelReq 人员信息 - * @return {@link List }<{@link PersonEntity }> - * @author huise23 - * @date 2025/04/11 23:17 - **/ - List selectList(PersonListReq personnelReq); - - /** - * 功能描述:查询单条人员信息 - * - * @param personId 人员信息Id - * @return {@link PersonResp } - * @author huise23 - * @date 2025/04/11 23:17 - **/ - PersonResp selectById(String personId); - - /** - * 功能描述:新增人员信息 - * - * @param personnel 人员信息 - * @author huise23 - * @date 2025/04/11 23:17 - **/ - void saveData(PersonEntity personnel); - - /** - * 功能描述:更新人员信息 - * - * @param personnel 人员信息 - * @author huise23 - * @date 2025/04/11 23:17 - **/ - void updateData(PersonEntity personnel); - - /** - * 功能描述:删除人员信息 - * - * @param personId 人员信息Id - * @author huise23 - * @date 2025/04/11 23:17 - **/ - void deleteById(String personId); -} - diff --git a/core/src/main/java/com/dite/znpt/service/UserService.java b/core/src/main/java/com/dite/znpt/service/UserService.java new file mode 100644 index 0000000..eb0861b --- /dev/null +++ b/core/src/main/java/com/dite/znpt/service/UserService.java @@ -0,0 +1,75 @@ +package com.dite.znpt.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.dite.znpt.domain.entity.UserEntity; +import com.dite.znpt.domain.vo.UserListReq; +import com.dite.znpt.domain.vo.UserReq; +import com.dite.znpt.domain.vo.UserResp; + +import java.util.List; + +/** + * @author huise23 + * @date 2025/04/11 23:17 + * @Description: 用户信息表服务接口 + */ +public interface UserService extends IService { + + /** + * 功能描述:分页查询用户信息列表 + * + * @param req 用户信息 + * @return {@link List }<{@link UserResp }> + * @author huise23 + * @date 2025/04/11 23:17 + **/ + List page(UserListReq req); + /** + * 功能描述:查询用户信息列表 + * + * @param req 用户信息 + * @return {@link List }<{@link UserResp }> + * @author huise23 + * @date 2025/04/11 23:17 + **/ + List list(UserListReq req); + + /** + * 功能描述:查询用户信息详情 + * + * @param userId 用户Id + * @return {@link UserResp } + * @author huise23 + * @date 2025/04/11 23:17 + **/ + UserResp detail(String userId); + + /** + * 功能描述:新增用户信息 + * + * @param req 用户信息 + * @author huise23 + * @date 2025/04/11 23:17 + **/ + void save(UserReq req); + + /** + * 功能描述:更新用户信息 + * + * @param userId 用户id + * @param req 用户信息 + * @author huise23 + * @date 2025/04/11 23:17 + **/ + void update(String userId, UserReq req); + + /** + * 功能描述:删除用户信息 + * + * @param userId 用户Id + * @author huise23 + * @date 2025/04/11 23:17 + **/ + void deleteById(String userId); +} + diff --git a/core/src/main/java/com/dite/znpt/service/impl/PersonServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/PersonServiceImpl.java deleted file mode 100644 index e28061c..0000000 --- a/core/src/main/java/com/dite/znpt/service/impl/PersonServiceImpl.java +++ /dev/null @@ -1,99 +0,0 @@ -package com.dite.znpt.service.impl; - -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.dite.znpt.domain.entity.PersonEntity; -import com.dite.znpt.domain.vo.PersonListReq; -import com.dite.znpt.domain.vo.PersonResp; -import com.dite.znpt.service.PersonService; -import com.dite.znpt.mapper.PersonnelMapper; -import org.springframework.stereotype.Service; -import cn.hutool.core.collection.CollUtil; -import lombok.RequiredArgsConstructor; -import com.dite.znpt.util.PageUtil; - -import java.util.List; - -/** - * @author huise23 - * @date 2025/04/11 23:17 - * @Description: 人员信息表服务实现类 - */ -@Service -@RequiredArgsConstructor -public class PersonServiceImpl extends ServiceImpl implements PersonService { - - /** - * 功能描述:查询人员信息列表 - * - * @param personnelReq 人员信息信息 - * @return {@link List }<{@link PersonResp }> - * @author huise23 - * @date 2025/04/11 23:17 - **/ - @Override - public List selectList(PersonListReq personnelReq) { - PageUtil.startPage(); - List personnelList= this.baseMapper.queryBySelective(personnelReq); - personnelList.forEach(resp -> { - - }); - return personnelList; - } - - /** - * 功能描述:查询单条人员信息 - * - * @param personId 人员信息Id - * @return {@link PersonResp } - * @author huise23 - * @date 2025/04/11 23:17 - **/ - @Override - public PersonResp selectById(String personId) { - PersonListReq personnelReq = new PersonListReq(); - personnelReq.setPersonId(personId); - - List list = selectList(personnelReq); - return list.isEmpty() ? CollUtil.getFirst(list) : new PersonResp(); - } - - /** - * 功能描述:新增人员信息 - * - * @param personnel 人员信息 - * @author huise23 - * @date 2025/04/11 23:17 - **/ - @Override - public void saveData(PersonEntity personnel) { -// todo 校验 - save(personnel); - } - - /** - * 功能描述:更新人员信息 - * - * @param personnel 人员信息 - * @author huise23 - * @date 2025/04/11 23:17 - **/ - @Override - public void updateData(PersonEntity personnel) { -// todo 校验 - updateById(personnel); - } - - /** - * 功能描述:删除人员信息 - * - * @param personId 人员信息Id - * @author huise23 - * @date 2025/04/11 23:17 - **/ - @Override - public void deleteById(String personId) { -// todo 校验 - removeById(personId); - } - -} diff --git a/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java index 6125da8..3748b14 100644 --- a/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/impl/ProjectServiceImpl.java @@ -5,7 +5,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.dite.znpt.constant.Message; import com.dite.znpt.converts.Converts; -import com.dite.znpt.domain.entity.PersonEntity; +import com.dite.znpt.domain.entity.UserEntity; import com.dite.znpt.domain.entity.ProjectEntity; import com.dite.znpt.domain.vo.ProjectListReq; import com.dite.znpt.domain.vo.ProjectListResp; @@ -13,7 +13,7 @@ import com.dite.znpt.domain.vo.ProjectReq; import com.dite.znpt.domain.vo.ProjectResp; import com.dite.znpt.enums.ProjectStatusEnum; import com.dite.znpt.exception.ServiceException; -import com.dite.znpt.service.PersonService; +import com.dite.znpt.service.UserService; import com.dite.znpt.service.ProjectService; import com.dite.znpt.mapper.ProjectMapper; import org.springframework.stereotype.Service; @@ -25,7 +25,6 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.List; import java.util.Map; -import java.util.Optional; import java.util.function.Function; import java.util.stream.Collectors; @@ -39,7 +38,7 @@ import java.util.stream.Collectors; public class ProjectServiceImpl extends ServiceImpl implements ProjectService { @Resource - private PersonService personService; + private UserService userService; /** * 功能描述:查询项目信息列表 * @@ -79,26 +78,29 @@ public class ProjectServiceImpl extends ServiceImpl personIds = new ArrayList<>(); + List userIds = new ArrayList<>(); if(StrUtil.isNotEmpty(resp.getAuditorId())){ - personIds.add(resp.getAuditorId()); + userIds.add(resp.getAuditorId()); } if(StrUtil.isNotEmpty(resp.getQualityOfficerId())){ - personIds.add(resp.getQualityOfficerId()); + userIds.add(resp.getQualityOfficerId()); } if(StrUtil.isNotEmpty(resp.getConstructionTeamLeaderId())){ - personIds.add(resp.getConstructionTeamLeaderId()); + userIds.add(resp.getConstructionTeamLeaderId()); } if(StrUtil.isNotEmpty(resp.getProjectManagerId())){ - personIds.add(resp.getProjectManagerId()); + userIds.add(resp.getProjectManagerId()); } - if(CollUtil.isNotEmpty(personIds)){ - Map personIdMap = personService.listByIds(personIds).stream().collect(Collectors.toMap(k->k.getPersonId(), Function.identity())); - if(CollUtil.isNotEmpty(personIdMap)){ - resp.setAuditorName(personIdMap.containsKey(resp.getAuditorId()) ? personIdMap.get(resp.getAuditorId()).getName() : null); - resp.setProjectManagerName(personIdMap.containsKey(resp.getProjectManagerId()) ? personIdMap.get(resp.getProjectManagerId()).getName() : null); - resp.setConstructionTeamLeaderName(personIdMap.containsKey(resp.getConstructionTeamLeaderId()) ? personIdMap.get(resp.getConstructionTeamLeaderId()).getName() : null); - resp.setQualityOfficerName(personIdMap.containsKey(resp.getQualityOfficerId()) ? personIdMap.get(resp.getQualityOfficerId()).getName() : null); + if(StrUtil.isNotEmpty(resp.getConstructorIds())){ + userIds.addAll(StrUtil.split(resp.getConstructorIds(), StrUtil.COMMA).stream().collect(Collectors.toList())); + } + if(CollUtil.isNotEmpty(userIds)){ + Map userIdMap = userService.listByIds(userIds).stream().collect(Collectors.toMap(k->k.getUserId(), Function.identity())); + if(CollUtil.isNotEmpty(userIdMap)){ + resp.setAuditorName(userIdMap.containsKey(resp.getAuditorId()) ? userIdMap.get(resp.getAuditorId()).getName() : null); + resp.setProjectManagerName(userIdMap.containsKey(resp.getProjectManagerId()) ? userIdMap.get(resp.getProjectManagerId()).getName() : null); + resp.setConstructionTeamLeaderName(userIdMap.containsKey(resp.getConstructionTeamLeaderId()) ? userIdMap.get(resp.getConstructionTeamLeaderId()).getName() : null); + resp.setQualityOfficerName(userIdMap.containsKey(resp.getQualityOfficerId()) ? userIdMap.get(resp.getQualityOfficerId()).getName() : null); } } return resp; diff --git a/core/src/main/java/com/dite/znpt/service/impl/UserServiceImpl.java b/core/src/main/java/com/dite/znpt/service/impl/UserServiceImpl.java new file mode 100644 index 0000000..447b95d --- /dev/null +++ b/core/src/main/java/com/dite/znpt/service/impl/UserServiceImpl.java @@ -0,0 +1,107 @@ +package com.dite.znpt.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.dite.znpt.domain.entity.UserEntity; +import com.dite.znpt.domain.vo.UserListReq; +import com.dite.znpt.domain.vo.UserReq; +import com.dite.znpt.domain.vo.UserResp; +import com.dite.znpt.service.UserService; +import com.dite.znpt.mapper.UserMapper; +import org.springframework.stereotype.Service; +import lombok.RequiredArgsConstructor; +import com.dite.znpt.util.PageUtil; + +import java.util.List; + +/** + * @author huise23 + * @date 2025/04/11 23:17 + * @Description: 用户信息表服务实现类 + */ +@Service +@RequiredArgsConstructor +public class UserServiceImpl extends ServiceImpl implements UserService { + + /** + * 功能描述:分页查询用户信息列表 + * + * @param req 用户信息 + * @return {@link List }<{@link UserResp }> + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public List page(UserListReq req) { + return null; + } + + /** + * 功能描述:查询用户信息列表 + * + * @param req 用户信息 + * @return {@link List }<{@link UserResp }> + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public List list(UserListReq req) { + PageUtil.startPage(); + List userRespList= this.baseMapper.queryBySelective(req); + userRespList.forEach(resp -> { + + }); + return userRespList; + } + + /** + * 功能描述:查询用户信息详情 + * + * @param userId 用户Id + * @return {@link UserResp } + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public UserResp detail(String userId) { + return null; + } + + /** + * 功能描述:新增用户信息 + * + * @param req 用户信息 + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public void save(UserReq req) { + + } + + /** + * 功能描述:更新用户信息 + * + * @param userId 用户id + * @param req 用户信息 + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public void update(String userId, UserReq req) { + + } + + /** + * 功能描述:删除用户信息 + * + * @param userId 用户Id + * @author huise23 + * @date 2025/04/11 23:17 + **/ + @Override + public void deleteById(String userId) { + + } + + +} diff --git a/core/src/main/java/com/dite/znpt/service/job/impl/JobAntiThunderWorkServiceImpl.java b/core/src/main/java/com/dite/znpt/service/job/impl/JobAntiThunderWorkServiceImpl.java index dc4fecb..3a49110 100644 --- a/core/src/main/java/com/dite/znpt/service/job/impl/JobAntiThunderWorkServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/job/impl/JobAntiThunderWorkServiceImpl.java @@ -63,6 +63,7 @@ public class JobAntiThunderWorkServiceImpl extends ServiceImpl list(JobInfoReq request) { List jobInfoList = jobService.list(QueryWrapperBuilder.build(request)); if (!jobInfoList.isEmpty()) { @@ -90,6 +91,7 @@ public class JobAntiThunderWorkServiceImpl extends ServiceImpl jobInfoList = jobService.list(QueryWrapperBuilder.build(request)); @@ -122,7 +124,7 @@ public class JobAntiThunderWorkServiceImpl extends ServiceImpl item.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal())); jobInfo.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal()); - } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getPersonId())) { + } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getUserId())) { workList.forEach(item -> item.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue())); jobInfo.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue()); } @@ -138,6 +140,7 @@ public class JobAntiThunderWorkServiceImpl extends ServiceImpl jobInfoList = jobService.list(QueryWrapperBuilder.build(request)); @@ -154,7 +157,7 @@ public class JobAntiThunderWorkServiceImpl extends ServiceImpl item.setStatus(Enums.EWorkStatus.DRAFT.getValue())); jobInfo.setStatus(Enums.EWorkStatus.DRAFT.getValue()); } diff --git a/core/src/main/java/com/dite/znpt/service/job/impl/JobInWorkServiceImpl.java b/core/src/main/java/com/dite/znpt/service/job/impl/JobInWorkServiceImpl.java index 6e2eb6a..5bac81f 100644 --- a/core/src/main/java/com/dite/znpt/service/job/impl/JobInWorkServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/job/impl/JobInWorkServiceImpl.java @@ -21,7 +21,6 @@ import com.dite.znpt.service.job.JobInWorkService; import com.dite.znpt.service.job.JobService; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -145,7 +144,7 @@ public class JobInWorkServiceImpl extends ServiceImpl item.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal())); jobInfo.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal()); - } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getPersonId())) { + } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getUserId())) { workList.forEach(item -> item.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue())); jobInfo.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue()); } @@ -177,7 +176,7 @@ public class JobInWorkServiceImpl extends ServiceImpl item.setStatus(Enums.EWorkStatus.DRAFT.getValue())); jobInfo.setStatus(Enums.EWorkStatus.DRAFT.getValue()); } diff --git a/core/src/main/java/com/dite/znpt/service/job/impl/JobOutWorkServiceImpl.java b/core/src/main/java/com/dite/znpt/service/job/impl/JobOutWorkServiceImpl.java index 961e295..399de33 100644 --- a/core/src/main/java/com/dite/znpt/service/job/impl/JobOutWorkServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/job/impl/JobOutWorkServiceImpl.java @@ -1,9 +1,7 @@ package com.dite.znpt.service.job.impl; -import java.time.LocalDateTime; import java.util.ArrayList; -import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.ListUtil; import cn.hutool.core.lang.Dict; @@ -252,7 +250,7 @@ public class JobOutWorkServiceImpl extends ServiceImpl item.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal())); jobInfo.setQualityOfficerStatus(Enums.EAuthStatus.APPROVAL.getVal()); - } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getPersonId())) { + } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getUserId())) { workList.forEach(item -> item.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue())); jobInfo.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue()); } @@ -284,7 +282,7 @@ public class JobOutWorkServiceImpl extends ServiceImpl item.setStatus(Enums.EWorkStatus.DRAFT.getValue())); jobInfo.setStatus(Enums.EWorkStatus.DRAFT.getValue()); } diff --git a/core/src/main/java/com/dite/znpt/service/job/impl/JobSummaryWorkServiceImpl.java b/core/src/main/java/com/dite/znpt/service/job/impl/JobSummaryWorkServiceImpl.java index 0bd2650..b230e7a 100644 --- a/core/src/main/java/com/dite/znpt/service/job/impl/JobSummaryWorkServiceImpl.java +++ b/core/src/main/java/com/dite/znpt/service/job/impl/JobSummaryWorkServiceImpl.java @@ -8,7 +8,6 @@ import com.dite.znpt.domain.QueryWrapperBuilder; import com.dite.znpt.domain.entity.ProjectEntity; import com.dite.znpt.domain.entity.job.*; import com.dite.znpt.domain.entity.job.JobSummaryWork; -import com.dite.znpt.domain.entity.job.JobSummaryWork; import com.dite.znpt.domain.vo.job.req.JobInfoReq; import com.dite.znpt.domain.vo.job.req.JobSummaryWorkReq; import com.dite.znpt.enums.Enums; @@ -104,7 +103,7 @@ public class JobSummaryWorkServiceImpl extends ServiceImpl item.setStatus(Enums.EWorkStatus.MANAGER_APPROVAL.getValue())); jobInfo.setStatus(Enums.EWorkStatus.MANAGER_APPROVAL.getValue()); - } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getPersonId())) { + } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getUserId())) { workList.forEach(item -> item.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue())); jobInfo.setStatus(Enums.EWorkStatus.LEADER_SUBMITTED.getValue()); } @@ -134,7 +133,7 @@ public class JobSummaryWorkServiceImpl extends ServiceImpl item.setStatus(Enums.EWorkStatus.SUBMITTED.getValue())); jobInfo.setStatus(Enums.EWorkStatus.SUBMITTED.getValue()); - } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getPersonId())) { + } else if (project.getConstructionTeamLeaderId().equals(UserContext.getUserInfo().getUserId())) { workList.forEach(item -> item.setStatus(Enums.EWorkStatus.DRAFT.getValue())); jobInfo.setStatus(Enums.EWorkStatus.DRAFT.getValue()); } diff --git a/core/src/main/resources/mapper/ProjectMapper.xml b/core/src/main/resources/mapper/ProjectMapper.xml index 76d66a5..261f5e3 100644 --- a/core/src/main/resources/mapper/ProjectMapper.xml +++ b/core/src/main/resources/mapper/ProjectMapper.xml @@ -6,10 +6,10 @@ diff --git a/core/src/main/resources/mapper/PersonnelMapper.xml b/core/src/main/resources/mapper/UserMapper.xml similarity index 80% rename from core/src/main/resources/mapper/PersonnelMapper.xml rename to core/src/main/resources/mapper/UserMapper.xml index 6b8887e..7c12da4 100644 --- a/core/src/main/resources/mapper/PersonnelMapper.xml +++ b/core/src/main/resources/mapper/UserMapper.xml @@ -1,22 +1,22 @@ - + - a.person_id, a.name, a.role_type, a.company_id, + a.user_id, a.name, a.role_type, a.company_id, a.password, a.status - select - from personnel a + from user a # and (a.TODO like concat('%', #{keyword,jdbcType=VARCHAR}, '%') or a.TODO like concat('%', #{keyword,jdbcType=VARCHAR}, '%')) - - and a.person_id like concat ('%', #{personId}, '%') + + and a.user_id like concat ('%', #{user_id}, '%') and a.name like concat ('%', #{name}, '%') diff --git a/web/src/main/java/com/dite/znpt/web/controller/PersonController.java b/web/src/main/java/com/dite/znpt/web/controller/PersonController.java deleted file mode 100644 index f1d82f8..0000000 --- a/web/src/main/java/com/dite/znpt/web/controller/PersonController.java +++ /dev/null @@ -1,84 +0,0 @@ -package com.dite.znpt.web.controller; - - -import com.dite.znpt.domain.Constants; -import com.dite.znpt.domain.vo.PersonListReq; -import com.dite.znpt.domain.vo.PersonResp; -import com.dite.znpt.domain.entity.PersonEntity; -import com.dite.znpt.service.PersonService; -import com.dite.znpt.domain.Result; -import com.dite.znpt.domain.PageResult; -import com.pig4cloud.plugin.excel.annotation.RequestExcel; -import com.pig4cloud.plugin.excel.annotation.ResponseExcel; -import com.pig4cloud.plugin.excel.vo.ErrorMessage; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import org.springframework.validation.BindingResult; -import org.springframework.web.bind.annotation.*; - -import javax.annotation.Resource; -import java.util.List; - -/** - * @author huise23 - * @date 2025/04/11 23:17 - */ -@Api(tags = "人员信息") -@RestController -@RequestMapping("/person") -public class PersonController { - @Resource - private PersonService personService; - - @ApiOperation(value = "获取人员信息列表", httpMethod = "GET") - @GetMapping("/list") - public PageResult list(PersonListReq personnelReq) { - return PageResult.ok(personService.selectList(personnelReq)); - } - - @ApiOperation(value = "根据人员信息Id获取详细信息", httpMethod = "GET") - @GetMapping("/{personId}") - public Result getInfo(@PathVariable String personId) { - return Result.ok(personService.selectById(personId)); - } - - @ApiOperation(value = "新增人员信息", httpMethod = "POST") - @PostMapping - public Result add(@RequestBody PersonEntity personnel) { - personService.saveData(personnel); - return Result.ok(); - } - - @ApiOperation(value = "修改人员信息", httpMethod = "PUT") - @PutMapping - public Result edit(@RequestBody PersonEntity personnel) { - personService.updateData(personnel); - return Result.ok(); - } - - @ApiOperation(value = "删除人员信息", httpMethod = "DELETE") - @DeleteMapping("/{personId}") - public Result remove(@PathVariable String personId) { - personService.deleteById(personId); - return Result.ok(); - } - - @ApiOperation(value = "导出人员信息", httpMethod = "GET") - @GetMapping("/export") - @ResponseExcel(name = "人员信息") - public List export(PersonListReq personnelReq) { - return personService.selectList(personnelReq); - } - - @ApiOperation(value = "导入人员信息", httpMethod = "POST") - @PostMapping("/import") - public Result importData(@RequestExcel List dataList, BindingResult bindingResult) { - // JSR 303 校验通用校验获取失败的数据 - List errorMessageList = (List) bindingResult.getTarget(); - if (errorMessageList != null && !errorMessageList.isEmpty()) { - return Result.error(Constants.SERVICE_EXCEPTION, "导入失败"); - } - return Result.okM("导入"+dataList.size()+"条数据"); - } -} - diff --git a/web/src/main/java/com/dite/znpt/web/controller/UserController.java b/web/src/main/java/com/dite/znpt/web/controller/UserController.java new file mode 100644 index 0000000..d29e6d9 --- /dev/null +++ b/web/src/main/java/com/dite/znpt/web/controller/UserController.java @@ -0,0 +1,94 @@ +package com.dite.znpt.web.controller; + + +import com.dite.znpt.domain.vo.UserListReq; +import com.dite.znpt.domain.vo.UserReq; +import com.dite.znpt.domain.vo.UserResp; +import com.dite.znpt.domain.entity.UserEntity; +import com.dite.znpt.service.UserService; +import com.dite.znpt.domain.Result; +import com.dite.znpt.domain.PageResult; +import com.pig4cloud.plugin.excel.annotation.RequestExcel; +import com.pig4cloud.plugin.excel.annotation.ResponseExcel; +import com.pig4cloud.plugin.excel.vo.ErrorMessage; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.validation.BindingResult; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @author huise23 + * @date 2025/04/11 23:17 + */ +@Api(tags = "用户信息") +@RestController +@RequestMapping("/user") +public class UserController { + @Resource + private UserService userService; + + @ApiOperation(value = "分页查询用户信息列表", httpMethod = "GET") + @GetMapping("/page") + public PageResult page(UserListReq req) { + return PageResult.ok(userService.page(req)); + } + + @ApiOperation(value = "查询用户信息列表", httpMethod = "GET") + @GetMapping("/list") + public PageResult list(UserListReq req) { + return PageResult.ok(userService.list(req)); + } + + @ApiOperation(value = "根据用户信息Id获取详细信息", httpMethod = "GET") + @GetMapping("/detail/{userId}") + public Result detail(@PathVariable String userId) { + return Result.ok(userService.detail(userId)); + } + + @ApiOperation(value = "新增用户信息", httpMethod = "POST") + @PostMapping + public Result add(@RequestBody UserReq req) { + userService.save(req); + return Result.ok(); + } + + @ApiOperation(value = "修改用户信息", httpMethod = "PUT") + @PutMapping("/{userId}") + public Result edit(@PathVariable String userId, @RequestBody UserReq req) { + userService.update(userId, req); + return Result.ok(); + } + + @ApiOperation(value = "删除用户信息", httpMethod = "DELETE") + @DeleteMapping("/{userId}") + public Result remove(@PathVariable String userId) { + userService.deleteById(userId); + return Result.ok(); + } + + @ApiOperation(value = "导出用户信息-需求待明确", httpMethod = "GET") + @GetMapping("/export") + @ResponseExcel(name = "用户信息") + public List export(UserListReq req) { +// return userService.selectList(req); + // TODO + return null; + } + + @ApiOperation(value = "导入用户信息-需求待明确", httpMethod = "POST") + @PostMapping("/import") + public Result importData(@RequestExcel List dataList, BindingResult bindingResult) { + // JSR 303 校验通用校验获取失败的数据 + List errorMessageList = (List) bindingResult.getTarget(); +// if (errorMessageList != null && !errorMessageList.isEmpty()) { +// return Result.error(Constants.SERVICE_EXCEPTION, "导入失败"); +// } +// return Result.okM("导入"+dataList.size()+"条数据"); + // TODO + return null; + } +} +