| | |
| | | using System; |
| | | using Newtonsoft.Json; |
| | | using Newtonsoft.Json.Linq; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Data; |
| | | using System.Linq; |
| | |
| | | { |
| | | try |
| | | { |
| | | List<object> columnNameList = new List<object>(); //å®ä¹å£°æåé ï¼æéè¿ new List<object>()å建ç å®ä¾ï¼èµå¼ç»åé |
| | | //夿æ¯å¦ææ¥è¯¢æé |
| | | if (!DBUtility.ClsPub.Security_Log("WW_PPBomBill_Query", 1, false, user)) |
| | | { |
| | |
| | | } |
| | | |
| | | ds = WW_PPBomBillList(sWhere); |
| | | if (ds == null) |
| | | |
| | | |
| | | if (ds.Tables[0].Rows.Count != 0 || ds != null) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "æ¥è¯¢æ°æ®å¼å¸¸ï¼è¯·ä¸ç®¡çåèç³»ï¼"; |
| | | objJsonResult.data = null; |
| | | foreach (DataColumn col in ds.Tables[0].Columns)//éådsä¸ç¬¬ä¸ä¸ªè¡¨ï¼Tables[0]ï¼çææåï¼Columnsï¼æ¯æ¬¡å¾ªç¯ä¸ï¼colåé伿æå½ååçå¼ç¨ |
| | | { |
| | | Type dataType = col.DataType; //è·åå½åæ°æ®ç±»åä¼ å
¥ èªå®ä¹åédatadataType |
| | | string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}"; //åç¬¦ä¸²æ¼æ¥ // å°åååæ°æ®ç±»åä¿¡æ¯æ¼æ¥æä¸ä¸ªJSONæ ¼å¼çå符串 |
| | | columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//è·åå°DataColumnå对象çåå |
| | | } |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "Sucessï¼"; |
| | | objJsonResult.data = ds.Tables[0];//代ç å°ç¬¬ä¸ä¸ªDataTableï¼ç´¢å¼ä¸º0ï¼èµå¼ç»objJsonResultçdata屿§ |
| | | objJsonResult.list = columnNameList;//å°columnNameListèµå¼ç»objJsonResultçlist屿§ |
| | | return objJsonResult; |
| | | } |
| | | else |
| | | { |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "è¿åè®°å½æåï¼"; |
| | | objJsonResult.data = ds.Tables[0]; |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "æ æ°æ®"; |
| | | objJsonResult.data = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | |
| | | string sql = sql1 + sWhere + " order by hmainid desc"; |
| | | return new SQLHelper.ClsCN().RunProcReturn(sql, "h_v_WW_PPBomBillList"); |
| | | } |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | #region å§å¤ç¨ææ¸
å订å éè¶åæ¥ |
| | | [Route("WW_PPBomBillController/SaveWW_PPBomBillApi")] |
| | | [HttpPost] |
| | | public object SaveWW_PPBomBillApi([FromBody] JObject sMainSub) |
| | | { |
| | | LogService.Write("å¼å§åæ¥"); |
| | | try |
| | | { |
| | | LogService.Write($"æ¥æ¶å°ç宿´æ°æ®: {sMainSub.ToString()}"); |
| | | var model = sMainSub["model"].ToString(); |
| | | var entry = sMainSub["model"]["HENTRY"].ToString(); |
| | | model = "[" + model.ToString() + "]"; |
| | | LogService.Write($"主表模åJSON: {model}"); |
| | | LogService.Write($"å表模åJSON: {entry}"); |
| | | SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); |
| | | ListModels oListModels = new ListModels(); |
| | | List<ClsWW_PPBomBill> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsWW_PPBomBill>>(model); |
| | | List<ClsWW_PPBomBillSubERP> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsWW_PPBomBillSubERP>>(entry); |
| | | // æ·»å ç±»åæ£æ¥æ¥å¿ |
| | | LogService.Write($"主表HInterIDç±»å: {mainList[0].HInterID.GetType()}"); |
| | | LogService.Write($"主表HInterIDå¼: {mainList[0].HInterID}"); |
| | | string sql = string.Empty; |
| | | LogService.Write($"ä¸»æ¨¡åæ°æ®{mainList}"); |
| | | LogService.Write($"忍¡åæ°æ®{subList}"); |
| | | //ä¿å |
| | | oCN.BeginTran(); |
| | | int hInterID = mainList[0].HInterID; |
| | | LogService.Write($"å¼å§å¤ç HInterID: {hInterID}"); |
| | | |
| | | string checkSql = $"SELECT COUNT(1) FROM WW_PPBomBillSub WHERE HInterID = {hInterID}"; |
| | | LogService.Write($"æ£æ¥åè¡¨æ°æ®æ¯å¦åå¨: {checkSql}"); |
| | | |
| | | // 2. å é¤åè¡¨æ°æ® |
| | | string deleteSubSql = $"DELETE FROM WW_PPBomBillSub WHERE HInterID = {hInterID}"; |
| | | LogService.Write($"å é¤å表SQL: {deleteSubSql}"); |
| | | oCN.RunProc(deleteSubSql, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | LogService.Write("åè¡¨æ°æ®å é¤å®æ"); |
| | | |
| | | // 3. å é¤ä¸»è¡¨æ°æ® |
| | | string deleteMainSql = $"DELETE FROM WW_PPBomBillMain WHERE HInterID = {hInterID}"; |
| | | LogService.Write($"å é¤ä¸»è¡¨SQL: {deleteMainSql}"); |
| | | oCN.RunProc(deleteMainSql, ref DBUtility.ClsPub.sExeReturnInfo); |
| | | LogService.Write("ä¸»è¡¨æ°æ®å é¤å®æ"); |
| | | |
| | | |
| | | oCN.RunProc($@"insert into WW_PPBomBillMain |
| | | (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate |
| | | ,HBillNo,HBillStatus,HICMOInterID,HICMOEntryID,HSUBBILLNO,HSUBREQENTRYSEQ |
| | | ,HMaterID,HUnitID,HQty,HSupID,HDEPTID,HPOOrderBillNo,HPOOrderSeq |
| | | ,HMaker,HMakeDate,HChecker,HCheckDate,HUpDater,HUpDateDate |
| | | ,HSeOrderBillNo,HSeOrderInterID,HSeOrderEntryID,HSeOrderSEQ |
| | | ,HPRDORGID,HENTRUSTORGID,HPARENTOWNERID,HPARENTOWNERTYPEID |
| | | ,HERPInterID,HERPBillType,HSETTLEORGID,HREQSRC) |
| | | values({mainList[0].HInterID},'{mainList[0].HYear}','{mainList[0].HPeriod}','{mainList[0].HBillType}','{mainList[0].HBillSubType}','{mainList[0].HDate}','{mainList[0].HBillNo}' |
| | | ,'{mainList[0].HBillStatus}','{mainList[0].HICMOInterID}','{mainList[0].HICMOEntryID}','{mainList[0].HSUBBILLNO}','{mainList[0].HSUBREQENTRYSEQ}','{mainList[0].HMaterID}',{mainList[0].HUnitID},'{mainList[0].HQty}','{mainList[0].HSupID}','{mainList[0].HDeptID}', |
| | | '{mainList[0].HPOOrderBillNo}','{mainList[0].HPOOrderSeq}','{mainList[0].HMaker}','{mainList[0].HMakeDate}','{mainList[0].HChecker}','{mainList[0].HCheckDate}','{mainList[0].HUpDater}','{mainList[0].HUpDateDate}','{mainList[0].HSeOrderBillNo}','{mainList[0].HSeOrderInterID}','{mainList[0].HSeOrderEntryID}','{mainList[0].HSeOrderSEQ}' |
| | | ,'{mainList[0].HPRDORGID}','{mainList[0].HENTRUSTORGID}','{mainList[0].HPARENTOWNERID}' |
| | | ,'{mainList[0].HPARENTOWNERTYPEID}','{mainList[0].HERPInterID}','{mainList[0].HERPBillType}','{mainList[0].HSETTLEORGID}','{mainList[0].HREQSRC}' |
| | | |
| | | )", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | LogService.Write("主表æå
¥æå"); |
| | | |
| | | foreach (var oSub in subList) |
| | | { |
| | | var count = subList.Count(); |
| | | LogService.Write($"åè¡¨æ°æ®æ¡æ°ä¸º{count}"); |
| | | //æ°å¢åè¡¨ï¼ |
| | | oCN.RunProc($@" insert into WW_PPBomBillSub |
| | | (HInterID,HEntryID,HMaterID,HUnitID,HQty,HQtyMust,HWHID,HRemark |
| | | ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType |
| | | ,HICMOInterID,HICMOEntryID,HICMOBillNo |
| | | ,HCHILDSUPPLYORGID,HSUPPLYORGID,HENTRUSTPICKORGID,HSRCTRANSORGID,HGROUPBYOWNERID,HOWNERID,HOWNERTYPEID |
| | | ,HRelationQty,HMoveStockQty,HAuxPropID,HBatchNO,HMTONo,HQtyScrap,HERPInterID,HERPEntryID |
| | | ,HBackRelationQty |
| | | ,HPROCESSID,HBASEUNITID,HPROJECTNO,HOPERID,HSEQ |
| | | ,HSTOCKSTATUSID,HRESERVETYPE |
| | | ) |
| | | values({oSub.HInterID},'{oSub.HEntryID}','{oSub.HMaterID}','{oSub.HUnitID}','{oSub.HQty}',{oSub.HQtyMust},'{oSub.HWHID}', |
| | | '{oSub.HRemark}','{oSub.HSourceInterID}','{oSub.HSourceEntryID}','{oSub.HSourceBillNo}','{oSub.HSourceBillType}',{oSub.HICMOInterID },'{oSub.HICMOEntryID}','{oSub.HICMOBillNo}','{oSub.HCHILDSUPPLYORGID}','{oSub.HSUPPLYORGID}' |
| | | ,'{oSub.HENTRUSTPICKORGID}','{oSub.HSRCTRANSORGID}','{oSub.HGROUPBYOWNERID}','{oSub.HOWNERID}','{oSub.HOWNERTYPEID}','{oSub.HRelationQty}','{oSub.HMoveStockQty}','{oSub.HAuxPropID}','{oSub.HBatChNo}','{oSub.HMTONo}','{oSub.HQtyScrap}', |
| | | {oSub.HERPInterID},'{oSub.HERPEntryID}','{oSub.HBackRelationQty}','{oSub.HPROCESSID}',{oSub.HBASEUNITID },'{oSub.HPROJECTNO}','{oSub.HOPERID}','{oSub.HSEQ}','{oSub.HSTOCKSTATUSID}','{oSub.HRESERVETYPE}' |
| | | )", ref DBUtility.ClsPub.sExeReturnInfo); |
| | | } |
| | | LogService.Write("å表æå
¥æå"); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | oCN.Commit(); |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = "ä¿åæåï¼"; |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | LogService.Write("å¼å¸¸ä¿¡æ¯ï¼" + e.ToString()); |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = "ä¿å失败ï¼" + e.ToString(); |
| | | objJsonResult.data = 1; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | #endregion |
| | | |
| | | } |
| | | |
| | | #endregion |
| | | } |
| | | |