From c53a461aef16902ca78cdb7bd0c62305e2fee809 Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期二, 29 七月 2025 19:23:04 +0800
Subject: [PATCH] Update OQC search API functionality

---
 MES.Service/service/QC/BaseService.cs |   50 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/MES.Service/service/QC/BaseService.cs b/MES.Service/service/QC/BaseService.cs
index a827168..a1e2489 100644
--- a/MES.Service/service/QC/BaseService.cs
+++ b/MES.Service/service/QC/BaseService.cs
@@ -1,5 +1,6 @@
 锘縰sing MES.Service.DB;
 using MES.Service.Modes;
+using SqlSugar;
 
 namespace MES.Service.service.QC;
 
@@ -49,4 +50,53 @@
         });
         return mesQsImages;
     }
+    
+    public List<MesQsImage> getLljAllImgByFid(string id, string qsType)
+    {
+        var db = SqlSugarHelper.GetInstance();
+        var mesQsImages = db
+            .Queryable<MesQsImage, MesQaItemsDetectDetail5>((a, b) =>
+                new JoinQueryInfos(JoinType.Left, a.Fid == b.Id))
+            .Where((a, b) => b.ReleaseNo == id && a.Id != null).ToList();
+        mesQsImages.ForEach(s =>
+        {
+            if (s.ImageData is { Length: > 0 })
+                s.base64Date = Convert.ToBase64String(s.ImageData);
+        });
+        return mesQsImages;
+    }
+    
+    public List<MesQsImage> getByOqcFid(decimal id, string qsType)
+    {
+        var db = SqlSugarHelper.GetInstance();
+        var mesQsImages = db.Queryable<MesQsImage>()
+            .Where(s => s.Fid == id && s.QsType == qsType).ToList();
+
+        var mesOqcItemsDetect02 = db.Queryable<MesOqcItemsDetect02>()
+            .Where(s=>s.Id == id).First();
+        
+        if (mesOqcItemsDetect02?.SaleOrderNo != null)
+        {
+            var baseOrderNo = mesOqcItemsDetect02.SaleOrderNo.Split('-')[0];
+            
+            var additionalImages = db.Queryable<MesQsImage>()
+                .Where(s => s.OrderNo == baseOrderNo && s.QsType == qsType)
+                .Where(s => !mesQsImages.Any(existing => existing.Id == s.Id))
+                .ToList();
+            
+            mesQsImages.AddRange(additionalImages);
+            
+            if (mesQsImages.Count > 9)
+            {
+                mesQsImages = mesQsImages.Take(9).ToList();
+            }
+        }
+        
+        mesQsImages.ForEach(s =>
+        {
+            if (s.ImageData is { Length: > 0 })
+                s.base64Date = Convert.ToBase64String(s.ImageData);
+        });
+        return mesQsImages;
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3