| | |
| | | _stockService.StockInfoService.Db.Updateable<Dt_StockInfo>() |
| | | .SetColumns(it => new Dt_StockInfo |
| | | { |
| | | StockStatus = StockStatusEmun.åºåºéå®.ObjToInt() |
| | | StockStatus = StockStatusEmun.åºåºéå®.ObjToInt(), |
| | | LocationCode = "" |
| | | }) |
| | | .Where(it => stockids.Contains(it.Id)) |
| | | .ExecuteCommand(); |
| | |
| | | stockInfo.StockStatus = StockStatusEmun.å
¥åºå®æ.ObjToInt(); |
| | | _stockRepository.UpdateData(stockInfo); |
| | | |
| | | var outboundOrder = _outboundOrderService.Db.Queryable<Dt_OutboundOrder>().First(x => x.OrderNo == task.OrderNo); |
| | | //var outboundOrder = _outboundOrderService.Db.Queryable<Dt_OutboundOrder>().First(x => x.OrderNo == task.OrderNo); |
| | | |
| | | task.TaskStatus = TaskStatusEnum.Finish.ObjToInt(); |
| | | // BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? WIDESEA_Core.Enums.OperateTypeEnum.èªå¨å®æ : OperateTypeEnum.äººå·¥å®æ); |
| | | var result = _task_HtyService.DeleteAndMoveIntoHty(task, OperateTypeEnum.人工å é¤); |
| | | if (!result) |
| | | { |
| | |
| | | _logger.LogInformation($"InEmptyTaskCompleted AddLocationStatusChangeRecord : {ex.Message} "); |
| | | } |
| | | |
| | | if (outboundOrder != null) |
| | | { |
| | | await HandleOutboundOrderToMESCompletion(outboundOrder, outboundOrder.OrderNo); |
| | | } |
| | | else |
| | | { |
| | | _logger.LogInformation($"TaskService InEmptyTaskCompleted: {task.TaskNum} ,æªæ¾å°åºåºåã "); |
| | | } |
| | | //if (outboundOrder != null) |
| | | //{ |
| | | // await HandleOutboundOrderToMESCompletion(outboundOrder, outboundOrder.OrderNo); |
| | | //} |
| | | //else |
| | | //{ |
| | | // _logger.LogInformation($"TaskService InEmptyTaskCompleted: {task.TaskNum} ,æªæ¾å°åºåºåã "); |
| | | //} |
| | | |
| | | return content; |
| | | } |
| | |
| | | var beforelocationStatus = locationInfo.LocationStatus; |
| | | |
| | | // è·åææååºä¸çåºåºéå®è®°å½ |
| | | var returnLocks = await _outStockLockInfoService.Db.Queryable<Dt_OutStockLockInfo>() |
| | | .Where(it => it.OrderNo == task.OrderNo && |
| | | it.PalletCode == task.PalletCode && |
| | | it.Status == (int)OutLockStockStatusEnum.ååºä¸) |
| | | .ToListAsync(); |
| | | //var returnLocks = await _outStockLockInfoService.Db.Queryable<Dt_OutStockLockInfo>() |
| | | // .Where(it => it.OrderNo == task.OrderNo && |
| | | // it.PalletCode == task.PalletCode && |
| | | // it.Status == (int)OutLockStockStatusEnum.ååºä¸) |
| | | // .ToListAsync(); |
| | | |
| | | // æ´æ°åºåºéå®è®°å½ç¶æä¸ºååºå®æ |
| | | foreach (var lockInfo in returnLocks) |
| | | { |
| | | lockInfo.Status = (int)OutLockStockStatusEnum.å·²ååº; |
| | | } |
| | | //foreach (var lockInfo in returnLocks) |
| | | //{ |
| | | // lockInfo.Status = (int)OutLockStockStatusEnum.å·²ååº; |
| | | //} |
| | | |
| | | if (returnLocks.Any()) |
| | | { |
| | | await _outStockLockInfoService.Db.Updateable(returnLocks).ExecuteCommandAsync(); |
| | | _logger.LogInformation($"æ´æ°{returnLocks.Count}æ¡éå®è®°å½ä¸ºå·²ååºç¶æ"); |
| | | } |
| | | //if (returnLocks.Any()) |
| | | //{ |
| | | // await _outStockLockInfoService.Db.Updateable(returnLocks).ExecuteCommandAsync(); |
| | | // _logger.LogInformation($"æ´æ°{returnLocks.Count}æ¡éå®è®°å½ä¸ºå·²ååºç¶æ"); |
| | | //} |
| | | |
| | | // æ´æ°åºåä¿¡æ¯ |
| | | stockInfo.LocationCode = task.TargetAddress; |
| | |
| | | foreach (var detail in stockInfo.Details) |
| | | { |
| | | detail.Status = StockStatusEmun.å
¥åºå®æ.ObjToInt(); |
| | | detail.OutboundQuantity = 0; // å
¥åºå®ææ¶åºåºæ°éæ¸
é¶ |
| | | detail.OutboundQuantity = 0; |
| | | } |
| | | _stockService.StockInfoDetailService.Repository.UpdateData(stockInfo.Details); |
| | | } |
| | |
| | | // å é¤é¶åºåæ°æ® |
| | | await DeleteZeroQuantityStockDetails(stockInfo.Id); |
| | | |
| | | await UpdateAffectedOrderDetails(task.OrderNo, returnLocks); |
| | | //await UpdateAffectedOrderDetails(task.OrderNo, returnLocks); |
| | | // æ´æ°è´§ä½ç¶æ |
| | | if (stockInfo.PalletType == PalletTypeEnum.Empty.ObjToInt()) |
| | | { |
| | |
| | | await Db.Deleteable(task).ExecuteCommandAsync(); |
| | | } |
| | | |
| | | await RecalculateOrderStatus(task.OrderNo); |
| | | //await RecalculateOrderStatus(task.OrderNo); |
| | | try |
| | | { |
| | | // è®°å½è´§ä½ç¶æåæ´ |
| | |
| | | _logger.LogInformation($"InPickTaskCompleted AddLocationStatusChangeRecord : {ex.Message} "); |
| | | } |
| | | |
| | | _logger.LogInformation($"æçååºå®æå¤çæå - ä»»å¡å·: {task.TaskNum}, æç: {task.PalletCode}, 订å: {task.OrderNo} è´§ä½ç¶æï¼{locationInfo.LocationStatus}"); |
| | | _ = Task.Run(async () => |
| | | { |
| | | try |
| | | { |
| | | var outboundOrder = await _outboundOrderService.Db.Queryable<Dt_OutboundOrder>() |
| | | .FirstAsync(x => x.OrderNo == task.OrderNo); |
| | | //_logger.LogInformation($"æçååºå®æå¤çæå - ä»»å¡å·: {task.TaskNum}, æç: {task.PalletCode}, 订å: {task.OrderNo} è´§ä½ç¶æï¼{locationInfo.LocationStatus}"); |
| | | //_ = Task.Run(async () => |
| | | //{ |
| | | // try |
| | | // { |
| | | // var outboundOrder = await _outboundOrderService.Db.Queryable<Dt_OutboundOrder>() |
| | | // .FirstAsync(x => x.OrderNo == task.OrderNo); |
| | | |
| | | if (outboundOrder != null) |
| | | { |
| | | // æ£æ¥è®¢åæ¯å¦å·²å®æï¼åªæå®ææ¶æåMESåé¦ |
| | | if (outboundOrder.OrderStatus == (int)OutOrderStatusEnum.åºåºå®æ) |
| | | { |
| | | await HandleOutboundOrderToMESCompletion(outboundOrder, outboundOrder.OrderNo); |
| | | } |
| | | else |
| | | { |
| | | _logger.LogInformation($"订å{task.OrderNo}ç¶æä¸º{outboundOrder.OrderStatus}ï¼æä¸åMESåé¦"); |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | _logger.LogError($"弿¥MESåé¦å¤ç失败 - OrderNo: {task.OrderNo}, Error: {ex.Message}"); |
| | | } |
| | | }); |
| | | // if (outboundOrder != null) |
| | | // { |
| | | // // æ£æ¥è®¢åæ¯å¦å·²å®æï¼åªæå®ææ¶æåMESåé¦ |
| | | // if (outboundOrder.OrderStatus == (int)OutOrderStatusEnum.åºåºå®æ) |
| | | // { |
| | | // await HandleOutboundOrderToMESCompletion(outboundOrder, outboundOrder.OrderNo); |
| | | // } |
| | | // else |
| | | // { |
| | | // _logger.LogInformation($"订å{task.OrderNo}ç¶æä¸º{outboundOrder.OrderStatus}ï¼æä¸åMESåé¦"); |
| | | // } |
| | | // } |
| | | // } |
| | | // catch (Exception ex) |
| | | // { |
| | | // _logger.LogError($"弿¥MESåé¦å¤ç失败 - OrderNo: {task.OrderNo}, Error: {ex.Message}"); |
| | | // } |
| | | //}); |
| | | } |
| | | catch (Exception ex) |
| | | { |