From 607e62cd6ec91d53bac549299d986c23e5143d28 Mon Sep 17 00:00:00 2001 From: jiazx0107@163.com <jiazx0107@163.com> Date: 星期三, 31 五月 2023 15:06:47 +0800 Subject: [PATCH] 出入库优化-称重相关方法 --- igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java | 149 ++++++++++++++++++++++++++++++------------------- 1 files changed, 92 insertions(+), 57 deletions(-) diff --git a/igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java b/igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java index 4df6212..3cc0bcb 100644 --- a/igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java +++ b/igds-inout/src/main/java/com/ld/igds/inout/service/impl/InoutServiceImpl.java @@ -11,6 +11,9 @@ import com.ld.igds.inout.InoutConstant; import com.ld.igds.inout.dto.InoutData; import com.ld.igds.inout.dto.InoutParam; +import com.ld.igds.inout.dto.InoutCheckData; +import com.ld.igds.inout.dto.InoutCheckParam; +import com.ld.igds.inout.mapper.InoutCheckMapper; import com.ld.igds.inout.mapper.InoutRecordMapper; import com.ld.igds.inout.service.InoutService; import com.ld.igds.io.constant.OrderRespEnum; @@ -38,6 +41,8 @@ @Resource private InoutRecordMapper inoutMapper; + @Resource + private InoutCheckMapper inoutCheckMapper; @Resource private RedisUtil redisUtil; @Resource @@ -118,59 +123,44 @@ @Override public String insertData(InoutData data) { + try { + data.setUpdateTime(new Date()); - if (StringUtils.isEmpty(data.getCompanyId())) { - data.setCompanyId(ContextUtil.getCompanyId()); - } + if (null == data.getDeptId()) { + data.setDeptId(ContextUtil.subDeptId(null)); + } - // 鑾峰彇褰撳墠浠撳簱鐨勫疄闄呭簱瀛� - if (StringUtils.isNotEmpty(data.getDepotId())) { - if (null == data.getFoodYear() || null == data.getFoodType()) { - Depot depot = commonService.getCacheDepot(data.getCompanyId(), data.getDepotId()); - if (null == data.getFoodYear()) { - data.setFoodYear(depot.getFoodYear()); - } - if (null == data.getFoodType()) { - data.setFoodType(depot.getFoodType()); + String id = this.createId(data.getRegisterTime(), data.getCompanyId()); + if (StringUtils.isEmpty(data.getId())) { + if (InoutConstant.TYPE_IN.equals(data.getType())) { + data.setId("R_" + id); + } else if (InoutConstant.TYPE_OUT.equals(data.getType())) { + data.setId("C_" + id); + } else if (Constant.LOSS_OVER_OVER.equals(data.getType())) { + data.setId("R_" + id); + } else if (Constant.LOSS_OVER_LOSS.equals(data.getType())) { + data.setId("C_" + id); + } else { + data.setId("M_" + id); } } - } - - if (null == data.getRegisterTime()) { - data.setRegisterTime(new Date()); - } - - String id = this.createId(data.getRegisterTime(), data.getCompanyId()); - - if (StringUtils.isEmpty(data.getId())) { - if (InoutConstant.TYPE_IN.equals(data.getType())) { - data.setId("R_" + id); - } else if (InoutConstant.TYPE_OUT.equals(data.getType())) { - data.setId("C_" + id); - } else if (Constant.LOSS_OVER_OVER.equals(data.getType())) { - data.setId("R_" + id); - } else if (Constant.LOSS_OVER_LOSS.equals(data.getType())) { - data.setId("C_" + id); - } else { - data.setId("M_" + id); + if (StringUtils.isEmpty(data.getCheckId())) { + data.setCheckId(id); } - } - if (StringUtils.isEmpty(data.getCheckId())) { - data.setCheckId(id); - } - if (null == data.getDeptId()) { - data.setDeptId(ContextUtil.subDeptId(null)); - } - if (null == data.getUserName()) { - data.setUserName(""); - } - inoutMapper.insertData(data); + if (null == data.getUserName()) { + data.setUserName(""); + } - // 濡傛灉涓嶆槸鎵嬪姩琛ュ綍鐨勬暟鎹紝娣诲姞鍒扮紦瀛樹腑 - if (!InoutConstant.RECORD_STATUS_ADD.equals(data.getRecordStatus())) { + inoutMapper.insertData(data); + this.addInoutCache(data); + + } catch (Exception e) { + log.error("------------鍑哄叆搴撴墽琛屼繚瀛樺嚭閿�---{}", e); + return "鍚庡彴寮傚父锛�" + e.getMessage(); } + return null; } @@ -234,9 +224,9 @@ List<InoutData> records = inoutMapper.pageRecordData(page, param); //鍒ゆ柇鍏ュ簱閲嶉噺鏄惁涓虹┖锛屼负绌哄垯璧嬪�肩粨绠楅噸閲� - if(records != null){ + if (records != null) { for (InoutData record : records) { - if(record.getRecordWeight() == null || record.getRecordWeight() == 0.0){ + if (record.getRecordWeight() == null || record.getRecordWeight() == 0.0) { record.setRecordWeight(record.getSettleWeight()); } } @@ -567,14 +557,14 @@ // 鑾峰彇涓婁竴杞︾殑娴佹按鏁版嵁 InoutData inoutData = this.getLastRecord(data.getCompanyId(), data.getDepotId()); - // 璁剧疆娴佹按鐨勫簱瀛� - if (InoutConstant.TYPE_IN.equals(inoutData.getType())) { - data.setCurStorage(inoutData.getCurStorage() - + inoutData.getSettleWeight()); - } else if (InoutConstant.TYPE_OUT.equals(inoutData.getType())) { - data.setCurStorage(inoutData.getCurStorage() - - inoutData.getSettleWeight()); - } +// // 璁剧疆娴佹按鐨勫簱瀛� +// if (InoutConstant.TYPE_IN.equals(inoutData.getType())) { +// data.setCurStorage(inoutData.getCurStorage() +// + inoutData.getSettleWeight()); +// } else if (InoutConstant.TYPE_OUT.equals(inoutData.getType())) { +// data.setCurStorage(inoutData.getCurStorage() +// - inoutData.getSettleWeight()); +// } // 娣诲姞琛ュ崟鏁版嵁 this.insertData(data); @@ -677,6 +667,11 @@ return result.getNumValue1(); } + @Override + public int checkExist(InoutParam param) { + return inoutMapper.checkExist(param); + } + /** * 鏈畬鎴愭祦绋嬪瓨鍏ョ紦瀛� * @@ -684,9 +679,7 @@ * @param data */ private void setInoutCache(String deptId, InoutData data) { - String key = this.buildInoutKey(deptId, - InoutConstant.KEY_INOUT_LIST, data.getType(), data.getId()); - + String key = this.buildInoutKey(deptId, InoutConstant.KEY_INOUT_LIST, data.getType(), data.getId()); redisUtil.set(key, data, InoutConstant.KEY_INOUT_LIST_TIME); } @@ -760,4 +753,46 @@ public String buildInoutKey(String deptId, String key, String type, String bizId) { return Constant.APP_NAME + ":" + deptId + ":" + key + ":" + type + ":" + bizId; } + + @Override + public Page<InoutCheckData> pageSampleData(InoutCheckParam param) { + + //璁剧疆璧峰鍜屾埅姝㈡椂闂� + if (null != param.getStart()) { + param.setStart(DateUtil.getCurZero(param.getStart())); + } + if (null != param.getEnd()) { + param.setEnd(DateUtil.getNextZero(param.getEnd())); + } + + // 璁剧疆杞︾墝鍜屾楠屽崟鎹殑妯$硦鏌ヨ + if (StringUtils.isNotEmpty(param.getPlateNum())) { + param.setPlateNum("%" + param.getPlateNum() + "%"); + } + if (StringUtils.isNotEmpty(param.getCheckId())) { + param.setCheckId("%" + param.getCheckId() + "%"); + } + + Page<InoutCheckData> page = new Page<>(param.getPage(), param.getLimit()); + page.setSearchCount(true); + + List<InoutCheckData> records = inoutCheckMapper.pageSampleData(page, param); + page.setRecords(records); + + return page; + } + + @Override + public String updateSampleData(InoutData data) { + if (StringUtils.isEmpty(data.getCompanyId())) { + data.setCompanyId(ContextUtil.getCompanyId()); + } + if (StringUtils.isEmpty(data.getDeptId())) { + data.setCompanyId(ContextUtil.subDeptId(null)); + } + + int num = inoutCheckMapper.updateSampleData(data); + return null; + } + } -- Gitblit v1.9.3