lyhzzz 1 hafta önce
ebeveyn
işleme
919d3552d1

+ 8 - 3
src/main/java/com/fdkankan/manage/controller/BaseController.java

@@ -35,9 +35,14 @@ public class BaseController {
     }
 
     protected Integer getPlatformId(){
-        JWT jwt = JWTUtil.parseToken(getToken());
-        Object platformId = jwt.getPayload("platformId");
-        return Integer.valueOf(platformId.toString());
+        try {
+            JWT jwt = JWTUtil.parseToken(getToken());
+            Object platformId = jwt.getPayload("platformId");
+            return Integer.valueOf(platformId.toString());
+        }catch (Exception e){
+
+        }
+     return null;
     }
 
 }

+ 12 - 13
src/main/java/com/fdkankan/manage/controller/CaseController.java

@@ -144,8 +144,10 @@ public class CaseController extends BaseController{
             List<String> myNumList = new ArrayList<>();
             List<Integer> myFusionList = new ArrayList<>();
             if(flag){
-                myNumList = scenePlusService.getByPlatformIds(Arrays.asList(jyUser.getPlatformId()));
-                myFusionList = caseFusionService.getByPlatformIds(Arrays.asList(jyUser.getPlatformId()));
+                if(jyUser.getPlatformId()!= null){
+                    myNumList = scenePlusService.getByPlatformIds(Arrays.asList(jyUser.getPlatformId()));
+                    myFusionList = caseFusionService.getByPlatformIds(Arrays.asList(jyUser.getPlatformId()));
+                }
             }else {
                 myNumList = scenePlusService.getByUserIds(Arrays.asList(jyUser.getUserId()));
                 myFusionList = caseFusionService.getBySysUserIds(Arrays.asList(jyUser.getSysUserId()));
@@ -175,13 +177,7 @@ public class CaseController extends BaseController{
         }
 
         Page<Case> page = caseService.pageList(param);
-        List<Long> sysIds = page.getRecords().stream().map(Case::getSysUserId).collect(Collectors.toList());
-        HashMap<Long, SysUser> userMap = sysUserService.getByIds(new HashSet<>(sysIds));
         for (Case record : page.getRecords()) {
-            SysUser sysUser = userMap.get(record.getSysUserId());
-            if(sysUser != null){
-                record.setNickName(sysUser.getNickName());
-            }
             if(param.getIsShare() == 0){
                 record.setIsAuth(true);
                 record.setIsEdit(true);
@@ -193,27 +189,30 @@ public class CaseController extends BaseController{
                 continue;
             }
             List<String> list = caseNumMap.get(record.getCaseId());
-            Boolean isEdit = getEditByList(list,authHashMap,openHashMap);
+            Boolean isEdit = getEditByList(list,listMap,authHashMap,openHashMap);
             record.setIsEdit(isEdit);
             if(isEdit){
                continue;
             }
 
             List<String> list2 = fusionMap.get(record.getCaseId());
-            Boolean isEdit2 = getEditByList(list2,authHashMap2,openHashMap2);
+            Boolean isEdit2 = getEditByList(list2,listMap2,authHashMap2,openHashMap2);
             record.setIsEdit(isEdit2);
         }
 
         return ResultData.ok(PageInfo.PageInfo(page));
     }
 
-    private Boolean getEditByList(List<String> list,HashMap<String,JySceneUserAuth> authHashMap,HashMap<String,JySceneUserAuth> openHashMap) {
+    private Boolean getEditByList(List<String> list, HashMap<String,List<String>> authListMap,HashMap<String,JySceneUserAuth> authHashMap,HashMap<String,JySceneUserAuth> openHashMap) {
         if(list != null && !list.isEmpty()){
             for (String num : list) {
-                JySceneUserAuth jySceneUserAuth = authHashMap.get(num);
-                if(jySceneUserAuth == null){
+                JySceneUserAuth jySceneUserAuth = null;
+                if(authListMap.get("open").contains(num)){
                     jySceneUserAuth = openHashMap.get(num);
                 }
+                if(authListMap.get("auth").contains(num)){
+                    jySceneUserAuth = authHashMap.get(num);
+                }
                 if(jySceneUserAuth != null){
                     if(jySceneUserAuth.getEditAuth() == 1){
                         return true;

+ 1 - 1
src/main/java/com/fdkankan/manage/controller/CaseFusionController.java

@@ -120,7 +120,7 @@ public class CaseFusionController extends BaseController{
                 record.setIsAuth(true);
                 record.setEditAuth(true);
                 record.setIsAuthOther(true);
-            }else if((sysUser.getRoleId() == 45L || sysUser.getRoleId() == 48L) && jyUser.getPlatformId().equals(record.getPlatformId())){
+            }else if((sysUser.getRoleId() == 45L || sysUser.getRoleId() == 48L) && record.getPlatformId() != null && jyUser.getPlatformId() != null && jyUser.getPlatformId().equals(record.getPlatformId())){
                 record.setIsAuth(true);
                 record.setEditAuth(true);
                 record.setIsAuthOther(true);

+ 4 - 4
src/main/java/com/fdkankan/manage/service/impl/CaseTabulationServiceImpl.java

@@ -135,11 +135,11 @@ public class CaseTabulationServiceImpl extends ServiceImpl<ICaseTabulationMapper
     @Override
     public void delByIds(List<Integer> ids) {
         if(!ids.isEmpty()){
-            List<CaseTabulation> caseTabulations = this.listByIds(ids);
+           // List<CaseTabulation> caseTabulations = this.listByIds(ids);
             this.removeByIds(ids);
-            for (CaseTabulation caseTabulation : caseTabulations) {
-                delFile(caseTabulation);
-            }
+//            for (CaseTabulation caseTabulation : caseTabulations) {
+//                delFile(caseTabulation);
+//            }
         }
     }
 

+ 3 - 0
src/main/java/com/fdkankan/manage/service/impl/JySceneAuthServiceImpl.java

@@ -56,6 +56,9 @@ public class JySceneAuthServiceImpl extends ServiceImpl<IJySceneAuthMapper, JySc
     @Override
     public List<String> getNumListByPlatform(Integer platformId, Integer authType,String sourceType) {
         List<JySceneAuth>  list = new ArrayList<>();
+        if(platformId == null){
+            return new ArrayList<>();
+        }
         if("scene".equals(sourceType)){
              list = this.getBaseMapper().getNumListByPlatform(platformId,authType);
         }

+ 2 - 2
src/main/java/com/fdkankan/manage/service/impl/JySceneUserAuthServiceImpl.java

@@ -303,7 +303,7 @@ public class JySceneUserAuthServiceImpl extends ServiceImpl<IJySceneUserAuthMapp
         JyUser sceneJyUser = jyUserService.getByUserId(sceneUserId);
         Boolean flag = roleService.isAdmin();
 
-        if(flag && loginJyUser.getPlatformId().equals(sceneJyUser.getPlatformId()) ){
+        if(flag && loginJyUser.getPlatformId() !=null && sceneJyUser.getPlatformId() !=null && loginJyUser.getPlatformId().equals(sceneJyUser.getPlatformId()) ){
             vo.setIsAuthor(1);
             vo.setEditAuth(1);
             vo.setLookAuth(1);
@@ -376,7 +376,7 @@ public class JySceneUserAuthServiceImpl extends ServiceImpl<IJySceneUserAuthMapp
         }
         //平台管理员
         if(loginSysUser.getRoleId() == 45L || loginSysUser.getRoleId() == 48L){
-            if(sceneJyUser.getPlatformId().equals(loginJyUser.getPlatformId())){
+            if(sceneJyUser.getPlatformId() != null && loginJyUser.getPlatformId() != null && sceneJyUser.getPlatformId().equals(loginJyUser.getPlatformId())){
                 sceneAuthVo.setViewAuth(true);
                 sceneAuthVo.setEditAuth(true);
                 return sceneAuthVo;

+ 29 - 4
src/main/java/com/fdkankan/manage/service/impl/ManageService.java

@@ -15,6 +15,7 @@ import com.fdkankan.manage.vo.response.ManageLoginResponse;
 import com.fdkankan.redis.util.RedisUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
+import org.apache.ibatis.logging.stdout.StdOutImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
@@ -140,11 +141,13 @@ public class ManageService {
     }
 
     public void updateLoginUserStatus(String userName,Integer status) {
-
-        String redisUserNameKey = String.format(RedisKeyUtil.loginToken, "*");
-        Set<String> keys = redisUtil.keys(redisUserNameKey);
-        log.info("登录用户数:{}",keys.size());
+        try {
+            String redisUserNameKey = String.format(RedisKeyUtil.loginToken, "*");
+            Set<String> keys = redisUtil.keys(redisUserNameKey);
             for (String key : keys) {
+                if(key.contains("manage:login:token:time:")){
+                    continue;
+                }
                 String userStr = redisUtil.get(key);
                 if(StringUtils.isNotBlank(userStr)){
                     ManageLoginResponse result = JSONObject.parseObject(userStr,ManageLoginResponse.class);
@@ -160,6 +163,10 @@ public class ManageService {
                     }
                 }
             }
+        }catch (Exception e){
+            log.info("修改redis登录数据出错-error:{}",e);
+        }
+
 
     }
 
@@ -200,4 +207,22 @@ public class ManageService {
         }
         return null;
     }
+
+    public static void main(String[] args) {
+        String s = "{\n" +
+                "  \"id\": 1052,\n" +
+                "  \"nickName\": \"于超\",\n" +
+                "  \"platformName\": \"广州公安\",\n" +
+                "  \"roleId\": 47,\n" +
+                "  \"roleName\": \"普通警员\",\n" +
+                "  \"status\": 1,\n" +
+                "  \"token\": \"eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOjEwNTIsImRldmljZSI6ImRlZmF1bHQtZGV2aWNlIiwiZWZmIjotMSwicm5TdHIiOiJURU5oUGVzeURDVFdxdmJpWWwyNDBCdGZhOVVKcjBJYyIsImlkIjoxMDUyLCJ1c2VySWQiOjEwNTMsImlzQWRtaW4iOjEsInBsYXRmb3JtSWQiOjEsInVzZXJOYW1lIjoieXVjaGFvIiwibmlja05hbWUiOiLkuo7otoUifQ.Wweptk1rWBgWFB7KrV2uTO-W820qOxJbSRa9oRGlXIE\",\n" +
+                "  \"userId\": 1053,\n" +
+                "  \"userName\": \"yuchao\"\n" +
+                "}";
+        ManageLoginResponse result = JSONObject.parseObject(s,ManageLoginResponse.class);
+
+        System.out.println(result);
+    }
+
 }

+ 9 - 29
src/main/java/com/fdkankan/manage/service/impl/UserServiceImpl.java

@@ -215,43 +215,23 @@ public class UserServiceImpl extends ServiceImpl<IUserMapper, User> implements I
 
         if(param.getPlatformId() != null){
             jyUser.setPlatformId(param.getPlatformId());
-        }
-
-        if(param.getIsJm() != null && param.getIsJm() == 1){
-            sysUser = sysUserService.getById(sysUser.getId());
-            if(sysUser.getRoleId() == 48L ){
-                sysUserService.updateRoleId(sysUser.getId(),47L);
-                JyPlatform jyPlatform = jyPlatformService.getByIdCard(jyUser.getIdCard());
-                if(jyPlatform != null && jyPlatform.getStatus() == 0){
-                    jyPlatform.setName(null);
-                    jyPlatform.setPhone(null);
-                    jyPlatform.setIdCard(null);
-                    jyPlatform.setUpdateTime(null);
-                    jyPlatformService.updateById(jyPlatform);
+        }else {
+            if(StringUtils.isNotBlank(jyUser.getIdCard() )){
+                JyPlatformUserWait platformUserWait = platformUserWaitService.getByIdCard(jyUser.getIdCard());
+                if(platformUserWait != null){
+                    jyUser.setPlatformId(param.getIsJm() == 0?platformUserWait.getPlatformId():1);
+                    platformUserWaitService.del(platformUserWait.getId());
                 }
-            }
-            jyUser.setPlatformId(1);
-        }
-
-        if(param.getIsJm() != null  ){
-            JyPlatformUserWait platformUserWait = platformUserWaitService.getByIdCard(jyUser.getIdCard());
-            if(platformUserWait != null){
-                jyUser.setPlatformId(param.getIsJm() == 0?platformUserWait.getPlatformId():1);
-                platformUserWaitService.del(platformUserWait.getId());
-            }
-        }
-        if(param.getIsJm()!=null && param.getIsJm() == 0){
-            if(StringUtils.isNotBlank(param.getIdCard()) ){
                 JyPlatform jyPlatform = jyPlatformService.getByIdCard(jyUser.getIdCard());
                 if(jyPlatform != null && jyPlatform.getStatus() == 0){
                     jyUser.setPlatformId(jyPlatform.getId());
                     sysUserService.updateRoleId(sysUser.getId(),48L);
                 }
             }
-            jyUser.setPlatformId(jyUser.getPlatformId()!=null && jyUser.getPlatformId() == 1 ? null :jyUser.getPlatformId());
-
         }
-
+        if(jyUser.getPlatformId() == null){
+            jyUser.setPlatformId(1);
+        }
         jyUserService.saveOrUpdate(jyUser);
 
     }

+ 6 - 6
src/main/resources/mapper/manage/CaseFusionMapper.xml

@@ -9,10 +9,10 @@
             where f.tb_status = 0
         <if test="param.isShare == 0">
             <if test="param.platformId != null">
-                and f.platform_id = #{param.platformId}
+                and u.platform_id = #{param.platformId}
             </if>
             <if test="param.sysUserId != null">
-                and f.sys_user_id = #{param.sysUserId}
+                and u.sys_user_id = #{param.sysUserId}
             </if>
         </if>
 
@@ -24,21 +24,21 @@
         </if>
         <if test="param.isShare == 1">
             <if test="param.sysUserId != null">
-                and f.sys_user_id != #{param.sysUserId}
+                and u.sys_user_id != #{param.sysUserId}
             </if>
             <if test="param.platformId != null">
-                and f.platform_id != #{param.platformId}
+                and u.platform_id != #{param.platformId}
             </if>
             and ( 1!=1
             <if test="param.otherPlatformIds != null and param.otherPlatformIds.size >0">
-                or f.platform_id in
+                or u.platform_id in
                 <foreach item="platformId" collection="param.otherPlatformIds" open="(" separator="," close=")">
                     #{platformId}
                 </foreach>
             </if>
 
             <if test="param.otherUserIds !=null and param.otherUserIds.size>0">
-                or f.sys_user_id in
+                or u.sys_user_id in
                 <foreach item="userId" collection="param.otherUserIds" open="(" separator="," close=")">
                     #{userId}
                 </foreach>

+ 7 - 6
src/main/resources/mapper/manage/CaseMapper.xml

@@ -3,26 +3,27 @@
 <mapper namespace="com.fdkankan.manage.mapper.ICaseMapper">
 
     <select id="pageList" resultType="com.fdkankan.manage.entity.Case">
-        select * from fd_fusion.t_case
-            where tb_status = 0
+        select c.* ,u.ry_nick_name as nickName from fd_fusion.t_case c
+            left join 4dkankan_v4.jy_user u on c.sys_user_id = u.sys_user_id
+        where c.tb_status = 0
         <if test="param.caseTitle != null and param.caseTitle!=''">
             and case_title like  concat ('%',#{param.caseTitle},'%')
         </if>
         <if test="param.isShare == 0">
             <if test="param.platformId != null">
-                and platform_id = #{param.platformId}
+                and u.platform_id = #{param.platformId}
             </if>
             <if test="param.sysUserId != null">
-                and sys_user_id = #{param.sysUserId}
+                and u.sys_user_id = #{param.sysUserId}
             </if>
         </if>
         <if test="param.isShare == 1">
 
             <if test="param.platformId != null">
-                and platform_id != #{param.platformId}
+                and u.platform_id != #{param.platformId}
             </if>
             <if test="param.sysUserId != null">
-                and sys_user_id != #{param.sysUserId}
+                and u.sys_user_id != #{param.sysUserId}
             </if>
 
             <if test="param.authIds !=null and param.authIds.size>0  ">