#region << 版 本 注 释 >>
|
/*----------------------------------------------------------------
|
* 命名空间:WIDESEAWCS_TaskInfoRepository
|
* 创建者:胡童庆
|
* 创建时间:2024/8/2 16:13:36
|
* 版本:V1.0.0
|
* 描述:
|
*
|
* ----------------------------------------------------------------
|
* 修改人:
|
* 修改时间:
|
* 版本:V1.0.1
|
* 修改说明:
|
*
|
*----------------------------------------------------------------*/
|
#endregion << 版 本 注 释 >>
|
|
using System;
|
using System.Collections.Generic;
|
using System.Linq;
|
using System.Text;
|
using System.Threading.Tasks;
|
using WIDESEA_Core.Attributes;
|
using WIDESEA_Core.BaseRepository;
|
using WIDESEA_Core.Helper;
|
using WIDESEA_ITaskInfoRepository;
|
using WIDESEA_Model.Models;
|
|
namespace WIDESEA_TaskInfoRepository
|
{
|
public class TaskRepository : RepositoryBase<Dt_Task>, ITaskRepository
|
{
|
public TaskRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage)
|
{
|
}
|
|
public int GetTaskNum(string sequenceName)
|
{
|
int taskNum = Db.Ado.GetScalar($"SELECT NEXT VALUE FOR {sequenceName}").ObjToInt();
|
if (taskNum >= 99999999) Db.Ado.GetScalar($"ALTER SEQUENCE {sequenceName} RESTART WITH {1}");
|
return taskNum;
|
}
|
|
public override int AddData(Dt_Task entity)
|
{
|
return base.AddData(entity);
|
}
|
|
public override int AddData(List<Dt_Task> listEntity)
|
{
|
if (listEntity.GroupBy(x => x.PalletCode).Select(x => x.Count()).Any(x => x > 1))
|
{
|
throw new Exception("任务数组数据托盘号重复");
|
}
|
|
if (QueryFirst(x => listEntity.Select(v => v.PalletCode).Contains(x.PalletCode)) != null)
|
{
|
throw new Exception("有重复任务");
|
}
|
|
return base.AddData(listEntity);
|
}
|
}
|
}
|