From 95d9423cc7d88f45a09f6d11d9e5bc4237701ee8 Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期五, 08 三月 2024 15:59:13 +0800
Subject: [PATCH] 销售订单:行反关闭信用控制(测试)

---
 WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs |  398 +++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 343 insertions(+), 55 deletions(-)

diff --git a/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs b/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
index 33cf622..e4fb8f9 100644
--- a/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
+++ b/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
@@ -8,6 +8,8 @@
 using System.Data.SqlClient;
 using System.Web.Http;
 using WebAPI.Models;
+using Newtonsoft.Json;
+
 namespace WebAPI.Controllers
 {
     public class Gy_WorkCenterController : ApiController
@@ -18,44 +20,43 @@
         SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
         DataSet ds;
 
-
         /// <summary>
-        /// 杩斿洖宸ヤ綔涓績鍒楄〃
-        ///鍙傛暟锛歴tring sql銆�
-        ///杩斿洖鍊硷細object銆�
+        /// 宸ヤ綔涓績鍔ㄦ�佸垪
         /// </summary>
-        [Route("Gy_WorkCenter/list")]
+        /// <param name="sWhere"></param>
+        /// <param name="user"></param>
+        /// <returns></returns>
+        [Route("Gy_WorkCenter/Gy_WorkCenterDyCollist")]
         [HttpGet]
-        public object list(string sWhere)
+        public object Gy_WorkCenterDyCollist(string sWhere,string user)
         {
             try
             {
-                if (sWhere == null || sWhere.Equals(""))
-                {
-                    ds = oCN.RunProcReturn("select * from h_v_WorkCenterList " + sWhere, "h_v_WorkCenterList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_WorkCenterList where 1 = 1 ";
-                    string sql = sql1 + sWhere;
-                    ds = oCN.RunProcReturn(sql, "h_v_WorkCenterList");
-                }
-                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter", 1, false, user))
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "false锛�";
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                else
+
+                ds = oCN.RunProcReturn("select * from h_v_WorkCenterList where 1 = 1 " + sWhere + " order by 宸ヤ綔涓績浠g爜 ", "h_v_WorkCenterList");
+                List<object> listCol = new List<object>();
+                foreach (DataColumn col in ds.Tables[0].Columns)
                 {
-                    objJsonResult.code = "1";
-                    objJsonResult.count = 1;
-                    objJsonResult.Message = "Sucess锛�";
-                    objJsonResult.data = ds.Tables[0];
-                    return objJsonResult;
+                    Type dataType = col.DataType;
+                    string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    listCol.Add(JsonConvert.DeserializeObject(str));
                 }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = listCol;
+                return objJsonResult;
             }
             catch (Exception e)
             {
@@ -66,6 +67,58 @@
                 return objJsonResult;
             }
         }
+
+        /// <summary>
+        /// 杩斿洖宸ヤ綔涓績鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Gy_WorkCenter/list")]
+        [HttpGet]
+        public object list(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("select * from h_v_WorkCenterList where 1 = 1 " + sWhere + " order by 宸ヤ綔涓績浠g爜 ", "h_v_WorkCenterList");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = columnNameList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+
+
 
         /// <summary>
         /// 鏍规嵁鍩虹璧勬枡ID 鏌ユ壘璁板綍
@@ -227,44 +280,83 @@
                 DAL.ClsGy_WorkCenter_View oDeptHlp = new DAL.ClsGy_WorkCenter_View();
 
                 var _value = oMain["oMain"].ToString();
-                string msg1 = _value.ToString();
-                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
-                string msg2 = sArray[0].ToString();
-                //string msg3 = sArray[1].ToString();
+                string msg3 = _value.ToString();
+                string[] sArray = msg3.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string msg1 = sArray[0].ToString();
+                string msg2 = sArray[1].ToString();
                 //string msg4 = sArray[2].ToString();
                 //string msg5 = sArray[3].ToString();
+
+                //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter_Edit", 1, false, msg2))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犵紪杈戞潈闄�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
                 //鍙嶅簭鍒楀寲
-                msg2 = "[" + msg2.ToString() + "]";
-                List<Gy_WorkCenter> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_WorkCenter>>(msg2);
+                msg1 = "[" + msg1.ToString() + "]";
+                List<Gy_WorkCenter> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Gy_WorkCenter>>(msg1);
 
                 long HItemID = list[0].HItemID;
                 string HNumber = list[0].HNumber;
                 string HName = list[0].HName;
-                string HShortNumber = list[0].HShortNumber;
                 string HDeptNumber = list[0].HDeptNumber;
-                long HParentID = list[0].HParentID;
                 string HHelpCode = list[0].HHelpCode;
                 string HRemark = list[0].HRemark;
                 bool HStopflag = list[0].HStopflag;
-                bool HEndFlag = list[0].HStopflag;
                 string HUseFlag = list[0].HUseFlag;
                 var HQty = list[0].HQty;
                 var HBarCodeForBase = list[0].HBarCodeForBase;
                 var HDayMoney = list[0].HDayMoney;
                 var HDeptID = list[0].HDeptID;
                 var HProcID = list[0].HProcID;
-                var HLevel = list[0].HLevel;
                 var HWorkTimes = list[0].HWorkTimes;
+                int HUSEORGID = list[0].HUSEORGID;
+                string HMaker = msg2;
 
-                ////鍒ゆ柇鏉冮檺
-                //if (!ClsPub.Security_Log(msg5, 1, false, msg4))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "娌℃湁鎵惧埌璇ュ姛鑳芥ā鍧楋紒";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                //鏈骇鏍囧織
+                bool HEndFlag = true;
+                //寰楀埌鐭唬鐮�
+                string HShortNumber = DBUtility.ClsPub.GetShortNumber(HNumber);
+                if (HShortNumber.Trim() == "")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "淇濆瓨澶辫触锛佺煭浠g爜涓虹┖锛�";
+                    objJsonResult.data = 1;
+                    return objJsonResult;
+                }
+                //绛夌骇
+                int HLevel = DBUtility.ClsPub.GetLevel(HNumber);
+
+                //妫�鏌ョ埗绾ф槸鍚﹀瓨鍦�
+                long HParentID = 0;
+                string sParent = DBUtility.ClsPub.GetParentCode(HNumber);
+                if (sParent.Trim() == "")
+                {
+                    HParentID = 0;
+                }
+                else
+                {
+                    ds = oCN.RunProcReturn("select * from Gy_WorkCenter where HNumber='" + sParent + "' and HStopFlag=0 ", "Gy_WorkCenter");
+                    if (ds.Tables[0].Rows.Count > 0)
+                    {
+                        HParentID = long.Parse(ds.Tables[0].Rows[0]["HItemID"].ToString());
+                    }
+                    else
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "淇濆瓨澶辫触锛佷笂绾т唬鐮佷笉瀛樺湪鎴栬绂佺敤锛�";
+                        objJsonResult.data = 1;
+                        return objJsonResult;
+                    }
+                }
+
 
                 //if (!DBUtility.ClsPub.AllowNumber(HNumber))
                 //{
@@ -292,11 +384,12 @@
                    " (HNumber,HName,HHelpCode,HShortNumber,HParentID" +
                    ",HDeptNumber,HWorkTimes,HQty" +
                    ",HLevel,HEndFlag,HStopflag,HRemark,HDeptID,HBarCodeForBase" +
-                   ",HProcID,HDayMoney) " +
+                   ",HProcID,HDayMoney,HUSEORGID,HMaker,HMakeTime) " +
                    " Values('" + HNumber + "','" + HName + "','" + HHelpCode + "','" + HShortNumber + "'," + HParentID.ToString() +
                     ",'" + HDeptNumber + "'," + HWorkTimes + "," + HQty +
                     "," + HLevel.ToString() + "," + Convert.ToString(HEndFlag ? 1 : 0) + "," + Convert.ToString(HStopflag ? 1 : 0) +
-                    ",'" + HRemark + "'," + HDeptID + ",'" + HBarCodeForBase + "'," + HProcID + "," + HDayMoney + ")", ref DBUtility.ClsPub.sExeReturnInfo);
+                    ",'" + HRemark + "'," + HDeptID + ",'" + HBarCodeForBase + "'," + HProcID + "," + HDayMoney + ","+ HUSEORGID + "" +
+                    ",'"+ HMaker + "',getdate())", ref DBUtility.ClsPub.sExeReturnInfo);
                     //淇敼涓婄骇涓洪潪鏈骇浠g爜
                     oCN.RunProc("Update  Gy_WorkCenter set HEndflag=0 where HItemID=" + HParentID, ref DBUtility.ClsPub.sExeReturnInfo);
                     oCN.Commit();
