From 585e878b169bdeb2bc8cc452b9d2e640d00caa6d Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期二, 04 七月 2023 09:00:35 +0800
Subject: [PATCH] 质检报告

---
 igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java |  308 ++++++++++----------------------------------------
 1 files changed, 65 insertions(+), 243 deletions(-)

diff --git a/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java b/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java
index 31d0276..9373ae5 100644
--- a/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java
+++ b/igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java
@@ -15,7 +15,6 @@
 import com.ld.igds.inout.dto.InoutParam;
 import com.ld.igds.inout.service.InoutService;
 import com.ld.igds.m.service.InoutCommonService;
-import com.ld.igds.models.Depot;
 import com.ld.igds.models.InoutConf;
 import com.ld.igds.models.InoutPrice;
 import com.ld.igds.models.InoutSysConf;
@@ -25,6 +24,7 @@
 import lombok.extern.slf4j.Slf4j;
 
 import org.apache.commons.lang3.StringUtils;
+import org.apache.commons.lang3.time.DateFormatUtils;
 import org.apache.commons.lang3.time.DateUtils;
 import org.springframework.stereotype.Component;
 import org.springframework.transaction.annotation.Transactional;
@@ -168,15 +168,6 @@
         }
     }
 
-    public InoutData inoutProgressQuery(InoutData data) throws Exception {
-        InoutParam param = new InoutParam();
-        param.setCompanyId(data.getCompanyId());
-        param.setPlateNum(data.getPlateNum());
-        param.setIntelCard(data.getIntelCard());
-        param.setType(data.getType());
-
-        return inoutService.inoutProgressQuery(param);
-    }
 
     /**
      * 鍖栭獙缁撴灉涓嶉�氳繃鏃舵牎楠岄厤缃俊鎭�
@@ -208,27 +199,26 @@
      * @param data
      * @return
      */
