From e57987bff5891297af9ecbbec5ed6dc9e84bdad2 Mon Sep 17 00:00:00 2001
From: cnf <3283105747@qq.com>
Date: 星期六, 29 十一月 2025 19:41:12 +0800
Subject: [PATCH] 备单领料及维护接口

---
 WebApi/GS.QC/Service/MesQmCheckitemManager.cs |  153 ++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 121 insertions(+), 32 deletions(-)

diff --git a/WebApi/GS.QC/Service/MesQmCheckitemManager.cs b/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
index 3b07d10..8181f5f 100644
--- a/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
+++ b/WebApi/GS.QC/Service/MesQmCheckitemManager.cs
@@ -1,7 +1,4 @@
-锘縰sing System.Data;
-using System.Data.SqlClient;
-using System.Dynamic;
-using System.Text;
+锘縰sing System.Text;
 using Gs.Entity.BaseInfo;
 using Gs.Entity.Sys;
 using GS.QC.Models;
@@ -13,6 +10,10 @@
 using Microsoft.AspNetCore.Mvc;
 using Newtonsoft.Json.Linq;
 using SqlSugar;
+using System.Data;
+using System.Data.SqlClient;
+using System.Dynamic;
+using Gs.BaseInfo.Models;
 
 namespace GS.QC.Service;
 
@@ -43,19 +44,18 @@
         var _sbWhere = new StringBuilder(" 1=1 " + query.keyWhere);
         var _sbBy = new StringBuilder(query.sortName + " " + query.sortOrder);
         var totalCount = 0;
-        var itemsList = Db
-            .Queryable<MesQmCheckitem, MesItems, SysOrganization>((a, b, org) =>
-                new object[]
+        var itemsList = Db.Queryable<MesQmCheckitem, MesItems, SysOrganization>(
+                (a, b, org) => new object[]
                 {
                     JoinType.Left, a.ItemId == b.Id,
                     JoinType.Left, b.FSubsidiary == org.Fid
                 }).Select((a, b, org) => new MesQmCheckitem
-            {
-                FSubsidiary = "(" + org.FNumber + ")" + org.Name,
-                mc = b.ItemName,
-                gg = b.ItemModel,
-                ItemNo = b.ItemNo
-            }, true)
+                {
+                    FSubsidiary = "(" + org.FNumber + ")" + org.Name,
+                    mc = b.ItemName,
+                    gg = b.ItemModel,
+                    ItemNo = b.ItemNo,
+                }, true)
             .Where(_sbWhere.ToString())
             .OrderBy(_sbBy.ToString())
             .ToPageList(query.currentPage, query.everyPageSize,
@@ -77,16 +77,14 @@
         [FromBody] MesQmCheckitem model)
     {
         var m = base.GetById(model.Guid);
-        var sbSql = new StringBuilder();
-        sbSql.Append(
-            "select top 1 FSubsidiary,org.NAME as fName,org.FNumber, [item_name],[item_model],item_no from MES_ITEMS i left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID where i.id=" +
-            m.ItemId);
+        System.Text.StringBuilder sbSql = new StringBuilder();
+        sbSql.Append("select top 1 FSubsidiary,org.NAME as fName,org.FNumber, [item_name],[item_model],item_no from MES_ITEMS i left join SYS_ORGANIZATION org on i.FSubsidiary=org.FID where i.id=" + m.ItemId);
         try
         {
-            var dset = new DataSet();
-            dset = DbHelperSQL.Query(sbSql.ToString());
-            var r = dset.Tables[0].Rows[0];
-            m.FSubsidiary = "(" + r["FNumber"] + ")" + r["fName"];
+            DataSet dset = new DataSet();
+            dset = Gs.Toolbox.DbHelperSQL.Query(sbSql.ToString());
+            System.Data.DataRow r = dset.Tables[0].Rows[0];
+            m.FSubsidiary ="("+ r["FNumber"].ToString() + ")"+ r["fName"].ToString();
             m.ItemNo = r["item_no"].ToString();
             m.gg = r["item_model"].ToString();
             m.mc = r["item_name"].ToString();
@@ -95,7 +93,6 @@
         {
             LogHelper.Debug(ToString(), "GetModel error锛�" + ex.Message);
         }
-
         m.list = Db.Queryable<MesQmCheckitemDt, MesQmAql1>((a, b) =>
                 new object[]
                 {
@@ -127,10 +124,8 @@
         {
             var cont = IsChkOrUnChk(model.Guid.ToString());
             if (cont > 0)
-                return ReturnDto<string>.QuickReturn("", ReturnCode.Exception,
-                    "淇敼澶辫触锛岃淇℃伅宸茶瀹℃牳锛�");
+                return ReturnDto<string>.QuickReturn("", ReturnCode.Exception, "淇敼澶辫触锛岃淇℃伅宸茶瀹℃牳锛�");
         }
-
         try
         {
             Db.Ado.BeginTran();
@@ -225,9 +220,8 @@
             it.Guid == Guid.Parse(_guid) && it.FoneChecked == true).Count;
         return cont;
     }
-
     /// <summary>
-    ///     澶嶅埗鐗╂枡椤圭洰
+    ///  澶嶅埗鐗╂枡椤圭洰
     /// </summary>
     /// <param name="model"></param>
     /// <returns></returns>
@@ -237,7 +231,7 @@
         int? rtnInt = (int)ReturnCode.Default;
         string inSourceGuid = model.sourceGuid;
         string inMxGuids = model.itemGuids;
-        string strType = model.iqcType;
+        string strType=model.iqcType;
         var _outMsg = "";
         var _outSum = -1;
         using (var conn = new SqlConnection(DbHelperSQL.strConn))
@@ -252,10 +246,10 @@
                     {
                         new("@outMsg", SqlDbType.NVarChar, 300),
                         new("@outSum", SqlDbType.Int),
-                        new("@inSourceGuid", inSourceGuid),
+                        new("@inSourceGuid",inSourceGuid),
                         new("@inMxGuids", inMxGuids),
                         new("@iqcType", strType),
-                        new("@inEdtUserGuid", _userGuid)
+                        new("@inEdtUserGuid", _userGuid),
                     };
                     parameters[0].Direction = ParameterDirection.Output;
                     parameters[1].Direction = ParameterDirection.Output;
@@ -278,7 +272,6 @@
                 }
             }
         }
-
         if (_outSum <= 0)
             return ReturnDto<int>.QuickReturn(rtnInt, ReturnCode.Exception,
                 _outMsg);
@@ -286,6 +279,7 @@
     }
 
     /// <summary>
+    ///   
     /// </summary>
     /// <param name="mode"></param>
     /// <returns></returns>
@@ -336,7 +330,102 @@
                 }
             }
         }
-
         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