From 6ac6b6f92dc4d0212c423d2f88d33f8b96558ca5 Mon Sep 17 00:00:00 2001
From: 龚焕茏 <2842157468@qq.com>
Date: 星期二, 07 五月 2024 11:55:35 +0800
Subject: [PATCH] 新增人员状态、状态描述展示、设置操作
---
src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java | 7 +++
src/main/java/com/mindskip/xzs/domain/User.java | 5 ++
src/main/java/com/mindskip/xzs/controller/admin/UserController.java | 6 +++
src/main/java/com/mindskip/xzs/domain/vo/UserVO.java | 26 +++++++++++++
src/main/java/com/mindskip/xzs/domain/enums/UserConditionEnum.java | 32 ++++++++++++++++
src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java | 21 ++++++++++
src/main/java/com/mindskip/xzs/repository/UserMapper.java | 2 +
src/main/java/com/mindskip/xzs/service/UserService.java | 3 +
src/main/resources/mapper/UserMapper.xml | 10 ++++
9 files changed, 111 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/mindskip/xzs/controller/admin/UserController.java b/src/main/java/com/mindskip/xzs/controller/admin/UserController.java
index a76d70a..416c421 100644
--- a/src/main/java/com/mindskip/xzs/controller/admin/UserController.java
+++ b/src/main/java/com/mindskip/xzs/controller/admin/UserController.java
@@ -230,4 +230,10 @@
return RestResponse.ok();
}
+ @RequestMapping(value = "/setStatus", method = RequestMethod.POST)
+ public RestResponse<String> setStatus(@RequestBody UserVO user) {
+ userService.setStatus(user);
+ return RestResponse.ok("鎿嶄綔鎴愬姛");
+ }
+
}
diff --git a/src/main/java/com/mindskip/xzs/domain/User.java b/src/main/java/com/mindskip/xzs/domain/User.java
index 6f1628a..549a0a2 100644
--- a/src/main/java/com/mindskip/xzs/domain/User.java
+++ b/src/main/java/com/mindskip/xzs/domain/User.java
@@ -1,5 +1,6 @@
package com.mindskip.xzs.domain;
+import com.mindskip.xzs.domain.enums.UserConditionEnum;
import lombok.Data;
import java.io.Serializable;
@@ -78,4 +79,8 @@
* 鏄惁閮ㄩ棬绠$悊鍛�
*/
private String deptAdmin;
+
+ private UserConditionEnum condition;
+
+ private String conditionDetail;
}
diff --git a/src/main/java/com/mindskip/xzs/domain/enums/UserConditionEnum.java b/src/main/java/com/mindskip/xzs/domain/enums/UserConditionEnum.java
new file mode 100644
index 0000000..fdcaf01
--- /dev/null
+++ b/src/main/java/com/mindskip/xzs/domain/enums/UserConditionEnum.java
@@ -0,0 +1,32 @@
+package com.mindskip.xzs.domain.enums;
+
+import com.baomidou.mybatisplus.annotation.EnumValue;
+import com.fasterxml.jackson.annotation.JsonValue;
+import lombok.Getter;
+
+/**
+ * 鐢ㄦ埛鐘舵��
+ *
+ * @author gonghl
+ */
+@Getter
+public enum UserConditionEnum {
+
+ SICK("1", "鐥呭亣"),
+ BUSINESS_TRIP("2", "鍑哄樊"),
+ OTHER("3", "鍏朵粬"),
+ ;
+
+
+ @EnumValue // 鏍囨槑璇ュ瓧娈靛瓨鍏ユ暟鎹簱
+ private final String code;
+
+ @JsonValue // 鏍囨槑鍦ㄨ浆JSON鏃朵娇鐢ㄨ瀛楁锛屽嵆鍝嶅簲鏃�
+ private final String desc;
+
+ UserConditionEnum(String code, String desc) {
+ this.code = code;
+ this.desc = desc;
+ }
+
+}
diff --git a/src/main/java/com/mindskip/xzs/domain/vo/UserVO.java b/src/main/java/com/mindskip/xzs/domain/vo/UserVO.java
index 5d1d64e..2bd26f4 100644
--- a/src/main/java/com/mindskip/xzs/domain/vo/UserVO.java
+++ b/src/main/java/com/mindskip/xzs/domain/vo/UserVO.java
@@ -1,5 +1,7 @@
package com.mindskip.xzs.domain.vo;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.mindskip.xzs.domain.enums.UserConditionEnum;
import com.mindskip.xzs.utility.excel.ExcelImport;
import java.io.Serializable;
@@ -36,6 +38,7 @@
*/
private Integer sex;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date birthDay;
/**
@@ -63,10 +66,13 @@
*/
private String imagePath;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date modifyTime;
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date lastActiveTime;
/**
@@ -79,6 +85,26 @@
*/
private String wxOpenId;
+ private UserConditionEnum condition;
+
+ private String conditionDetail;
+
+ public String getConditionDetail() {
+ return conditionDetail;
+ }
+
+ public void setConditionDetail(String conditionDetail) {
+ this.conditionDetail = conditionDetail;
+ }
+
+ public UserConditionEnum getCondition() {
+ return condition;
+ }
+
+ public void setCondition(UserConditionEnum condition) {
+ this.condition = condition;
+ }
+
public Integer getId() {
return id;
}
diff --git a/src/main/java/com/mindskip/xzs/repository/UserMapper.java b/src/main/java/com/mindskip/xzs/repository/UserMapper.java
index d0e9942..a025abe 100644
--- a/src/main/java/com/mindskip/xzs/repository/UserMapper.java
+++ b/src/main/java/com/mindskip/xzs/repository/UserMapper.java
@@ -148,4 +148,6 @@
List<ExamPaperAnswer> getUserByDept(@Param("query") ExamPaperGradeQuery query);
+
+ void setStatus(UserVO user);
}
diff --git a/src/main/java/com/mindskip/xzs/service/UserService.java b/src/main/java/com/mindskip/xzs/service/UserService.java
index 51b3713..ab61ec6 100644
--- a/src/main/java/com/mindskip/xzs/service/UserService.java
+++ b/src/main/java/com/mindskip/xzs/service/UserService.java
@@ -2,6 +2,7 @@
import com.mindskip.xzs.domain.other.KeyValue;
import com.mindskip.xzs.domain.User;
+import com.mindskip.xzs.domain.vo.UserVO;
import com.mindskip.xzs.viewmodel.admin.user.UserPageRequestVM;
import com.github.pagehelper.PageInfo;
import org.apache.ibatis.annotations.Param;
@@ -132,4 +133,6 @@
List<User> getUserByLevel(Integer userLevel);
User getUserByRealName(String realName);
+
+ void setStatus(UserVO user);
}
diff --git a/src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java b/src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java
index a4b132e..b7c4452 100644
--- a/src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java
+++ b/src/main/java/com/mindskip/xzs/service/impl/UserServiceImpl.java
@@ -1,6 +1,7 @@
package com.mindskip.xzs.service.impl;
import com.mindskip.xzs.domain.other.KeyValue;
+import com.mindskip.xzs.domain.vo.UserVO;
import com.mindskip.xzs.exception.BusinessException;
import com.mindskip.xzs.domain.User;
import com.mindskip.xzs.event.OnRegistrationCompleteEvent;
@@ -171,4 +172,10 @@
public User getUserByRealName(String realName) {
return userMapper.getUserByRealName(realName);
}
+
+ @Override
+ public void setStatus(UserVO user) {
+ userMapper.setStatus(user);
+ }
+
}
diff --git a/src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java b/src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java
index 6e8095d..0f889a7 100644
--- a/src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java
+++ b/src/main/java/com/mindskip/xzs/viewmodel/admin/user/UserResponseVM.java
@@ -1,6 +1,7 @@
package com.mindskip.xzs.viewmodel.admin.user;
import com.mindskip.xzs.domain.User;
+import com.mindskip.xzs.domain.enums.UserConditionEnum;
import com.mindskip.xzs.utility.DateTimeUtil;
import com.mindskip.xzs.viewmodel.BaseVM;
@@ -47,6 +48,18 @@
private List<String> tagNames;
+ private UserConditionEnum condition;
+
+ private String conditionDetail;
+
+ public String getConditionDetail() {
+ return conditionDetail;
+ }
+
+ public void setConditionDetail(String conditionDetail) {
+ this.conditionDetail = conditionDetail;
+ }
+
public static UserResponseVM from(User user) {
UserResponseVM vm = modelMapper.map(user, UserResponseVM.class);
vm.setBirthDay(DateTimeUtil.dateFormat(user.getBirthDay()));
@@ -56,6 +69,14 @@
return vm;
}
+ public UserConditionEnum getCondition() {
+ return condition;
+ }
+
+ public void setCondition(UserConditionEnum condition) {
+ this.condition = condition;
+ }
+
public Integer getId() {
return id;
}
diff --git a/src/main/resources/mapper/UserMapper.xml b/src/main/resources/mapper/UserMapper.xml
index bd9950c..c0242e5 100644
--- a/src/main/resources/mapper/UserMapper.xml
+++ b/src/main/resources/mapper/UserMapper.xml
@@ -23,7 +23,7 @@
</resultMap>
<sql id="Base_Column_List">
id, user_uuid, user_name, password, real_name, age, sex, birth_day, user_level, phone,
- role, status, image_path, create_time, modify_time, last_active_time, deleted, wx_open_id, dept_admin
+ role, status, image_path, create_time, modify_time, last_active_time, deleted, wx_open_id, dept_admin, `condition`, condition_detail
</sql>
<select id="selectByPrimaryKey" parameterType="java.lang.Integer" resultMap="BaseResultMap">
select
@@ -444,6 +444,14 @@
UPDATE t_user SET dept_admin = #{deptAdmin} WHERE id = #{id} AND deleted = 0
</update>
+ <update id="setStatus">
+ UPDATE t_user
+ SET `condition` = #{condition},
+ `condition_detail` = #{conditionDetail}
+ WHERE id = #{id}
+ AND deleted = 0
+ </update>
+
<select id="getUserByDept" resultType="com.mindskip.xzs.domain.ExamPaperAnswer">
SELECT
tu.id as createUser, tu.real_name as userName, count(tepa.id) as counts
--
Gitblit v1.8.0