From 89e69825afdc8fb7619444d6e0bbc808502920e5 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期五, 14 三月 2025 13:22:36 +0800
Subject: [PATCH] #修改 1. 字段优化 2. 添加物料查询收货通知单接口

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java    |   10 +++++
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java |   40 +++++++++++++++----
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/AsnOrderService.java          |    3 +
 rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java           |    3 -
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java       |    2 
 rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java              |   19 ++++++++-
 rsf-server/src/main/resources/application-dev.yml                                             |    2 
 7 files changed, 63 insertions(+), 16 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
index 525be1b..7febe4a 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java
@@ -294,7 +294,7 @@
             ReceiptDetlsDto detlsDto = new ReceiptDetlsDto();
 
             detlsDto.setAsnCode(asnOrderItem.getAsnCode())
-                    .setMatnk(asnOrderItem.getMatnk())
+                    .setMatnk(asnOrderItem.getMaktx())
                     .setBarcode(asnOrderItem.getBarcode())
                     .setPoCode(asnOrderItem.getPoCode())
                     .setPurQty(asnOrderItem.getAnfme())
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java
index 51fb9d5..8453c56 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/controller/AsnOrderController.java
@@ -140,6 +140,16 @@
         }
     }
 
+    @PostMapping("/asnOrder/matnr/list")
+    @ApiOperation("鐗╂枡鑾峰彇璁㈠崟")
+    @PreAuthorize("hasAuthority('manager:asnOrder:list')")
+    public R getListByMatnr(@RequestBody Map<String, String> params){
+        if (Objects.isNull(params)) {
+            throw new CoolException("鏌ヨ鏉′欢涓嶈兘涓虹┖锛侊紒");
+        }
+        return R.ok(asnOrderService.getListByMatnr(params));
+    }
+
     @PostMapping("/asnOrder/generate/barcode")
     @ApiOperation("鐢熸垚ASN鏍囩")
     @PreAuthorize("hasAuthority('manager:asnOrder:list')")
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java
index c37b9ed..f801136 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/entity/AsnOrderItem.java
@@ -75,16 +75,28 @@
     private String poCode;
 
     /**
+     * 璺熻釜鐮�
+     */
+    @ApiModelProperty("璺熻釜鐮�")
+    private String trackCode;
+
+    /**
      * 鐗╂枡鏍囪瘑
      */
     @ApiModelProperty(value= "鐗╂枡鏍囪瘑")
     private String matnrId;
 
     /**
+     * 鐗╂枡缂栫爜
+     */
+    @ApiModelProperty(value = "鐗╂枡缂栫爜")
+    private String matnrCode;
+
+    /**
      * 鐗╂枡鍚嶇О
      */
     @ApiModelProperty(value= "鐗╂枡鍚嶇О")
