using WIDESEA_Core.BaseRepository;
|
using WIDESEA_Core.BaseServices;
|
using WIDESEA_IRepository;
|
using WIDESEA_IServices;
|
using WIDESEA_Model.Models;
|
|
namespace WIDESEA_Services
|
{
|
public class Dt_TaskService : ServiceBase<Dt_Task, IDt_TaskRepository>, IDt_TaskService
|
{
|
private readonly IUnitOfWorkManage _unitOfWorkManage;
|
private readonly IDt_OutOrderService _outOrderService;
|
|
public Dt_TaskService(IDt_TaskRepository BaseDal,
|
IUnitOfWorkManage unitOfWorkManage,
|
IDt_OutOrderService outOrderService) : base(BaseDal)
|
{
|
_unitOfWorkManage = unitOfWorkManage;
|
_outOrderService = outOrderService;
|
}
|
|
/// <summary>
|
/// 创建一个新的任务
|
/// </summary>
|
/// <param name="model">任务模型</param>
|
/// <returns>创建的任务</returns>
|
public async Task<Dt_Task> Create(Dt_Task model)
|
{
|
return await BaseDal.Create(model);
|
}
|
|
/// <summary>
|
/// 批量创建任务
|
/// </summary>
|
/// <param name="models">任务模型列表</param>
|
/// <returns>是否创建成功</returns>
|
public async Task<bool> Create(List<Dt_Task> models)
|
{
|
return await BaseDal.Create(models);
|
}
|
|
/// <summary>
|
/// 删除一个任务
|
/// </summary>
|
/// <param name="id">任务ID</param>
|
/// <returns>是否删除成功</returns>
|
public async Task<bool> Delete(int id)
|
{
|
return await BaseDal.Delete(id);
|
}
|
|
/// <summary>
|
/// 批量删除任务
|
/// </summary>
|
/// <param name="ids">任务ID列表</param>
|
/// <returns>是否删除成功</returns>
|
public async Task<bool> Delete(List<int> ids)
|
{
|
return await BaseDal.Delete(ids);
|
}
|
|
/// <summary>
|
/// 通过ID获取任务
|
/// </summary>
|
/// <param name="id">任务ID</param>
|
/// <returns>任务模型</returns>
|
public async Task<Dt_Task> GetById(int id)
|
{
|
return await BaseDal.GetById(id);
|
}
|
|
/// <summary>
|
/// 获取所有任务列表
|
/// </summary>
|
/// <returns>任务模型列表</returns>
|
public async Task<List<Dt_Task>> GetList()
|
{
|
return await BaseDal.GetList();
|
}
|
|
/// <summary>
|
/// 根据出库订单ID获取任务列表
|
/// </summary>
|
/// <param name="outOrderId">出库订单ID</param>
|
/// <returns>任务模型列表</returns>
|
public async Task<List<Dt_Task>> GetListByOutOrder(int outOrderId)
|
{
|
return await BaseDal.GetListByOutOrder(outOrderId);
|
}
|
|
/// <summary>
|
/// 根据出库订单ID和状态获取任务列表
|
/// </summary>
|
/// <param name="outOrderId">出库订单ID</param>
|
/// <param name="status">任务状态</param>
|
/// <returns>任务模型列表</returns>
|
public async Task<List<Dt_Task>> GetListByOutOrderAndStatus(int outOrderId, int status)
|
{
|
return await BaseDal.GetListByOutOrderAndStatus(outOrderId, status);
|
}
|
|
/// <summary>
|
/// 根据状态获取任务列表
|
/// </summary>
|
/// <param name="status">任务状态</param>
|
/// <returns>任务模型列表</returns>
|
public async Task<List<Dt_Task>> GetListByStatus(int status)
|
{
|
return await BaseDal.GetListByStatus(status);
|
}
|
|
/// <summary>
|
/// 更新一个任务
|
/// </summary>
|
/// <param name="model">任务模型</param>
|
/// <returns>是否更新成功</returns>
|
public async Task<bool> Update(Dt_Task model)
|
{
|
return await BaseDal.Update(model);
|
}
|
|
/// <summary>
|
/// 批量更新任务
|
/// </summary>
|
/// <param name="models">任务模型列表</param>
|
/// <returns>是否更新成功</returns>
|
public async Task<bool> Update(List<Dt_Task> models)
|
{
|
return await BaseDal.Update(models);
|
}
|
|
/// <summary>
|
/// 检查任务是否存在
|
/// </summary>
|
/// <param name="palletCode">托盘编码</param>
|
/// <returns>任务是否存在</returns>
|
public bool IsExist(string palletCode)
|
{
|
return Db.Queryable<Dt_Task>().Any(x => x.PalletCode == palletCode);
|
}
|
|
/// <summary>
|
/// 根据货位ID获取任务
|
/// </summary>
|
/// <param name="locationID"></param>
|
/// <returns></returns>
|
public async Task<Dt_Task> GetByLocation(string locationID)
|
{
|
return await Db.Queryable<Dt_Task>().Where(x => x.SourceAddress == locationID).FirstAsync();
|
}
|
|
/// <summary>
|
/// 根据任务号获取任务
|
/// </summary>
|
/// <param name="taskNum"></param>
|
/// <returns></returns>
|
public async Task<Dt_Task> GetByTaskNum(int taskNum)
|
{
|
return await Db.Queryable<Dt_Task>().Where(x => x.TaskNum == taskNum).FirstAsync();
|
}
|
}
|
}
|