#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, ITaskRepository { public TaskRepository(IUnitOfWorkManage unitOfWorkManage) : base(unitOfWorkManage) { } static object lock_taskNum = new object(); public int GetTaskNum(string sequenceName) { lock (lock_taskNum) { return Db.Ado.GetScalar($"SELECT NEXT VALUE FOR {sequenceName}").ObjToInt(); } } public override int AddData(Dt_Task entity) { return base.AddData(entity); } public override int AddData(List 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); } } }