From 133e9fccff97927467a2edbfec8ae1f382722fae Mon Sep 17 00:00:00 2001
From: zyx <zyx123456>
Date: 星期六, 27 一月 2024 16:31:38 +0800
Subject: [PATCH] # 打印物料码 文本自动换行
---
src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java | 97 ++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 89 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java
index 0e09253..5e56251 100644
--- a/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/PakoutServiceImpl.java
@@ -1,18 +1,18 @@
package com.zy.asrs.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
-import com.zy.asrs.entity.Order;
-import com.zy.asrs.entity.OrderDetl;
-import com.zy.asrs.mapper.PakoutMapper;
-import com.zy.asrs.entity.Pakout;
-import com.zy.asrs.service.OrderDetlService;
-import com.zy.asrs.service.OrderService;
-import com.zy.asrs.service.PakoutService;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.*;
+import com.zy.asrs.entity.param.GlobleParameter;
+import com.zy.asrs.mapper.PakoutMapper;
+import com.zy.asrs.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import java.util.Date;
import java.util.List;
@Service("pakoutService")
@@ -23,9 +23,21 @@
@Autowired
private OrderDetlService orderDetlService;
+ @Autowired
+ private ManLocDetlService manLocDetlService;
+
+ @Autowired
+ private PlaService plaService;
+
+ @Autowired
+ private PlaQtyService plaQtyService;
+
@Override
public void deletePakout(String docNum) {
Order order = orderService.selectByNo(docNum);
+ if (Cools.isEmpty(order)){
+ throw new RuntimeException("鏈煡璇㈠埌璁㈠崟妗f");
+ }
List<OrderDetl> orderDetls = orderDetlService.selectList(new EntityWrapper<OrderDetl>().eq("order_no", docNum));
for (OrderDetl orderDetl: orderDetls){
@@ -42,10 +54,79 @@
if (!orderService.updateById(order)){
throw new RuntimeException("璁㈠崟鏄庣粏鎵归噺鏇存柊澶辫触");
}
- if (!delete(new EntityWrapper<Pakout>().eq("doc_num",docNum))){
+
+ List<Pakout> pakouts = selectList(new EntityWrapper<Pakout>().eq("doc_num", docNum));
+ for (Pakout pakout: pakouts){
+
+ Pla pla = plaService.selectByBatchAndPackageNo(pakout.getBatch(), pakout.getBarcode());
+ if(!Cools.isEmpty(pla)){
+ pla.setQtyAnfme(pla.getQtyAnfme() - pakout.getAnfme());
+ pla.setModifyTime(new Date());
+ if(pla.getQtyAnfme() <= 0){
+ pla.setStatus(GlobleParameter.PLA_STATUS_1);
+ }
+ plaService.updateById(pla);
+ plaQtyService.deleteById(pakout.getNodeId());
+
+ }else {
+ ManLocDetl manLocDetl = manLocDetlService.selectOne(new EntityWrapper<ManLocDetl>()
+ .eq("loc_no", pakout.getLocNo())
+ .eq("matnr", pakout.getMatnr()));
+ manLocDetl.setStatus(1);
+ if (!manLocDetlService.update(manLocDetl,new EntityWrapper<ManLocDetl>()
+ .eq("loc_no", pakout.getLocNo())
+ .eq("matnr", pakout.getMatnr()))){
+ throw new RuntimeException("搴撳瓨鐘舵�佹洿鏂板け璐�");
+ }
+ }
+ }
+
+ if (!delete(new EntityWrapper<Pakout>().eq("doc_num",docNum))){
throw new RuntimeException("鎷h揣鍗曞垹闄ゅけ璐�");
}
+ }
+ @Override
+ @Transactional
+ public void deletePakoutByWrkNo(String wrkNo) {
+ Pakout pakout = this.selectById(wrkNo);
+ //鏇存柊鍗曟嵁淇℃伅
+ if(pakout.getCount() > 0){
+ throw new CoolException("璇ユ潯鎷h揣淇℃伅宸插畬鎴愶紝鏃犳硶鍒犻櫎");
+ }
+ OrderDetl orderDetl = orderDetlService.selectById(pakout.getDocId());
+ orderDetl.setWorkQty(orderDetl.getWorkQty() - pakout.getAnfme());
+ orderDetl.setUpdateTime(new Date());
+ orderDetlService.updateById(orderDetl);
+
+ Order order = orderService.selectByNo(pakout.getDocNum());
+ List<OrderDetl> orderDetlList = orderDetlService.selectByOrderId(order.getId());
+ //鍒ゆ柇鍗曟嵁鏄惁鏈夋鍦ㄤ綔涓氱殑浠诲姟锛宼rue涓烘病鏈�
+ boolean flag = true;
+ for (OrderDetl od : orderDetlList){
+ if(od.getWorkQty() + od.getQty() > 0){
+ flag = false;
+ }
+ }
+
+ if(flag){
+ order.setSettle(1L);
+ order.setUpdateTime(new Date());
+ orderService.updateById(order);
+ }
+
+ //鏇存柊pla淇℃伅
+ Pla pla = plaService.selectByBatchAndPackageNo(pakout.getBatch(), pakout.getBarcode());
+ pla.setQtyAnfme(pla.getQtyAnfme() - pakout.getAnfme());
+ pla.setStatus(GlobleParameter.PLA_STATUS_1);
+ pla.setModifyTime(new Date());
+ plaService.updateById(pla);
+
+ //鏇存柊plaQty淇℃伅
+ plaQtyService.deleteById(pakout.getNodeId());
+
+ //鍒犻櫎鎷h揣鍗�
+ this.deleteById(wrkNo);
}
}
--
Gitblit v1.9.1