From 33736f197bd734a2b2e70395d6cc3cc674e89bb4 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期一, 17 十一月 2025 09:17:07 +0800
Subject: [PATCH] 1.生产入库信息查询接口增加是否源单查询字段 2.报表增加MES入库记录删除接口 3.增加存货档案关联工艺查询多存货 4.增加存货档案关联工艺提交多存货 4.通用基础资料中:仓库基础资料接口增加noid(erp中的仓库id)

---
 VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs |   67 +++++++++++++++++++++++++--------
 1 files changed, 50 insertions(+), 17 deletions(-)

diff --git a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
index 248f8f8..f20820a 100644
--- a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
@@ -609,30 +609,47 @@
             var dynamicParams = new DynamicParameters();
             try
             {
-                sql = @"select *  from TK_Wrk_Man where m_po=@erpordercode and status<> 'CLOSED'";
+                sql = @"select *  from TK_Wrk_Man where m_po=@erpordercode and sourceid=@sourceid";
                 dynamicParams.Add("@erpordercode", erpordercode);
+                dynamicParams.Add("@sourceid", erporderid);
                 var data = DapperHelper.selectdata(sql, dynamicParams);
                 if (data.Rows.Count > 0)
                 {
-                    mes.code = "300";
-                    mes.count = 0;
-                    mes.message = "褰撳墠璁㈠崟鏈変笅杈炬湭鍏抽棴鐨凪ES宸ュ崟,璁㈠崟涓嶅厑璁稿叧闂�,璇峰厛鍒犻櫎鎴栧叧闂浉鍏冲伐鍗�!";
-                    mes.data = null;
-                }
-                else
-                {
-                    //鍏抽棴璁㈠崟
-                    sql = @"update  TKimp_Ewo set status='CLOSED' where wo=@wo and id=@erporderid";
+                    // 浣跨敤LINQ鍜宭ambda琛ㄨ揪寮忔潵杞崲wo_code瀛楁鐨勫�间负閫楀彿闅斿紑鐨勫瓧绗︿覆鏁扮粍  
+                    string[] result = data.AsEnumerable().Select(row => "" + row.Field<string>("wo_code") + "").ToArray();
+                    //鍏抽棴宸ュ簭浠诲姟
+                    sql = @"update  TK_Wrk_Step set status='CLOSED',closebeforestatus=status where wo_code in @wocode";
                     list.Add(new
                     {
                         str = sql,
                         parm = new
                         {
-                            wo = erpordercode,
-                            erporderid = erporderid
+                            wocode = result
+                        }
+                    });
+                    //鍏抽棴宸ュ崟
+                    sql = @"update  TK_Wrk_Man set status='CLOSED',closebeforestatus=status where m_po=@erpordercode and sourceid=@sourceid";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            erpordercode = erpordercode,
+                            sourceid = erporderid
                         }
                     });
                 }
