From b4cae676b169c4894cfe30ac6a18462dbd3af13e Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期五, 19 十二月 2025 17:00:27 +0800
Subject: [PATCH] 来料检验单 出厂检验单 生产入库检验单 添加 不良原因保存

---
 WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs |   82 +++++++++++++++++++++++++++++++++++++++++
 1 files changed, 82 insertions(+), 0 deletions(-)

diff --git a/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs b/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs
index e5089bb..7233fcd 100644
--- a/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs
+++ b/WebAPI/Controllers/SCGL/QC_LastPieceCheckBillController.cs
@@ -747,6 +747,15 @@
             string OperationType = sArray[2].ToString().Trim();
             string user = sArray[3].ToString();
             string Value = sArray[4].ToString();
+            string BadReason = null;
+            if (sArray.Length > 4)
+            {
+                BadReason = sArray[5].ToString();
+            }
+            if (String.IsNullOrWhiteSpace(BadReason) == true)
+            {
+                BadReason = "[]";
+            }
             bool bResult;
             try
             {
@@ -813,6 +822,8 @@
                 BillNew.omodel.HTakeSampleCheckBillNo = ClsPub.isStrNull(mainList[0].HTakeSampleCheckBillNo);
 
                 List<Model.ClsQC_LastPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_LastPieceCheckBillSub>>(msg3);
+                List<Model.ClsQC_LastPieceCheckBillSub_BadReason> badReasonList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_LastPieceCheckBillSub_BadReason>>(BadReason);
+
                 BillNew.DetailColl = new List<Model.ClsQC_LastPieceCheckBillSub>();
 
                 for (int i = 0; i < subList.ToArray().Length; i++)
@@ -868,6 +879,25 @@
                         objJsonResult.Message = "鏃犳槑缁嗚淇℃伅!";
                         objJsonResult.data = null;
                         return objJsonResult;
+                    }
+                }
+
+                for (int i = 0; i < badReasonList.ToArray().Length; i++)
+                {
+                    if (i >= 0)//HQty
+                    {
+                        Model.ClsQC_LastPieceCheckBillSub_BadReason oSub = new Model.ClsQC_LastPieceCheckBillSub_BadReason();
+                        oSub.HInterID = mainList[0].HInterID;
+                        oSub.HEntryID = i + 1;
+                        oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark);
+                        oSub.HCloseMan = DBUtility.ClsPub.isStrNull(badReasonList[i].HCloseMan);
+                        oSub.HEntryCloseDate = DBUtility.ClsPub.isDate(badReasonList[i].HEntryCloseDate);
+                        oSub.HCloseType = DBUtility.ClsPub.isBool(badReasonList[i].HCloseType);
+                        oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo);
+                        oSub.HQty = badReasonList[i].HQty;
+                        oSub.HBadReasonID = badReasonList[i].HBadReasonID;
+
+                        BillNew.DetailCol1_BadReason.Add(oSub);
                     }
                 }
 
@@ -1069,6 +1099,58 @@
         }
         #endregion
 
+        #region [妫�楠屽崟鑾峰彇 涓嶈壇鍘熷洜]
+        [Route("QC_LastPieceCheckBill_BadReason/getBadReasonList")]
+        [HttpGet]
+        public object getBadReasonList(Int64 HInterID, string user)
+        {
+            DataSet ds;
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                List<object> columnNameList = new List<object>();
+
+                ds = oCN.RunProcReturn("select * from QC_LastPieceCheckBillSub_BadReason  where  HInterID=" + HInterID, "QC_LastPieceCheckBillSub_BadReason");
+
+                //娣诲姞鍒楀悕
+                foreach (DataColumn col in ds.Tables[0].Columns)
+                {
+                    Type dataType = col.DataType;
+                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
+                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//鑾峰彇鍒癉ataColumn鍒楀璞$殑鍒楀悕
+                }
+
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "Sucess锛�";
+                    objJsonResult.data = ds.Tables[0];
+                    objJsonResult.list = columnNameList;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犱笉鑹師鍥犳暟鎹紒";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍涓嶈壇鍘熷洜璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
         #region 鐢熶骇鍏ュ簱妫�楠屽崟鏍规嵁婧愬崟鑾峰彇淇¢�氳繃鍗曟嵁鍙锋淮鍏�-婧愬崟涓虹敓浜ф眹鎶ュ崟(3711)
         /// <summary>
         ///鍙傛暟锛歴tring sql銆�

--
Gitblit v1.9.1