using Estsh.Core.Dapper;
using Estsh.Core.Model.EnumUtil;
using Estsh.Core.Model.Result;
using Estsh.Core.Models;
using Estsh.Core.Quartz.BaseService;
using Estsh.Core.Repositories;
using Estsh.Core.Util;
using Estsh.Core.Wms.IRepositories;
using Estsh.Core.Wms.Repositories;
namespace Estsh.Core.Wms.Jobs
{
///
/// WMS把库存物料的转储(从SAP的一个库存地点到另一个库存地点,或报废出库,委外发运、零星出入库)执行结果传到SAP
///
public class WMSInventoryDumpResultJob : IJobService
{
private readonly IWmsMovrResultRepository repository;
private static readonly string TABLE_NAME = "WMS_MOVR";
private static readonly string INTERFACE_NAME = "InsertInventoryDumpResultInfo";
public WMSInventoryDumpResultJob(IWmsMovrResultRepository _repository)
{
this.repository = _repository;
}
public string ExecuteService(string parameter)
{
try
{
List wmsMovrs = repository.GetRusultInfo(TABLE_NAME);
if (wmsMovrs.Count <= 0)
{
return "没有待处理的库存转储结果信息!";
}
SapInterfaceResult result = repository.doResultsPush(wmsMovrs, TABLE_NAME, INTERFACE_NAME);
return result.message;
}
catch (Exception ex)
{
LogHelper.Error("库存转储结果接口错误!" + ex);
return "库存转储结果接口错误!" + ex.Message;
}
}
}
public interface IWmsMovrResultRepository : IWmsResultRepository
{
}
public class WmsMovrResultRepository : WmsResultRepository, IWmsMovrResultRepository
{
public WmsMovrResultRepository(DapperDbContext _dapperDbContext) : base(_dapperDbContext)
{
}
}
}