From e6ca4a95488e106d948fbc170993e006a4e5d55d Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期四, 05 十二月 2024 08:30:25 +0800
Subject: [PATCH] 消息中心的后台优化

---
 entity/MessageCenter.cs                     |   21 ++++++
 service/base/MessageCenterManager.cs        |   18 +++++
 Controllers/base/MessageCenterController.cs |   21 +++++++
 entity/MesQaItemsDetectDetail12.cs          |    2 
 Controllers/QC/LljController.cs             |   24 +++++++
 service/QC/LljService.cs                    |   48 ++++++++++++++--
 6 files changed, 123 insertions(+), 11 deletions(-)

diff --git a/Controllers/QC/LljController.cs b/Controllers/QC/LljController.cs
index 553b613..44dbfc6 100644
--- a/Controllers/QC/LljController.cs
+++ b/Controllers/QC/LljController.cs
@@ -35,6 +35,28 @@
         }
     }
 
+    [HttpPost("getBadge")]
+    public ResponseResult getBadge()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var  item = new LljService().getBadge();
+            var tbBillList =
+                resultInfos.tbBillList = item;
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
 
     [HttpPost("setJYItem")]
     public ResponseResult setJYItem([FromBody] JObject data)
@@ -94,7 +116,7 @@
             dynamic resultInfos = new ExpandoObject();
             var tbBillList =
                 new LljService().GetItems(releaseNo,
-                    Convert.ToDecimal(id));
+                    id);
             resultInfos.tbBillList = tbBillList;
             return new ResponseResult
             {
diff --git a/Controllers/base/MessageCenterController.cs b/Controllers/base/MessageCenterController.cs
index 46753de..e4fa012 100644
--- a/Controllers/base/MessageCenterController.cs
+++ b/Controllers/base/MessageCenterController.cs
@@ -36,6 +36,27 @@
         }
     }
 
+    //getBadge
+    [HttpPost("getBadge")]
+    public ResponseResult getBadge()
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            resultInfos.tbBillList = m.getBadge();
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
     //Resend
     [HttpPost("Resend")]
     public ResponseResult Resend(MessageCenter data)
diff --git a/entity/MesQaItemsDetectDetail12.cs b/entity/MesQaItemsDetectDetail12.cs
index e86d1b9..f585a8f 100644
--- a/entity/MesQaItemsDetectDetail12.cs
+++ b/entity/MesQaItemsDetectDetail12.cs
@@ -65,4 +65,6 @@
     public string? CreateBy { get; set; }
 
     [SugarColumn(IsIgnore = true)] public int? count { get; set; }
+
+    [SugarColumn(IsIgnore = true)] public bool? isNumber { get; set; }
 }
\ No newline at end of file
diff --git a/entity/MessageCenter.cs b/entity/MessageCenter.cs
index 136d317..6ad84f7 100644
--- a/entity/MessageCenter.cs
+++ b/entity/MessageCenter.cs
@@ -15,98 +15,115 @@
     public Guid Guid { get; set; }
 
     /// <summary>
+    ///     琛ㄥ悕/瑙嗗浘鍚�
     /// </summary>
     [SugarColumn(ColumnName = "table_name")]
     public string? TableName { get; set; }
 
     /// <summary>
+    ///     璇锋眰鍦板潃
     /// </summary>
     [SugarColumn(ColumnName = "url")]
     public string? Url { get; set; }
 
     /// <summary>
+    ///     璇锋眰鏂瑰紡
     /// </summary>
     [SugarColumn(ColumnName = "method")]
     public string? Method { get; set; }
 
     /// <summary>
+    ///     鏄惁鎴愬姛  0琛ㄧず澶辫触  1 琛ㄧず鎴愬姛
     /// </summary>
     [SugarColumn(ColumnName = "result")]
     public int? Result { get; set; }
 
     /// <summary>
+    ///     杩斿洖鐨凧SON
     /// </summary>
     [SugarColumn(ColumnName = "result_data")]
     public string? ResultData { get; set; }
 
     /// <summary>
+    ///     鐘舵��  0琛ㄧず鏈帹閫�  1 琛ㄧず宸叉帹閫�
     /// </summary>
     [SugarColumn(ColumnName = "status")]
     public int? Status { get; set; }
 
     /// <summary>
+    ///     鍒涘缓浜�
     /// </summary>
     [SugarColumn(ColumnName = "create_by")]
     public string? CreateBy { get; set; }
 
     /// <summary>
