| | |
| | | using WIDESEA_Core.CodeConfigEnum; |
| | | using WIDESEA_Core.Enums; |
| | | using WIDESEA_Core.Helper; |
| | | using WIDESEA_IBasicService; |
| | | using WIDESEA_ICheckService; |
| | | using WIDESEA_IOutboundService; |
| | | using WIDESEA_Model.Models; |
| | |
| | | private readonly IUnitOfWorkManage _unitOfWorkManage; |
| | | private readonly WebSocketServer _webSocketServer; |
| | | private readonly ILogger<ReCheckOrderService> _logger; |
| | | |
| | | private readonly IMaterielInfoService _materielInfoService; |
| | | public readonly IOutboundService _outboundService; |
| | | public IRepository<Dt_ReCheckOrder> Repository => BaseDal; |
| | | public ReCheckOrderService(IRepository<Dt_ReCheckOrder> BaseDal, IUnitOfWorkManage unitOfWorkManage, WebSocketServer webSocketServer, ILogger<ReCheckOrderService> logger, IOutboundService outboundService) : base(BaseDal) |
| | | public ReCheckOrderService(IRepository<Dt_ReCheckOrder> BaseDal, IUnitOfWorkManage unitOfWorkManage, WebSocketServer webSocketServer, ILogger<ReCheckOrderService> logger, IOutboundService outboundService, IMaterielInfoService materielInfoService) : base(BaseDal) |
| | | { |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | | _webSocketServer = webSocketServer; |
| | | _logger = logger; |
| | | _outboundService = outboundService; |
| | | _materielInfoService = materielInfoService; |
| | | } |
| | | |
| | | public async Task<WebResponseContent> ReceiveReCheckOrder(Dt_ReCheckOrder models, int operateType) |
| | |
| | | return operateType switch |
| | | { |
| | | 1 =>await AddReCheckOrder(models), |
| | | 2 => UpdateReCheckOrder(models), |
| | | 2 =>await UpdateReCheckOrder(models), |
| | | 3 => DeleteReCheckOrder(models), |
| | | |
| | | _ => WebResponseContent.Instance.OK(), |
| | |
| | | |
| | | if (BaseDal.QueryFirst(x => x.OrderNo == model.OrderNo) != null) |
| | | { |
| | | return WebResponseContent.Instance.Error($"鍗曞彿閲嶅"); |
| | | return WebResponseContent.Instance.Error($"{model.OrderNo}鍗曞彿閲嶅"); |
| | | } |
| | | |
| | | var materielInfo = _materielInfoService.Db.Queryable<Dt_MaterielInfo>().First(x => model.MaterielCode.Equals(x.MaterielCode)); |
| | | |
| | | model.Creater = "MES"; |
| | | model.CreateDate = DateTime.Now; |
| | | model.MaterielName = materielInfo?.MaterielName ?? ""; |
| | | BaseDal.AddData(model); |
| | | var outboundOrders = ConvertToOutboundOrders(model); |
| | | |
| | |
| | | { |
| | | return WebResponseContent.Instance.Error($"鏈壘鍒板崟淇℃伅"); |
| | | } |
| | | var isupdate = false; |
| | | if (recheckOrder.SignSeq == model.SignSeq) |
| | | { |
| | | isupdate = true; |
| | | } |
| | | recheckOrder.OrderNo = model.OrderNo; |
| | | recheckOrder.MaterielCode = model.MaterielCode; |
| | | recheckOrder.BatchNo = model.BatchNo; |
| | |
| | | recheckOrder.FactoryArea = model.FactoryArea; |
| | | recheckOrder.Modifier = "MES"; |
| | | recheckOrder.ModifyDate = DateTime.Now; |
| | | |
| | | var materielInfo = _materielInfoService.Db.Queryable<Dt_MaterielInfo>().First(x => model.MaterielCode.Equals(x.MaterielCode)); |
| | | recheckOrder.MaterielName= materielInfo?.MaterielName??""; |
| | | BaseDal.UpdateData(recheckOrder); |
| | | |
| | | _outboundService.OutboundOrderService.Db.Deleteable<Dt_OutboundOrder>().Where(x => x.OrderNo == model.OrderNo).ExecuteCommand(); |
| | | _outboundService.OutboundOrderDetailService.Db.Deleteable<Dt_OutboundOrderDetail>() |
| | | .Where(p => SqlFunc.Subqueryable<Dt_OutboundOrder>().Where(s => s.Id == p.OrderId && s.OrderNo == model.OrderNo).Any()).ExecuteCommand(); |
| | | if (isupdate) |
| | | { |
| | | _outboundService.OutboundOrderService.Db.Deleteable<Dt_OutboundOrder>().Where(x => x.OrderNo == model.OrderNo).ExecuteCommand(); |
| | | _outboundService.OutboundOrderDetailService.Db.Deleteable<Dt_OutboundOrderDetail>() |
| | | .Where(p => SqlFunc.Subqueryable<Dt_OutboundOrder>().Where(s => s.Id == p.OrderId && s.OrderNo == model.OrderNo).Any()).ExecuteCommand(); |
| | | |
| | | var outboundOrders = ConvertToOutboundOrders(model); |
| | | |
| | | await _outboundService.OutboundOrderService.ReceiveOutboundOrder(outboundOrders, 1); |
| | | |
| | | var outboundOrders = ConvertToOutboundOrders(model); |
| | | await _outboundService.OutboundOrderService.ReceiveOutboundOrder(outboundOrders, 1); |
| | | } |
| | | return WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |