Selaa lähdekoodia

冻结员工账号调整

sangwenwei 8 kuukautta sitten
vanhempi
commit
93d705cab0

+ 21 - 13
jeeplus-modules/jeeplus-business/src/main/java/com/jeeplus/business/humanResources/service/StaffDimissionService.java

@@ -31,8 +31,10 @@ import com.jeeplus.sys.feign.IUserApi;
 import com.jeeplus.sys.feign.IWorkAttachmentApi;
 import com.jeeplus.sys.feign.IWorkAttachmentApi;
 import com.jeeplus.sys.service.dto.UserDTO;
 import com.jeeplus.sys.service.dto.UserDTO;
 
 
+import com.jeeplus.sys.utils.UserUtils;
 import com.jeeplus.utils.StringUtils;
 import com.jeeplus.utils.StringUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
 
 
 import javax.annotation.Resource;
 import javax.annotation.Resource;
@@ -59,6 +61,9 @@ public class StaffDimissionService {
     @Resource
     @Resource
     private JyDimissionProcessMapper jyDimissionProcessMapper;
     private JyDimissionProcessMapper jyDimissionProcessMapper;
 
 
+    @Autowired
+    private RedisUtils redisUtils;
+
     /**
     /**
      * 列表展示
      * 列表展示
      * @param dimissionDTO
      * @param dimissionDTO
@@ -358,18 +363,21 @@ public class StaffDimissionService {
         staffHeirMapper.updateUserById(id,loginFlag);
         staffHeirMapper.updateUserById(id,loginFlag);
 
 
         UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getById(id);
         UserDTO userDTO = SpringUtil.getBean(IUserApi.class).getById(id);
-        //获取在线员工信息
-        Set <String> keys = RedisUtils.getInstance ( ).keys ( CacheNames.USER_CACHE_ONLINE_USERS, "*" );
-        List <UserDTO> onlineUsers = Lists.newArrayList ( );
-        keys.forEach ( key -> {
-            onlineUsers.add ( (UserDTO) RedisUtils.getInstance ( ).get ( key ) );
-        } );
-        //将该员工的信息从redis删除
-        onlineUsers.forEach(dto ->{
-            if (userDTO.getTenantDTO().getId().equals(dto.getTenantDTO().getId()) && userDTO.getName().equals(dto.getName())) {
-                RedisUtils.getInstance ( ).delete ( CacheNames.USER_CACHE_ONLINE_USERS, dto.getToken ( ) );
-                RedisUtils.getInstance ( ).delete ( CacheNames.USER_CACHE_TOKEN, dto.getToken ( ) );
-            }
-        });
+
+        UserUtils.deleteCache ( userDTO );
+
+        if (redisUtils.hasKey("user:cache:user:all:info")){
+            //先清除redis中的数据
+            redisUtils.delete(CacheNames.USER_CACHE_USER_ALL_INFO,"user:cache:user:all:info");
+            //获取全部的人员信息
+            List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
+            //再次将人员信息存入到redis中
+            redisUtils.set(CacheNames.USER_CACHE_USER_ALL_INFO,"user:cache:user:all:info",allUserInfo);
+        }else {
+            //获取全部的人员信息
+            List<UserDTO> allUserInfo = SpringUtil.getBean(IUserApi.class).getAllUserInfo();
+            //再次将人员信息存入到redis中
+            redisUtils.set(CacheNames.USER_CACHE_USER_ALL_INFO,"user:cache:user:all:info",allUserInfo);
+        }
     }
     }
 }
 }