From 467eae029f6ce0377c59e06eca0e328211c16c4b Mon Sep 17 00:00:00 2001
From: 啊鑫 <t2856754968@163.com>
Date: 星期三, 19 二月 2025 21:06:11 +0800
Subject: [PATCH] 来料检验

---
 StandardPda/MES.Service/service/QC/BaseService.cs           |   53 +++++++++++++
 StandardPda/MES.Service/Dto/service/ImageDataDto.cs         |    8 ++
 StandardPda/MES.Service/Modes/MesQsImage.cs                 |   55 +++++++++++++
 StandardPda/MESApplication/Controllers/QC/BaseController.cs |   84 +++++++++++++++++++++
 StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs   |   18 ++--
 5 files changed, 209 insertions(+), 9 deletions(-)

diff --git a/StandardPda/MES.Service/Dto/service/ImageDataDto.cs b/StandardPda/MES.Service/Dto/service/ImageDataDto.cs
new file mode 100644
index 0000000..23b46fe
--- /dev/null
+++ b/StandardPda/MES.Service/Dto/service/ImageDataDto.cs
@@ -0,0 +1,8 @@
+锘縰sing MES.Service.Modes;
+
+namespace MES.Service.Dto.service;
+
+public class ImageDataDto
+{
+    public List<MesQsImage>? entity;
+}
\ No newline at end of file
diff --git a/StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs b/StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs
index 479f7f7..e1ea363 100644
--- a/StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs
+++ b/StandardPda/MES.Service/Modes/MesQaItemsDetectDetail12.cs
@@ -21,25 +21,25 @@
         /// 妫�楠岀粨鏋� 
         ///</summary>
         [SugarColumn(ColumnName = "FCHECK_RESU")]
-        public string FcheckResu { get; set; }
+        public string? FcheckResu { get; set; }
 
         /// <summary>
         /// 妫�楠岄」鐩� 
         ///</summary>
         [SugarColumn(ColumnName = "FCHECK_ITEM")]
-        public string FcheckItem { get; set; }
+        public string? FcheckItem { get; set; }
 
         /// <summary>
         /// 鐗╂枡鏉$爜 
         ///</summary>
         [SugarColumn(ColumnName = "ITEM_BARCODE")]
-        public string ItemBarcode { get; set; }
+        public string? ItemBarcode { get; set; }
 
         /// <summary>
         ///  
         ///</summary>
         [SugarColumn(ColumnName = "RELEASE_NO")]
-        public string ReleaseNo { get; set; }
+        public string? ReleaseNo { get; set; }
 
         /// <summary>
         ///  
@@ -57,31 +57,31 @@
         ///  
         ///</summary>
         [SugarColumn(ColumnName = "COMPANY")]
-        public string Company { get; set; }
+        public string? Company { get; set; }
 
         /// <summary>
         ///  
         ///</summary>
         [SugarColumn(ColumnName = "FACTORY")]
-        public string Factory { get; set; }
+        public string? Factory { get; set; }
 
         /// <summary>
         ///  
         ///</summary>
         [SugarColumn(ColumnName = "FSTAND")]
-        public string Fstand { get; set; }
+        public string? Fstand { get; set; }
 
         /// <summary>
         /// 鐢熸垚浜� 
         ///</summary>
         [SugarColumn(ColumnName = "LASTUPDATE_BY")]
-        public string LastupdateBy { get; set; }
+        public string? LastupdateBy { get; set; }
 
         /// <summary>
         ///  
         ///</summary>
         [SugarColumn(ColumnName = "CREATE_BY")]
-        public string CreateBy { get; set; }
+        public string? CreateBy { get; set; }
 
         [SugarColumn(IsIgnore = true)] public int? count { get; set; }
     }
