From 2f640b1038fa331954f78ed1f4317212cf5bb34d Mon Sep 17 00:00:00 2001 From: chenlu <1320612696@qq.com> Date: 星期五, 07 六月 2024 16:56:06 +0800 Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/ERP_override --- north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java | 786 +++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 528 insertions(+), 258 deletions(-) diff --git a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java index 3a4c3ef..ac2f718 100644 --- a/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java +++ b/north-glass-erp/src/main/java/com/example/erp/service/mm/FinishedGoodsInventoryService.java @@ -3,16 +3,21 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.dynamic.datasource.annotation.DS; +import com.example.erp.dto.mm.FinishedOperateLogDTO; import com.example.erp.entity.mm.FinishedGoodsInventory; import com.example.erp.entity.mm.FinishedOperateLog; import com.example.erp.entity.pp.FlowCard; import com.example.erp.entity.sd.Order; import com.example.erp.entity.sd.OrderDetail; +import com.example.erp.entity.userInfo.SysError; import com.example.erp.mapper.mm.BasicWarehouseTypeMapper; import com.example.erp.mapper.mm.FinishedGoodsInventoryMapper; import com.example.erp.mapper.mm.FinishedOperateLogMapper; +import com.example.erp.service.userInfo.SysErrorService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.sql.SQLException; import java.text.SimpleDateFormat; @@ -21,6 +26,7 @@ @Service @DS("mm") +@Transactional(rollbackFor = Exception.class) public class FinishedGoodsInventoryService { @Autowired FinishedGoodsInventoryMapper finishedGoodsInventoryMapper; @@ -28,6 +34,8 @@ FinishedOperateLogMapper finishedOperateLogMapper; @Autowired BasicWarehouseTypeMapper basicWarehouseTypeMapper; + @Autowired + SysErrorService sysErrorService; public Map<String, Object> defaultDateFinishedGoodsInventory(Integer pageNum, Integer pageSize, FinishedGoodsInventory finishedGoodsInventory) { Integer offset = (pageNum - 1) * pageSize; @@ -37,36 +45,37 @@ return map; } - public Map<String, Object> getseletwarehousing(Integer pageNum, Integer pageSize, FlowCard flowCard) { + public Map<String, Object> getSelectWarehousing(Integer pageNum, Integer pageSize, FlowCard flowCard) { Integer offset = (pageNum - 1) * pageSize; Map<String, Object> map = new HashMap<>(); - map.put("data", finishedGoodsInventoryMapper.getseletwarehousing(offset, pageSize, flowCard)); - map.put("total", finishedGoodsInventoryMapper.getseletwarehousingPageTotal(offset, pageSize, flowCard)); + map.put("data", finishedGoodsInventoryMapper.getSelectWarehousing(offset, pageSize, flowCard)); + map.put("total", finishedGoodsInventoryMapper.getSelectWarehousingPageTotal(offset, pageSize, flowCard)); return map; } - public Boolean addseletwarehousing(Map<String,Object> object) { - Boolean isinsert=false; + public Boolean addSelectWarehousing(Map<String,Object> object) { + boolean saveState = true; + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + //瀹氫箟鍓嶇浼犺緭鐨勬暟鎹� + String storageRegion = ""; + String remark = ""; + if (object.get("remark") != null) { + remark = object.get("remark").toString(); + } + if (object.get("storageRegion") != null) { + storageRegion = object.get("storageRegion").toString(); + } - //瀹氫箟鍓嶇浼犺緭鐨勬暟鎹� - String storageRegion = ""; - String remark = ""; - if (object.get("remark") != null) { - remark = object.get("remark").toString(); - } - if (object.get("storageRegion") != null) { - storageRegion = object.get("storageRegion").toString(); - } - - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); + } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 List<FlowCard> flowCardlist = JSONArray.parseArray(JSONObject.toJSONString(object.get("flowcard")), FlowCard.class); @@ -76,17 +85,18 @@ String oddNumber= orderNumberSetting("鍏ュ簱"); //娣诲姞鍑哄叆搴撹褰� finishedOperateLogMapper.insertIntFinishedOperateLog(flowCard,userName,oddNumber); - System.out.println(flowCard.getOrder().getOrderId()); Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber()); Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(flowCard.getOrder().getOrderId()); Integer ordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(flowCard.getOrder().getOrderId()); - System.out.println("璁㈠崟鎬绘暟:" + ordersum + "宸插叆搴撴暟閲忥細" + ordernumbersum + "鍑嗗鍏ュ簱鏁伴噺" + flowCard.getInventoryQuantity()); + /*System.out.println("璁㈠崟鎬绘暟:" + ordersum + "宸插叆搴撴暟閲忥細" + ordernumbersum + "鍑嗗鍏ュ簱鏁伴噺" + flowCard.getInventoryQuantity());*/ if (finishedGoodsInventorycount > 0) { //淇敼搴撳瓨琛ㄥ叆搴撴暟閲� finishedGoodsInventoryMapper.updateInventory(flowCard,storageRegion, remark); //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺 finishedGoodsInventoryMapper.updateflowcard(flowCard); + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1); //淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲� finishedGoodsInventoryMapper.updateIntOrderNumberConut(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber(),flowCard.getInventoryQuantity()); //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍏ュ簱 @@ -94,94 +104,127 @@ //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),2); } - isinsert=true; } else { if (finishedGoodsInventoryMapper.insertFinishedGoodsInventory(flowCard, storageRegion, remark)) { //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺 finishedGoodsInventoryMapper.updateflowcard(flowCard); //淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲� finishedGoodsInventoryMapper.updateIntOrderNumberConut(flowCard.getOrder().getOrderId(),flowCard.getOrderNumber(),flowCard.getInventoryQuantity()); - //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� - finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1); - isinsert=true; - } else { - isinsert= false; + if (ordersum == (ordernumbersum + flowCard.getInventoryQuantity())) { + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),2); + }else{ + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(flowCard.getOrder().getOrderId(),1); + } + + } } } - return isinsert; }else{ return false; } + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + } + + return saveState; } - public Map<String, Object> getseletdeliveryDetail(Integer pageNum, Integer pageSize, OrderDetail orderDetail) { + public Map<String, Object> getSelectDeliveryDetail(Integer pageNum, Integer pageSize, OrderDetail orderDetail) { Integer offset = (pageNum - 1) * pageSize; Map<String, Object> map = new HashMap<>(); - map.put("data", finishedGoodsInventoryMapper.getseletdeliveryDetail(offset, pageSize, orderDetail)); - map.put("total", finishedGoodsInventoryMapper.getseletdeliveryDetailPageTotal(offset, pageSize, orderDetail)); + map.put("data", finishedGoodsInventoryMapper.getSelectDeliveryDetail(offset, pageSize, orderDetail)); + map.put("total", finishedGoodsInventoryMapper.getSelectDeliveryDetailPageTotal(offset, pageSize, orderDetail)); return map; } - public Boolean adddeliveryDetail(Map<String,Object> object) { - Boolean isinsert=false; - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); - if (!orderDetaillist.isEmpty()){ - for (OrderDetail orderDetail : orderDetaillist) { - //鑾峰彇鍗曞彿 - String oddNumber= orderNumberSetting("鍑哄簱"); - //娣诲姞鍑哄叆搴撹褰� - finishedOperateLogMapper.insertOutFinishedOperateLog(orderDetail,userName,oddNumber); - Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber()); - System.out.println("鏁版嵁3:"+finishedGoodsInventorycount); - Integer finishedGoodsInventorybycount=finishedGoodsInventoryMapper.finishedGoodsInventorybycount(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber()); - Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getDeliveryDetail().getOrderId()); - Integer ordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getDeliveryDetail().getOrderId()); + public Boolean addDeliveryDetail(Map<String,Object> object) { + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); + } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); + if (!orderDetaillist.isEmpty()){ + for (OrderDetail orderDetail : orderDetaillist) { + //鑾峰彇鍗曞彿 + String oddNumber= orderNumberSetting("鍑哄簱"); + //娣诲姞鍑哄叆搴撹褰� + finishedOperateLogMapper.insertOutFinishedOperateLog(orderDetail,userName,oddNumber); + Integer finishedGoodsInventorycount = finishedGoodsInventoryMapper.findOrderNumberdcount(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber()); - System.out.println("璁㈠崟鎬绘暟:" + ordersum + "璁㈠崟鍓╀綑鏁伴噺锛�" + ordernumbersum + "鍑嗗鍑哄簱鏁伴噺" + orderDetail.getWarehouseNum()+ "搴撳瓨鏁伴噺" + finishedGoodsInventorybycount); - if (finishedGoodsInventorycount > 0) { - if(Objects.equals(finishedGoodsInventorybycount, orderDetail.getWarehouseNum())){ - System.out.println(123); - //淇敼搴撳瓨琛ㄥ嚭搴撴暟閲� - //finishedGoodsInventoryMapper.updateInventoryquantityavailable(orderDetail); - //淇敼鍙戣揣鏄庣粏琛ㄧ姸鎬� - finishedGoodsInventoryMapper.updateDeliveryDetailState(orderDetail,0); - //淇敼璁㈠崟鏄庣粏琛ㄥ彂璐ф暟閲� - finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getWarehouseNum()); - //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� - finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),1); - //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍙戣揣 - if (0 == (ordernumbersum - orderDetail.getWarehouseNum())) { - //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� - finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),2); - } - isinsert=true; + + Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getDeliveryDetail().getOrderId()); + Integer orderDeliveryQuantitySum = finishedGoodsInventoryMapper.findOrderDeliveryQuantitySum(orderDetail.getDeliveryDetail().getOrderId()); + + Integer deliverysum = finishedGoodsInventoryMapper.findDeliveryQuantity(orderDetail.getDeliveryDetail().getDeliveryId()); + Integer deliverydetailsum = finishedGoodsInventoryMapper.findDeliverydetailsum(orderDetail.getDeliveryDetail().getDeliveryId(),0); + if(deliverydetailsum==null){ + deliverydetailsum=0; } - } else { - isinsert=false; + /*System.out.println("璁㈠崟鎬绘暟:" + ordersum + "璁㈠崟宸插彂鏁伴噺锛�" + orderDeliveryQuantitySum + "鍑嗗鍑哄簱鏁伴噺" + + orderDetail.getWarehouseNum()+ "鍙戣揣鏁伴噺" + orderDetail.getDeliveryDetail().getQuantity()+ "鍙戣揣鎬绘暟" + + deliverysum+ "宸插彂鏁伴噺" + deliverydetailsum);*/ + if (finishedGoodsInventorycount > 0) { + if(orderDetail.getWarehouseNum()>=orderDetail.getDeliveryDetail().getQuantity()){ + //淇敼搴撳瓨琛ㄥ簱瀛樻暟閲� + finishedGoodsInventoryMapper.updateInventoryInventoryOut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity()); + //淇敼鍙戣揣鏄庣粏琛ㄧ姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDetailState(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getDeliveryId(),0); + //淇敼鍙戣揣琛ㄧ姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),1); + //淇敼璁㈠崟鏄庣粏琛ㄥ彂璐ф暟閲� + finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getDeliveryDetail().getOrderId(),orderDetail.getDeliveryDetail().getOrderNumber(),orderDetail.getDeliveryDetail().getQuantity()); + //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� + finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),1); + //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍙戣揣 + if (ordersum == (orderDeliveryQuantitySum + orderDetail.getWarehouseNum())) { + //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� + finishedGoodsInventoryMapper.updateOrderDeliveryState(orderDetail.getDeliveryDetail().getOrderId(),2); + } + if (deliverysum==deliverydetailsum+orderDetail.getDeliveryDetail().getQuantity()) { + //淇敼鍙戣揣琛ㄧ姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDeliveryState(orderDetail.getDeliveryDetail().getDeliveryId(),2); + } + } + + } } } - return isinsert; - }else{ - return false; + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + } - - + return saveState; } @@ -196,213 +239,440 @@ } public Boolean updateFinishedGoodsInventoryAllocate(Map<String,Object> object) { - Boolean isinsert=false; - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); - if (!orderDetaillist.isEmpty()){ - for (OrderDetail orderDetail : orderDetaillist) { - Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); - Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); - - Integer newordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getOrderId()); - Integer newordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getOrderId()); - - //鑾峰彇鍗曞彿 - String oddNumber= orderNumberSetting("璋冩嫧"); - //娣诲姞璋冩嫧璁板綍 - finishedOperateLogMapper.insertFinishedOperateLogAllocate(orderDetail,userName,oddNumber); - //淇敼鍘熻鍗曠殑搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryquantityAllocateOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - //淇敼璋冩嫧鍚庤鍗曠殑搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryquantityAllocateInt(orderDetail.getOrderId(),orderDetail.getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - //淇敼鍘熻鍗曟槑缁嗚〃鍙戣揣鏁伴噺 - finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - //淇敼璋冩嫧鏂拌鍗曟槑缁嗚〃鍙戣揣鏁伴噺 - finishedGoodsInventoryMapper.updateIntOrderNumberConut(orderDetail.getOrderId(),orderDetail.getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - if (newordersum==newordernumbersum+orderDetail.getQuantity()){ - //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� - finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getOrderId(),2); - } - if (Objects.equals(oldordersum, oldordernumbersum)){ - //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� - finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); - } - isinsert=true; + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); } - return isinsert; - }else{ - return false; - } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); + if (!orderDetaillist.isEmpty()){ + for (OrderDetail orderDetail : orderDetaillist) { + Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); + Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); + Integer newordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getOrderId()); + Integer newordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getOrderId()); + + //鑾峰彇鍗曞彿 + String oddNumber= orderNumberSetting("璋冩嫧"); + //娣诲姞璋冩嫧璁板綍 + finishedOperateLogMapper.insertFinishedOperateLogAllocate(orderDetail,userName,oddNumber); + //淇敼鍘熻鍗曠殑搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryquantityAllocateOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + //淇敼璋冩嫧鍚庤鍗曠殑搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryquantityAllocateInt(orderDetail.getOrderId(),orderDetail.getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + //淇敼鍘熻鍗曟槑缁嗚〃鍙戣揣鏁伴噺 + finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + //淇敼璋冩嫧鏂拌鍗曟槑缁嗚〃鍙戣揣鏁伴噺 + finishedGoodsInventoryMapper.updateIntOrderNumberConut(orderDetail.getOrderId(),orderDetail.getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + if (newordersum==newordernumbersum+orderDetail.getQuantity()){ + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getOrderId(),2); + } + if (Objects.equals(oldordersum, oldordernumbersum)){ + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); + } + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; } - public Map<String, Object> getselectAllocateFinishedOperateLog(Integer pageNum, Integer pageSize, FinishedOperateLog finishedOperateLog) { + public Map<String, Object> getSelectAllocateFinishedOperateLog(Integer pageNum, Integer pageSize,List<String> selectDate, FinishedOperateLog finishedOperateLog) { Integer offset = (pageNum - 1) * pageSize; + + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } + } + Map<String, Object> map = new HashMap<>(); - map.put("data", finishedOperateLogMapper.getselectAllocateFinishedOperateLog(offset, pageSize, finishedOperateLog)); - map.put("total", finishedOperateLogMapper.getselectAllocateFinishedOperateLogPageTotal(offset, pageSize, finishedOperateLog)); + map.put("data", finishedOperateLogMapper.getselectAllocateFinishedOperateLog(offset, pageSize,startDate,endDate, finishedOperateLog)); + map.put("total", finishedOperateLogMapper.getselectAllocateFinishedOperateLogPageTotal(offset, pageSize,startDate,endDate, finishedOperateLog)); + List<String> list = new ArrayList<>(); + list.add(startDate); + list.add(endDate); + map.put("selectDate",list); return map; } public Boolean updateFinishedGoodsInventoryTakeOut(Map<String,Object> object) { - Boolean isinsert=false; - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - - String operateType = ""; - String remarks = ""; - if (object.get("remarks") != null) { - remarks = object.get("remarks").toString(); - } - if (object.get("operateType") != null) { - operateType = object.get("operateType").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); - if (!orderDetaillist.isEmpty()){ - for (OrderDetail orderDetail : orderDetaillist) { - Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); - Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); - - //鑾峰彇鍗曞彿 - String oddNumber= orderNumberSetting("棰嗗嚭"); - //娣诲姞棰嗗嚭璁板綍 - finishedOperateLogMapper.insertFinishedOperateLogTakeOut(orderDetail,userName,oddNumber,operateType,remarks); - //淇敼搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryquantityOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - //淇敼璁㈠崟鏄庣粏琛ㄦ暟閲� - finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - if (Objects.equals(oldordersum, oldordernumbersum)){ - //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� - finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); - } - isinsert=true; + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); } - return isinsert; - }else{ - return false; + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + + String operateType = ""; + String remarks = ""; + if (object.get("remarks") != null) { + remarks = object.get("remarks").toString(); + } + if (object.get("operateType") != null) { + operateType = object.get("operateType").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); + if (!orderDetaillist.isEmpty()){ + for (OrderDetail orderDetail : orderDetaillist) { + Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); + Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); + + //鑾峰彇鍗曞彿 + String oddNumber= orderNumberSetting("棰嗗嚭"); + //娣诲姞棰嗗嚭璁板綍 + finishedOperateLogMapper.insertFinishedOperateLogTakeOut(orderDetail,userName,oddNumber,operateType,remarks); + //淇敼搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryquantityOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + //淇敼璁㈠崟鏄庣粏琛ㄦ暟閲� + finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + if (Objects.equals(oldordersum, oldordernumbersum)){ + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); + } + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + + public Map<String, Object> getSelectOperateRecord(Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) { + Integer offset = (pageNum-1)*pageSize; + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } } - - } - - public Map<String, Object> getselectTakeOutFinishedOperateLog(Integer pageNum, Integer pageSize, FinishedOperateLog finishedOperateLog) { - Integer offset = (pageNum - 1) * pageSize; Map<String, Object> map = new HashMap<>(); - map.put("data", finishedOperateLogMapper.getselectAllocateFinishedOperateLog(offset, pageSize, finishedOperateLog)); - map.put("total", finishedOperateLogMapper.getselectAllocateFinishedOperateLogPageTotal(offset, pageSize, finishedOperateLog)); - return map; - } - - public Map<String, Object> getSelectOperateRecord(Integer pageNum, Integer pageSize, FinishedOperateLog finishedOperateLog) { - Integer offset = (pageNum - 1) * pageSize; - Map<String, Object> map = new HashMap<>(); - map.put("data", finishedOperateLogMapper.getSelectOperateRecord(offset, pageSize, finishedOperateLog)); - map.put("total", finishedOperateLogMapper.getSelectOperateRecordLogPageTotal(offset, pageSize, finishedOperateLog)); + map.put("data", finishedOperateLogMapper.getSelectOperateRecord(offset, pageSize,startDate, endDate, finishedOperateLog)); + map.put("total", finishedOperateLogMapper.getSelectOperateRecordLogPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog)); + List<String> list = new ArrayList<>(); + list.add(startDate); + list.add(endDate); + map.put("selectDate",list); return map; } public Boolean updateFinishedGoodsInventoryRework(Map<String,Object> object) { - Boolean isinsert=false; - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - - String operateType = ""; - String remarks = ""; - if (object.get("remarks") != null) { - remarks = object.get("remarks").toString(); - } - if (object.get("operateType") != null) { - operateType = object.get("operateType").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); - if (!orderDetaillist.isEmpty()){ - for (OrderDetail orderDetail : orderDetaillist) { - Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); - Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); - - //鑾峰彇鍗曞彿 - String oddNumber= orderNumberSetting("杩斿伐"); - //娣诲姞棰嗗嚭璁板綍 - finishedOperateLogMapper.insertFinishedOperateLogRework(orderDetail,userName,oddNumber,operateType,remarks); - //淇敼搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryquantityOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - //淇敼璁㈠崟鏄庣粏琛ㄦ暟閲� - finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); - if (Objects.equals(oldordersum, oldordernumbersum)){ - //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� - finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); - } - isinsert=true; + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); } - return isinsert; - }else{ - return false; - } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + String operateType = ""; + String remarks = ""; + if (object.get("remarks") != null) { + remarks = object.get("remarks").toString(); + } + if (object.get("operateType") != null) { + operateType = object.get("operateType").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<OrderDetail> orderDetaillist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), OrderDetail.class); + if (!orderDetaillist.isEmpty()){ + for (OrderDetail orderDetail : orderDetaillist) { + Integer oldordersum = finishedGoodsInventoryMapper.findOrderQuantity(orderDetail.getFinishedGoodsInventory().getOrderId()); + Integer oldordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(orderDetail.getFinishedGoodsInventory().getOrderId()); + + //鑾峰彇鍗曞彿 + String oddNumber= orderNumberSetting("杩斿伐"); + //娣诲姞棰嗗嚭璁板綍 + finishedOperateLogMapper.insertFinishedOperateLogRework(orderDetail,userName,oddNumber,operateType,remarks); + //淇敼搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryquantityOut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + //淇敼璁㈠崟鏄庣粏琛ㄦ暟閲� + finishedGoodsInventoryMapper.updateOutOrderNumberConut(orderDetail.getFinishedGoodsInventory().getOrderId(),orderDetail.getFinishedGoodsInventory().getOrderNumber(), Math.toIntExact(orderDetail.getQuantity())); + if (Objects.equals(oldordersum, oldordernumbersum)){ + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(orderDetail.getFinishedGoodsInventory().getOrderId(),1); + } + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; } public Boolean updateFinishedGoodsInventoryToExamine(Map<String,Object> object,String type) { - Boolean isinsert=false; - String userName = ""; - String userId = ""; - if (object.get("userName") != null) { - userName = object.get("userName").toString(); - } - if (object.get("userId") != null) { - userId = object.get("userId").toString(); - } - //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 - List<FinishedOperateLog> finishedOperateLogslist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), FinishedOperateLog.class); - if (!finishedOperateLogslist.isEmpty()){ - for (FinishedOperateLog finishedOperateLog : finishedOperateLogslist) { - if(Objects.equals(type, "瀹℃牳")){ - //瀹℃牳淇敼棰嗗嚭璁板綍 - finishedOperateLogMapper.updateToExamine(finishedOperateLog,userName,"宸插鏍�"); - //瀹℃牳淇敼搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryInventoryOut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),Math.toIntExact(finishedOperateLog.getQuantity())); - } else if (Objects.equals(type, "鍙嶅")) { - //瀹℃牳淇敼棰嗗嚭璁板綍 - finishedOperateLogMapper.updateToExamine(finishedOperateLog,userName,"鏈鏍�"); - //瀹℃牳淇敼搴撳瓨鏁伴噺 - finishedGoodsInventoryMapper.updateInventoryInventoryInt(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),Math.toIntExact(finishedOperateLog.getQuantity())); - } - - - isinsert=true; + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); } - return isinsert; - }else{ - return false; + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<FinishedOperateLog> finishedOperateLogslist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), FinishedOperateLog.class); + if (!finishedOperateLogslist.isEmpty()){ + for (FinishedOperateLog finishedOperateLog : finishedOperateLogslist) { + if(Objects.equals(type, "瀹℃牳")){ + //瀹℃牳淇敼棰嗗嚭璁板綍 + finishedOperateLogMapper.updateToExamine(finishedOperateLog,userName,"宸插鏍�"); + //瀹℃牳淇敼搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryInventoryOut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),Math.toIntExact(finishedOperateLog.getQuantity())); + } else if (Objects.equals(type, "鍙嶅")) { + //瀹℃牳淇敼棰嗗嚭璁板綍 + finishedOperateLogMapper.updateToExamine(finishedOperateLog,userName,"鏈鏍�"); + //瀹℃牳淇敼搴撳瓨鏁伴噺 + finishedGoodsInventoryMapper.updateInventoryInventoryInt(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),Math.toIntExact(finishedOperateLog.getQuantity())); + } + + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + public Boolean cancelFinishedGoodsInventoryToExamine(Map<String,Object> object) { + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + String userName = ""; + String userId = ""; + if (object.get("userName") != null) { + userName = object.get("userName").toString(); + } + if (object.get("userId") != null) { + userId = object.get("userId").toString(); + } + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<FinishedOperateLog> finishedOperateLogslist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), FinishedOperateLog.class); + if (!finishedOperateLogslist.isEmpty()){ + for (FinishedOperateLog finishedOperateLog : finishedOperateLogslist) { + finishedGoodsInventoryMapper.updateInventoryquantityInt(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(), Math.toIntExact(finishedOperateLog.getQuantity())); + finishedOperateLogMapper.updateFinishedOperateLogState(finishedOperateLog,"宸蹭綔搴�"); + + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + + public Map<String, Object> getSelectStorageRecord(Integer pageNum, Integer pageSize, List<String> selectDate,String type, FinishedOperateLog finishedOperateLog) { + Integer offset = (pageNum-1)*pageSize; + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } } + Map<String, Object> map = new HashMap<>(); + map.put("data", finishedOperateLogMapper.getSelectStorageRecord(offset, pageSize,startDate, endDate,type, finishedOperateLog)); + map.put("total", finishedOperateLogMapper.getSelectStorageRecordLogPageTotal(offset, pageSize,startDate, endDate,type, finishedOperateLog)); + List<String> list = new ArrayList<>(); + list.add(startDate); + list.add(endDate); + map.put("selectDate",list); + return map; + } + public Map<String, Object> getSelectFinishedOperateLogReport(Integer pageNum, Integer pageSize, List<String> selectDate, FinishedOperateLog finishedOperateLog) { + Integer offset = (pageNum-1)*pageSize; + String endDate = LocalDate.now().toString(); + String startDate = LocalDate.now().minusDays(15).toString(); + if(selectDate !=null && selectDate.size()==2){ + if(!selectDate.get(0).isEmpty()){ + startDate = selectDate.get(0); + } + if(!selectDate.get(1).isEmpty()){ + endDate = selectDate.get(1); + } + } + + Map<String, Object> map = new HashMap<>(); + map.put("data", finishedOperateLogMapper.getSelectFinishedOperateLogReport(offset, pageSize,startDate, endDate, finishedOperateLog)); + map.put("total", finishedOperateLogMapper.getSelectFinishedOperateLogReportPageTotal(offset, pageSize,startDate, endDate, finishedOperateLog)); + List<String> list = new ArrayList<>(); + list.add(startDate); + list.add(endDate); + map.put("selectDate",list); + return map; + } + + + public Boolean cancelFinishedGoodsInventoryStorage(Map<String,Object> object) { + boolean saveState = true; + //璁剧疆鍥炴粴鐐� + Object savePoint = TransactionAspectSupport.currentTransactionStatus().createSavepoint(); + try { + + //鑾峰彇瀵硅薄闆嗗悎寰幆杩涜鏂板淇敼 + List<FinishedOperateLog> finishedOperateLogslist = JSONArray.parseArray(JSONObject.toJSONString(object.get("orderDetail")), FinishedOperateLog.class); + if (!finishedOperateLogslist.isEmpty()){ + for (FinishedOperateLog finishedOperateLog : finishedOperateLogslist) { + Integer ordersum = finishedGoodsInventoryMapper.findOrderQuantity(finishedOperateLog.getOrderId()); + Integer ordernumbersum = finishedGoodsInventoryMapper.findOrderNumberdsum(finishedOperateLog.getOrderId()); + + if(Objects.equals(finishedOperateLog.getOperateType(), "鍏ュ簱")){ + //淇敼璁板綍琛� + finishedOperateLogMapper.updateFinishedOperateLogState(finishedOperateLog,"宸蹭綔搴�"); + //淇敼搴撳瓨琛ㄥ叆搴撴暟閲� + finishedGoodsInventoryMapper.updateInventoryOut(finishedOperateLog); + //淇敼娴佺▼鍗¤〃鍏ュ簱鏁伴噺 + finishedGoodsInventoryMapper.updateflowcardOut(finishedOperateLog); + //淇敼璁㈠崟鏄庣粏琛ㄥ叆搴撴暟閲� + finishedGoodsInventoryMapper.updateOutOrderNumberConut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getQuantity()); + //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍏ュ簱 + if (Objects.equals(ordersum, ordernumbersum)) { + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(finishedOperateLog.getOrderId(),1); + } + if (ordernumbersum-finishedOperateLog.getQuantity()==0) { + //淇敼璁㈠崟琛ㄥ叆搴撶姸鎬� + finishedGoodsInventoryMapper.updateOrderWarehousingState(finishedOperateLog.getOrderId(),0); + } + + }else if(Objects.equals(finishedOperateLog.getOperateType(), "鍑哄簱")){ + //淇敼璁板綍琛� + finishedOperateLogMapper.updateFinishedOperateLogState(finishedOperateLog,"宸蹭綔搴�"); + //淇敼搴撳瓨琛ㄥ簱瀛樻暟閲� + finishedGoodsInventoryMapper.updateInventoryInventoryInt(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getQuantity()); + //淇敼鍙戣揣鏄庣粏琛ㄧ姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDetailState(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getOperationOrderNumber(),1); + //淇敼鍙戣揣琛ㄧ姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDeliveryState(finishedOperateLog.getOperationOrderNumber(),0); + //淇敼璁㈠崟鏄庣粏琛ㄥ簱鍐呮暟閲� + finishedGoodsInventoryMapper.updateIntOrderNumberConut(finishedOperateLog.getOrderId(),finishedOperateLog.getOperationNumber(),finishedOperateLog.getQuantity()); + //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� + finishedGoodsInventoryMapper.updateDeliveryDeliveryState(finishedOperateLog.getOrderId(),1); + //鍒ゆ柇璁㈠崟鏄惁鍏ㄩ儴鍙戣揣 + if (ordernumbersum-finishedOperateLog.getQuantity()==0) { + //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� + finishedGoodsInventoryMapper.updateOrderDeliveryState(finishedOperateLog.getOrderId(),1); + + } + if (ordersum==finishedOperateLog.getQuantity()+ordernumbersum) { + //淇敼璁㈠崟琛ㄥ彂璐х姸鎬� + finishedGoodsInventoryMapper.updateOrderDeliveryState(finishedOperateLog.getOrderId(),0); + } + + } + + } + } + + } catch (Exception e) { + TransactionAspectSupport.currentTransactionStatus().rollbackToSavepoint(savePoint); + //灏嗗紓甯镐紶鍏ユ暟鎹簱 + SysError sysError = new SysError(); + sysError.setError(e.toString()); + sysError.setFunc("saveOrder"); + sysErrorService.insert(sysError); + saveState = false; + + } + return saveState; + + } + + public List<FinishedOperateLogDTO> exportFinishedOperateLogReport(List<LocalDate> dates) { + return finishedOperateLogMapper.exportFinishedOperateLogReport(dates); } -- Gitblit v1.8.0