-    private String matnk;
+    private String maktx;
 
     /**
      * 閫佽揣鏁伴噺
@@ -205,13 +217,14 @@
 
     public AsnOrderItem() {}
 
-    public AsnOrderItem(Long asnId,String asnCode,Long poDetlId,String poCode,String matnrId,String matnk,Double anfme,String stockUnit,Double purQty,String purUnit,Double qty,String splrCode,String splrName,String qrcode,String barcode,String packName,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
+    public AsnOrderItem(Long asnId,String asnCode,Long poDetlId, String matnrCode, String poCode,String matnrId,String matnk,Double anfme,String stockUnit,Double purQty,String purUnit,Double qty,String splrCode,String splrName,String qrcode,String barcode,String packName,Integer status,Integer deleted,Integer tenantId,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
         this.asnId = asnId;
         this.asnCode = asnCode;
         this.poDetlId = poDetlId;
+        this.matnrCode = matnrCode;
         this.poCode = poCode;
         this.matnrId = matnrId;
-        this.matnk = matnk;
+        this.maktx = matnk;
         this.anfme = anfme;
         this.stockUnit = stockUnit;
         this.purQty = purQty;
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java
index ec1e5de..991e021 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/schedules/ScheduleJobs.java
@@ -106,14 +106,13 @@
                         .setSplrName(item.getSplrName())
                         .setAsnCode(code)
                         .setSplrCode(item.getSplrCode())
-                        .setMatnk(item.getMatnrName())
                         .setPoDetlId(item.getId())
                         .setPlatItemId(item.getPlatItemId())
 //                        .setBarcode(barcode)
                         .setPoCode(purchase.getCode())
                         .setPurQty(item.getAnfme())
                         .setPurUnit(item.getUnit())
-                        .setMatnk(matnr.getName())
+                        .setMaktx(matnr.getName())
                         .setMatnrId(matnr.getId() + "");
                 orderItems.add(orderItem);
             });
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/AsnOrderService.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/AsnOrderService.java
index 9e87f4a..3ea6b5d 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/AsnOrderService.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/AsnOrderService.java
@@ -5,10 +5,13 @@
 import com.vincent.rsf.server.manager.entity.AsnOrder;
 
 import java.util.List;
+import java.util.Map;
 
 public interface AsnOrderService extends IService<AsnOrder> {
 
     boolean notifyInspect(List<AsnOrder> orders);
 
     R generateBarcode(List<AsnOrder> orders);
+
+    List<AsnOrder> getListByMatnr(Map<String, String> params);
 }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
index 3bac15f..03c5ccf 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
@@ -10,6 +10,7 @@
 import com.vincent.rsf.server.manager.mapper.AsnOrderMapper;
 import com.vincent.rsf.server.manager.entity.AsnOrder;
 import com.vincent.rsf.server.manager.mapper.PurchaseMapper;
+import com.vincent.rsf.server.manager.service.AsnOrderItemService;
 import com.vincent.rsf.server.manager.service.AsnOrderService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.vincent.rsf.server.system.constant.SerialRuleCode;
@@ -20,8 +21,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -39,8 +39,8 @@
     @Resource
     private PurchaseMapper purchaseMapper;
 
-    @Resource
-    private AsnOrderItemMapper asnOrderItemMapper;
+    @Autowired
+    private AsnOrderItemService asnOrderItemService;
 
     @Resource
     private SerialRuleMapper serialRuleMapper;
@@ -65,12 +65,34 @@
     @Override
     public R generateBarcode(List<AsnOrder> orders) {
         orders.forEach(order -> {
-            List<AsnOrderItem> items = asnOrderItemMapper.selectList(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnId, order.getId()));
-            items.forEach(item -> {
-                String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, item);
-                //TODO asnorderitem  娣诲姞鍗曠嫭鐨勫瓧娈碉紝淇濆瓨缂栫爜
-            });
+            List<AsnOrderItem> items = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnId, order.getId()));
+            if (!items.isEmpty()) {
+                items.forEach(item -> {
+                    String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_LABEL_CODE, item);
+                    item.setTrackCode(ruleCode);
+                });
+                if (!asnOrderItemService.saveOrUpdateBatch(items)) {
+                    throw new CoolException("鐢熸垚鏉$爜澶辫触锛侊紒");
+                }
+            }
         });
         return R.ok();
     }
+
+    @Override
+    public List<AsnOrder> getListByMatnr(Map<String, String> params) {
+        if (Objects.isNull(params)) {
+            throw new CoolException("鏌ヨ鏉′欢涓嶈兘涓虹┖锛侊紒");
+        }
+        List<AsnOrderItem> orderItems = asnOrderItemService.list(new LambdaQueryWrapper<AsnOrderItem>()
+                .like(!Objects.isNull(params.get("maktx")), AsnOrderItem::getMaktx, params.get("maktx"))
+                .eq(!Objects.isNull(params.get("matnrCode")), AsnOrderItem::getMatnrCode, params.get("matnrCode")));
+
+        if (orderItems.isEmpty()) {
+            return new ArrayList<>();
+        }
+        List<Long> longList = orderItems.stream().map(AsnOrderItem::getAsnId).collect(Collectors.toList());
+
+        return this.listByIds(longList);
+    }
 }
diff --git a/rsf-server/src/main/resources/application-dev.yml b/rsf-server/src/main/resources/application-dev.yml
index cf33bf5..f3d6b37 100644
--- a/rsf-server/src/main/resources/application-dev.yml
+++ b/rsf-server/src/main/resources/application-dev.yml
@@ -12,7 +12,7 @@
       matching-strategy: ANT_PATH_MATCHER
   datasource:
     driver-class-name: com.mysql.jdbc.Driver
-    url: jdbc:mysql://192.168.4.24:3306/rsf?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
+    url: jdbc:mysql://127.0.0.1:3306/rsf?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
     username: root
     password: 34821015
     type: com.alibaba.druid.pool.DruidDataSource

--
Gitblit v1.9.1