From 5145b9c821d0a3a0ed32cc7dd6983c649664fd88 Mon Sep 17 00:00:00 2001
From: zhouhong <zh123412@126.com>
Date: Tue, 7 Feb 2023 15:22:09 +0800
Subject: [PATCH] 格林美成品入库回传重量字段-1时,单据数量按照重量计算,回传也是;

---
 src/main/java/com/huaheng/api/general/service/BarCodeApiService.java         |  9 +++++++--
 src/main/java/com/huaheng/pc/task/taskHeader/service/ReceiptTaskService.java | 16 ++++++++--------
 2 files changed, 15 insertions(+), 10 deletions(-)

diff --git a/src/main/java/com/huaheng/api/general/service/BarCodeApiService.java b/src/main/java/com/huaheng/api/general/service/BarCodeApiService.java
index 1fe4a98..739dfb3 100644
--- a/src/main/java/com/huaheng/api/general/service/BarCodeApiService.java
+++ b/src/main/java/com/huaheng/api/general/service/BarCodeApiService.java
@@ -118,15 +118,15 @@ public class BarCodeApiService {
             String materialCode = detail.getMaterialCode();
             BigDecimal qty = detail.getQty();
             BigDecimal weight = detail.getWeight();
+
             //平均重量
             BigDecimal AverageWeight=weight.divide(new BigDecimal(totalLines),3,BigDecimal.ROUND_HALF_UP);
-
             //没有子条码,属于拆解中的散装,只有重量没有数量,重量赋值给数量
             //if (detail.getCode()==null || "".equals(detail.getCode())) {
             //    qty=weight;
             //}
 
-            totalQty=totalQty.add(qty);
+
             //totalWeight=totalWeight.add(weight);
             Material material = materialService.getOne(new LambdaQueryWrapper<Material>().eq(Material::getCode,materialCode));
             barCodeDetail.setMaterialCode(material.getCode());
@@ -134,6 +134,11 @@ public class BarCodeApiService {
             barCodeDetail.setMaterialSpec(material.getSpec());
             barCodeDetail.setMaterialUnit(material.getUnit());
             barCodeDetail.setTotalQty(qty);
+            if(barCodeHeader.getReceiptNote()==-1){
+                barCodeDetail.setTotalQty(AverageWeight);
+            }
+            totalQty=totalQty.add(barCodeDetail.getTotalQty());
+
             barCodeDetail.setSn(detail.getSn());
             barCodeDetail.setWeight(AverageWeight);
             if(barCodeDetail.getCode().length() == 17 || barCodeDetail.getCode().length() == 19){
diff --git a/src/main/java/com/huaheng/pc/task/taskHeader/service/ReceiptTaskService.java b/src/main/java/com/huaheng/pc/task/taskHeader/service/ReceiptTaskService.java
index cc80e0d..37cbab9 100644
--- a/src/main/java/com/huaheng/pc/task/taskHeader/service/ReceiptTaskService.java
+++ b/src/main/java/com/huaheng/pc/task/taskHeader/service/ReceiptTaskService.java
@@ -242,10 +242,10 @@ public class ReceiptTaskService {
                         taskDetail.setMaterialNetWeight(item.getMaterialNetWeight());
                         taskDetail.setMaterialTareWeight(item.getMaterialTareWeight());
                         taskDetail.setMaterialBatch(item.getMaterialBatch());
-                        if(task.getToLocation() != null) {
+                        if(StringUtils.isNotEmpty(task.getToLocation() )) {
                             taskDetail.setToLocation(task.getToLocation());
                         }
-                        if(item.getSn() != null){
+                        if(StringUtils.isNotEmpty(item.getSn() )){
                             taskDetail.setSn(item.getSn());
                         }
                         taskDetail.setBatch(item.getBatch());
@@ -266,17 +266,17 @@ public class ReceiptTaskService {
                         }else{
                             taskDetail.setDischargeReview(1);
                         }
-
-                        taskDetail.setPoundCode(item.getPoundCode());
-                        taskDetail.setSupplierCode(item.getSupplierCode());
-                        if (!taskDetailService.save(taskDetail)) {
-                            throw new ServiceException("生成任务明细失败");
-                        }
                         //更新入库组盘明细状态
                         item.setStatus(QuantityConstant.RECEIPT_CONTAINER_TASK);
                         if (!receiptContainerDetailService.updateById(item)) {
                             throw new ServiceException("更新入库组盘明细状态出错");
                         }
+                        taskDetail.setPoundCode(item.getPoundCode());
+                        taskDetail.setSupplierCode(item.getSupplierCode());
+                        if (!taskDetailService.save(taskDetail)) {
+                            throw new ServiceException("生成任务明细失败");
+                        }
+
 
                         /* 修改明细状态为上架*/
                         ReceiptDetail receiptDetail = receiptDetailService.getById(item.getReceiptDetailId());
--
libgit2 0.22.2