From 465528ae38bf7a0be016f65af9c55bb0e84821d4 Mon Sep 17 00:00:00 2001 From: 王 垚 <1402714037@qq.com> Date: 星期四, 06 一月 2022 17:33:56 +0800 Subject: [PATCH] 优化 --- WebAPI/Controllers/POInStockController.cs | 106 ++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 85 insertions(+), 21 deletions(-) diff --git a/WebAPI/Controllers/POInStockController.cs b/WebAPI/Controllers/POInStockController.cs index 5f387b3..394dab0 100644 --- a/WebAPI/Controllers/POInStockController.cs +++ b/WebAPI/Controllers/POInStockController.cs @@ -289,12 +289,16 @@ string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries); string msg2 = sArray[0].ToString(); string msg3 = sArray[1].ToString(); - + LogService.Write("msg1:" + msg1); + LogService.Write("msg2:" + msg2); + LogService.Write("msg3:" + msg3); string UserName = ""; 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 +316,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) == "") { @@ -341,6 +345,7 @@ msg3 = msg3.Replace("\n", ""); //\n //msg2 = msg2.Replace("'", "鈥�"); List<Model.ClsCg_POInStockBillSub> ls = new List<Model.ClsCg_POInStockBillSub>(); + ls = oListModels.getObjectByJson_POInStockSub(msg3); int i = 0; foreach (Model.ClsCg_POInStockBillSub oItemSub in ls) @@ -362,7 +367,7 @@ objJsonResult.data = 1; return objJsonResult; } - if (oSystemParameter.omodel.WMS_CampanyName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 + if (FCusName == "瀹夌憺鍖荤枟") //绯荤粺鍙傛暟 瀹㈡埛瀹氬埗鍖栧悕绉� 绌虹櫧涓洪�氱敤 { if (DBUtility.ClsPub.isStrNull(oItemSub.HBatChNo) == "") { @@ -610,7 +615,7 @@ SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); //閲囪喘璁㈠崟 鐢熸垚閫佽揣鍗曞垪琛� if (!String.IsNullOrEmpty(HBillNo)) - HInterID = GetHinterIDByBillNo(HBillNo).ToString(); + HInterID = GetHinterIDByBillNo(HBillNo, "Aduit").ToString(); if (HInterID == "0") { objjson.code = "0"; @@ -620,10 +625,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 +664,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 +690,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 +722,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 +732,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涓诲唴鐜� @@ -780,12 +793,12 @@ [HttpGet] public object GetHinterID(string HBillNo) { - int HinterID = GetHinterIDByBillNo(HBillNo); + int HinterID = GetHinterIDByBillNo(HBillNo, "Print"); if (HinterID == 0) { objjson.code = "0"; objjson.count = 0; - objjson.Message = "鎿嶄綔澶辫触,璇峰厛淇濆瓨璁㈠崟"; + objjson.Message = "鎿嶄綔澶辫触,璇峰厛淇濆瓨骞跺鏍歌鍗�"; objjson.data = HinterID; return objjson; } @@ -796,11 +809,13 @@ return objjson; } - public int GetHinterIDByBillNo(string HBillNo) + public int GetHinterIDByBillNo(string HBillNo, string type) { SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM(); int HInterID = 0; string sql = "select HInterID from CG_POINSTOCKBILLMAIN where HBILLNO = '" + HBillNo + "'"; + if (type == "Print") + sql += " and HBillStatus = '2' ";//鎵撳嵃鍒ゆ柇鏄惁瀹℃牳 DataTable dt = oCn.RunProcReturn(sql, "HInterID").Tables[0]; if (dt.Rows.Count > 0) HInterID = Convert.ToInt32(dt.Rows[0]["HInterID"]); @@ -810,7 +825,7 @@ [Route("DeltetPOInStockBill")] [HttpGet] - public object DeltetPOInStockBill(string HInterID) + public object DeltetPOInStockBill(string HInterID, string HUserName, string HBillNo) { SQLHelper.ClsCN oCN = new SQLHelper.ClsCN(); try @@ -818,9 +833,11 @@ DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill(); //鍏堝垹闄� 閲戣澏鏁版嵁 objjson = DeleteKingDee(HInterID); - if (objJsonResult.code == "0") - return objJsonResult; - + LogService.Write(objjson.ToString()); + if (objjson.code == "0") + return objjson; + + WebAPIController.Add_Log("閫佽揣鍗曞垹闄�", HUserName, "閫佽揣鍗曞垹闄わ紝鍗曞彿锛�" + HBillNo); oCN.BeginTran(); oBill.DeleteRelation(ref DBUtility.ClsPub.sExeReturnInfo, Convert.ToInt32(HInterID)); oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID); @@ -848,6 +865,9 @@ { 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) { @@ -868,9 +888,9 @@ objjson.data = null; return objjson; } - + //LogService.Write(""); var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson)); - //LogService.Write(result); + LogService.Write("api缁撴灉鍒犻櫎锛�" + result); if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE") { objjson.code = "0"; @@ -963,5 +983,49 @@ // } + [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()); + if (mylist.Count > 1) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鎿嶄綔澶辫触锛佽閫夋嫨鐩稿悓閲囪喘璁㈠崟鏁版嵁琛屼笅鎺紒"; + objJsonResult.data = null; + return objJsonResult; + } + 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