From 88602280d3b1146f03655dc023918c8104919379 Mon Sep 17 00:00:00 2001
From: schangxiang@126.com <schangxiang@126.com>
Date: 周二, 20 5月 2025 16:26:17 +0800
Subject: [PATCH] 22
---
HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs | 60 +++++++++++++++++++++++++++++++++++++++++++++++-------------
1 files changed, 47 insertions(+), 13 deletions(-)
diff --git a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs
index 673d314..a0ebc7b 100644
--- a/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs
+++ b/HIAWms/server/src/CMS.Plugin.HIAWms.EntityFrameworkCore/Repositories/EfCoreWmsTaskRepository.cs
@@ -11,7 +11,7 @@
namespace CMS.Plugin.HIAWms.EntityFrameworkCore.Repositories;
/// <summary>
-/// Wms浠诲姟绠$悊琛ㄤ粨鍌ㄥ疄鐜�
+/// Wms浠诲姟绠$悊浠撳偍瀹炵幇
/// </summary>
public class EfCoreWmsTaskRepository : EfCoreRepository<ICMSPluginDbContext, WmsTask, Guid>, IWmsTaskRepository
{
@@ -25,33 +25,33 @@
}
/// <summary>
- /// 鎸夌収鍚嶇О鏌ユ壘Wms浠诲姟绠$悊琛�
+ /// 鎸夌収鍚嶇О鏌ユ壘Wms浠诲姟绠$悊
/// </summary>
- /// <param name="name"></param>
+ /// <param name="taskNo"></param>
/// <param name="cancellationToken"></param>
/// <returns></returns>
- public virtual async Task<WmsTask> FindByNameAsync(string name, CancellationToken cancellationToken = default)
+ public virtual async Task<WmsTask> FindByNameAsync(string taskNo, CancellationToken cancellationToken = default)
{
return await (await GetDbSetAsync())
.IncludeDetails()
.Where(x => !x.IsDeleted)
.OrderBy(t => t.Sort)
- .FirstOrDefaultAsync(t => t.TaskNo == name, GetCancellationToken(cancellationToken));
+ .FirstOrDefaultAsync(t => t.TaskNo == taskNo, GetCancellationToken(cancellationToken));
}
/// <summary>
- /// 楠岃瘉鍚嶇О鏄惁瀛樺湪Wms浠诲姟绠$悊琛�
+ /// 楠岃瘉鍚嶇О鏄惁瀛樺湪Wms浠诲姟绠$悊
/// </summary>
- /// <param name="name">鏍¢獙鍊�</param>
+ /// <param name="taskNo">鏍¢獙鍊�</param>
/// <param name="id"></param>
/// <returns></returns>
- public async Task<bool> NameExistAsync(string name, Guid? id = null)
+ public async Task<bool> NameExistAsync(string taskNo, Guid? id = null)
{
- return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.TaskNo == name);
+ return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.TaskNo == taskNo);
}
/// <summary>
- /// 鑾峰彇鏈�澶ф帓搴廤ms浠诲姟绠$悊琛�
+ /// 鑾峰彇鏈�澶ф帓搴廤ms浠诲姟绠$悊
/// </summary>
/// <returns></returns>
public async Task<int> GetMaxSortAsync()
@@ -69,7 +69,7 @@
}
/// <summary>
- /// 鑾峰彇鍒嗛〉鍒楄〃Wms浠诲姟绠$悊琛�
+ /// 鑾峰彇鍒嗛〉鍒楄〃Wms浠诲姟绠$悊
/// </summary>
/// <param name="whereConditions"></param>
/// <param name="sorting"></param>
@@ -84,13 +84,13 @@
.IncludeDetails(includeDetails)
.WhereIf(whereConditions != null, whereConditions.data)
.Where(x => !x.IsDeleted)
- .OrderBy(sorting.IsNullOrEmpty() ? nameof(WmsTask.Sort) : sorting)
+ .OrderByDescending(x=>x.CreationTime)
.PageBy(skipCount, maxResultCount)
.ToListAsync(GetCancellationToken(cancellationToken));
}
/// <summary>
- /// 鑾峰彇鎬绘暟Wms浠诲姟绠$悊琛�
+ /// 鑾峰彇鎬绘暟Wms浠诲姟绠$悊
/// </summary>
/// <param name="whereConditions"></param>
/// <param name="cancellationToken"></param>
@@ -110,4 +110,38 @@
return (await GetQueryableAsync())
.Where(x => !x.IsDeleted).IncludeDetails();
}
+
+ /// <summary>
+ /// 鏍规嵁鍘熸枡鏍囪瘑鏌ヨ浠诲姟
+ /// </summary>
+ /// <param name="dataIdentifier"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ public async Task<WmsTask> QueryWmsTaskByDataIdentifierAasync(string dataIdentifier, CancellationToken cancellationToken = default)
+ {
+ return await (await GetDbSetAsync())
+ .IncludeDetails()
+ .Where(x => !x.IsDeleted)
+ .OrderByDescending(x=>x.CreationTime)
+ .FirstOrDefaultAsync(t => t.MutableParam2 == dataIdentifier, GetCancellationToken(cancellationToken));
+ }
+
+ /// <summary>
+ /// 鑾峰彇浠诲姟鍒楄〃
+ /// </summary>
+ /// <param name="whereConditions"></param>
+ /// <param name="sorting"></param>
+ /// <param name="includeDetails"></param>
+ /// <param name="cancellationToken"></param>
+ /// <returns></returns>
+ public async Task<List<WmsTask>> GetTaskListAsync(FunReturnResultModel<Expression<Func<WmsTask, bool>>> whereConditions, string sorting = null, bool includeDetails = false, CancellationToken cancellationToken = default)
+ {
+ return await (await GetDbSetAsync())
+ .IncludeDetails(includeDetails)
+ .WhereIf(whereConditions != null, whereConditions.data)
+ .Where(x => !x.IsDeleted)
+ .OrderBy(x => x.TaskType)
+ .ThenBy(x=>x.TaskLevel)
+ .ToListAsync(GetCancellationToken(cancellationToken));
+ }
}
--
Gitblit v1.9.3