From bb573bf322e16c7dede562b4223fbe36091b6f80 Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期日, 09 七月 2023 02:06:36 +0800
Subject: [PATCH] 项目阶段清单 列表

---
 WebAPI/Controllers/项目管理/项目阶段/Gy_ProjectStageController.cs |  436 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 435 insertions(+), 1 deletions(-)

diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
index 8ae2bce..9fae215 100644
--- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
+++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\351\241\271\347\233\256\351\230\266\346\256\265/Gy_ProjectStageController.cs"
@@ -8,6 +8,7 @@
 using System.Linq;
 using System.Web;
 using System.Web.Http;
+using System.Windows.Forms;
 using WebAPI.Models;
 
 namespace WebAPI.Controllers.椤圭洰绠$悊.椤圭洰闃舵
@@ -18,7 +19,8 @@
         private json objJsonResult = new json();
         public DataSet ds = new DataSet();
         public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
-
+        string user_LongShan = "";
+        string HName_LongShan = "";
 
 
         #region 椤圭洰闃舵 鏂板/缂栬緫
@@ -356,5 +358,437 @@
             }
         }
         #endregion
+
+
+        #region 椤圭洰闃舵娓呭崟 鏂板/缂栬緫- 淇濆瓨
+        #region 椤圭洰闃舵娓呭崟 琛ㄥご鏁版嵁
+        public class PM_ProjectStageBill_Main
+        {
+            public int HInterID;
+            public string HBillNo;
+            public string HDate;
+            public string HRemark;
+            public string HMaker;
+            public string HUpdater;
+            public string HChecker;
+            public string HMakerDate;
+            public string HUpdaterDate;
+            public string HCheckerDate;
+            public string HCloseMan;
+            public string HDeleteMan;
+            public string HBacker;
+            public string HCloseManDate;
+            public string HDeleteManDate;
+            public string HBackerDate;
+            public string HBackRemark;
+        }
+        #endregion
+        #region 椤圭洰闃舵娓呭崟 瀛愯〃鏁版嵁
+        public class PM_ProjectStageBill_Sub
+        {
+            public int RowID;
+            public int HProjectStageID;
+            public string HProjectStageName;
+            public string HStageNote;
+            public int HPMGoodsID;
+            public string HPMGoodsName;
+            public int HIsKey;
+            public double HRate;
+            //public int HEmpID;
+            //public string HEmpName;
+            //public int HCheckEmpID;
+            //public string HCheckEmpName;
+            //public string HFinishDate;
+            //public double HWorkDays;
+            public string HRemarkSub;
+        }
+        #endregion
+        #region 椤圭洰闃舵娓呭崟 鏂板/缂栬緫-淇濆瓨
+        /// <summary>
+        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectStageBill/AddBill")]
+        [HttpPost]
+        public object AddBill([FromBody] JObject sMainSub)
+        {
+            //鑾峰彇鍙傛暟
+            var _value = sMainSub["sMainSub"].ToString();
+            string msg1 = _value.ToString();
+            //寮�濮嬩簨鍔�
+            oCN.BeginTran();
+            //淇濆瓨涓昏〃
+            objJsonResult = AddBillMain(msg1);
+            if (objJsonResult.code == "0")
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = objJsonResult.Message;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            oCN.Commit();
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+            objJsonResult.data = ds.Tables[0];
+            return objJsonResult;
+        }
+        #endregion
+        #region 娣诲姞 椤圭洰闃舵娓呭崟 涓昏〃
+        public json AddBillMain(string msg1)
+        {
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string msg3 = sArray[1].ToString();
+            int OperationType = int.Parse(sArray[2].ToString());//鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2 澶嶅埗
+            string user = sArray[3].ToString();//鐢ㄦ埛鍚�
+            string HComputerName = SystemInformation.ComputerName; //璁惧鍚嶇О
+            user_LongShan = sArray[3].ToString();//鐢ㄦ埛鍚�
+
+            try
+            {
+                if (OperationType == 1)
+                {
+                    //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                    if (!DBUtility.ClsPub.Security_Log("Pm_ProjectStageBill_add", 1, false, user))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏃犳柊澧炴潈闄�!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else if (OperationType == 3)
+                {
+                    //鍒ゆ柇鏄惁鏈夌紪杈戞潈闄�
+                    if (!DBUtility.ClsPub.Security_Log("Pm_ProjectStageBill_edit", 1, false, user))
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鏃犵紪杈戞潈闄�!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                msg2 = "[" + msg2.ToString() + "]";
+                List<PM_ProjectStageBill_Main> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_ProjectStageBill_Main>>(msg2);
+
+                int HYear = int.Parse(mainList[0].HDate.Split('-')[0]);
+                int HPeriod = int.Parse(mainList[0].HDate.Split('-')[1]);
+                string HBillType = "4751";
+                string HBillSubType = "";
+                int HInterID = mainList[0].HInterID;
+                string HDate = mainList[0].HDate;
+                string HBillNo = mainList[0].HBillNo;
+                int HBillStatus = 1;
+                string HRemark = mainList[0].HRemark;
+                string HMaker = mainList[0].HMaker;
+                string HMakerDate = mainList[0].HMakerDate;
+
+                if (OperationType == 2)
+                {
+                    ds = oCN.RunProcReturn("select * from PM_ProjectStageBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectStageBill");
+                    if (ds.Tables[0].Rows.Count > 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙烽噸澶�,璇烽噸鏂拌緭鍏�!";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                ds = oCN.RunProcReturn("select * from PM_ProjectStageBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "PM_ProjectStageBillMain");
+
+                if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
+                {
+                    string sql = "insert into PM_ProjectStageBillMain" +
+                        "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HBillStatus,HRemark,HMaker,HMakeDate) " +
+                        "values(" +
+                        "" + HYear +
+                        "," + HPeriod +
+                        ",'" + HBillType +
+                        "','" + HBillSubType +
+                        "'," + HInterID +
+                        ",'" + HDate +
+                        "','" + HBillNo +
+                        "'," + HBillStatus +
+                        ",'" + HRemark +
+                        "','" + HMaker +
+                        "','" + HMakerDate +
+                        "')";
+
+                    //涓昏〃
+                    oCN.RunProc(sql);
+                    LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",鏂板椤圭洰闃舵娓呭崟:" + HBillNo);
+                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "鏂板椤圭洰闃舵娓呭崟锛�" + HBillNo + "','LMES-椤圭洰闃舵娓呭崟妯″潡','" + DBUtility.ClsPub.IPAddress + "','鏂板鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //缂栬緫
+                {
+                    string sql = "update PM_ProjectStageBillMain set " +
+                        "HYear = " + HYear +
+                        ",HPeriod = " + HPeriod +
+                        ",HBillType = '" + HBillType +
+                        "',HBillSubType = '" + HBillSubType +
+                        "',HDate = '" + HDate +
+                        "',HBillNo = '" + HBillNo +
+                        "',HBillStatus = " + HBillStatus +
+                        ",HRemark = '" + HRemark +
+                        "',HMaker = '" + HMaker +
+                        "',HMakeDate = '" + HMakerDate +
+                        "' where HInterID = " + HInterID;
+
+                    oCN.RunProc(sql);
+
+                    //鍒犻櫎瀛愯〃
+                    oCN.RunProc("delete from PM_ProjectStageBillSub where HInterID='" + HInterID + "'");
+                    //璁板綍鏃ュ織
+                    LogService.Write("鐢ㄦ埛:" + user + ",鏃ユ湡:" + DateTime.Now + ",淇敼椤圭洰闃舵娓呭崟:" + HBillNo);
+                    oCN.RunProc("Insert into System_log (GeginDate, userid, WorkstationName, WorkList, SystemName, NetuserName, State) select GETDATE(),'" + user + "','" + HComputerName + "','" + "淇敼椤圭洰闃舵娓呭崟锛�" + HBillNo + "','LMES-椤圭洰闃舵娓呭崟妯″潡','" + DBUtility.ClsPub.IPAddress + "','淇敼鍗曟嵁'", ref DBUtility.ClsPub.sExeReturnInfo);
+                }
+                //淇濆瓨瀛愯〃
+                objJsonResult = AddBillSub(msg3, HInterID, HBillNo, OperationType);
+
+                if (objJsonResult.code == "0")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = objJsonResult.Message;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = null;
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+        #region 娣诲姞椤圭洰闃舵娓呭崟 瀛愯〃
+        public json AddBillSub(string msg3, long HInterID, string HBillNo, int OperationType)
+        {
+            List<PM_ProjectStageBill_Sub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_ProjectStageBill_Sub>>(msg3);
+            int i = 0;                                          //浣滀负瀛愯〃鍐呯爜
+            foreach (PM_ProjectStageBill_Sub oSub in DetailColl)
+            {
+                i++;                                            //鍚屼竴涓富琛ㄤ笅鐨勫瓙琛ㄧ殑鍐呯爜鑷
+
+                int HEntryID = i;
+                int HProjectStageID = oSub.HProjectStageID;
+                string HStageNote = oSub.HStageNote;
+                int HPMGoodsID = oSub.HPMGoodsID;
+                string HRelationGoods = oSub.HPMGoodsName;
+                int HIsKey = oSub.HIsKey;
+                double HRate = oSub.HRate;
+                string HRemark = oSub.HRemarkSub;
+
+                string sql = "insert into PM_ProjectStageBillSub" +
+                    "(HInterID,HBillNo_bak,HEntryID,HRemark,HProjectStageID,HStageNote,HPMGoodsID,HRelationGoods,HIsKey,HRate) " +
+                    "values(" +
+                    "" + HInterID +
+                    ",'" + HBillNo +
+                    "'," + HEntryID +
+                    ",'" + HRemark +
+                    "'," + HProjectStageID +
+                    ",'" + HStageNote +
+                    "'," + HPMGoodsID +
+                    ",'" + HRelationGoods +
+                    "'," + HIsKey +
+                    "," + HRate +
+                    ")";
+
+                oCN.RunProc(sql);
+            }
+
+            objJsonResult.code = "1";
+            objJsonResult.count = 1;
+            objJsonResult.Message = null;
+            objJsonResult.data = null;
+            return objJsonResult;
+        }
+        #endregion
+        #endregion
+
+        #region 椤圭洰闃舵娓呭崟 鏌ヨ
+        /// <summary>
+        /// 杩斿洖椤圭洰闃舵鍒楄〃
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectStageBill/list")]
+        [HttpGet]
+        public object getProjectStageBill(string sWhere, string user)
+        {
+            try
+            {
+                List<object> columnNameList = new List<object>();
+                //鏌ョ湅鏉冮檺
+                //if (!DBUtility.ClsPub.Security_Log("Gy_ProjectStage_Query", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                if (sWhere == null || sWhere.Equals(""))
+                {
+                    ds = oCN.RunProcReturn("select * from PM_ProjectStageBillMain order by HInterID desc ", "PM_ProjectStageBillMain");
+                }
+                else
+                {
+                    string sql1 = "select * from PM_ProjectStageBillMain where 1 = 1 ";
+                    string sql = sql1 + sWhere + " order by HInterID desc ";
+                    ds = oCN.RunProcReturn(sql, "PM_ProjectStageBillMain");
+                }
+
+                //娣诲姞鍒楀悕
+                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;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰闃舵娓呭崟 缂栬緫-椤甸潰璧嬪��
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectStageBill/editInit")]
+        [HttpGet]
+        public object getProjectStageBilleditInit(string HInterID, string user)
+        {
+            try
+            {
+                List<DataTable> tableList = new List<DataTable>();
+
+                //鏌ョ湅鏉冮檺
+                //if (!DBUtility.ClsPub.Security_Log("Pm_ProjectStageBill_edit", 1, false, user))
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "鏃犳煡鐪嬫潈闄愶紒";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                ds = oCN.RunProcReturn("exec h_p_PM_ProjectStageBill_EditInit " + HInterID, "h_p_PM_ProjectStageBill_EditInit");
+                tableList.Add(ds.Tables[0]);
+                tableList.Add(ds.Tables[1]);
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = tableList;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 椤圭洰闃舵娓呭崟 鍒犻櫎
+        /// <summary>
+        ///鍙傛暟锛歴tring HInterID銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("PM_ProjectStageBill/delete")]
+        [HttpGet]
+        public object deleteProjectStageBill(string HInterID, string user)
+        {
+            try
+            {
+                //鏌ョ湅鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log("Pm_ProjectStageBill_delete", 1, false, user))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犲垹闄ゆ潈闄愶紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                if (HInterID == null || HInterID.Equals(""))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓嶈兘涓虹┖锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                oCN.BeginTran();
+
+                oCN.RunProc("delete from PM_ProjectStageBillMain where HInterID = " + HInterID);
+                oCN.RunProc("delete from PM_ProjectStageBillSub where HInterID='" + HInterID + "'");
+
+                oCN.Commit();
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
     }
 }
\ No newline at end of file

--
Gitblit v1.9.1