From 941cae38a85efe345137fb9aed298c06cfb46dd6 Mon Sep 17 00:00:00 2001 From: duhe <226547893@qq.com> Date: 星期日, 09 七月 2023 11:45:05 +0800 Subject: [PATCH] 任务汇报 列表 --- WebAPI/Controllers/项目管理/工作任务/PM_WorkTaskBillController.cs | 441 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 439 insertions(+), 2 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 de84c62..50aa42d 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" @@ -332,12 +332,12 @@ if (sWhere == null || sWhere.Equals("")) { - ds = oCN.RunProcReturn("select * from PM_WorkTaskBillMain order by HProNumber ", "PM_WorkTaskBillMain"); + ds = oCN.RunProcReturn("select * from PM_WorkTaskBillMain order by HBillNo ", "PM_WorkTaskBillMain"); } else { string sql1 = "select * from PM_WorkTaskBillMain where 1 = 1 "; - string sql = sql1 + sWhere + " order by HProNumber "; + string sql = sql1 + sWhere + " order by HBillNo "; ds = oCN.RunProcReturn(sql, "PM_WorkTaskBillMain"); } @@ -469,5 +469,442 @@ } } #endregion + + + #region 浠诲姟姹囨姤 鏂板/缂栬緫-淇濆瓨 + #region 浠诲姟姹囨姤 琛ㄥご鏁版嵁 + public class PM_WorkTaskReportBill_Main + { + public int HInterID; + public string HBillNo; + public string HDate; + public string HRemark; + public int HOrgID; + 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_WorkTaskReportBill_Sub + { + public int RowID; + public string HProNumber; + public int HProjectStageID; + public string HProjectStageName; + public string HName; + public string HTaskNote; + public string HType; + public double HRelTimes; + public string HReportNote; + public string HAdv; + public string HRemarkSub; + } + #endregion + #region 椤圭洰闃舵娓呭崟 鏂板/缂栬緫-淇濆瓨 + /// <summary> + /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳 + ///鍙傛暟锛歴tring sql銆� + ///杩斿洖鍊硷細object銆� + /// </summary> + [Route("PM_WorkTaskReportBill/AddBill")] + [HttpPost] + public object AddBill_WorkTaskReportBill([FromBody] JObject sMainSub) + { + //鑾峰彇鍙傛暟 + var _value = sMainSub["sMainSub"].ToString(); + string msg1 = _value.ToString(); + //寮�濮嬩簨鍔� + oCN.BeginTran(); + //淇濆瓨涓昏〃 + objJsonResult = AddBillMain_WorkTaskReportBill(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_WorkTaskReportBill(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_WorkTaskReportBill_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_WorkTaskReportBill_edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犵紪杈戞潈闄�!"; + objJsonResult.data = null; + return objJsonResult; + } + } + + msg2 = "[" + msg2.ToString() + "]"; + List<PM_WorkTaskReportBill_Main> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_WorkTaskReportBill_Main>>(msg2); + + int HYear = int.Parse(mainList[0].HDate.Split('-')[0]); + int HPeriod = int.Parse(mainList[0].HDate.Split('-')[1]); + string HBillType = "4754"; + string HBillSubType = ""; + int HBillStatus = 1; + int HInterID = mainList[0].HInterID; + string HBillNo = mainList[0].HBillNo; + string HDate = mainList[0].HDate; + string HRemark = mainList[0].HRemark; + int HOrgID = mainList[0].HOrgID; + string HMaker = mainList[0].HMaker; + string HMakerDate = mainList[0].HMakerDate; + + + if (OperationType == 2) + { + 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; + } + } + + ds = oCN.RunProcReturn("select * from PM_WorkTaskReportBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "PM_WorkTaskReportBillMain"); + + if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板 + { + string sql = "insert into PM_WorkTaskReportBillMain" + + "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HBillStatus,HRemark,HMaker,HMakeDate,HOrgID) " + + "values(" + + "" + HYear + + "," + HPeriod + + ",'" + HBillType + + "','" + HBillSubType + + "'," + HInterID + + ",'" + HDate + + "','" + HBillNo + + "'," + HBillStatus + + ",'" + HRemark + + "','" + HMaker + + "','" + HMakerDate + + "'," + HOrgID + + ")"; + + //涓昏〃 + 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_WorkTaskReportBillMain set " + + "HYear = " + HYear + + ",HPeriod = " + HPeriod + + ",HBillType = '" + HBillType + + "',HBillSubType = '" + HBillSubType + + "',HDate = '" + HDate + + "',HBillNo = '" + HBillNo + + "',HBillStatus = " + HBillStatus + + ",HRemark = '" + HRemark + + "',HMaker = '" + HMaker + + "',HMakeDate = '" + HMakerDate + + "',HOrgID = " + HOrgID + + " where HInterID = " + HInterID; + + oCN.RunProc(sql); + + //鍒犻櫎瀛愯〃 + oCN.RunProc("delete from PM_WorkTaskReportBillSub 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_WorkTaskReportBill(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_WorkTaskReportBill(string msg3, long HInterID, string HBillNo, int OperationType) + { + List<PM_WorkTaskReportBill_Sub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_WorkTaskReportBill_Sub>>(msg3); + int i = 0; //浣滀负瀛愯〃鍐呯爜 + foreach (PM_WorkTaskReportBill_Sub oSub in DetailColl) + { + i++; //鍚屼竴涓富琛ㄤ笅鐨勫瓙琛ㄧ殑鍐呯爜鑷 + + int HEntryID = i; + string HProNumber = oSub.HProNumber; + int HProjectStageID = oSub.HProjectStageID; + string HName = oSub.HName; + string HTaskNote = oSub.HTaskNote; + string HType = oSub.HType; + double HRelTimes = oSub.HRelTimes; + string HReportNote = oSub.HReportNote; + string HAdv = oSub.HAdv; + string HRemark = oSub.HRemarkSub; + + string sql = "insert into PM_WorkTaskReportBillSub" + + "(HInterID,HBillNo_bak,HEntryID,HRemark,HProNumber,HProjectStageID,HName,HTaskNote,HType,HRelTimes,HReportNote,HAdv) " + + "values(" + + "" + HInterID + + ",'" + HBillNo + + "'," + HEntryID + + ",'" + HRemark + + "','" + HProNumber + + "'," + HProjectStageID + + ",'" + HName + + "','" + HTaskNote + + "','" + HType + + "'," + HRelTimes + + ",'" + HReportNote + + "','" + HAdv + + "')"; + + 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_WorkTaskReportBill/list")] + [HttpGet] + public object getWorkTaskReportBill(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_WorkTaskReportBillMain order by HBillNo desc ", "PM_ProjectStageBillMain"); + } + else + { + string sql1 = "select * from PM_WorkTaskReportBillMain where 1 = 1 "; + string sql = sql1 + sWhere + " order by HBillNo desc "; + ds = oCN.RunProcReturn(sql, "PM_WorkTaskReportBillMain"); + } + + //娣诲姞鍒楀悕 + 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_WorkTaskReportBill/editInit")] + [HttpGet] + public object getWorkTaskReportBilleditInit(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_WorkTaskReportBill_EditInit " + HInterID, "h_p_PM_WorkTaskReportBill_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_WorkTaskReportBill/delete")] + [HttpGet] + public object deleteWorkTaskReportBill(string HInterID, string user) + { + try + { + //鏌ョ湅鏉冮檺 + if (!DBUtility.ClsPub.Security_Log("Pm_WorkTaskReportBill_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_WorkTaskReportBillMain where HInterID = " + HInterID); + oCN.RunProc("delete from PM_WorkTaskReportBillSub 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