| | |
| | | public MES_WO_ACTION Setting { get; set; } |
| | | #endregion |
| | | public BAS_PKG_RULE PkgRule { get; set; } |
| | | public BAS_PKG_PROD PkgProd { get; set; } |
| | | public WipPkg CurPkg { get; set; } |
| | | public WipPkgItem CurPkgItem { get; set; } |
| | | public PackingActionOutput CurCmd { get; set; } |
| | |
| | | LabelPV = Biz.Db.Queryable<BAS_LABEL_PV>().ToList(); |
| | | //获取是否包装完后需要称重 |
| | | NeedWeighing = Setting.OPTION_2 == "Y"; |
| | | //获取包装规则的称重范围 |
| | | PkgProd = Biz.Db.Queryable<BAS_PKG_PROD>().Where(q => q.PKG_RULE_ID == PkgRule.ID && q.ITEM_CODE == CurPosition.WorkBatch.WO.ITEM_CODE).First(); |
| | | //如果工序上下文中没有包装记录则新建一个,有则获取当前的包装记录 |
| | | if (CurPosition.Context.ContainsKey("CurPackage") && !CurPosition.Context["CurPackage"].IsNullOrEmpty()) |
| | | { |
| | |
| | | { |
| | | if (!pInput.WeightInfo.IsNullOrEmpty() && pInput.WeightInfo.Weight > 0) |
| | | { |
| | | //验证重量数据是否符合设置好的重量范围 |
| | | if (!PkgProd.IsNullOrEmpty() && (pInput.WeightInfo.Weight < PkgProd.MIN_WEIGHT || PkgProd.MIN_WEIGHT < pInput.WeightInfo.Weight)) |
| | | { |
| | | action.IsSuccessed = false; |
| | | action.Data.Data = CurCmd; |
| | | action.Data.ShortMsg = new("重量超限", ShortMessage.Types.Failed); |
| | | //action.LocaleMsg = new($"外包装重量[{0}]超出产品[{1}]在包装规则[{2}]中的预设范围[{3} - {4}],请处理后重新上称称重"); |
| | | action.LocaleMsg = new("MES.WorkAction.PackingAction.PackageOverWeight", pInput.WeightInfo.Weight + pInput.WeightInfo.Unit.IsNullOrEmpty("", " " + pInput.WeightInfo.Unit), CurPosition.WorkBatch.WO.ITEM_CODE, PkgRule.RULE_NAME, PkgProd.MIN_WEIGHT + PkgProd.MIN_UNIT.IsNullOrEmpty("", " " + PkgProd.MIN_UNIT), PkgProd.MAX_WEIGHT + PkgProd.MAX_UNIT.IsNullOrEmpty("", " " + PkgProd.MAX_UNIT)); |
| | | return action; |
| | | } |
| | | |
| | | CurCmd = null; |
| | | PrintTimes = 0; |
| | | CurPkg.WeightInfo.Weight = pInput.WeightInfo.Weight; |