From dad4c3efeedd1971235d7907d9066ea06dc30e11 Mon Sep 17 00:00:00 2001 From: YYC <1833023622@qq.com> Date: 星期二, 11 七月 2023 18:02:21 +0800 Subject: [PATCH] 倒仓和性质变更优化 --- igds-inout/src/main/java/com/ld/igds/inout/manager/InoutManager.java | 224 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 155 insertions(+), 69 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 6296090..2871e07 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 @@ -3,7 +3,6 @@ import com.ld.igds.check.CheckStandardManager; import com.ld.igds.check.dto.CheckItemData; import com.ld.igds.check.dto.CheckUpdateResult; -import com.ld.igds.common.CoreCommonService; import com.ld.igds.constant.RespCodeEnum; import com.ld.igds.data.Page; import com.ld.igds.data.PageResponse; @@ -20,9 +19,7 @@ import com.ld.igds.models.InoutSysConf; import com.ld.igds.util.ContextUtil; import com.ld.igds.util.DateUtil; - 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; @@ -30,7 +27,6 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; - import java.util.Arrays; import java.util.Date; import java.util.List; @@ -49,13 +45,11 @@ @Resource private CoreFileService fileService; @Resource - private CoreCommonService commonService; - @Resource private InoutCommonService inoutCommonService; @Resource private CheckStandardManager checkStandardManager; @Resource - private InoutDeviceManager inoutDeviceManager; + private InoutEventControlManager inoutEventControl; /** * 鐩存帴浠庢暟鎹簱鏌ヨ锛屼笉鑰冭檻淇℃伅鐘舵�� @@ -296,46 +290,6 @@ return data; } - public PageResponse<InoutData> submitComplete(InoutData data) - throws Exception { - - if (StringUtils.isEmpty(data.getId()) - || StringUtils.isEmpty(data.getType()) - || StringUtils.isEmpty(data.getProgress())) { - - return new PageResponse<>(RespCodeEnum.CODE_1007.getCode(), - "娌℃湁鑾峰彇鍒拌溅杈嗕俊鎭��", data); - } - - data.setUpdateTime(new Date()); - if (null == data.getCompleteTime()) { - data.setCompleteTime(DateUtil.getNewByMinute(new Date(), 2)); - } - if (null == data.getCompleteUser()) { - data.setCompleteUser(ContextUtil.getLoginUserCName()); - } - - // 璁剧疆娴佺▼鑺傜偣鐩存帴瀹屾垚 - InoutParam param = new InoutParam(); - param.setCompanyId(data.getCompanyId()); - param.setId(data.getId()); - param.setType(data.getType()); - param.setDeptId(data.getDeptId()); - param.setIntelCard(data.getIntelCard()); - param.setUserId(data.getCompleteUser()); - param.setDepotId(data.getDepotId()); - param.setCompleteTime(new Date()); - param.setProgress(InoutConstant.PROGRESS_RECORD); - - String msg = inoutService.toComplete(param); - - if (null != msg) { - return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg); - } - - return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), null, data); - } - /** * 鍗″洖鏀堕�昏緫澶勭悊 * @@ -374,6 +328,52 @@ return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data); + } + + + public PageResponse<InoutData> submitComplete(InoutData data) + throws Exception { + + if (StringUtils.isEmpty(data.getId()) + || StringUtils.isEmpty(data.getType()) + || StringUtils.isEmpty(data.getProgress())) { + + return new PageResponse<>(RespCodeEnum.CODE_1007.getCode(), + "娌℃湁鑾峰彇鍒拌溅杈嗕俊鎭��", data); + } + + data.setUpdateTime(new Date()); + if (null == data.getCompleteTime()) { + data.setCompleteTime(DateUtil.getNewByMinute(new Date(), 2)); + } + if (null == data.getCompleteUser()) { + data.setCompleteUser(ContextUtil.getLoginUserCName()); + } + + // 璁剧疆娴佺▼鑺傜偣鐩存帴瀹屾垚 + InoutParam param = new InoutParam(); + param.setCompanyId(data.getCompanyId()); + param.setId(data.getId()); + param.setType(data.getType()); + param.setDeptId(data.getDeptId()); + param.setIntelCard(data.getIntelCard()); + param.setUserId(data.getCompleteUser()); + param.setDepotId(data.getDepotId()); + param.setCompleteTime(new Date()); + param.setProgress(InoutConstant.PROGRESS_RECORD); + + String msg = inoutService.toComplete(param); + + if (null != msg) { + return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg); + } + data.setCompleteTime(param.getCompleteTime()); + data.setProgress(InoutConstant.PROGRESS_RECORD); + inoutService.updateInoutCache(data); + // 娴佺▼瀹屾垚鏀朵簨浠� + inoutEventControl.onInoutComplete(data); + + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), null, data); } /** @@ -444,7 +444,6 @@ if (InoutConstant.TYPE_IN.equals(data.getType())) { this.updateCheckItems(data, true); } - return null; } @@ -557,8 +556,13 @@ return msg; } - public void initLpr(InoutConf conf) { - inoutDeviceManager.initLpr(conf); + /** + * 鍑哄叆搴撶櫥璁板垵濮嬪寲 + * + * @param conf 杞︾墝璇嗗埆閰嶇疆淇℃伅 + */ + public void initInoutRegister(InoutConf conf) { + inoutEventControl.initInoutRegister(conf); } /** @@ -568,8 +572,7 @@ * @return * @throws Exception */ - public PageResponse<InoutData> submitRegisterInout(InoutData data) - throws Exception { + public PageResponse<InoutData> submitRegisterInout(InoutData data) throws Exception { // 棣栧厛鍒ゆ柇娴佺▼涓槸鍚︽湁宸茬粡瀛樺湪鐨勮溅杈嗕俊鎭湭鎵ц瀹屾垚锛岀洿鎺ヤ粠鏁版嵁搴撲腑鏌ヨ InoutParam param = new InoutParam(); @@ -603,20 +606,20 @@ String msg = inoutService.insertData(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); + + //鐧昏瀹屾垚浜嬩欢 + inoutEventControl.onInoutRegister(data); return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data); } - public PageResponse<InoutData> submitWeightIn(InoutData data) - throws Exception { + public PageResponse<InoutData> submitWeightIn(InoutData data) throws Exception { // 鑾峰彇绯荤粺鍙傛暟閰嶇疆 InoutSysConf inoutSysConf = inoutCommonService.getCacheInoutSysConf( data.getCompanyId(), data.getDeptId()); @@ -643,14 +646,12 @@ } // 鎵ц闄勪欢淇℃伅 - fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(), - data.getId(), curProgress); + fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(), data.getId(), curProgress); - // 绉伴噸瀹屾垚锛岃皟鐢ㄥ嚭鍏ュ簱鎺у埗閫昏緫澶勭悊 - inoutDeviceManager.controlWeight(data, curProgress, nextProgress); + // 绉伴噸瀹屾垚浜嬩欢 + inoutEventControl.onInoutWeight(data, curProgress, nextProgress); - return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", - data); + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data); } public PageResponse<InoutData> submitWeightOut(InoutData data) @@ -681,11 +682,11 @@ fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(), data.getId(), curProgress); - // 绉伴噸鍚庢牴鎹綋鍓嶆祦绋嬬姸鎬佸拰涓嬩竴涓姸鎬侊紝閫氱煡绉伴噸鎺у埗鍣� - inoutDeviceManager.controlWeight(data, curProgress, nextProgress); - return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", - data); + // 绉伴噸瀹屾垚浜嬩欢 + inoutEventControl.onInoutWeight(data, curProgress, nextProgress); + + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data); } public PageResponse<InoutData> submitHandle(InoutData data) @@ -716,6 +717,9 @@ // 鎵ц闄勪欢淇℃伅 fileService.saveInoutFiles(data.getFiles(), data.getCompanyId(), data.getId(), curProgress); + + // 鍊间粨瀹屾垚瑙﹀彂浜嬩欢 + inoutEventControl.onInoutHandle(data, curProgress, nextProgress); return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛", data); } @@ -786,6 +790,9 @@ return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg); } + // 鎵︽牱瀹屾垚瑙﹀彂浜嬩欢 + inoutEventControl.onInSimple(data); + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛"); } @@ -835,6 +842,7 @@ data.setCheckTime(new Date()); } curData.setCheckStatus(data.getCheckStatus()); + curData.setFoodYear(data.getFoodYear()); // 鑾峰彇涓嬩竴涓祦绋嬬姸鎬� @@ -854,6 +862,8 @@ curData.setPrice(data.getPrice()); curData.setRemarks(data.getRemarks()); curData.setCheckItems(data.getCheckItems()); + curData.setCheckTime(data.getCheckTime()); + curData.setDepotId(data.getDepotId()); if (StringUtils.isEmpty(data.getCheckUser())) { curData.setCheckUser(ContextUtil.getLoginUserCName()); @@ -868,7 +878,52 @@ return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg); } + + // 璐ㄦ瀹屾垚瑙﹀彂浜嬩欢 + inoutEventControl.onInCheck(data, curProgress, nextProgress); + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "鎵ц鎴愬姛"); + } + + public PageResponse<InoutCheckData> submitCheckData(InoutCheckData data) throws Exception { + + + // 鑾峰彇涓氬姟鏁版嵁淇℃伅 + InoutParam param = new InoutParam(); + param.setCompanyId(data.getCompanyId()); + param.setId(data.getId()); + InoutData curData = inoutService.inoutProgressQuery(param); + + if (null == curData) { + return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), + "娌℃湁鑾峰彇鍒板叆搴撲笟鍔℃暟鎹俊鎭紝鏇存柊澶辫触", data); + } + + if (InoutConstant.PROGRESS_RECORD.equals(curData.getProgress())) { + return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), + "褰撳墠娴佺▼宸茬粡缁撴潫锛屼笉鏀寔淇敼"); + } + + // 鏇存柊鍖栭獙椤逛俊鎭� + CheckUpdateResult checkResult = checkStandardManager.updateCheckItems(data.getCheckId(), data.getCompanyId(), data.getCheckItems()); + if (StringUtils.isNotEmpty(checkResult.getMsg())) { + return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), + "鍚庡彴鎵ц寮傚父锛�" + checkResult.getMsg(), data); + } + + curData.setType(curData.getType()); + curData.setFoodLevel(data.getFoodLevel()); + curData.setFoodVariety(data.getFoodVariety()); + curData.setPrice(data.getPrice()); + curData.setDepotId(data.getDepotId()); + curData.setCheckItems(data.getCheckItems()); + + String msg = inoutService.updateCheckData(curData); + if (null != msg) { + return new PageResponse<>(RespCodeEnum.CODE_1111.getCode(), msg); + } + + return new PageResponse<>(RespCodeEnum.CODE_0000.getCode(), "淇濆瓨鎴愬姛"); } /** @@ -909,7 +964,7 @@ try { List<CheckItemData> result = checkStandardManager.listCheckItem( - param.getCheckId(), param.getCompanyId(), + param.getCompanyId(), param.getCheckId(), param.getFoodVariety()); return new PageResponse<>(RespCodeEnum.CODE_0000, result); @@ -942,4 +997,35 @@ } } + /** + * @param param + * @return + */ + public PageResponse<InoutCheckData> inoutDataByCheckId(InoutCheckParam param) { + if (StringUtils.isEmpty(param.getCheckId())) { + return new PageResponse<>(RespCodeEnum.CODE_1007.getCode(), + "鏌ヨ鍙傛暟涓嶅畬鏁达紝鏌ヨ澶辫触锛�"); + } + + InoutCheckData result; + try { + param.setProgress(InoutConstant.PROGRESS_CHECK); + result = inoutService.inoutDataByCheckId(param); + if (null == result) { + return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(), + "绯荤粺鏈煡璇㈠埌鎵ц涓殑杞﹁締淇℃伅", null); + } + + return new PageResponse<>(RespCodeEnum.CODE_0000, result); + + } catch (Exception e) { + return new PageResponse<>(RespCodeEnum.CODE_2000.getCode(), + e.getMessage()); + } + } + + public void initInoutWeight(List<InoutConf> listInoutConf, String sort) { + inoutEventControl.initInoutWeight(listInoutConf, sort); + } + } \ No newline at end of file -- Gitblit v1.9.3