From eefd7d9b5a0913827f836b2988988d7c886b6d06 Mon Sep 17 00:00:00 2001 From: zrg <z18737863051@163.com> Date: 星期二, 27 二月 2024 10:46:55 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/项目管理/工作任务/PM_WorkTaskBillController.cs | 571 ++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 482 insertions(+), 89 deletions(-) diff --git "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs" "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs" index 44b6bdf..75d10cd 100644 --- "a/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs" +++ "b/WebAPI/Controllers/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\344\275\234\344\273\273\345\212\241/PM_WorkTaskBillController.cs" @@ -29,6 +29,7 @@ { public int HInterID; public string HBillNo; + public int HProjectID; public string HProNumber; public string HProName; public int HProjectStageID; @@ -63,6 +64,7 @@ public int HMainSourceEntryID; public string HMainSourceBillNo; public string HMainSourceBillType; + public int HOrderLevID; } #endregion @@ -146,6 +148,7 @@ string HBillSubType = ""; int HInterID = mainList[0].HInterID; string HBillNo = mainList[0].HBillNo; + int HProjectID = mainList[0].HProjectID; string HProNumber = mainList[0].HProNumber; string HProName = mainList[0].HProName; int HProjectStageID = mainList[0].HProjectStageID; @@ -179,6 +182,8 @@ int HMainSourceEntryID = mainList[0].HMainSourceEntryID; string HMainSourceBillNo = mainList[0].HMainSourceBillNo; string HMainSourceBillType = mainList[0].HMainSourceBillType; + int HOrderLevID = mainList[0].HOrderLevID; + if (OperationType == 2) @@ -199,8 +204,8 @@ if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板 { string sql = "insert into PM_WorkTaskBillMain" + - "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HBillNo,HProNumber,HProjectStageID,HName,HDate,HTaskNote,HPlanTimes" + - ",HSelfTimes,HLastDate,HSendEmp,HReceiveEmp,HType,HCopyEmp,HRemark,HOrgID,HMaker,HMakeDate)" + + "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HBillNo,HProjectID,HProNumber,HProjectStageID,HName,HDate,HTaskNote,HPlanTimes" + + ",HSelfTimes,HLastDate,HSendEmp,HReceiveEmp,HType,HCopyEmp,HRemark,HOrgID,HMaker,HMakeDate,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HOrderLevID)" + "values(" + "" + HYear + "," + HPeriod + @@ -208,75 +213,8 @@ "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + - "','" + HProNumber + - "'," + HProjectStageID + - ",'" + HName + - "','" + HDate + - "','" + HTaskNote + - "'," + HPlanTimes + - "," + HSelfTimes + - ",'" + HLastDate + - "','" + HSendEmp + - "','" + HReceiveEmp + - "','" + HType + - "','" + HCopyEmp + - "','" + HRemark + - "'," + HOrgID + - ",'" + 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_WorkTaskBillMain set " + - "HYear = " + HYear + - ",HPeriod = " + HPeriod + - ",HBillType = '" + HBillType + - "',HBillSubType = '" + HBillSubType + - "',HBillNo = '" + HBillNo + - "',HProNumber = '" + HProNumber + - "',HProjectStageID = " + HProjectStageID + - ",HName = '" + HName + - "',HDate = '" + HDate + - "',HTaskNote = '" + HTaskNote + - "',HPlanTimes = " + HPlanTimes + - ",HSelfTimes = " + HSelfTimes + - ",HLastDate = '" + HLastDate + - "',HSendEmp = '" + HSendEmp + - "',HReceiveEmp = '" + HReceiveEmp + - "',HType = '" + HType + - "',HCopyEmp = '" + HCopyEmp + - "',HRemark = '" + HRemark + - "',HOrgID = " + HOrgID + - ",HUpdater = '" + HUpdater + - "',HUpdateDate = '" + HUpdaterDate + - "' where HInterID = " + HInterID; - - oCN.RunProc(sql); - - //鍒犻櫎瀛愯〃 - oCN.RunProc("delete from PM_WorkTaskBillSub 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); - }else if (OperationType == 4 && ds.Tables[0].Rows.Count == 0) //涓嬫帹 - { - string sql = "insert into PM_WorkTaskBillMain" + - "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HBillNo,HProNumber,HProjectStageID,HName,HDate,HTaskNote,HPlanTimes" + - ",HSelfTimes,HLastDate,HSendEmp,HReceiveEmp,HType,HCopyEmp,HRemark,HOrgID,HMaker,HMakeDate,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType)" + - "values(" + - "" + HYear + - "," + HPeriod + - ",'" + HBillType + - "','" + HBillSubType + - "'," + HInterID + - ",'" + HBillNo + - "','" + HProNumber + + "'," + HProjectID + + ",'" + HProNumber + "'," + HProjectStageID + ",'" + HName + "','" + HDate + @@ -296,6 +234,87 @@ "," + HMainSourceEntryID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + + "','" + HOrderLevID + + "')"; + + //涓昏〃 + 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_WorkTaskBillMain set " + + "HYear = " + HYear + + ",HPeriod = " + HPeriod + + ",HBillType = '" + HBillType + + "',HBillSubType = '" + HBillSubType + + "',HBillNo = '" + HBillNo + + "',HProjectID = " + HProjectID + + ",HProNumber = '" + HProNumber + + "',HProjectStageID = " + HProjectStageID + + ",HName = '" + HName + + "',HDate = '" + HDate + + "',HTaskNote = '" + HTaskNote + + "',HPlanTimes = " + HPlanTimes + + ",HSelfTimes = " + HSelfTimes + + ",HLastDate = '" + HLastDate + + "',HSendEmp = '" + HSendEmp + + "',HReceiveEmp = '" + HReceiveEmp + + "',HType = '" + HType + + "',HCopyEmp = '" + HCopyEmp + + "',HRemark = '" + HRemark + + "',HOrgID = " + HOrgID + + ",HUpdater = '" + HUpdater + + "',HUpdateDate = '" + HUpdaterDate + + "',HMainSourceInterID = " + HMainSourceInterID + + ",HMainSourceEntryID = " + HMainSourceEntryID + + ",HMainSourceBillNo = '" + HMainSourceBillNo + + "',HMainSourceBillType = '" + HMainSourceBillType + + "',HOrderLevID = '" + HOrderLevID + + "' where HInterID = " + HInterID; + + oCN.RunProc(sql); + + //鍒犻櫎瀛愯〃 + oCN.RunProc("delete from PM_WorkTaskBillSub 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); + }else if (OperationType == 4 && ds.Tables[0].Rows.Count == 0) //涓嬫帹 + { + string sql = "insert into PM_WorkTaskBillMain" + + "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HBillNo,HProjectID,HProNumber,HProjectStageID,HName,HDate,HTaskNote,HPlanTimes" + + ",HSelfTimes,HLastDate,HSendEmp,HReceiveEmp,HType,HCopyEmp,HRemark,HOrgID,HMaker,HMakeDate,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HOrderLevID )" + + "values(" + + "" + HYear + + "," + HPeriod + + ",'" + HBillType + + "','" + HBillSubType + + "'," + HInterID + + ",'" + HBillNo + + "'," + HProjectID + + ",'" + HProNumber + + "'," + HProjectStageID + + ",'" + HName + + "','" + HDate + + "','" + HTaskNote + + "'," + HPlanTimes + + "," + HSelfTimes + + ",'" + HLastDate + + "','" + HSendEmp + + "','" + HReceiveEmp + + "','" + HType + + "','" + HCopyEmp + + "','" + HRemark + + "'," + HOrgID + + ",'" + HMaker + + "','" + HMakerDate + + "'," + HMainSourceInterID + + "," + HMainSourceEntryID + + ",'" + HMainSourceBillNo + + "','" + HMainSourceBillType + + "','" + HOrderLevID + "')"; //涓昏〃 oCN.RunProc(sql); @@ -388,6 +407,101 @@ string sql = sql1 + sWhere + " order by 鍗曟嵁鍙� desc"; ds = oCN.RunProcReturn(sql, "h_v_PM_WorkTaskBillList"); } + + //娣诲姞鍒楀悕 + 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 sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("PM_WorkTaskBill/XTList")] + [HttpGet] + public object XTList(string HInterID,string user) + { + try + { + List<object> columnNameList = new List<object>(); + + ds = oCN.RunProcReturn("select * from h_v_PM_WorkTaskBillMyList where HInterID ='"+ HInterID + "' and 鎺ュ崟浜�='"+user+"'", "h_v_PM_WorkTaskBillMyList"); + + + //娣诲姞鍒楀悕 + 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 sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("PM_WorkTaskBill/getOrder")] + [HttpGet] + public object getOrder() + { + try + { + List<object> columnNameList = new List<object>(); + + //if (HItemID == null || HItemID.Equals("")) + //{ + //ds = oCN.RunProcReturn("select * from Gy_OrderLev ", "Gy_OrderLev"); + //} + //else + //{ + // string sql = "select * from Gy_OrderLev where HItemID='"+ HItemID + "'"; + // ds = oCN.RunProcReturn(sql, "Gy_OrderLev"); + //} + ds = oCN.RunProcReturn("select * from Gy_OrderLev ", "Gy_OrderLev"); + //娣诲姞鍒楀悕 foreach (DataColumn col in ds.Tables[0].Columns) @@ -948,6 +1062,163 @@ } #endregion + #region 宸ヤ綔浠诲姟 寮�濮嬩换鍔�/鎾ら攢寮�濮嬪姛鑳� + [Route("PM_WorkTaskBill/BeginPM_WorkTaskBill")] + [HttpGet] + public object BeginPM_WorkTaskBill(string HInterID, int Type, string user) + { + try + { + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + ClsPub.CurUserName = user; + BillOld.MvarItemKey = "PM_WorkTaskBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + //Type 0 寮�濮嬩换鍔� 1 鎾ら攢浠诲姟 2缁撴潫浠诲姟 + if (Type == 0) + { + //鍒ゆ柇鍗曟嵁鏄惁瀛樺湪 + DataSet ds; + string sql = "select * from PM_WorkTaskBillMain where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, "PM_WorkTaskBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + if (DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HMainSourceBillType"])== "4759") + { + var lInterID = ds.Tables[0].Rows[0]["HMainSourceInterID"]; + string sql1 = "update PM_WorkTaskBillMain set HTaskStatus='宸插紑濮�' where HinterID = " + HInterID; + oCN.RunProc(sql1); + string sql2 = "update PM_CustomerTaskBillMain set HTaskStatus='宸插紑濮�' where HinterID = " + lInterID; + oCN.RunProc(sql2); + } + else + { + string sql2 = "update PM_WorkTaskBillMain set HTaskStatus='宸插紑濮�' where HinterID = " + HInterID; + oCN.RunProc(sql2); + } + + + } + } + else if(Type==1) + { + //鍒ゆ柇鍗曟嵁鏄惁瀛樺湪 + DataSet ds; + string sql = "select * from PM_WorkTaskBillMain where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, "PM_WorkTaskBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + var lInterID = ds.Tables[0].Rows[0]["HMainSourceInterID"]; + string sql1 = "update PM_WorkTaskBillMain set HTaskStatus='鏈紑濮�' where HinterID = " + HInterID; + oCN.RunProc(sql1); + string sql2 = "update PM_CustomerTaskBillMain set HTaskStatus='鏈紑濮�' where HinterID = " + lInterID; + oCN.RunProc(sql2); + } + } + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎵ц鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; ; + + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 宸ヤ綔浠诲姟 鍌績娆℃暟鍔熻兘 + [Route("PM_WorkTaskBill/UpdateHHasten")] + [HttpGet] + public object UpdateHHasten(string HInterID, int HHasten, string user) + { + try + { + + if (string.IsNullOrWhiteSpace(HInterID)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "HInterID涓虹┖锛�"; + objJsonResult.data = null; + return objJsonResult; + } + + ClsPub.CurUserName = user; + BillOld.MvarItemKey = "PM_WorkTaskBillMain"; + oCN.BeginTran();//寮�濮嬩簨鍔� + + DataSet ds; + string sql = "select * from PM_WorkTaskBillMain where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql, "PM_WorkTaskBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + string sql1 = "update PM_WorkTaskBillMain set HHasten='"+ HHasten+ "' where HinterID = " + HInterID; + ds = oCN.RunProcReturn(sql1, "PM_WorkTaskBillMain"); + } + + oCN.Commit();//鎻愪氦浜嬪姟 + + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鎵ц鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; ; + + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎵ц澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + #region 浠诲姟姹囨姤 鏂板/缂栬緫-淇濆瓨 #region 浠诲姟姹囨姤 琛ㄥご鏁版嵁 public class PM_WorkTaskReportBill_Main @@ -982,6 +1253,7 @@ public class PM_WorkTaskReportBill_Sub { public int RowID; + public int HProjectID; public string HProNumber; public int HProjectStageID; public string HProjectStageName; @@ -996,9 +1268,10 @@ public int HSourceEntryID; public string HSourceBillNo; public string HSourceBillType; + public bool HFinishFlag; } #endregion - #region 椤圭洰闃舵娓呭崟 鏂板/缂栬緫-淇濆瓨 + #region 浠诲姟姹囨姤 鏂板/缂栬緫-淇濆瓨 /// <summary> /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 ///鍙傛暟锛歴tring sql銆� @@ -1032,7 +1305,7 @@ return objJsonResult; } #endregion - #region 娣诲姞 椤圭洰闃舵娓呭崟 涓昏〃 + #region 娣诲姞 浠诲姟姹囨姤 涓昏〃 public json AddBillMain_WorkTaskReportBill(string msg1) { string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); @@ -1094,16 +1367,23 @@ string HUpdater = mainList[0].HUpdater; string HUpdaterDate = mainList[0].HUpdaterDate; - - - if (OperationType == 2) + //淇濆瓨鍓嶆帶鍒� + DataSet BeforeDs = oCN.RunProcReturn("Exec h_p_PM_WorkTaskReportBill_BeforeSaveCtrl " + HInterID.ToString() + ",'" + HBillNo + "'," + OperationType.ToString(), "h_p_PM_WorkTaskReportBill_BeforeSaveCtrl"); + if (BeforeDs == null || BeforeDs.Tables[0].Rows.Count == 0) { - ds = oCN.RunProcReturn("select * from PM_WorkTaskReportBillMain where HBillNo ='" + HBillNo + "'", "PM_WorkTaskReportBillMain"); - if (ds.Tables[0].Rows.Count > 0) + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨鍓嶅垽鏂け璐ワ紒"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + if (DBUtility.ClsPub.isLong(BeforeDs.Tables[0].Rows[0]["HBack"]) == 1) { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "鍗曟嵁鍙烽噸澶�,璇烽噸鏂拌緭鍏�!"; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(BeforeDs.Tables[0].Rows[0]["HRemark"]); objJsonResult.data = null; return objJsonResult; } @@ -1155,6 +1435,8 @@ oCN.RunProc(sql); + //鍒犻櫎瀛愯〃鏃� 鍥炲~宸ヤ綔浠诲姟鍗曞叧鑱旀暟閲忋�佸崟鎹姸鎬� + oCN.RunProc("exec h_p_PM_UpDateRelation_WorkTaskToWorkTaskReport_Delete " + HInterID.ToString()); //鍒犻櫎瀛愯〃 oCN.RunProc("delete from PM_WorkTaskReportBillSub where HInterID='" + HInterID + "'"); //璁板綍鏃ュ織 @@ -1217,7 +1499,7 @@ } } #endregion - #region 娣诲姞椤圭洰闃舵娓呭崟 瀛愯〃 + #region 娣诲姞浠诲姟姹囨姤 瀛愯〃 public json AddBillSub_WorkTaskReportBill(string msg3, long HInterID, string HBillNo, int OperationType) { List<PM_WorkTaskReportBill_Sub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_WorkTaskReportBill_Sub>>(msg3); @@ -1227,6 +1509,7 @@ i++; //鍚屼竴涓富琛ㄤ笅鐨勫瓙琛ㄧ殑鍐呯爜鑷 int HEntryID = i; + int HProjectID = oSub.HProjectID; string HProNumber = oSub.HProNumber; int HProjectStageID = oSub.HProjectStageID; string HName = oSub.HName; @@ -1240,16 +1523,41 @@ int HSourceEntryID = oSub.HSourceEntryID; string HSourceBillNo = oSub.HSourceBillNo; string HSourceBillType = oSub.HSourceBillType; + bool HFinishFlag = oSub.HFinishFlag; + if (HFinishFlag==true) + { + //鍒ゆ柇鍗曟嵁鏄惁瀛樺湪 + DataSet ds; + string sqls = "select * from PM_WorkTaskBillMain where HinterID = " + HSourceInterID; + ds = oCN.RunProcReturn(sqls, "PM_WorkTaskBillMain"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦紒"; + objJsonResult.data = null; + return objJsonResult; + } + if (ds.Tables[0] != null && ds.Tables[0].Rows.Count > 0) + { + var lInterID = ds.Tables[0].Rows[0]["HMainSourceInterID"]; + string sql1 = "update PM_WorkTaskBillMain set HTaskStatus='宸插畬鎴�' where HinterID = " + HSourceInterID; + oCN.RunProc(sql1); + string sql2 = "update PM_CustomerTaskBillMain set HTaskStatus='宸插畬鎴�' where HinterID = " + lInterID; + oCN.RunProc(sql2); + } + } string sql = "insert into PM_WorkTaskReportBillSub" + - "(HInterID,HBillNo_bak,HEntryID,HRemark,HProNumber,HProjectStageID,HName,HTaskNote,HType,HRelTimes,HReportNote,HAdv,HSourceInterID,HSourceEntryID,HSourceBillType,HSourceBillNo) " + + "(HInterID,HBillNo_bak,HEntryID,HRemark,HProjectID,HProNumber,HProjectStageID,HName,HTaskNote,HType,HRelTimes,HReportNote,HAdv,HSourceInterID,HSourceEntryID,HSourceBillType,HSourceBillNo,HFinishFlag) " + "values(" + "" + HInterID + ",'" + HBillNo + "'," + HEntryID + ",'" + HRemark + - "','" + HProNumber + + "'," + HProjectID + + ",'" + HProNumber + "'," + HProjectStageID + ",'" + HName + "','" + HTaskNote + @@ -1261,16 +1569,44 @@ "," + HSourceEntryID + ",'" + HSourceBillType + "','" + HSourceBillNo + - "')"; + "'," + DBUtility.ClsPub.BoolToString(HFinishFlag) + + ")"; oCN.RunProc(sql); } - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = null; - objJsonResult.data = null; - return objJsonResult; + //淇濆瓨鍚庢帶鍒� + DataSet AfterDs = oCN.RunProcReturn("Exec h_p_PM_WorkTaskReportBill_AfterSaveCtrl " + HInterID.ToString() + ",'" + HBillNo + "'," + OperationType.ToString(), "h_p_PM_WorkTaskReportBill_AfterSaveCtrl"); + if (AfterDs == null || AfterDs.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨鍚庡垽鏂け璐ワ紒"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + if (DBUtility.ClsPub.isLong(AfterDs.Tables[0].Rows[0]["HBack"]) == 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "淇濆瓨澶辫触锛�" + DBUtility.ClsPub.isStrNull(AfterDs.Tables[0].Rows[0]["HRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + //鍥炲~宸ヤ綔浠诲姟鍗曞叧鑱旀暟閲忋�佸崟鎹姸鎬� + oCN.RunProc("exec h_p_PM_UpDateRelation_WorkTaskToWorkTaskReport_Add " + HInterID.ToString()); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = null; + objJsonResult.data = null; + return objJsonResult; + } + } } #endregion #endregion @@ -1420,6 +1756,8 @@ oCN.BeginTran(); + //鍒犻櫎瀛愯〃鏃� 鍥炲~宸ヤ綔浠诲姟鍗曞叧鑱旀暟閲忋�佸崟鎹姸鎬� + oCN.RunProc("exec h_p_PM_UpDateRelation_WorkTaskToWorkTaskReport_Delete " + HInterID.ToString()); oCN.RunProc("delete from PM_WorkTaskReportBillMain where HInterID = " + HInterID); oCN.RunProc("delete from PM_WorkTaskReportBillSub where HInterID='" + HInterID + "'"); @@ -1427,7 +1765,7 @@ objJsonResult.code = "1"; objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; + objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; objJsonResult.data = null; return objJsonResult; } @@ -1932,5 +2270,60 @@ } } #endregion + + #region 鎴戠殑浠诲姟鍒楄〃锛堟湭瀹屾垚锛屽凡瀹屾垚锛屾鍦ㄨ繘琛岋級 + /// <summary> + /// 杩斿洖鎴戠殑浠诲姟鍒楄〃 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("PM_WorkTaskBill/PM_WorkTaskBillMainList")] + [HttpGet] + public object PM_WorkTaskBillMainList( string user) + { + try + { + List<object> columnNameList = new List<object>(); + + ds = oCN.RunProcReturn("exec h_p_PM_WorkTaskBillMyList " + user, "h_p_PM_WorkTaskBillMyList"); + + if (ds.Tables[0].Rows.Count != 0 || ds != null) + { + //娣诲姞鍒楀悕 + 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; + objJsonResult.list = columnNameList; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犳暟鎹�"; + 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