Tiger.Business.MES/BIZ/BIZ_MES_WO.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
Tiger.Business.MES/BIZ/ImportWoPlan.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Tiger.Business.MES/BIZ/BIZ_MES_WO.cs
@@ -789,16 +789,19 @@ { DbClient db = Biz.DataSource["YadaU9C"].Client; var moPickLists = db.Queryable<mes_MOPickList>().Where(q => q.MoDocNo == code).OrderBy(q => q.DocLineNO).ToList(); List<WoFlowCardPrintJson> woFlowCardPrintJson = new(); if (moPickLists.Count>0) { var ids = moPickLists.Select(x => SqlFunc.ToString(x.ItemMaster)).ToList(); var items = Biz.Db.Queryable<BAS_ITEM>().Where(q => ids.Contains(q.ID)).IncludesAllFirstLayer().ToList(); var wo = await Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == code).IncludesAllFirstLayer().FirstAsync(); SugarParameter[] pars = Biz.Db.Ado.GetParameters(new { WO = code }); var routeList = Biz.Db.Ado.UseStoredProcedure().SqlQuery<V_MES_WO_PTREE>("SP_MES_GET_WO_PTREE", pars);//返回List var routeStr = string.Join("->", routeList.Where(q => q.type == "Node" && q.name != "完工").OrderBy(x=>x.seq).Select(q=>q.name).ToList()); List<WoFlowCardPrintJson> woFlowCardPrintJson = new(); //生成打印实体 int i = 1; string Model = moPickLists.Where(q => q.IssueStyleName == "推式").First()?.ItemModel; int n = 1; string Model = moPickLists.Where(q => q.IssueStyleName == "推式").FirstOrDefault()?.ItemModel; string MoRemark = moPickLists[0]?.MoRemark; string SoRemark = moPickLists[0]?.SoRemark; string Customer = moPickLists[0]?.Customer; @@ -813,7 +816,7 @@ ItemDesc = wo.ItemInfo?.ITEM_DESC, SapCode = wo.ItemInfo?.ExtInfo?.SapCode, Qty = wo.PLAN_QTY, SoRemark = wo.SALES_REMARK, SoRemark = SoRemark, MoRemark= MoRemark, Customer = Customer, DemandCode= DemandCode, @@ -835,8 +838,9 @@ Method = item.IssueStyleName, }; printJson.Items.Add(list); if (i % 11 == 0) if (i == 8 || n % 11 == 0) { if (i == 8) { n = 0; } woFlowCardPrintJson.Add(printJson); printJson = new() { @@ -848,6 +852,7 @@ Qty = wo.PLAN_QTY, Model = Model, MoRemark = MoRemark, SoRemark = SoRemark, Customer = Customer, DemandCode = DemandCode, RouteStr = routeStr, @@ -855,11 +860,13 @@ }; } i++; n++; } if (printJson.Items.Count > 0 ) { woFlowCardPrintJson.Add(printJson); } } action.Data = woFlowCardPrintJson; } catch (Exception ex) Tiger.Business.MES/BIZ/ImportWoPlan.cs
@@ -61,7 +61,7 @@ BIZ_MES_WO wo = Biz.Db.Queryable<BIZ_MES_WO>().Where(x => x.ORDER_NO == item.ORDER_NO).First(); if (wo != null) { wo.PLAN_DATE += wo.PLAN_DATE.Contains(item.PLAN_DATE.ToString("yyyy-MM-dd")) ? "" : $",{item.PLAN_DATE.ToString("yyyy-MM-dd")}"; wo.PLAN_DATE = (wo.PLAN_DATE ?? "") + ((wo.PLAN_DATE ?? "").Contains(item.PLAN_DATE.ToString("yyyy-MM-dd")) ? "" : $",{item.PLAN_DATE.ToString("yyyy-MM-dd")}"); item.ITEM_CODE = wo.ITEM_CODE; item.CUST_CODE = wo.CUST_CODE; woList.Add(wo); @@ -150,7 +150,17 @@ item.VALIDATION_TYPE = "异常"; item.VALIDATION_RESULT += $"计划数量为空; "; } var _woBatch = await Biz.Db.Queryable<BIZ_MES_WO_BATCH>().Where(x => x.ORDER_NO == item.ORDER_NO && SqlFunc.DateIsSame(x.PLAN_DATE, item.PLAN_DATE) && BIZ_MES_WO_BATCH.STATUSs.Init.GetValue() < x.STATUS && x.STATUS < BIZ_MES_WO_BATCH.STATUSs.Closed.GetValue()).FirstAsync(); var _wo = await Biz.Db.Queryable<BIZ_MES_WO>().Where(x => x.ORDER_NO == item.ORDER_NO).FirstAsync(); var _batchs = await Biz.Db.Queryable<BIZ_MES_WO_BATCH>().Where(x => x.ORDER_NO == item.ORDER_NO).ToListAsync(); if (_batchs.Count > 0) { if ((_batchs.Sum(x => x.PLAN_QTY) + item.PLAN_QTY > _wo.PLAN_QTY) || item.PLAN_QTY > _wo.PLAN_QTY) { item.VALIDATION_TYPE = "异常"; item.VALIDATION_RESULT += $"工单下发的数量超过工单计划数量,不能下发!"; } } var _woBatch = _batchs.Where(x => x.ORDER_NO == item.ORDER_NO && SqlFunc.DateIsSame(x.PLAN_DATE, item.PLAN_DATE) && BIZ_MES_WO_BATCH.STATUSs.Init.GetValue() < x.STATUS && x.STATUS < BIZ_MES_WO_BATCH.STATUSs.Closed.GetValue()).FirstOrDefault(); if (!_woBatch.IsNullOrEmpty()) { item.VALIDATION_TYPE = "异常";