From 5e92c9a89ee74aff083d76172085e97a6bd15d55 Mon Sep 17 00:00:00 2001
From: cnf <3200815559@qq.com>
Date: 星期四, 11 九月 2025 14:10:12 +0800
Subject: [PATCH] 七喜代码

---
 WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs |   86 +++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 86 insertions(+), 0 deletions(-)

diff --git a/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs b/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
index ef3683f..9e4606c 100644
--- a/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
+++ b/WebApi/Gs.Warehouse/Services/MesDepotSectionsManager.cs
@@ -1,7 +1,11 @@
 锘縰sing Gs.Entity.BaseInfo;
 using Gs.Toolbox;
 using Gs.Toolbox.ApiCore.Abstract.Mvc;
+using Gs.Toolbox.ApiCore.Common.Mvc;
 using Gs.Toolbox.ApiCore.Group;
+using Microsoft.AspNetCore.Http;
+using System.Data;
+using System.Text;
 
 namespace Gs.Warehouse.Services;
 
@@ -9,4 +13,86 @@
 public class MesDepotSectionsManager : Repository<MesDepotSections>,
     IRomteService
 {
+    private readonly IHttpContextAccessor _http;
+
+    private readonly string _userCode, _userGuid, _orgFids;
+
+    public MesDepotSectionsManager()
+    {
+        //_http = httpContextAccessor;
+        //(_userCode, _userGuid, _orgFids) =
+        //    UtilityHelper.GetUserGuidAndOrgGuid(_http);
+    }
+
+
+    /// <summary>
+    ///     鏌ヨ鍒楄〃锛屾敮鎸佸垎椤�,鐢ㄤ簬鍚勭缁戝畾
+    /// </summary>
+    /// <param name="query"></param>
+    /// <returns></returns>
+    [RequestMethod(RequestMethods.POST)]
+    public ReturnDto<PageList<dynamic>> GetListPage2(PageQuery model)
+    {
+        var currentPage = model.currentPage;
+        var everyPageSize = model.everyPageSize;
+        var sortName = string.IsNullOrEmpty(model.sortName) ? "a.USER_NAME" : model.sortName;
+        var keyWhere = model.keyWhere;
+        string keyType = model.keyType;
+        System.Text.StringBuilder sbJoin = new StringBuilder();
+        sbJoin.Append(" from [dbo].[MES_DEPOT_SECTIONS] a ");
+        sbJoin.Append(" left join [dbo].[MES_DEPOTS] d on a.depot_guid=d.depot_id");
+        sbJoin.Append(" left join SYS_ORGANIZATION org on d.FSubsidiary=org.FID");
+        sbJoin.Append(keyWhere);
+        var sbSql = new StringBuilder();
+        sbSql.Append("  SELECT * FROM ");
+        sbSql.Append(" (SELECT N'(' +[Org].[FNumber] + N')'  +[Org].[NAME]  AS [FSubsidiary2]");
+        sbSql.Append(", a.depot_section_code as cwCode,a.depot_section_name as cwName,d.depot_name as ckName,d.depot_id as ckId,d.depot_code as ckCode ,ROW_NUMBER() OVER(ORDER BY a.depot_section_code asc) AS RowIndex ");
+        //濡傛灉鏃犲叧閿瓧锛屾棤闇�鎵炬煡缁戝畾
+        if (string.IsNullOrEmpty(keyType))
+        {
+            sbSql.Append(",cast(0 as bit) as chkInt");
+        }
+        else
+            sbSql.Append(",cast( (select count(1)  from SYS_USER_BIND bind where bind.userGuid='" + keyType + "' and bind.aboutGuid=a.depot_section_code  and bind.fType='搴撲綅')  as bit) as chkInt ");
+        sbSql.Append(sbJoin);
+        sbSql.Append(") T");
+        sbSql.Append(" where T.rowindex>(" + currentPage + "-1)*" + everyPageSize + " and  T.rowindex<=" + currentPage + "*" + everyPageSize);
+        sbSql.Append(" select count(1) as intTotal ");
+        sbSql.Append(sbJoin);
+        var dset = new DataSet();
+        try
+        {
+            dset = DbHelperSQL.Query(sbSql.ToString());
+        }
+        catch (Exception ex)
+        {
+            LogHelper.Debug(ToString(), "GetListPage error锛�" + ex.Message);
+            return ReturnDto<PageList<dynamic>>.QuickReturn(default(PageList<dynamic>), ReturnCode.Exception, "璇诲彇澶辫触");
+        }
+        var _pglist = new PageList<dynamic>
+        {
+            total = 0,
+            everyPageSize = 0,
+            pages = 0,
+            list = new List<dynamic>()
+        };
+        if (dset != null && dset.Tables.Count > 0 &&
+            dset.Tables[0].Rows.Count > 0) //鏈夋暟鎹�
+        {
+            var intTotal = int.Parse(dset.Tables[1].Rows[0]["intTotal"].ToString());
+            var pages = intTotal % everyPageSize != 0
+                ? intTotal / everyPageSize + 1
+                : intTotal / everyPageSize;
+            _pglist.total = intTotal;
+            _pglist.everyPageSize = everyPageSize;
+            _pglist.pages = pages;
+            var _dy = dset.Tables[0].TableToDynamicList();
+            _pglist.list = _dy;
+        }
+        return ReturnDto<PageList<dynamic>>.QuickReturn(_pglist,
+            ReturnCode.Success, "璇诲彇鎴愬姛");
+    }
+
+
+
 }
\ No newline at end of file

--
Gitblit v1.9.3