入库任务数据调用

This commit is contained in:
tongfei
2023-10-28 13:32:19 +08:00
parent ae3d0e0c2f
commit 914654f749
7 changed files with 186 additions and 42 deletions

View File

@@ -0,0 +1,73 @@
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Options;
using Quartz;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading.Tasks;
using WMS.Web.Domain.Infrastructure;
using WMS.Web.Domain.IService.Public;
using WMS.Web.Domain.Options;
namespace WMS.Web.Domain.QuartzJob
{
/// <summary>
/// erp入库单-获取定时任务
/// </summary>
public class InStockOrderQuartzJob : IJob
{
private readonly ILogger<InStockOrderQuartzJob> _logger;
private readonly IServiceScopeFactory _serviceScopeFactory;
private readonly AppOptions _options;
private readonly IInStockTaskRepositories _inStockTaskRepositories;
private readonly IErpService _erpService;
public InStockOrderQuartzJob(ILogger<InStockOrderQuartzJob> logger,
IServiceScopeFactory serviceScopeFactory,
IOptions<AppOptions> options,
IInStockTaskRepositories inStockTaskRepositories,
IErpService erpService)
{
this._erpService = erpService;
this._logger = logger;
_serviceScopeFactory = serviceScopeFactory;
this._options = options?.Value;
_inStockTaskRepositories = inStockTaskRepositories;
}
/// <summary>
/// 执行方法
/// </summary>
/// <param name="context"></param>
/// <returns></returns>
public async Task Execute(IJobExecutionContext context)
{
try
{
var begindatetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
var purchaseInStockOrder = await _erpService.BillQueryForPurchaseInStock();
var enddatetime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff");
//_logger.LogInformation($"《获取金蝶数据》->执行开始时间:{begindatetime},\r\n" +
//$"执行条数:{result.Data?.ExecuteCount}条,\r\n" +
//$"新增数:{result.Data?.ExecuteCreateCount}条,\r\n" +
//$"更新数:{result.Data?.ExecuteUpdateCount}条,\r\n" +
//$"执行结果:{result.Data?.Message}\r\n" +
//$"执行结束时间:{enddatetime}");
}
catch (Exception ex)
{
_logger.LogInformation($"首页库存金额统计:定时任务执行失败->{ex.Message}");
}
}
}
}

View File

@@ -76,9 +76,16 @@ namespace WMS.Web.Domain.Services.Public
if (!token_result.IsSuccess)
return ResultList<ErpPurchaseInStockResultDto>.ReFailure(token_result);
//var beginTime = DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd 00:00:00");
//var endTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
var beginTime = DateTime.Now.ToString("2023-07-06 00:00:00");
var endTime = DateTime.Now.ToString("2023-07-06 01:00:00");
var query = new ErpBillQueryDto(token_result.Data);
var param = new ErpBillQueryParamDto(FormIdParam.STK_InStock.ToString());
param.FieldKeys = this._erpOptions.PurchaseInstockFieldKeys;
param.FieldKeys = "FPOOrderNo,FSupplierId,FPurchaseOrgId,FUOM,FMaterialId.FNumber,FMaterialName,FMaterialId,FStockId,FStockLocId,FRemainInStockQty,FNote,FCreateDate";
param.Limit = 10;
param.FilterString = "FCreateDate>='"+beginTime+"' and FCreateDate<='"+endTime+"'";
query.Data = JsonConvert.SerializeObject(param);
var json = JsonConvert.SerializeObject(query);
@@ -89,19 +96,25 @@ namespace WMS.Web.Domain.Services.Public
foreach (var item in result)
{
var lis = new ErpPurchaseInStockResultDto();
lis.BillNo = item[0];
lis.Specifications = item[1];
lis.SupplierName = item[2];
lis.OrgName = item[3];
lis.MaterialName = item[4];
lis.MaterialNumber = item[5];
lis.FPOOrderNo = item[0];
lis.FSupplierId = Convert.ToInt32(item[1]);
lis.FPurchaseOrgId = Convert.ToInt32(item[2]);
lis.FUOM = item[3];
lis.FNumber = item[4];
lis.FMaterialName = item[5];
lis.FMaterialId = Convert.ToInt32(item[6]);
lis.FStockId = Convert.ToInt32(item[7]);
lis.FStockLocId = Convert.ToInt32(item[8]);
lis.FRemainInStockQty =Convert.ToDecimal(item[9]);
lis.FNote = item[10];
lis.FCreateDate =Convert.ToDateTime(item[11]);
list.Add(lis);
}
return ResultList<ErpPurchaseInStockResultDto>.ReSuccess(list);
}
catch (Exception)
catch (Exception ex)
{
return ResultList<ErpPurchaseInStockResultDto>.ReFailure("错误", 10001);
}

View File

@@ -29,8 +29,4 @@
<ProjectReference Include="..\WMS.Web.Core\WMS.Web.Core.csproj" />
</ItemGroup>
<ItemGroup>
<Folder Include="QuartzJob\" />
</ItemGroup>
</Project>