-    private CheckUpdateResult updateCheckItems(InoutData data) {
-        CheckUpdateResult result = new CheckUpdateResult();
-        if (null == data.getCheckItems())
-            return result;
+    private InoutData updateCheckItems(InoutData data, boolean toSave) throws Exception {
 
-        try {
-            // 鏇存柊妫�楠岄」鏁版嵁
-            result = checkStandardManager.updateCheckItems(data.getCheckId(),
-                    data.getCompanyId(), data.getCheckItems());
+        if (null == data.getCheckItems()) return data;
 
-            // 灏嗗寲楠屾暟鎹瓨鍏ョ紦瀛樹腑
-            inoutService.setCheckCache(data);
+        //璁剧疆娌℃湁璐ㄦID锛屽彇娑堟墽琛屾寔涔呭寲
+        if (!toSave) data.setCheckId(null);
 
-            return result;
+        // 鏇存柊妫�楠岄」鏁版嵁
+        CheckUpdateResult checkUpdateResult = checkStandardManager.updateCheckItems(data.getCheckId(), data.getCompanyId(), data.getCheckItems());
 
-        } catch (Exception e) {
-            log.error("鍚庡彴寮傚父锛歿}", e);
-            result.setMsg("鎵ц寮傚父锛�" + e.getMessage());
+        if (data.getDeCheck() == 0) {
+            data.setDeCheck(checkUpdateResult.getDeSum());
         }
-        return result;
+        if (data.getAddCheck() == 0) {
+            data.setAddCheck(checkUpdateResult.getAddSum());
+        }
+
+        return data;
     }
+
 
     /**
      * 浠庣紦瀛樹腑鑾峰彇涓嬩竴娴佺▼
@@ -306,75 +296,6 @@
         return data;
     }
 
-    /**
-     * 褰撳墠鏂规硶闇�瑕佸垹闄�
-     * <p>
-     * 鏍规嵁闇�瑕佷繚瀛樼殑鏁版嵁锛岃皟鏁翠笅涓�涓祦绋嬬姸鎬� 涓嶅悓鐨勪粨搴撶粍缁囨祦绋嬪彲鑳戒笉涓�鏍凤紝闇�瑕佹牴鎹疄闄呰皟鏁�
-     *
-     * @param data
-     * @return
-     */
-    private InoutData updateBasicInfo(InoutData data, InoutSysConf sysConf) {
-        if (InoutConstant.PROGRESS_REGISTER.equals(data.getProgress())) {
-            data.setRegisterTime(new Date());
-            data.setRegisterUser(ContextUtil.getLoginUserCName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-
-            return data;
-        }
-
-        if (InoutConstant.PROGRESS_CHECK.equals(data.getProgress())) {
-            data.setCheckUser(ContextUtil.getLoginUserCName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-            return data;
-        }
-
-        if (InoutConstant.PROGRESS_WEIGHT_EMPTY.equals(data.getProgress())) {
-            data.setEmptyWeightTime(new Date());
-            data.setEmptyWeightUser(ContextUtil.getLoginUserCName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-
-            return data;
-        }
-
-        if (InoutConstant.PROGRESS_HANDLE.equals(data.getProgress())) {
-            // 鏌ヨ缂撳瓨涓粨搴撲俊鎭紝鏍规嵁浠撳簱id璁剧疆鍊间粨浜轰负浠撳簱淇濈鍛�
-            Depot depot = commonService.getCacheDepot(data.getCompanyId(),
-                    data.getDepotId());
-            data.setHandleUser(depot == null ? "" : depot.getStoreKeeperName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-
-            return data;
-        }
-
-        if (InoutConstant.PROGRESS_WEIGHT_FULL.equals(data.getProgress())) {
-            data.setFullWeightTime(new Date());
-            data.setFullWeightUser(ContextUtil.getLoginUserCName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-            if (InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
-                data.setCompleteTime(DateUtils.addMinutes(new Date(), 2));
-                data.setCompleteUser(ContextUtil.getLoginUserCName());
-            }
-            return data;
-        }
-
-        if (InoutConstant.PROGRESS_CARD_BACK.equals(data.getProgress())) {
-            data.setCompleteTime(new Date());
-            data.setCompleteUser(ContextUtil.getLoginUserCName());
-            data.setProgress(getNextProgress(data.getProgress(),
-                    data.getType(), sysConf));
-
-            return data;
-        }
-
-        return data;
-    }
-
     public PageResponse<InoutData> submitComplete(InoutData data)
             throws Exception {
 
@@ -403,7 +324,7 @@
         param.setIntelCard(data.getIntelCard());
         param.setUserId(data.getCompleteUser());
         param.setDepotId(data.getDepotId());
-        param.setCompleteTime(data.getCompleteTime());
+        param.setCompleteTime(new Date());
         param.setProgress(InoutConstant.PROGRESS_RECORD);
 
         String msg = inoutService.toComplete(param);
@@ -465,7 +386,7 @@
     public String addInoutData(InoutData data) throws Exception {
 
         if (data.getSettleWeight() <= 0.0) {
-            return "琛ュ崟鏁版嵁瑕佹眰缁撶畻閲嶉噺蹇呴』澶т簬0";
+            return "绯荤粺锛氳ˉ鍗曟暟鎹姹傜粨绠楅噸閲忓繀椤诲ぇ浜�0";
         }
 
         // 琛ュ崟鏁版嵁鐩存帴鍒扮粨鏋滅姸鎬�
@@ -497,42 +418,34 @@
             data.setCheckUser(loginUser);
         }
 
-        // 淇濆瓨妫�娴嬮」鐩�
-        if (InoutConstant.TYPE_IN.equals(data.getType())) {
 
+        if (InoutConstant.TYPE_IN.equals(data.getType())) {
             if (null == data.getFullWeightTime()) {
                 data.setFullWeightTime(DateUtil.getNewByMinute(new Date(), -50));
             }
             if (null == data.getEmptyWeightTime()) {
-                data.setEmptyWeightTime(DateUtil
-                        .getNewByMinute(new Date(), -10));
+                data.setEmptyWeightTime(DateUtil.getNewByMinute(new Date(), -10));
             }
 
-            // 鍏堟墽琛屽寲楠屼俊鎭繚瀛�
-            CheckUpdateResult checkResult = checkStandardManager
-                    .updateCheckItems(data.getCheckId(), data.getCompanyId(),
-                            data.getCheckItems());
-            if (null != checkResult) {
-                // if (null == data.getWet())data.setWet(checkResult.getWet());
-                // if (null ==
-                // data.getImpurity())data.setImpurity(checkResult.getImpurity());
-            }
+            data = this.updateCheckItems(data, false);
         } else {
             if (null == data.getEmptyWeightTime()) {
-                data.setEmptyWeightTime(DateUtil
-                        .getNewByMinute(new Date(), -50));
+                data.setEmptyWeightTime(DateUtil.getNewByMinute(new Date(), -50));
             }
             if (null == data.getFullWeightTime()) {
                 data.setFullWeightTime(DateUtil.getNewByMinute(new Date(), -10));
             }
         }
 
-        // 娣诲姞琛ュ崟鏁版嵁
-        String msg = inoutService.insertData(data);
 
-        // 鍒濆鍖栭獙璇佸嚭鍏ュ簱搴撳瓨
-        commonService.initInoutDepotStore(data);
-        return msg;
+        //鍏堜繚瀛樹富琛紝鍚庢墽琛屽瓙琛�
+        inoutService.insertData(data);
+
+        if (InoutConstant.TYPE_IN.equals(data.getType())) {
+            this.updateCheckItems(data, true);
+        }
+
+        return null;
     }
 
     /**
@@ -548,96 +461,20 @@
         if (InoutConstant.RECORD_STATUS_DEL.equals(data.getRecordStatus())) {
             return "绯荤粺锛氬凡缁忓垹闄ょ殑鏁版嵁涓嶆敮鎸佷慨鏀癸紒";
         }
-        if (InoutConstant.RECORD_STATUS_ERROR.equals(data.getRecordStatus())) {
-            return "绯荤粺锛氬紓甯哥粓姝㈢殑鏁版嵁涓嶆敮鎸佷慨鏀癸紒";
-        }
 
-        // 濡傛灉娴佺▼鏈粨鏉燂紝鍙洿鏂版暟鎹�
-        if (!InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
-            return inoutService.updateData(data);
-        }
 
-        // 濡傛灉鏄凡缁忓畬鎴愮殑鏁版嵁锛屽厛鑾峰彇鍒颁慨鏀圭洿鎺ョ殑鏁版嵁鏍规嵁鏁版嵁杩涜瀵规瘮
-        InoutParam param = new InoutParam();
-        param.setId(data.getId());
-        param.setCompanyId(data.getCompanyId());
-        param.setType(data.getType());
-        InoutData record = inoutService.inoutQueryById(param);
-
-        if (null == record) {
-            return "褰撳墠淇敼鏁版嵁宸茬粡涓嶅瓨鍦紒";
-        }
-
-        // 閬垮厤鏁版嵁搴撲腑鐨勬暟鎹凡缁忚鍏朵粬浜轰慨鏀�
-        if (InoutConstant.RECORD_STATUS_DEL.equals(record.getRecordStatus())) {
-            return "绯荤粺锛氬凡缁忓垹闄ょ殑鏁版嵁涓嶆敮鎸佷慨鏀癸紒";
-        }
-        if (InoutConstant.RECORD_STATUS_ERROR.equals(record.getRecordStatus())) {
-            return "绯荤粺锛氬紓甯哥粓姝㈢殑鏁版嵁涓嶆敮鎸佷慨鏀癸紒";
+        if (InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
+            return "绯荤粺锛氭祦绋嬪凡缁忕粨鏉熺殑鏁版嵁涓嶆敮鎸佷慨鏀癸紒";
         }
 
         // 淇濆瓨妫�娴嬮」鐩�
         if (InoutConstant.TYPE_IN.equals(data.getType())) {
-            // 鍏堟墽琛屽寲楠屼俊鎭繚瀛�
-            CheckUpdateResult checkResult = checkStandardManager
-                    .updateCheckItems(data.getCheckId(), data.getCompanyId(),
-                            data.getCheckItems());
-            if (null != checkResult) {
-                // if (null == data.getWet())
-                // data.setWet(checkResult.getWet());
-                // if (null == data.getImpurity())
-                // data.setImpurity(checkResult.getImpurity());
-            }
+            data = updateCheckItems(data, true);
         }
 
-        // 鏇存柊鏁版嵁
-        inoutService.updateData(data);
-        return null;
+        return inoutService.updateData(data);
     }
 
-    /**
-     * 鍒犻櫎鎿嶄綔 鍒犻櫎鏁版嵁涓鸿蒋鍒犻櫎锛屽垹闄ゆ暟鎹悗闇�瑕佹牴鎹垹闄ゆ儏鍐佃仈鍔ㄥ簱瀛樼瓑淇℃伅
-     *
-     * @param data
-     * @param selected 鏄惁宸茬粡鏌ヨ杩囨暟鎹�
-     * @return
-     * @throws Exception
-     */
-    @Transactional
-    public String delInoutData(InoutData data, boolean selected)
-            throws Exception {
-
-        // 閬垮厤椤甸潰缂撳瓨棣栧厛鑾峰彇鏁版嵁搴撲腑鏈�鏂扮殑褰撳墠鏁版嵁淇℃伅
-        InoutParam param = new InoutParam();
-        param.setCompanyId(data.getCompanyId());
-        param.setId(data.getId());
-        param.setMsg(" [" + ContextUtil.getLoginUserCName() + "]鎵ц鍒犻櫎锛屽師鍥狅細"
-                + data.getRemarks());
-
-        if (!selected) {
-            data = inoutService.inoutQueryById(param);
-
-            if (InoutConstant.RECORD_STATUS_DEL.equals(data.getRecordStatus())) {
-                return "宸茬粡鍒犻櫎鐨勬暟鎹紝涓嶆敮鎸侀噸澶嶅垹闄わ紒";
-            }
-            if (InoutConstant.RECORD_STATUS_ERROR
-                    .equals(data.getRecordStatus())) {
-                return "褰撳墠鏁版嵁宸茬粡琚爣璁颁负寮傚父锛屼笉鏀寔鍒犻櫎锛�";
-            }
-        }
-
-        // 鎵ц鍒犻櫎
-        param.setProgress(InoutConstant.PROGRESS_RECORD);
-        param.setRecordStatus(InoutConstant.RECORD_STATUS_DEL);
-        param.setType(data.getType());
-        inoutService.deleteData(param);
-
-        // 濡傛灉娴佺▼鏈粨鏉燂紝鐩存帴鍒犻櫎锛屼笉鐗垫壇鍒拌仈鍔ㄨ皟鏁�
-        if (!InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
-            return null;
-        }
-        return null;
-    }
 
     /**
      * 寮傚父缁堟鎿嶄綔 璁剧疆寮傚父 涓轰簡閬垮厤椤甸潰鏁版嵁缂撳瓨锛岄渶瑕侀噸鏂拌幏鍙栨渶鏂版暟鎹垽鏂�
@@ -646,26 +483,25 @@
      * @return
      * @throws Exception
      */
-    @Transactional
-    public String errorInoutData(InoutData data) {
-
+    public String errorInoutData(InoutData data) throws Exception {
         InoutParam param = new InoutParam();
         param.setCompanyId(data.getCompanyId());
         param.setId(data.getId());
-        param.setMsg(" [" + ContextUtil.getLoginUserCName() + "]鎵ц寮傚父缁堟锛屽師鍥狅細"
-                + data.getRemarks());
+
+        param.setMsg(" 浜�" + DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm") + " 琚� " + ContextUtil.getLoginUserCName() + " 鎵ц缁堟锛屽師鍥狅細" + data.getRemarks());
+
         data = inoutService.inoutQueryById(param);
 
-        if (InoutConstant.RECORD_STATUS_DEL.equals(data.getRecordStatus())) {
-            return "宸茬粡鍒犻櫎鐨勬暟鎹紝涓嶆敮鎸佸紓甯稿鐞嗭紒";
-        }
-        if (InoutConstant.RECORD_STATUS_ERROR.equals(data.getRecordStatus())) {
-            return "涓嶆敮鎸侀噸澶嶅紓甯稿鐞嗭紒";
-        }
         if (InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
             return "娴佺▼缁撴潫鐨勬暟鎹笉鏀寔寮傚父澶勭悊锛�";
         }
+        if (InoutConstant.RECORD_STATUS_DEL.equals(data.getRecordStatus())) {
+            return "褰撳墠淇℃伅宸插仛寮傚父澶勭悊锛屼笉鏀寔閲嶅鎵ц锛�";
+        }
 
+
+        param.setDeptId(data.getDeptId());
+        param.setType(data.getType());
         return inoutService.inoutStop(param);
     }
 
@@ -676,27 +512,25 @@
      * @return
      */
     public String completeInoutData(InoutData data) throws Exception {
-        if (InoutConstant.RECORD_STATUS_DEL.equals(data.getRecordStatus())) {
-            return "宸茬粡鍒犻櫎鐨勬暟鎹紝涓嶆敮鎸佸畬鎴愶紒";
-        }
-        if (InoutConstant.RECORD_STATUS_ERROR.equals(data.getRecordStatus())) {
-            return "寮傚父缁堟鐨勬暟鎹紝涓嶆敮鎸佸畬鎴愶紒";
-        }
-        if (InoutConstant.PROGRESS_RECORD.equals(data.getProgress())) {
-            return "娴佺▼宸插畬鎴愮殑鏁版嵁锛屼笉鏀寔瀹屾垚锛�";
-        }
-
         // 浠庢柊鏌ヨ鏁版嵁
         InoutParam param = new InoutParam();
         param.setId(data.getId());
         param.setCompanyId(data.getCompanyId());
         param.setType(data.getType());
-        InoutData cuData = inoutService.inoutProgressQuery(param);
+        InoutData cuData = inoutService.inoutQueryById(param);
         if (null == cuData) {
             return "褰撳墠杞﹁締娴佺▼鐘舵�佸凡缁忓彉鍖栵紝璇峰埛鏂伴〉闈㈤噸鏂版搷浣滐紒";
         }
+
         if (!cuData.getProgress().equals(data.getProgress())) {
             return "褰撳墠杞﹁締娴佺▼鐘舵�佸凡缁忓彉鍖栵紝璇峰埛鏂伴〉闈㈤噸鏂版搷浣滐紒";
+        }
+
+        if (InoutConstant.RECORD_STATUS_DEL.equals(cuData.getRecordStatus())) {
+            return "褰撳墠淇℃伅宸茬粡琚紓甯哥粓姝紝涓嶆敮鎸佸綋鍓嶅鐞嗭紒";
+        }
+        if (InoutConstant.PROGRESS_RECORD.equals(cuData.getProgress())) {
+            return "娴佺▼宸插畬鎴愮殑鏁版嵁锛屼笉鏀寔瀹屾垚锛�";
         }
 
         if (null == data.getCompleteTime()) {
@@ -718,10 +552,7 @@
 
         String msg = inoutService.quickComplete(data);
 
-        if (null == msg) {
-            data.setProgress(InoutConstant.PROGRESS_RECORD);
-            commonService.initInoutDepotStore(data);
-        }
+
         return msg;
     }
 
@@ -800,13 +631,7 @@
         data = updateBasicInfo(data, curProgress, nextProgress);
 
         // 鍏ュ簱绉伴噸鍙兘璋冩暣璐ㄦ鍗�
-        CheckUpdateResult checkUpdateResult = updateCheckItems(data);
-        if (data.getDeCheck() == 0) {
-            data.setDeCheck(checkUpdateResult.getDeSum());
-        }
-        if (data.getAddCheck() == 0) {
-            data.setAddCheck(checkUpdateResult.getAddSum());
-        }
+        data = updateCheckItems(data, true);
 
         // 鎵ц鏁版嵁鏇存柊
         String msg = inoutService.updateData(data);
@@ -870,8 +695,7 @@
         }
 
         // 鑾峰彇绯荤粺鍙傛暟閰嶇疆
-        InoutSysConf inoutSysConf = inoutCommonService.getCacheInoutSysConf(
-                data.getCompanyId(), data.getDeptId());
+        InoutSysConf inoutSysConf = inoutCommonService.getCacheInoutSysConf(data.getCompanyId(), data.getDeptId());
         if (null == inoutSysConf) {
             return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(),
                     "鎻愮ず锛氬綋鍓嶇郴缁熶腑娴佺▼閰嶇疆寮傚父锛岃鑱旂郴绠$悊鍛�", data);
@@ -879,24 +703,20 @@
 
         // 鑾峰彇涓嬩竴涓祦绋嬬姸鎬�
         String curProgress = data.getProgress();
-        String nextProgress = getNextProgress(curProgress, data.getType(),
-                inoutSysConf);
+        String nextProgress = getNextProgress(curProgress, data.getType(), inoutSysConf);
         data = updateBasicInfo(data, curProgress, nextProgress);
 
         // 鎵ц鏁版嵁鏇存柊
         String msg = inoutService.updateDataByHandle(data);
 
         if (null != msg) {
-            return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg,
-                    data);
+            return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg, data);
         }
 
         // 鎵ц闄勪欢淇℃伅
-        fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(),
-                data.getId(), curProgress);
+        fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(), data.getId(), curProgress);
 
-        return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛",
-                data);
+        return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data);
     }
 
     /**
@@ -993,7 +813,6 @@
                     "褰撳墠娴佺▼宸茬粡缁撴潫锛屼笉鏀寔淇敼");
         }
 
-
         // 鏇存柊鍖栭獙椤逛俊鎭�
         CheckUpdateResult checkResult = checkStandardManager.updateCheckItems(data.getCheckId(), data.getCompanyId(), data.getCheckItems());
         if (StringUtils.isNotEmpty(checkResult.getMsg())) {
@@ -1029,6 +848,11 @@
 
         curData.setProgress(curData.getProgress());
         curData.setType(curData.getType());
+        curData.setFoodLevel(data.getFoodLevel());
+        curData.setFoodVariety(data.getFoodVariety());
+        curData.setPrice(data.getPrice());
+        curData.setRemarks(data.getRemarks());
+        curData.setCheckItems(data.getCheckItems());
 
         if (StringUtils.isEmpty(data.getCheckUser())) {
             curData.setCheckUser(ContextUtil.getLoginUserCName());
@@ -1084,7 +908,7 @@
 
         try {
             List<CheckItemData> result = checkStandardManager.listCheckItem(
-                    param.getCheckId(), param.getCompanyId(),
+                     param.getCompanyId(),param.getCheckId(),
                     param.getFoodVariety());
 
             return new PageResponse<>(RespCodeEnum.CODE_0000, result);
@@ -1093,8 +917,6 @@
                     + e.getMessage(), null);
         }
     }
-
-
 
 
     /**

--
Gitblit v1.9.3