| | |
| | | else |
| | | { |
| | | stockInfo.StockStatus = (int)StockStatusEmun.ç´æ¥åºåº; |
| | | stockInfo.LocationCode = "2-52-1"; |
| | | |
| | | task.SourceAddress = "1-52-1"; |
| | | task.TargetAddress = locations.LocationCode; |
| | | task.SourceAddress = "2-52-1"; |
| | | task.TargetAddress = "1-52-1"; |
| | | task.Roadway = "SC01"; |
| | | task.Grade = 1; |
| | | task.TaskType = (int)TaskTypeEnum.OutDirect; |
| | | task.TaskState = (int)TaskStatusEnum.InNew; |
| | | task.TaskState = (int)TaskStatusEnum.OutNew; |
| | | task.TaskNum = TaskNum(DateTime.Now.ToString("mmss").ObjToInt()); |
| | | } |
| | | |
| | |
| | | |
| | | //ä¿®æ¹å
¥åºæ¨¡å¼ |
| | | Dt_Outstockinfo outstockinfo = _IOutstockinfoService.QueryFirst(x => x.Id == 1); |
| | | outstockinfo.OutMode = 0; |
| | | outstockinfo.OutMode = 1; |
| | | |
| | | //å¼å§æ°æ®åºäºå¡ |
| | | _unitOfWorkManage.BeginTran(); |
| | |
| | | Dt_Task tasks = BaseDal.QueryFirst(x => x.Remark == task.Remark); |
| | | if (tasks == null) |
| | | { |
| | | Dt_OutboundOrder OutboundOrder = _OutboundOrderRepository.QueryFirst(x=>x.MaterielName == stock.MaterielName && x.BoundOrderCode == task.Remark); |
| | | Dt_OutboundOrder OutboundOrder = _OutboundOrderRepository.QueryFirst(x=>x.MaterielName == stock.MaterielName && x.Id == int.Parse(task.Remark)); |
| | | //çæåå²è®¢å |
| | | Dt_OutboundOrder_Hty OutboundOrder_Hty = new Dt_OutboundOrder_Hty(); |
| | | OutboundOrder_Hty.MaterielName = OutboundOrder.MaterielName; |
| | |
| | | LocationInfo = _LocationInfoRepository.QueryData(x => x.Remark == Types && x.LocationStatus == (int)LocationStatusEnum.EmptyBarrel).Take(Num).ToList(); |
| | | if (LocationInfo.Count() == Num) |
| | | { |
| | | string StationName = "满桶åº"; |
| | | string StationName = "空桶åº"; |
| | | string StationNames = SelectStationManger(StationName); |
| | | int i = 1; |
| | | foreach (var item in LocationInfo) |
| | | { |
| | | item.LocationStatus = (int)LocationStatusEnum.Lock; |
| | | |
| | | i++; |
| | | //åå»ºä»»å¡ |
| | | Dt_Task task = new Dt_Task(); |
| | | task.SourceAddress = item.LocationCode; |
| | |
| | | task.Grade = 1; |
| | | task.TaskType = (int)TaskTypeEnum.OutEmpty; |
| | | task.TaskState = (int)TaskStatusEnum.OutNew; |
| | | task.TaskNum = TaskNum(DateTime.Now.ToString("mmss").ObjToInt()); |
| | | task.TaskNum = TaskNum(DateTime.Now.ToString("mmss").ObjToInt()+i); |
| | | tasks.Add(task); |
| | | } |
| | | } |
| | |
| | | { |
| | | //ä¿®æ¹å
¥åºæ¨¡å¼ |
| | | Dt_Outstockinfo outstockinfo = _IOutstockinfoService.QueryFirst(x => x.Id == 1); |
| | | outstockinfo.OutMode = 1; |
| | | outstockinfo.OutMode = 0; |
| | | OutboundOrder.BoundOrderStatue = (int)OutboundOrderEnum.Execute; |
| | | |
| | | //å¼å§æ°æ®åºäºå¡ |
| | |
| | | //å
¶ä»æ£å¸¸åºåº |
| | | else |
| | | { |
| | | content = ArtificialTask(OutboundOrder.num, OutboundOrder.MaterielName, OutboundOrder.BoundOrderCode); |
| | | if (content.Message == null || content.Message.Equals("")) |
| | | //æå®ä½ç½® |
| | | if (OutboundOrder.Location != null && !OutboundOrder.Location.Equals("")) |
| | | { |
| | | OutboundOrder.BoundOrderStatue = (int)OutboundOrderEnum.Execute; |
| | | _OutboundOrderRepository.UpdateData(OutboundOrder); |
| | | //è·åå
¨é¨å½å订å |
| | | List<Dt_OutboundOrder> OutboundOrders = _OutboundOrderRepository.QueryData(x => x.BoundOrderCode == OutboundOrder.BoundOrderCode); |
| | | List<Dt_StockInfo> StockInfos = new List<Dt_StockInfo>(); |
| | | List<Dt_Task> tasks = new List<Dt_Task>(); |
| | | List<Dt_LocationInfo> LocationInfos = new List<Dt_LocationInfo>(); |
| | | foreach (var itme in OutboundOrders) |
| | | { |
| | | //éå®åºå |
| | | Dt_StockInfo StockInfo = _StockInfoRepository.QueryFirst(x=>x.LocationCode == itme.Location); |
| | | StockInfo.StockStatus = (int)StockStatusEmun.åºåºéå®; |
| | | //éå®åºä½ |
| | | Dt_LocationInfo LocationInfo = _LocationInfoRepository.QueryFirst(x => x.LocationCode == StockInfo.LocationCode); |
| | | LocationInfo.LocationStatus = (int)LocationStatusEnum.Lock; |
| | | //åå»ºä»»å¡ |
| | | string StationName = "满桶åº"; |
| | | string StationNames = SelectStationManger(StationName); |
| | | Dt_Task task = new Dt_Task(); |
| | | task.SourceAddress = StockInfo.LocationCode; |
| | | task.TargetAddress = StationNames; |
| | | task.Roadway = "SC01"; |
| | | task.Grade = 1; |
| | | task.TaskType = (int)TaskTypeEnum.Outfull; |
| | | task.TaskState = (int)TaskStatusEnum.OutNew; |
| | | task.TaskNum = TaskNum(DateTime.Now.ToString("mmss").ObjToInt()); |
| | | task.Remark = itme.Id+""; |
| | | |
| | | StockInfos.Add(StockInfo); |
| | | tasks.Add(task); |
| | | LocationInfos.Add(LocationInfo); |
| | | } |
| | | //å¼å§æ°æ®åºäºå¡ |
| | | _unitOfWorkManage.BeginTran(); |
| | | _LocationInfoRepository.UpdateData(LocationInfos); |
| | | _StockInfoRepository.UpdateData(StockInfos); |
| | | BaseDal.AddData(tasks); |
| | | //åéç»WCS |
| | | string address = AppSettings.Get("WCS"); |
| | | if (!string.IsNullOrEmpty(address)) |
| | | { |
| | | HttpHelper.Post($"{address}/api/Task/WMSaddListTask/", tasks.Serialize()); |
| | | } |
| | | //æäº¤äºå¡ |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | //èªå¨åé
|
| | | else |
| | | { |
| | | content = ArtificialTask(OutboundOrder.num, OutboundOrder.MaterielName, OutboundOrder.Id+""); |
| | | if (content.Message == null || content.Message.Equals("")) |
| | | { |
| | | OutboundOrder.BoundOrderStatue = (int)OutboundOrderEnum.Execute; |
| | | _OutboundOrderRepository.UpdateData(OutboundOrder); |
| | | } |
| | | } |
| | | } |
| | | return content.Message; |