@@ -313,7 +406,10 @@
                                   ",HParentID=" + HParentID +
                                   ",HStopflag='" + HStopflag + "'" +
                                   ",HRemark= '" + HRemark + "'" +
+                                  ",HUpDater= '" + HMaker + "'" +
+                                  ",HUpDateDate= getdate()" +
                                   ",HDeptID=" + HDeptID +
+                                  ",HLevel=" + HLevel +
                                   ",HQty=" + HQty +
                                   ",HWorkTimes=" + HWorkTimes +
                                   ",HBarCodeForBase='" + HBarCodeForBase + "'  Where HItemID=" + HItemID, ref DBUtility.ClsPub.sExeReturnInfo);
@@ -442,22 +538,21 @@
         /// <returns></returns>
         [Route("DeltetGy_WorkCenter")]
         [HttpGet]
-        public object DeltetGy_WorkCenter(string HItemID)
+        public object DeltetGy_WorkCenter(string HItemID,string user)
         {
             DataSet ds;
             DataSet ds1;
-            //string ModRightNameCheck = "Sc_ProcessReport_check";
             try
             {
                 //鍒犻櫎鏉冮檺
-                //if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, false, CurUserName))
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+                if (!DBUtility.ClsPub.Security_Log("Gy_WorkCenter_Delete", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
                 SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                 if (string.IsNullOrWhiteSpace(HItemID))
@@ -633,5 +728,198 @@
                 return objJsonResult;
             }
         }
+
+
+
+
+        #region 宸ヤ綔涓績瀹℃牳銆佸弽瀹℃牳
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsAudit">瀹℃牳(0),鍙嶅鏍�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Gy_WorkCenter/AuditGy_WorkCenter")]
+        [HttpGet]
+        public object AuditGy_WorkCenter(int HInterID, int IsAudit, string CurUserName)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_WorkCenter_Check", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_WorkCenter where HItemID=" + HInterID, "Gy_WorkCenter");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HCheckEmp"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鏍�!涓嶉渶瑕佸弽瀹℃牳!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsAudit == 0)  //瀹℃牳鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_WorkCenter set HCheckEmp='" + CurUserName + "',HCheckTime=getdate() where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsAudit == 1) //鍙嶅鏍稿垽鏂�
+                {
+                    oCN.RunProc("update Gy_WorkCenter set HCheckEmp='',HCheckTime=null where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶅鏍告垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触鎴栬�呭弽瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 宸ヤ綔涓績绂佺敤銆佸弽绂佺敤
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="HInterID">鍗曟嵁ID</param>
+        /// <param name="IsStop">绂佺敤(0),鍙嶇鐢�(1)</param>
+        /// <param name="CurUserName">瀹℃牳浜�</param>
+        /// <returns></returns>
+        [Route("Gy_WorkCenter/StopGy_WorkCenter")]
+        [HttpGet]
+        public object StopGy_Material(int HInterID, int IsStop, string CurUserName)
+        {
+            try
+            {
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log_second("Gy_WorkCenter_Stop", 1, false, CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "绂佺敤澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                var ds = oCN.RunProcReturn("select * from Gy_WorkCenter where HItemID=" + HInterID, "Gy_WorkCenter");
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    if (IsStop == 0)  //绂佺敤鍒ゆ柇
+                    {
+                        if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() != "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁宸茬鐢�!涓嶈兘鍐嶆绂佺敤锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                    if (IsStop == 1) //鍙嶇鐢ㄥ垽鏂�
+                    {
+                        if (ds.Tables[0].Rows[0]["HStopEmp"].ToString() == "")
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鍗曟嵁鏈鐢�!涓嶉渶瑕佸弽绂佺敤!";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                if (IsStop == 0)  //绂佺敤鍒ゆ柇
+                {
+                    oCN.RunProc("update Gy_WorkCenter set HStopEmp='" + CurUserName + "',HStopTime=getdate(),HStopflag=1 where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "绂佺敤鎴愬姛";
+                    objJsonResult.data = null;
+                }
+                if (IsStop == 1) //鍙嶇鐢ㄥ垽鏂�
+                {
+                    oCN.RunProc("update Gy_WorkCenter set HStopEmp='',HStopTime=null,HStopflag=0 where HItemID=" + HInterID);
+
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "鍙嶇鐢ㄦ垚鍔�";
+                    objJsonResult.data = null;
+                }
+                oCN.Commit();
+
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "绂佺敤澶辫触鎴栬�呭弽绂佺敤澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1