From f9ce79d464e7ba8dd09a7b37bc022ab442d3594f Mon Sep 17 00:00:00 2001
From: zjh <2207896513@qq.com>
Date: 星期三, 10 十二月 2025 16:16:44 +0800
Subject: [PATCH] 看板系统新代码提交

---
 StandardPda/MES.Service/Modes/MesSimple.cs                              |   64 ++++++++
 StandardPda/MES.Service/service/BasicData/MesSimpleManager.cs           |  197 ++++++++++++++++++++++++
 StandardPda/MESApplication/Controllers/BasicData/MesSimpleController.cs |   64 ++++++++
 StandardPda/MES.Service/Modes/MesSimpleNew.cs                           |   70 ++++++++
 StandardPda/MES.Service/Dto/webApi/TreeView.cs                          |   32 ++++
 StandardPda/MES.Service/Dto/webApi/Children.cs                          |   27 +++
 6 files changed, 454 insertions(+), 0 deletions(-)

diff --git a/StandardPda/MES.Service/Dto/webApi/Children.cs b/StandardPda/MES.Service/Dto/webApi/Children.cs
new file mode 100644
index 0000000..d2931e7
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/webApi/Children.cs
@@ -0,0 +1,27 @@
+namespace MES.Service.Dto.webApi;
+
+/// <summary>
+/// 瀛愯妭鐐瑰疄浣撶被
+/// </summary>
+public class Children
+{
+    /// <summary>
+    /// ID
+    /// </summary>
+    public decimal Id { get; set; }
+
+    /// <summary>
+    /// 鏍囬
+    /// </summary>
+    public string Title { get; set; }
+
+    /// <summary>
+    /// 瀛楁鍚�
+    /// </summary>
+    public string Field { get; set; }
+
+    /// <summary>
+    /// 閾炬帴鍦板潃
+    /// </summary>
+    public string Href { get; set; }
+}
diff --git a/StandardPda/MES.Service/Dto/webApi/TreeView.cs b/StandardPda/MES.Service/Dto/webApi/TreeView.cs
new file mode 100644
index 0000000..09aad79
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/webApi/TreeView.cs
@@ -0,0 +1,32 @@
+namespace MES.Service.Dto.webApi;
+
+/// <summary>
+/// 鏍戝舰瑙嗗浘瀹炰綋绫�
+/// </summary>
+public class TreeView
+{
+    /// <summary>
+    /// ID
+    /// </summary>
+    public decimal Id { get; set; }
+
+    /// <summary>
+    /// 鏍囬
+    /// </summary>
+    public string Title { get; set; }
+
+    /// <summary>
+    /// 瀛楁鍚�
+    /// </summary>
+    public string Field { get; set; }
+
+    /// <summary>
+    /// 鏄惁灞曞紑
+    /// </summary>
+    public bool Spread { get; set; }
+
+    /// <summary>
+    /// 瀛愯妭鐐瑰垪琛�
+    /// </summary>
+    public List<Children> Children { get; set; }
+}
diff --git a/StandardPda/MES.Service/Modes/MesSimple.cs b/StandardPda/MES.Service/Modes/MesSimple.cs
new file mode 100644
index 0000000..3a9788f
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesSimple.cs
@@ -0,0 +1,64 @@
+using SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+/// 鑿滃崟缁存姢琛ㄥ疄浣撶被
+/// </summary>
+[SugarTable("MES_SIMPLE")]
+public class MesSimple
+{
+    /// <summary>
+    /// 鑷鍒�,瀵瑰簲搴忓垪MES_SIMPLE_SEQ
+    /// </summary>
+    [SugarColumn(IsPrimaryKey = true, ColumnName = "ID")]
+    public decimal Id { get; set; }
+
+    /// <summary>
+    /// 鏄惁涓烘牴鑺傜偣 0琛ㄧず涓烘牴鑺傜偣
+    /// </summary>
+    [SugarColumn(ColumnName = "IS_TOP")]
+    public decimal? IsTop { get; set; }
+
+    /// <summary>
+    /// 鐖惰妭鐐筰d
+    /// </summary>
+    [SugarColumn(ColumnName = "FID")]
+    public decimal? Fid { get; set; }
+
+    /// <summary>
+    /// 鍚嶇О
+    /// </summary>
+    [SugarColumn(ColumnName = "TITLE")]
+    public string Title { get; set; }
+
+    /// <summary>
+    /// 鑻辨枃鍚�
+    /// </summary>
+    [SugarColumn(ColumnName = "FIELD")]
+    public string Field { get; set; }
+
+    /// <summary>
+    /// 鍦板潃
+    /// </summary>
+    [SugarColumn(ColumnName = "HREF")]
+    public string Href { get; set; }
+
+    /// <summary>
+    /// 鑺傜偣鏄惁鍒濆灞曞紑 0涓轰笉灞曞紑锛�1涓哄睍寮�
+    /// </summary>
+    [SugarColumn(ColumnName = "SPREAD")]
+    public decimal? Spread { get; set; }
+
+    /// <summary>
+    /// 鑺傜偣鏄惁涓哄睍绀� 0涓哄睍绀猴紝1涓轰笉灞曠ず
+    /// </summary>
+    [SugarColumn(ColumnName = "DISABLED")]
+    public decimal? Disabled { get; set; }
+
+    /// <summary>
+    /// 杞挱鏃堕棿锛堢锛�
+    /// </summary>
+    [SugarColumn(ColumnName = "LBTIME")]
+    public decimal? Lbtime { get; set; }
+}
diff --git a/StandardPda/MES.Service/Modes/MesSimpleNew.cs b/StandardPda/MES.Service/Modes/MesSimpleNew.cs
new file mode 100644
index 0000000..6172fa6
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesSimpleNew.cs
@@ -0,0 +1,70 @@
+using SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+/// 鑿滃崟缁存姢琛紙澶嶅埗鐗堬級瀹炰綋绫�
+/// </summary>
+[SugarTable("MES_SIMPLE_NEW")]
+public class MesSimpleNew
+{
+    /// <summary>
+    /// 鑷鍒�,瀵瑰簲搴忓垪MES_SIMPLE_SEQ
+    /// </summary>
+    [SugarColumn(IsPrimaryKey = true, ColumnName = "ID")]
+    public decimal Id { get; set; }
+
+    /// <summary>
+    /// 鏄惁涓烘牴鑺傜偣 0琛ㄧず涓烘牴鑺傜偣
+    /// </summary>
+    [SugarColumn(ColumnName = "IS_TOP")]
+    public decimal? IsTop { get; set; }
+
+    /// <summary>
+    /// 鐖惰妭鐐筰d
+    /// </summary>
+    [SugarColumn(ColumnName = "FID")]
+    public decimal? Fid { get; set; }
+
+    /// <summary>
+    /// 鍚嶇О
+    /// </summary>
+    [SugarColumn(ColumnName = "TITLE")]
+    public string Title { get; set; }
+
+    /// <summary>
+    /// 鑻辨枃鍚�
+    /// </summary>
+    [SugarColumn(ColumnName = "FIELD")]
+    public string Field { get; set; }
+
+    /// <summary>
+    /// 鍦板潃
+    /// </summary>
+    [SugarColumn(ColumnName = "HREF")]
+    public string Href { get; set; }
+
+    /// <summary>
+    /// 鑺傜偣鏄惁鍒濆灞曞紑 0涓轰笉灞曞紑锛�1涓哄睍寮�
+    /// </summary>
+    [SugarColumn(ColumnName = "SPREAD")]
+    public decimal? Spread { get; set; }
+
+    /// <summary>
+    /// 鑺傜偣鏄惁涓哄睍绀� 0涓哄睍绀猴紝1涓轰笉灞曠ず
+    /// </summary>
+    [SugarColumn(ColumnName = "DISABLED")]
+    public decimal? Disabled { get; set; }
+
+    /// <summary>
+    /// 杞挱鏃堕棿锛堢锛�
+    /// </summary>
+    [SugarColumn(ColumnName = "LBTIME")]
+    public decimal? Lbtime { get; set; }
+
+    /// <summary>
+    /// 鎺掑簭瀛楁锛屽�艰秺灏忚秺闈犲墠
+    /// </summary>
+    [SugarColumn(ColumnName = "SORT_ORDER")]
+    public decimal? SortOrder { get; set; }
+}
diff --git a/StandardPda/MES.Service/service/BasicData/MesSimpleManager.cs b/StandardPda/MES.Service/service/BasicData/MesSimpleManager.cs
new file mode 100644
index 0000000..bbdf3e6
--- /dev/null
+++ b/StandardPda/MES.Service/service/BasicData/MesSimpleManager.cs
@@ -0,0 +1,197 @@
+using MES.Service.DB;
+using MES.Service.Dto.webApi;
+using MES.Service.Modes;
+
+namespace MES.Service.service.BasicData;
+
+/// <summary>
+/// MesSimple鏈嶅姟绠$悊绫�
+/// </summary>
+public class MesSimpleManager : Repository<MesSimple>
+{
+    /// <summary>
+    /// 鑾峰彇鏍戝舰缁撴瀯鏁版嵁
+    /// </summary>
+    public List<TreeView> GetTree()
+    {
+        var tree = ToTree();
+        return tree;
+    }
+
+    /// <summary>
+    /// 鑾峰彇鏍戝舰缁撴瀯鏁版嵁锛堟柊琛� MES_SIMPLE_NEW锛�
+    /// </summary>
+    public List<TreeView> GetTreeNew()
+    {
+        var tree = ToTreeNew();
+        return tree;
+    }
+
+    /// <summary>
+    /// 杞崲涓烘爲褰㈢粨鏋�
+    /// </summary>
+    public List<TreeView> ToTree()
+    {
+        var topList = GetTopList();
+        return ConvertToTreeViewList(topList);
+    }
+
+    /// <summary>
+    /// 杞崲涓烘爲褰㈢粨鏋勶紙鏂拌〃 MES_SIMPLE_NEW锛�
+    /// </summary>
+    public List<TreeView> ToTreeNew()
+    {
+        var topList = GetTopListNew();
+        return ConvertToTreeViewListNew(topList);
+    }
+
+    /// <summary>
+    /// 鑾峰彇椤剁骇鑺傜偣鍒楄〃
+    /// </summary>
+    private List<MesSimple> GetTopList()
+    {
+        return Db.Queryable<MesSimple>()
+            .Where(x => x.IsTop == 0 && x.Disabled == 0)
+            .OrderBy(x => x.Id)
+            .ToList();
+    }
+
+    /// <summary>
+    /// 鑾峰彇椤剁骇鑺傜偣鍒楄〃锛堟柊琛� MES_SIMPLE_NEW锛�
+    /// </summary>
+    private List<MesSimpleNew> GetTopListNew()
+    {
+        return Db.Queryable<MesSimpleNew>()
+            .Where(x => x.IsTop == 0 && x.Disabled == 0)
+            .OrderBy(x => new { x.SortOrder, x.Id })
+            .ToList();
+    }
+
+    /// <summary>
+    /// 灏哅esSimple鍒楄〃杞崲涓篢reeView鍒楄〃
+    /// </summary>
+    private List<TreeView> ConvertToTreeViewList(List<MesSimple> mesSimpleList)
+    {
+        var treeViews = new List<TreeView>();
+        
+        foreach (var mesSimple in mesSimpleList)
+        {
+            var treeView = ConvertToTreeView(mesSimple);
+            treeViews.Add(treeView);
+        }
+
+        return treeViews;
+    }
+
+    /// <summary>
+    /// 灏哅esSimpleNew鍒楄〃杞崲涓篢reeView鍒楄〃
+    /// </summary>
+    private List<TreeView> ConvertToTreeViewListNew(List<MesSimpleNew> mesSimpleList)
+    {
+        var treeViews = new List<TreeView>();
+        
+        foreach (var mesSimple in mesSimpleList)
+        {
+            var treeView = ConvertToTreeViewNew(mesSimple);
+            treeViews.Add(treeView);
+        }
+
+        return treeViews;
+    }
+
+    /// <summary>
+    /// 杞崲鍗曚釜MesSimple涓篢reeView
+    /// </summary>
+    private TreeView ConvertToTreeView(MesSimple mesSimple)
+    {
+        var treeView = new TreeView
+        {
+            Id = mesSimple.Id,
+            Title = mesSimple.Title,
+            Field = mesSimple.Field,
+            Spread = mesSimple.Spread.HasValue && mesSimple.Spread.Value == 1
+        };
+
+        // 鏌ヨ瀛愯妭鐐�
+        var childList = Db.Queryable<MesSimple>()
+            .Where(x => x.Disabled == 0 && x.Fid == mesSimple.Id)
+            .OrderBy(x => x.Id)
+            .ToList();
+
+        // 鏋勫缓瀛愯妭鐐瑰垪琛�
+        var childrenList = new List<Children>();
+        foreach (var child in childList)
+        {
+            var children = new Children
+            {
+                Id = child.Id,
+                Title = child.Title,
+                Field = child.Field
+            };
+
+            // 鍒ゆ柇鏄惁涓鸿疆鎾�
+            if ("杞挱".Equals(child.Href))
+            {
+                children.Href = $"bi_view.html?menuId={child.Id}&lbsj={child.Lbtime}";
+            }
+            else
+            {
+                children.Href = child.Href;
+            }
+
+            childrenList.Add(children);
+        }
+
+        treeView.Children = childrenList;
+
+        return treeView;
+    }
+
+    /// <summary>
+    /// 杞崲鍗曚釜MesSimpleNew涓篢reeView
+    /// </summary>
+    private TreeView ConvertToTreeViewNew(MesSimpleNew mesSimple)
+    {
+        var treeView = new TreeView
+        {
+            Id = mesSimple.Id,
+            Title = mesSimple.Title,
+            Field = mesSimple.Field,
+            Spread = mesSimple.Spread.HasValue && mesSimple.Spread.Value == 1
+        };
+
+        // 鏌ヨ瀛愯妭鐐�
+        var childList = Db.Queryable<MesSimpleNew>()
+            .Where(x => x.Disabled == 0 && x.Fid == mesSimple.Id)
+            .OrderBy(x => new { x.SortOrder, x.Id })
+            .ToList();
+
+        // 鏋勫缓瀛愯妭鐐瑰垪琛�
+        var childrenList = new List<Children>();
+        foreach (var child in childList)
+        {
+            var children = new Children
+            {
+                Id = child.Id,
+                Title = child.Title,
+                Field = child.Field
+            };
+
+            // 鍒ゆ柇鏄惁涓鸿疆鎾�
+            if ("杞挱".Equals(child.Href))
+            {
+                children.Href = $"bi_view.html?menuId={child.Id}&lbsj={child.Lbtime}";
+            }
+            else
+            {
+                children.Href = child.Href;
+            }
+
+            childrenList.Add(children);
+        }
+
+        treeView.Children = childrenList;
+
+        return treeView;
+    }
+}
diff --git a/StandardPda/MESApplication/Controllers/BasicData/MesSimpleController.cs b/StandardPda/MESApplication/Controllers/BasicData/MesSimpleController.cs
new file mode 100644
index 0000000..c3a38bf
--- /dev/null
+++ b/StandardPda/MESApplication/Controllers/BasicData/MesSimpleController.cs
@@ -0,0 +1,64 @@
+using System.Dynamic;
+using MES.Service.service.BasicData;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+
+namespace MESApplication.Controllers.BasicData;
+
+/// <summary>
+/// Simple鎺у埗鍣� - 鑿滃崟鏍戝舰缁撴瀯
+/// </summary>
+[ApiController]
+[Route("api/[controller]")]
+public class MesSimpleController : ControllerBase
+{
+    private readonly MesSimpleManager _manager = new();
+
+    /// <summary>
+    /// 鑾峰彇鏍戝舰缁撴瀯鏁版嵁
+    /// </summary>
+    /// <returns>鏍戝舰缁撴瀯鏁版嵁</returns>
+    [HttpPost("GetTree")]
+    public ResponseResult GetTree()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = _manager.GetTree();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    /// <summary>
+    /// 鑾峰彇鏍戝舰缁撴瀯鏁版嵁锛堟柊琛� MES_SIMPLE_NEW锛�
+    /// </summary>
+    /// <returns>鏍戝舰缁撴瀯鏁版嵁</returns>
+    [HttpPost("GetTreeNew")]
+    public ResponseResult GetTreeNew()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = _manager.GetTreeNew();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+}

--
Gitblit v1.9.3