From 7fb870f53ccf134a4f3baef58ff98917d8c712bb Mon Sep 17 00:00:00 2001 From: yusijie <ysj@hz-kingdee.com> Date: 星期四, 18 七月 2024 11:31:54 +0800 Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API --- WebAPI/Controllers/仓存管理/领料发货/Kf_MateOutRequestBillController.cs | 256 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 255 insertions(+), 1 deletions(-) diff --git "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_MateOutRequestBillController.cs" "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_MateOutRequestBillController.cs" index 80b8606..8d56be4 100644 --- "a/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_MateOutRequestBillController.cs" +++ "b/WebAPI/Controllers/\344\273\223\345\255\230\347\256\241\347\220\206/\351\242\206\346\226\231\345\217\221\350\264\247/Kf_MateOutRequestBillController.cs" @@ -11,7 +11,7 @@ using WebAPI.Models; -namespace WebAPI.Controllers.浠撳瓨绠$悊.棰嗘枡鍙戣揣 +namespace WebAPI.Controllers { public class Kf_MateOutRequestBillController : ApiController { @@ -19,6 +19,7 @@ private json objJsonResult = new json(); public DataSet ds = new DataSet(); public SQLHelper.ClsCN oCn = new SQLHelper.ClsCN(); + Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter(); public string HManagerID { get; private set; } @@ -329,5 +330,258 @@ } } + + #region 鏍规嵁鍗曟嵁鍙凤紝鍚屾鐢熶骇鍙戞枡閫氱煡鍗�(棰嗙敤鐢宠鍗�) + [Route("Kf_MateOutRequestBillController/GetKf_MateOutRequestBill_Sync_Json")] + [HttpGet] + public json GetKf_MateOutRequestBill_Sync_Json(string HBillNo, string HBillType) + { + try + { + //鑾峰彇绯荤粺鍙傛暟 + string sql = string.Empty; + string sErrMsg = ""; + if (oSystemParameter.ShowBill(ref sErrMsg) == true) + { + //绯荤粺鍙傛暟鏄惁涓虹鏈変簯妯″紡,N涓哄叕鏈変簯妯″紡锛孻涓虹鏈変簯妯″紡 + //绉佹湁浜戞ā寮忥紝閫氳繃璋冪敤瀛樺偍杩囩▼杩涜鍚屾 + if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "Y") + { + ds = oCn.RunProcReturn("exec h_p_IFCLD_ERPSourceBillToLocal_MateOutRequest '" + HBillNo + "'", "h_p_IFCLD_ERPSourceBillToLocal_MateOutRequest"); + if (ds == null || ds.Tables[0].Rows.Count == 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍚屾鍙戠敓閿欒锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 2) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBackRemark"]); + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍗曟嵁鍚屾鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + } + } + //鍏湁浜戞ā寮忥紝閫氳繃璋冪敤WEBAPI鏂瑰紡杩涜鍚屾 + else if (oSystemParameter.omodel.WMS_CloudMode.ToUpper() == "N") + { + //鍒ゆ柇閲戣澏浜戞槸鍚︾櫥褰曟垚鍔� + var loginRet = InvokeHelper.Login(); + var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); + //鍒ゆ柇鏄惁鐧诲綍鎴愬姛 + if (isSuccess <= 0) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍚屾澶辫触锛岄噾铦朵簯鐧诲叆涓嶆垚鍔燂紝璇风‘璁鐩橀厤缃枃浠舵墍璁剧疆閲戣澏浜戝搴旂綉鍧�銆佽处濂椼�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮佹槸鍚︽纭紒"; + objJsonResult.data = null; + return objJsonResult; + } + + var json = new + { + CreateOrgId = 0, + Number = HBillNo, + Id = "" + }; + //鏌ョ湅 鑾峰彇鏁版嵁 + var _result = InvokeHelper.View("PRD_ISSUEMTRNOTICE", JsonConvert.SerializeObject(json)); + var _saveObj = JObject.Parse(_result); + //鍒ゆ柇閲戣澏浜戞暟鎹槸鍚﹁幏鍙栨垚鍔� + if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "閲戣澏浜戠敓浜у彂鏂欓�氱煡鍗曡幏鍙栧け璐ワ細" + _result; + objJsonResult.data = null; + return objJsonResult; + } + + oCn.BeginTran(); + //鏍规嵁鍗曟嵁鍙峰垹闄ゆ湰鍦扮敓浜у彂鏂欓�氱煡鍗曚腑瀵瑰簲鍗曟嵁 + oCn.RunProc("Delete b from Kf_MateOutRequestBillMain a inner join Kf_MateOutRequestBillSub b on a.HInterID=b.HInterID where a.HBillNo = '" + HBillNo + "'", ref DBUtility.ClsPub.sExeReturnInfo); + oCn.RunProc("Delete from Kf_MateOutRequestBillMain where HBillNo = '" + HBillNo + "'", ref DBUtility.ClsPub.sExeReturnInfo); + + //涓昏〃鏁版嵁璧嬪�� + var MainData = new + { + HInterID = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["Id"]), + HBillNo = DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["BillNo"]), + HBillType = "1214", + HBillSubType = "1214", + HDate = DBUtility.ClsPub.isDate(_saveObj["Result"]["Result"]["Date"]), + HBillStatus = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["ApproverId_Id"]) == 0 ? 1 : 2, + HInnerBillNo = DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["BillNo"]), + HRemark = "CLD瀵煎叆", + HEmpID = 0, + HManagerID = 0, + HSecManagerID = 0, + HKeeperID = 0, + HDeptID = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["WorkShopId_Id"]), + HExplanation = "", + HICCard = "", + HSUPPLYType = DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["IssueType"]), + HPRDORGID = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["PrdOrgId_Id"]), + HMaker = DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["CreatorId"]["Name"]), + HMakeDate = DBUtility.ClsPub.isDate(_saveObj["Result"]["Result"]["CreateDate"]), + HChecker = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["ApproverId_Id"]) == 0 ? "" : DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["ApproverId"]["Name"]), + HCheckDate = DBUtility.ClsPub.isDate(_saveObj["Result"]["Result"]["ApproveDate"]), + HUpDater = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["ModifierId_Id"]) == 0 ? "" : DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["ModifierId"]["Name"]), + HUpDateDate = DBUtility.ClsPub.isDate(_saveObj["Result"]["Result"]["ModifyDate"]), + HDeleteMan = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["CANCELER_Id"]) == 0 ? "" : DBUtility.ClsPub.isStrNull(_saveObj["Result"]["Result"]["CANCELER"]["Name"]), + HDeleteDate = DBUtility.ClsPub.isDate(_saveObj["Result"]["Result"]["CancelDate"]), + }; + //鍐欏叆涓昏〃 + sql = $@"Insert into Kf_MateOutRequestBillMain + (HInterID,HYear,HPeriod,HBillType,HBillSubType,HDate + ,HBillNo,HBillStatus,HInnerBillNo,HRemark + ,HEmpID,HManagerID,HSecManagerID,HKeeperID,HDeptID + ,HExplanation,HICCard,HSUPPLYType,HPRDORGID + ,HMaker,HMakeDate + ,HChecker,HCheckDate + ,HUpDater,HUpDateDate + ,HDeleteMan,HDeleteDate) + Values({MainData.HInterID},year('{MainData.HDate}'),month('{MainData.HDate}'),'{MainData.HBillType}','{MainData.HBillSubType}','{MainData.HDate}' + ,'{MainData.HBillNo}',{MainData.HBillStatus},'{MainData.HInnerBillNo}','{MainData.HRemark}' + , {MainData.HEmpID},{MainData.HManagerID},{MainData.HSecManagerID},{MainData.HKeeperID},{MainData.HDeptID} + ,'{MainData.HExplanation}','{MainData.HICCard}','{MainData.HSUPPLYType}',{MainData.HPRDORGID} + ,'{MainData.HMaker}','{MainData.HMakeDate}' + ,'{MainData.HChecker}',case when '{MainData.HCheckDate}' = '1900/1/1 0:00:00' then NULL else '{MainData.HCheckDate}' end + ,'{MainData.HUpDater}',case when '{MainData.HUpDateDate}' = '1900/1/1 0:00:00' then NULL else '{MainData.HUpDateDate}' end + ,'{MainData.HDeleteMan}',case when '{MainData.HDeleteDate}' = '1900/1/1 0:00:00' then NULL else '{MainData.HDeleteDate}' end)"; + oCn.RunProc(sql.Replace("\r\n", "")); + + //瀛愯〃鏁版嵁璧嬪�� + var dataArr = _saveObj["Result"]["Result"]["DetailEntity"]; + foreach (var oSub in dataArr) + { + var subData = new + { + HInterID = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["Id"]), + HEntryID = DBUtility.ClsPub.isLong(oSub["Id"]), + HERPInterID = DBUtility.ClsPub.isLong(_saveObj["Result"]["Result"]["Id"]), + HERPEntryID = DBUtility.ClsPub.isLong(oSub["Id"]), + HSEQ = DBUtility.ClsPub.isLong(oSub["Seq"]), + HRemark = "", + HMaterID = DBUtility.ClsPub.isLong(oSub["MATERIALID_Id"]), + HProdMaterID = DBUtility.ClsPub.isLong(oSub["PMATERIALID_Id"]), + HUnitID = DBUtility.ClsPub.isLong(oSub["UnitID_Id"]), + HAuxPropID = DBUtility.ClsPub.isLong(oSub["AuxPropID_Id"]), + HBatchNO = DBUtility.ClsPub.isStrNull(oSub["Lot_Text"]), + HWHID = DBUtility.ClsPub.isLong(oSub["StockID_Id"]), + HSPID = DBUtility.ClsPub.isLong(oSub["StockLOCID_Id"]), + HPrice = 0, + HMoney = 0, + HMTONo = DBUtility.ClsPub.isStrNull(oSub["CHILDMTONO"]), + HPlanMode = 0, + HStockStatusID = DBUtility.ClsPub.isLong(oSub["StockStatusId_Id"]), + HQty = DBUtility.ClsPub.isDoule(oSub["AppQty"]), + HQtyMust = DBUtility.ClsPub.isDoule(oSub["MustQty"]), + HRelationQty = DBUtility.ClsPub.isDoule(oSub["ActPickedQty"]), + HMoveStockQty = 0, + HRelationMoney = 0, + HSourceInterID = 0, + HSourceEntryID = 0, + HSourceBillNo = DBUtility.ClsPub.isStrNull(oSub["MOBILLNO"]), + HSourceBillType = "3710", + HPPBOMInterID = DBUtility.ClsPub.isLong(oSub["PPBomId"]), + HPPBOMEntryID = DBUtility.ClsPub.isLong(oSub["PPBomEntryId"]), + HPPBOMEntrySEQ = 0, + HPPBOMBillNo = "", + HICMOInterID = 0, + HICMOEntryID = 0, + HICMOEntrySEQ = DBUtility.ClsPub.isLong(oSub["MOBILLSEQ"]), + HICMOBillNo = DBUtility.ClsPub.isStrNull(oSub["MOBILLNO"]), + HPOOrderInterID = 0, + HPOOrderEntryID = 0, + HPOOrderBillNo = "", + HOWNERID = DBUtility.ClsPub.isLong(oSub["OwnerID_Id"]), + HOWNERTYPEID = DBUtility.ClsPub.isStrNull(oSub["OwnerTypeId"]), + HKEEPERID = DBUtility.ClsPub.isLong(oSub["KeeperId_Id"]), + HKEEPERTYPEID = DBUtility.ClsPub.isStrNull(oSub["KeeperTypeId"]), + HSUPPLYORGID = DBUtility.ClsPub.isLong(oSub["SupplyOrgId_Id"]), + HBOMID = DBUtility.ClsPub.isLong(oSub["FChildBomID_Id"]), + HProcessID = DBUtility.ClsPub.isLong(oSub["ProcessID_Id"]), + HBaseUnitID = DBUtility.ClsPub.isLong(oSub["BaseUnitID_Id"]), + HOperID = DBUtility.ClsPub.isLong(oSub["OperID"]), + HOptQueue = DBUtility.ClsPub.isStrNull(oSub["OptQueue"]), + HGroupRowId = DBUtility.ClsPub.isStrNull(oSub["GroupRowId"]), + }; + + //鍐欏叆瀛愯〃 + sql = $@"Insert into Kf_MateOutRequestBillSub + (HInterID,HEntryID,HERPInterID,HERPEntryID,HSEQ,HRemark + ,HMaterID,HProdMaterID,HUnitID,HAuxPropID,HBatchNO,HWHID,HSPID + ,HPrice,HMoney,HMTONo,HPlanMode,HStockStatusID,HDate + ,HQty,HQtyMust,HRelationQty,HMoveStockQty,HRelationMoney + ,HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType + ,HPPBOMInterID,HPPBOMEntryID,HPPBOMEntrySEQ,HPPBOMBillNo + ,HICMOInterID,HICMOEntryID,HICMOEntrySEQ,HICMOBillNo + ,HPOOrderInterID,HPOOrderEntryID,HPOOrderBillNo + ,HOWNERID,HOWNERTYPEID,HKEEPERID,HKEEPERTYPEID,HSUPPLYORGID + ,HBOMID,HProcessID,HBaseUnitID,HOperID,HOptQueue,HGroupRowId) + Values ({subData.HInterID},{subData.HEntryID},{subData.HERPInterID},{subData.HERPEntryID},{subData.HSEQ},'{subData.HRemark}' + ,{subData.HMaterID},{subData.HProdMaterID},{subData.HUnitID},{subData.HAuxPropID},'{subData.HBatchNO}',{subData.HWHID},{subData.HSPID} + ,{subData.HPrice},{subData.HMoney},'{subData.HMTONo}',{subData.HPlanMode},{subData.HStockStatusID},getdate() + ,{subData.HQty},{subData.HQtyMust},{subData.HRelationQty},{subData.HMoveStockQty},{subData.HRelationMoney} + ,{subData.HSourceInterID},{subData.HSourceEntryID},'{subData.HSourceBillNo}','{subData.HSourceBillType}' + ,{subData.HPPBOMInterID},{subData.HPPBOMEntryID},{subData.HPPBOMEntrySEQ},'{subData.HPPBOMBillNo}' + ,{subData.HICMOInterID},{subData.HICMOEntryID},{subData.HICMOEntrySEQ},'{subData.HICMOBillNo}' + ,{subData.HPOOrderInterID},{subData.HPOOrderEntryID},'{subData.HPOOrderBillNo}' + ,{subData.HOWNERID},'{subData.HOWNERTYPEID}',{subData.HKEEPERID},'{subData.HKEEPERTYPEID}',{subData.HSUPPLYORGID} + ,{ subData.HBOMID},{subData.HProcessID},{ subData.HBaseUnitID},{subData.HOperID},'{ subData.HOptQueue}','{ subData.HGroupRowId}')"; + oCn.RunProc(sql.Replace("\r\n", "")); + } + + oCn.Commit(); + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "鍗曟嵁鍚屾鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 1; + objJsonResult.Message = "涓嶆敮鎸佸悓姝ュ姛鑳斤紒"; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鑾峰彇绯荤粺鍙傛暟澶辫触锛� " + sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍗曟嵁鍚屾澶辫触锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + } } \ No newline at end of file -- Gitblit v1.9.1