| | |
| | | |
| | | using HH.WCS.Mobox3.DSZSH.Consts; |
| | | using HH.WCS.Mobox3.DSZSH.Helpers; |
| | | using HH.WCS.Mobox3.DSZSH.Helpers.Model; |
| | | using HH.WCS.Mobox3.DSZSH.Models; |
| | | |
| | | namespace HH.WCS.Mobox3.DSZSH.ServiceCore { |
| | |
| | | return; |
| | | } |
| | | |
| | | var startLocCntrRel = db.Queryable<TN_Location, TN_Loc_Container, TN_CG_Detail> |
| | | ((l, c, d) => l.S_CODE == c.S_LOC_CODE && c.S_CNTR_CODE == d.S_CNTR_CODE) |
| | | // 筛选要求的物料编码和批次号 |
| | | .Where((l, c, d) => d.S_CG_ID == detail.S_CG_ID && d.S_BATCH_NO == detail.S_BATCH_NO) |
| | | // 如果不是强制出库,物料状态必须必须合格 |
| | | // 否则,只要不是 正在检验 的物料即可 |
| | | .Where((l, c, d) => (detail.N_FORCE == 0 && d.N_ITEM_STATE == 0 && d.S_ITEM_STATE == "合格") |
| | | || (detail.N_FORCE != 0 && d.N_ITEM_STATE != 3 && d.S_ITEM_STATE != "正在检验")) |
| | | // 排序:数字越小越优先,合格>待检>不合格 |
| | | .OrderBy((l, c, d) => d.N_ITEM_STATE) |
| | | .OrderBy(l => l.N_LAYER) |
| | | .Select((l, c) => c).First(); |
| | | var startLocCntrRel = db.Queryable<TN_Loc_Container>() |
| | | .Where(c => c.S_CNTR_CODE == detail.S_CNTR_CODE) |
| | | .First(); |
| | | |
| | | if (startLocCntrRel == null) { |
| | | LogHelper.Info("轮询:出库:没有找到合适的起点货位"); |