From 64dc95b0c09cda7e9c2bbfea84703b4401102904 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期二, 03 三月 2026 16:18:15 +0800
Subject: [PATCH] 解决 模具点检计划单审核时 死锁 问题 解决 员工签到记录列表 分页异常

---
 WebAPI/Controllers/Sc_ProcessMangementController.cs |  236 ++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 146 insertions(+), 90 deletions(-)

diff --git a/WebAPI/Controllers/Sc_ProcessMangementController.cs b/WebAPI/Controllers/Sc_ProcessMangementController.cs
index d1917d2..7693aa3 100644
--- a/WebAPI/Controllers/Sc_ProcessMangementController.cs
+++ b/WebAPI/Controllers/Sc_ProcessMangementController.cs
@@ -1503,7 +1503,9 @@
                 FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//鍩烘湰鍗曚綅
                 FentityModel.Add("FBaseInspectQty", HCheckQty.ToString());//鍩烘湰鍗曚綅妫�楠屾暟閲�
                 FentityModel.Add("FSupplierId", new JObject() { ["Fnumber"] = HSupNumber.ToString() }); //  渚涘簲鍟�
-                                                                                                        //FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 浠撳簱
+                
+                
+                // FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHID.ToString() }); // 浠撳簱
                 FentityModel.Add("FInspectTimes", "1"); // 妫�楠屾鏁� 
                 FentityModel.Add("FTimeUnit", "24");//鏃堕棿鍗曚綅
                 FentityModel.Add("FSAMPLEDAMAGEBEARER", "2");//鏍锋湰鐮村潖鎵挎媴鏂�
@@ -1697,6 +1699,7 @@
                       ") ");
                 //鍚屾閲戣澏
                 //璁块棶閲戣澏
+                string sErr = "";
                 var loginRet = InvokeHelper.Login();
                 var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                 if (isSuccess == 0)
@@ -1707,26 +1710,29 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-
-                //if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
-                //{
-                    string sql = @"select a.FID,a.FNUMBER Employee,d.FNUMBER Dept from Gy_Employee e
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
+                    {
+                        string sql = @"select a.FID,a.FNUMBER Employee,d.FNUMBER Dept from Gy_Employee e
                              join JL20250716203240..T_HR_EMPINFO a on e.HNumber = a.FNUMBER
                              join JL20250716203240..T_BD_STAFFTEMP c on c.FID = a.FID
                              join JL20250716203240..T_BD_DEPARTMENT d on c.FDEPTID = d.FDEPTID
                              where e.HItemID ='" + HKeeperID + "' ";
-                    //鏌ヨ璐ㄦ鍛樺搴旇川妫�閮ㄩ棬
-                    ds = oCN.RunProcReturn(sql, "T_HR_EMPINFO");
-                    LogService.Write("sql" + sql);
-                    if (ds.Tables[0].Rows.Count == 0)
-                    {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鎿嶄綔澶辫触,璐ㄦ鍛樺搴旇川妫�閮ㄩ棬鏃犳暟鎹��" + sql;
-                        objJsonResult.data = null;
-                        return objJsonResult;
+                        //鏌ヨ璐ㄦ鍛樺搴旇川妫�閮ㄩ棬
+                        ds = oCN.RunProcReturn(sql, "T_HR_EMPINFO");
+                        // LogService.Write("sql" + sql);
+                        if (ds.Tables[0].Rows.Count == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鎿嶄綔澶辫触,璐ㄦ鍛樺搴旇川妫�閮ㄩ棬鏃犳暟鎹��" + sql;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
                     }
-                //}
+                }
+                
                 
 
 
@@ -1736,12 +1742,15 @@
                 model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //鍗曟嵁鏃ユ湡
                 model.Add("FInspectOrgId", new JObject() { ["Fnumber"] = HZJOrgNumber.ToString() }); //璐ㄦ缁勭粐
                 model.Add("FSourceOrgId", new JObject() { ["Fnumber"] = HZJOrgNumber.ToString() }); //鏉ユ簮缁勭粐
-                                                                                                    //model.Add("FInspectDepId", new JObject() { ["Fnumber"] = ds.Tables[0].Rows[0]["Dept"].ToString() }); //璐ㄦ閮ㄩ棬
-                LogService.Write("WMS_CampanyName: ", oSystemParameter.omodel.WMS_CampanyName);
-                // if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
-                // {
-                    model.Add("FInspectorId", new JObject() { ["Fnumber"] = ds.Tables[0].Rows[0]["Employee"].ToString() }); //璐ㄦ鍛�
-                // }
+
+                //model.Add("FInspectDepId", new JObject() { ["Fnumber"] = ds.Tables[0].Rows[0]["Dept"].ToString() }); //璐ㄦ閮ㄩ棬
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
+                    {
+                        model.Add("FInspectorId", new JObject() { ["Fnumber"] = ds.Tables[0].Rows[0]["Employee"].ToString() }); //璐ㄦ鍛�
+                    }
+                }
                 model.Add("FISSYNCED", "false");//  鏄惁宸插悓姝�
                 model.Add("F_PGKJ_Date", DateTime.Now.ToString("yyyy-MM-dd"));//  鎶ユ鏃ユ湡
                 model.Add("FBillNo", HBillNo);
