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 |  336 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 301 insertions(+), 35 deletions(-)

diff --git a/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs b/WebAPI/Controllers/BaseSet/Gy_WorkCenterController.cs
index d04ecdf..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,15 +20,15 @@
         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,string user)
+        public object Gy_WorkCenterDyCollist(string sWhere,string user)
         {
             try
             {
@@ -40,33 +42,21 @@
                     return objJsonResult;
                 }
 
-                if (sWhere == null || sWhere.Equals(""))
+                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)
                 {
-                    ds = oCN.RunProcReturn("select * from h_v_WorkCenterList order by 宸ヤ綔涓績浠g爜 ", "h_v_WorkCenterList");
-                }
-                else
-                {
-                    string sql1 = "select * from h_v_WorkCenterList where 1 = 1 ";
-                    string sql = sql1 + sWhere+ " order by 宸ヤ綔涓績浠g爜 ";
-                    ds = oCN.RunProcReturn(sql, "h_v_WorkCenterList");
+                    Type dataType = col.DataType;
+                    string str = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    listCol.Add(JsonConvert.DeserializeObject(str));
                 }
 
-                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
-                //{
                 objJsonResult.code = "1";
                 objJsonResult.count = 1;
                 objJsonResult.Message = "Sucess锛�";
                 objJsonResult.data = ds.Tables[0];
+                objJsonResult.list = listCol;
                 return objJsonResult;
-                //}
-                //else
-                //{
-                //objJsonResult.code = "0";
-                //objJsonResult.count = 0;
-                //objJsonResult.Message = "鏃犳暟鎹�";
-                //objJsonResult.data = null;
-                //return objJsonResult;
-                //}
             }
             catch (Exception e)
             {
@@ -77,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 鏌ユ壘璁板綍
@@ -262,32 +304,59 @@
                 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("Gy_WorkCenter_Edit", 1, false, msg2))
+                //鏈骇鏍囧織
+                bool HEndFlag = true;
+                //寰楀埌鐭唬鐮�
+                string HShortNumber = DBUtility.ClsPub.GetShortNumber(HNumber);
+                if (HShortNumber.Trim() == "")
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "娌℃湁鎵惧埌璇ュ姛鑳芥ā鍧楋紒";
-                    objJsonResult.data = null;
+                    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))
                 //{
@@ -315,11 +384,12 @@
                    " (HNumber,HName,HHelpCode,HShortNumber,HParentID" +
                    ",HDeptNumber,HWorkTimes,HQty" +
                    ",HLevel,HEndFlag,HStopflag,HRemark,HDeptID,HBarCodeForBase" +
-                   ",HProcID,HDayMoney,HUSEORGID) " +
+                   ",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 + ","+ HUSEORGID + ")", 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();
@@ -336,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);
@@ -655,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