From 4034e36c9797217e4e4e5657de1319460816b45a Mon Sep 17 00:00:00 2001 From: 王 垚 <1402714037@qq.com> Date: 星期二, 04 一月 2022 17:30:24 +0800 Subject: [PATCH] 需求增加 --- WebAPI/Controllers/POInStockController.cs | 153 +++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 143 insertions(+), 10 deletions(-) diff --git a/WebAPI/Controllers/POInStockController.cs b/WebAPI/Controllers/POInStockController.cs index bc1d3e3..85a8bfd 100644 --- a/WebAPI/Controllers/POInStockController.cs +++ b/WebAPI/Controllers/POInStockController.cs @@ -295,6 +295,8 @@ ListModels oListModels = new ListModels(); try { + //鑾峰彇瀹㈡埛鍚嶇О + string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo); DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill(); List<Model.ClsCg_POInStockBillMain> lsmain = new List<Model.ClsCg_POInStockBillMain>(); msg2 = msg2.Replace("\\", ""); @@ -312,7 +314,7 @@ oItem.HMainSourceInterID = oItem.HInterID; oItem.HInterID = 0; //oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo); - if (oSystemParameter.omodel.WMS_CampanyName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 + if (FCusName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 { if (DBUtility.ClsPub.isStrNull(oItem.HDHDate) == "") { @@ -362,7 +364,7 @@ objJsonResult.data = 1; return objJsonResult; } - if (oSystemParameter.omodel.WMS_CampanyName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 + if (FCusName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 { if (DBUtility.ClsPub.isStrNull(oItemSub.HBatChNo) == "") { @@ -620,10 +622,15 @@ return objjson; } - string kdTbaleName = "AIS20211209082932"; + //string kdTbaleName = "AIS20211209082932"; + string kdTbaleName = "AIS20211130140219";//澶忓疂姝e紡 + string sql = string.Format(@" - SELECT B.HINTERID,c.FID,c.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER AS FSETTLEORGNUMBER,E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID ,CU.FNUMBER AS FUNITNUMBER FROM - CG_POINSTOCKBILLSUB B +SELECT M.HBillNo,B.HINTERID,B.HENTRYID,c.FID,c.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER +,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER AS FSETTLEORGNUMBER, +E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID +,CU.FNUMBER AS FUNITNUMBER,D.F_xbkf_Combo1,CR.FPRICE,CR.FTAXPRICE,CR.FTAXRATE + FROM CG_POINSTOCKBILLSUB B JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID JOIN {0}..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID LEFT JOIN {0}..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMATERIALID @@ -654,12 +661,14 @@ JObject model = new JObject(); model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = "SLD01_SYS" }); //鍗曟嵁绫诲瀷 + model.Add("FBILLNO", dr["HBillNo"].ToString()); //鍗曟嵁缂栧彿 model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //閫氱煡鏃ユ湡 model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // 鏀舵枡缁勭粐 model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //閲囪喘缁勭粐 model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //渚涘簲鍟� model.Add("FOwnerTypeIdHead", "BD_OwnerOrg");// 璐т富绫诲瀷 model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//璐т富 + model.Add("F_XBKF_COMBO", dr["F_xbkf_Combo1"].ToString());//鏄惁鏈夌エ JArray Fentity = new JArray(); foreach (var item in drs) { @@ -678,7 +687,10 @@ FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜 FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//婧愬崟鍗曞彿 FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜 - + FentityModel.Add("FSRMENTRYID", item["HENTRYID"].ToString());//SRM hentryid + FentityModel.Add("FPrice", item["FPRICE"].ToString());//鍗曚环 + FentityModel.Add("FTaxPrice", item["FTAXPRICE"].ToString());//鍚◣鍗曚环 + FentityModel.Add("FEntryTaxRate", item["FTAXRATE"].ToString());//绋庣巼 JArray Fentity2 = new JArray(); JObject FentityModel2 = new JObject(); @@ -707,9 +719,7 @@ ["IsVerifyBaseDataField"] = "false", ["Model"] = model }; - //LogService.Write(JsonConvert.SerializeObject(jsonRoot)); var loginRet = InvokeHelper.Login(); - LogService.Write("loginRet:" + loginRet); var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); if (isSuccess == 0) { @@ -719,9 +729,9 @@ objjson.data = null; return objjson; } - LogService.Write(jsonRoot.ToString()); + LogService.Write("jsonRoot:" + jsonRoot.ToString()); var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString()); - LogService.Write(result); + //LogService.Write(result); if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE") { //鏇存柊閫佽揣鍗� 涓昏〃 ERP鍗曟嵁鍙� 浠ュ強 ERP涓诲唴鐜� @@ -807,6 +817,93 @@ return HInterID; } + + [Route("DeltetPOInStockBill")] + [HttpGet] + public object DeltetPOInStockBill(string HInterID, string HUserName, string HBillNo) + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + try + { + DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill(); + //鍏堝垹闄� 閲戣澏鏁版嵁 + objjson = DeleteKingDee(HInterID); + LogService.Write(objjson.ToString()); + if (objjson.code == "0") + return objjson; + + WebAPIController.Add_Log("閫佽揣鍗曞垹闄わ紝鍗曞彿锛�" + HBillNo, HUserName, "閫佽揣鍗曞垹闄�"); + oCN.BeginTran(); + oBill.DeleteRelation(ref DBUtility.ClsPub.sExeReturnInfo, Convert.ToInt32(HInterID)); + oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID); + oCN.RunProc("Delete From Cg_POInStockBillSub where HInterID = " + HInterID); + oCN.Commit(); + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍒犻櫎鎴愬姛锛�"; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + oCN.RollBack(); + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "Exception锛�" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + + //瀹℃牳 鍒犻櫎 鍒犻櫎閲戣澏鏁版嵁搴撳搴� 鏀舵枡閫氱煡鍒版暟鎹� + public json DeleteKingDee(string hinterid) + { + SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); + string sql = string.Format("select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain where HERPInterID>0 and hinterid in (" + hinterid + ")"); + string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo); + if (FCusName == "澶忓疂鐢靛櫒") + sql = "select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain t1 join AIS20211130140219..T_PUR_RECEIVE t2 on t1.HERPInterID = t2.FID where HERPInterID>0 and hinterid in (" + hinterid + ")"; + DataTable dt = oCN.RunProcReturn(sql, "deleteDt").Tables[0]; + if (dt.Rows.Count > 0) + { + foreach (DataRow dr in dt.Rows) + { + var sJson = new + { + Numbers = dr["HERPBillNO"].ToString(), + Ids = "" + }; + var loginRet = InvokeHelper.Login(); + var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>(); + if (isSuccess == 0) + { + objjson.code = "0"; + objjson.count = 0; + objjson.Message = "鎿嶄綔澶辫触,閲戣澏璐﹀彿鐧诲綍寮傚父銆�" + loginRet; + objjson.data = null; + return objjson; + } + //LogService.Write(""); + var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson)); + LogService.Write("api缁撴灉鍒犻櫎锛�" + result); + if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") + { + objjson.code = "0"; + objjson.count = 0; + objjson.Message = "瀵瑰簲閲戣澏鏀舵枡閫氱煡鍗曞垹闄ゅけ璐� 锛�" + result; + objjson.data = null; + return objjson; + } + + } + } + objjson.code = "1"; + objjson.count = 1; + objjson.Message = "Sucess锛�"; + objjson.data = null; + return objjson; + } + //[Route("POInStockAccept")] //[HttpGet] ///// <summary> @@ -881,5 +978,41 @@ // } + [Route("TestSaverPOInStock")] + [HttpPost] + /// <summary> + /// 鐢熸垚閫佽揣鍗曞墠楠岃瘉閲戣澏閲囪喘璁㈠崟鏄惁鍒犻櫎鍜屽叧闂紝鐒跺悗鏇存柊鍏宠仈鏁伴噺 + /// </summary> + /// <param name="HInterID"></param> + /// <returns></returns> + public object TestSaverPOInStock([FromBody] string[] ids) + { + List<string> mylist = new List<string>(ids.Distinct()); + try + { + string HinterID = ""; + for (int i = 0; i < mylist.Count; i++) + { + SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); + //鏇存柊鍏宠仈鏁伴噺 + HinterID = mylist[i].ToString(); + oCn.RunProc("exec h_p_SRM_UpDatePPBomRelationQty '" + HinterID + "'"); + } + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鎿嶄綔鎴愬姛!"; + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "澶辫触锛�" + e.Message.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + } } \ No newline at end of file -- Gitblit v1.9.1