| | |
| | | private readonly IRepository<dt_errormsgInfo> _errorinfoRepository; |
| | | private readonly Idt_ErrormsginfoService _ErrormsginfoService; |
| | | private readonly IMapper _mapper; |
| | | private readonly IRepository<dt_stationInfo> _dt_stationInfoRepository; |
| | | |
| | | private Dictionary<string, OrderByType> _taskOrderBy = new() |
| | | { |
| | |
| | | IRepository<dt_batchInfo> batchRepository, |
| | | IRepository<Dt_Task_hty> taskhtyRepository, |
| | | IRepository<dt_errormsgInfo> errorinfoRepository, |
| | | IRepository<dt_stationInfo> dt_stationInfoRepository, |
| | | Idt_ErrormsginfoService errormsginfoService, |
| | | IUnitOfWorkManage unitOfWorkManage, |
| | | IMapper mapper) : base(BaseDal) |
| | |
| | | _errorinfoRepository = errorinfoRepository; |
| | | _ErrormsginfoService = errormsginfoService; |
| | | _mapper = mapper; |
| | | _dt_stationInfoRepository = dt_stationInfoRepository; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | throw new Exception(string.Format("天车æ¾è´§å®æä»»å¡æªæ¥è¯¢å°ä»»å¡å·{0}", taskNum)); |
| | | } |
| | | |
| | | |
| | | if (nawtask.TaskType == (int)TaskInboundTypeEnum.Inbound) |
| | | { |
| | | var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "å餿¶"); |
| | | string sourceAddress = station.Row + "-" + station.Column + "-1"; |
| | | if (nawtask.SourceAddress.Equals(sourceAddress)) |
| | | { |
| | | var batck = _batchinfoRepository.QueryFirst(v => v.Id == 1); |
| | | //æ°å»ºåºå |
| | | Dt_StockInfo stock = new Dt_StockInfo(); |
| | | stock.LocationCode = nawtask.TargetAddress; |
| | | stock.Weight = (decimal)weight; |
| | | stock.StockStatus = (int)stockEnum.Free; |
| | | stock.BatchNo = batck.InBatch; |
| | | stock.Remark = 3; |
| | | //ä¿®æ¹è´§ä½ä¿¡æ¯ |
| | | var location = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.TargetAddress); |
| | | location.LocationStatus = (int)LocationStatusEnum.InStock; |
| | | //å¤çä»»å¡ä¿¡æ¯ |
| | | Dt_Task_hty taskhty = new Dt_Task_hty(); |
| | | taskhty.TaskNum = nawtask.TaskNum; |
| | | taskhty.Roadway = nawtask.Roadway; |
| | | taskhty.TaskType = nawtask.TaskType; |
| | | taskhty.TaskState = (int)TaskInStatusEnum.Line_InFinish; |
| | | taskhty.SourceAddress = nawtask.SourceAddress; |
| | | taskhty.TargetAddress = nawtask.TargetAddress; |
| | | taskhty.ExceptionMessage = nawtask.ExceptionMessage; |
| | | taskhty.Grade = nawtask.Grade; |
| | | taskhty.Dispatchertime = nawtask.Dispatchertime; |
| | | taskhty.Remark = nawtask.Remark; |
| | | taskhty.PalletCode = nawtask.PalletCode; |
| | | taskhty.NextAddress = nawtask.NextAddress; |
| | | taskhty.CurrentAddress = nawtask.CurrentAddress; |
| | | |
| | | //å¼å§æ°æ®åºäºå¡ |
| | | _unitOfWorkManage.BeginTran(); |
| | | _stockRepository.AddData(stock); |
| | | _locationRepository.UpdateData(location); |
| | | _taskhtyRepository.AddData(taskhty); |
| | | BaseDal.DeleteData(nawtask); |
| | | //æäº¤äºå¡ |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | else |
| | | { |
| | | var batck = _batchinfoRepository.QueryFirst(v=>v.Id==1); |
| | | //æ°å»ºåºå |
| | |
| | | //æäº¤äºå¡ |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | } |
| | | else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.Outbound) |
| | | { |
| | | var station = _dt_stationInfoRepository.QueryFirst(v => v.msg == "西跨æ¶å"); |
| | | string targetAddress = station.Row + "-" + station.Column + "-1"; |
| | | if (nawtask.TargetAddress.Equals(targetAddress)) |
| | | { |
| | | //æ¥æ¾åºå |
| | | var stock = _stockRepository.QueryFirst(v => v.LocationCode == nawtask.SourceAddress); |
| | | if (stock == null) |
| | | { |
| | | throw new Exception($"æªæ¾å°åºåä¿¡æ¯è´§ä½å·:ã{nawtask.TargetAddress}ã"); |
| | | } |
| | | //ä¿®æ¹è´§ä½ç¶æ |
| | | var location = _locationRepository.QueryFirst(v => v.LocationCode == nawtask.SourceAddress); |
| | | location.LocationStatus = (int)LocationStatusEnum.Free; |
| | | //åå¤åå²ä»»å¡æ°æ® |
| | | Dt_Task_hty taskhty = new Dt_Task_hty(); |
| | | taskhty.TaskNum = nawtask.TaskNum; |
| | | taskhty.Roadway = nawtask.Roadway; |
| | | taskhty.TaskType = nawtask.TaskType; |
| | | taskhty.TaskState = (int)TaskOutStatusEnum.OutFinish; |
| | | taskhty.SourceAddress = nawtask.SourceAddress; |
| | | taskhty.TargetAddress = nawtask.TargetAddress; |
| | | taskhty.ExceptionMessage = nawtask.ExceptionMessage; |
| | | taskhty.Grade = nawtask.Grade; |
| | | taskhty.Dispatchertime = nawtask.Dispatchertime; |
| | | taskhty.Remark = nawtask.Remark; |
| | | taskhty.PalletCode = nawtask.PalletCode; |
| | | taskhty.NextAddress = nawtask.NextAddress; |
| | | taskhty.CurrentAddress = nawtask.CurrentAddress; |
| | | //å¼å§æ°æ®åºäºå¡ |
| | | |
| | | _unitOfWorkManage.BeginTran(); |
| | | _stockRepository.DeleteData(stock); |
| | | _locationRepository.UpdateData(location); |
| | | _taskhtyRepository.AddData(taskhty); |
| | | BaseDal.DeleteData(nawtask); |
| | | //æäº¤äºå¡ |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | else |
| | | { |
| | | //æ¥æ¾åºå |
| | | var stock = _stockRepository.QueryFirst(v=>v.LocationCode== nawtask.SourceAddress); |
| | |
| | | //æäº¤äºå¡ |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | } |
| | | else if (nawtask.TaskType == (int)TaskOutboundTypeEnum.OutInventory || nawtask.TaskType == (int)TaskMoveEnum.Mowe) |
| | | { |
| | | //å¤çä»»å¡ä¿¡æ¯ |