From fba48d2d676cd9b6d493163aef9d87f6e5090aee Mon Sep 17 00:00:00 2001
From: 如洲 陈 <1278080563@qq.com>
Date: 星期五, 12 九月 2025 19:02:00 +0800
Subject: [PATCH] 出库检和退货检验
---
MES.Service/service/QC/BaseService.cs | 106 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 106 insertions(+), 0 deletions(-)
diff --git a/MES.Service/service/QC/BaseService.cs b/MES.Service/service/QC/BaseService.cs
index 10bef34..15a11fd 100644
--- a/MES.Service/service/QC/BaseService.cs
+++ b/MES.Service/service/QC/BaseService.cs
@@ -22,8 +22,23 @@
mesQsImages.ForEach(s =>
{
if (!string.IsNullOrEmpty(s.base64Date))
+ {
//灏哹ase64杞崲涓篵yte鏁扮粍
s.ImageData = Convert.FromBase64String(s.base64Date);
+
+ // 缁熶竴鏂囦欢鍚嶆牸寮忥細濡傛灉涓虹┖鎴朥UID鏍煎紡锛屽垯鐢熸垚鏃堕棿鎴虫牸寮忥紝鍚庣紑涓簆ng
+ if (string.IsNullOrEmpty(s.Picturename) ||
+ (s.Picturename.Length > 30 && !s.Picturename.Contains(".")))
+ {
+ s.Picturename = $"{DateTimeOffset.Now.ToUnixTimeMilliseconds()}.png";
+ }
+ else if (s.Picturename.Contains("."))
+ {
+ // 濡傛灉鏂囦欢鍚嶅寘鍚墿灞曞悕锛岀粺涓�鏀逛负png鍚庣紑
+ var nameWithoutExt = s.Picturename.Split('.')[0];
+ s.Picturename = $"{nameWithoutExt}.png";
+ }
+ }
});
return SqlSugarHelper.UseTransactionWithOracle(db =>
@@ -51,4 +66,95 @@
}
+ 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;
+ }
+
+ /// <summary>
+ /// 鑾峰彇THJ閫�璐ф楠岀殑鍥剧墖锛屾敮鎸佹牴鎹��璐у崟鍙锋煡鎵鹃澶栧浘鐗�
+ /// </summary>
+ public List<MesQsImage> getByThjFid(decimal id, string qsType)
+ {
+ var db = SqlSugarHelper.GetInstance();
+ var mesQsImages = db.Queryable<MesQsImage>()
+ .Where(s => s.Fid == id && s.QsType == qsType).ToList();
+
+ // 鑾峰彇THJ涓昏〃淇℃伅
+ var qsQaItemThj = db.Queryable<QsQaItemThj>()
+ .Where(s => s.Id == id).First();
+
+ if (qsQaItemThj?.BillNo != null)
+ {
+ // 鏍规嵁閫�璐у崟鍙锋煡鎵鹃澶栫殑鍥剧墖
+ var additionalImages = db.Queryable<MesQsImage>()
+ .Where(s => s.OrderNo == qsQaItemThj.BillNo && s.QsType == qsType)
+ .Where(s => !mesQsImages.Any(existing => existing.Id == s.Id))
+ .ToList();
+
+ mesQsImages.AddRange(additionalImages);
+
+ // 闄愬埗鏈�澶�9寮犲浘鐗�
+ if (mesQsImages.Count > 9)
+ {
+ mesQsImages = mesQsImages.Take(9).ToList();
+ }
+ }
+
+ mesQsImages.ForEach(s =>
+ {
+ if (s.ImageData is { Length: > 0 })
+ {
+ s.base64Date = Convert.ToBase64String(s.ImageData);
+
+ // 纭繚鏂囦欢鍚嶆牸寮忔纭紝缁熶竴浣跨敤png鍚庣紑
+ if (string.IsNullOrEmpty(s.Picturename))
+ {
+ s.Picturename = $"{DateTimeOffset.Now.ToUnixTimeMilliseconds()}.png";
+ }
+ else if (s.Picturename.Contains("."))
+ {
+ // 濡傛灉鏂囦欢鍚嶅寘鍚墿灞曞悕锛岀粺涓�鏀逛负png鍚庣紑
+ var nameWithoutExt = s.Picturename.Split('.')[0];
+ s.Picturename = $"{nameWithoutExt}.png";
+ }
+ }
+ else
+ {
+ // 濡傛灉娌℃湁鍥剧墖鏁版嵁锛岃缃┖鐨刡ase64
+ s.base64Date = string.Empty;
+ }
+ });
+ return mesQsImages;
+ }
+
}
\ No newline at end of file
--
Gitblit v1.9.3