From cf2dffc61f8c8734dc611ef9bd0eccc0bb3806ae Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期一, 06 五月 2024 16:04:59 +0800
Subject: [PATCH] 1.ERP订单、MES工单列表新增顶级物料编码、顶级物料名称 2.ERP订单派发接口增加顶级物料id、顶级物料编码、顶级物料名称

---
 VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs |  304 ++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 267 insertions(+), 37 deletions(-)

diff --git a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
index fd29265..fcc0cb5 100644
--- a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
@@ -92,7 +92,7 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select A.id, A.status,A.wo,A.materiel_code as partcode,B.partname,B.partspec,A.qty,A.relse_qty,A.wkshp_code,C.torg_name as wkshp_name,
+                var sql = @"select A.id, A.status,A.wo,A.materiel_code as partcode,B.partname,B.partspec,A.idTopInventory,A.TopInventoryCode,A.TopInventoryName,A.qty,A.relse_qty,A.wkshp_code,C.torg_name as wkshp_name,
                             A.stck_code,D.name as stck_name,A.saleOrderCode,A.saleOrderDeliveryDate,A.planstartdate,A.planenddate,U.username as createuser,A.createdate,A.sbid 
                             from TKimp_Ewo A
                             left join TMateriel_Info B on A.materiel_code=B.partcode
@@ -118,7 +118,7 @@
         #endregion
 
         #region[ERP璁㈠崟涓嬭揪]
-        public static ToMessage MarkSaveErpOrder(string erporderid, string sbid, string erpordercode, string saleordercode, string partcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate, User us)
+        public static ToMessage MarkSaveErpOrder(string erporderid, string sbid, string erpordercode, string saleordercode, string partcode, string wkshopcode, string warehousecode, string erpqty, string markqty, string ordernum, string relse_qty, string saleOrderDeliveryDate,string idTopInventory,string TopInventoryCode,string TopInventoryName, User us)
         {
             var sql = "";
             List<object> list = new List<object>();
@@ -156,7 +156,8 @@
                     }
                     if (i == Convert.ToInt32(ordernum))  //鏈�鍚庝竴鍗曟椂
                     {
-                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep)";
+                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep,idTopInventory,TopInventoryCode,TopInventoryName) 
+                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@idTopInventory,@TopInventoryCode,@TopInventoryName)";
                         list.Add(new
                         {
                             str = sql,
@@ -177,7 +178,10 @@
                                 saleOrderCode = saleordercode,
                                 saleOrderDeliveryDate = Convert.ToDateTime(saleOrderDeliveryDate),
                                 data_sources = "ERP",
-                                isstep = "N"  //鏄惁鍏宠仈宸ュ簭
+                                isstep = "N",  //鏄惁鍏宠仈宸ュ簭
+                                idTopInventory=idTopInventory,
+                                TopInventoryCode=TopInventoryCode,
+                                TopInventoryName=TopInventoryName
                             }
                         });
                         sumqty = sumqty + (decimal.Parse(markqty) - sumqty);
@@ -185,7 +189,8 @@
                     else
                     {
 
-                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep)";
+                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep,idTopInventory,TopInventoryCode,TopInventoryName) 
+                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@idTopInventory,@TopInventoryCode,@TopInventoryName)";
                         list.Add(new
                         {
                             str = sql,
@@ -206,7 +211,10 @@
                                 saleOrderCode = saleordercode,
                                 saleOrderDeliveryDate = Convert.ToDateTime(saleOrderDeliveryDate),
                                 data_sources = "ERP",
-                                isstep = "N"//鏄惁鍏宠仈宸ュ簭
+                                isstep = "N",//鏄惁鍏宠仈宸ュ簭
+                                idTopInventory = idTopInventory,
+                                TopInventoryCode = TopInventoryCode,
+                                TopInventoryName = TopInventoryName
                             }
                         });
                     }
