From 6d7b64c2f1f7561aca5db34fcf3b32d265bb757e Mon Sep 17 00:00:00 2001
From: kyy <3283105747@qq.com>
Date: 星期四, 20 十一月 2025 16:54:35 +0800
Subject: [PATCH] 1、物料类型检验

---
 WebApi/GS.QC/Service/MesQmCheckitemManager.cs |   97 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 97 insertions(+), 0 deletions(-)

diff --git a/WebApi/GS.QC/Service/MesQmCheckitemManager.cs b/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
index a4b217a..8181f5f 100644
--- a/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
+++ b/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
@@ -13,6 +13,7 @@
 using System.Data;
 using System.Data.SqlClient;
 using System.Dynamic;
+using Gs.BaseInfo.Models;
 
 namespace GS.QC.Service;
 
@@ -331,4 +332,100 @@
         }
         return ReturnDto<dynamic>.QuickReturn(m, ReturnCode.Success, "鎿嶄綔鎴愬姛锛�");
     }
+
+
+    #region 鐗╂枡绫诲埆妫�楠岄」鐩� 2025-11-19 鍔犱笂
+
+    /// <summary>
+    ///     鏌ヨ鍒楄〃锛屾敮鎸佸垎椤�
+    /// </summary>
+    /// <param name="query"></param>
+    /// <returns></returns>
+    [RequestMethod(RequestMethods.POST)]
+    public ReturnDto<PageList<MesQmCheckitem>> GetListPageLeiBie(PageQuery query)
+    {
+        var _sbWhere = new StringBuilder(" 1=1 " + query.keyWhere);
+        var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder);
+        var totalCount = 0;
+        var itemsList = Db.Queryable<MesQmCheckitem, MesItemType, SysUser, SysUser>(
+                (a, b, u1, u2) => new object[]
+                {
+               JoinType.Left, a.ItemId == b.Id,
+               JoinType.Left, a.FoneCheckor == u1.Account,
+               JoinType.Left, a.CreateBy == u2.Account
+                })
+            .Select((a, b, u1, u2) => new MesQmCheckitem
+            {
+                mc = b.Tname,
+                ItemNo = b.Tcode,
+                // 鏂板锛氬鎵逛汉濮撳悕銆佸埗鍗曚汉濮撳悕
+                FoneCheckor = u1.UserName,
+                CreateBy = u2.UserName
+            }, true)
+            .Where(_sbWhere.ToString())
+            .OrderBy(_sbBy.ToString())
+            .ToPageList(query.currentPage, query.everyPageSize, ref totalCount);
+
+        var pageList = new PageList<MesQmCheckitem>(itemsList, totalCount,
+            query.everyPageSize);
+        return ReturnDto<PageList<MesQmCheckitem>>.QuickReturn(pageList,
+            ReturnCode.Success, "璇诲彇鎴愬姛");
+    }
+
+    /// <summary>
+    ///     鏍规嵁涓昏〃id璇诲彇涓昏〃鍜屽瓙琛�
+    /// </summary>
+    /// <param name="model"></param>
+    /// <returns></returns>
+    [RequestMethod(RequestMethods.POST)]
+    public ReturnDto<MesQmCheckitem> GetModelLeiBie(
+        [FromBody] MesQmCheckitem model)
+    {
+        // 鑾峰彇涓昏〃
+        var m = base.GetById(model.Guid);
+
+        System.Text.StringBuilder sbSql = new StringBuilder();
+        sbSql.Append("select top 1 tname as [item_name],tcode as item_no from MES_ITEM_TYPE i where i.id=" + m.ItemId);
+        try
+        {
+            DataSet dset = new DataSet();
+            dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
+            System.Data.DataRow r = dset.Tables[0].Rows[0];
+            m.ItemNo = r["item_no"].ToString();
+            m.mc = r["item_name"].ToString();
+        }
+        catch (Exception ex)
+        {
+            LogHelper.Debug(ToString(), "GetModel error锛�" + ex.Message);
+        }
+
+        // 鏂板锛氬鎵逛汉濮撳悕鏌ヨ
+        if (!string.IsNullOrEmpty(m.FoneCheckor))
+        {
+            var user = Db.Queryable<SysUser>()
+                .Where(u => u.Account == m.FoneCheckor)
+                .Select(u => u.UserName)
+                .First();
+            m.FoneCheckor = user ?? m.FoneCheckor; // 鏌ヤ笉鍒板垯淇濈暀鍘熷��
+        }
+
+        m.list = Db.Queryable<MesQmCheckitemDt, MesQmAql1>((a, b) =>
+                new object[]
+                {
+                 JoinType.Left, a.SampleSizeNo == b.SampleSizeNo
+                })
+            .OrderBy((a, b) => a.Forder)
+            .Select((a, b) => new MesQmCheckitemDt
+            {
+                sampleSizeName = b.SampleSizeName
+            }, true)
+            .Where(a => a.Pid == model.Guid)
+            .ToList();
+        if (m != null)
+            return ReturnDto<MesQmCheckitem>.QuickReturn(m,
+                ReturnCode.Success, "璇诲彇鎴愬姛锛�");
+        return ReturnDto<MesQmCheckitem>.QuickReturn(m, ReturnCode.Default,
+            "璇诲彇澶辫触锛�");
+    }
+    #endregion
 }
\ No newline at end of file

--
Gitblit v1.9.3