+    ///     鍒涘缓鏃堕棿
     /// </summary>
     [SugarColumn(ColumnName = "create_date")]
     public string? CreateDate { get; set; }
 
     /// <summary>
+    ///     涓氬姟鏍囬
     /// </summary>
     [SugarColumn(ColumnName = "title")]
     public string? Title { get; set; }
 
     /// <summary>
+    ///     椤甸潰鍚嶇О
     /// </summary>
     [SugarColumn(ColumnName = "page_name")]
     public string? PageName { get; set; }
 
     /// <summary>
-    ///     榛樿鍊�: ((0))
+    ///     榛樿鍊�: ((0)) 鏄惁澶勭悊锛�0琛ㄧず鏈鐞� 1琛ㄧず宸插鐞�
     /// </summary>
     [SugarColumn(ColumnName = "deal_with")]
     public int? DealWith { get; set; }
 
     /// <summary>
+    ///     鎵规
     /// </summary>
     [SugarColumn(ColumnName = "pid")]
     public Guid? Pid { get; set; }
 
     /// <summary>
-    ///     榛樿鍊�: ((1))
+    ///  鎵ц椤哄簭   榛樿鍊�: ((1)) 
     /// </summary>
     [SugarColumn(ColumnName = "seq")]
     public int? Seq { get; set; }
 
     /// <summary>
+    /// 椤甸潰璺緞
     /// </summary>
     [SugarColumn(ColumnName = "route")]
     public string? Route { get; set; }
 
     /// <summary>
+    ///     璇锋眰鍐呭
     /// </summary>
     [SugarColumn(ColumnName = "data")]
     public string? Data { get; set; }
 
     /// <summary>
+    /// 鍙傛暟绫诲瀷
     /// </summary>
     [SugarColumn(ColumnName = "content_type")]
     public string? ContentType { get; set; }
 
     /// <summary>
+    /// 鏄惁鏄秷鎭�  0涓烘帹閫佸け璐� 1涓烘秷鎭�,榛樿涓�0
     /// </summary>
     [SugarColumn(ColumnName = "is_message")]
     public int? IsMessage { get; set; }
 
     /// <summary>
+    /// 鏈�鍚庝竴娆′慨鏀规椂闂�
     /// </summary>
     [SugarColumn(ColumnName = "update_date")]
     public string? UpdateDate { get; set; }
 
     /// <summary>
+    /// 鏈�鍚庝竴娆′慨鏀逛汉
     /// </summary>
     [SugarColumn(ColumnName = "update_by")]
     public string? UpdateBy { get; set; }
diff --git a/service/QC/LljService.cs b/service/QC/LljService.cs
index 64962c0..a38eb54 100644
--- a/service/QC/LljService.cs
+++ b/service/QC/LljService.cs
@@ -26,11 +26,11 @@
             .WhereIF(
                 StringUtil.IsNotNullOrEmpty(queryObj.result) &&
                 "鏈畬鎴�".Equals(queryObj.result),
-                a => a.FcheckResu == null)
+                a => (a.FcheckResu ?? "") == "")
             .WhereIF(
                 StringUtil.IsNotNullOrEmpty(queryObj.result) &&
                 !"鏈畬鎴�".Equals(queryObj.result),
-                a => a.FcheckResu != null)
+                a => (a.FcheckResu ?? "") != "")
             .WhereIF(UtilityHelper.CheckGuid(parsedGuid),
                 a => a.guid == parsedGuid)
             .OrderByDescending(a => a.CreateDate)
@@ -144,7 +144,7 @@
         {
             foreach (var item in items) item.ReleaseNo = rkjDto.releaseNo;
 
-            return db.Insertable(items).ExecuteCommand();
+            return db.Insertable(items).IgnoreColumns(true).ExecuteCommand();
         });
 
         rkjDto.items = GetItems(rkjDto.releaseNo, null);
