From 4c1e15e60dc134a5351a764dcfb49ad9d0d7f879 Mon Sep 17 00:00:00 2001
From: cnf <3283105747@qq.com>
Date: 星期五, 12 十二月 2025 10:44:17 +0800
Subject: [PATCH] 读取仓管员
---
WebApi/Gs.Warehouse/Services/MesDepotsManager.cs | 75 +++++++++++++++++++++++++++++++++++++
1 files changed, 75 insertions(+), 0 deletions(-)
diff --git a/WebApi/Gs.Warehouse/Services/MesDepotsManager.cs b/WebApi/Gs.Warehouse/Services/MesDepotsManager.cs
index f6f9e2f..3a50b6a 100644
--- a/WebApi/Gs.Warehouse/Services/MesDepotsManager.cs
+++ b/WebApi/Gs.Warehouse/Services/MesDepotsManager.cs
@@ -396,4 +396,79 @@
}
return j;
}
+
+ /// <summary>
+ /// 鏌ヨ鍒楄〃锛屾敮鎸佸垎椤碉紙淇濇寔杈撳嚭鍙傛暟鏂瑰紡锛�
+ /// </summary>
+ [RequestMethod(RequestMethods.POST)]
+ public ReturnDto<PageList<MesStaff>> GetListCgy(PageQuery query)
+ {
+ var pageList = new PageList<MesStaff>();
+ try
+ {
+ // 妫�鏌ュ熀鏈璞�
+ if (query == null) throw new ArgumentNullException(nameof(query));
+ if (Db?.Ado == null) throw new InvalidOperationException("鏁版嵁搴撹繛鎺ヤ笉鍙敤");
+
+ // 瀛樺偍杩囩▼鍙傛暟 - 娉ㄦ剰鐜板湪鏈夎緭鍑哄弬鏁颁簡
+ var parameters = new[]
+ {
+ new SugarParameter("@PageIndex", query.currentPage),
+ new SugarParameter("@PageSize", query.everyPageSize),
+ new SugarParameter("@SortField", string.IsNullOrEmpty(query.sortName) ? "staff_no" : query.sortName),
+ new SugarParameter("@SortOrder", string.IsNullOrEmpty(query.sortOrder) ? "DESC" : query.sortOrder),
+ new SugarParameter("@WhereCondition", query.keyWhere ?? ""),
+ new SugarParameter("@Fid", DBNull.Value),
+ new SugarParameter("@P1", DBNull.Value),
+ new SugarParameter("@P2", DBNull.Value),
+ new SugarParameter("@P3", DBNull.Value),
+ new SugarParameter("@P4", DBNull.Value),
+ // 娉ㄦ剰锛氳緭鍑哄弬鏁板繀椤绘寚瀹� ParameterDirection.Output
+ new SugarParameter("@outTotalCount", 0, System.Data.DbType.Int32, ParameterDirection.Output)
+ };
+
+ // 娉ㄦ剰锛氳皟鐢ㄨ鍙ュ繀椤诲寘鍚� OUTPUT 鍏抽敭瀛�
+ var itemsList = Db.Ado.SqlQuery<MesStaff>(
+ "EXEC prc_cgy_lst @PageIndex, @PageSize, @SortField, @SortOrder, @WhereCondition, @Fid, @P1, @P2, @P3, @P4, @outTotalCount OUTPUT",
+ parameters
+ );
+
+ // 鑾峰彇杈撳嚭鍙傛暟 - 绛夊緟鎵ц瀹屾垚鍚庡啀鑾峰彇
+ var totalCountParam = parameters.FirstOrDefault(p => p.ParameterName == "@outTotalCount");
+ if (totalCountParam != null && totalCountParam.Value != null)
+ {
+ try
+ {
+ // 纭繚鍊兼槸鏁存暟绫诲瀷
+ var totalCount = Convert.ToInt32(totalCountParam.Value);
+ pageList = new PageList<MesStaff>(itemsList ?? new List<MesStaff>(), totalCount, query.everyPageSize);
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Success, "璇诲彇鎴愬姛");
+ }
+ catch (FormatException)
+ {
+ // 濡傛灉杞崲澶辫触锛屼娇鐢ㄩ粯璁ゅ��
+ pageList = new PageList<MesStaff>(itemsList ?? new List<MesStaff>(), itemsList?.Count ?? 0, query.everyPageSize);
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Success, "璇诲彇鎴愬姛锛堟�绘暟鑾峰彇澶辫触锛�");
+ }
+ }
+ else
+ {
+ // 杈撳嚭鍙傛暟涓嶅瓨鍦紝浣跨敤鍒楄〃闀垮害
+ pageList = new PageList<MesStaff>(itemsList ?? new List<MesStaff>(), itemsList?.Count ?? 0, query.everyPageSize);
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Success, "璇诲彇鎴愬姛");
+ }
+ }
+ catch (ArgumentNullException argEx)
+ {
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Default, $"鍙傛暟閿欒: {argEx.Message}");
+ }
+ catch (InvalidOperationException opEx)
+ {
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Default, $"鎿嶄綔閿欒: {opEx.Message}");
+ }
+ catch (Exception ex)
+ {
+ return ReturnDto<PageList<MesStaff>>.QuickReturn(pageList, ReturnCode.Default, $"绯荤粺閿欒: {ex.Message}");
+ }
+ }
}
\ No newline at end of file
--
Gitblit v1.9.3