| | |
| | | _woBatch.CHANGE_USER = input.UserId; |
| | | _woBatch.CHANGE_TIME = DateTime.Now; |
| | | } |
| | | if (!Biz.Db.Queryable<BIZ_MES_WO_BATCH>().Where(x => x.ORDER_NO == input.WorkOrder && x.STATUS> BIZ_MES_WO_BATCH.STATUSs.Init.GetValue()).Any()) { |
| | | _wo.STATUS = BIZ_MES_WO.STATUSs.Init.GetValue(); |
| | | } |
| | | } |
| | | else |
| | | { |
| | |
| | | else |
| | | { |
| | | db.Updateable(_woBatch, input.UserId).UpdateColumns(x => new { x.STATUS, x.UPDATE_USER, x.UPDATE_TIME, x.CHANGE_USER, x.CHANGE_TIME }).ExecuteCommand(); |
| | | } |
| | | if (!_wo.IsNullOrEmpty() && _wo.STATUS == BIZ_MES_WO.STATUSs.Init.GetValue()) |
| | | { |
| | | db.Updateable(_wo, input.UserId).UpdateColumns(x => new { x.STATUS, x.UPDATE_USER, x.UPDATE_TIME }).ExecuteCommand(); |
| | | } |
| | | }); |
| | | if (!dbTran.IsSuccess) |
| | |
| | | result.LocaleMsg = new($"条码不存在!"); |
| | | return result; |
| | | } |
| | | var wo = await Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == woSns[0].WORK_ORDER ).IncludesAllFirstLayer().FirstAsync(); |
| | | var wo = await Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == woSns[0].WORK_ORDER ).IncludesAllFirstLayer().IncludesAllSecondLayer(q => q._ItemInfos).FirstAsync(); |
| | | if (wo == null) |
| | | { |
| | | result.IsSuccessed = false; |
| | |
| | | ErpProdInBth= new() { |
| | | WORK_ORDER = wo.ORDER_NO, |
| | | BATCH_NO = woSns[0].BATCH_NO, |
| | | ITEM_CODE = wo.ITEM_CODE, |
| | | ITEM_NAME = wo.ItemInfo?.ITEM_DESC, |
| | | SCAN_QTY = woSns.Count |
| | | }, |
| | | ProdInBatch = new() |
| | | { |
| | | WORK_ORDER = wo.ORDER_NO, |
| | | SALES_ORDER = wo.SALES_ORDER, |
| | | BATCH_NO = woSns[0].BATCH_NO, |
| | | ITEM_CODE = wo.ITEM_CODE, |
| | | SapCode = wo.ItemInfo?.ExtInfo?.SapCode, |
| | | ITEM_NAME = wo.ItemInfo?.ITEM_DESC, |
| | | PLAN_QTY = wo.PLAN_QTY, |
| | | SapCode = wo.ItemInfo?.ExtInfo?.SapCode, |
| | | SCAN_QTY = woSns.Count, |
| | | STATUS = "N" //Y-已生成,N-未生成,F-失败 |
| | | IS_HANDLED = "N" //Y-已生成,N-未生成,F-失败 |
| | | }, |
| | | InStoreScanInfo = new() { |
| | | SN = cartonSn, |
| | |
| | | } |
| | | return result; |
| | | } |
| | | |
| | | #region 提交前通用方法 |
| | | /// <summary> |
| | | /// 提交前检查是否岗位、工单和不良代码 |
| | | /// </summary> |
| | | /// <param name="code"></param> |
| | | /// <returns></returns> |
| | | public async Task<ApiAction<CheckCodeOutput>> CheckCode(string code) |
| | | { |
| | | var action = new ApiAction<CheckCodeOutput>($"检查条码{code}成功", new CheckCodeOutput()); |
| | | try |
| | | { |
| | | action.Data.Position = DbCache.Cache.Position[code]; |
| | | action.Data.WorkOrder = await Biz.Db.Queryable<BIZ_MES_WO>().Where(q => q.ORDER_NO == code).FirstAsync(); |
| | | action.Data.Defect = DbCache.Cache.Defect[code]; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | action.CatchExceptionWithLog(ex, $"检查条码{code}异常"); |
| | | } |
| | | return action; |
| | | } |
| | | #endregion |
| | | } |
| | | } |