| | |
| | | } |
| | | |
| | | |
| | | //ç®æ è´§ä½æ¥æ¾åºä½æ¯å¦æè´§ |
| | | Dt_StockInfo dt_StockCurren = _stockService.StockInfoService.Repository.QueryFirst(x => x.LocationCode == newLocation.LocationCode); |
| | | if (dt_StockCurren != null) return content = WebResponseContent.Instance.Error($"å
¥åºå¤±è´¥ï¼æçæ¡ç ï¼{dt_StockInfo.PalletCode}ï¼æ¥æ¾åºçè´§ä½ä¿¡æ¯å¯¹åºå·²æåºå"); |
| | | |
| | | Dt_Task taskcurren = BaseDal.QueryFirst(x => x.TargetAddress == newLocation.LocationCode); |
| | | if (taskcurren != null) return content = WebResponseContent.Instance.Error($"å
¥åºå¤±è´¥ï¼æçæ¡ç ï¼{dt_StockInfo.PalletCode}ï¼æ¥æ¾åºçè´§ä½ä¿¡æ¯å·²æå
¥åºä»»å¡"); |
| | | |
| | | bool crutaskthy = _taskHtyService.CrueeTaskHty(newLocation.LocationCode); |
| | | if (crutaskthy) return content = WebResponseContent.Instance.Error($"å
¥åºå¤±è´¥ï¼æçæ¡ç ï¼{dt_StockInfo.PalletCode}ï¼æ¥æ¾åºçè´§ä½å¨ä»»å¡åå²ä¿¡æ¯ä¸ï¼æå
¥åºæç§»åºä¿¡æ¯"); |
| | | |
| | | |
| | | if (newLocation != null) |
| | | { |
| | | Dt_Task dt_Task = new() |
| | |
| | | loca.Add(newLocation); |
| | | loca.Add(locationInfos); |
| | | _basicService.LocationInfoService.UpdateData(loca); |
| | | BaseDal.AddData(dt_Task); |
| | | _unitOfWorkManage.CommitTran(); |
| | | return content = WebResponseContent.Instance.OK(data: dt_Task); |
| | | } |
| | |
| | | for (int i = 0; i < saveModel.DelKeys.Count; i++) |
| | | { |
| | | Dt_StockInfo stockt = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == saveModel.DelKeys[i].ToString()); |
| | | if (stockt.StockStatus == (int)StockStatusEmun.å·²å
¥åº && (stockt.Wlstatus == (int)InventoryMaterialStatus.åæ ¼ || stockt.Wlstatus == (int)InventoryMaterialStatus.è¿å·¥)) |
| | | if (stockt.StockStatus == (int)StockStatusEmun.å·²å
¥åº && (stockt.Wlstatus == (int)InventoryMaterialStatus.åæ ¼ || stockt.Wlstatus == (int)InventoryMaterialStatus.è¿å·¥ || stockt.Wlstatus == (int)InventoryMaterialStatus.ç¹é) ) |
| | | { |
| | | if(stockt.MaterialType != (int)InventoryMaterialType.åææ) |
| | | { |
| | |
| | | } |
| | | else |
| | | { |
| | | return content = WebResponseContent.Instance.Error($"åºåºå¤±è´¥ï¼è¯·éæ©å·²å
¥åºä¸åæ ¼çç©æåºåºï¼ï¼ï¼ï¼åºåºæ¡ç ï¼{saveModel.DelKeys[i].ToString()}"); |
| | | return content = WebResponseContent.Instance.Error($"åºåºå¤±è´¥ï¼è¯·éæ©å·²å
¥åºä¸ï¼åæ ¼ï¼è¿å·¥ï¼ç¹éï¼çç©æåºåºï¼ï¼ï¼ï¼åºåºæ¡ç ï¼{saveModel.DelKeys[i].ToString()}"); |
| | | } |
| | | |
| | | } |
| | |
| | | { |
| | | Dt_StockInfoDetail stocktdetail = _stockService.StockInfoDetailService.Repository.QueryFirst(x => x.StockId == stockt.Id); |
| | | Dt_LocationInfo locationinfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == stockt.LocationCode); |
| | | Dt_Task_Hty task_Hty = new Dt_Task_Hty() |
| | | { |
| | | TaskNum = 001, |
| | | PalletCode = stockt.PalletCode, |
| | | Roadway = locationinfo.RoadwayNo, |
| | | TaskType = (int)TaskTypeEnum.Outbound, |
| | | TaskStatus = (int)OutTaskStatusEnum.OutFinish, |
| | | SourceAddress = locationinfo.LocationCode, |
| | | TargetAddress = locationinfo.LocationCode, |
| | | CurrentAddress = locationinfo.LocationCode, |
| | | NextAddress = locationinfo.LocationCode, |
| | | Grade = 1, |
| | | Dispatchertime = DateTime.Now, |
| | | Creater = App.User.UserName, |
| | | CreateDate = DateTime.Now, |
| | | ModifyDate = DateTime.Now, |
| | | Modifier = App.User.UserName, |
| | | Remark = "人工åºåº", |
| | | PLCTo = 1, |
| | | PalletCodequantity = 1, |
| | | MaterialType = 1 |
| | | }; |
| | | _taskHtyService.AddData(task_Hty); |
| | | locationinfo.LocationStatus = LocationStatusEnum.Free.ObjToInt(); |
| | | dtstockt.Add(stockt); |
| | | locations.Add(locationinfo); |
| | | if (stockt.MaterialType == (int)InventoryMaterialType.空æ) |
| | | if (stockt.MaterialType != (int)InventoryMaterialType.空æ) |
| | | { |
| | | dtstocktdetail.Add(stocktdetail); |
| | | } |
| | |
| | | } |
| | | _unitOfWorkManage.BeginTran(); |
| | | _stockService.StockInfoService.Repository.DeleteData(dtstockt); |
| | | if(dtstocktdetail.Count==0) |
| | | { |
| | | _stockService.StockInfoDetailService.Repository.DeleteData(dtstocktdetail); |
| | | } |
| | | _stockService.StockInfoDetailService.Repository.DeleteData(dtstocktdetail); |
| | | _basicService.LocationInfoService.Repository.UpdateData(locations); |
| | | _unitOfWorkManage.CommitTran(); |
| | | content = WebResponseContent.Instance.OK(); |
| | |
| | | BaseDal.DeleteData(task); |
| | | BaseDal.DeleteAndMoveIntoHty(task, OperateType.人工å é¤); |
| | | WriteLog.GetLog("任塿¥å¿").Write($"åºåºä»»å¡åæ¶æåï¼æçæ¡ç ï¼{task.PalletCode}", $"ä»»å¡åæ¶"); |
| | | WebResponseContent webResponseContent = HttpHelper.Post<WebResponseContent>(ReceiveWCSTask, task.TaskNum, "ä»»å¡å é¤"); |
| | | return content = WebResponseContent.Instance.Error($"åºåºä»»å¡åæ¶æå"); |
| | | |
| | | } |
| | |
| | | BaseDal.DeleteData(task); |
| | | BaseDal.DeleteAndMoveIntoHty(task, OperateType.人工å é¤); |
| | | WriteLog.GetLog("任塿¥å¿").Write($"å
¥åºä»»å¡åæ¶æåï¼æçæ¡ç ï¼{task.PalletCode}", $"ä»»å¡åæ¶"); |
| | | WebResponseContent webResponseContent = HttpHelper.Post<WebResponseContent>(ReceiveWCSTask, task.TaskNum, "ä»»å¡å é¤"); |
| | | return content = WebResponseContent.Instance.Error($"å
¥åºä»»å¡åæ¶æå"); |
| | | } |
| | | else if (task.TaskType == (int)TaskTypeEnum.RelocationIn) //åºå
ç§»åº |
| | | { |
| | | //å¤çåºåºçé»è¾ |
| | | Dt_LocationInfo locationinfo = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.TargetAddress); |
| | | if (locationinfo.LocationStatus == LocationStatusEnum.Lock.ObjToInt() || locationinfo.LocationStatus == LocationStatusEnum.PalletLock.ObjToInt()) |
| | | { |
| | | locationinfo.LocationStatus = LocationStatusEnum.Free.ObjToInt(); |
| | | } |
| | | _basicService.LocationInfoService.Repository.UpdateData(locationinfo); |
| | | |
| | | Dt_LocationInfo locationinfo2 = _basicService.LocationInfoService.Repository.QueryFirst(x => x.LocationCode == task.SourceAddress); |
| | | if (locationinfo2.LocationStatus == LocationStatusEnum.Lock.ObjToInt()) |
| | | { |
| | | locationinfo2.LocationStatus = LocationStatusEnum.InStock.ObjToInt(); |
| | | } |
| | | if (locationinfo2.LocationStatus == LocationStatusEnum.PalletLock.ObjToInt()) |
| | | { |
| | | locationinfo2.LocationStatus = LocationStatusEnum.Pallet.ObjToInt(); |
| | | } |
| | | _basicService.LocationInfoService.Repository.UpdateData(locationinfo2); |
| | | Dt_StockInfo stockInfo = _stockService.StockInfoService.Repository.QueryFirst(x => x.PalletCode == task.PalletCode); |
| | | stockInfo.StockStatus = (int)StockStatusEmun.å·²å
¥åº; |
| | | _stockService.StockInfoService.Repository.UpdateData(stockInfo); |
| | | Dt_StockInfoDetail stocktdetail = _stockService.StockInfoDetailService.Repository.QueryFirst(x => x.StockId == stockInfo.Id); |
| | | if (stocktdetail != null) |
| | | { |
| | | stocktdetail.Status = (int)StockStatusEmun.å·²å
¥åº; |
| | | _stockService.StockInfoDetailService.Repository.UpdateData(stocktdetail); |
| | | } |
| | | BaseDal.DeleteData(task); |
| | | BaseDal.DeleteAndMoveIntoHty(task, OperateType.人工å é¤); |
| | | WriteLog.GetLog("任塿¥å¿").Write($"å
¥åºä»»å¡åæ¶æåï¼æçæ¡ç ï¼{task.PalletCode}", $"ä»»å¡åæ¶"); |
| | | WebResponseContent webResponseContent = HttpHelper.Post<WebResponseContent>(ReceiveWCSTask, task.TaskNum, "ä»»å¡å é¤"); |
| | | return content = WebResponseContent.Instance.Error($"å
¥åºä»»å¡åæ¶æå"); |
| | | } |
| | | else |