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); var entity = await _repository.FindAsync(id).ConfigureAwait(false);
Check.NotNull(entity, typeof(TEntity).Name); Check.NotNull(entity, typeof(TEntity).Name);
entity = ModifyEntityBeforeAgree(entity);
var result = await _requestManager.AgreeAsync(entity).ConfigureAwait(false); var result = await _requestManager.AgreeAsync(entity).ConfigureAwait(false);
var dto = ObjectMapper.Map<TEntity, TEntityDto>(result); var dto = ObjectMapper.Map<TEntity, TEntityDto>(result);
return dto; return dto;
} }
protected virtual TEntity ModifyEntityBeforeAgree(TEntity obj)
{
return obj;
}
/// <summary> /// <summary>
/// 拒绝请求 /// 拒绝请求
/// </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() RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//{ input.ItemCode = detail.ItemCode;
// 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) if (unplannedIssueRequest.UnplannedIssueType == EnumUnplannedIssueType.Wip)
@ -89,16 +96,21 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
} }
//需要复制一个这个方法 去掉区域参数 换成库位参数 //需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput() RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//{ input.ItemCode = detail.ItemCode;
// 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); await SetDetailPropertiesAsync(detail).ConfigureAwait(false);
} }
} }
@ -106,6 +118,15 @@ public class UnplannedIssueRequestForDongyangAppService : UnplannedIssueRequestA
return dictionary; return dictionary;
} }
protected override UnplannedIssueRequest ModifyEntityBeforeAgree(UnplannedIssueRequest obj)
{
if (obj.UnplannedIssueType == EnumUnplannedIssueType.Wip)
{
obj.DirectCreateNote = true; //线边 直接生成记录
}
return obj;
}
#region 赋值 #region 赋值
/// <summary> /// <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 LocationManager _locationManager;
private readonly ILocationAppService _locationAppService; private readonly ILocationAppService _locationAppService;
private readonly IUnplannedReceiptRequestManager _unplannedReceiptRequestManager; private readonly IUnplannedReceiptRequestManager _unplannedReceiptRequestManager;
private readonly IBalanceAppService _balanceAppService;
public UnplannedReceiptRequestForDongyangAppService(IUnplannedReceiptRequestRepository repository, public UnplannedReceiptRequestForDongyangAppService(IUnplannedReceiptRequestRepository repository,
IUnplannedReceiptRequestManager unplannedReceiptRequestManager, IUnplannedReceiptRequestManager unplannedReceiptRequestManager,
IDepartmentAppService departmentApp, IDepartmentAppService departmentApp,
//LocationManager locationManager, //LocationManager locationManager,
ILocationAppService locationAppService ILocationAppService locationAppService,
IBalanceAppService balanceAppService
) : base(repository, unplannedReceiptRequestManager) ) : base(repository, unplannedReceiptRequestManager)
{ {
_unplannedReceiptRequestManager = unplannedReceiptRequestManager; _unplannedReceiptRequestManager = unplannedReceiptRequestManager;
_departmentApp = departmentApp; _departmentApp = departmentApp;
//_locationManager = locationManager; //_locationManager = locationManager;
_locationAppService = locationAppService; _locationAppService = locationAppService;
_balanceAppService = balanceAppService;
} }
/// <summary> /// <summary>
@ -70,11 +73,10 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
} }
//需要复制一个这个方法 去掉区域参数 换成库位参数 //需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput() //RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//{ //input.ItemCode = detail.ItemCode;
// ItemCode = detail.ItemCode, //input.Locations = new List<string>() { detail.LocationCode };
//await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
//});
} }
if (unplannedReceiptRequest.UnplannedReceiptType == EnumUnplannedReceiptType.Wip) if (unplannedReceiptRequest.UnplannedReceiptType == EnumUnplannedReceiptType.Wip)
@ -87,12 +89,10 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
} }
//需要复制一个这个方法 去掉区域参数 换成库位参数 //需要复制一个这个方法 去掉区域参数 换成库位参数
//_balanceAppService.GetRecommendBalancesAsync(new RecommendBalanceRequestInput() //RecommendBalanceRequestInput input = new RecommendBalanceRequestInput();
//{ //input.ItemCode = detail.ItemCode;
// ItemCode = detail.ItemCode, //input.Locations = new List<string>() { detail.LocationCode };
//await _balanceAppService.GetRecommendBalancesByLocationsAsync(input).ConfigureAwait(false);
//});
unplannedReceiptRequest.DirectCreateNote = true; //线边 直接生成记录
} }
await SetDetailPropertiesAsync(detail).ConfigureAwait(false); await SetDetailPropertiesAsync(detail).ConfigureAwait(false);
@ -102,6 +102,15 @@ public class UnplannedReceiptRequestForDongyangAppService : UnplannedReceiptRequ
return dictionary; return dictionary;
} }
protected override UnplannedReceiptRequest ModifyEntityBeforeAgree(UnplannedReceiptRequest obj)
{
if (obj.UnplannedReceiptType == EnumUnplannedReceiptType.Wip)
{
obj.DirectCreateNote = true;
}
return obj;
}
#region 赋值 #region 赋值
/// <summary> /// <summary>

Loading…
Cancel
Save