lvzb 1 year ago
parent
commit
a5036d9970
  1. 6
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Bases/SfsStoreRequestAppServiceBase.cs
  2. 47
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedIssueRequests/UnplannedIssueRequestForDongyangAppService.cs
  3. 33
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedReceiptRequests/UnplannedReceiptRequestForDongyangAppService.cs

6
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Bases/SfsStoreRequestAppServiceBase.cs

@ -60,11 +60,17 @@ public abstract class SfsStoreRequestAppServiceBase<TEntity, TEntityDto, TReques
{
var entity = await _repository.FindAsync(id).ConfigureAwait(false);
Check.NotNull(entity, typeof(TEntity).Name);
entity = ModifyEntityBeforeAgree(entity);
var result = await _requestManager.AgreeAsync(entity).ConfigureAwait(false);
var dto = ObjectMapper.Map<TEntity, TEntityDto>(result);
return dto;
}
protected virtual TEntity ModifyEntityBeforeAgree(TEntity obj)
{
return obj;
}
/// <summary>
/// 拒绝请求
/// </summary>

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

@ -72,11 +72,18 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
//});
RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
input.ItemCode = detail.ItemCode;
input.Locations = new List<string>() { detail.LocationCode };
var balanceLst = await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
if (balanceLst.Count == 0)
{
throw new UserFriendlyException($"GetRecommendBalancesByLocationsAsync返回0条记录");
}
if (detail.Qty > balanceLst[0].Qty)
{
throw new UserFriendlyException($"库存数量不足:GetRecommendBalancesByLocationsAsync");
}
}
if (unplannedIssueRequest.UnplannedIssueType == EnumUnplannedIssueType.Wip)
@ -89,16 +96,21 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
input.ItemCode = detail.ItemCode;
input.Locations = new List<string>() { detail.LocationCode };
var balanceLst = await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
if (balanceLst.Count == 0)
{
throw new UserFriendlyException($"GetRecommendBalancesByLocationsAsync返回0条记录");
}
var sumQty = balanceLst.Sum(itm => itm.Qty);
if (detail.Qty > sumQty)
{
throw new UserFriendlyException($"库存数量不足:GetRecommendBalancesByLocationsAsync");
}
//});
unplannedIssueRequest.DirectCreateNote = true; //线边 直接生成记录
unplannedIssueRequest.RequestStatus = EnumRequestStatus.Completed;
}
await SetDetailPropertiesAsync(detail).ConfigureAwait(false);
}
}
@ -106,6 +118,15 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
return dictionary;
}
protected override UnplannedIssueRequest ModifyEntityBeforeAgree(UnplannedIssueRequest obj)
{
if (obj.UnplannedIssueType == EnumUnplannedIssueType.Wip)
{
obj.DirectCreateNote = true; //线边 直接生成记录
}
return obj;
}
#region 赋值
/// <summary>

33
be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedReceiptRequests/UnplannedReceiptRequestForDongyangAppService.cs

@ -25,19 +25,22 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
private readonly LocationManager _locationManager;
private readonly ILocationAppService _locationAppService;
private readonly IUnplannedReceiptRequestManager _unplannedReceiptRequestManager;
private readonly IBalanceAppService _balanceAppService;
public UnplannedReceiptRequestForDongyangAppService(IUnplannedReceiptRequestRepository repository,
IUnplannedReceiptRequestManager unplannedReceiptRequestManager,
IDepartmentAppService departmentApp,
//LocationManager locationManager,
ILocationAppService locationAppService
ILocationAppService locationAppService,
IBalanceAppService balanceAppService
) : base(repository, unplannedReceiptRequestManager)
{
_unplannedReceiptRequestManager = unplannedReceiptRequestManager;
_departmentApp = departmentApp;
//_locationManager = locationManager;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
}
/// <summary>
@ -70,11 +73,10 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
//});
//RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//input.ItemCode = detail.ItemCode;
//input.Locations = new List<string>() { detail.LocationCode };
//await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
}
if (unplannedReceiptRequest.UnplannedReceiptType == EnumUnplannedReceiptType.Wip)
@ -87,12 +89,10 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
//});
unplannedReceiptRequest.DirectCreateNote = true; //线边 直接生成记录
//RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//input.ItemCode = detail.ItemCode;
//input.Locations = new List<string>() { detail.LocationCode };
//await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
}
await SetDetailPropertiesAsync(detail).ConfigureAwait(false);
@ -102,6 +102,15 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
return dictionary;
}
protected override UnplannedReceiptRequest ModifyEntityBeforeAgree(UnplannedReceiptRequest obj)
{
if (obj.UnplannedReceiptType == EnumUnplannedReceiptType.Wip)
{
obj.DirectCreateNote = true;
}
return obj;
}
#region 赋值
/// <summary>

Loading…
Cancel
Save