@@ -287,7 +295,7 @@
                 {
                     string erpordercode = group.erpordercode;
                     int count = 1;
-                    foreach (var model in obj.Where(s => s.erpordercode==erpordercode).ToList())
+                    foreach (var model in obj.Where(s => s.erpordercode == erpordercode).ToList())
                     {
                         //鑾峰彇褰撳墠鏈�澶у伐鍗曞彿
                         sql = @"select isnull(max(cast(substring(wo_code,charindex('_',wo_code)+1,len(wo_code)-charindex('_',wo_code)) as numeric)),0) as worknumb   
@@ -298,7 +306,8 @@
                         string wo = model.erpordercode + "_" + (num + count);
                         result += wo.ToString() + ",";
                         //鍐欏叆宸ュ崟琛�
-                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep)";
+                        sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,stck_code,sbid,materiel_code,sourceid,m_po,lm_user,lm_date,saleOrderCode,saleOrderDeliveryDate,data_sources,isstep,idTopInventory,TopInventoryCode,TopInventoryName) 
+                              values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@idTopInventory,@TopInventoryCode,@TopInventoryName)";
                         list.Add(new
                         {
                             str = sql,
@@ -319,7 +328,10 @@
                                 saleOrderCode = model.saleordercode,
                                 saleOrderDeliveryDate = Convert.ToDateTime(model.saleOrderDeliveryDate),
                                 data_sources = "ERP",
-                                isstep = "N"  //鏄惁鍏宠仈宸ュ簭
+                                isstep = "N",  //鏄惁鍏宠仈宸ュ簭
+                                idTopInventory = model.idTopInventory,
+                                TopInventoryCode = model.TopInventoryCode,
+                                TopInventoryName = model.TopInventoryName
                             }
                         });
 
@@ -380,30 +392,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)
                 {
@@ -419,6 +448,86 @@
                     mes.code = "300";
                     mes.count = 0;
                     mes.message = "璁㈠崟鍏抽棴澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[ERP璁㈠崟鍙嶅叧闂璢
+        public static ToMessage ReverseClosedErpOrder(string erporderid, string erpordercode, User us)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+
+                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)
+                {
+                    // 浣跨敤LINQ鍜宭ambda琛ㄨ揪寮忔潵杞崲wo_code瀛楁鐨勫�间负閫楀彿闅斿紑鐨勫瓧绗︿覆鏁扮粍  
+                    string[] result = data.AsEnumerable().Select(row => "" + row.Field<string>("wo_code") + "").ToArray();
+                    //鍏抽棴宸ュ簭浠诲姟
+                    sql = @"update  TK_Wrk_Step set status=closebeforestatus where wo_code in @ordercode";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            ordercode = result
+                        }
+                    });
+                    //鍏抽棴宸ュ崟
+                    sql = @"update  TK_Wrk_Man set status=closebeforestatus where m_po=@erpordercode and sourceid=@sourceid";
+                    list.Add(new
+                    {
+                        str = sql,
+                        parm = new
+                        {
+                            erpordercode = erpordercode,
+                            sourceid = erporderid
+                        }
+                    });
+                }
+                //鍙嶅叧闂鍗�
+                sql = @"update  TKimp_Ewo set status=closebeforestatus where wo=@wo and id=@erporderid";
+                list.Add(new
+                {
+                    str = sql,
+                    parm = new
+                    {
+                        wo = erpordercode,
+                        erporderid = erporderid
+                    }
+                });
+
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    //鍐欏叆鎿嶄綔璁板綍琛�
+                    LogHelper.DbOperateLog(us.usercode, "鍙嶅叧闂�", "鍙嶅叧闂簡璁㈠崟:" + erpordercode, us.usertype);
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.message = "璁㈠崟鍙嶅叧闂垚鍔�!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.message = "璁㈠崟鍙嶅叧闂け璐�!";
                     mes.data = null;
                 }
             }
@@ -539,7 +648,7 @@
                 }
                 if (saleordercode != "" && saleordercode != null)
                 {
-                    search += "and W.saleOrderCode like '%'+@saleordercode+'%' ";
+                    search += "and A.saleOrderCode like '%'+@saleordercode+'%' ";
                     dynamicParams.Add("@saleordercode", saleordercode);
                 }
                 if (ordertype != "" && ordertype != null)
@@ -579,8 +688,8 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 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,
-                            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
+                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,A.saleOrderCode,U.username as lm_user,A.lm_date,A.data_sources,A.isstep
                             from TK_Wrk_Man A
                             left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code and A.sbid=W.sbid
                             left join TMateriel_Info B on A.materiel_code=B.partcode
