From 99660c0a8a0532cbec865dbd86aff2d15ca80fdb Mon Sep 17 00:00:00 2001 From: ch <37327@LLOOCCY> Date: 星期三, 07 九月 2022 13:25:34 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs | 450 ++++++++++++++++++++++++++++++++++++++++--------------- 1 files changed, 327 insertions(+), 123 deletions(-) diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs index 60ab4cf..8b4ad48 100644 --- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs +++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodBillController.cs @@ -68,8 +68,8 @@ //鍙嶅簭鍒楀寲浼犻�掔殑鍊� ComplementGoodBill com = JsonConvert.DeserializeObject<ComplementGoodBill>(sWhere.ToString()); - ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_Query '{com.HSeOrderBillNo}','{com.DepartmentName}','{com.MaterialNumber}','{com.MaterialName}'," + - $"'{com.MaterialModel}','{com.HICMOBillNo}','{com.CPNumber}','{com.CPName}','{com.CPModel}','{com.HBeginDate}','{com.HEndDate}'," + + ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_Query '{com.HSeOrderBillNo}','{com.DepartmentName}','{com.MaterialNumber}','{com.MaterialName}'," + + $"'{com.MaterialModel}','{com.HICMOBillNo}','{com.CPNumber}','{com.CPName}','{com.CPModel}','{com.HBeginDate}','{com.HEndDate.AddDays(1).AddSeconds(-1)}'," + $"{com.ps},{com.Organization},'{com.user}' ", "h_p_JIT_CallGoodsPlatForm_Query"); objJsonResult.code = "1"; @@ -98,6 +98,8 @@ public long HSouceInterID = 0;//HSourceInterIDCol public long HSourceEntryID = 0;//HSourceEntryIDCol public int? 鍙枡鏁伴噺 = 0;//HBHGQtyCol + public int? 宸插彨鏂欐暟閲� = 0;//HBHGQtyCol + public int? 宸查厤閫佹暟閲� = 0;//HBHGQtyCol public double? 閫�鏂欐暟閲� = 0;//閫�鏂欐暟閲� public long HSTOCKID = 0;//HSTOCKID public string 閫�鏂欏師鍥� { get; set; }//閫�鏂欏師鍥� @@ -108,19 +110,20 @@ public double 璁″垝鍙戞枡鏁伴噺 = 0;//HPlanQtyCol public int HWHID = 0;//HWHIDCol public int? 璋冨嚭浠撳簱id = 0;//璋冨嚭浠撳簱id + public int? 璋冨叆浠撳簱id = 0;//璋冨叆浠撳簱id public string HMaterialNumberCol { get; set; } public string HMaterialModelCol { get; set; } - public string HProcIDCol { get; set; }//HProcID + public string HProcID { get; set; }//HProcIDCol public string HProcNameCol { get; set; }//宸ユ - public int HOutOrgIDCol = 0;//HOutOrgID - public string HICMOBillNoCol { get; set; }//HICMOBillNo - public long HICMOInterIDCol = 0;//HICMOInterID - public long HICMOEntryIDCol = 0;//HICMOEntryID + public int HOutOrgID = 0;//HOutOrgID + public string HICMOBillNo { get; set; }// HICMOBillNoCol + public long HICMOInterID = 0;// HICMOInterIDCol + public long HICMOEntryID = 0;// HICMOEntryIDCol public long HDeptID = 0;//HDeptID + public long 搴撳瓨鏁伴噺 = 0; public double HBHGQtyCol = 0; public string 閿�鍞鍗曞彿 { get; set; }//HSeOrderNOCol public DateTime? 璁″垝寮�宸ユ棩鏈� = null;//HBPlanDateCol - } //涓存椂琛� 鍙枡瀛愯〃 @@ -137,6 +140,7 @@ public string HSeOrderNo; public string HSeOrderBillNo; public int HWHID = 0; + public int HSCWHID = 0; public long HOutOrgID = 0; public long HICMOInterID = 0; public long HICMOEntryID = 0; @@ -183,6 +187,60 @@ { if (listCa[i].HMaterialID != 0 && listCa[i].鍙枡鏁伴噺 > 0) { + if (listCa[i].鍙枡鏁伴噺 > listCa[i].璁″垝鍙戞枡鏁伴噺) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍙枡鏁伴噺澶т簬璁″垝鍙戞枡鏁伴噺!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].搴撳瓨鏁伴噺 == 0 && listCa[i].鍙枡鏁伴噺 > 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "搴撳瓨鏁伴噺涓�0,鏃犳硶鍙枡!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].鍙枡鏁伴噺 > listCa[i].搴撳瓨鏁伴噺) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "搴撳瓨鏁伴噺灏忎簬鍙枡鏁伴噺,鏃犳硶鍙枡!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨叆浠撳簱id == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璇烽�夋嫨璋冨叆浠撳簱!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].鍙枡鏁伴噺 > 0 && listCa[i].璋冨嚭浠撳簱id == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璇烽�夋嫨璋冨嚭浠撳簱!"; + objJsonResult.data = null; + return objJsonResult; + } + + //if (listCa[i].璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺 == 0) + //{ + // objJsonResult.code = "0"; + // objJsonResult.count = 0; + // objJsonResult.Message = "璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺涓�0!"; + // objJsonResult.data = null; + // return objJsonResult; + //} + j = 1; var txtHBillNo = DBUtility.ClsPub.CreateBillCode_Prod(CallGoodsBill.ModName, ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿 @@ -207,34 +265,17 @@ oSub.HSourceBillNo = listCa[i].HSourceBillNo; oSub.HQty =double.Parse(listCa[i].鍙枡鏁伴噺.ToString()); - //if (oSub.HQty <= 0) - //{ - // objJsonResult.code = "0"; - // objJsonResult.count = 0; - // objJsonResult.Message = $"绗瑊i+1}琛岋紝鍙枡鏁伴噺涓嶈兘涓�0鎴栬�呭皬浜�0"; - // objJsonResult.data = null; - // return objJsonResult; - //} - - //if (oSub.HQty > listCa[i].璋冨嚭浠撳簱鍙敤搴撳瓨鏁伴噺) - //{ - // objJsonResult.code = "0"; - // objJsonResult.count = 0; - // objJsonResult.Message = $"绗瑊i+1}琛岋紝鍙枡鏁伴噺澶т簬璇ョ墿鏂欒皟鍑轰粨搴撳彲鐢ㄥ簱瀛樻暟閲�"; - // objJsonResult.data = null; - // return objJsonResult; - //} - oSub.HMaterID = listCa[i].HMaterialID; oSub.HMaterNumber = listCa[i].HMaterialNumberCol; oSub.HModel = listCa[i].HMaterialModelCol; - oSub.HWHID = listCa[i].HWHID; + oSub.HWHID = int.Parse(listCa[i].璋冨叆浠撳簱id.ToString()); + oSub.HSCWHID = int.Parse(listCa[i].璋冨嚭浠撳簱id.ToString()); oSub.HProcName = listCa[i].HProcNameCol; - oSub.HProcID = listCa[i].HProcIDCol; - oSub.HOutOrgID = listCa[i].HOutOrgIDCol; - oSub.HICMOBillNo = listCa[i].HICMOBillNoCol; - oSub.HICMOInterID = listCa[i].HICMOInterIDCol; - oSub.HICMOEntryID = listCa[i].HICMOEntryIDCol; + oSub.HProcID = listCa[i].HProcID; + oSub.HOutOrgID = listCa[i].HOutOrgID; + oSub.HICMOBillNo = listCa[i].HICMOBillNo; + oSub.HICMOInterID = listCa[i].HICMOInterID; + oSub.HICMOEntryID = listCa[i].HICMOEntryID; oSub.HDeptID = listCa[i].HDeptID; oSub.HPlanQty = listCa[i].璁″垝鍙戞枡鏁伴噺; oSub.HSeOrderNo = listCa[i].閿�鍞鍗曞彿; @@ -272,7 +313,7 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忥紝鏃犳硶鍙枡!"; + objJsonResult.Message = "鏃犱换浣曞彨鏂欐暟閲忔垨鍙枡鏁伴噺灏忎簬0锛屾棤娉曞彨鏂�!"; objJsonResult.data = null; return objJsonResult; } @@ -303,12 +344,12 @@ " (HInterID,HEntryID,HRemark" + ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + ",HSeOrderInterID,HSeOrderEntryID,HSeOrderBillNo,HICMOInterID,HICMOEntryID,HICMOBillNo" + - ",HDeptID,HMaterID,HQty,HProcID,HWHID,HSPID,HBillNo_bak" + + ",HDeptID,HMaterID,HQty,HProcID,HWHID,HSCWHID,HSPID,HBillNo_bak,HOutOrgID,HStockOutOrgID,HStockInOrgID" + ") values(" + omodel.HInterID.ToString() + "," + oSub.HEntryID.ToString() + ",'" + oSub.HRemark + "'" + "," + oSub.HSourceInterID.ToString() + "," + oSub.HSourceEntryID.ToString() + ",'" + oSub.HSourceBillNo + "','" + oSub.HSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() + "," + oSub.HSeOrderInterID.ToString() + "," + oSub.HSeOrderEntryID.ToString() + ",'" + oSub.HSeOrderBillNo + "'," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo + "'" + - "," + oSub.HDeptID.ToString() + "," + oSub.HMaterID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HProcID + "'," + oSub.HWHID.ToString() + ", " + oSub.HSPID.ToString() +",'') ", ref DBUtility.ClsPub.sExeReturnInfo); + "," + oSub.HDeptID.ToString() + "," + oSub.HMaterID.ToString() + "," + oSub.HQty.ToString() + ",'" + oSub.HProcID + "'," + oSub.HWHID.ToString() + ", " + oSub.HSCWHID.ToString()+"," + oSub.HSPID.ToString() +",'',"+oSub.HOutOrgID+ ","+oSub.HOutOrgID+ "," + omodel.HPRDORGID +") ", ref DBUtility.ClsPub.sExeReturnInfo); //涓昏〃 @@ -369,16 +410,62 @@ //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎 listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString()); - if (listCa[0].閫�鏂欐暟閲� < 0) + int j=0; + for (int i = 0; i < listCa.Count; i++) + { + if (listCa[i].閫�鏂欐暟閲� > 0) + { + if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!"; + objJsonResult.data = null; + return objJsonResult; + } + + ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " + + $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub"); + + if ((double.Parse(ds.Tables[0].Rows[0][0].ToString()==""?"0": ds.Tables[0].Rows[0][0].ToString()) +listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].璋冨叆浠撳簱id == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璇烽�夋嫨璋冨叆浠撳簱!"; + objJsonResult.data = null; + return objJsonResult; + } + + if (listCa[i].璋冨嚭浠撳簱id == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璇烽�夋嫨璋冨嚭浠撳簱!"; + objJsonResult.data = null; + return objJsonResult; + } + + flag = AddICStockTuiBill(listCa[i], "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); + j = 1; + } + } + if (j == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忥紝鏃犳硶閫�鏂�!"; + objJsonResult.Message = "鏃犱换浣曢��鏂欐暟閲忔垨閫�鏂欐暟閲忓皬浜�0锛屾棤娉曢��鏂�!"; objJsonResult.data = null; return objJsonResult; } - - flag=AddICStockTuiBill(listCa, "666601", "涓嶈壇鍝侀��鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); if (flag) { @@ -408,27 +495,26 @@ } //鏂板 - public bool AddICStockTuiBill(List<CallGoodsBill> listCa,string HBillType,string HBackType,string HOrgID, ref string sReturn) + public bool AddICStockTuiBill(CallGoodsBill listCa,string HBillType,string HBackType,string HOrgID, ref string sReturn) { try { - - Int64 lngBillKey = listCa[0].HSouceInterID == 0 ? 0 : listCa[0].HSouceInterID; - Int64 lngBillKeyEntry = listCa[0].HSourceEntryID == 0 ? 0 : listCa[0].HSourceEntryID; - double HQty = (double)(listCa[0].閫�鏂欐暟閲� == 0 ? 0 : listCa[0].閫�鏂欐暟閲�); - long HDeptWHID = listCa[0].HSTOCKID == 0 ? 0 : listCa[0].HSTOCKID; - string HTuiResult = listCa[0].閫�鏂欏師鍥� == "" ? "" : listCa[0].閫�鏂欏師鍥�; - var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿 - var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo); + Int64 lngBillKey = listCa.HSouceInterID == 0 ? 0 : listCa.HSouceInterID; + Int64 lngBillKeyEntry = listCa.HSourceEntryID == 0 ? 0 : listCa.HSourceEntryID; + double HQty = (double)(listCa.閫�鏂欐暟閲� == 0 ? 0 : listCa.閫�鏂欐暟閲�); + long HDeptWHID = int.Parse(listCa.璋冨叆浠撳簱id.ToString()) == 0 ? 0 : int.Parse(listCa.璋冨叆浠撳簱id.ToString()); + string HTuiResult = listCa.閫�鏂欏師鍥� == "" ? "" : listCa.閫�鏂欏師鍥�; + var HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true);//鑾峰緱涓�涓柊鐨勫崟鎹彿 + var HBillInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo); oCN.BeginTran(); //鎻掑叆瀛愯〃 oCN.RunProc("Insert into JIT_CallGoodsBackRequestBillSub ( HInterID,HEntryID,HSourceInterID,HSourceEntryID," + "HSourceBillNo,HSourceBillType, HMaterID, HQty, HSCWHID," + - " HWHID, HSPID, HResult, HDeptID, HProcID) " + + " HWHID, HSPID, HResult, HDeptID, HProcID,HBackReason) " + $"values({HBillInterID},1,{lngBillKey},{ lngBillKeyEntry}," + - $"'{listCa[0].HSourceBillNo}',88,{listCa[0].HMaterialID},{HQty},{(listCa[0].璋冨嚭浠撳簱id==null?0:listCa[0].璋冨嚭浠撳簱id)}," + - $"{HDeptWHID},'','',{listCa[0].HDeptID},'')"); + $"'{listCa.HSourceBillNo}',88,{listCa.HMaterialID},{HQty},{(listCa.璋冨嚭浠撳簱id==null?0:listCa.璋冨嚭浠撳簱id)}," + + $"{HDeptWHID},'','',{listCa.HDeptID},'','{HTuiResult}')"); //鎻掑叆涓昏〃 oCN.RunProc("insert into JIT_CallGoodsBackRequestBillMain(HYear,HPeriod,HInterid,HBillSubType,HBillStatus," + @@ -436,7 +522,7 @@ " HItemMainID, HSendManID, HWareManID, HStockOutOrgID, HStockInOrgID, HBackType)" + $"values({DateTime.Now.Year},{DateTime.Now.Month},{HBillInterID},'{HBillType}',1," + $" '{HBillType}','{DateTime.Now}','{HBillNo}',{HOrgID},'{ DBUtility.ClsPub.CurUserName}','{DateTime.Now}','','',0,0,0,''," + - $" 0, 0, 0, {HOrgID}, 0,'{HBackType}')"); + $" 0, 0, {listCa.HOutOrgID}, {HOrgID}, 0,'{HBackType}')"); sReturn = "鏂板鍗曟嵁鎴愬姛锛�"; oCN.Commit(); @@ -458,12 +544,12 @@ var _value = msg["msg"].ToString(); string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); - string user = sArray[1].ToString(); + DBUtility.ClsPub.CurUserName = sArray[1].ToString(); string HOrgID = sArray[2].ToString(); try { - if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, user)) + if (!DBUtility.ClsPub.Security_Log("JIT_YL_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -478,7 +564,38 @@ //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎 listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString()); bool flag = false; - if (listCa[0].閫�鏂欐暟閲� < 0) + + int j = 0; + for (int i = 0; i < listCa.Count; i++) + { + if (listCa[i].閫�鏂欐暟閲� > 0) + { + if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!"; + objJsonResult.data = null; + return objJsonResult; + } + + ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " + + $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub"); + + if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!"; + objJsonResult.data = null; + return objJsonResult; + } + + flag = AddICStockTuiBill(listCa[i], "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); + j = 1; + } + } + if (j == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -486,8 +603,6 @@ objJsonResult.data = null; return objJsonResult; } - - flag = AddICStockTuiBill(listCa, "666602", " 浣欓噺閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); if (flag) { @@ -526,12 +641,12 @@ var _value = msg["msg"].ToString(); string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); - string user = sArray[1].ToString(); + DBUtility.ClsPub.CurUserName = sArray[1].ToString(); string HOrgID = sArray[2].ToString(); try { - if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, user)) + if (!DBUtility.ClsPub.Security_Log("JIT_BF_ComplementGoods_Edit", 1, false, DBUtility.ClsPub.CurUserName)) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -547,7 +662,37 @@ listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString()); bool flag = false; - if (listCa[0].閫�鏂欐暟閲� < 0) + int j = 0; + for (int i = 0; i < listCa.Count; i++) + { + if (listCa[i].閫�鏂欐暟閲� > 0) + { + if (listCa[i].閫�鏂欐暟閲� > listCa[i].宸查厤閫佹暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閫�鏂欐暟閲忓ぇ浜庡凡閰嶉�佹暟閲�!"; + objJsonResult.data = null; + return objJsonResult; + } + + ds = oCN.RunProcReturn("select sum(d.HQty) HQty from JIT_CallGoodsBackRequestBillSub c inner join JIT_CallGoodsBackBillSub d on c.HInterID = d.HSourceInterID and c.HEntryID = d.HSourceEntryID and c.HMaterID = d.HMaterID " + + $"where c.HSourceInterID={listCa[i].HSouceInterID} and c.HSourceEntryID ={listCa[i].HSourceEntryID} and c.HSourceBillNo = '{listCa[i].HSourceBillNo}' and c.HMaterID={listCa[i].HMaterialID}", "JIT_CallGoodsBackRequestBillSub"); + + if ((double.Parse(ds.Tables[0].Rows[0][0].ToString() == "" ? "0" : ds.Tables[0].Rows[0][0].ToString()) + listCa[i].閫�鏂欐暟閲�) > listCa[i].宸插彨鏂欐暟閲�) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = $"宸茬粡閫�鏂欐暟閲�:{double.Parse(ds.Tables[0].Rows[0][0].ToString())},鍙��鏂欐暟閲忎负:{(listCa[i].宸插彨鏂欐暟閲� - double.Parse(ds.Tables[0].Rows[0][0].ToString()))}!"; + objJsonResult.data = null; + return objJsonResult; + } + + flag = AddICStockTuiBill(listCa[i], "666603", "鎶ュ簾閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); + j = 1; + } + } + if (j == 0) { objJsonResult.code = "0"; objJsonResult.count = 0; @@ -555,8 +700,6 @@ objJsonResult.data = null; return objJsonResult; } - - flag = AddICStockTuiBill(listCa, "666603", "鎶ュ簾閫�鏂�", HOrgID, ref DBUtility.ClsPub.sExeReturnInfo); if (flag) { @@ -586,12 +729,13 @@ } #endregion - #region 鐢熶骇鍙枡骞冲彴 鍙枡鎷f枡淇℃伅鏌ヨ + #region 鐢熶骇鍙枡骞冲彴 鍙枡鎷f枡淇℃伅鏌ヨ 涓婃煡/涓嬫煡 //鏌ヨ鏉′欢 public class HlpBill { public int HSouceInterID = 0; public int HSourceEntryID = 0; + public int Type = 0; public string user { get; set; } } [Route("Sc_ComplementGoodBill/HlpBillList")] @@ -600,48 +744,64 @@ { try { + List<object> columnNameList = new List<object>(); //鍙嶅簭鍒楀寲浼犻�掔殑鍊� HlpBill com = JsonConvert.DeserializeObject<HlpBill>(sWhere.ToString()); - ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_DownQuery 0,0,'',0,0,{com.HSouceInterID},{com.HSourceEntryID}"+ - $",'{com.user}'", "h_p_JIT_CallGoodsPlatForm_DownQuery"); - - if (ds != null) + if (com.Type == 1) { - if (ds.Tables[0].Rows.Count != 0) - { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; - objJsonResult.data = ds.Tables[0]; - return objJsonResult; - } - else if (ds.Tables[1].Rows.Count != 0) - { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; - objJsonResult.data = ds.Tables[1]; - return objJsonResult; - } - else - { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "Sucess锛�"; - objJsonResult.data = ds.Tables[0]; - return objJsonResult; - } + //鐢熶骇鍙枡骞冲彴 涓嬫煡 + ds = oCN.RunProcReturn($"exec h_p_JIT_CallGoodsPlatForm_DownQuery 0,0,'',0,0,{com.HSouceInterID},{com.HSourceEntryID}" + + $",'{com.user}'", "h_p_JIT_CallGoodsPlatForm_DownQuery"); + } + else if (com.Type == 2) + { + //鎷f枡閰嶉�� 涓婃煡 + ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_UpQuery '{com.HSouceInterID}',{com.HSourceEntryID}", "h_p_JIT_ComplementGoodsBillList_UpQuery"); + } + else if (com.Type == 3) + { + //鎷f枡閰嶉�� 涓嬫煡 + ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_DownQuery '{com.HSouceInterID}',{com.HSourceEntryID}", "h_p_JIT_ComplementGoodsBillList_DownQuery"); + } + + //娣诲姞鍒楀悕 + 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鍒楀璞$殑鍒楀悕 + } + + //type==1 瀛樺偍杩囩▼閲岄潰鏌ヨ浜嗕袱娆� 鎵�鏈夐渶瑕佸垽鏂袱寮犺〃閮芥湁娌℃湁鏁版嵁 + if (ds.Tables[0].Rows.Count != 0) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; + return objJsonResult; + } + else if ((com.Type == 1 ? ds.Tables[1].Rows.Count : ds.Tables[0].Rows.Count) != 0) + { + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "Sucess锛�"; + objJsonResult.data = ds.Tables[1]; + objJsonResult.list = columnNameList; + return objJsonResult; } else { objJsonResult.code = "1"; objJsonResult.count = 1; objJsonResult.Message = "Sucess锛�"; - objJsonResult.data =null; + objJsonResult.data = ds.Tables[0]; + objJsonResult.list = columnNameList; return objJsonResult; } - + } catch (Exception e) { @@ -678,39 +838,21 @@ msg2 = msg2.Replace("\\", ""); msg2 = msg2.Replace("\n", ""); - List<CallGoodsBill> listCa = new List<CallGoodsBill>(); - //鑾峰彇琛ㄦ牸鏁版嵁闆嗗悎 - listCa = JsonConvert.DeserializeObject<List<CallGoodsBill>>(msg2.ToString()); - int a = 0; - if (listCa.Count > 0) + ds = oCN.RunProcReturn("select * from h_v_IF_JIT_CallGoodsBillList ", "h_v_IF_JIT_CallGoodsBillList "); + + if (ds.Tables[0].Rows.Count > 0) { - for (int i = 0; i < listCa.Count; i++) - { - long HInterID = DBUtility.ClsPub.CreateBillID_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo); - string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo, true); - long HOutOrgID = int.Parse(listCa[i].HOutOrgIDCol.ToString()); - long HWHID = int.Parse(listCa[i].HWHID.ToString()); + ds.Clear(); + long HInterID = DBUtility.ClsPub.CreateBillID_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo); + string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("4602", ref DBUtility.ClsPub.sExeReturnInfo, true); - oCN.RunProc($"exec h_p_JIT_ComplementGoods_Insert {HInterID},'{HBillNo}',{HOrgID},'{user}',{HOutOrgID},{HWHID}"); - a = 1; - } + ds= oCN.RunProcReturn($"exec h_p_JIT_ComplementGoods_Insert {HInterID},'{HBillNo}',{HOrgID},'{user}',0,0", "h_p_JIT_ComplementGoods_Insert"); - if (a == 1) - { - objJsonResult.code = "1"; - objJsonResult.count = 1; - objJsonResult.Message = "鐢熸垚鎷f枡鍗曟垚鍔�"; - objJsonResult.data = null; - return objJsonResult; - } - else - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = "鐢熸垚鎷f枡鍗曞け璐�"; - objJsonResult.data = null; - return objJsonResult; - } + objJsonResult.code = ds.Tables[0].Rows[0][0].ToString(); + objJsonResult.count = int.Parse(ds.Tables[0].Rows[0][0].ToString()); + objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString(); + objJsonResult.data = null; + return objJsonResult; } else { @@ -732,5 +874,67 @@ } #endregion + #region 鐢熶骇鍙枡骞冲彴 閫�鏂欏崟鏂板 + [Route("Sc_ComplementGoodBill/Insert_TL_ICStockTuiBill")] + [HttpPost] + public object Insert_TL_ICStockTuiBill([FromBody] JObject msg) + { + var _value = msg["msg"].ToString(); + string[] sArray = _value.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); + string msg2 = sArray[0].ToString(); + string user = sArray[1].ToString(); + string HOrgID = sArray[2].ToString(); + + try + { + if (!DBUtility.ClsPub.Security_Log("Cj_CallGoodsBillBack_Edit", 1, false, user)) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鏃犱繚瀛樻潈闄�"; + objJsonResult.data = null; + return objJsonResult; + } + msg2 = msg2.Replace("\\", ""); + msg2 = msg2.Replace("\n", ""); + + ds = oCN.RunProcReturn("select * from JIT_CallGoodsBackRequestBillMain where HISCheck=0 ", "JIT_CallGoodsBackRequestBillMain "); + + if (ds.Tables[0].Rows.Count > 0) + { + + long HInterID = DBUtility.ClsPub.CreateBillID_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo); + string HBillNo = DBUtility.ClsPub.CreateBillCode_Prod("6666", ref DBUtility.ClsPub.sExeReturnInfo, true); + //long HOutOrgID = int.Parse(listCa[i].HOutOrgID.ToString()); + //long HWHID = int.Parse(listCa[i].HWHID.ToString()); + + ds= oCN.RunProcReturn($"exec h_p_JIT_GetCallGoodsBillCount_Back {HInterID},'{HBillNo}',{HOrgID},'{user}'", "h_p_JIT_GetCallGoodsBillCount_Back"); + + objJsonResult.code = ds.Tables[0].Rows[0][0].ToString(); + objJsonResult.count = int.Parse(ds.Tables[0].Rows[0][0].ToString()); + objJsonResult.Message = ds.Tables[0].Rows[0][1].ToString(); + objJsonResult.data = null; + 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