From 807f6688a99d9958fedf3e9be2bba8c9afd78969 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期四, 21 十一月 2024 15:59:06 +0800
Subject: [PATCH] 1.ERP订单查看子件信息接口 2.订单下达、批量下达、订单列表、工单列表、报工列表等增加字段(总量、总料) 3.增加订单导出功能、修改工单导出接口

---
 VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs            |   20 +++
 VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs            |  192 +++++++++++++++++++++++++++++++++-----
 VueWebCoreApi/Models/ErpOrder/ErpOrderBatch.cs   |    8 +
 VueWebCoreApi/Controllers/WorkOrderController.cs |   68 +++++++++++++
 VueWebCoreApi/Models/WorkData/WorkList.cs        |    8 +
 5 files changed, 267 insertions(+), 29 deletions(-)

diff --git a/VueWebCoreApi/Controllers/WorkOrderController.cs b/VueWebCoreApi/Controllers/WorkOrderController.cs
index 10738d4..cd12a4e 100644
--- a/VueWebCoreApi/Controllers/WorkOrderController.cs
+++ b/VueWebCoreApi/Controllers/WorkOrderController.cs
@@ -72,6 +72,29 @@
         }
         #endregion
 
+        #region[ERP璁㈠崟瀛愪欢淇℃伅鏌ヨ]
+        /// <summary>
+        /// ERP璁㈠崟瀛愪欢淇℃伅鏌ヨ
+        /// </summary>
+        /// <param name="MoDID">鐢熶骇璁㈠崟鏄庣粏ID</param>
+        /// <param name="page">椤电爜</param>
+        /// <param name="rows">姣忛〉鏄剧ず鏉℃暟</param>
+        /// <param name="prop">鎺掑簭瀛楁</param>
+        /// <param name="order">鎺掑簭瑙勫垯</param>
+        /// <returns></returns>
+        [Route(template: "ErpOrderSubItemSearch")]
+        [HttpGet]
+        public JsonResult ErpOrderSubItemSearch(string MoDID = null, int page = 0, int rows = 0, string prop = null, string order = null)
+        {
+            var token = HttpContext.Request.Headers["Token"].ToString();
+            User us = JwtTools.Denocode(token.ToString());
+            int startNum = rows * (page - 1) + 1;  //璧峰璁板綍rowNum
+            int endNum = rows * page;   //缁撴潫璁板綍 rowNum
+            mes = WorkOrderBLL.ErpOrderSubItemSearch(MoDID,startNum, endNum, prop, order);
+            return Json(mes);
+        }
+        #endregion
+
         #region[ERP璁㈠崟涓嬭揪]
         /// <summary>
         /// ERP璁㈠崟涓嬭揪
@@ -101,7 +124,9 @@
             string customercode = obj["customercode"].ToString(); //瀹㈡埛缂栫爜
             string customername = obj["customername"].ToString(); //瀹㈡埛鍚嶇О
             string colour = obj["colour"].ToString(); //棰滆壊
-            mes = WorkOrderBLL.MarkSaveErpOrder(erporderid, sbid, erpordercode, saleordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, clerkuser, injectnumber,customercode,customername,colour, us);
+            string weight = obj["weight"].ToString(); //閲嶉噺
+            string totalnumber = obj["totalnumber"].ToString(); //鎬绘枡
+            mes = WorkOrderBLL.MarkSaveErpOrder(erporderid, sbid, erpordercode, saleordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, clerkuser, injectnumber,customercode,customername,colour,weight,totalnumber,us);
             return Json(mes);
         }
         #endregion
@@ -154,6 +179,47 @@
         }
         #endregion
 
+        #region[ERP璁㈠崟瀵煎嚭]
+        /// <summary>
+        /// ERP璁㈠崟瀵煎嚭
+        /// </summary>
+        /// <param name="erporderstus">璁㈠崟鐘舵�佺爜</param>
+        /// <param name="wkshopcode">杞﹂棿缂栫爜</param>
+        /// <param name="erpordercode">璁㈠崟缂栧彿</param>
+        /// <param name="saleordercode">閿�鍞崟鍙�</param>
+        /// <param name="partcode">浜у搧缂栫爜</param>
+        /// <param name="partname">浜у搧鍚嶇О</param>
+        /// <param name="partspec">浜у搧瑙勬牸</param>
+        /// <param name="paystartdate">棰勮寮�宸ユ椂闂�</param>
+        /// <param name="payenddate">棰勮瀹屽伐鏃堕棿</param>
+        /// <param name="creatuser">鍒涘缓浜哄憳</param>
+        /// <returns></returns>
+        [Route(template: "ErpOrderExcelSearch")]
+        [HttpGet]
+        public JsonResult ErpOrderExcelSearch(string erporderstus = null, string wkshopcode = null, string erpordercode = null, string saleordercode = null, string partcode = null, string partname = null, string partspec = null, string paystartdate = null, string payenddate = null, string creatuser = null)
+        {
+            var token = HttpContext.Request.Headers["Token"].ToString();
+            User us = JwtTools.Denocode(token.ToString());
+            string paydatestartdate = "";  //棰勮寮�宸ュ紑濮嬫椂闂�
+            string paydateenddate = "";    //棰勮寮�宸ョ粨鏉熸椂闂�
+            string paydatestartdate1 = "";  //棰勮瀹屽伐寮�濮嬫椂闂�
+            string paydateenddate2 = "";    //棰勮瀹屽伐缁撴潫鏃堕棿
+            if (paystartdate != "" && paystartdate != null)
+            {
+                paydatestartdate = paystartdate.Split('~')[0].ToString();
+                paydateenddate = paystartdate.Split('~')[1].ToString();
+            }
+            if (payenddate != "" && payenddate != null)
+            {
+                paydatestartdate1 = payenddate.Split('~')[0].ToString();
+                paydateenddate2 = payenddate.Split('~')[1].ToString();
+            }
+            mes = WorkOrderBLL.ErpOrderExcelSearch(erporderstus, wkshopcode, erpordercode, saleordercode, partcode, partname, partspec, paydatestartdate, paydateenddate, paydatestartdate1, paydateenddate2, creatuser);
+            return Json(mes);
+        }
+        #endregion
+
+
 
         #region[MES宸ュ崟鏌ヨ]
         /// <summary>
diff --git a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
index d811d0c..36a2577 100644
--- a/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
+++ b/VueWebCoreApi/DLL/BLL/WorkOrderBLL.cs
@@ -23,10 +23,17 @@
         }
         #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,string clerkuser,string injectnumber,string customercode,string customername,string colour, User us)
+        #region[ERP璁㈠崟瀛愪欢淇℃伅鏌ヨ]
+        public static ToMessage ErpOrderSubItemSearch(string MoDID, int startNum, int endNum, string prop, string order)
         {
-            return WorkOrderDAL.MarkSaveErpOrder(erporderid, sbid, erpordercode, saleordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, clerkuser, injectnumber, customercode, customername, colour, us);
+            return WorkOrderDAL.ErpOrderSubItemSearch(MoDID,startNum,endNum,prop,order);
+        }
+        #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,string clerkuser,string injectnumber,string customercode,string customername,string colour,string weight,string totalnumber, User us)
+        {
+            return WorkOrderDAL.MarkSaveErpOrder(erporderid, sbid, erpordercode, saleordercode, partcode, wkshopcode, warehousecode, erpqty, markqty, ordernum, relse_qty, saleOrderDeliveryDate, clerkuser, injectnumber, customercode, customername, colour,weight,totalnumber, us);
         }
         #endregion
 
@@ -51,6 +58,13 @@
         }
         #endregion
 
+        #region[ERP璁㈠崟瀵煎嚭]
+        public static ToMessage ErpOrderExcelSearch(string erporderstus, string wkshopcode, string erpordercode, string saleordercode, string partcode, string partname, string partspec, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser)
+        {
+            return WorkOrderDAL.ErpOrderExcelSearch(erporderstus, wkshopcode, erpordercode, saleordercode, partcode, partname, partspec, paydatestartdate, paydateenddate, paydatestartdate1, paydateenddate2, creatuser);
+        }
+        #endregion
+
 
 
         #region[MES宸ュ崟鏌ヨ]
