From b8c2edb43cf778ca0203a3a592815aeeb6bcdcde Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期一, 10 七月 2023 21:42:39 +0800
Subject: [PATCH] 1
---
WebAPI/Controllers/项目管理/项目阶段/Gy_ProjectStageController.cs | 490 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 484 insertions(+), 6 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 9fae215..18bcc3f 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"
@@ -392,7 +392,7 @@
public string HStageNote;
public int HPMGoodsID;
public string HPMGoodsName;
- public int HIsKey;
+ public bool HIsKey;
public double HRate;
//public int HEmpID;
//public string HEmpName;
@@ -489,6 +489,8 @@
string HRemark = mainList[0].HRemark;
string HMaker = mainList[0].HMaker;
string HMakerDate = mainList[0].HMakerDate;
+ string HUpdater = mainList[0].HUpdater;
+ string HUpdaterDate = mainList[0].HUpdaterDate;
if (OperationType == 2)
{
@@ -539,8 +541,8 @@
"',HBillNo = '" + HBillNo +
"',HBillStatus = " + HBillStatus +
",HRemark = '" + HRemark +
- "',HMaker = '" + HMaker +
- "',HMakeDate = '" + HMakerDate +
+ "',HUpdater = '" + HUpdater +
+ "',HUpdateDate = '" + HUpdaterDate +
"' where HInterID = " + HInterID;
oCN.RunProc(sql);
@@ -593,7 +595,7 @@
string HStageNote = oSub.HStageNote;
int HPMGoodsID = oSub.HPMGoodsID;
string HRelationGoods = oSub.HPMGoodsName;
- int HIsKey = oSub.HIsKey;
+ int HIsKey = oSub.HIsKey?1:0;
double HRate = oSub.HRate;
string HRemark = oSub.HRemarkSub;
@@ -649,12 +651,12 @@
if (sWhere == null || sWhere.Equals(""))
{
- ds = oCN.RunProcReturn("select * from PM_ProjectStageBillMain order by HInterID desc ", "PM_ProjectStageBillMain");
+ ds = oCN.RunProcReturn("select * from PM_ProjectStageBillMain order by HBillNo desc ", "PM_ProjectStageBillMain");
}
else
{
string sql1 = "select * from PM_ProjectStageBillMain where 1 = 1 ";
- string sql = sql1 + sWhere + " order by HInterID desc ";
+ string sql = sql1 + sWhere + " order by HBillNo desc ";
ds = oCN.RunProcReturn(sql, "PM_ProjectStageBillMain");
}
@@ -790,5 +792,481 @@
}
}
#endregion
+
+
+ #region 椤圭洰闃舵姹囨姤 鏂板/缂栬緫-淇濆瓨
+ #region 椤圭洰闃舵姹囨姤 琛ㄥご鏁版嵁
+ public class PM_ProjectReportBill_Main
+ {
+ public int HInterID;
+ public string HBillNo;
+ public string HDate;
+ public string HProNumber;
+ public int HProjectStageID;
+ public string HProjectStageName;
+ public string HStageNote;
+ public string HRelationGoods;
+ public int HIsKey;
+ public int HReportEmpID;
+ public string HReportEmpName;
+ public string HReportNote;
+ public string HReportGoods;
+ public string HReceiveEmp;
+ public string HCopyEmp;
+ public double HRate;
+ public int HOrgID;
+ 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_ProjectReportBill_Sub
+ {
+ public int RowID;
+ public int HEmpID;
+ public string HEmpName;
+ public bool HIsPM;
+ public double HRate;
+ public double HAvgMoney;
+ public double HCountMoney;
+ public string HRemarkSub;
+ }
+ #endregion
+ #region 椤圭洰闃舵姹囨姤 鏂板/缂栬緫-淇濆瓨
+ /// <summary>
+ /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
+ ///鍙傛暟锛歴tring sql銆�
+ ///杩斿洖鍊硷細object銆�
+ /// </summary>
+ [Route("PM_ProjectReportBill/AddBill")]
+ [HttpPost]
+ public object AddBill_ProjectReportBill([FromBody] JObject sMainSub)
+ {
+ //鑾峰彇鍙傛暟
+ var _value = sMainSub["sMainSub"].ToString();
+ string msg1 = _value.ToString();
+ //寮�濮嬩簨鍔�
+ oCN.BeginTran();
+ //淇濆瓨涓昏〃
+ objJsonResult = AddBillMain_ProjectReportBill(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_ProjectReportBill(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_ProjectReportBill_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_ProjectReportBill_edit", 1, false, user))
+ {
+ objJsonResult.code = "0";
+ objJsonResult.count = 0;
+ objJsonResult.Message = "鏃犵紪杈戞潈闄�!";
+ objJsonResult.data = null;
+ return objJsonResult;
+ }
+ }
+
+ msg2 = "[" + msg2.ToString() + "]";
+ List<PM_ProjectReportBill_Main> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_ProjectReportBill_Main>>(msg2);
+
+ int HYear = int.Parse(mainList[0].HDate.Split('-')[0]);
+ int HPeriod = int.Parse(mainList[0].HDate.Split('-')[1]);
+ string HBillType = "4752";
+ string HBillSubType = "";
+ int HBillStatus = 1;
+
+ int HInterID = mainList[0].HInterID;
+ string HBillNo = mainList[0].HBillNo;
+ string HDate = mainList[0].HDate;
+ string HProNumber = mainList[0].HProNumber;
+ int HProjectStageID = mainList[0].HProjectStageID;
+ string HStageNote = mainList[0].HStageNote;
+ string HRelationGoods = mainList[0].HRelationGoods;
+ int HIsKey = mainList[0].HIsKey;
+ int HReportEmpID = mainList[0].HReportEmpID;
+ string HReportNote = mainList[0].HReportNote;
+ string HReportGoods = mainList[0].HReportGoods;
+ string HReceiveEmp = mainList[0].HReceiveEmp;
+ string HCopyEmp = mainList[0].HCopyEmp;
+ double HRate = mainList[0].HRate;
+ int HOrgID = mainList[0].HOrgID;
+ string HRemark = mainList[0].HRemark;
+ string HMaker = mainList[0].HMaker;
+ string HMakerDate = mainList[0].HMakerDate;
+ string HUpdater = mainList[0].HUpdater;
+ string HUpdaterDate = mainList[0].HUpdaterDate;
+
+
+ if (OperationType == 2)
+ {
+ ds = oCN.RunProcReturn("select * from PM_ProjectReportBillMain where HBillNo ='" + HBillNo + "'", "PM_ProjectReportBillMain");
+ 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_ProjectReportBillMain where HInterID = " + HInterID + " and HBillNo = '" + HBillNo + "'", "PM_ProjectReportBillMain");
+
+ if ((OperationType == 1 || OperationType == 2) && ds.Tables[0].Rows.Count == 0)//鏂板
+ {
+ string sql = "insert into PM_ProjectReportBillMain" +
+ "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HBillStatus,HRemark,HMaker,HMakeDate" +
+ ",HProNumber,HProjectStageID,HStageNote,HRelationGoods,HIsKey,HReportEmpID,HReportNote,HReportGoods,HReceiveEmp,HCopyEmp,HRate,HOrgID) " +
+ "values(" +
+ "" + HYear +
+ "," + HPeriod +
+ ",'" + HBillType +
+ "','" + HBillSubType +
+ "'," + HInterID +
+ ",'" + HDate +
+ "','" + HBillNo +
+ "'," + HBillStatus +
+ ",'" + HRemark +
+ "','" + HMaker +
+ "','" + HMakerDate +
+ "','" + HProNumber +
+ "'," + HProjectStageID +
+ ",'" + HStageNote +
+ "','" + HRelationGoods +
+ "'," + HIsKey +
+ "," + HReportEmpID +
+ ",'" + HReportNote +
+ "','" + HReportGoods +
+ "','" + HReceiveEmp +
+ "','" + HCopyEmp +
+ "'," + HRate +
+ "," + 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_ProjectReportBillMain set " +
+ "HYear = " + HYear +
+ ",HPeriod = " + HPeriod +
+ ",HBillType = '" + HBillType +
+ "',HBillSubType = '" + HBillSubType +
+ "',HDate = '" + HDate +
+ "',HBillNo = '" + HBillNo +
+ "',HBillStatus = " + HBillStatus +
+ ",HRemark = '" + HRemark +
+ "',HUpdater = '" + HUpdater +
+ "',HUpdateDate = '" + HUpdaterDate +
+ "',HProNumber = '" + HProNumber +
+ "',HProjectStageID = " + HProjectStageID +
+ ",HStageNote = '" + HStageNote +
+ "',HRelationGoods = '" + HRelationGoods +
+ "',HIsKey = " + HIsKey +
+ ",HReportEmpID = " + HReportEmpID +
+ ",HReportNote = '" + HReportNote +
+ "',HReportGoods = '" + HReportGoods +
+ "',HReceiveEmp = '" + HReceiveEmp +
+ "',HCopyEmp = '" + HCopyEmp +
+ "',HRate = " + HRate +
+ ",HOrgID = " + HOrgID +
+ " where HInterID = " + HInterID;
+
+ oCN.RunProc(sql);
+
+ //鍒犻櫎瀛愯〃
+ oCN.RunProc("delete from PM_ProjectReportBillSub 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_ProjectReportBill(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_ProjectReportBill(string msg3, long HInterID, string HBillNo, int OperationType)
+ {
+ List<PM_ProjectReportBill_Sub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<PM_ProjectReportBill_Sub>>(msg3);
+ int i = 0; //浣滀负瀛愯〃鍐呯爜
+ foreach (PM_ProjectReportBill_Sub oSub in DetailColl)
+ {
+ i++; //鍚屼竴涓富琛ㄤ笅鐨勫瓙琛ㄧ殑鍐呯爜鑷
+
+ int HEntryID = i;
+ int HEmpID = oSub.HEmpID;
+ int HIsPM = oSub.HIsPM?1:0;
+ double HRate = oSub.HRate;
+ double HAvgMoney = oSub.HAvgMoney;
+ double HCountMoney = oSub.HCountMoney;
+ string HRemarkSub = oSub.HRemarkSub;
+ string sql = "insert into PM_ProjectReportBillSub" +
+ "(HInterID,HBillNo_bak,HEntryID,HRemark,HEmpID,HIsPM,HRate,HAvgMoney,HCountMoney) " +
+ "values(" +
+ "" + HInterID +
+ ",'" + HBillNo +
+ "'," + HEntryID +
+ ",'" + HRemarkSub +
+ "'," + HEmpID +
+ "," + HIsPM +
+ "," + HRate +
+ "," + HAvgMoney +
+ "," + HCountMoney +
+ ")";
+ 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_ProjectReportBill/list")]
+ [HttpGet]
+ public object getProjectReportBill(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_ProjectReportBillMain order by HBillNo desc ", "PM_ProjectReportBillMain");
+ }
+ else
+ {
+ string sql1 = "select * from PM_ProjectReportBillMain where 1 = 1 ";
+ string sql = sql1 + sWhere + " order by HBillNo desc ";
+ ds = oCN.RunProcReturn(sql, "PM_ProjectReportBillMain");
+ }
+
+ //娣诲姞鍒楀悕
+ 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_ProjectReportBill/editInit")]
+ [HttpGet]
+ public object getProjectReportBilleditInit(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_ProjectReportBill_EditInit " + HInterID, "h_p_PM_ProjectReportBill_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_ProjectReportBill/delete")]
+ [HttpGet]
+ public object deleteProjectReportBill(string HInterID, string user)
+ {
+ try
+ {
+ //鏌ョ湅鏉冮檺
+ if (!DBUtility.ClsPub.Security_Log("Pm_ProjectReportBill_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_ProjectReportBillMain where HInterID = " + HInterID);
+ oCN.RunProc("delete from PM_ProjectReportBillSub 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