Browse Source

库位领域服务加方法

master
刘云峰 1 year ago
parent
commit
d84cdcd1e0
  1. 8
      be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Locations/LocationManager.cs
  2. 43
      be/Modules/Store/src/Win_in.Sfs.Wms.Store.Application/Requests/UnplannedReceiptRequests/UnplannedReceiptRequestForDongyangAppService.cs

8
be/Modules/BaseData/src/Win_in.Sfs.Basedata.Domain/Locations/LocationManager.cs

@ -1,6 +1,7 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Volo.Abp.Domain.Services;
using Win_in.Sfs.Shared.Domain.Shared;
namespace Win_in.Sfs.Basedata.Domain;
@ -39,5 +40,12 @@ public class LocationManager : DomainService, ILocationManager
await _repository.BulkMergeAsync(mergeEntities).ConfigureAwait(false);
}
public virtual async Task<List<Location>> GetListByTypesAsync(List<EnumLocationType> types)
{
var locations = await _repository.GetListAsync(c => types.Contains(c.Type)).ConfigureAwait(false);
return locations;
}
}

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

@ -8,6 +8,7 @@ using Volo.Abp;
using Volo.Abp.Data;
using Win_in.Sfs.Auth.Application.Contracts;
using Win_in.Sfs.Basedata.Application.Contracts;
using Win_in.Sfs.Basedata.Domain;
using Win_in.Sfs.Shared.Application.Contracts;
using Win_in.Sfs.Shared.Domain;
using Win_in.Sfs.Shared.Domain.Shared;
@ -21,17 +22,19 @@ namespace Win_in.Sfs.Wms.Store.Application;
public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequestAppService
{
private readonly IDepartmentAppService _departmentApp;
private readonly LocationManager _locationManager;
private readonly IUnplannedReceiptRequestManager _unplannedReceiptRequestManager;
private readonly ILocationAppService _locationAppService;
private readonly IBalanceAppService _balanceAppService;
public UnplannedReceiptRequestForDongyangAppService(IUnplannedReceiptRequestRepository repository,
IUnplannedReceiptRequestManager unplannedReceiptRequestManager,
IDepartmentAppService departmentApp, ILocationAppService locationAppService, IBalanceAppService balanceAppService) : base(repository, unplannedReceiptRequestManager)
IDepartmentAppService departmentApp,
LocationManager locationManager
) : base(repository, unplannedReceiptRequestManager)
{
_unplannedReceiptRequestManager = unplannedReceiptRequestManager;
_departmentApp = departmentApp;
_locationAppService = locationAppService;
_balanceAppService = balanceAppService;
this._locationManager = locationManager;
}
/// <summary>
@ -55,37 +58,13 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
{
if (detail.UnplannedReceiptType == EnumUnplannedReceiptType.Raw)
{
var locationDto= await _locationAppService.GetByCodeAsync(detail.LocationCode);
if (locationDto.Type!=EnumLocationType.RAW||locationDto.Type!=EnumLocationType.SEMI)
{
throw new UserFriendlyException($"【{detail.LocationCode}】库位类型错误," +
$"不是{EnumLocationType.RAW.GetDisplayName()}" +
$"或{EnumLocationType.SEMI.GetDisplayName()}】");
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
//});
//这写原料 检验
//_locationManager
}
if (detail.UnplannedReceiptType == EnumUnplannedReceiptType.Wip)
{
var locationDto = await _locationAppService.GetByCodeAsync(detail.LocationCode);
if (locationDto.Type != EnumLocationType.WIP)
{
throw new UserFriendlyException($"【{detail.LocationCode}】库位类型错误," +
$"不是{EnumLocationType.WIP.GetDisplayName()}");
}
//需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput()
//{
// ItemCode = detail.ItemCode,
//});
//这写线边 校验
}
await SetDetailPropertiesAsync(detail).ConfigureAwait(false);

Loading…
Cancel
Save