@@ -630,7 +739,7 @@
                 }
                 if (saleordercode != "" && saleordercode != null)
                 {
-                    search += "and W.saleOrderCode like '%'+@saleordercode+'%' ";
+                    search += "and A.saleOrderCode like '%'+@saleordercode+'%' ";
                     dynamicParams.Add("@saleordercode", saleordercode);
                 }
                 if (partcode != "" && partcode != null)
@@ -665,8 +774,8 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 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,
-                            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
+                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,A.saleOrderCode,U.username as lm_user,A.lm_date,S.laborbad_qty,S.materielbad_qty
                             from TK_Wrk_Man A
                             left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code and A.sbid=W.sbid
                             left join (select wo_code,isnull(sum(laborbad_qty),0) as laborbad_qty,isnull(sum(materielbad_qty),0) as materielbad_qty from  TK_Wrk_Step where (laborbad_qty+materielbad_qty)>0 group by wo_code) S on A.wo_code=S.wo_code
@@ -799,8 +908,8 @@
                 if (operType == "Add")
                 {
                     //鍐欏叆宸ュ崟琛�
-                    sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,lm_user,lm_date,materiel_code,sourceid,m_po,saleOrderDeliveryDate,piroque,isaps,data_sources,isstep)
-                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@lm_user,@lm_date,@materiel_code,@sourceid,@m_po,@saleOrderDeliveryDate,@orderlev,@isaps,@data_sources,@isstep)";
+                    sql = @"insert into TK_Wrk_Man(wo_code,wotype,status,wkshp_code,plan_qty,lm_user,lm_date,materiel_code,sourceid,m_po,saleOrderCode,saleOrderDeliveryDate,piroque,isaps,data_sources,isstep)
+                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@lm_user,@lm_date,@materiel_code,@sourceid,@m_po,@saleOrderCode,@saleOrderDeliveryDate,@orderlev,@isaps,@data_sources,@isstep)";
                     list.Add(new
                     {
                         str = sql,
@@ -816,6 +925,7 @@
                             materiel_code = json.partcode,
                             sourceid = json.sourceid == "" ? null : json.sourceid, //鏃犳簮鍗曟椂璧嬪�糔ULL
                             m_po = json.sourcewo,
+                            saleOrderCode=json.saleordercode,
                             saleOrderDeliveryDate = json.deliverydate,
                             orderlev = "3",//浼樺厛绾э細鐗圭骇锛�1锛� 绱ф�ワ紙2锛� 姝e父锛�3锛�
                             isaps = "N", //鏄惁鎺掍骇,榛樿N  Y=鏄�   N=鍚�
@@ -868,7 +978,7 @@
                 {
                     //淇敼宸ュ崟琛�
                     sql = @"update TK_Wrk_Man set wotype=@wotype,wkshp_code=@wkshp_code,plan_qty=@plan_qty,lm_user=@lm_user,lm_date=@lm_date,
-                            materiel_code=@materiel_code,sourceid=@sourceid,m_po=@m_po,saleOrderDeliveryDate=@saleOrderDeliveryDate,isstep=@isstep
+                            materiel_code=@materiel_code,sourceid=@sourceid,m_po=@m_po,saleOrderCode=@saleOrderCode,saleOrderDeliveryDate=@saleOrderDeliveryDate,isstep=@isstep
                             where wo_code=@wo_code";
                     list.Add(new
                     {
@@ -882,6 +992,7 @@
                             materiel_code = json.partcode,
                             sourceid = json.sourceid == "" ? null : json.sourceid, //鏃犳簮鍗曟椂璧嬪�糔ULL
                             m_po = json.sourcewo,
+                            saleOrderCode=json.saleordercode,
                             saleOrderDeliveryDate = json.deliverydate,
                             lm_user = us.usercode,
                             lm_date = DateTime.Now.ToString(),
@@ -1211,7 +1322,7 @@
                 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,
                             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
                             from TK_Wrk_Man A
-                            left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code
+                            left join TKimp_Ewo W on A.m_po=W.wo and A.materiel_code=W.materiel_code and A.sourceid=W.id
                             left join TMateriel_Info B on A.materiel_code=B.partcode
                             left join TOrganization C on A.wkshp_code=C.torg_code
                             left join TSecStck D on A.stck_code=D.code 
@@ -1246,10 +1357,10 @@
                 for (int i = 0; i < wocodelist.Length; i++)
                 {
                     //鍏抽棴宸ュ崟瀵瑰簲宸ュ簭浠诲姟
-                    sql = @"update TK_Wrk_Step set status='CLOSED'  where wo_code in @wocode";
+                    sql = @"update TK_Wrk_Step set status='CLOSED',closebeforestatus=status  where wo_code in @wocode";
                     list.Add(new { str = sql, parm = new { wocode = wocodelist } });
                     //鍥炲啓宸ュ崟琛ㄧ姸鎬佷负(鍏抽棴)
-                    sql = @"update TK_Wrk_Man set status='CLOSED',closeuser=@username,closedate=@closedate  where wo_code in @wocode";
+                    sql = @"update TK_Wrk_Man set status='CLOSED',closebeforestatus=status,closeuser=@username,closedate=@closedate  where wo_code in @wocode";
                     list.Add(new { str = sql, parm = new { wocode = wocodelist, username = us.usercode, closedate = DateTime.Now.ToString() } });
                 }
                 bool aa = DapperHelper.DoTransaction(list);
@@ -1267,6 +1378,52 @@
                     mes.code = "300";
                     mes.count = 0;
                     mes.message = "宸ュ崟鍏抽棴澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[MES宸ュ崟鎵归噺鍙嶅叧闂彁浜
+        public static ToMessage MesOrderBitchReverseClosedSeave(User us, string[] wocodelist)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                for (int i = 0; i < wocodelist.Length; i++)
+                {
+                    //鍏抽棴宸ュ崟瀵瑰簲宸ュ簭浠诲姟
+                    sql = @"update TK_Wrk_Step set status=closebeforestatus where wo_code in @wocode";
+                    list.Add(new { str = sql, parm = new { wocode = wocodelist } });
+                    //鍥炲啓宸ュ崟琛ㄧ姸鎬佷负(鍏抽棴)
+                    sql = @"update TK_Wrk_Man set status=closebeforestatus,closeuser=@username,closedate=@closedate  where wo_code in @wocode";
+                    list.Add(new { str = sql, parm = new { wocode = wocodelist, username = us.usercode, closedate = DateTime.Now.ToString() } });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    //鍐欏叆鎿嶄綔璁板綍琛�
+                    LogHelper.DbOperateLog(us.usercode, "鍙嶅叧闂�", "鍏抽棴浜嗗伐鍗�:" + string.Join(",", wocodelist), us.usertype);
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.message = "宸ュ崟鍙嶅叧闂垚鍔�!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.message = "宸ュ崟鍙嶅叧闂け璐�!";
                     mes.data = null;
                 }
             }
@@ -3394,12 +3551,17 @@
 
 
         #region[鐢熶骇鎵ц,鎶ュ伐瀹℃牳鍒楄〃鏁版嵁鏌ヨ鎺ュ彛]
-        public static ToMessage MesOrderStepReportVerifySearch(string wkshopcode, string wo_code, string partnumber, string partname, string partspec, string stepname, string reportuser, string reportdateopendate, string reportdateclosedate, int startNum, int endNum, string prop, string order)
+        public static ToMessage MesOrderStepReportVerifySearch(string reviewstatus, string wkshopcode, string wo_code, string partnumber, string partname, string partspec, string stepname, string reportuser, string reportdateopendate, string reportdateclosedate, int startNum, int endNum, string prop, string order)
         {
             var dynamicParams = new DynamicParameters();
             string search = "";
             try
             {
+                if (reviewstatus != "" && reviewstatus != null)
+                {
+                    search += "and AA.verify=@reviewstatus ";
+                    dynamicParams.Add("@reviewstatus", reviewstatus);
+                }
                 if (wkshopcode != "" && wkshopcode != null)
                 {
                     search += "and AA.wkshp_code=@wkshopcode ";
@@ -3535,9 +3697,77 @@
                 bool aa = DapperHelper.DoTransaction(list);
                 if (aa)
                 {
-                    //鍐欏叆鎿嶄綔璁板綍琛�
-                    LogHelper.DbOperateLog(us.usercode, "鎶ュ伐瀹℃牳", "鑷埗鎶ュ伐璁板綍id:" + string.Join(",", json.zdata), us.usertype);
-                    LogHelper.DbOperateLog(us.usercode, "鎶ュ伐瀹℃牳", "澶栧崗鏀舵枡璁板綍id:" + string.Join(",", json.wdata), us.usertype);
+                    if (json.zdata.Count > 0)
+                    {
+                        //鍐欏叆鎿嶄綔璁板綍琛�
+                        LogHelper.DbOperateLog(us.usercode, "鎶ュ伐瀹℃牳", "鑷埗鎶ュ伐璁板綍id:" + string.Join(",", json.zdata), us.usertype);
+                    }
+                    if (json.wdata.Count > 0)
+                    {
+                        LogHelper.DbOperateLog(us.usercode, "鎶ュ伐瀹℃牳", "澶栧崗鏀舵枡璁板綍id:" + string.Join(",", json.wdata), us.usertype);
+                    }
+                    mes.code = "200";
+                    mes.count = 0;
+                    mes.message = "瀹℃牳鎴愬姛!";
+                    mes.data = null;
+                }
+                else
+                {
+                    mes.code = "300";
+                    mes.count = 0;
+                    mes.message = "瀹℃牳澶辫触!";
+                    mes.data = null;
+                }
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
+        #region[鐢熶骇鎵ц,鎶ュ伐寮冨鏁版嵁鎻愪氦]
+        public static ToMessage MesOrderStepReportNotVerifySeave(User us, string id, string steptype)
+        {
+            var sql = "";
+            List<object> list = new List<object>();
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                if (steptype == "Z")//鑷埗宸ュ簭
+                {
+                    //鍥炲啓鎶ュ伐璁板綍涓昏〃瀹℃牳鐘舵�併�佸鏍镐汉銆佸鏍告椂闂�
+                    sql = @"update TK_Wrk_Record set verify='N',verifyuser=@verifyuser,verifydate=@verifydate  where id=@id";
+                    list.Add(new { str = sql, parm = new { verifyuser = "", verifydate = "", id = id } });
+                    //鍥炲啓鎶ュ伐璁板綍瀛愯〃瀹℃牳鐘舵�併�佸鏍镐汉銆佸鏍告椂闂�
+                    sql = @"update TK_Wrk_RecordSub set verify='N',verifyuser=@verifyuser,verifydate=@verifydate  where m_id=@id";
+                    list.Add(new { str = sql, parm = new { verifyuser = "", verifydate = "", id = id } });
+                }
+                if (steptype == "W")//澶栧崗宸ュ簭
+                {
+                    //鍥炲啓澶栧崗璁板綍涓昏〃瀹℃牳鐘舵�併�佸鏍镐汉銆佸鏍告椂闂�
+                    sql = @"update TK_Wrk_OutRecord set verify='N',verifyuser=@verifyuser,verifydate=@verifydate  where id=@id";
+                    list.Add(new { str = sql, parm = new { verifyuser = "", verifydate = "", id = id } });
+                    //鍥炲啓澶栧崗璁板綍瀛愯〃瀹℃牳鐘舵�併�佸鏍镐汉銆佸鏍告椂闂�
+                    sql = @"update TK_Wrk_OutRecordSub set verify='N',verifyuser=@verifyuser,verifydate=@verifydate  where m_id=@id";
+                    list.Add(new { str = sql, parm = new { verifyuser = "", verifydate = "", id = id } });
+                }
+                bool aa = DapperHelper.DoTransaction(list);
+                if (aa)
+                {
+                    if (steptype == "Z")
+                    {
+                        //鍐欏叆鎿嶄綔璁板綍琛�
+                        LogHelper.DbOperateLog(us.usercode, "鎶ュ伐寮冨", "鑷埗鎶ュ伐璁板綍id:" + string.Join(",", id), us.usertype);
+                    }
+                    if (steptype == "W")
+                    {
+                        LogHelper.DbOperateLog(us.usercode, "鎶ュ伐寮冨", "澶栧崗鏀舵枡璁板綍id:" + string.Join(",", id), us.usertype);
+                    }
                     mes.code = "200";
                     mes.count = 0;
                     mes.message = "瀹℃牳鎴愬姛!";

--
Gitblit v1.9.3