From 2566524594675a8d742f9ba0eff35dd5d8d33fa2 Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期一, 31 三月 2025 12:43:22 +0800
Subject: [PATCH] 排产:Excel导入功能,上传文件时,如果时宝工,则返回excel文件中维护的数量,不然则取生产订单的数量

---
 WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs |  131 +++++++++++++++++++++++++++++++++----------
 1 files changed, 100 insertions(+), 31 deletions(-)

diff --git a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
index cf91001..6cf5e4b 100644
--- a/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
+++ b/WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
@@ -530,7 +530,7 @@
             string sql =string.Format(@"select A.HInterID,b.HEntryID,A.HBillStatus,A.HBillNo,A.HDate,A.HContext,A.HDescription,A.HRemark,
                                       A.HQty,A.HSendType,a.HForm,a.HChangeNote,a.HNote,a.HBadProcMan,f1.HName HBadProcManName,
 										a.HQEMan,f2.HName HQEManName,a.HSourceID,s.HName HSourceName,a.HShiftsID,s1.HName HShiftsName,
-                                        A.HDeptID,D.HName HDeptName, A.HSendMan, 
+                                        A.HDeptID,D.HName HDeptName, A.HSendMan,a.HCenterID HCenterID,wo.HName HCenterName, 
                                         A.HReceiveMan,A.HCopyMan,A.HHasten,
                                         A.HLevel,A.HMaterNumber,A.HMaterName,A.HMaterModel,
                                         B.HReadFlag, A.HMaker,A.HMakeDate,A.HUpDater,A.HUpDateDate,A.HChecker,A.HCheckDate,A.HCloseMan,A.HCloseDate,A.HDeleteMan,A.HDeleteDate,
@@ -545,6 +545,7 @@
 										left join Gy_Employee f2 on a.HQEMan=f2.HItemID
 										left join Gy_Source s on a.HSourceID=s.HItemID
 										left join Gy_Shifts s1 on a.HShiftsID=s1.HItemID
+                                        left join Gy_WorkCenter wo on a.HCenterID=wo.HItemID
                                         where A.HInterID='" + HID + "' and b.HEntryID='" + HEntryID + "'");
             var dataSet = oCN.RunProcReturn(sql, "OA_ErrMsgBackBillMain");
             if (dataSet == null || dataSet.Tables[0].Rows.Count == 0)
@@ -1839,7 +1840,7 @@
 
         [Route("OA_ErrMsgBackSignBill_BrushCard/ErrMsgBackReceive")]
         [HttpGet]
-        public object ErrMsgBackReceive(string sWhere, string user)
+        public object ErrMsgBackReceive(string sWhere,string num, string user)
         {
             try
             {
@@ -1854,18 +1855,38 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-
-                if (sWhere == null || sWhere.Equals(""))
+                if (num=="2")       //鎶ュ伐鍙拌幏鍙栧埛鍗$鍒版暟鎹�
                 {
-                    string sql = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard order by 鍗曟嵁鍙� desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                    if (sWhere == null || sWhere.Equals(""))
+                    {
+                        string sql = "select * from h_v_SingOA_ErrMsgBackList_BrushCard order by 鍗曟嵁鍙� desc";
+                        ds = oCN.RunProcReturn(sql, "h_v_SingOA_ErrMsgBackList_BrushCard");
+                    }
+                    else
+                    {
+                        string sql1 = "select * from h_v_SingOA_ErrMsgBackList_BrushCard where 1 = 1 ";
+                        string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                        ds = oCN.RunProcReturn(sql, "h_v_SingOA_ErrMsgBackList_BrushCard");
+                    }
                 }
-                else
+                else   //鍘熸湁鐨勫埛鍗$鍒拌幏鍙栨暟鎹�
                 {
-                    string sql1 = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard where 1 = 1 ";
-                    string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
-                    ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                    {
+                        if (sWhere == null || sWhere.Equals(""))
+                        {
+                            string sql = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard order by 鍗曟嵁鍙� desc";
+                            ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                        }
+                        else
+                        {
+                            string sql1 = "select * from h_v_OA_ErrMsgBackReceiveBillList_BrushCard where 1 = 1 ";
+                            string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc";
+                            ds = oCN.RunProcReturn(sql, "h_v_OA_ErrMsgBackReceiveBillList_BrushCard");
+                        }
+                    }
                 }
+                
+               
 
                 //娣诲姞鍒楀悕
                 foreach (DataColumn col in ds.Tables[0].Columns)
@@ -5464,8 +5485,32 @@
                 //杩涜闇�瑕佽繘琛岀殑浣滃簾/鍙嶄綔搴熸搷浣�
                 if (IsAudit == 0) //浣滃簾鎻愪氦
                 {
-                    //浣滃簾鎻愪氦
-                    if (oBill.Cancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    //瀹℃牳鍓嶆帶鍒�=========================================      
+                    string sql1 = "exec h_p_OA_AndengFlowRuleBill_BeforeDropCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_OA_AndengFlowRuleBill_BeforeDropCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:瀹℃牳鍓嶅垽鏂け璐ワ紝璇蜂笌缃戠粶绠$悊浜哄憳鑱旂郴";
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        oCN.RollBack();
+                        return objJsonResult;
+                    }
+                    //==================================================================================      
+
+                    //瀹℃牳鎻愪氦
+                    if (oBill.Cancelltion(oBill.omodel.HInterID, oBill.omodel.HBillNo, "h_p_OA_AndengFlowRuleBill_AfterDropCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                     {
                         objJsonResult.code = "1";
                         objJsonResult.count = 1;
@@ -5482,10 +5527,32 @@
                         return objJsonResult;
                     }
                 }
-                if (IsAudit == 1) //鍙嶅叧闂彁浜�
+                if (IsAudit == 1) //鍙嶄綔搴熸彁浜�
                 {
-                    //鍙嶅叧闂彁浜�
-                    if (oBill.AbandonCancelltion(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                    //鍙嶅鏍稿墠鎺у埗=========================================        
+                    string sql1 = "exec h_p_OA_AndengFlowRuleBill_BeforeUnDropCtrl " + oBill.omodel.HInterID + ",'" + oBill.omodel.HBillNo + "','" + CurUserName + "'";
+                    ds = oCN.RunProcReturn(sql1, "h_p_OA_AndengFlowRuleBill_BeforeUnDropCtrl");
+                    if (ds == null || ds.Tables.Count == 0 || ds.Tables[0].Rows.Count == 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:鍙嶅鏍稿墠鍒ゆ柇澶辫触锛岃涓庣綉缁滅鐞嗕汉鍛樿仈绯�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+
+                    }
+                    if (ds.Tables[0].Rows[0]["HBack"].ToString() != "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 1;
+                        objJsonResult.Message = "鍙嶅鏍稿け璐�!鍘熷洜:" + ds.Tables[0].Rows[0]["HRemark"].ToString(); ;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //===========================================================          
+
+                    //鍙嶄綔搴熸彁浜�
+                    if (oBill.AbandonCancelltion(lngBillKey, oBill.omodel.HBillNo, "h_p_Sc_MouldMaintainRuleBill_AfterUnDropCtrl", CurUserName, ref DBUtility.ClsPub.sExeReturnInfo) == true)
                     {
                         objJsonResult.code = "1";
                         objJsonResult.count = 1;
@@ -6750,13 +6817,21 @@
 
         [Route("Sc_MESTransFerWorkBill/GetSc_MESTransFerWorkBillQuery")]
         [HttpGet]
-        public object GetSc_MESTransFerWorkBillQuery(string user)
+        public object GetSc_MESTransFerWorkBillQuery(string sWhere, string user)
         {
             try
             {
+                Dictionary<object, object> dic = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<object, object>>(sWhere);
+
+
+                string HStatus = dic["HStatus"].ToString();//鏃堕棿鐘舵��
+                string HBeginDate = dic["HBeginDate"].ToString();//寮�濮嬫棩鏈�
+                string HEndDate = dic["HEndDate"].ToString();//缁撴潫鏃ユ湡
+                string HSourceID = dic["HSourceID"].ToString();//鐢熶骇璧勬簮
+
                 List<object> columnNameList = new List<object>();
 
-                ds = oCN.RunProcReturn("exec h_p_OA_ErrMsgBackSelfQuery " + user, "h_p_OA_ErrMsgBackSelfQuery");
+                ds = oCN.RunProcReturn("exec h_p_OA_ErrMsgBackSelfQuery  '" + HStatus + "','" + HBeginDate + "','" + HEndDate + "','" + HSourceID + "','" + user + "'"  , "h_p_OA_ErrMsgBackSelfQuery");
 
                 if (ds.Tables[0].Rows.Count != 0 || ds != null)
                 {
@@ -6805,8 +6880,8 @@
             {
                 List<object> columnNameList = new List<object>();
 
-                string sql = "select a.HSourceBillNo 娴佽浆鍗″彿,a.HSourceBillType 娴佽浆鍗$被鍨�,a.HSourceInterID 娴佽浆鍗′富鍐呯爜,a.HSourceEntryID 娴佽浆鍗″瓙鍐呯爜,b.HNumber 鐗╂枡浠g爜,b.HName 鐗╂枡鍚嶇О,b.HModel 瑙勬牸鍨嬪彿,a.HPlanQty 璁″垝鏁伴噺,a.HSourceID,c.HName 鐢熶骇璧勬簮 from Sc_ICMOBillStatus_Tmp a " +
-                    "left join Gy_Material b on a.HMaterID=b.HItemID  left join Gy_Source c on a.HSourceID=c.HItemID where HSourceBillNo='" + HSourceBill + "'";
+                string sql = "select a.HSourceBillNo 娴佽浆鍗″彿,a.HSourceBillType 娴佽浆鍗$被鍨�,a.HSourceInterID 娴佽浆鍗′富鍐呯爜,a.HSourceEntryID 娴佽浆鍗″瓙鍐呯爜,b.HNumber 鐗╂枡浠g爜,b.HName 鐗╂枡鍚嶇О,b.HModel 瑙勬牸鍨嬪彿,a.HDatePlanQty 璁″垝鏁伴噺,a.HSourceID,c.HName 鐢熶骇璧勬簮 from Sc_ICMOBillStatus_Tmp a " +
+                    "left join Gy_Material b on a.HMaterID=b.HItemID  left join Gy_Source c on a.HSourceID=c.HItemID where HSourceBillNo='" + HSourceBill + "' and a.HICMOStatus=1";
                 ds = oCN.RunProcReturn(sql, "Sc_ICMOBillStatus_Tmp");
 
                 //娣诲姞鍒楀悕
@@ -6888,19 +6963,13 @@
                 string sql = "select a.Czymc 鐢ㄦ埛鍚嶇О,c.GroupName 鑱屽姟 from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId left join System_UserGroup c on b.GroupId = c.GroupID  where a.Czymc = '"+HName+"'";
                 ds = oCN.RunProcReturn(sql, "Gy_ErrMsgBackType");
                 string Job = ds.Tables[0].Rows[0]["鑱屽姟"].ToString();
-                if (Job=="娉ㄥ鐝粍闀�" || Job=="鍚庡鐞嗙彮缁勯暱")
-                {
-                    //鏍规嵁鑱屽姟鎵惧埌浠栫殑涓嬬骇,缁欏彂閫佷汉榛樿涓虹彮缁勯暱涔嬩笅
-                    string sql1 = "select * from Gy_Duty where HParentID =(select HItemID from Gy_Duty group by HItemID, HName having HName = '"+Job+"' and count(*) = 1)";
-                    ds = oCN.RunProcReturn(sql1, "Gy_Duty");
-                }
-                else
-                {
-                    //鏍规嵁鑱屽姟鎵惧埌浠栫殑涓婄骇
-                    string sql2 = "select * from Gy_Duty where HItemID =(select HParentID from Gy_Duty group by HParentID, HName having HName = '" + Job + "' and count(*) = 1)";
-                    ds = oCN.RunProcReturn(sql2, "Gy_Duty");
-                }                                  
+
+                //鏍规嵁鑱屽姟鎵惧埌浠栫殑涓婄骇,缁欏彂閫佷汉榛樿涓哄綋鍓嶇櫥褰曚汉
+                string sql1 = "select * from Gy_Duty where HItemID =(select HParentID from Gy_Duty group by HParentID, HName having HName = '" + Job + "' and count(*) = 1))";
+                ds = oCN.RunProcReturn(sql1, "Gy_Duty");
+
                 string Job1= ds.Tables[0].Rows[0]["HName"].ToString(); 
+
                 //鐢ㄨ亴鍔℃壘鍒扮敤鎴�
                 string sql3 = "select a.Czymc 鐢ㄦ埛鍚嶇О,c.GroupName 鑱屽姟  from Gy_Czygl a left join System_UserGroupInfo b on a.Czybm = b.UserId left join System_UserGroup c on b.GroupId = c.GroupID  where c.GroupName = '" + Job1+"'";
                 ds = oCN.RunProcReturn(sql3, "Gy_Czygl");

--
Gitblit v1.9.1