+                //鍏抽棴璁㈠崟
+                sql = @"update  TKimp_Ewo set status='CLOSED',closebeforestatus=status where wo=@wo and id=@erporderid";
+                list.Add(new
+                {
+                    str = sql,
+                    parm = new
+                    {
+                        wo = erpordercode,
+                        erporderid = erporderid
+                    }
+                });
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {
@@ -910,7 +927,7 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.route_code,B.default_route,R.name as route_name,A.plan_qty,A.wkshp_code,C.torg_name as wkshp_name,
+                var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.idTopInventory,A.TopInventoryCode,A.TopInventoryName,A.route_code,B.default_route,R.name as route_name,A.plan_qty,A.wkshp_code,C.torg_name as wkshp_name,
                             A.stck_code,D.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,A.saleOrderDeliveryDate,W.saleOrderCode,U.username as lm_user,A.lm_date,A.data_sources,A.isstep,A.clerkuser,
                             B.priuserdefnvc1,B.priuserdefnvc2,B.priuserdefnvc3,B.priuserdefnvc4,B.priuserdefnvc5,B.priuserdefnvc6,A.printcount
                             from TK_Wrk_Man A
@@ -998,7 +1015,7 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.plan_qty,A.wkshp_code,C.torg_name as wkshp_name,
+                var sql = @"select A.id, A.status,A.wotype,A.wo_code,A.materiel_code as partcode,B.partname,B.partspec,A.idTopInventory,A.TopInventoryCode,A.TopInventoryName,A.plan_qty,A.wkshp_code,C.torg_name as wkshp_name,
                             A.stck_code,D.name as stck_name,A.plan_startdate,A.plan_enddate,A.piroque,A.sourceid,A.m_po,A.saleOrderDeliveryDate,W.saleOrderCode,U.username as lm_user,A.lm_date,S.laborbad_qty,S.materielbad_qty,
                             B.priuserdefnvc1,B.priuserdefnvc2,B.priuserdefnvc3,B.priuserdefnvc4,B.priuserdefnvc5,B.priuserdefnvc6
                             from TK_Wrk_Man A
@@ -4663,12 +4680,26 @@
         #endregion
 
         #region[鐢熶骇鍏ュ簱淇℃伅鏌ヨ]
-        public static ToMessage ProductInHouseOrderSearch(string deptno, string saleordercode, string wkshopcode, string erpordercode, string mesordercode, string partcode, string partname, string partspec)
+        public static ToMessage ProductInHouseOrderSearch(string issouceorder, string deptno, string saleordercode, string wkshopcode, string erpordercode, string mesordercode, string partcode, string partname, string partspec)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (issouceorder != "" && issouceorder != null)
+                {
+                    switch (issouceorder)
+                    {
+                        case "Y":
+                            search += " and AA.m_po<>'' ";
+                            break;
+                        case "N":
+                            search += " and AA.m_po='' ";
+                            break;
+                        default:
+                            break;
+                    }
+                }
                 if (deptno != "" && deptno != null)
                 {
                     search += "and AA.dept_code=@deptno ";
@@ -4714,7 +4745,8 @@
                 var sql = @"select *   from(
                               select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
                               A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,COALESCE(K.noid, E.stck_id) as stockid,COALESCE(K.code, E.stck_code) as stockcode,k.name as stockname,E.dept_id,E.dept_code,
-                              E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,E.voucherdate   
+                              E.saleOrderqty,E.qty,M.plan_qty,A.good_qty,isnull(A.inhouseqty,0) as inhouseqty,A.good_qty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,
+                              (case when E.voucherdate is null then M.lm_date else E.voucherdate end) as voucherdate 
                               from  TK_Wrk_Record A
                               inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
                               inner join TK_Wrk_Man M on S.wo_code=M.wo_code
@@ -4727,7 +4759,8 @@
                               union all
                               select A.inbarcode,E.saleOrderid,isnull(E.saleOrderCode,'') as saleOrderCode,E.saleOrderDetailId,E.woid as mpoid,M.m_po,E.sbid,M.id as wo_id,A.wo_code,E.materiel_id,P.partcode,P.partname,P.partspec,E.unitid,E.unitcode,E.unitname,
                               A.step_code,T.stepname,M.wkshp_code,O.torg_name as wkshp_name,COALESCE(K.noid, E.stck_id) as stockid,COALESCE(K.code, E.stck_code) as stockcode,k.name as stockname,E.dept_id,E.dept_code,
-                              E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,E.voucherdate   
+                              E.saleOrderqty,E.qty,M.plan_qty,A.sqty as sqty,isnull(A.inhouseqty,0) as inhouseqty,A.sqty-isnull(A.inhouseqty,0) as stinhouseqty,M.lm_date,A.style,
+                              (case when E.voucherdate is null then M.lm_date else E.voucherdate end) as voucherdate 
                               from  TK_Wrk_OutRecord A
                               inner join TK_Wrk_Step S on A.wo_code=S.wo_code and A.step_code=S.step_code
                               inner join TK_Wrk_Man M on S.wo_code=M.wo_code

--
Gitblit v1.9.3