修复bug
This commit is contained in:
@@ -202,7 +202,7 @@ namespace WMS.Web.Domain.Services
|
||||
{
|
||||
OperateRequest oRequest = new OperateRequest();
|
||||
oRequest.Ids.Add(entity.Id);
|
||||
await Sync(oRequest, loginInfo);
|
||||
await Sync(oRequest, loginInfo,false);
|
||||
}
|
||||
|
||||
return Result.ReSuccess();
|
||||
@@ -212,16 +212,21 @@ namespace WMS.Web.Domain.Services
|
||||
/// </summary>
|
||||
/// <param name="dto"></param>
|
||||
/// <returns></returns>
|
||||
public Task<Result> Sync(OperateRequest dto, LoginInDto loginInfo)
|
||||
public Task<Result> Sync(OperateRequest dto, LoginInDto loginInfo, bool isRepeatSync = true)
|
||||
{
|
||||
var list = _outStockRepositories.GetEntityList(dto.Ids).GetAwaiter().GetResult();
|
||||
list = list.Where(w => w.SuccessSync == SyncStatus.Fail).ToList();
|
||||
var isSuccess = true;
|
||||
if (isRepeatSync)
|
||||
{
|
||||
list.ForEach(f => f.RepeatSync());
|
||||
isSuccess = _outStockRepositories.EditEntityList(list, true).GetAwaiter().GetResult();
|
||||
}
|
||||
Task.Run(async () =>
|
||||
{
|
||||
var scope = _serviceScopeFactory.CreateScope();
|
||||
var sc_outStockRepositories = scope.ServiceProvider.GetRequiredService<IOutStockRepositories>();
|
||||
var list =await sc_outStockRepositories.GetEntityList(dto.Ids);
|
||||
foreach (var entity in list)
|
||||
{
|
||||
var res = await SalOutStock(entity, loginInfo, scope);
|
||||
var res = await SalOutStock(entity, loginInfo);
|
||||
if (!res.IsSuccess)
|
||||
_logger.LogError($"出库单同步失败:{res.Message}");
|
||||
}
|
||||
@@ -233,8 +238,9 @@ namespace WMS.Web.Domain.Services
|
||||
/// 同步金蝶销售出库
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
private async Task<Result> SalOutStock(OutStock entity, LoginInDto loginInfo, IServiceScope scope)
|
||||
private async Task<Result> SalOutStock(OutStock entity, LoginInDto loginInfo)
|
||||
{
|
||||
var scope = _serviceScopeFactory.CreateScope();
|
||||
var sc_outStockRepositories = scope.ServiceProvider.GetRequiredService<IOutStockRepositories>();
|
||||
|
||||
if (entity.Type != OutStockType.Sal) return Result.ReSuccess();
|
||||
@@ -244,7 +250,7 @@ namespace WMS.Web.Domain.Services
|
||||
// .Select(s => s.Key).ToList();//同步失败的来源单号
|
||||
// //找到单据里需要同步的单据
|
||||
//var sourcNos = entity.Details.SelectMany(s => s.ErpDetails).GroupBy(s => s.SourceBillNo).Select(s => s.Key);
|
||||
var erpDetails = entity.Details.SelectMany(s => s.ErpDetails).Where(w => w.SuccessSync == SyncStatus.Fail).ToList();
|
||||
var erpDetails = entity.Details.SelectMany(s => s.ErpDetails).Where(w => w.SuccessSync == SyncStatus.SyncIng).ToList();
|
||||
foreach (var s in erpDetails)
|
||||
{
|
||||
var erp_details = entity.Details
|
||||
|
||||
Reference in New Issue
Block a user