获取金蝶-定时任务

This commit is contained in:
tongfei
2023-11-01 10:52:25 +08:00
parent a51015f0af
commit 4beafdfa98
7 changed files with 188 additions and 48 deletions

View File

@@ -1,5 +1,6 @@
using AutoMapper;
using ERP;
using Microsoft.EntityFrameworkCore.Storage;
using Microsoft.Extensions.Caching.Memory;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
@@ -34,18 +35,21 @@ namespace WMS.Web.Domain.Services.Public
private ERPGWSoapClient _client;
private readonly IMemoryCache _memoryCache;
private readonly IInStockTaskRepositories _inStockTaskRepositories;
public readonly ITransactionRepositories _transactionRepositories;
public ErpService(
IMapper mapper,
IOptions<ErpOptions> erpOptions,
ILogger<ErpService> logger,
IMemoryCache memoryCache,
IInStockTaskRepositories inStockTaskRepositories)
IInStockTaskRepositories inStockTaskRepositories,
ITransactionRepositories transactionRepositories)
{
this._erpOptions = erpOptions?.Value;
this._mapper = mapper;
this._logger = logger;
this._memoryCache = memoryCache;
this._inStockTaskRepositories = inStockTaskRepositories;
this._transactionRepositories = transactionRepositories;
}
/// <summary>
@@ -100,7 +104,7 @@ namespace WMS.Web.Domain.Services.Public
var result = JsonConvert.DeserializeObject<List<List<string>>>(result_json);
//5.返回数据的组装
var list = new List<ErpPurchaseInStockResultDto>();
var erp_list = new List<ErpPurchaseInStockResultDto>();
foreach (var item in result)
{
var lis = new ErpPurchaseInStockResultDto();
@@ -115,33 +119,13 @@ namespace WMS.Web.Domain.Services.Public
lis.FEntryNote = item[8];
lis.FCreateDate =Convert.ToDateTime(item[9]);
//list.FCHUCHANGPRICE=[10]FCHUCHANGPRICE;//这个是出厂价,但是金蝶测试没有这个字段,正式有的
list.Add(lis);
erp_list.Add(lis);
}
//6.
var SourceBillNo_list = list.GroupBy(x=>x.FBillNo).Select(x => x.Key).ToList();
var data_list= await _inStockTaskRepositories.GetListBy(SourceBillNo_list);
if (data_list.Count != 0)
{
var data_details_list= data_list.SelectMany(x => x.Details).ToList();
foreach (var item in data_details_list)
{
}
}
var dto = new InStockTask();
dto.Create(InstockType.Purchase);
dto.Details = _mapper.Map<List<InStockTaskDetails>>(list);
return ResultList<ErpPurchaseInStockResultDto>.ReSuccess(list);
return ResultList<ErpPurchaseInStockResultDto>.ReSuccess(erp_list);
}
catch (Exception ex)
{
return ResultList<ErpPurchaseInStockResultDto>.ReFailure("错误", 10001);
return ResultList<ErpPurchaseInStockResultDto>.ReFailure(ResultCodes.Erp_BillQuery_Error);
}
}