| | |
| | | else if (task.TaskType == (int)TaskTypeEnum.Relocation) |
| | | { |
| | | task.TaskState = WMStask.TaskState; |
| | | if (task.TaskState == (int)WIDESEA_Core.Enums.TaskRelocationStatusEnum.RelocationFinish) |
| | | if (task.TaskState == (int)WIDESEA_Core.Enums.TaskRelocationStatusEnum.SC_RelocationFinish) |
| | | content = UpdateTaskStatusRelocationCarFinish(task); |
| | | else |
| | | content = UpdateData(task); |
| | |
| | | { |
| | | /*if (task.TaskType == TaskOutboundTypeEnum.Outbound.ObjToInt())*/ |
| | | Sourcelocation.CurrentQty--; |
| | | if (Sourcelocation.CurrentQty <= 0 && Sourcelocation.Row != 2) |
| | | if (Sourcelocation.CurrentQty <= 0) |
| | | { |
| | | Sourcelocation.CurrentQty = 0; |
| | | Sourcelocation.LocationStatus = LocationStatusEnum.Free.ObjToInt(); |
| | | Sourcelocation.EnableStatus = EnableStatusEnum.Normal.ObjToInt(); |
| | | } |
| | | if (Sourcelocation.Row == 1 && Sourcelocation.LocationStatus == LocationStatusEnum.Free.ObjToInt()) |
| | | { |
| | | Dt_LocationInfo locationInfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.Row == 2 && x.Column == Sourcelocation.Column && x.Layer == Sourcelocation.Layer); |
| | | if (locationInfo.CurrentQty == 0 /*&& locationInfo.LocationStatus == LocationStatusEnum.Free.ObjToInt()*/) |
| | | { |
| | | locationInfo.LocationStatus = LocationStatusEnum.Free.ObjToInt(); |
| | | locationInfo.EnableStatus = EnableStatusEnum.Normal.ObjToInt(); |
| | | _basicService.LocationInfoService.Repository.UpdateData(locationInfo); |
| | | } |
| | | } |
| | | _basicService.LocationInfoService.Repository.UpdateData(Sourcelocation); |
| | | } |
| | |
| | | { |
| | | Dt_OutStockLockInfo? outStockLockInfo = _outboundService.OutboundStockLockInfoService.Repository.QueryFirst(x => x.TaskNum == task.TaskNum); |
| | | Dt_OutboundOrder? outboundOrder = null; |
| | | Dt_OutboundOrderDetail? outboundOrderDetail = null; |
| | | int overCount = 0; |
| | | if (outStockLockInfo != null) |
| | | { |
| | | Dt_OutboundOrderDetail outboundOrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == outStockLockInfo.OrderDetailId); |
| | | outboundOrderDetail = _outboundService.OutboundOrderDetailService.Repository.QueryFirst(x => x.Id == outStockLockInfo.OrderDetailId); |
| | | if (outboundOrderDetail != null) |
| | | { |
| | | outboundOrder = Db.Queryable<Dt_OutboundOrder>().Where(x => x.Id == outboundOrderDetail.OrderId).Includes(x => x.Details).First(); |
| | |
| | | if (outboundOrder != null && outboundOrder.Details.Count == overCount) |
| | | { |
| | | outboundOrder.OrderStatus = OutboundStatusEnum.åºåºå®æ.ObjToInt(); |
| | | _outboundService.OutboundOrderService.Repository.DeleteAndMoveIntoHty(outboundOrder, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | | _outboundService.OutboundOrderDetailService.Repository.DeleteAndMoveIntoHty(outboundOrder.Details, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | | outboundOrder.Details = null; |
| | | _outboundService.OutboundOrderService.Repository.DeleteAndMoveIntoHty(outboundOrder, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | | } |
| | | else |
| | | { |
| | | if (outboundOrderDetail != null) |
| | | _outboundService.OutboundOrderDetailService.Repository.UpdateData(outboundOrderDetail); |
| | | } |
| | | BaseDal.DeleteAndMoveIntoHty(task, App.User.UserId == 0 ? OperateType.èªå¨å®æ : OperateType.äººå·¥å®æ); |
| | | if (outStockLockInfo != null) _outboundService.OutboundStockLockInfoService.Repository.UpdateData(outStockLockInfo); |
| | |
| | | Targetlocation.CurrentQty++; |
| | | stockInfo.LocationCode = Targetlocation.LocationCode; |
| | | stockInfo.SerialNumber = Targetlocation.CurrentQty; |
| | | stockInfo.StockStatus = StockStatusEmun.å·²å
¥åº.ObjToInt(); |
| | | if (Sourcelocation.CurrentQty == 0) Sourcelocation.LocationStatus = LocationStatusEnum.Free.ObjToInt(); |
| | | Dt_Task _Task = BaseDal.QueryFirst(x => x.TaskNum != task.TaskNum && x.TaskType == task.TaskType && x.SourceAddress == Sourcelocation.LocationCode && x.TargetAddress == Targetlocation.LocationCode); |
| | | if (_Task == null) |