@@ -186,16 +186,27 @@
     }
 
     public List<MesQaItemsDetectDetail5> GetItems(string? releaseNo,
-        decimal? id)
+        string? id)
     {
+        var parsedGuid = Guid.Empty;
+
+        if (id != null)
+        {
+            var isValid = Guid.TryParse(id, out parsedGuid);
+            if (!isValid)
+                throw new ApplicationException("GUID杞崲閿欒");
+        }
+
         return Db.Queryable<MesQaItemsDetectDetail5, MesQaItemsDetectDetail12>(
                 (a, b) =>
                     new JoinQueryInfos(JoinType.Left, a.Guid == b.ParentGuid))
             .Where((a, b) => a.ReleaseNo == releaseNo)
-            // .WhereIF(id > 0, (a, b) => a.Id == id)
+            .WhereIF(UtilityHelper.CheckGuid(parsedGuid),
+                (a, b) => a.Guid == parsedGuid)
             .GroupBy((a, b) => new
             {
                 a.Guid,
+                a.ParentGuid,
                 a.ReleaseNo,
                 a.FacLevel,
                 a.FcheckItem,
@@ -212,6 +223,7 @@
             }).Select((a, b) => new MesQaItemsDetectDetail5
             {
                 Guid = a.Guid,
+                ParentGuid = a.ParentGuid,
                 ReleaseNo = a.ReleaseNo,
                 CheckQyt = a.CheckQyt,
                 FacLevel = a.FacLevel,
@@ -240,6 +252,7 @@
             {
                 var item = new MesQaItemsDetectDetail12();
                 item.ParentGuid = detail.ParentGuid;
+                item.GrandpaGuid = detail.GrandpaGuid;
                 item.Fstand = detail.Fstand;
                 item.FcheckResu = detail.FcheckResu;
                 item.CreateBy = detail.LastupdateBy;
@@ -247,7 +260,7 @@
                 result.Add(item);
             }
 
-            return db.Insertable(result).ExecuteCommand();
+            return db.Insertable(result).IgnoreColumns(true).ExecuteCommand();
         });
 
         detail.CreateBy = detail.LastupdateBy;
@@ -430,6 +443,18 @@
         rkjDto.ItemXj02s = Db.Queryable<MesQaItemsDetectDetail12>()
             .Where(s => s.ParentGuid == parsedGuid)
             .ToList();
+
+        foreach (var mesQaItemsDetectDetail12 in rkjDto.ItemXj02s)
+        {
+            //this.formData.fupAllow && this.formData.fdownAllow && this.formData.fstand
+            mesQaItemsDetectDetail12.isNumber = true;
+            if (qsItemOqcItem.FupAllow.IsNullOrEmpty()
+                && qsItemOqcItem.FdownAllow.IsNullOrEmpty()
+                && qsItemOqcItem.Fstand == null)
+            {
+                mesQaItemsDetectDetail12.isNumber = false;
+            }
+        }
 
         return rkjDto;
     }
@@ -671,4 +696,15 @@
 
         return com > 0;
     }
+
+    public int[] getBadge()
+    {
+        var isNullCount = Db.Queryable<MesQaItemsDetect01>()
+            .Where(a => (a.FcheckResu ?? "") == "").Count();
+
+        var isNotNullCount = Db.Queryable<MesQaItemsDetect01>()
+            .Where(a => (a.FcheckResu ?? "") != "").Count();
+
+        return [isNullCount, isNotNullCount];
+    }
 }
\ No newline at end of file
diff --git a/service/base/MessageCenterManager.cs b/service/base/MessageCenterManager.cs
index 73d2ab6..7651a26 100644
--- a/service/base/MessageCenterManager.cs
+++ b/service/base/MessageCenterManager.cs
@@ -13,8 +13,9 @@
     {
         var totalCount = 0;
         var messageCenters = Db.Queryable<MessageCenter>()
-            .Where(s => s.Result == 0
-                        && s.Seq == 1 && s.Title != null)
+            .Where(s => s.Result == query.DealWith
+                        && s.Seq == 1 && s.Title != null
+                        && s.DealWith == query.DealWith)
             .OrderByDescending(s => s.CreateDate)
             .ToPageList(query.PageIndex, query.Limit, ref totalCount);
 
@@ -104,4 +105,17 @@
                 .ExecuteCommand();
         });
     }
+
+    public int[] getBadge()
+    {
+        var count = Db.Queryable<MessageCenter>()
+            .Where(s => s.Result == 0 && s.Status == 1
+                        && s.Seq == 1 && s.Title != null).Count();
+        
+        var count1 = Db.Queryable<MessageCenter>()
+            .Where(s => s.Result == 1 && s.Status == 1
+                                      && s.Seq == 1 && s.Title != null).Count();
+        
+        return [count,count1];
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3