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) { } } }