| | |
| | | private readonly IOutboundOrder_HtyService _outboundOrder_HtyService; |
| | | private readonly IOutboundOrderDetail_HtyService _outboundOrderDetail_HtyService; |
| | | private readonly IOutboundOrderDetailService _outboundOrderDetailService; |
| | | private readonly INewOutboundOrderDetailService _newOutboundOrderDetailService; |
| | | private readonly INewOutboundOrderService _newOutboundOrderService; |
| | | //private readonly ITaskService _taskService; |
| | | |
| | | public IOutboundOrderRepository Repository => BaseDal; |
| | | |
| | | public OutboundOrderService(IOutboundOrderRepository BaseDal, IMapper mapper, IMaterielInfoService materielInfoService, IUnitOfWorkManage unitOfWorkManage, IOutboundOrderDetailService outboundOrderDetailService, IOutboundOrder_HtyService outboundOrder_HtyService, IOutboundOrderDetail_HtyService outboundOrderDetail_HtyService, IStockInfoDetailService stockDetailService, IStockInfoService stockInfoService) : base(BaseDal) |
| | | public OutboundOrderService(IOutboundOrderRepository BaseDal, IMapper mapper, IMaterielInfoService materielInfoService, IUnitOfWorkManage unitOfWorkManage, IOutboundOrderDetailService outboundOrderDetailService, IOutboundOrder_HtyService outboundOrder_HtyService, IOutboundOrderDetail_HtyService outboundOrderDetail_HtyService, IStockInfoDetailService stockDetailService, IStockInfoService stockInfoService, INewOutboundOrderDetailService newOutboundOrderDetailService, INewOutboundOrderService newOutboundOrderService) : base(BaseDal) |
| | | { |
| | | _mapper = mapper; |
| | | _unitOfWorkManage = unitOfWorkManage; |
| | |
| | | _outboundOrder_HtyService = outboundOrder_HtyService; |
| | | _outboundOrderDetail_HtyService = outboundOrderDetail_HtyService; |
| | | _outboundOrderDetailService = outboundOrderDetailService; |
| | | _newOutboundOrderDetailService = newOutboundOrderDetailService; |
| | | _newOutboundOrderService = newOutboundOrderService; |
| | | //_taskService = taskService; |
| | | } |
| | | |
| | |
| | | OutboundOrderAddDTO orderAddDTO1 = new OutboundOrderAddDTO(); |
| | | orderAddDTO1.OrderNo = houseCancelOut.No; |
| | | orderAddDTO1.Details = houseCancelOut.DetailList.DicToIEnumerable<OutboundOrderDetailAddDTO>(); |
| | | Dt_OutboundOrder oldOutboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderNo == orderAddDTO1.OrderNo).Includes(x => x.Details).First(); |
| | | Dt_OutboundOrderDetail OutboundOrderDetail = BaseDal.Db.Queryable<Dt_OutboundOrderDetail>().Where(x => x.OrderId == oldOutboundOrder.Id).First(); |
| | | Dt_OutboundOrder? oldOutboundOrder = BaseDal.Db.Queryable<Dt_OutboundOrder>().Where(x => x.OrderNo == orderAddDTO1.OrderNo).Includes(x => x.Details).First(); |
| | | if (oldOutboundOrder == null) |
| | | { |
| | | return WebResponseContent.Instance.Error("未找到此出库单据"); |
| | | } |
| | | if (oldOutboundOrder.OrderStatus == OutboundStatusEnum.出库完成.ObjToInt()) |
| | | if (oldOutboundOrder != null) |
| | | { |
| | | return WebResponseContent.Instance.OK(); |
| | | Dt_OutboundOrderDetail OutboundOrderDetail = BaseDal.Db.Queryable<Dt_OutboundOrderDetail>().Where(x => x.OrderId == oldOutboundOrder.Id).First(); |
| | | |
| | | if (oldOutboundOrder.OrderStatus > OutOrderStatusEnum.未开始.ObjToInt()) |
| | | { |
| | | return WebResponseContent.Instance.Error("此单据已开始执行,不允许取消"); |
| | | } |
| | | oldOutboundOrder.OrderStatus = InboundStatusEnum.取消.ObjToInt(); |
| | | oldOutboundOrder.OrderStatus = OutboundStatusEnum.取消.ObjToInt(); |
| | | BaseDal.UpdateData(oldOutboundOrder); |
| | | |
| | | Dt_OutboundOrder_Hty inboundOrder_Hty = new Dt_OutboundOrder_Hty |
| | |
| | | _outboundOrderDetailService.DeleteData(item); |
| | | } |
| | | BaseDal.DeleteData(oldOutboundOrder); |
| | | } |
| | | Dt_NewOutboundOrder dt_NewOutboundOrder = BaseDal.Db.Queryable<Dt_NewOutboundOrder>().Where(x => x.OrderNo == orderAddDTO1.OrderNo).Includes(x => x.Details).First(); |
| | | if (dt_NewOutboundOrder == null) |
| | | { |
| | | return WebResponseContent.Instance.Error("未找到此出库单据"); |
| | | } |
| | | if (dt_NewOutboundOrder != null) |
| | | { |
| | | |
| | | if (dt_NewOutboundOrder.OrderStatus > OutOrderStatusEnum.未开始.ObjToInt()) |
| | | { |
| | | return WebResponseContent.Instance.Error("此单据已开始执行,不允许取消"); |
| | | } |
| | | List<Dt_NewOutboundOrderDetail> newOutboundOrderDetail = BaseDal.Db.Queryable<Dt_NewOutboundOrderDetail>().Where(x => x.OrderId == dt_NewOutboundOrder.Id).ToList(); |
| | | dt_NewOutboundOrder.OrderStatus = OutboundStatusEnum.取消.ObjToInt(); |
| | | foreach (var item in newOutboundOrderDetail) |
| | | { |
| | | item.OrderDetailStatus = OutboundStatusEnum.取消.ObjToInt(); |
| | | } |
| | | _newOutboundOrderService.UpdateData(dt_NewOutboundOrder); |
| | | _newOutboundOrderDetailService.UpdateData(newOutboundOrderDetail); |
| | | } |
| | | content = WebResponseContent.Instance.OK(); |
| | | } |
| | | catch (Exception ex) |