diff --git a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
index ef203d9..478c69d 100644
--- a/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
+++ b/VueWebCoreApi/DLL/DAL/WorkOrderDAL.cs
@@ -94,7 +94,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,
                             A.stck_code,D.name as stck_name,A.saleOrderCode,A.saleOrderDeliveryDate,A.planstartdate,A.planenddate,U.username as createuser,A.createdate,A.sbid,A.clerkuser,
-                            A.injectnumber,A.customercode,A.customername,A.colour
+                            A.injectnumber,A.customercode,A.customername,A.colour,A.weight,A.totalnumber
                             from TKimp_Ewo A
                             left join TMateriel_Info B on A.materiel_code=B.partcode
                             left join TOrganization C on A.wkshp_code=C.torg_code
@@ -118,8 +118,41 @@
         }
         #endregion
 
+        #region[ERP璁㈠崟瀛愪欢淇℃伅鏌ヨ]
+        public static ToMessage ErpOrderSubItemSearch(string MoDID, int startNum, int endNum, string prop, string order)
+        {
+            var dynamicParams = new DynamicParameters();
+            try
+            {
+                dynamicParams.Add("@MoDID", MoDID);
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select SortSeq,InvCode as partcode,M.partname,M.partspec,S.WhCode as stockcode,K.name as stockname,
+                            M.idunit as unitcode,T.name as unitname,S.BaseQtyN,S.BaseQtyD,S.CompScrap,S.BaseQtyN*(1+S.CompScrap/100) as exqty,S.Qty
+                            from TKimp_EwoSubItem S
+                            left join TMateriel_Info M on S.InvCode=M.partcode
+                            left join TSecStck K on S.WhCode=K.code
+                            left join TUnit T on M.idunit=T.code
+                            where S.MoDId=@MoDID";
+                var data = DapperHelper.GetPageList<object>(sql, dynamicParams, prop, order, startNum, endNum, out total);
+                mes.code = "200";
+                mes.message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = data.ToList();
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #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,string clerkuser,string injectnumber,string customercode,string customername,string colour, 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 clerkuser,string injectnumber,string customercode,string customername,string colour,string weight,string totalnumber, User us)
         {
             var sql = "";
             List<object> list = new List<object>();
@@ -157,7 +190,7 @@
                     }
                     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,clerkuser,injectnumber,customercode,customername,colour) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour)";
+                        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,clerkuser,injectnumber,customercode,customername,colour,weight,totalnumber) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour,@weight,@totalnumber)";
                         list.Add(new
                         {
                             str = sql,
@@ -183,7 +216,9 @@
                                 injectnumber=injectnumber,//娉ㄥ鏈哄彿
                                 customercode=customercode,//瀹㈡埛缂栫爜
                                 customername=customername,//瀹㈡埛鍚嶇О
-                                colour=colour //棰滆壊
+                                colour=colour, //棰滆壊
+                                weight = weight, //閲嶉噺
+                                totalnumber = totalnumber //鎬绘枡
                             }
                         });
                         sumqty = sumqty + (decimal.Parse(markqty) - sumqty);
@@ -191,7 +226,7 @@
                     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,clerkuser,injectnumber,customercode,customername,colour) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour)";
+                        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,clerkuser,injectnumber,customercode,customername,colour,weight,totalnumber) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour,@weight,@totalnumber)";
                         list.Add(new
                         {
                             str = sql,
@@ -217,7 +252,9 @@
                                 injectnumber = injectnumber,//娉ㄥ鏈哄彿
                                 customercode = customercode,//瀹㈡埛缂栫爜
                                 customername = customername,//瀹㈡埛鍚嶇О
-                                colour = colour //棰滆壊
+                                colour = colour, //棰滆壊
+                                weight = weight, //閲嶉噺
+                                totalnumber = totalnumber //鎬绘枡
                             }
                         });
                     }
@@ -309,7 +346,7 @@
                         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,clerkuser,injectnumber,customercode,customername,colour) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour)";
+                        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,clerkuser,injectnumber,customercode,customername,colour,weight,totalnumber) values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@stck_code,@sbid,@materiel_code,@sourceid,@m_po,@username,@CreateDate,@saleOrderCode,@saleOrderDeliveryDate,@data_sources,@isstep,@clerkuser,@injectnumber,@customercode,@customername,@colour,@weight,@totalnumber)";
                         list.Add(new
                         {
                             str = sql,
@@ -335,7 +372,9 @@
                                 injectnumber = model.injectnumber,//娉ㄥ鏈哄彿
                                 customercode = model.customercode,//瀹㈡埛缂栫爜
                                 customername = model.customername,//瀹㈡埛鍚嶇О
-                                colour = model.colour //棰滆壊
+                                colour = model.colour, //棰滆壊
+                                weight=model.weight,//鎬婚噺
+                                totalnumber=model.totalnumber //鎬绘枡
                             }
                         });
 
@@ -526,6 +565,100 @@
         }
         #endregion
 
+        #region[ERP璁㈠崟瀵煎嚭]
+        public static ToMessage ErpOrderExcelSearch(string erporderstus, string wkshopcode, string erpordercode, string saleordercode, string partcode, string partname, string partspec, string paydatestartdate, string paydateenddate, string paydatestartdate1, string paydateenddate2, string creatuser)
+        {
+            var dynamicParams = new DynamicParameters();
+            string search = "";
+            try
+            {
+                if (erporderstus != "" && erporderstus != null)
+                {
+                    search += "and A.status=@erporderstus ";
+                    dynamicParams.Add("@erporderstus", erporderstus);
+                }
+                if (wkshopcode != "" && wkshopcode != null)
+                {
+                    search += "and A.wkshp_code=@wkshopcode ";
+                    dynamicParams.Add("@wkshopcode", wkshopcode);
+                }
+                if (erpordercode != "" && erpordercode != null)
+                {
+                    search += "and A.wo like '%'+@erpordercode+'%' ";
+                    dynamicParams.Add("@erpordercode", erpordercode);
+                }
+                if (saleordercode != "" && saleordercode != null)
+                {
+                    search += "and A.saleOrderCode like '%'+@saleordercode+'%' ";
+                    dynamicParams.Add("@saleordercode", saleordercode);
+                }
+                if (partcode != "" && partcode != null)
+                {
+                    search += "and A.materiel_code like '%'+@partcode+'%' ";
+                    dynamicParams.Add("@partcode", partcode);
+                }
+                if (partname != "" && partname != null)
+                {
+                    search += "and B.partname like '%'+@partname+'%' ";
+                    dynamicParams.Add("@partname", partname);
+                }
+                if (partspec != "" && partspec != null)
+                {
+                    search += "and B.partspec like '%'+@partspec+'%' ";
+                    dynamicParams.Add("@partspec", partspec);
+                }
+                if (paydatestartdate != "" && paydatestartdate != null)
+                {
+                    search += "and A.planstartdate between @paydatestartdate and @paydateenddate ";
+                    dynamicParams.Add("@paydatestartdate", paydatestartdate + " 00:00:00");
+                    dynamicParams.Add("@paydateenddate", paydateenddate + " 23:59:59");
+                }
+                if (paydatestartdate1 != "" && paydatestartdate1 != null)
+                {
+                    search += "and A.planenddate between @paydatestartdate1 and @paydateenddate2 ";
+                    dynamicParams.Add("@paydatestartdate1", paydatestartdate1);
+                    dynamicParams.Add("@paydateenddate2", paydateenddate2 + " 23:59:59");
+                }
+                if (creatuser != "" && creatuser != null)
+                {
+                    search += "and U.username like '%'+@creatuser+'%' ";
+                    dynamicParams.Add("@creatuser", creatuser);
+                }
+
+                if (search == "")
+                {
+                    search = "and 1=1 ";
+                }
+                // --------------鏌ヨ鎸囧畾鏁版嵁--------------
+                var total = 0; //鎬绘潯鏁�
+                var sql = @"select A.customername as '瀹㈡埛',A.wo as '璁㈠崟鍙�',A.materiel_code as '浜у搧缂栫爜',B.partname as '浜у搧鍚嶇О',B.partspec as '瑙勬牸鍨嬪彿',A.colour as '棰滆壊',A.weight as '閲嶉噺',A.totalnumber as '鎬绘枡',
+                            A.qty as '鏁伴噺',A.saleOrderCode as '閿�鍞崟鍙�',S.InvCode as '瀛愪欢缂栫爜',M.partname as '瀛愪欢鍚嶇О',M.partspec as '瀛愪欢瑙勬牸',C.name as '渚涘簲鍟�',
+                            S.BaseQtyN as '鍩烘湰鐢ㄩ噺',S.BaseQtyD as '鍩虹鏁伴噺',S.CompScrap as '瀛愪欢鎹熻�楃巼',S.BaseQtyN*(1+S.CompScrap/100) as '浣跨敤鏁伴噺',S.Qty as '搴旈鏁伴噺'
+                            from TKimp_Ewo A
+                            left join TMateriel_Info B on A.materiel_code=B.partcode
+                            left join TKimp_EwoSubItem S on A.sbid=S.MoDId
+                            left join TMateriel_Info M on S.InvCode=M.partcode
+                            left join TCustomer C on 'G'+M.cVenCode=C.code
+                            where A.is_delete<>'1' " + search;
+                DataTable data = DapperHelper.selectdata(sql, dynamicParams);
+                data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�
+                string msg = DownLoad.DataTableToExcel(data, "鐢熶骇璁㈠崟鐢ㄦ枡淇℃伅");
+                mes.code = "200";
+                mes.message = "鏌ヨ鎴愬姛!";
+                mes.count = total;
+                mes.data = msg;
+            }
+            catch (Exception e)
+            {
+                mes.code = "300";
+                mes.count = 0;
+                mes.message = e.Message;
+                mes.data = null;
+            }
+            return mes;
+        }
+        #endregion
+
 
 
         #region[MES宸ュ崟鏌ヨ]
