From e67f52078602f3efb6da02ef8fc8cf0cf7fa7e7a Mon Sep 17 00:00:00 2001
From: czt <czt18638530771@163.com>
Date: 星期二, 03 二月 2026 10:46:45 +0800
Subject: [PATCH] 客户问题优化1

---
 fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutConfService.java |   53 +++++++++++++++++++++++++++++++++++------------------
 1 files changed, 35 insertions(+), 18 deletions(-)

diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutConfService.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutConfService.java
index 28215d7..c76b494 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutConfService.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/service/InoutConfService.java
@@ -4,6 +4,7 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.fzzy.igds.constant.Constant;
 import com.fzzy.igds.constant.RedisConst;
+import com.fzzy.igds.domain.Dept;
 import com.fzzy.igds.mapper.InoutConfMapper;
 import com.fzzy.igds.mapper.InoutSysConfMapper;
 import com.fzzy.igds.domain.InoutConf;
@@ -31,6 +32,8 @@
 public class InoutConfService {
     @Resource
     private ISysDeptService iSysDeptService;
+    @Resource
+    private CoreDeptService deptService;
     @Resource
     private InoutConfMapper inoutConfMapper;
     @Resource
@@ -106,7 +109,7 @@
         inoutSysConf.setProgressOut("REGISTER-WEIGHT_EMPTY-HANDLE-WEIGHT_FULL-RECORD");
         this.saveSysConfData(inoutSysConf);
 
-        this.flushInoutSysConfCache(inoutSysConf);
+        this.flushInoutSysConfCache();
     }
 
     /**
@@ -138,17 +141,22 @@
             inoutSysConfMapper.update(data, new UpdateWrapper<InoutSysConf>().eq("dept_id", data.getDeptId()));
         }
 
-        this.flushInoutSysConfCache(data);
+        this.flushInoutSysConfCache();
     }
 
     /**
      * 璁剧疆缂撳瓨
      *
-     * @param data
      */
-    public void flushInoutSysConfCache(InoutSysConf data) {
-        String key = RedisConst.buildKey(data.getDeptId(), Constant.CACHE_INOUT_SYS_CONF);
-        redisCache.setCacheObject(key, data);
+    public void flushInoutSysConfCache() {
+        List<InoutSysConf> list = listInoutSysConf(null,null);
+        if(null == list || list.isEmpty()){
+            return;
+        }
+        for (InoutSysConf conf : list) {
+            String key = RedisConst.buildKey(conf.getDeptId(), Constant.CACHE_INOUT_SYS_CONF);
+            redisCache.setCacheObject(key, conf);
+        }
     }
 
     /**
@@ -163,7 +171,7 @@
         InoutSysConf conf = (InoutSysConf) redisCache.getCacheObject(key);
         if (null == conf) {
             conf = getInoutSysConf(deptId);
-            flushInoutSysConfCache(conf);
+            flushInoutSysConfCache();
         }
         return conf;
     }
@@ -176,16 +184,16 @@
      * @return
      */
     public List<InoutConf> getInoutConfList(String companyId, String deptId) {
+        QueryWrapper<InoutConf> queryWrapper = new QueryWrapper<>();
+
         if (StringUtils.isEmpty(companyId)) {
             companyId = ContextUtil.getCompanyId();
         }
-        if (StringUtils.isEmpty(deptId)) {
-            deptId = ContextUtil.subDeptId(null);
-        }
-        QueryWrapper<InoutConf> queryWrapper = new QueryWrapper<>();
-
-        queryWrapper.eq("dept_id", deptId);
         queryWrapper.eq("company_id", companyId);
+
+        if (StringUtils.isNotEmpty(deptId)) {
+            queryWrapper.eq("dept_id", deptId);
+        }
 
         return inoutConfMapper.selectList(queryWrapper);
     }
@@ -239,12 +247,21 @@
      * 璁剧疆缂撳瓨
      *
      * @param companyId
-     * @param deptId
      */
-    public void flushInoutConfCache(String companyId, String deptId) {
-        List<InoutConf> list = this.getInoutConfList(companyId, deptId);
-        String key = RedisConst.buildKey(companyId, Constant.CACHE_INOUT_CONF_LIST, deptId);
-        redisCache.setCacheObject(key, list);
+    public void flushInoutConfCache(String companyId) {
+        List<Dept> depts = deptService.listDept(null, companyId, null);
+        if(null == depts || depts.isEmpty()){
+            return;
+        }
+        List<InoutConf> inoutConfList;
+        for (Dept dept : depts) {
+            inoutConfList = this.getInoutConfList(companyId, dept.getId());
+            if(null == inoutConfList || inoutConfList.isEmpty()){
+                continue;
+            }
+            String key = RedisConst.buildKey(companyId, Constant.CACHE_INOUT_CONF_LIST, dept.getId());
+            redisCache.setCacheObject(key, inoutConfList);
+        }
     }
 
     /**

--
Gitblit v1.9.3