| | |
| | | if (string.IsNullOrWhiteSpace(mES_In.endPosition)) return apiResponse.Error("ç®æ ä½ç½®ä¸è½ä¸ºç©º"); |
| | | |
| | | |
| | | Dt_StockInfo dt_Stock=_stockInfoService.Repository.QueryData(x=>x.PalletCode== mES_In.containerNo && x.StockStatus== (int)StockStatusEmun.å·²å
¥åº).FirstOrDefault(); |
| | | Dt_StockInfo dt_Stock=_stockInfoService.Repository.QueryData(x=>x.PalletCode== mES_In.containerNo).FirstOrDefault(); |
| | | if (dt_Stock == null) return apiResponse.Error($"WMSæªè½æ¥æ¾é该æçæ¡ç çåºåè´§ä½ä¿¡æ¯ï¼æ¡ç ï¼{mES_In.containerNo}"); |
| | | |
| | | Dt_LocationInfo dt_LocationInfo = _locationInfoService.Repository.QueryData(x => x.LocationCode == dt_Stock.LocationCode && x.LocationStatus== (int)LocationStatusEnum.InStock).FirstOrDefault(); |
| | | if (dt_LocationInfo == null) return apiResponse.Error($"WMSæªè½æ¥æ¾é该æçæ¡ç çåºåè´§ä½ä¿¡æ¯ï¼æ¡ç ï¼{mES_In.containerNo}ï¼æªæ¾å°è´§ä½å·ï¼{dt_Stock.LocationCode}"); |
| | | if(dt_Stock.StockStatus == (int)StockStatusEmun.å·²å
¥åº) |
| | | { |
| | | Dt_LocationInfo dt_LocationInfo = _locationInfoService.Repository.QueryData(x => x.LocationCode == dt_Stock.LocationCode && x.LocationStatus == (int)LocationStatusEnum.InStock).FirstOrDefault(); |
| | | if (dt_LocationInfo == null) return apiResponse.Error($"WMSæªè½æ¥æ¾é该æçæ¡ç çåºåè´§ä½ä¿¡æ¯ï¼æ¡ç ï¼{mES_In.containerNo}ï¼æªæ¾å°è´§ä½å·ï¼{dt_Stock.LocationCode}"); |
| | | |
| | | Dt_roadwayinfo _Roadwayinfo = _roadWayinfoService.QbtainPlatform(dt_LocationInfo.RoadwayNo); |
| | | Dt_roadwayinfo _Roadwayinfo = _roadWayinfoService.QbtainPlatform(dt_LocationInfo.RoadwayNo); |
| | | |
| | | Dt_Task setask = BaseDal.QueryData(x => x.PalletCode == mES_In.containerNo).FirstOrDefault(); |
| | | if (setask != null) return apiResponse.Error($"WMSå·²æå½åä»»å¡ï¼ä¸å¯éå¤ä¸åï¼æçç¼å·ï¼{mES_In.containerNo}"); |
| | | Dt_Task setask = BaseDal.QueryData(x => x.PalletCode == mES_In.containerNo).FirstOrDefault(); |
| | | if (setask != null) return apiResponse.Error($"WMSå·²æå½åä»»å¡ï¼ä¸å¯éå¤ä¸åï¼æçç¼å·ï¼{mES_In.containerNo}"); |
| | | |
| | | Dt_Task task = new Dt_Task(); |
| | | task.TaskNum = mES_In.transNo; |
| | | task.PalletCode = dt_Stock.PalletCode; |
| | | task.PalletType = dt_Stock.PalletType; |
| | | task.Roadway = dt_LocationInfo.RoadwayNo; |
| | | task.TaskType = (int)TaskTypeEnum.Outbound; |
| | | task.TaskStatus = (int)OutTaskStatusEnum.OutNew; |
| | | task.SourceAddress = dt_LocationInfo.LocationCode; |
| | | task.TargetAddress = mES_In.endPosition; |
| | | task.CurrentAddress = dt_LocationInfo.LocationCode; |
| | | task.NextAddress = _Roadwayinfo.OutSCStationCode; |
| | | task.WarehouseId = dt_LocationInfo.WarehouseId; |
| | | task.OrderNo = mES_In.transDate.ToString(); |
| | | task.Grade = 1; |
| | | task.Creater = "MES"; |
| | | task.CreateDate = DateTime.Now; |
| | | Dt_Task task = new Dt_Task(); |
| | | task.TaskNum = mES_In.transNo; |
| | | task.PalletCode = dt_Stock.PalletCode; |
| | | task.PalletType = dt_Stock.PalletType; |
| | | task.Roadway = dt_LocationInfo.RoadwayNo; |
| | | task.TaskType = (int)TaskTypeEnum.Outbound; |
| | | task.TaskStatus = (int)OutTaskStatusEnum.OutNew; |
| | | task.SourceAddress = dt_LocationInfo.LocationCode; |
| | | task.TargetAddress = mES_In.endPosition; |
| | | task.CurrentAddress = dt_LocationInfo.LocationCode; |
| | | task.NextAddress = _Roadwayinfo.OutSCStationCode; |
| | | task.WarehouseId = dt_LocationInfo.WarehouseId; |
| | | task.OrderNo = mES_In.transDate.ToString(); |
| | | task.Grade = 1; |
| | | task.Creater = "MES"; |
| | | task.CreateDate = DateTime.Now; |
| | | |
| | | dt_Stock.StockStatus = (int)StockStatusEmun.åºåºä¸; |
| | | dt_LocationInfo.LocationStatus = (int)LocationStatusEnum.Lock; |
| | | dt_Stock.StockStatus = (int)StockStatusEmun.åºåºä¸; |
| | | dt_LocationInfo.LocationStatus = (int)LocationStatusEnum.Lock; |
| | | |
| | | _unitOfWorkManage.BeginTran(); |
| | | BaseDal.AddData(task); |
| | | _stockInfoService.Repository.UpdateData(dt_Stock); |
| | | _locationInfoService.Repository.UpdateData(dt_LocationInfo); |
| | | _unitOfWorkManage.CommitTran(); |
| | | _unitOfWorkManage.BeginTran(); |
| | | BaseDal.AddData(task); |
| | | _stockInfoService.Repository.UpdateData(dt_Stock); |
| | | _locationInfoService.Repository.UpdateData(dt_LocationInfo); |
| | | _unitOfWorkManage.CommitTran(); |
| | | |
| | | |
| | | WriteLog.Write_Log("MES_æ¥æ¶MESåºåºä»»å¡ä¸å", $"åºåºä»»å¡æ·»å ", "æå", $"æ·»å æåï¼æçæ¡ç ï¼{dt_Stock.PalletCode}"); |
| | | return apiResponse.OK(); |
| | | WriteLog.Write_Log("MES_æ¥æ¶MESåºåºä»»å¡ä¸å", $"åºåºä»»å¡æ·»å ", "æå", $"æ·»å æåï¼æçæ¡ç ï¼{dt_Stock.PalletCode}"); |
| | | return apiResponse.OK(); |
| | | }else if(dt_Stock.StockStatus == (int)StockStatusEmun.ç§»åºéå®) |
| | | { |
| | | Dt_LocationInfo dt_LocationInfo = _locationInfoService.Repository.QueryData(x => x.LocationCode == dt_Stock.LocationCode && x.LocationStatus == (int)LocationStatusEnum.Lock).FirstOrDefault(); |
| | | if (dt_LocationInfo == null) return apiResponse.Error($"WMSæªè½æ¥æ¾é该æçæ¡ç çåºåè´§ä½ä¿¡æ¯ï¼æ¡ç ï¼{mES_In.containerNo}ï¼æªæ¾å°è´§ä½å·ï¼{dt_Stock.LocationCode}"); |
| | | |
| | | Dt_roadwayinfo _Roadwayinfo = _roadWayinfoService.QbtainPlatform(dt_LocationInfo.RoadwayNo); |
| | | |
| | | Dt_Task task = new Dt_Task(); |
| | | task.TaskNum = mES_In.transNo; |
| | | task.PalletCode = dt_Stock.PalletCode; |
| | | task.PalletType = dt_Stock.PalletType; |
| | | task.Roadway = dt_LocationInfo.RoadwayNo; |
| | | task.TaskType = (int)TaskTypeEnum.Outbound; |
| | | task.TaskStatus = (int)OutTaskStatusEnum.OutWait; |
| | | task.SourceAddress = dt_LocationInfo.LocationCode; |
| | | task.TargetAddress = mES_In.endPosition; |
| | | task.CurrentAddress = dt_LocationInfo.LocationCode; |
| | | task.NextAddress = _Roadwayinfo.OutSCStationCode; |
| | | task.WarehouseId = dt_LocationInfo.WarehouseId; |
| | | task.OrderNo = mES_In.transDate.ToString(); |
| | | task.Grade = 1; |
| | | task.Creater = "MES"; |
| | | task.CreateDate = DateTime.Now; |
| | | |
| | | _unitOfWorkManage.BeginTran(); |
| | | BaseDal.AddData(task); |
| | | _unitOfWorkManage.CommitTran(); |
| | | WriteLog.Write_Log("MES_æ¥æ¶MESåºåºä»»å¡ä¸å", $"åºåºä»»å¡æ·»å ", "æå", $"æ·»å æåï¼æçæ¡ç ï¼{dt_Stock.PalletCode}"); |
| | | return apiResponse.OK(); |
| | | |
| | | } |
| | | else |
| | | { |
| | | WriteLog.Write_Log("MES_æ¥æ¶MESåºåºä»»å¡ä¸å", $"åºåºä»»å¡æ·»å ", $"失败,æçæ¡ç ï¼{dt_Stock.PalletCode}", $"åºåç¶æé误ï¼è¯·æ¥çWMSç³»ç»åºå,åºåç¶æï¼{dt_Stock.StockStatus}"); |
| | | return apiResponse.Error("åºåç¶æé误ï¼è¯·æ¥çWMSç³»ç»åºå"); |
| | | } |
| | | |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |