using Estsh.Core.Models;
using Estsh.Core.Quartz.BaseService;
using Estsh.Core.Util;
using Estsh.Core.Wms.IRepositories;
namespace Estsh.Core.Wms.Jobs
{
///
///
/// 安全库存拉动
///
public class SafetyPullJob : IJobService
{
private readonly IPullingRepository pullRepository;
private readonly IMoveOrderRepository moveOrderRepository;
private readonly IStockRepository stockRepository;
public SafetyPullJob(IPullingRepository _pullGroupRepository,
IMoveOrderRepository _moveOrderRepository,
IStockRepository _stockRepository)
{
this.pullRepository = _pullGroupRepository;
this.moveOrderRepository = _moveOrderRepository;
this.stockRepository = _stockRepository;
}
public string ExecuteService(string parameter)
{
try
{
List wmsMoveHeaders = pullRepository.GetSmallPiecePullRecovery();
if (wmsMoveHeaders.Count > 0)
{
pullRepository.UpdateSmallPiecePullRecovery(wmsMoveHeaders);
}
//将异常订单,转成正常订单
List MoveHeaders = pullRepository.GetMoveHeaderWrong0();
moveOrderRepository.ChangeSafety(MoveHeaders);
List pullDetails = pullRepository.SafetyPullList();
if (pullDetails.Count <= 0)
{
return "无需要生成安全库存的零件列表!";
}
moveOrderRepository.CreateSafetyPullOrder("0", pullDetails);
return "处理完成!";
}
catch (Exception ex)
{
LogHelper.Error("处理异常!" + ex);
return "处理异常!" + ex.Message;
}
}
}
}