修复bug

This commit is contained in:
18942506660
2024-04-23 17:57:37 +08:00
parent 1cfe4e0c93
commit 68ad217906

View File

@@ -41,7 +41,7 @@ namespace WMS.Web.Domain.Services
private readonly RedisClientService _redisClientService;
private readonly IErpBasicDataExtendService _erpBasicDataExtendService;
private readonly ISingleDataService _singleDataService;
private readonly IBoxRepositories _boxRepositories;
private IBoxRepositories _boxRepositories;
private readonly IExportExcelService _exportExcelService;
private readonly IServiceScopeFactory _serviceScopeFactory;
@@ -461,11 +461,12 @@ namespace WMS.Web.Domain.Services
/// <returns></returns>
public async Task<Result<OutStockTaskInfoResponse>> GetInfo(int id, LoginInDto loginInfo, IServiceScope scope = null)
{
if (scope == null)
if (scope != null)
{
_outStockTaskRepositories = scope.ServiceProvider.GetRequiredService<IOutStockTaskRepositories>();
_outStockRepositories = scope.ServiceProvider.GetRequiredService<IOutStockRepositories>();
_erpService = scope.ServiceProvider.GetRequiredService<IErpService>();
_boxRepositories= scope.ServiceProvider.GetRequiredService<IBoxRepositories>();
}
var entity = await _outStockTaskRepositories.Get(id);
@@ -486,10 +487,10 @@ namespace WMS.Web.Domain.Services
if (customer_result.IsSuccess)
customers = customer_result.Data.ToList();
var materials_result = await _erpService.BillQueryForMaterial();
//var materials_result = await _erpService.BillQueryForMaterial();
List<ErpMaterialDto> materials = new List<ErpMaterialDto>();
if (materials_result.IsSuccess)
materials = materials_result.Data.ToList();
//if (materials_result.IsSuccess)
// materials = materials_result.Data.ToList();
OutStockTaskInfoResponse response = new OutStockTaskInfoResponse()
{
@@ -540,36 +541,20 @@ namespace WMS.Web.Domain.Services
/// <returns></returns>
public async Task ExportInfo(OperateRequest dto, string fileName, LoginInDto loginInfo)
{
var ids = dto.Ids.Distinct().ToList();
using (var scope = _serviceScopeFactory.CreateScope())
try
{
List<ExportInfoResponse> list = new List<ExportInfoResponse>();
foreach (var id in ids)
var ids = dto.Ids.Distinct().ToList();
using (var scope = _serviceScopeFactory.CreateScope())
{
var info = await this.GetInfo(id, loginInfo, scope);
if (!info.IsSuccess) continue;
var response = info.Data;
foreach (var d in response.Details)
List<ExportInfoResponse> list = new List<ExportInfoResponse>();
foreach (var id in ids)
{
if (d.SerialNumberList == null || d.SerialNumberList.Count() <= 0)
var info = await this.GetInfo(id, loginInfo, scope);
if (!info.IsSuccess) continue;
var response = info.Data;
foreach (var d in response.Details)
{
list.Add(new ExportInfoResponse()
{
SourceBillNo = response.SourceBillNo,
SaleBillNo = response.SaleBillNo,
ReceiptCustomer = response.ReceiptCustomer,
CreateTime = d.CreateTime,
BoxBillNo = d.BoxBillNo,
Specifications = d.Specifications,
MaterialName = d.MaterialName,
MaterialNumber = d.MaterialNumber,
BarCode = d.BarCode,
SerialNumbers = ""
});
}
else
{
foreach (var s in d.SerialNumberList)
if (d.SerialNumberList == null || d.SerialNumberList.Count() <= 0)
{
list.Add(new ExportInfoResponse()
{
@@ -582,15 +567,38 @@ namespace WMS.Web.Domain.Services
MaterialName = d.MaterialName,
MaterialNumber = d.MaterialNumber,
BarCode = d.BarCode,
SerialNumbers = s
SerialNumbers = ""
});
}
else
{
foreach (var s in d.SerialNumberList)
{
list.Add(new ExportInfoResponse()
{
SourceBillNo = response.SourceBillNo,
SaleBillNo = response.SaleBillNo,
ReceiptCustomer = response.ReceiptCustomer,
CreateTime = d.CreateTime,
BoxBillNo = d.BoxBillNo,
Specifications = d.Specifications,
MaterialName = d.MaterialName,
MaterialNumber = d.MaterialNumber,
BarCode = d.BarCode,
SerialNumbers = s
});
}
}
}
}
}
var _exportExcelService = scope.ServiceProvider.GetRequiredService<IExportExcelService>();
await _exportExcelService.Export(list, fileName, loginInfo.UserInfo.StaffId, loginInfo.UserInfo.CompanyId, FileDownLoadOrderType.OutStockTaskInfo);
var _exportExcelService = scope.ServiceProvider.GetRequiredService<IExportExcelService>();
await _exportExcelService.Export(list, fileName, loginInfo.UserInfo.StaffId, loginInfo.UserInfo.CompanyId, FileDownLoadOrderType.OutStockTaskInfo);
}
}
catch (Exception ex)
{
throw ex;
}
}
}