From 17c1c9bb4537f3915e5b53e1a26a1a0b9c8e7c85 Mon Sep 17 00:00:00 2001 From: hudong <Administrator@PC-20250329JZUF> Date: 星期一, 16 六月 2025 08:37:58 +0800 Subject: [PATCH] 1.定时充电问题排查,增加状态字段增加定时更新状态2.删除webservice所有日志 api接口日志(超时问题优化) --- api/WmsSpaHelper.cs | 105 +++++++++++++++++++++++++++++++++++----------------- 1 files changed, 70 insertions(+), 35 deletions(-) diff --git a/api/WmsSpaHelper.cs b/api/WmsSpaHelper.cs index 31509e9..cf42f12 100644 --- a/api/WmsSpaHelper.cs +++ b/api/WmsSpaHelper.cs @@ -56,7 +56,7 @@ bool panduan = true; var db = new SqlHelper<object>().GetInstance(); - var po = db.Queryable<TN_Material_KC>().Where(a => a.S_ITEM_CODE == ItemCode).First(); + var po = db.Queryable<TN_Material_KC>().Where(a => a.S_ITEM_CODE== ItemCode).First(); var po1 = db.Queryable<CntrItemRel>().Where(a => a.S_ITEM_CODE == ItemCode).First(); if (po != null) @@ -673,7 +673,6 @@ result.WLPZBH = items.HEAD.WLPZH; result.WLPZND = items.HEAD.WLPZND; result.resultCode = 0; - result.resultMsg = ""; db.CommitTran(); simpleResults.Add(result); } @@ -894,8 +893,8 @@ db.BeginTran(); List<WLReturnRoot.ITEM> list = new List<WLReturnRoot.ITEM>(); - - var itemCodes = model.ROOT.ITEM.Select(item => item.WLBM).ToList(); + List<TN_Material> tN_Materials = new List<TN_Material>(); + var itemCodes = model.ROOT.ITEM.Select(item => item.WLBM).Distinct().ToList(); var itemlist = db.Queryable<TN_Material>() .Where(it => itemCodes.Contains(it.S_ITEM_CODE)) .ToList(); @@ -904,10 +903,8 @@ { try { - var result = new WLReturnRoot.ITEM(); - - var materlist = itemlist.Where(it => it.S_ITEM_CODE == item.WLBM).First(); + var materlist = itemlist.Where(it => it.S_ITEM_CODE == item.WLBM).FirstOrDefault(); if (materlist == null) { TN_Material tN_Material = new TN_Material(); @@ -924,7 +921,8 @@ tN_Material.S_CPZ = item.CPZ; tN_Material.S_CPZMS = item.CPZMS; tN_Material.S_ITEM_NAME = item.VTEXT; - db.Insertable<TN_Material>(tN_Material).ExecuteCommand(); + tN_Materials.Add(tN_Material); + //db.Insertable<TN_Material>(tN_Material).ExecuteCommand(); result.MSGDESP = "鎴愬姛"; result.MSGCODE = 0; result.GCBM = item.GCBM; @@ -967,6 +965,24 @@ } } response.ROOT.ITEM = list; + if (tN_Materials.Count()>0) + { + db.Insertable<TN_Material>(tN_Materials).ExecuteCommand(); + //using (var bulkCopy = new SqlBulkCopy(util.Settings.SqlServer)) + //{ + // bulkCopy.DestinationTableName = "TN_Material"; + // bulkCopy.BatchSize = 500; + // var dataTable = new DataTable(); + // dataTable = list.ToDataTable(); + // // 娣诲姞鍒楁槧灏勶紙纭繚鍚嶇О鍖归厤锛�+ // foreach (DataColumn col in dataTable.Columns) + // { + // bulkCopy.ColumnMappings.Add(col.ColumnName, col.ColumnName); + // } + // bulkCopy.WriteToServer(tN_Materials.ToDataTable()); + //} + } + //db.Insertable<TN_Material>(list).ExecuteCommand(); db.CommitTran(); @@ -1880,28 +1896,36 @@ else if (!string.IsNullOrEmpty(model.item_code)) { var starts = db.Queryable<CntrItemRel>().Where(cir => cir.S_CNTR_TYPE == "鍗婃墭" && cir.S_ITEM_CODE == model.item_code).OrderBy(cir => cir.T_CREATE).ToList().FirstOrDefault(); - LogHelper.Info($"starts{starts}"); - var starts12 = db.Queryable<LocCntrRel>().Where(lcr => lcr.S_CNTR_CODE== starts.S_CNTR_CODE).ToList().FirstOrDefault(); - LogHelper.Info($"starts1{starts12}"); - start = db.Queryable<Location>().Where(loc => loc.S_AREA_CODE == "HJQ" && loc.S_CODE== starts12.S_LOC_CODE).ToList().FirstOrDefault(); - LogHelper.Info($"starts2{start}"); + if (starts!=null) + { + LogHelper.Info($"starts{starts}"); + var starts12 = db.Queryable<LocCntrRel>().Where(lcr => lcr.S_CNTR_CODE == starts.S_CNTR_CODE).ToList().FirstOrDefault(); + LogHelper.Info($"starts1{starts12}"); + start = db.Queryable<Location>().Where(loc => loc.S_AREA_CODE == "HJQ" && loc.S_CODE == starts12.S_LOC_CODE).ToList().FirstOrDefault(); + LogHelper.Info($"starts2{start}"); - model.cntr_code = starts12?.S_CNTR_CODE; + model.cntr_code = starts12?.S_CNTR_CODE; + } + else + { + var list = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToArray(); + var S_LOC_CODElist = db.Queryable<LocCntrRel>().Where(s => !list.Contains(s.S_CNTR_CODE)).Select(s => s.S_LOC_CODE).ToArray(); + start = db.Queryable<Location>().Where(it => S_LOC_CODElist.Contains(it.S_CODE)).ToList().FirstOrDefault(); + + + + + var starts12 = db.Queryable<LocCntrRel>().Where(lcr => lcr.S_CNTR_CODE == start.S_CODE).ToList().FirstOrDefault(); + + + model.cntr_code = starts12?.S_CNTR_CODE; + } + } else { #region MyRegion - var list = db.Queryable<CntrItemRel>().Select(s => s.S_CNTR_CODE).ToArray(); - var S_LOC_CODElist = db.Queryable<LocCntrRel>().Where(s => !list.Contains(s.S_CNTR_CODE)).Select(s => s.S_LOC_CODE).ToArray(); - start = db.Queryable<Location>().Where(it => S_LOC_CODElist.Contains(it.S_CODE)).ToList().FirstOrDefault(); - - - - - var starts12 = db.Queryable<LocCntrRel>().Where(lcr => lcr.S_CNTR_CODE == start.S_CODE).ToList().FirstOrDefault(); - - - model.cntr_code = starts12?.S_CNTR_CODE; + #endregion } if (start == null) @@ -3687,8 +3711,14 @@ var po1 = new TN_Outbound_Order { S_NO = WMSHelper.GenerateShippNo(), UNAME = po.UNAME, S_FACTORY = po.S_FACTORY, S_CBZX = po.S_CBZX, S_ZZKM = po.S_ZZKM, S_LRZX = po.S_LRZX, BLDAT = po.BLDAT, BUDAT = po.BUDAT, S_OUT_TYPE = po.S_OUT_TYPE, S_BS_TYPE = po.S_BS_TYPE, S_AREA_CODE = po.S_AREA_CODE, S_BS_NO = po.S_NO }; List<TN_Ll_detail> tN_Ll_Details = new List<TN_Ll_detail>(); po1.Details = new List<TN_Outbound_Detail>(); + var list = po.Details.Where(s => s.F_QTY > s.F_ACC_D_QTY&&s.S_ERP_WH_CODE=="4004").Select(s => s.S_ITEM_CODE).Distinct().ToArray(); + + var Sitemlist = db.Queryable<CntrItemRel>().Where(s => list.Contains(s.S_ITEM_CODE)).Select(s => s.S_ITEM_CODE).ToArray().Select(x => x.Trim()).ToArray(); ; + + po.Details = po.Details.Where(s => Sitemlist.Contains(s.S_ITEM_CODE)).ToList(); if (po.Details.Count() > 0) { + foreach (var a in po.Details) { if (a.F_QTY > a.F_ACC_D_QTY) @@ -3749,7 +3779,12 @@ return result; } } - + else + { + result.code = 1; + result.msg = $"棰嗘枡鍗晎po.S_NO}鎵句笉鍒板搴斿簱瀛樼墿鏂欎俊鎭�; + return result; + } } db.CommitTran(); } @@ -4382,25 +4417,25 @@ List<JHWBackDto.ITEM> iTEMs = new List<JHWBackDto.ITEM>(); foreach (var item in po.Details) { - var podetail = po.Details.Where(s => s.S_ITEM_CODE == item.S_ITEM_CODE).FirstOrDefault(); + // var podetail = po.Details.Where(s => s.S_ITEM_CODE == item.S_ITEM_CODE).FirstOrDefault(); JHWBackDto.ITEM ckbitem = new JHWBackDto.ITEM(); ckbitem.WLBH = item.S_ITEM_CODE; ckbitem.GC = po.S_FACTORY; - ckbitem.XSDD = podetail?.S_XSDD; - ckbitem.XSDDHXM = podetail?.S_XSDDXMBH; + ckbitem.XSDD = item?.S_XSDD; + ckbitem.XSDDHXM = item?.S_XSDDXMBH; ckbitem.SL = item.F_QTY; - ckbitem.DW = podetail?.S_UOM; - ckbitem.DDH = podetail?.S_DDH; + ckbitem.DW = item?.S_UOM; + ckbitem.DDH = item?.S_DDH; //ckbitem.PH = podetail?.S_PH; // ckbitem.TSKCBS = podetail?.S_TSKCBS; //ckbitem.DDHXM = (podetail?.N_ROW_NO); - ckbitem.WBS = podetail?.S_WBS; - ckbitem.KCDD = podetail?.S_KCDD; - ckbitem.PC = podetail?.S_BATCH_NO; + ckbitem.WBS = item?.S_WBS; + ckbitem.KCDD = item?.S_KCDD; + ckbitem.PC = item?.S_BATCH_NO; #region MyRegion // List<JHWBackDto.ITEM1> listitem1 = new List<JHWBackDto.ITEM1>(); JHWBackDto.ITEM1 listitem1 = new JHWBackDto.ITEM1(); - listitem1.XLH = podetail?.S_SERIAL_NO.Split(',').ToList(); + listitem1.XLH = item?.S_SERIAL_NO.Split(',').ToList(); ////string[] xlhValues = item.S_SERIAL_NO.Split(','); //var serialNos = string.Join(",", CntrItemRels // .Where(s => s.S_ITEM_CODE == item.S_ITEM_CODE) -- Gitblit v1.9.1