From 97c43d459cb96e768948a44d9845a0b439bc2adc Mon Sep 17 00:00:00 2001 From: yangle <admin@YINMOU> Date: 星期四, 29 十二月 2022 10:07:10 +0800 Subject: [PATCH] 设备点检计划 记录 设备保养记录单 --- WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs | 233 +++++++++++++++++++++++++++++++--------------------------- 1 files changed, 125 insertions(+), 108 deletions(-) diff --git a/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs b/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs index cc5ddc0..2676353 100644 --- a/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs +++ b/WebAPI/Controllers/SCGL/Sc_ComplementGoodsController.cs @@ -32,6 +32,7 @@ public string HDeptName { get; set; }//閮ㄩ棬 public string HJLStatus { get; set; }//鎷f枡鐘舵�� public string user { get; set; }//鍒跺崟浜� + public string Arbitrarily { get; set; }//浠绘剰鍙傛暟 } [Route("Sc_ComplementGoods/ComplementGoodsList")] @@ -60,11 +61,8 @@ //鍙嶅簭鍒楀寲浼犻�掔殑鍊� ComplementGoods com = JsonConvert.DeserializeObject<ComplementGoods>(sWhere.ToString()); - ds = oCN.RunProcReturn($"exec h_p_JIT_ComplementGoodsBillList_Query '{com.MaterialNumber}','{com.MaterialName}','{com.MaterialModel}','{com.HGD}'," + - $"'{com.HWHName}','{com.HDeptName}','{com.Organization}','{com.user}','{com.HJLStatus}','{com.HBeginDate}','{com.HEndDate}'", "h_p_JIT_ComplementGoodsBillList_Query"); - - //bool a = AddSendGoodsBillSynChronizAtion("PLD00000114", ref DBUtility.ClsPub.sExeReturnInfo); + $"'{com.HWHName}','{com.HDeptName}','{com.Organization}','{com.user}','{com.HJLStatus}','{com.HBeginDate}','{com.HEndDate}'", "h_p_JIT_ComplementGoodsBillList_Query"); objJsonResult.code = "1"; objJsonResult.count = 1; @@ -273,7 +271,7 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = "璋冩嫧鍗曠敓鎴愬け璐�"; + objJsonResult.Message = objJsonResult.Message; objJsonResult.data = null; return objJsonResult; } @@ -294,15 +292,11 @@ { oCN.BeginTran(); - ds = oCN.RunProcReturn($"select a.HMainSourceEntryID,b.HMaterID from JIT_SendGoodsBillMain a with(nolock) inner join JIT_SendGoodsBillSub b with(nolock) on a.HInterID = b.HInterID where a.HMainSourceInterID={SourceInterID} and a.HBillStatus=1", "JIT_SendGoodsBillMain"); - long InterID = 0; string HBillNo = ""; for (int i = 0; i < listCa.Count; i++) { - // 鍒欎唬琛ㄩ厤閫佸崟娌℃湁鏁版嵁 闇�瑕佹坊鍔犳暟鎹� - if (ds.Tables[0].Rows.Count == 0) - { + if (i == 0) { InterID = DBUtility.ClsPub.CreateBillID_Prod("460201", ref DBUtility.ClsPub.sExeReturnInfo); @@ -321,44 +315,30 @@ ",HMaterID,HQty,HWHID,HSPID,HISCheck,HCheckSubMan,HCheckSubDate,HStockOutOrgID,HStockInOrgID,HSCWHID)" + $"values({InterID},'{HBillNo}',{i + 1}, {listCa[i].HMaterID},{listCa[i].鏈鎷f枡鏁伴噺}," + $" {listCa[i].HWHID},{listCa[i].HSPID},0,'{user}', GETDATE(),{listCa[i].HStockOutOrgID},{listCa[i].HStockInOrgID},{listCa[i].HSCWHID})"); - } - else - { - //淇敼閰嶉�佸崟鐨勯厤閫佹暟閲� - oCN.RunProc($"update b set b.HQty=b.HQty+{listCa[i].鏈鎷f枡鏁伴噺} from JIT_SendGoodsBillMain a with(nolock) inner join JIT_SendGoodsBillSub b with(nolock) on a.HInterID = b.HInterID " + - $"where HMainSourceInterID ={SourceInterID} and b.HMaterID ={listCa[i].HMaterID} and a.HBillStatus =1 "); - } + DataSet dsTable = new DataSet(); //鏌ヨJIT_ComplementGoodsBillSub_LK - dsTable = oCN.RunProcReturn($"select * from JIT_ComplementGoodsBillSub_LK where HMaterID={listCa[i].HMaterID} and HInterID={SourceInterID} order by HSourceInterID ", "JIT_ComplementGoodsBillSub_LK"); + dsTable = oCN.RunProcReturn($"select * from JIT_ComplementGoodsBillSub_LK where HMaterID={listCa[i].HMaterID} and HInterID={SourceInterID} and HCallQTY<>HSendQTY order by HSourceInterID ", "JIT_ComplementGoodsBillSub_LK"); + var HqtyCount = double.Parse(listCa[i].鏈鎷f枡鏁伴噺.ToString()); for (int j = 0; j < dsTable.Tables[0].Rows.Count; j++) { - if (double.Parse(dsTable.Tables[0].Rows[j]["HCallQTY"].ToString()) != double.Parse(dsTable.Tables[0].Rows[j]["HSendQTY"].ToString())) - { - if (double.Parse(dsTable.Tables[0].Rows[j]["HSendQTY"].ToString()) + listCa[i].鏈鎷f枡鏁伴噺 > double.Parse(dsTable.Tables[0].Rows[j]["HCallQTY"].ToString())) - { - var HCallQTY = double.Parse(dsTable.Tables[0].Rows[j]["HCallQTY"].ToString()) - double.Parse(dsTable.Tables[0].Rows[j]["HSendQTY"].ToString()); - //淇敼璋冩嫧鏁伴噺 瓒呭嚭閮ㄥ垎缁欎簣涓嬩竴鍒楁暟鎹� - oCN.RunProc($"update JIT_ComplementGoodsBillSub_LK set HSendQTY=HSendQTY+{HCallQTY} where HMaterID={listCa[i].HMaterID} " + - $" and HSourceInterID={double.Parse(dsTable.Tables[0].Rows[j]["HSourceInterID"].ToString())} and HInterID={SourceInterID} "); + var HCallQTY = double.Parse(dsTable.Tables[0].Rows[j]["HCallQTY"].ToString()) - double.Parse(dsTable.Tables[0].Rows[j]["HSendQTY"].ToString()); - oCN.RunProc($"update JIT_ComplementGoodsBillSub_LK set HSendQTY=HSendQTY+{(listCa[i].鏈鎷f枡鏁伴噺 - HCallQTY)} where HMaterID={listCa[i].HMaterID} " + - $" and HSourceInterID={dsTable.Tables[0].Rows[j + 1]["HSourceInterID"].ToString()} and HInterID={SourceInterID} "); - break; - } - else - { - //淇敼璋冩嫧鏁伴噺 - oCN.RunProc($"update JIT_ComplementGoodsBillSub_LK set HSendQTY=HSendQTY+{listCa[i].鏈鎷f枡鏁伴噺} where HMaterID={listCa[i].HMaterID} " + - $" and HSourceInterID={dsTable.Tables[0].Rows[j]["HSourceInterID"].ToString()} and HInterID={SourceInterID} "); - break; - } + //淇敼璋冩嫧鏁伴噺 + oCN.RunProc($"update JIT_ComplementGoodsBillSub_LK set HSendQTY=HSendQTY+{(HCallQTY < HqtyCount ? HCallQTY : HqtyCount)} where HMaterID={listCa[i].HMaterID} " + + $" and HSourceInterID={double.Parse(dsTable.Tables[0].Rows[j]["HSourceInterID"].ToString())} and HInterID={SourceInterID} "); + + HqtyCount -= HCallQTY; + if (HqtyCount <= 0) + { + break; } } } + //鍚屾閲戣澏鐩存帴璋冩嫧鍗� objJsonResult = AddSendGoodsBillSynChronizAtion(HBillNo); oCN.Commit(); @@ -375,18 +355,16 @@ { objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = null; + objJsonResult.Message = objJsonResult.Message; objJsonResult.data = null; return objJsonResult; } } catch (Exception e) { - oCN.RollBack(); - objJsonResult.code = "0"; objJsonResult.count = 0; - objJsonResult.Message = e.Message; + objJsonResult.Message = objJsonResult.Message; return objJsonResult; throw (e); } @@ -396,82 +374,121 @@ public json AddSendGoodsBillSynChronizAtion(string HBillNo) { ds = oCN.RunProcReturn("exec JIT_SendGoodsBillSynChronizAtion '" + HBillNo + "'", "JIT_SendGoodsBillSynChronizAtion"); - - foreach (DataRow dr in ds.Tables[0].Rows) + if (ds.Tables[0].Rows.Count != 0) { - JObject model = new JObject(); - model.Add("FBillTypeID", new JObject() { ["Fnumber"] = dr["FBillTypeID"].ToString() }); //鍗曟嵁绫诲瀷 - model.Add("FDate", dr["FDate"].ToString()); - model.Add("FBILLNO", dr["FBILLNO"].ToString()); - model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FStockOrgId"].ToString() }); - model.Add("FOwnerTypeIdHead", dr["FOwnerTypeIdHead"].ToString()); - model.Add("FTransferBizType", dr["FTransferBizType"].ToString()); - model.Add("FOwnerTypeOutIdHead", dr["FOwnerTypeOutIdHead"].ToString()); - model.Add("FTransferDirect", dr["FTransferDirect"].ToString()); - model.Add("FStockOutOrgId", new JObject() { ["Fnumber"] = dr["FStockOutOrgId"].ToString() }); + foreach (DataRow dr in ds.Tables[0].Rows) + { + JObject model = new JObject(); + model.Add("FBillTypeID", new JObject() { ["Fnumber"] = dr["FBillTypeID"].ToString() }); //鍗曟嵁绫诲瀷 + model.Add("FDate", dr["FDate"].ToString()); + model.Add("FBILLNO", dr["FBILLNO"].ToString()); + model.Add("FStockOrgId", new JObject() { ["Fnumber"] = ds.Tables[1].Rows[0]["FStockOrgId"].ToString() }); + model.Add("FOwnerTypeIdHead", dr["FOwnerTypeIdHead"].ToString()); + model.Add("FTransferBizType", ds.Tables[1].Rows[0]["FTransferBizType"].ToString()); + model.Add("FOwnerTypeOutIdHead", dr["FOwnerTypeOutIdHead"].ToString()); + model.Add("FTransferDirect", dr["FTransferDirect"].ToString()); + model.Add("FStockOutOrgId", new JObject() { ["Fnumber"] = ds.Tables[1].Rows[0]["FStockOutOrgId"].ToString() }); - JArray Fentity = new JArray(); - foreach (DataRow item in ds.Tables[1].Rows) - { - JObject FentityModel = new JObject(); - FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMaterialId"].ToString() }); - FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUnitID"].ToString() }); - FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = item["FBaseUnitId"].ToString() }); - FentityModel.Add("FOwnerTypeId", item["FOwnerTypeId"].ToString()); - FentityModel.Add("FOwnerId", new JObject() { ["Fnumber"] = item["FOwnerId"].ToString() }); - FentityModel.Add("FOwnerTypeOutId", item["FOwnerTypeOutId"].ToString()); - FentityModel.Add("FOwnerOutId", new JObject() { ["Fnumber"] = item["FOwnerOutId"].ToString() }); - FentityModel.Add("FKeeperTypeId", item["FKeeperTypeId"].ToString()); - FentityModel.Add("FKeeperId", new JObject() { ["Fnumber"] = item["FKeeperId"].ToString() }); - FentityModel.Add("FKeeperTypeOutId", item["FKeeperTypeOutId"].ToString()); - FentityModel.Add("FKeeperOutId", new JObject() { ["Fnumber"] = item["FKeeperOutId"].ToString() }); - FentityModel.Add("FDestStockId", new JObject() { ["Fnumber"] = item["FDestStockId"].ToString() }); - FentityModel.Add("FSrcStockId", new JObject() { ["Fnumber"] = item["FSrcStockId"].ToString() }); - FentityModel.Add("FQty", item["FQty"].ToString()); - Fentity.Add(FentityModel); - } - model.Add("FBillEntry", Fentity); + JArray Fentity = new JArray(); + foreach (DataRow item in ds.Tables[1].Rows) + { + JObject FentityModel = new JObject(); + FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMaterialId"].ToString() }); + FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUnitID"].ToString() }); + FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = item["FBaseUnitId"].ToString() }); + FentityModel.Add("FOwnerTypeId", item["FOwnerTypeId"].ToString()); + FentityModel.Add("FOwnerId", new JObject() { ["Fnumber"] = item["FOwnerId"].ToString() }); + FentityModel.Add("FOwnerTypeOutId", item["FOwnerTypeOutId"].ToString()); + FentityModel.Add("FOwnerOutId", new JObject() { ["Fnumber"] = item["FOwnerOutId"].ToString() }); + FentityModel.Add("FKeeperTypeId", item["FKeeperTypeId"].ToString()); + FentityModel.Add("FKeeperId", new JObject() { ["Fnumber"] = item["FKeeperId"].ToString() }); + FentityModel.Add("FKeeperTypeOutId", item["FKeeperTypeOutId"].ToString()); + FentityModel.Add("FKeeperOutId", new JObject() { ["Fnumber"] = item["FKeeperOutId"].ToString() }); + FentityModel.Add("FDestStockId", new JObject() { ["Fnumber"] = item["FDestStockId"].ToString() }); + FentityModel.Add("FSrcStockId", new JObject() { ["Fnumber"] = item["FSrcStockId"].ToString() }); + FentityModel.Add("FQty", item["FQty"].ToString()); + Fentity.Add(FentityModel); + } + model.Add("FBillEntry", Fentity); - JObject jsonRoot = new JObject() - { - ["Creator"] = "", - ["NeedUpDateFields"] = new JArray(), - ["NeedReturnFields"] = new JArray(), - ["IsDeleteEntry"] = "false", - ["SubSystemId"] = "", - ["IsVerifyBaseDataField"] = "false", - ["Model"] = model - }; - var loginRet = InvokeHelper.Login(); - var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); - if (isSuccess < 0) - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = loginRet; - objJsonResult.data = null; - return objJsonResult; - } - var result = InvokeHelper.Save("STK_TransferDirect", jsonRoot.ToString()); - if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE") - { + JObject jsonRoot = new JObject() + { + ["Creator"] = "", + ["NeedUpDateFields"] = new JArray(), + ["NeedReturnFields"] = new JArray(), + ["IsDeleteEntry"] = "false", + ["SubSystemId"] = "", + ["IsVerifyBaseDataField"] = "false", + ["Model"] = model + }; + var loginRet = InvokeHelper.Login(); + var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); + if (isSuccess < 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = loginRet; + objJsonResult.data = null; + return objJsonResult; + } + var result = InvokeHelper.Save("STK_TransferDirect", jsonRoot.ToString()); + if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = result; + objJsonResult.data = null; + return objJsonResult; + } + + var json = new + { + Numbers = HBillNo, + }; + //鎻愪氦 + var _result = InvokeHelper.Submit("STK_TransferDirect", JsonConvert.SerializeObject(json)); + var _saveObj = JObject.Parse(_result); + if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") + { + LogService.Write("鏀舵枡閫氱煡鍗曟彁浜ゅけ璐sonRoot:" + jsonRoot.ToString()); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曟彁浜ゅけ璐�" + _result; + objJsonResult.data = null; + return objJsonResult; + + } + //瀹℃牳 + _result = InvokeHelper.Audit("STK_TransferDirect", JsonConvert.SerializeObject(json)); + _saveObj = JObject.Parse(_result); + if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") + { + LogService.Write("鏀舵枡閫氱煡鍗曞鏍稿け璐sonRoot:" + jsonRoot.ToString()); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曞鏍稿け璐sonRoot" + _result; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "1"; objJsonResult.count = 1; - objJsonResult.Message = null; - objJsonResult.data = null; - return objJsonResult; - } - else - { - objJsonResult.code = "0"; - objJsonResult.count = 0; - objJsonResult.Message = result; + objJsonResult.Message = "鎿嶄綔鎴愬姛锛�"; objJsonResult.data = null; return objJsonResult; } } - objJsonResult.code = "1"; - objJsonResult.count = 1; + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "璋冩嫧鍗曞凡缁忓瓨鍦�,鏃犳硶鐢熸垚!"; + objJsonResult.data = null; + return objJsonResult; + } + objJsonResult.code = "0"; + objJsonResult.count = 0; objJsonResult.Message = null; objJsonResult.data = null; return objJsonResult; -- Gitblit v1.9.1