@@ -599,7 +732,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,
                             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,
-                            A.injectnumber,A.customercode,A.customername,A.colour
+                            A.injectnumber,A.customercode,A.customername,A.colour,A.weight,A.totalnumber
                             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
@@ -686,7 +819,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,
                             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,
-                            A.injectnumber,A.customercode,A.customername,A.colour
+                            A.injectnumber,A.customercode,A.customername,A.colour,A.weight,A.totalnumber
                             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
@@ -819,8 +952,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,injectnumber,customercode,customername,colour)
-                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@lm_user,@lm_date,@materiel_code,@sourceid,@m_po,@saleOrderDeliveryDate,@orderlev,@isaps,@data_sources,@isstep,@injectnumber,@customercode,@customername,@colour)";
+                    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,injectnumber,customercode,customername,colour,weight,totalnumber)
+                                values(@wo_code,@wotype,@status,@wkshp_code,@plan_qty,@lm_user,@lm_date,@materiel_code,@sourceid,@m_po,@saleOrderDeliveryDate,@orderlev,@isaps,@data_sources,@isstep,@injectnumber,@customercode,@customername,@colour,@weight,@totalnumber)";
                     list.Add(new
                     {
                         str = sql,
@@ -844,7 +977,9 @@
                             injectnumber = json.injectnumber,//娉ㄥ鏈哄彿
                             customercode = json.customercode,//瀹㈡埛缂栫爜
                             customername = json.customername,//瀹㈡埛鍚嶇О
-                            colour = json.colour //棰滆壊
+                            colour = json.colour, //棰滆壊
+                            weight = json.weight, //鎬婚噺
+                            totalnumber = json.totalnumber //鎬绘枡
                         }
                     });
                     //鍐欏叆宸ュ簭浠诲姟琛�
@@ -892,7 +1027,9 @@
                 {
                     //淇敼宸ュ崟琛�
                     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,injectnumber=@injectnumber,customercode=@customercode,customername=@customername,colour=@colour
+                            materiel_code=@materiel_code,sourceid=@sourceid,m_po=@m_po,saleOrderDeliveryDate=@saleOrderDeliveryDate,isstep=@isstep,
+                            injectnumber=@injectnumber,customercode=@customercode,customername=@customername,colour=@colour,weight=@weight,totalnumber=@totalnumber
+                            
                             where wo_code=@wo_code";
                     list.Add(new
                     {
@@ -913,7 +1050,9 @@
                             injectnumber = json.injectnumber,//娉ㄥ鏈哄彿
                             customercode = json.customercode,//瀹㈡埛缂栫爜
                             customername = json.customername,//瀹㈡埛鍚嶇О
-                            colour = json.colour //棰滆壊
+                            colour = json.colour, //棰滆壊
+                            weight = json.weight, //鎬婚噺
+                            totalnumber = json.totalnumber //鎬绘枡
                         }
                     });
                     //鍒犻櫎宸ュ崟宸ュ簭琛�
@@ -1170,20 +1309,23 @@
                 }
                 // --------------鏌ヨ鎸囧畾鏁版嵁--------------
                 var total = 0; //鎬绘潯鏁�
-                var sql = @"select A.injectnumber as '娉ㄥ鏈哄彿',A.customername as '瀹㈡埛鍚嶇О',A.materiel_code as '浜у搧缂栫爜',B.partname as '浜у搧鍚嶇О',B.partspec as '浜у搧瑙勬牸',A.colour as '棰滆壊',A.plan_qty as '宸ュ崟鏁�',W.saleOrderCode as '閿�鍞鍗�',A.clerkuser as '閿�鍞笟鍔″憳',
+                var sql = @"select A.injectnumber as '娉ㄥ鏈哄彿',A.customername as '瀹㈡埛',A.m_po as '璁㈠崟鍙�',A.wo_code as '宸ュ崟鍙�',
                             (case when A.status='NEW' then '鏂板伐鍗�' 
                              when A.status='ALLO' then '宸叉淳鍙�'
                              when A.status='START' then '宸插紑宸�'
                              when A.status='CLOSED' then '宸插畬宸�'
                              end) as '宸ュ崟鐘舵��',
-                            (case when A.wotype='PO' then '鏍囧噯宸ュ崟' else '鎶ュ簾琛ュ崟' end) as '鍗曟嵁绫诲瀷',A.wo_code as '宸ュ崟缂栧彿',A.m_po as '婧愬崟鍗曞彿',C.torg_name as '鐢熶骇杞﹂棿',A.saleOrderDeliveryDate as '棰勮浜や粯鏃ユ湡',U.username as '鍒涘缓浜哄憳',A.lm_date as '鍒涘缓鏃堕棿'
+                            (case when A.wotype='PO' then '鏍囧噯宸ュ崟' else '鎶ュ簾琛ュ崟' end) as '鍗曟嵁绫诲瀷',
+                            A.materiel_code as '浜у搧缂栫爜',B.partname as '浜у搧鍚嶇О',B.partspec as '瑙勬牸鍨嬪彿',A.colour as '棰滆壊',A.weight as '鎬婚噺',A.totalnumber as '鎬绘枡',
+                            A.plan_qty as '鏁伴噺',A.saleOrderCode as '閿�鍞崟鍙�',S.InvCode as '瀛愪欢缂栫爜',M.partname as '瀛愪欢鍚嶇О',M.partspec as '瀛愪欢瑙勬牸',C.name as '渚涘簲鍟�',S.BaseQtyN as '鍩烘湰鐢ㄩ噺',S.BaseQtyD as '鍩虹鏁伴噺',S.CompScrap as '瀛愪欢鎹熻�楃巼',
+                            S.BaseQtyN*(1+S.CompScrap/100) as '浣跨敤鏁伴噺',S.Qty as '搴旈鏁伴噺',T.torg_name as '鐢熶骇杞﹂棿',A.saleOrderDeliveryDate as '棰勮浜や粯鏃ユ湡'   
                             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
-                            left join TOrganization C on A.wkshp_code=C.torg_code
-                            left join TSecStck D on A.stck_code=D.code 
-                            left join TUser U on A.lm_user=U.usercode 
-                            left join TOrganization L on  C.parent_id=L.id
+                            left join TKimp_EwoSubItem S on A.sbid=S.MoDId
+                            left join TMateriel_Info M on S.InvCode=M.partcode
+                            left join TCustomer C on 'G'+M.cVenCode=C.code
+                            left join TOrganization T on A.wkshp_code=T.torg_code
                             where A.is_delete<>'1'  " + search;
                 DataTable data = DapperHelper.selectdata(sql, dynamicParams);
                 data.TableName = "Table"; //璁剧疆DataTable鐨勫悕绉�
@@ -1341,7 +1483,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,
                             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.injectnumber,A.customercode,A.customername,A.colour
+                            A.injectnumber,A.customercode,A.customername,A.colour,A.weight,A.totalnumber
                             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.sourceid=W.id
                             left join TMateriel_Info B on A.materiel_code=B.partcode
@@ -1491,7 +1633,7 @@
                 }
                 //鏍规嵁鏉′欢鏌ヨ宸ュ崟宸ュ簭浠诲姟(鑷埗宸ュ簭)
                 sql = @"select A.id,A.status,B.wkshp_code,T.torg_name as wkshp_name,A.wo_code,M.partcode,M.partname,M.partspec,A.seq,A.isbott,A.isend,
-                        S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour
+                        S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour,B.weight,B.totalnumber
                         from TK_Wrk_Step A
                         left join TK_Wrk_Man B on A.wo_code=B.wo_code
                         left join TMateriel_Info M on B.materiel_code=M.partcode
@@ -1595,7 +1737,7 @@
                 sql = @"select A.id,A.status,B.wkshp_code,T.torg_name as wkshp_name,A.wo_code,M.partcode,M.partname,M.partspec,A.seq,A.isbott,A.isend,
                         S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,
                         (select isnull(sum(fqty),0) as fqty   from TK_Wrk_OutRecord where wo_code=A.wo_code and step_code=A.step_code and style='F') as fqty,
-                        A.laborbad_qty,A.materielbad_qty,A.plan_startdate,A.plan_enddate,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour
+                        A.laborbad_qty,A.materielbad_qty,A.plan_startdate,A.plan_enddate,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour,B.weight,B.totalnumber
                         from TK_Wrk_Step A
                         left join TK_Wrk_Man B on A.wo_code=B.wo_code
                         left join TMateriel_Info M on B.materiel_code=M.partcode
@@ -1696,7 +1838,7 @@
                 }
                 //鏍规嵁鏉′欢鏌ヨ宸ュ崟宸ュ簭浠诲姟(鑷埗宸ュ簭)
                 sql = @"select A.id,B.wkshp_code,T.torg_name as wkshp_name,A.wo_code,M.partcode,M.partname,M.partspec,A.seq,A.isend,
-                        S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour
+                        S.stepcode,S.stepname,S.descr,A.plan_qty,A.good_qty,A.ng_qty,A.laborbad_qty,A.materielbad_qty,B.lm_date,B.injectnumber,B.customercode,B.customername,B.colour,B.weight,B.totalnumber
                         from TK_Wrk_Step A
                         left join TK_Wrk_Man B on A.wo_code=B.wo_code
                         left join TMateriel_Info M on B.materiel_code=M.partcode
diff --git a/VueWebCoreApi/Models/ErpOrder/ErpOrderBatch.cs b/VueWebCoreApi/Models/ErpOrder/ErpOrderBatch.cs
index be55c1f..b451740 100644
--- a/VueWebCoreApi/Models/ErpOrder/ErpOrderBatch.cs
+++ b/VueWebCoreApi/Models/ErpOrder/ErpOrderBatch.cs
@@ -75,5 +75,13 @@
         /// 棰滆壊
         /// </summary>
         public string colour { get; set; }
+        /// <summary>
+        /// 閲嶉噺
+        /// </summary>
+        public string weight { get; set; }
+        /// <summary>
+        /// 鎬绘枡
+        /// </summary>
+        public string totalnumber { get; set; }
     }
 }
diff --git a/VueWebCoreApi/Models/WorkData/WorkList.cs b/VueWebCoreApi/Models/WorkData/WorkList.cs
index dfee21b..7225173 100644
--- a/VueWebCoreApi/Models/WorkData/WorkList.cs
+++ b/VueWebCoreApi/Models/WorkData/WorkList.cs
@@ -67,6 +67,14 @@
         /// 棰滆壊
         /// </summary>
         public string colour { get; set; }
+        /// <summary>
+        /// 鎬婚噺
+        /// </summary>
+        public string weight { get; set; }
+        /// <summary>
+        /// 鎬绘枡
+        /// </summary>
+        public string totalnumber { get; set; }
         public List<WorkListSub> WorkListSub { get; set; }
     }
     public class WorkListSub

--
Gitblit v1.9.3