From 08464b5b3bc79be5397a48927a6603f2e3287446 Mon Sep 17 00:00:00 2001
From: dubin <bindu_bean@163.com>
Date: 星期三, 15 十月 2025 22:39:57 +0800
Subject: [PATCH] 联调

---
 src/main/webapp/static/js/barcodeMatnr/barcodeMatnr.js           |   51 +++++++++++++----
 src/main/java/com/zy/asrs/controller/BarcodeMatnrController.java |   22 +++++++
 src/main/java/com/zy/asrs/service/WaitPakinService.java          |    4 +
 src/main/java/com/zy/asrs/service/impl/WaitPakinServiceImpl.java |   61 +++++++++++++++++++
 4 files changed, 124 insertions(+), 14 deletions(-)

diff --git a/src/main/java/com/zy/asrs/controller/BarcodeMatnrController.java b/src/main/java/com/zy/asrs/controller/BarcodeMatnrController.java
index f2d345f..3763c6e 100644
--- a/src/main/java/com/zy/asrs/controller/BarcodeMatnrController.java
+++ b/src/main/java/com/zy/asrs/controller/BarcodeMatnrController.java
@@ -16,6 +16,7 @@
 import com.zy.asrs.service.MatBarcodeService;
 import com.zy.asrs.service.MatService;
 import com.zy.asrs.service.MobileService;
+import com.zy.asrs.service.WaitPakinService;
 import com.zy.common.web.BaseController;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -36,6 +37,8 @@
     private MobileService mobileService;
     @Autowired
     private MatService matService;
+    @Autowired
+    private WaitPakinService waitPakinService;
     /*
     * 鐗╂枡鎵樼洏缁戝畾鍒嗛〉鏌ヨ
     * */
@@ -79,6 +82,25 @@
         return R.ok();
     }
 
+    /*
+    * 鎵归噺缁勬墭
+    * */
+    @RequestMapping("/barcodeMatnr/matnrAndBarcode")
+    @ManagerAuth(memo = "鐗╂枡鎵樼洏鎵归噺缁勬墭")
+    public R matnrAndBarcode(@RequestBody List<MatBarcode> list) {
+        if (Cools.isEmpty(list)){
+            return R.error(BaseRes.PARAM);
+        }
+        for (MatBarcode matBarcode : list) {
+            if (!matBarcode.getZpallet().equals(list.get(0).getZpallet())){
+                throw new CoolException("璇烽�夋嫨鐩稿悓鎵樼洏鐮佺殑鏁版嵁");
+            }
+        }
+        waitPakinService.comb(list);
+        return R.ok("缁勬墭鎴愬姛");
+
+    }
+
     /*鐗╂枡鎵樼洏缁戝畾
     *
     * */
diff --git a/src/main/java/com/zy/asrs/service/WaitPakinService.java b/src/main/java/com/zy/asrs/service/WaitPakinService.java
index b09602a..9a796af 100644
--- a/src/main/java/com/zy/asrs/service/WaitPakinService.java
+++ b/src/main/java/com/zy/asrs/service/WaitPakinService.java
@@ -1,8 +1,12 @@
 package com.zy.asrs.service;
 
+import com.zy.asrs.entity.MatBarcode;
 import com.zy.asrs.entity.WaitPakin;
 import com.baomidou.mybatisplus.service.IService;
 
+import java.util.List;
+
 public interface WaitPakinService extends IService<WaitPakin> {
 
+    void comb(List<MatBarcode> list);
 }
diff --git a/src/main/java/com/zy/asrs/service/impl/WaitPakinServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WaitPakinServiceImpl.java
index fada025..8c0c0e2 100644
--- a/src/main/java/com/zy/asrs/service/impl/WaitPakinServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/WaitPakinServiceImpl.java
@@ -1,12 +1,69 @@
 package com.zy.asrs.service.impl;
 
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.*;
 import com.zy.asrs.mapper.WaitPakinMapper;