diff --git a/StandardPda/MES.Service/Modes/MesQsImage.cs b/StandardPda/MES.Service/Modes/MesQsImage.cs
new file mode 100644
index 0000000..0ea58fd
--- /dev/null
+++ b/StandardPda/MES.Service/Modes/MesQsImage.cs
@@ -0,0 +1,55 @@
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.DataAnnotations.Schema;
+using SqlSugar;
+
+namespace MES.Service.Modes;
+
+/// <summary>
+///     鍥剧墖淇℃伅
+/// </summary>
+[Table("MES_QS_IMAGE")]
+[SugarTable("MES_QS_IMAGE")] //鐢ㄤ簬SqlSugar
+public class MesQsImage
+{
+    /// <summary>
+    ///     涓婚敭
+    /// </summary>
+    [Key]
+    [Column("ID")]
+    [SugarColumn(IsPrimaryKey = true, OracleSequenceName = "SEQ_QS_IMG",
+        ColumnName = "ID")] //鐢ㄤ簬SqlSugar
+    public decimal? Id { get; set; }
+
+    /// <summary>
+    ///     妫�楠屽崟id
+    /// </summary>
+    [Column("FID")]
+    [SugarColumn(ColumnName = "FID")] //鐢ㄤ簬SqlSugar
+    public decimal? Fid { get; set; }
+
+    /// <summary>
+    ///     闄勪欢鍐呭
+    /// </summary>
+    [Column("IMAGE_DATA")]
+    [SugarColumn(ColumnName = "IMAGE_DATA")] //鐢ㄤ簬SqlSugar
+    [StringLength(4000, ErrorMessage = "ImageData闀垮害涓嶈兘瓒呭嚭4000")]
+    public byte[]? ImageData { get; set; }
+
+    /// <summary>
+    ///     1涓洪妫�锛�2涓哄贰妫�锛�3涓哄叆搴撴,4涓烘潵鏂欐
+    /// </summary>
+    [Column("QS_TYPE")]
+    [SugarColumn(ColumnName = "QS_TYPE")] //鐢ㄤ簬SqlSugar
+    [StringLength(1, ErrorMessage = "1涓洪妫�锛�2涓哄贰妫�锛�3涓哄叆搴撴闀垮害涓嶈兘瓒呭嚭1")]
+    public string? QsType { get; set; }
+
+    /// <summary>
+    ///     鍥剧墖鍚嶇О
+    /// </summary>
+    [Column("PICTURENAME")]
+    [SugarColumn(ColumnName = "PICTURENAME")] //鐢ㄤ簬SqlSugar
+    [StringLength(200, ErrorMessage = "Picturename闀垮害涓嶈兘瓒呭嚭200")]
+    public string? Picturename { get; set; }
+
+    [SugarColumn(IsIgnore = true)] public string? base64Date { get; set; }
+}
\ No newline at end of file
diff --git a/StandardPda/MES.Service/service/QC/BaseService.cs b/StandardPda/MES.Service/service/QC/BaseService.cs
new file mode 100644
index 0000000..d99828f
--- /dev/null
+++ b/StandardPda/MES.Service/service/QC/BaseService.cs
@@ -0,0 +1,53 @@
+锘縰sing MES.Service.DB;
+using MES.Service.Modes;
+
+namespace MES.Service.service.QC;
+
+public class BaseService
+{
+    // public string?[] getUserLineNo(string userNo)
+    // {
+    //     //MesLineUser
+    //     var db = SqlSugarHelper.GetInstance();
+    //     var mesLineUsers = db.Queryable<MesLineUser>()
+    //         .Where(a => a.Fcode == userNo)
+    //         .ToList();
+    //     // 浣跨敤 Distinct 鏂规硶瀵� LineNo 杩涜鍘婚噸  
+    //     return mesLineUsers.Select(s => s.LineNo).Distinct().ToArray();
+    // }
+
+    public int saveImage(List<MesQsImage> entity)
+    {
+        var mesQsImages = entity.Where(item => item.Id == null).ToList();
+
+        mesQsImages.ForEach(s =>
+        {
+            if (!string.IsNullOrEmpty(s.base64Date))
+                //灏哹ase64杞崲涓篵yte鏁扮粍
+                s.ImageData = Convert.FromBase64String(s.base64Date);
+        });
+
+        return SqlSugarHelper.UseTransactionWithOracle(db =>
+            db.Insertable(mesQsImages).ExecuteCommand());
+    }
+
+    public int removeImage(decimal? id)
+    {
+        return SqlSugarHelper.UseTransactionWithOracle(db => db
+            .Deleteable(new MesQsImage { Id = id })
+            .ExecuteCommand());
+    }
+
+    public List<MesQsImage> getByFid(decimal id, string qsType)
+    {
+        var db = SqlSugarHelper.GetInstance();
+        var mesQsImages = db.Queryable<MesQsImage>()
+            .Where(s => s.Fid == id && s.QsType == qsType).ToList();
+        mesQsImages.ForEach(s =>
+        {
+            if (s.ImageData is { Length: > 0 })
+                s.base64Date = Convert.ToBase64String(s.ImageData);
+        });
+        return mesQsImages;
+    }
+}
\ No newline at end of file
diff --git a/StandardPda/MESApplication/Controllers/QC/BaseController.cs b/StandardPda/MESApplication/Controllers/QC/BaseController.cs
new file mode 100644
index 0000000..dd54e7f
--- /dev/null
+++ b/StandardPda/MESApplication/Controllers/QC/BaseController.cs
@@ -0,0 +1,84 @@
+锘縰sing System.Dynamic;
+using MES.Service.Dto.service;
+using MES.Service.service.QC;
+using MES.Service.util;
+using Microsoft.AspNetCore.Mvc;
+using Newtonsoft.Json.Linq;
+
+namespace MESApplication.Controllers.QC;
+
+[Route("api/[controller]")]
+[ApiController]
+public class BaseController : ControllerBase
+{
+    [HttpPost("saveImage")]
+    public ResponseResult saveImage([FromBody] ImageDataDto dto)
+    {
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var tbBillList =
+                new BaseService().saveImage(dto.entity);
+            resultInfos.tbBillList = tbBillList;
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    //removeImage
+    [HttpPost("removeImage")]
+    public ResponseResult removeImage([FromBody] JObject data)
+    {
+        var id = Convert.ToInt32(data["id"].ToString());
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var tbBillList =
+                new BaseService().removeImage(id);
+            resultInfos.tbBillList = tbBillList;
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+
+    //getByFid
+    [HttpPost("getByFid")]
+    public ResponseResult getByFid([FromBody] JObject data)
+    {
+        var id = Convert.ToInt32(data["fid"].ToString());
+        var qsType = data["qsType"].ToString();
+        try
+        {
+            dynamic resultInfos = new ExpandoObject();
+            var tbBillList =
+                new BaseService().getByFid(id, qsType);
+            resultInfos.tbBillList = tbBillList;
+            return new ResponseResult
+            {
+                status = 0,
+                message = "OK",
+                data = resultInfos
+            };
+        }
+        catch (Exception ex)
+        {
+            return ResponseResult.ResponseError(ex);
+        }
+    }
+}
\ No newline at end of file

--
Gitblit v1.9.3