From c7dd4a195d8d893d92c49963447cdf6486844584 Mon Sep 17 00:00:00 2001
From: cjl <276999030@qq.com>
Date: Fri, 20 Oct 2023 09:45:53 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/wb' into cjl
---
screen-manage/src/main/java/com/moral/api/service/impl/UserServiceImpl.java | 153 +++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 118 insertions(+), 35 deletions(-)
diff --git a/screen-manage/src/main/java/com/moral/api/service/impl/UserServiceImpl.java b/screen-manage/src/main/java/com/moral/api/service/impl/UserServiceImpl.java
index cce9d52..e0b6b0d 100644
--- a/screen-manage/src/main/java/com/moral/api/service/impl/UserServiceImpl.java
+++ b/screen-manage/src/main/java/com/moral/api/service/impl/UserServiceImpl.java
@@ -5,10 +5,11 @@
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.moral.api.config.mybatis.wrapper.NullFilterWrapper;
+import com.moral.api.entity.Group;
import com.moral.api.entity.Organization;
import com.moral.api.entity.User;
-import com.moral.api.mapper.OrganizationMapper;
-import com.moral.api.mapper.UserMapper;
+import com.moral.api.entity.UserGroup;
+import com.moral.api.mapper.*;
import com.moral.api.pojo.dto.user.UserDTO;
import com.moral.api.pojo.dto.user.UserQueryDTO;
import com.moral.api.pojo.form.user.UserDeleteForm;
@@ -17,9 +18,13 @@
import com.moral.api.pojo.form.user.UserUpdateForm;
import com.moral.api.service.UserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.moral.api.util.CompareFieldUtils;
+import com.moral.api.util.LogUtils;
import com.moral.constant.Constants;
import com.moral.constant.ResponseCodeEnum;
+import com.moral.pojo.CompareFieldResult;
import com.moral.util.ConvertUtils;
+import com.moral.util.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -28,6 +33,7 @@
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.logging.SimpleFormatter;
/**
* <p>
@@ -44,6 +50,13 @@
UserMapper userMapper;
@Autowired
OrganizationMapper organizationMapper;
+ @Autowired
+ GroupMapper groupMapper;
+ @Autowired
+ UserGroupMapper userGroupMapper;
+ @Autowired
+ GroupMenuMapper groupMenuMapper;
+
@Override
public UserQueryDTO queryUsers(UserQueryForm form) {
@@ -143,40 +156,16 @@
//������
userMapper.updateById(user);
+ //������������������������
+ user = userMapper.selectById(user.getId());
+
+ //������������
+ updatelog(oldUser,user);
+
//������������������
dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
- return dto;
- }
-
- @Override
- @Transactional
- public UserDTO deleteUser(UserDeleteForm form) {
- //������������������
- UserDTO dto = new UserDTO();
- //������
- Integer id = form.getId();
- //������������������������ ������������������
- User oldUser = new User();
- oldUser.setIsDelete(Constants.NOT_DELETE);
- oldUser.setId(id);
- QueryWrapper<User> oldWrapper = new QueryWrapper<>();
- oldWrapper.setEntity(oldUser);
- oldUser = userMapper.selectOne(oldWrapper);
- if(ObjectUtils.isEmpty(oldUser)){
- dto.setCode(ResponseCodeEnum.USER_NOT_EXIST.getCode());
- dto.setMsg(ResponseCodeEnum.USER_NOT_EXIST.getMsg());
- return dto;
- }
- //������������������������������������������������������������
- UpdateWrapper<User> deleteWrapper = new UpdateWrapper<>();
- deleteWrapper.eq("organization_id",oldUser.getOrganizationId());
- deleteWrapper.set("is_delete",Constants.DELETE);
- userMapper.update(null,deleteWrapper);
- //������������
- dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
- dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
return dto;
}
@@ -194,7 +183,7 @@
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.setEntity(existUser);
User existUserResult = userMapper.selectOne(wrapper);
- if(!ObjectUtils.isEmpty(existUserResult)){
+ if (!ObjectUtils.isEmpty(existUserResult)) {
dto.setCode(ResponseCodeEnum.USER_EXIST.getCode());
dto.setMsg(ResponseCodeEnum.USER_EXIST.getMsg());
return dto;
@@ -208,13 +197,31 @@
QueryWrapper<User> organizationUserWrapper = new QueryWrapper<>();
organizationUserWrapper.setEntity(organizationUser);
organizationUser = userMapper.selectOne(organizationUserWrapper);
- if(!ObjectUtils.isEmpty(organizationUser)){
+ if (!ObjectUtils.isEmpty(organizationUser)) {
dto.setCode(ResponseCodeEnum.ORGANIZATION_USER_EXIST.getCode());
dto.setMsg(ResponseCodeEnum.ORGANIZATION_USER_EXIST.getMsg());
return dto;
}
- //������
+ //���������������
userMapper.insert(user);
+ //������������admin������
+ Group group = new Group();
+ group.setOrganizationId(organizationId);
+ group.setGroupName("admin");
+ groupMapper.insert(group);
+ //���������������������������
+ UserGroup userGroup = new UserGroup();
+ userGroup.setUserId(user.getId());
+ userGroup.setGroupId(group.getId());
+ userGroup.setOrganizationId(organizationId);
+ userGroupMapper.insert(userGroup);
+ //������������
+ Organization organization = new Organization();
+ organization.setAdminUserId(user.getId());
+ organization.setId(organizationId);
+ organizationMapper.updateById(organization);
+ //������������������
+ insertLog(user,organizationId);
//������������������
dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
@@ -222,4 +229,80 @@
}
+ @Override
+ @Transactional
+ public UserDTO deleteUsersByOrganizationId(Integer organizationId) {
+ //������������������
+ UserDTO dto = new UserDTO();
+ //������������������������������������������������������������
+ UpdateWrapper<User> deleteUserChildrenWrapper = new UpdateWrapper<>();
+ deleteUserChildrenWrapper.eq("organization_id", organizationId);
+ deleteUserChildrenWrapper.set("is_delete", Constants.DELETE);
+ userMapper.update(null, deleteUserChildrenWrapper);
+ //���������������groupMenu
+ UpdateWrapper deleteGroupMenuWrapper = new UpdateWrapper();
+ deleteGroupMenuWrapper.eq("organization_id", organizationId);
+ deleteGroupMenuWrapper.set("is_delete", Constants.DELETE);
+ groupMenuMapper.update(null, deleteGroupMenuWrapper);
+ //���������������userGroup
+ UpdateWrapper deleteUserGroupWrapper = new UpdateWrapper();
+ deleteUserGroupWrapper.eq("organization_id", organizationId);
+ deleteUserGroupWrapper.set("is_delete", Constants.DELETE);
+ userGroupMapper.update(null, deleteUserGroupWrapper);
+ //���������������group
+ UpdateWrapper deleteGroupWrapper = new UpdateWrapper();
+ deleteGroupWrapper.eq("organization_id", organizationId);
+ deleteGroupWrapper.set("is_delete", Constants.DELETE);
+ groupMapper.update(null, deleteGroupWrapper);
+ //������������
+ dto.setCode(ResponseCodeEnum.SUCCESS.getCode());
+ dto.setMsg(ResponseCodeEnum.SUCCESS.getMsg());
+ return dto;
+ }
+
+ /**
+ * @Description: ������������������������
+ * @Param: [user, organizationId]
+ * @return: void
+ * @Author: ���������
+ * @Date: 2021/8/24
+ */
+ private void insertLog(User user,Integer organizationId) {
+ StringBuilder content = new StringBuilder("���������������������;");
+ content.append("���������admin;");
+ //������������admin���������������
+ Organization organization = organizationMapper.selectById(organizationId);
+ content.append("���������"+organization.getName()+";");
+ content.append("���������"+user.getAccount()+";");
+ content.append("���������������"+user.getUserName()+";");
+ content.append("���������������"+ DateUtils.dateToDateString(user.getExpireTime(),"yyyy-MM-dd")+";");
+ if(user.getEmail()!=null)
+ content.append("���������"+user.getEmail()+";");
+ if(user.getMobile()!=null)
+ content.append("���������"+user.getMobile()+";");
+ if(user.getWechat()!=null)
+ content.append("���������"+user.getWechat()+";");
+ LogUtils.saveOperationForManage(content.toString(), Constants.INSERT_OPERATE_TYPE);
+ }
+
+
+ /**
+ * @Description: ������������������������
+ * @Param: [oldUser, newUser]
+ * @return: void
+ * @Author: ���������
+ * @Date: 2021/8/24
+ */
+ private void updatelog(User oldUser,User newUser){
+ List<CompareFieldResult> results = CompareFieldUtils.compare(User.class, oldUser, newUser);
+ StringBuilder content = new StringBuilder("���������������������;");
+ content.append("���������������"+organizationMapper.selectById(oldUser.getOrganizationId()).getName()+";");
+ //������������������
+ if(newUser.getPassword()!=null)
+ content.append("���������������;");
+ String resultContent = CompareFieldUtils.resultsConvertContent(results,content.toString());
+ LogUtils.saveOperationForManage(resultContent, Constants.UPDATE_OPERATE_TYPE);
+ }
+
+
}
--
Gitblit v1.8.0