| | |
| | | using OfficeOpenXml.FormulaParsing.Excel.Functions.Text; |
| | | using Org.BouncyCastle.Asn1.Tsp; |
| | | using Spire.Pdf; |
| | | using Spire.Pdf; |
| | | using SqlSugar; |
| | | using System; |
| | | using System; |
| | | using System; |
| | | using System; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System.Diagnostics; |
| | | using System.Diagnostics.CodeAnalysis; |
| | | using System.Drawing.Printing; |
| | | using System.Drawing.Printing; |
| | | using System.IO; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Net.Http; |
| | | using System.Net.Http; |
| | | using System.Reflection; |
| | | using System.Reflection.Metadata; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using System.Threading.Tasks; |
| | | using System.Threading.Tasks; |
| | | using WIDESEA_BasicRepository; |
| | | using WIDESEA_Common; |
| | | using WIDESEA_Common.Log; |
| | | using WIDESEA_Common.Log; |
| | | using WIDESEA_Common.OrderEnum; |
| | | using WIDESEA_Common.TaskEnum; |
| | |
| | | using WIDESEA_Core.TaskEnum; |
| | | using WIDESEA_DTO.Basic; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_DTO.Inbound; |
| | | using WIDESEA_DTO.Stock; |
| | | using WIDESEA_DTO.Task; |
| | |
| | | using WIDESEA_IInboundRepository; |
| | | using WIDESEA_IInboundService; |
| | | using WIDESEA_InboundRepository; |
| | | using WIDESEA_InboundRepository; |
| | | using WIDESEA_IOutboundRepository; |
| | | using WIDESEA_IOutboundService; |
| | | using WIDESEA_IRecordService; |
| | |
| | | using WIDESEA_IStockService; |
| | | using WIDESEA_ITaskInfoRepository; |
| | | using WIDESEA_ITaskInfoService; |
| | | using WIDESEA_Model; |
| | | using WIDESEA_Model.Models; |
| | | using WIDESEA_Model.Models.Inbound; |
| | | using WIDESEA_OutboundRepository; |
| | | using WIDESEA_OutboundRepository; |
| | | using WIDESEA_StockRepository; |
| | | using WIDESEA_TaskInfoRepository; |
| | |
| | | using static WIDESEA_Common.HouseBackboundPassBack; |
| | | using static WIDESEA_Common.HouseInboundPassBack; |
| | | using static WIDESEA_Common.HouseInboundPassBack.data.data1; |
| | | using static WIDESEA_Common.HouseInboundPassBack.data.data1; |
| | | using static WIDESEA_Common.HouseoutboundPassBack; |
| | | using static WIDESEA_Common.InventoryAllocate; |
| | | using static WIDESEA_Common.NewHouseInboundPassBack; |
| | | using static WIDESEA_Common.NewHouseInboundPassBack.Parame.Syncretism; |
| | | using static WIDESEA_ITaskInfoService.ITaskService; |
| | | using Parameter = WIDESEA_Common.Parameter; |
| | | using WIDESEA_DTO.ERP; |
| | | using WIDESEA_OutboundRepository; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System; |
| | | using System.IO; |
| | | using System.Net.Http; |
| | | using System.Threading.Tasks; |
| | | using Spire.Pdf; |
| | | using WIDESEA_InboundRepository; |
| | | using System.Drawing.Printing; |
| | | using System; |
| | | using WIDESEA_Common.Log; |
| | | using static WIDESEA_Common.HouseInboundPassBack.data.data1; |
| | | using System.Diagnostics; |
| | | |
| | | namespace WIDESEA_TaskInfoService |
| | | { |
| | |
| | | |
| | | private void AddRetrueOrder(Dt_Task task,Dt_StockInfo stockInfo, Dt_OutboundOrder outboundOrder) |
| | | { |
| | | Dt_StockInfoDetail stockInfoDetail = _stockService.StockInfoDetailService.Db.Queryable<Dt_StockInfoDetail>() |
| | | .Where(x => x.StockId == stockInfo.Id).First(); |
| | | if (stockInfoDetail == null) |
| | | List<Dt_StockInfoDetail> stockInfoDetails = _stockService.StockInfoDetailService.Db.Queryable<Dt_StockInfoDetail>() |
| | | .Where(x => x.StockId == stockInfo.Id).ToList(); |
| | | if (stockInfoDetails == null || stockInfoDetails.Count == 0) |
| | | { |
| | | throw new Exception("建立回库单时,未找到该库存信息"); |
| | | } |
| | | Dt_ReturnOrder? lastReturnOrder = null; |
| | | foreach (var stockInfoDetail in stockInfoDetails) |
| | | { |
| | | if (outboundOrder.OrderType == OrderTypeEnum.反拣出库单.ObjToInt()) |
| | | { |
| | | Dt_ReturnOrder returnOrder = _returnOrderRepository.QueryFirst(x => x.LPNNo == stockInfo.PalletCode && x.LocationCode == stockInfo.LocationCode && x.OrderStatus == InOrderStatusEnum.未开始.ObjToInt()); |
| | |
| | | } |
| | | WriteLog.Write_Log("API", "出库—请求LED", "请求成功", new { 请求报文 = 4 }); |
| | | |
| | | decimal returnQuantity = stockInfoDetail.StockQuantity - stockInfoDetail.OutboundQuantity; |
| | | if (returnQuantity > 0) |
| | | bool allowCompeted = stockInfo.Details.All(x => x.StockQuantity == x.OutboundQuantity); |
| | | if (allowCompeted) |
| | | { |
| | | DeleteAndMoveIntoHtStockStatus(stockInfo); |
| | | |
| | | } |
| | | else |
| | | { |
| | | decimal returnQuantity = stockInfoDetail.StockQuantity - stockInfoDetail.OutboundQuantity; |
| | | Dt_ReturnOrder returnOrder = new Dt_ReturnOrder |
| | | { |
| | | MaterielCode = stockInfoDetail.MaterielCode, |
| | |
| | | OrderType = OrderTypeEnum.余料回库单.ObjToInt(), |
| | | System = "WMS" |
| | | }; |
| | | if(lastReturnOrder != null) |
| | | { |
| | | lastReturnOrder.Remark = lastReturnOrder.Remark + $",{returnOrder.BatchNo}"; |
| | | _returnOrderRepository.UpdateData(lastReturnOrder); |
| | | } |
| | | if (outboundOrder.System == "SMOM" && stockInfo.LocationCode != null) |
| | | { |
| | | returnOrder.LocationCode = stockInfo.LocationCode; |
| | | } |
| | | _unitOfWorkManage.BeginTran(); |
| | | if(lastReturnOrder == null) |
| | | { |
| | | _returnOrderRepository.AddData(returnOrder); |
| | | lastReturnOrder = returnOrder; |
| | | } |
| | | stockInfo.LocationCode = ""; |
| | | stockInfo.StockStatus = StockStatusEmun.余料退库.ObjToInt(); |
| | | stockInfo.Remark = "余料退库"; |
| | | stockInfoDetail.OutboundQuantity = 0; |
| | | stockInfoDetail.StockQuantity = returnQuantity; |
| | | stockInfoDetail.OrderNo = returnOrder.OrderNo; |
| | | stockInfoDetail.OrderNo = lastReturnOrder.OrderNo; |
| | | _stockService.StockInfoService.Repository.UpdateData(stockInfo); |
| | | _stockService.StockInfoDetailService.Repository.UpdateData(stockInfoDetail); |
| | | _unitOfWorkManage.CommitTran(); |
| | | } |
| | | else |
| | | { |
| | | DeleteAndMoveIntoHtStockStatus(stockInfo); |
| | | } |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | //低温、药水回库单 |