From 14d02d9f9df720a568d8f08f2921e023642fc260 Mon Sep 17 00:00:00 2001
From: yl <ykxkd@outlook.com>
Date: 星期五, 02 十二月 2022 08:30:32 +0800
Subject: [PATCH] 生产报工外协改为存储过程

---
 VueWebApi/Controllers/ProductionManagementController.cs |  213 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 212 insertions(+), 1 deletions(-)

diff --git a/VueWebApi/Controllers/ProductionManagementController.cs b/VueWebApi/Controllers/ProductionManagementController.cs
index 2ad28a2..5d80988 100644
--- a/VueWebApi/Controllers/ProductionManagementController.cs
+++ b/VueWebApi/Controllers/ProductionManagementController.cs
@@ -8,6 +8,7 @@
 using System.Net.Http;
 using System.Web;
 using System.Web.Http;
+using System.Web.Script.Serialization;
 using VueWebApi.DLL.BLL;
 using VueWebApi.Models;
 using VueWebApi.Tools;
@@ -16,7 +17,7 @@
 {
     [RoutePrefix(prefix: "api/ProductionManagement")]
     [ControllerGroup("鐢熶骇绠$悊", "鍦ㄧ嚎鎺ュ彛")]
-    //[ChannelActionFilter]
+    [ChannelActionFilter]
     public class ProductionManagementController : ApiController
     {
         //瀹氫箟鍏ㄥ眬淇℃伅杩斿洖鍙橀噺
@@ -672,6 +673,11 @@
         #endregion
 
         #region[MES宸ュ崟鎵归噺鍏抽棴鎻愪氦]
+        /// <summary>
+        /// MES宸ュ崟鎵归噺鍏抽棴鎻愪氦
+        /// </summary>
+        /// <param name="dt">宸ュ崟鍙锋暟缁勫璞�</param>
+        /// <returns></returns>
         [Route(template: "MesOrderBitchClosedSeave")]
         [HttpPost]
         public HttpResponseMessage MesOrderBitchClosedSeave(DataTable dt)
@@ -683,5 +689,210 @@
         }
         #endregion
 
+        #region[MES宸ュ崟鎵归噺鍙嶅叧闂璢
+        /// <summary>
+        /// MES宸ュ崟鎵归噺鍙嶅叧闂�
+        /// </summary>
+        /// <param name="dt">宸ュ崟鍙锋暟缁勫璞�</param>
+        /// <returns></returns>
+        [Route(template: "MesOrderBitchAntiClosedSeave")]
+        [HttpPost]
+        public HttpResponseMessage MesOrderBitchAntiClosedSeave(DataTable dt)
+        {
+
+            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //鎿嶄綔浜哄憳
+            mes = ProductionManagementBLL.MesOrderBitchAntiClosedSeave(username, dt);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+
+        #region[浜ц兘瑙勫垝鏌ヨ]
+        /// <summary>
+        /// 浜ц兘瑙勫垝鏌ヨ
+        /// </summary>
+        /// <param name="page">椤电爜</param>
+        /// <param name="rows">椤垫暟</param>
+        /// <param name="prop">鎺掑簭瀛楁</param>
+        /// <param name="order">鎺掑簭瑙勫垯</param>
+        /// <param name="workshop">杞﹂棿缂栫爜</param>
+        /// <param name="devicetype">鐢熶骇鍗曞厓</param>
+        /// <param name="stustype">鏈夋晥鐘舵��</param>
+        /// <returns></returns>
+        [Route(template: "CapacityPlanningSearch")]
+        [HttpGet]
+        public HttpResponseMessage CapacityPlanningSearch(int page, int rows, string prop, string order,string workshop = null, string devicetype = null, string stustype = null)
+        {
+            int startNum = rows * (page - 1) + 1;  //璧峰璁板綍rowNum
+            int endNum = rows * page;   //缁撴潫璁板綍 rowNum
+            mes = ProductionManagementBLL.CapacityPlanningSearch(workshop, devicetype, stustype, startNum, endNum, prop, order);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[浜ц兘瑙勫垝榛樿鏂规淇濆瓨鎻愪氦]
+        /// <summary>
+        /// 浜ц兘瑙勫垝榛樿鏂规淇濆瓨鎻愪氦
+        /// </summary>
+        /// <param name="captplanid">浜ц兘瑙勫垝(鐢熶骇璧勬簮)id</param>
+        /// <param name="wkshopcode">杞﹂棿缂栫爜</param>
+        /// <param name="capunitcode">鐢熶骇鍗曞厓缂栫爜</param>
+        /// <param name="capsetupcode">榛樿鏂规缂栫爜</param>
+        /// <param name="captplantype">璧勬簮绫诲瀷</param>
+        /// <returns></returns>
+        [Route(template: "CapacityPlanSubmit")]
+        [HttpPost]
+        public HttpResponseMessage CapacityPlanSubmit(string wkshopcode, string capunitcode,string captplanid=null,string capsetupcode=null,string captplantype=null)
+        {
+            string type = ""; //鎻愪氦绫诲瀷
+            if (captplanid == "" || captplanid == null)
+            {
+                type = "Add";
+            }
+            else
+            {
+                type = "Update";
+            }
+            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //鎿嶄綔浜哄憳
+            mes = ProductionManagementBLL.CapacityPlanSubmit(type,captplanid,wkshopcode,capunitcode,capsetupcode, captplantype,username);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[浜ц兘瑙勫垝鐐瑰嚮鏃ュ巻缁勪欢鏌ユ壘宸插叧鑱旂殑鏃ユ湡鏂规]
+        /// <summary>
+        /// 浜ц兘瑙勫垝鐐瑰嚮鏃ュ巻缁勪欢鏌ユ壘宸插叧鑱旂殑鏃ユ湡鏂规
+        /// </summary>
+        /// <param name="captplanid">浜ц兘瑙勫垝(鐢熶骇璧勬簮)id</param>
+        /// <returns></returns>
+        [Route(template: "CapacityPlanningCalendar")]
+        [HttpGet]
+        public HttpResponseMessage CapacityPlanningCalendar(string captplanid)
+        {
+            mes = ProductionManagementBLL.CapacityPlanningCalendar(captplanid);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[浜ц兘瑙勫垝鏃ュ巻鍙屽嚮鏃跺甫鍑哄搴旂殑鏂规]
+        /// <summary>
+        /// 浜ц兘瑙勫垝鏃ュ巻鍙屽嚮鏃跺甫鍑哄搴旂殑鏂规
+        /// </summary>
+        /// <param name="captplanid">浜ц兘瑙勫垝(鐢熶骇璧勬簮)id</param>
+        /// <param name="datetime">鍙屽嚮閫変腑鐨勬棩鏈�</param>
+        /// <returns></returns>
+        [Route(template: "CapacityPlanningOnclickSelect")]
+        [HttpGet]
+        public HttpResponseMessage CapacityPlanningOnclickSelect(string captplanid,string datetime)
+        {
+            mes = ProductionManagementBLL.CapacityPlanningOnclickSelect(captplanid, datetime);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[浜ц兘瑙勫垝宸ヤ綔鏃ュ巻閫夋嫨鎻愪氦]
+        /// <summary>
+        /// 浜ц兘瑙勫垝宸ヤ綔鏃ュ巻閫夋嫨鎻愪氦
+        /// </summary>
+        /// <returns></returns>
+        [Route(template: "CapacityPlanningGivePlanSubmit")]
+        [HttpPost]
+        public HttpResponseMessage CapacityPlanningGivePlanSubmit()
+        {
+            string wkshopcode = HttpContext.Current.Request["wkshopcode"].ToString();//杞﹂棿缂栫爜
+            string capunitcode = HttpContext.Current.Request["capunitcode"].ToString();//鐢熶骇鍗曞厓缂栫爜
+            string captplanid = HttpContext.Current.Request["captplanid"].ToString(); //浜ц兘瑙勫垝(鐢熶骇璧勬簮)鍒楄〃id
+            string capsetupcode = HttpContext.Current.Request["capsetupcode"].ToString(); //榛樿鏂规缂栫爜
+            string captplantype = HttpContext.Current.Request["captplantype"].ToString(); //璧勬簮绫诲瀷
+            string worklist = HttpContext.Current.Request["worklist"].ToString();  //宸ヤ綔鏃ュ巻鏁版嵁闆�
+            JavaScriptSerializer Serializer = new JavaScriptSerializer();
+            List<CapaPlan> objs = Serializer.Deserialize<List<CapaPlan>>(worklist);
+            string type = ""; //鎻愪氦绫诲瀷
+            if (captplanid == "" || captplanid == null)
+            {
+                type = "Add";
+            }
+            else
+            {
+                type = "Update";
+            }
+            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //鎿嶄綔浜哄憳
+            mes = ProductionManagementBLL.CapacityPlanningGivePlanSubmit(captplanid, wkshopcode, capunitcode, capsetupcode, captplantype, objs,type, username);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+
+        #region[鑷姩鎺掔▼宸ュ崟鏌ヨ]
+        /// <summary>
+        /// 鑷姩鎺掔▼宸ュ崟鏌ヨ
+        /// </summary>
+        /// <param name="page">椤电爜</param>
+        /// <param name="rows">姣忛〉鏉℃暟</param>
+        /// <param name="prop">鎺掑簭瀛楁</param>
+        /// <param name="order">鎺掑簭瑙勫垯</param>
+        /// <param name="workshop">杞﹂棿缂栫爜</param>
+        /// <param name="wocode">鐢熶骇宸ュ崟鍙�</param>
+        /// <param name="partcode">鐗╂枡缂栫爜</param>
+        /// <param name="partname">鐗╂枡鍚嶇О</param>
+        /// <returns></returns>
+        [Route(template: "AdvancedSchedulingSearch")]
+        [HttpGet]
+        public HttpResponseMessage AdvancedSchedulingSearch(int page, int rows, string prop, string order, string workshop = null, string wocode = null, string partcode = null,string partname=null)
+        {
+            int startNum = rows * (page - 1) + 1;  //璧峰璁板綍rowNum
+            int endNum = rows * page;   //缁撴潫璁板綍 rowNum
+            mes = ProductionManagementBLL.AdvancedSchedulingSearch(workshop, wocode, partcode, partname, startNum, endNum, prop, order);
+            return TJson.toJson(mes);
+        }
+        #endregion
+
+        #region[楂樼骇鎺掔▼鐐瑰嚮宸ュ崟浠诲姟甯﹀嚭鐡堕宸ュ簭璁惧銆佸凡鎺掔▼浠诲姟鏁版嵁]
+        /// <summary>
+        /// 楂樼骇鎺掔▼鐐瑰嚮宸ュ崟浠诲姟甯﹀嚭鐡堕宸ュ簭璁惧銆佸凡鎺掔▼浠诲姟鏁版嵁
+        /// </summary>
+        /// <param name="wocode">宸ュ崟缂栧彿</param>
+        /// <param name="wkshpcode">杞﹂棿缂栫爜</param>
+        /// <param name="partcode">鐗╂枡缂栫爜</param>
+        /// <param name="botproccode">鐡堕宸ュ簭缂栫爜(棣栭亾宸ュ簭)</param>
+        /// <param name="startdate">寮�濮嬫棩鏈�</param>
+        /// <param name="enddate">缁撴潫鏃ユ湡</param>
+        /// <returns></returns>
+        [Route(template: "OnclickAdvancedSchedulingDevice")]
+        [HttpGet]
+        public HttpResponseMessage OnclickAdvancedSchedulingDevice(string wocode,string wkshpcode,string partcode,string botproccode,string startdate,string enddate)
+        {
+            List<AdvancedSchedulingDevice> list = new List<AdvancedSchedulingDevice>();
+            List<AdvancedSchedAlready> list1 = new List<AdvancedSchedAlready>();
+            list = ProductionManagementBLL.OnclickAdvancedSchedulingDevice(wocode, wkshpcode, partcode, startdate, enddate, ref mes); //鎺掍骇璁惧淇℃伅
+            DataTable dt = ProductionManagementBLL.AlreadyScheduling(wocode, wkshpcode, partcode, botproccode, startdate, enddate);   //璁惧宸叉帓绋嬩俊鎭�
+
+            Dictionary<object, object> dList = new Dictionary<object, object>();
+            dList.Add("rus", mes);
+            dList.Add("rows", list);
+            dList.Add("Cont", dt);
+            return TJson.toJson(dList);
+        }
+        #endregion
+
+        #region[鎺掔▼鏁版嵁鎻愪氦]
+        /// <summary>
+        /// 鎺掔▼鏁版嵁鎻愪氦
+        /// </summary>
+        /// <returns></returns>
+        [Route(template: "SubmitAlreadyScheduling")]
+        [HttpPost]
+        public HttpResponseMessage SubmitAlreadyScheduling()
+        {
+            var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //鎿嶄綔浜哄憳
+            string wocode = HttpContext.Current.Request["wocode"].ToString();//宸ュ崟缂栧彿
+            string botprocecode = HttpContext.Current.Request["botprocecode"].ToString(); //鐡堕宸ュ簭缂栫爜
+            string json = HttpContext.Current.Request["json"].ToString(); //鎺掔▼鎻愪氦鏁版嵁
+            JavaScriptSerializer Serializer = new JavaScriptSerializer();
+            List<AlreadyScheduling> objs = Serializer.Deserialize<List<AlreadyScheduling>>(json);
+            mes = ProductionManagementBLL.SubmitAlreadyScheduling(username, wocode, botprocecode, objs);
+            return TJson.toJson(mes);
+        }
+        #endregion
     }
 }

--
Gitblit v1.9.3