Browse Source

更新

dev_DY_CC
赵新宇 7 months ago
parent
commit
4ce81ee827
  1. 104
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedIssueJobs/UnplannedIssueJobAppService.cs
  2. 29
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedIssueRequests/UnplannedIssueRequestForDongyangAppService.cs
  3. 1
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/UnplannedIssueJobs/UnplannedIssueJobManager.cs

104
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/UnplannedIssueJobs/UnplannedIssueJobAppService.cs

@ -40,7 +40,7 @@ public class UnplannedIssueJobAppService
public UnplannedIssueJobAppService(
IUnplannedIssueJobRepository repository, IUnplannedIssueJobManager unplannedIssueJobManager, ILocationAppService locationAppService, IBalanceAppService balanceAppService, IExpectOutAppService expectOutAppService
) : base(repository, unplannedIssueJobManager)
) : base(repository, unplannedIssueJobManager )
{
_unplannedIssueJobManager = unplannedIssueJobManager;
_locationAppService = locationAppService;
@ -96,57 +96,7 @@ public class UnplannedIssueJobAppService
/// <summary>
/// 根据储位推荐
/// </summary>
/// <returns></returns>
//[HttpPost("add-detail")]
//public async Task AddDetailsAsync(UnplannedIssueJobDTO jobInput)
//{
// var entity=await _repository.GetAsync(p=>p.Id==jobInput.Id).ConfigureAwait(false);
// var details=ObjectMapper.Map<List<UnplannedIssueJobDetailDTO>, List<UnplannedIssueJobDetail>>(jobInput.Details);
// var balances=new List<BalanceDTO>();
// foreach (var itm in entity.Details)
// {
// entity.RemoveDetail(itm.Id);
// }
// //var strs=GetAllFields(typeof(UnplannedIssueJobDetail));
// foreach (var detail in details)//明细
// {
// //_locationAppService.get detail.HandledFromLocationCode
// var input = new RecommendBalanceRequestInput
// {
// ItemCode = detail.ItemCode,
// Qty = detail.HandledQty,
// Statuses = new EditableList<EnumInventoryStatus> { EnumInventoryStatus.OK },
// Locations = new List<string>() { detail.RecommendFromLocationCode },
// IsPackingCode = false
// };
// var usableList = await _balanceAppService.GetUsableListAsync(input).ConfigureAwait(false);//获取推荐库存
// usableList = usableList
// .OrderBy(p => p.Lot)
// .ThenBy(p => p.PutInTime)
// .ThenBy(p => p.Qty) //2023-9-14 苑静雯 从小数开始发料
// .ThenBy(p => p.LocationCode)
// .ThenBy(p => p.PackingCode)
// .ToList();
// decimal qty = 0;
// //实际要用库存
// var returnlist = DeductInventory(usableList, detail.HandledQty);
// balances.AddRange(returnlist);
// //useBalancesOut.AddRange(returnlist);
// entity.AddDetail(detail);
// }
// var outEditInputs = await BuildExpectOutAsync(balances).ConfigureAwait(false);
// foreach (var itm in outEditInputs)
// {
// itm.JobNumber = jobInput.Number;
// }
// await _expectOutAppService.AddManyAsync(outEditInputs).ConfigureAwait(false);
//}
public static string[] GetAllFields(Type type)
{
// 获取公共实例字段
@ -267,48 +217,7 @@ public class UnplannedIssueJobAppService
foreach (var balanceDto in balanceDtoGroup)
{
//var jobDetail = new UnplannedIssueJobDetail();
//jobDetail.Number = job.Number;
//jobDetail.SetIdAndNumber(GuidGenerator,job.Id,job.Number);
//jobDetail.CaseCode = requestDtoDetail.CaseCode;
//jobDetail.Explain = requestDtoDetail.Explain;
//jobDetail.OnceBusiCode = requestDtoDetail.OnceBusiCode;
//jobDetail.ProjCapacityCode = requestDtoDetail.ProjCapacityCode;
////jobDetail.ReasonCode = requestDtoDetail.ReasonCode;
//jobDetail.ItemCode = requestDtoDetail.ItemCode;
//jobDetail.ItemDesc1 = requestDtoDetail.ItemDesc1;
//jobDetail.ItemDesc2 = requestDtoDetail.ItemDesc2;
//jobDetail.ItemName = requestDtoDetail.ItemName;
//jobDetail.RecommendArriveDate = balanceDto.ArriveDate;
//jobDetail.RecommendContainerCode = string.Empty;
//jobDetail.RecommendExpireDate = balanceDto.ExpireDate;
//jobDetail.RecommendLot = balanceDto.Lot;
//jobDetail.RecommendPackingCode = balanceDto.PackingCode;
//jobDetail.RecommendProduceDate = balanceDto.ProduceDate;
//jobDetail.RecommendQty = balanceDto.Qty;
//jobDetail.RecommendSupplierBatch = balanceDto.SupplierBatch;
//jobDetail.StdPackQty = requestDtoDetail.StdPackQty;
//jobDetail.RecommendPackingCode = balanceDto.PackingCode;
//jobDetail.HandledPackingCode = balanceDto.PackingCode;
//jobDetail.RecommendFromLocationArea = balanceDto.LocationArea;
//jobDetail.RecommendFromLocationCode = balanceDto.LocationCode;
//jobDetail.RecommendFromLocationErpCode = balanceDto.LocationErpCode;
//jobDetail.RecommendFromLocationGroup = balanceDto.LocationGroup;
//jobDetail.RecommendFromWarehouseCode = balanceDto.WarehouseCode;
//jobDetail.HandledFromLocationGroup = balanceDto.LocationGroup;
//jobDetail.HandledFromLocationArea = balanceDto.LocationArea;
//jobDetail.HandledFromLocationCode = balanceDto.LocationCode;
//jobDetail.HandledFromLocationErpCode = balanceDto.LocationErpCode;
//jobDetail.HandledFromWarehouseCode = balanceDto.WarehouseCode;
//jobDetail.HandledQty = balanceDto.Qty;
//jobDetail.HandledSupplierBatch = balanceDto.Lot;
//jobDetail.HandledArriveDate = balanceDto.ArriveDate;
//jobDetail.HandledProduceDate = balanceDto.ProduceDate;
//jobDetail.HandledExpireDate = balanceDto.ExpireDate;
//jobDetail.HandledContainerCode = balanceDto.ContainerCode;
//jobDetail.HandledLot = balanceDto.Lot;
//jobDetail.HandledPackingCode = balanceDto.PackingCode;
//jobDetail.Uom = balanceDto.Uom;
var jobfacDetail = new UnplannedIssueJobFacDetail();
@ -435,7 +344,10 @@ public class UnplannedIssueJobAppService
public override async Task<UnplannedIssueJobDTO> CompleteAsync(Guid id, UnplannedIssueJobDTO dto)
{
var job = await _repository.GetAsync(id).ConfigureAwait(false);
//using (var _uow = new UnitOfWorkManager()) { }
var job = await _repository.GetAsync(id).ConfigureAwait(false);
if (job.JobStatus is EnumJobStatus.Closed or EnumJobStatus.Cancelled or EnumJobStatus.None or EnumJobStatus.Done)//需要考虑下 多次提交的问题 所以不判断 进行中
{
throw new UserFriendlyException($"任务状态错误:编号为【{job.Number}】的任务已经【{job.JobStatus.GetDisplayName()}】");
@ -447,7 +359,7 @@ public class UnplannedIssueJobAppService
var handleDto = ObjectMapper.Map<UnplannedIssueJob, UnplannedIssueJobDTO>(handleResult);
await UpdateRequestStatusAsync(job.UnplannedIssueRequestNumber).ConfigureAwait(false);
return handleDto;

29
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedIssueRequests/UnplannedIssueRequestForDongyangAppService.cs

@ -100,14 +100,31 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
await CreateByDYOAsync(importList, EnumUnplannedIssueType.IMPORT).ConfigureAwait(false);
//if (errors.Count > 0)
//{
// var fileContent = _excelService.Export(errors);
// return new TestResult(fileContent.FileContents, ExportImportService.ContentType) { FileDownloadName = "错误信息" };
//}
List<UnplannedIssueRequestImportDto> errorsList = new List<UnplannedIssueRequestImportDto>();
foreach (var itm in importList)
{
if (string.IsNullOrEmpty(itm.CaseCode)
|| string.IsNullOrEmpty(itm.ItemCode)
|| itm.Qty == 0
|| string.IsNullOrEmpty(itm.ProjCapacityCode)
|| string.IsNullOrEmpty(itm.LocationErpCode)
)
{
itm.Explain = "此项错误";
errorsList.Add(itm);
}
}
if (errorsList.Count > 0)
{
var fileContent = _excelService.Export(errorsList);
return new TestResult(fileContent.FileContents, ExportImportService.ContentType) { FileDownloadName =fileContent.FileDownloadName };
}
var fileContent1 = _excelService.Export(importList);
// return new TestResult(fileContent1.FileContents, ExportImportService.ContentType) { FileDownloadName = "Kitting导入文件" };
return new JsonResult(new { Code = 200, FileDownloadName = fileContent1.FileDownloadName });
}
catch (Exception e)

1
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/UnplannedIssueJobs/UnplannedIssueJobManager.cs

@ -52,6 +52,7 @@ public class UnplannedIssueJobManager : SfsJobManagerBase<UnplannedIssueJob, Unp
detail.OnceBusiCode = first.OnceBusiCode;
detail.Explain = first.Explain;
detail.Status = EnumInventoryStatus.OK;
entity.AddDetail(detail);
//发料子任务 赋值实际转移
}

Loading…
Cancel
Save