@@ -1760,10 +1769,31 @@
                 FentityModel.Add("FQCStatus", "1");//  璐ㄦ鐘舵�� 
                 FentityModel.Add("FIsRelated", false);//  涓嶈壇鍝佸叧鑱旀爣蹇�
                 FentityModel.Add("FSrcBillType0", "PUR_ReceiveBill");//  婧愬崟绫诲瀷
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
+                    {
+                        FentityModel.Add("FSrcBillNo0", HSLBillNo.ToString());    //鏀舵枡閫氱煡鍗曞崟鍙�
+                        FentityModel.Add("FSrcInterId0", HSLInterID.ToString());      //鏀舵枡閫氱煡鍗曚富ID
+                        FentityModel.Add("FSrcEntryId0", HSLEntryID.ToString());
+                        FentityModel.Add("FSrcEntrySeq0", HSLSeQ.ToString());    //婧愬崟琛屽彿
+
+                        FentityModel.Add("F_WPVT_Text_uky", HSourceBillNo.ToString());    //閲囪喘璁㈠崟琛屽彿
+                        FentityModel.Add("F_WPVT_Integer_fg2", HSeQ.ToString());  //璁㈠崟琛屽彿
+                    }
+                }
                 FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//鍩烘湰鍗曚綅
                 FentityModel.Add("FBaseInspectQty", HCheckQty.ToString());//鍩烘湰鍗曚綅妫�楠屾暟閲�
                 FentityModel.Add("FSupplierId", new JObject() { ["Fnumber"] = HSupNumber.ToString() }); //  渚涘簲鍟�
-                                                                                                        //FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 浠撳簱
+
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
+                    {
+                        FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHID.ToString() }); // 浠撳簱
+
+                    }
+                }
                 FentityModel.Add("FInspectTimes", "1"); // 妫�楠屾鏁� 
                 FentityModel.Add("FTimeUnit", "24");//鏃堕棿鍗曚綅
                 FentityModel.Add("FSAMPLEDAMAGEBEARER", "2");//鏍锋湰鐮村潖鎵挎媴鏂�
@@ -1782,7 +1812,26 @@
                 FentityModel2.Add("FBasePolicyQty", HRightQty.ToString() == "0" ? HBadQty.ToString() : HRightQty.ToString()); //鍩烘湰鍗曚綅鏁伴噺
                 FentityModel2.Add("FUsePolicy", HUseResult.ToString());   //浣跨敤鍐崇瓥
                 FentityModel2.Add("FIsCheck", false);   //鏄惁鎶芥
-                FentityModel2.Add("FIsDefectProcess", false);  //涓嶈壇澶勭悊
+                // 閿﹂殕鍚敤涓嶈壇澶勭悊
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (string.Equals(oSystemParameter.omodel.WMS_CampanyName, "閿﹂殕"))
+                    {
+                        // 鍒ゆ柇鍗曟嵁鏄惁鍚堟牸
+                        if (HCheckResult.ToString() == "2")
+                        {
+                            FentityModel2.Add("FIsDefectProcess", true);  //涓嶈壇澶勭悊
+                        }
+                        else
+                        {
+                            FentityModel2.Add("FIsDefectProcess", false);
+                        }
+                    }
+                    else
+                    {
+                        FentityModel2.Add("FIsDefectProcess", false);  //涓嶈壇澶勭悊
+                    }
+                }
                 FentityModel2.Add("FCanSale", false);   //鍙攢鍞�
                 FentityModel2.Add("FIsMRBReview", false);   //MRP璇勫
                 FentityModel2.Add("FIsReturn", true);   //鍒ら��
@@ -1812,7 +1861,7 @@
                 JArray Fentity4 = new JArray();
                 JObject FentityModel4 = new JObject();
                 FentityModel4.Add("FEntity_Link_FRuleId", "QM_PURReceive2Inspect");   //鍗曟嵁杞崲瑙勫垯
