From 1367287c9b6e56ba187eba9e5bc30eef4e744a5c Mon Sep 17 00:00:00 2001
From: dengjunjie <dengjunjie@hnkhzn.com>
Date: 星期一, 13 一月 2025 23:51:01 +0800
Subject: [PATCH] 物料码信息添加联动

---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderDetailService.cs                   |   19 +++++++++
 代码管理/WMS/WIDESEA_WMSClient/src/views/basic/materielCodeInfo.vue                                   |   19 ++++++---
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs |    9 ++++
 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs                 |    3 +
 代码管理/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js                                |   34 +++++++++++++++++
 5 files changed, 75 insertions(+), 9 deletions(-)

diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js"
index 25f0128..5ac3fc5 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/extension/basic/materielCodeInfo.js"
@@ -14,8 +14,42 @@
   tableAction: '', //鎸囧畾鏌愬紶琛ㄧ殑鏉冮檺(杩欓噷濉啓琛ㄥ悕,榛樿涓嶇敤濉啓)
   buttons: { view: [], box: [], detail: [] }, //鎵╁睍鐨勬寜閽�
   methods: {
+    //鑾峰彇琛ㄥ崟閰嶇疆
+    getOption(field) {
+      let option;
+      this.editFormOptions.forEach(x => {
+        x.forEach(item => {
+          if (item.field == field) {
+            option = item;
+          }
+        })
+      })
+      return option;
+    },
     //涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
     onInit() {  //妗嗘灦鍒濆鍖栭厤缃墠锛�
+      let materielCodeOption = this.getOption("materielCode");
+      let purchaseOrderNoOption = this.getOption("purchaseOrderNo");
+      materielCodeOption.onChange = (val, option) => {
+        this.editFormFields.purchaseOrderNo = "";
+        purchaseOrderNoOption.data = [];
+        if (val == null || val == 0) {
+          return this.$error("璇烽�夋嫨鐗╂枡缂栧彿锛�")
+        }
+        // console.log(val)
+        // console.log(option)
+        this.http.post("/api/PurchaseOrderDetail/GetPurchaseOrderInfo?materielCode=" + val, {}, true).then(
+          source => {
+            if (!source.status) return this.$error(source.message);
+            for (let i = 0; i < source.data.length; i++) {
+              purchaseOrderNoOption.data.push({ key: i, value: source.data[i] })
+            }
+            // this.editFormFields.InputOder_itemname = source.data.itemName;
+            // this.$success(source.data.itemName);
+            this.refresh();
+          })
+      }
+
       this.columns.push({
         field: '鎿嶄綔',
         title: '鎿嶄綔',
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/basic/materielCodeInfo.vue" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/basic/materielCodeInfo.vue"
index 868d5c8..06bdac5 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/basic/materielCodeInfo.vue"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSClient/src/views/basic/materielCodeInfo.vue"
@@ -26,13 +26,17 @@
       url: "/MaterielCodeInfo/",
       sortName: "id",
     });
-    const editFormFields = ref({});
+    const editFormFields = ref({
+      purchaseOrderNo:""
+    });
     const editFormOptions = ref([
       [
         {
           title: "鐗╂枡缂栫爜",
           field: "materielCode",
-          required: true,
+          type: "select",
+          dataKey: "MaterielCodes",
+          data: [],
         },
         {
           title: "鎵规鍙�",
@@ -44,6 +48,9 @@
         {
           title: "閲囪喘鍗曞彿",
           field: "purchaseOrderNo",
+          type:"select",
+          // dataKey: "purchaseOrderNos",
+          data: [],
           required: true,
         },
         {
@@ -56,13 +63,13 @@
         {
           title: "鐢熶骇鏃ユ湡",
           field: "productionDate",
-          type:"date",
+          type: "date",
           required: true,
         },
         {
           title: "鏈夋晥鏈�",
           field: "effectiveDate",
-          type:"date",
+          type: "date",
           required: true,
         },
       ],
@@ -148,7 +155,7 @@
         title: "淇敼浜�",
         type: "string",
         width: 100,
-        hidden:true,
+        hidden: true,
         align: "left",
       },
       {
@@ -157,7 +164,7 @@
         type: "datetime",
         width: 160,
         align: "left",
-        hidden:true,
+        hidden: true,
         sort: true,
       },
     ]);
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs"
index 0b98ac2..ea3d9ea 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_IInboundService/IPurchaseOrderDetailService.cs"
@@ -3,6 +3,7 @@
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Core;
 using WIDESEA_Core.BaseServices;
 using WIDESEA_IInboundRepository;
 using WIDESEA_Model.Models;
@@ -11,6 +12,6 @@
 {
     public interface IPurchaseOrderDetailService : IService<Dt_PurchaseOrderDetail>
     {
-
+        WebResponseContent GetPurchaseOrderInfo(string materielCode);
     }
 }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderDetailService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderDetailService.cs"
index d03a821..6540ec2 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderDetailService.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_InboundService/PurchaseOrderDetailService.cs"
@@ -3,6 +3,7 @@
 using System.Linq;
 using System.Text;
 using System.Threading.Tasks;
+using WIDESEA_Core;
 using WIDESEA_Core.BaseServices;
 using WIDESEA_Core.Enums;
 using WIDESEA_Core.Helper;
@@ -12,12 +13,28 @@
 
 namespace WIDESEA_InboundService
 {
-    public class PurchaseOrderDetailService : ServiceBase<Dt_PurchaseOrderDetail, IPurchaseOrderDetailRepository>,IPurchaseOrderDetailService
+    public class PurchaseOrderDetailService : ServiceBase<Dt_PurchaseOrderDetail, IPurchaseOrderDetailRepository>, IPurchaseOrderDetailService
     {
         public IPurchaseOrderDetailRepository Repository => BaseDal;
 
         public PurchaseOrderDetailService(IPurchaseOrderDetailRepository BaseDal) : base(BaseDal)
         {
         }
+
+        public WebResponseContent GetPurchaseOrderInfo(string materielCode)
+        {
+            try
+            {
+                List<Dt_PurchaseOrderDetail> purchaseOrderDetails = BaseDal.QueryData(x => x.MaterielCode == materielCode);
+                List<int> ids = purchaseOrderDetails.Select(x => x.PurchaseOrderId).ToList();
+                List<Dt_PurchaseOrder> purchaseOrders = Db.Queryable<Dt_PurchaseOrder>().Where(x => ids.Contains(x.Id)).ToList();
+                List<string> PurchaseOrderNos = purchaseOrders.Select(x => x.PurchaseOrderNo).ToList();
+                return WebResponseContent.Instance.OK(data: PurchaseOrderNos);
+            }
+            catch (Exception ex)
+            {
+                return WebResponseContent.Instance.Error(ex.Message);
+            }
+        }
     }
 }
diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs"
index 7c1a91f..bd09a5b 100644
--- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs"
+++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_WMSServer/Controllers/Inbound/PurchaseOrderDetailController.cs"
@@ -1,5 +1,7 @@
-锘縰sing Microsoft.AspNetCore.Http;
+锘縰sing Microsoft.AspNetCore.Authorization;
+using Microsoft.AspNetCore.Http;
 using Microsoft.AspNetCore.Mvc;
+using WIDESEA_Core;
 using WIDESEA_Core.BaseController;
 using WIDESEA_IInboundService;
 using WIDESEA_Model.Models;
@@ -16,5 +18,10 @@
         public PurchaseOrderDetailController(IPurchaseOrderDetailService service) : base(service)
         {
         }
+        [HttpPost, HttpGet, Route("GetPurchaseOrderInfo"), AllowAnonymous]
+        public WebResponseContent GetPurchaseOrderInfo(string materielCode)
+        {
+            return Service.GetPurchaseOrderInfo(materielCode);
+        }
     }
 }

--
Gitblit v1.9.3