Browse Source

修改质检

dev_DY_CC
郑勃旭 12 months ago
parent
commit
afd91f3037
  1. 20
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/InspectJobs/InspectJobAppService.cs
  2. 4
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/IInspectJobManager.cs
  3. 310
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/InspectJobManager.cs

20
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Jobs/InspectJobs/InspectJobAppService.cs

@ -1,4 +1,5 @@
using System; using System;
using System.Collections.Generic;
using System.Linq; using System.Linq;
using System.Text.Json; using System.Text.Json;
using System.Threading.Tasks; using System.Threading.Tasks;
@ -8,6 +9,8 @@ using Volo.Abp;
using Volo.Abp.ObjectMapping; using Volo.Abp.ObjectMapping;
using Win_in.Sfs.Basedata.Domain.Shared; using Win_in.Sfs.Basedata.Domain.Shared;
using Win_in.Sfs.FileStorage.Application.Contracts; using Win_in.Sfs.FileStorage.Application.Contracts;
using Win_in.Sfs.Shared.Domain.Shared;
using Win_in.Sfs.Shared.Domain.Shared.Enums.Inspect;
using Win_in.Sfs.Wms.Store.Application.Contracts; using Win_in.Sfs.Wms.Store.Application.Contracts;
using Win_in.Sfs.Wms.Store.Domain; using Win_in.Sfs.Wms.Store.Domain;
using Win_in.Sfs.Wms.Store.Domain.Shared; using Win_in.Sfs.Wms.Store.Domain.Shared;
@ -138,6 +141,23 @@ public class InspectJobAppService
return summaryDetailDto; return summaryDetailDto;
} }
/// <summary>
/// 批量设置质检状态
/// </summary>
/// <param name="id"></param>
/// <param name="detailIdList"></param>
/// <param name="detailDto"></param>
/// <returns></returns>
[HttpPost("Set-Many-Detail-Status")]
public virtual async Task<InspectJobDTO> SetManyDetailStatusAsync(Guid id, List<Guid> detailIdList, InspectJobDetailDTO detailDto)
{
var entityDetail = ObjectMapper.Map<InspectJobDetailDTO, InspectJobDetail>(detailDto);
var entity=await _inspectJobManager.SetManyDetailStatusAsync(id,detailIdList, entityDetail).ConfigureAwait(false);
return ObjectMapper.Map<InspectJob, InspectJobDTO>(entity);
}
/// <summary> /// <summary>
/// </summary> /// </summary>
/// <param name="inspectRequestNumber"></param> /// <param name="inspectRequestNumber"></param>

4
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/IInspectJobManager.cs

@ -1,4 +1,5 @@
using System; using System;
using System.Collections.Generic;
using System.Threading.Tasks; using System.Threading.Tasks;
using Volo.Abp.Users; using Volo.Abp.Users;
@ -39,4 +40,7 @@ public interface IInspectJobManager : IJobManager<InspectJob>
/// <param name="detailId"></param> /// <param name="detailId"></param>
/// <returns></returns> /// <returns></returns>
Task<InspectJobDetail> SetDetailDefaultOkStatusAsync(Guid id, Guid detailId); Task<InspectJobDetail> SetDetailDefaultOkStatusAsync(Guid id, Guid detailId);
Task<InspectJob> SetManyDetailStatusAsync(Guid id, List<Guid> detailIdList,
InspectJobDetail inspectJobDetail);
} }

310
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Domain/Jobs/InspectJobs/InspectJobManager.cs

