| | |
| | | using System.Linq; |
| | | using System.Web; |
| | | using System.Web.Http; |
| | | using System.Windows.Forms; |
| | | using WebAPI.Models; |
| | | |
| | | namespace WebAPI.Controllers.项ç®ç®¡ç.项ç®é¶æ®µ |
| | |
| | | private json objJsonResult = new json(); |
| | | public DataSet ds = new DataSet(); |
| | | public SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | |
| | | string user_LongShan = ""; |
| | | string HName_LongShan = ""; |
| | | |
| | | |
| | | #region 项ç®é¶æ®µ æ°å¢/ç¼è¾ |
| | |
| | | } |
| | | } |
| | | #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> |
| | | /// æ°å¢åæ®-ä¿åæé® |
| | | ///åæ°ï¼string 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> |
| | | /// è¿å项ç®é¶æ®µå表 |
| | | ///åæ°ï¼string 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));//è·åå°DataColumnå对象çåå |
| | | } |
| | | |
| | | 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> |
| | | ///åæ°ï¼string 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> |
| | | ///åæ°ï¼string 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 |
| | | } |
| | | } |