-import com.zy.asrs.entity.WaitPakin;
-import com.zy.asrs.service.WaitPakinService;
+import com.zy.asrs.service.*;
 import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.zy.common.model.DetlDto;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
 
 @Service("waitPakinService")
 public class WaitPakinServiceImpl extends ServiceImpl<WaitPakinMapper, WaitPakin> implements WaitPakinService {
+    @Autowired
+    private LocDetlService locDetlService;
+    @Autowired
+    private WrkDetlService wrkDetlService;
+    @Autowired
+    private WrkMastService wrkMastService;
+    @Autowired
+    private MatService matService;
+    @Autowired
+    private WaitPakinService waitPakinService;
 
+    @Override
+    public void comb(List<MatBarcode> list) {
+        String zpallet = list.get(0).getZpallet();
+        if (zpallet.length() != 8) {
+            throw new CoolException("鏉$爜闀垮害涓嶆槸8浣�===>>" + zpallet);
+        }
+        int countLoc = locDetlService.selectCount(new EntityWrapper<LocDetl>().eq("zpallet", zpallet));
+        int countWrk = wrkDetlService.selectCount(new EntityWrapper<WrkDetl>().eq("zpallet", zpallet));
+        WrkMast wrkMast = wrkMastService.selectByBarcode(zpallet);
+        if (countLoc > 0 || (countWrk > 0 && wrkMast.getWrkSts() != 15)) {
+            throw new CoolException("缁勬墭妗�/宸ヤ綔妗�/搴撳瓨鏉$爜鏁版嵁宸插瓨鍦�===>>" + zpallet);
+        }
+        Date now = new Date();
+        for (MatBarcode matBarcode : list) {
+            Mat mat = matService.selectByMatnr(matBarcode.getMatnr());
+            if (Cools.isEmpty(mat)) {
+                throw new CoolException(matBarcode.getMatnr() + "鍟嗗搧妗f涓嶅瓨鍦�");
+            }
+            WaitPakin waitPakin1 = new WaitPakin();
+            waitPakin1.sync(mat);
+            ///waitPakin1.setProType(dto.getProType());
+            //waitPakin1.setTemp2(dto.getTemp2());
+            //waitPakin1.setOutOrderNo(dto.getOutOrderNo());
+            //waitPakin1.setBatch(dto.getBatch());
+            waitPakin1.setZpallet(matBarcode.getZpallet());   // 鎵樼洏鐮�
+            waitPakin1.setIoStatus("N");     // 鍏ュ嚭鐘舵��
+            waitPakin1.setAnfme(1.0);  // 鏁伴噺
+            waitPakin1.setStatus("Y");    // 鐘舵��
+            //waitPakin1.setAppeUser(waitPakin.getAppeUser());
+            waitPakin1.setAppeTime(now);
+            //waitPakin1.setModiUser(waitPakin.getAppeUser());
+            waitPakin1.setModiTime(now);
+            //waitPakin1.setMemo(detlDto.getMemo());
+            if (!waitPakinService.insert(waitPakin1)) {
+                throw new CoolException("淇濆瓨鍏ュ簱閫氱煡妗eけ璐�");
+            }
+        }
+    }
 }
diff --git a/src/main/webapp/static/js/barcodeMatnr/barcodeMatnr.js b/src/main/webapp/static/js/barcodeMatnr/barcodeMatnr.js
index e5beb3f..c05ee2a 100644
--- a/src/main/webapp/static/js/barcodeMatnr/barcodeMatnr.js
+++ b/src/main/webapp/static/js/barcodeMatnr/barcodeMatnr.js
@@ -144,19 +144,46 @@
                     }
                 });
                 break;
+            // case 'deleteData':
+            //     layer.open({
+            //         type: 2,
+            //         title: '缁勬墭',
+            //         maxmin: true,
+            //         area: [top.detailWidth, top.detailHeight],
+            //         content: 'barcodeMatnr_comb.html',
+            //         success: function(layero, index){
+            //             layer.getChildFrame('#data-detail-submit-edit', index).hide();
+            //             clearFormVal(layer.getChildFrame('#detail', index));
+            //             layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
+            //         }
+            //     });
+            //     break;
             case 'deleteData':
-                layer.open({
-                    type: 2,
-                    title: '缁勬墭',
-                    maxmin: true,
-                    area: [top.detailWidth, top.detailHeight],
-                    content: 'barcodeMatnr_comb.html',
-                    success: function(layero, index){
-                        layer.getChildFrame('#data-detail-submit-edit', index).hide();
-                        clearFormVal(layer.getChildFrame('#detail', index));
-                        layer.iframeAuto(index);layer.style(index, {top: (($(window).height()-layer.getChildFrame('#data-detail', index).height())/3)+"px"});
-                    }
-                });
+                if (checkStatus.data.length === 0){
+                    layer.msg('璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�', {icon: 2});
+                } else {
+                    layer.confirm('纭畾缁勬墭鍚�', function(){
+                        $.ajax({
+                            url: baseUrl+"/barcodeMatnr/matnrAndBarcode",
+                            headers: {'token': localStorage.getItem('token')},
+                            data: JSON.stringify(checkStatus.data),
+                            contentType:'application/json;charset=UTF-8',
+                            method: 'POST',
+                            traditional:true,
+                            success: function (res) {
+                                if (res.code === 200){
+                                    layer.closeAll();
+                                    tableReload(false);
+                                    layer.msg(res.msg, {icon: 1})
+                                } else if (res.code === 403){
+                                    top.location.href = baseUrl+"/";
+                                } else {
+                                    layer.msg(res.msg, {icon: 2})
+                                }
+                            }
+                        })
+                    });
+                }
                 break;
             case 'clampData':
                 layer.open({

--
Gitblit v1.9.1