@ -17,7 +17,7 @@ using Win_in.Sfs.Wms.Store.Domain.Acl.ItemQuality;
namespace Win_in.Sfs.Wms.Store.Domain; namespace Win_in.Sfs.Wms.Store.Domain;
/// <summary> /// <summary>
/// 质检任务 /// 质检任务
/// </summary> /// </summary>
public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>, IInspectJobManager public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>, IInspectJobManager
{ {
@ -25,7 +25,6 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
private readonly IItemQualityAclService _itemQualityAclService; private readonly IItemQualityAclService _itemQualityAclService;
/// <summary> /// <summary>
///
/// </summary> /// </summary>
/// <param name="repository"></param> /// <param name="repository"></param>
/// <param name="aqlAclService"></param> /// <param name="aqlAclService"></param>
@ -34,14 +33,14 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
IInspectJobRepository repository IInspectJobRepository repository
, IAQLAclService aqlAclService , IAQLAclService aqlAclService
, IItemQualityAclService itemQualityAclService , IItemQualityAclService itemQualityAclService
) : base(repository) ) : base(repository)
{ {
_aqlAclService = aqlAclService; _aqlAclService = aqlAclService;
_itemQualityAclService = itemQualityAclService; _itemQualityAclService = itemQualityAclService;
} }
/// <summary> /// <summary>
/// 执行任务,生成检验记录 /// 执行任务,生成检验记录
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <param name="inspectJob"></param> /// <param name="inspectJob"></param>
@ -59,7 +58,8 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
{ {
await entity.SetDetail(detail.Id, detail.GoodQty, detail.FailedReason, detail.FailedQty, await entity.SetDetail(detail.Id, detail.GoodQty, detail.FailedReason, detail.FailedQty,
detail.CrackQty, detail.NotPassedQty, user.Name, detail.CrackQty, detail.NotPassedQty, user.Name,
detail.SupplierBatch, detail.ArriveDate, detail.ProduceDate, detail.ExpireDate, detail.ContainerCode, detail.LocationCode, detail.Lot, detail.SupplierBatch, detail.ArriveDate, detail.ProduceDate, detail.ExpireDate, detail.ContainerCode,
detail.LocationCode, detail.Lot,
detail.PackingCode, detail.ReceiveQty).ConfigureAwait(false); detail.PackingCode, detail.ReceiveQty).ConfigureAwait(false);
} }
@ -78,19 +78,22 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
// //
// var inspectNote = BuildInspectNoteCreateDTO(entity); // var inspectNote = BuildInspectNoteCreateDTO(entity);
// await _inspectNoteAppService.CreateAsync(inspectNote); // await _inspectNoteAppService.CreateAsync(inspectNote);
} }
public override async Task<List<InspectJob>> GetWorkingListByPackingAsync(string packingCode) public override async Task<List<InspectJob>> GetWorkingListByPackingAsync(string packingCode)
{ {
return await Repository.GetListAsync(c => c.Details.Any(p => p.PackingCode == packingCode) && c.JobStatus != EnumJobStatus.Closed && c.JobStatus != EnumJobStatus.Cancelled, true).ConfigureAwait(false); return await Repository
.GetListAsync(
c => c.Details.Any(p => p.PackingCode == packingCode) && c.JobStatus != EnumJobStatus.Closed &&
c.JobStatus != EnumJobStatus.Cancelled, true).ConfigureAwait(false);
} }
public override async Task<List<InspectJob>> GetWorkingListByContainerAsync(string containerCode) public override async Task<List<InspectJob>> GetWorkingListByContainerAsync(string containerCode)
{ {
return await Repository.GetListAsync(c => c.Details.Any(p => p.ContainerCode == containerCode) && c.JobStatus != EnumJobStatus.Closed && c.JobStatus != EnumJobStatus.Cancelled, true).ConfigureAwait(false); return await Repository
.GetListAsync(
c => c.Details.Any(p => p.ContainerCode == containerCode) && c.JobStatus != EnumJobStatus.Closed &&
c.JobStatus != EnumJobStatus.Cancelled, true).ConfigureAwait(false);
} }
public override void CheckDetails(InspectJob entity, AbpValidationResult result) public override void CheckDetails(InspectJob entity, AbpValidationResult result)
@ -111,7 +114,7 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 创建质检任务 /// 创建质检任务
/// </summary> /// </summary>
/// <param name="entity"></param> /// <param name="entity"></param>
/// <returns></returns> /// <returns></returns>
@ -131,21 +134,19 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 完成汇总的质检 /// 完成汇总的质检
/// </summary> /// </summary>
/// <returns></returns> /// <returns></returns>
public async Task<InspectJobSummaryDetail> CompleteSummaryDetailStatusAsync(Guid id, Guid summaryDetailId, InspectJobSummaryDetail input, ICurrentUser currentUser) public async Task<InspectJobSummaryDetail> CompleteSummaryDetailStatusAsync(Guid id, Guid summaryDetailId,
InspectJobSummaryDetail input, ICurrentUser currentUser)
{ {
var jobEntity = await Repository.FindAsync(id); var jobEntity = await Repository.FindAsync(id);
jobEntity.Details.Where(p => (p.DetailInspectStatus == EnumDetailInspectStatus.DefaultOK || jobEntity.Details.Where(p => (p.DetailInspectStatus == EnumDetailInspectStatus.DefaultOK ||
p.DetailInspectStatus == EnumDetailInspectStatus.OK)&& p.DetailInspectStatus == EnumDetailInspectStatus.OK) &&
p.ItemCode== input.ItemCode&& p.ItemCode == input.ItemCode &&
p.Lot==input.Lot p.Lot == input.Lot
).ToList().ForEach(p => ).ToList().ForEach(p => { p.GoodQty = p.ReceiveQty; });
{
p.GoodQty = p.ReceiveQty;
});
var goodqty = jobEntity.Details.Where(p => var goodqty = jobEntity.Details.Where(p =>
(p.DetailInspectStatus == EnumDetailInspectStatus.DefaultOK || (p.DetailInspectStatus == EnumDetailInspectStatus.DefaultOK ||
@ -157,7 +158,8 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
//获取 汇总详情 //获取 汇总详情
var summaryDetailEntity = jobEntity.SummaryDetails.Find(p => p.Id == summaryDetailId); var summaryDetailEntity = jobEntity.SummaryDetails.Find(p => p.Id == summaryDetailId);
var itemQuality = await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode); var itemQuality =
await _itemQualityAclService.GetByItemCodeAsync(summaryDetailEntity.ItemCode, jobEntity.SupplierCode);
if (itemQuality.InspectType != EnumInspectType.Exempt) if (itemQuality.InspectType != EnumInspectType.Exempt)
{ {
//获取质检标准 //获取质检标准
@ -195,13 +197,14 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
#endregion #endregion
await LocalEventBus.PublishAsync(new SfsUpdateEntitySummaryDetailEventData<InspectJob>(CopyJob)).ConfigureAwait(false); await LocalEventBus.PublishAsync(new SfsUpdateEntitySummaryDetailEventData<InspectJob>(CopyJob))
.ConfigureAwait(false);
return summaryDetailEntity; return summaryDetailEntity;
} }
/// <summary> /// <summary>
/// 构造 完成汇总的质检 /// 构造 完成汇总的质检
/// </summary> /// </summary>
/// <param name="input"></param> /// <param name="input"></param>
/// <param name="summaryDetailEntity"></param> /// <param name="summaryDetailEntity"></param>
@ -224,13 +227,14 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 检查 完成 汇总质检 /// 检查 完成 汇总质检
/// </summary> /// </summary>
/// <param name="inspectJobSummaryDetail"></param> /// <param name="inspectJobSummaryDetail"></param>
/// <param name="aql"></param> /// <param name="aql"></param>
/// <param name="input"></param> /// <param name="input"></param>
/// <exception cref="UserFriendlyException"></exception> /// <exception cref="UserFriendlyException"></exception>
private static async Task CheckCompleteSummaryDetailAsync(InspectJobSummaryDetail inspectJobSummaryDetail, AQLDTO aql, private static async Task CheckCompleteSummaryDetailAsync(InspectJobSummaryDetail inspectJobSummaryDetail,
AQLDTO aql,
InspectJobSummaryDetail input) InspectJobSummaryDetail input)
{ {
if (aql == null) if (aql == null)
@ -254,7 +258,7 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 【设置】 详情为【合格】 /// 【设置】 详情为【合格】
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <param name="detailId"></param> /// <param name="detailId"></param>
@ -289,7 +293,7 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 【设置】 详情为【不合格】 /// 【设置】 详情为【不合格】
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <param name="inspectJobDetail"></param> /// <param name="inspectJobDetail"></param>
@ -319,7 +323,7 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
} }
/// <summary> /// <summary>
/// 【设置】为【默认库存状态】 /// 【设置】为【默认库存状态】
/// </summary> /// </summary>
/// <param name="id"></param> /// <param name="id"></param>
/// <param name="detailId"></param> /// <param name="detailId"></param>
@ -349,13 +353,73 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
return detail; return detail;
} }
public virtual async Task<InspectJob> SetManyDetailStatusAsync(Guid id, List<Guid> detailIdList,
InspectJobDetail inspectJobDetail)
{
var entity = await Repository.FindAsync(id).ConfigureAwait(false);
var detailList = entity.Details.Where(p => detailIdList.Contains(p.Id)).ToList();
detailList.ForEach(detail =>
{
switch (detail.DetailInspectStatus)
{
case EnumDetailInspectStatus.DefaultOK:
detail.DetailInspectStatus = EnumDetailInspectStatus.DefaultOK;
detail.Weight = string.Empty;
detail.Volume = string.Empty;
detail.Appearance = string.Empty;
detail.OtherPropertyJson = string.Empty;
detail.InspectQty = 0;
detail.GoodQty = detail.ReceiveQty;
detail.NotPassedQty = 0;
detail.FailedQty = 0;
detail.CrackQty = 0;
break;
case EnumDetailInspectStatus.NOK:
detail.DetailInspectStatus = EnumDetailInspectStatus.NOK;
detail.Weight = inspectJobDetail.Weight;
detail.Volume = inspectJobDetail.Volume;
detail.Appearance = inspectJobDetail.Appearance;
detail.OtherPropertyJson = inspectJobDetail.OtherPropertyJson;
detail.InspectQty = inspectJobDetail.InspectQty;
detail.GoodQty = 0;
detail.NotPassedQty = detail.ReceiveQty;
detail.FailedQty = detail.ReceiveQty;
detail.CrackQty = 0;
break;
case EnumDetailInspectStatus.OK:
detail.DetailInspectStatus = EnumDetailInspectStatus.OK;
detail.Weight = inspectJobDetail.Weight;
detail.Volume = inspectJobDetail.Volume;
detail.Appearance = inspectJobDetail.Appearance;
detail.OtherPropertyJson = inspectJobDetail.OtherPropertyJson;
detail.InspectQty = inspectJobDetail.InspectQty;
detail.GoodQty = detail.ReceiveQty;
detail.NotPassedQty = 0;
detail.FailedQty = 0;
detail.CrackQty = 0;
break;
}
});
await SetSummaryAllQtyAsync(entity).ConfigureAwait(false);
await Repository.UpdateAsync(entity).ConfigureAwait(false);
return entity;
}
/// <summary> /// <summary>
/// 设置当前汇总的数量 /// 设置当前汇总的数量
/// </summary> /// </summary>
/// <param name="inspectJobDetail"></param> /// <param name="inspectJobDetail"></param>
/// <param name="entity"></param> /// <param name="entity"></param>
/// <returns></returns> /// <returns></returns>
private static async Task<InspectJobSummaryDetail> SetSummaryAllQtyAsync(InspectJobDetail inspectJobDetail, InspectJob entity) private static async Task<InspectJobSummaryDetail> SetSummaryAllQtyAsync(InspectJobDetail inspectJobDetail,
InspectJob entity)
{ {
await Task.CompletedTask.ConfigureAwait(false); await Task.CompletedTask.ConfigureAwait(false);
var summaryDetail = entity.SummaryDetails.Find(p => p.ItemCode == inspectJobDetail.ItemCode); var summaryDetail = entity.SummaryDetails.Find(p => p.ItemCode == inspectJobDetail.ItemCode);
@ -372,169 +436,31 @@ public class InspectJobManager : SfsJobManagerBase<InspectJob, InspectJobDetail>
return summaryDetail; return summaryDetail;
} }
//private async Task<List<InspectJob>> BuildInspectJobsAsync(InspectRequestETO inspectRequest)
//{
// //根据物品和批次拆分任务
// var splits = inspectRequest.Details.Select(c => (c.ItemCode, c.Lot)).Distinct();
// var inspectJobs = new List<InspectJob>();
// foreach (var split in splits)
// {
// var inspectJob = await BuildInspectJobAsync(inspectRequest);
// decimal receiveQty=0;
// decimal InspectQty = 0;
// foreach (var inspectRequestDetail in inspectRequest.Details.Where(c=>c.ItemCode== split.ItemCode && c.Lot== split.Lot))
// {
// receiveQty += inspectRequestDetail.ReceiveQty;
// InspectQty += inspectRequestDetail.InspectQty;
// }
// foreach (var inspectRequestDetail in inspectRequest.Details.Where(c => c.ItemCode == split.ItemCode && c.Lot == split.Lot))
// {
// List<InspectJobDetail> details = new List<InspectJobDetail>();
// var inspectJobDetail = ObjectMapper.Map<InspectRequestDetailETO, InspectJobDetail>(inspectRequestDetail);
// inspectJobDetail.InspectUser = new Person()
// {
// Name = _currentUser.Name,
// Phone = _currentUser.PhoneNumber,
// Email = _currentUser.Email
// };
// inspectJobDetail.SetBatch(inspectJobDetail.Batch);
// inspectJobDetail.SetIdAndNumber(GuidGenerator,inspectJob.Id,inspectJob.Number);
// inspectJobDetail.InspectQty = InspectQty;
// inspectJobDetail.ReceiveQty = receiveQty;
// inspectJobDetail.Qty = new UomQty() { Qty= inspectRequestDetail .InspectQty, Uom= inspectRequestDetail.ReceiveQty.Uom };
// inspectJobDetail.Qty = new UomQty() { Qty = inspectRequestDetail.InspectQty, Uom = inspectRequestDetail.ReceiveQty.Uom };
// details.Add(inspectJobDetail);
// inspectJob.Details = details;
// break;
// }
// var location = await LocationAclService.GetByNameAsync(inspectJob.Details[0].LocationCode);
// inspectJob.SetWorkGroup(location).SetPriority(Clock);
// inspectJobs.Add(inspectJob);
// //免检任务自动完成 并调用检验记录生成业务
// if (inspectJob.Details.Any(c => c.InspectType == EnumInspectType.Exempt))
// {
// await inspectJob.ConfirmAsync(_currentUser.Id, _currentUser.Name, Clock.Now);
// //发布检验记录事件
// var inspectNote = BuildInspectNoteCreateDTO(inspectJob);
// await _inspectNoteAppService.CreateAsync(inspectNote);
// }
// }
// return inspectJobs;
//}
/// <summary> /// <summary>
/// 检验不合格,下一步为挑选,重新生成类型为挑选的检验任务 /// 设置当前汇总的数量
/// </summary> /// </summary>
/// <param name="inspectJob"></param> /// <param name="entity"></param>
/// <returns></returns> /// <returns></returns>
/// <exception cref="NotImplementedException"></exception> private static async Task<List<InspectJobSummaryDetail>> SetSummaryAllQtyAsync(InspectJob entity)
//public virtual async Task AddPickInspectJobAsync(InspectJob inspectJob) {
//{ var listSummaryDetails = new List<InspectJobSummaryDetail>();
var itemCodeGroupBy = entity.Details.GroupBy(p => p.ItemCode);
// var location = await LocationAclService.GetByTypeAsync(inspectJob.Details[0].LocationCode);
// inspectJob.SetDetails(location.Code) //设置明细 foreach (var itemCodeList in itemCodeGroupBy)
// .SetWorkGroup(location.WarehouseCode, location.WorkGroupCode) //设置工作组 {
// .SetPriority(Clock); //设置优先级; var summaryDetail = entity.SummaryDetails.Find(p => p.ItemCode == itemCodeList.Key);
// await base.AddAsync(inspectJob); summaryDetail.InspectQty = itemCodeList.Sum(p => p.InspectQty);
//} summaryDetail.GoodQty = itemCodeList.Sum(p => p.GoodQty);
summaryDetail.FailedQty = itemCodeList.Sum(p => p.FailedQty);
//public virtual async Task AddByInspectRequestAsync(InspectRequestDTO inspectRequest, ICurrentUser currentUser) summaryDetail.CrackQty = itemCodeList.Sum(p => p.CrackQty);
//{ summaryDetail.NotPassedQty = itemCodeList.Sum(p => p.NotPassedQty);
// var inspectJobs = await BuildInspectJobsAsync(inspectRequest, currentUser);
listSummaryDetails.Add(summaryDetail);
// await AddManyAsync(inspectJobs); }
//}
await Task.CompletedTask.ConfigureAwait(false);
//public override async Task<List<InspectJob>> AddManyAsync(List<InspectJob> entities)
//{ return listSummaryDetails;
// foreach (var inspectJob in entities) }
// {
// inspectJob.SummaryDetails.ForEach(p => p.SetIdAndNumber(GuidGenerator, inspectJob.Id, inspectJob.Number));
// }
// return await base.AddManyAsync(entities);
//}
///// <summary>
///// 创建质检任务 实体
///// </summary>
///// <param name="inspectRequest"></param>
///// <returns></returns>
//private async Task<InspectJob> BuildInspectJobAsync(InspectRequestDTO inspectRequest)
//{
// var entity = ObjectMapper.Map<InspectRequestDTO, InspectJob>(inspectRequest);
// entity.JobType = EnumJobType.InspectJob;
// entity.JobStatus = EnumJobStatus.Open;
// return entity;
//}
///// <summary>
///// 创建质检任务 实体
///// </summary>
///// <param name="inspectRequest"></param>
///// <param name="currentUser"></param>
///// <returns></returns>
//private async Task<List<InspectJob>> BuildInspectJobsAsync(InspectRequestDTO inspectRequest, ICurrentUser currentUser)
//{
// var inspectJobs = new List<InspectJob>();
// //按汇总明细分解成多个任务
// foreach (var summarydDetailETO in inspectRequest.SummaryDetails)
// {
// var inspectJob = await BuildInspectJobAsync(inspectRequest);
// //处理明细 同物品+批次
// var inspectRequestDetails = inspectRequest.Details
// .Where(c => c.Lot == summarydDetailETO.Lot && c.ItemCode == summarydDetailETO.ItemCode).ToList();
// var details =
// ObjectMapper.Map<List<InspectRequestDetailDTO>, List<InspectJobDetail>>(inspectRequestDetails);
// List<Guid> deleteIds = new List<Guid>();
// foreach (var detail in details)
// {
// detail.InspectUser = new Person()
// {
// Name = currentUser.Name,
// Phone = currentUser.PhoneNumber,
// Email = currentUser.Email
// };
// if (detail.ReceiveQty == 0)
// deleteIds.Add(detail.Id);
// }
// inspectJob.Details.AddRange(details);
// //删除收获数量为0的记录
// foreach (var deleteId in deleteIds)
// {
// inspectJob.RemoveDetail(deleteId);
// }
// //处理汇总明细
// var summarydDetail =
// ObjectMapper.Map<InspectRequestSummaryDetailDTO, InspectJobSummaryDetail>(summarydDetailETO);
// //summarydDetail.Qty=new UomQty(summarydDetailETO.ReceiveUom, summarydDetailETO.InspectQty);
// summarydDetail.InspectUser = new Person(currentUser.Name, currentUser.PhoneNumber, currentUser.Email);
// inspectJob.SummaryDetails.Add(summarydDetail);
// if (inspectJob.Details.Any())
// {
// //设置任务工作组和优先级
// var location =
// await LocationAclService.GetByTypeAsync(inspectJob.Details.First().LocationCode);
// inspectJob.SetWorkGroup(location.WarehouseCode, location.WorkGroupCode)
// .SetPriority(Clock);
// }
// inspectJobs.Add(inspectJob);
// }
// return inspectJobs;
//}
} }

Loading…
Cancel
Save