| | |
| | | using Tiger.IBusiness.MES.WorkAction; |
| | | using Tiger.Model; |
| | | using Tiger.Model.Entitys.MES.Position; |
| | | using Tiger.Model.MES.Yada; |
| | | |
| | | namespace Tiger.Business.MES.WorkAction |
| | | { |
| | |
| | | #endregion |
| | | public List<BAS_PROD_BOM> Boms { get; set; } = new(); |
| | | public AssemblyInfo CurAssembly { get; set; } = new(); |
| | | public List<mes_MOPickList> MoPickList { get; set; } |
| | | #endregion Propertys & Variables |
| | | |
| | | #region Functions |
| | |
| | | CurAssembly.Items.Add(item); |
| | | } |
| | | } |
| | | //获取工单备料信息 |
| | | MoPickList = Biz.DataSource["YadaU9C"].Client.Queryable<mes_MOPickList>().Where(q => q.MoDocNo == CurPosition.WorkBatch.WO.ORDER_NO).ToList(); |
| | | |
| | | CurStep.Message = Biz.L("扫描上料物料"); |
| | | CurStep.Status = StepStatus.Normal; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | //如果当前物料存在备料表中存在推荐批次,则上料物料必须属于其推荐批次的物料 |
| | | var suggest = MoPickList.Where(q => q.Code == item.ItemInfo.ITEM_CODE && !q.SuggestedBatch.IsNullOrEmpty()).Select(q => q.SuggestedBatch).ToList(); |
| | | if (isOK && suggest.Any()) |
| | | { |
| | | isOK = false; |
| | | //在推荐批次所属工单的条码中存在 |
| | | if (Biz.Db.Queryable<BIZ_MES_WO_SN>().Any(q => suggest.Contains(q.WORK_ORDER) && (q.SN == input.SN || q.FLOW_SN == input.SN || q.TRAY_SN == input.SN))) |
| | | { |
| | | isOK = true; |
| | | } |
| | | } |
| | | //验证通过则保存上料信息 |
| | |
| | | ACT_SN = wipSn.SN, |
| | | ACT_VALUE_1 = CurAssembly.ToJson(), |
| | | ACT_RESULT = "Y", |
| | | ELAPSED_TIME = CurStep.GetElapsedTime().TotalMilliseconds.ToInt64(), |
| | | TRACE_INFO = $"以下物料上料完成:{string.Join(",", CurAssembly.Items.Select(q => $"{q.ItemInfo.ITEM_NAME}({q.ItemInfo.ITEM_CODE})"))}", |
| | | }; |
| | | wipActs.Add(wipAct); |