-                FentityModel4.Add("FEntity_Link_FSTableName", "T_PUR_RECEIVEENTRY");    //鏀舵枡閫氱煡鍗曞瓙琛�
+                FentityModel4.Add("FEntity_Link_FSTableName", "T_PUR_ReceiveEntry");    //鏀舵枡閫氱煡鍗曞瓙琛�
                 FentityModel4.Add("FEntity_Link_FSBillId", HSLInterID.ToString());      //鏀舵枡閫氱煡鍗曚富鍐呯爜
                 FentityModel4.Add("FEntity_Link_FSId", HSLEntryID.ToString());    //鏀舵枡閫氱煡鍗曞瓙鍐呯爜
                 FentityModel4.Add("FEntity_Link_FBaseAcceptQty", HRightQty.ToString());    //
@@ -1852,6 +1901,7 @@
                     return objJsonResult;
                 }
                 //鎻愪氦瀹℃牳
+                string result0 = string.Empty;
                 string result1 = string.Empty;
                 string result2 = string.Empty;
                 var fID = JObject.Parse(result)["Result"]["Id"].ToString();
@@ -1865,80 +1915,86 @@
                 K3CloudApiClient client = new K3CloudApiClient("http://47.96.97.237/k3cloud");
                 //        K3CloudApiClient client = new K3CloudApiClient("http://192.168.80.90/k3cloud/");
 
+                if (oSystemParameter.ShowBill(ref sErr))
+                {
+                    if (string.Equals(oSystemParameter.omodel.WMS_CampanyName, "閿﹂殕"))
+                    {
+                        result0 = InvokeHelper.Save("QM_InspectBill", JsonConvert.SerializeObject(json));//淇濆瓨
+                    }
+                }
+                result1 = InvokeHelper.Submit("QM_InspectBill", JsonConvert.SerializeObject(json));//鎻愪氦
+                result2 = InvokeHelper.Audit("QM_InspectBill", JsonConvert.SerializeObject(json));//瀹℃牳
+                if (JObject.Parse(result1)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = $"鏉ユ枡妫�楠屽崟鍙凤細{fBillNo}锛屾彁浜ゅけ璐�" + result;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
 
-                // 閿﹂殕 浠呬繚鐣欐柊寤哄姛鑳�
-                //result1 = InvokeHelper.Submit("QM_InspectBill", JsonConvert.SerializeObject(json));//鎻愪氦
-                //// result2 = InvokeHelper.Audit("QM_InspectBill", JsonConvert.SerializeObject(json));//瀹℃牳
-                //if (JObject.Parse(result1)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
-                //{
-                    //oCN.RollBack();
-                    //objJsonResult.code = "0";
-                    //objJsonResult.count = 0;
-                    //objJsonResult.Message = $"鏉ユ枡妫�楠屽崟鍙凤細{fBillNo}锛屾彁浜ゅけ璐�" + result;
-                    //objJsonResult.data = null;
-                    //return objJsonResult;
-                //}
-                //else
-                //{
+                    DataSet ds1 = oCN.RunProcReturn("select * from MES_AccessoriesList  where  HSourceBillNo = '" + HBillNo + "'", "MES_AccessoriesList");
 
-                    //DataSet ds1 = oCN.RunProcReturn("select * from MES_AccessoriesList  where  HSourceBillNo = '" + HBillNo + "'", "MES_AccessoriesList");
+                    for (var i = 0; i < ds1.Tables[0].Rows.Count; i++)
+                    {
+                        string HFileName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[i]["HFileName"]);
+                        string HFilePath = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[i]["HFilePath"]);
 
-                    //for (var i = 0; i < ds1.Tables[0].Rows.Count; i++)
-                    //{
-                        //string HFileName = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[i]["HFileName"]);
-                        //string HFilePath = DBUtility.ClsPub.isStrNull(ds1.Tables[0].Rows[i]["HFilePath"]);
-
-                        //string path = HFilePath;
-                        //FileInfo fi = new FileInfo(path);
-                        //long len = fi.Length;
-                        //byte[] buffer = new byte[len];
-                        //FileStream fs = new FileStream(path, FileMode.Open);
-                        //fs.Read(buffer, 0, (int)len);
-                        ////鏂囦欢IO娴�
-                        //string a = Convert.ToBase64String(buffer);
-
-                        ////if(oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
-                        ////{
-                            //ds = oCN.RunProcReturn("select * from  JL20250716203240..T_QM_INSPECTBILL where FBILLNO='" + HBillNo + "'", "T_QM_INSPECTBILL");
-                        ////}
-                        ////else
-                        ////{
-                        ////    ds = oCN.RunProcReturn("select * from  AIS20210811135644..T_QM_INSPECTBILL where FBILLNO='" + HBillNo + "'", "T_QM_INSPECTBILL");
-                        ////}
+                        string path = HFilePath;
+                        FileInfo fi = new FileInfo(path);
+                        long len = fi.Length;
+                        byte[] buffer = new byte[len];
+                        FileStream fs = new FileStream(path, FileMode.Open);
+                        fs.Read(buffer, 0, (int)len);
+                        //鏂囦欢IO娴�
+                        string a = Convert.ToBase64String(buffer);
+                        if (oSystemParameter.ShowBill(ref sErr)) {
+                            if (oSystemParameter.omodel.WMS_CampanyName == "閿﹂殕")
+                            {
+                                ds = oCN.RunProcReturn("select * from  JL20250716203240..T_QM_INSPECTBILL where FBILLNO='" + HBillNo + "'", "T_QM_INSPECTBILL");
+                            }
+                            else
+                            {
+                                ds = oCN.RunProcReturn("select * from  AIS20210811135644..T_QM_INSPECTBILL where FBILLNO='" + HBillNo + "'", "T_QM_INSPECTBILL");
+                            }
+                        }
 
 
-                        //HInterID = long.Parse(ds.Tables[0].Rows[0]["FID"].ToString());
+                        HInterID = long.Parse(ds.Tables[0].Rows[0]["FID"].ToString());
 
-                        //string jsonStr = "{" +
-                           //" \"FileName\":\"" + HFileName + "\"," +
-                               //" \"FormId\":\"QM_InspectBill\"," +
-                               //" \"IsLast\":\"true\"," +
-                               //" \"InterId\":\"" + HInterID + "\"," +
-                               //" \"BillNo\":\"" + HBillNo + "\"," +
-                               //" \"AliasFileName\":\"test\"," +
-                               //" \"SendByte\":\"" + a + "\"" +
-                           //"}";
-                        //// 涓嬮潰鐨勬柟寮忛�傜敤浜� 閲戣澏浜� 8.0浠ヤ笂鐗堟湰
-                        //string _vlog = InvokeHelper.UpLoad("QM_InspectBill", jsonStr);
-                        //LogService.Write("json:" + jsonStr);
-                        //LogService.Write("_vlog:" + _vlog);
-                        
-                        //if (JObject.Parse(_vlog)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
-                        //{
-                            //oCN.RollBack();
-                            //objJsonResult.code = "0";
-                            //objJsonResult.count = 0;
-                            //objJsonResult.Message = $"鏉ユ枡妫�楠屽崟鍙凤細{fBillNo}锛岀収鐗囧悓姝ュけ璐�" + _vlog;
-                            //objJsonResult.data = null;
-                            //return objJsonResult;
-                        //}
+                        string jsonStr = "{" +
+                           " \"FileName\":\"" + HFileName + "\"," +
+                               " \"FormId\":\"QM_InspectBill\"," +
+                               " \"IsLast\":\"true\"," +
+                               " \"InterId\":\"" + HInterID + "\"," +
+                               " \"BillNo\":\"" + HBillNo + "\"," +
+                               " \"AliasFileName\":\"test\"," +
+                               " \"SendByte\":\"" + a + "\"" +
+                           "}";
+                        // 涓嬮潰鐨勬柟寮忛�傜敤浜� 閲戣澏浜� 8.0浠ヤ笂鐗堟湰
+                        string _vlog = InvokeHelper.UpLoad("QM_InspectBill", jsonStr);
+                        LogService.Write("json:" + jsonStr);
+                        LogService.Write("_vlog:" + _vlog);
 
-                        //// 涓嬮潰鐨勬柟寮忛�傜敤浜� 閲戣澏浜� 8.0浠ヤ笅鐗堟湰
-                        //// var ret = client.AttachmentUpload(jsonStr);
-                    //}
+                        if (JObject.Parse(_vlog)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                        {
+                            oCN.RollBack();
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = $"鏉ユ枡妫�楠屽崟鍙凤細{fBillNo}锛岀収鐗囧悓姝ュけ璐�" + _vlog;
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }
+
+                        // 涓嬮潰鐨勬柟寮忛�傜敤浜� 閲戣澏浜� 8.0浠ヤ笅鐗堟湰
+                        // var ret = client.AttachmentUpload(jsonStr);
+                    }
 
 
-                //}
+                }
 
                 oCN.Commit();
                 objJsonResult.code = "0";

--
Gitblit v1.9.1