From 0ad8b5d768d28752aeb1aa2c9d548bcc12757f40 Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期六, 28 二月 2026 09:41:46 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs |  199 +++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 191 insertions(+), 8 deletions(-)

diff --git a/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs b/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
index 9db9f64..d7a0cf4 100644
--- a/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
+++ b/WebAPI/Controllers/MJGL/Sc_MouldUpperBillController.cs
@@ -331,7 +331,7 @@
                    , HSourceID, HICMOInterID, HICMOEntryID, HICMOBillNo,HScanDate,HBarCode)
                     values("
                      + HInterID + ",'"+ HBillNo + "'," + i + "," + oSub.HMouldID.ToString() + ",'" + oSub.HQty 
-                     + "'," + oSub.HSourceID.ToString() + "," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString()+",'"+ oSub.HICMOBillNo.ToString() + "','getdate()','" + oSub.HBarCode.ToString() + 
+                     + "'," + oSub.HSourceID.ToString() + "," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString()+",'"+ oSub.HICMOBillNo.ToString() + "',getdate(),'" + oSub.HBarCode.ToString() + 
                      "') ");
             }
 
@@ -2281,15 +2281,188 @@
 
         #endregion
 
-        #region 涓嬫ā鍗� PDA鏂板
-        /// <summary>
-        /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
-        ///鍙傛暟锛歴tring sql銆�
-        ///杩斿洖鍊硷細object銆�
-        /// </summary>
+        #region 涓嬫ā鍗� PDA鏂板  鏂扮殑260227   app鍦ㄥ彂淇℃伅鐨勬椂鍊欏洖鏀惧埌浜嬪姟澶�
         [Route("Sc_MouldUpperBill/AddSc_MouldLowerBill_PDA")]
         [HttpPost]
         public object AddSc_MouldLowerBill_PDA([FromBody] JObject oMain)
+        {
+            var _value = oMain["oMain"].ToString();
+            string msg1 = _value.ToString();
+            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+            string msg2 = sArray[0].ToString();
+            string user = sArray[1].ToString();                     // 鐢ㄦ埛鍚�
+            int OperationType = int.Parse(sArray[2].ToString());    // 鏁版嵁绫诲瀷 1娣诲姞 3淇敼 2澶嶅埗
+
+            // 寮�濮嬩簨鍔�
+            oCN.BeginTran();
+
+            try
+            {
+                // 鏉冮檺鏍¢獙
+                if (!DBUtility.ClsPub.Security_Log("Sc_MouldLowerBill_Edit", 1, false, user))
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏃犳潈闄愮紪杈�!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                // 澶勭悊涓昏〃 JSON锛堝寘瑁呮垚鏁扮粍褰㈠紡锛�
+                string mainJsonArray = "[" + msg2 + "]";
+                List<ClsSc_MouldLowerBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_MouldLowerBillMain>>(mainJsonArray);
+                string HBillType = "3847";
+                long HInterID = mainList[0].HInterID;
+                string HBillNo = mainList[0].HBillNo;
+                DateTime HDate = mainList[0].HDate;
+                int HYear = DateTime.Now.Year;
+                double HPeriod = DateTime.Now.Month;
+                string HRemark = mainList[0].HRemark;
+                string HMaker = mainList[0].HMaker;
+                int HOrgID = mainList[0].HOrgID;
+                Int64 HDeptID = mainList[0].HDeptID;
+                Int64 HEmpID = mainList[0].HEmpID;
+                Int64 HMangerID = mainList[0].HMangerID;
+
+                // 鏌ヨ涓昏〃鏄惁瀛樺湪锛堢敤浜庡垽鏂柊澧�/淇敼锛�
+                ds = oCN.RunProcReturn("select * from h_v_Qj_Sc_MouldLowerBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_Qj_Sc_MouldLowerBillList");
+
+                // ----- 涓昏〃淇濆瓨閫昏緫 -----
+                if ((OperationType == 1) && ds.Tables[0].Rows.Count == 0) // 鏂板
+                {
+                    // 淇濆瓨鍓嶆帶鍒�
+                    objJsonResult = BeforeSave_MouldLowerBill(HInterID, HBillNo, 1);
+                    if (objJsonResult.count == 0)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.Message = objJsonResult.Message;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    // 鎻掑叆涓昏〃
+                    oCN.RunProc(@"Insert Into Sc_MouldLowerBillMain   
+                   (HBillType, HBillStatus, HBillSubType, HInterID, HBillNo, HDate
+                   , HYear, HPeriod, HRemark, HMaker, HMakeDate, HOrgID
+                   , HDeptID, HEmpID, HMangerID) values('" + HBillType + "','1','" + HBillType + "'," + HInterID + ",'" + HBillNo + "','" + HDate + "'"
+                           + "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HMaker + "',getdate()," + HOrgID
+                           + "," + HDeptID + "," + HEmpID + "," + HMangerID + ") ");
+                }
+                else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0) // 淇敼鎴栧凡瀛樺湪
+                {
+                    // 淇濆瓨鍓嶆帶鍒�
+                    objJsonResult = BeforeSave_MouldLowerBill(HInterID, HBillNo, 2);
+                    if (objJsonResult.count == 0)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.Message = objJsonResult.Message;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    // 鏇存柊涓昏〃
+                    oCN.RunProc("update Sc_MouldLowerBillMain set " +
+                        "HDate='" + HDate +
+                        "',HYear='" + HYear + "',HPeriod='" + HPeriod + "',HRemark='" + HRemark + "',hupdater='" + HMaker +
+                        "',hupdatedate=getdate(),HDeptID=" + HDeptID + ",HEmpID=" + HEmpID + ",HMangerID=" + HMangerID +
+                        " where HInterID='" + HInterID + "'");
+
+                    // 鍒犻櫎鍘熸湁瀛愯〃锛堜慨鏀规椂閲嶆柊鎻掑叆锛�
+                    oCN.RunProc("delete from Sc_MouldLowerBillSub where HInterID='" + HInterID + "'");
+                }
+
+                // ----- 瀛愯〃淇濆瓨閫昏緫 -----
+                List<ClsSc_MouldLowerBillSub> DetailColl = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_MouldLowerBillSub>>(mainJsonArray);
+                int i = 0;
+                foreach (ClsSc_MouldLowerBillSub oSub in DetailColl)
+                {
+                    i++;
+                    oCN.RunProc(@"Insert Into Sc_MouldLowerBillSub   
+                   (HInterID, HBillNo_bak, HEntryID, HMouldID, HQty
+                   , HSourceID, HICMOInterID, HICMOEntryID, HICMOBillNo
+                   , HProcExchBillNo, HProcExchInterID, HProcExchEntryID
+                   , HScanDate, HBarCode)
+                   values("
+                             + HInterID + ",'" + HBillNo + "'," + i + "," + oSub.HMouldID.ToString() + ",'" + oSub.HQty
+                             + "'," + oSub.HSourceID.ToString() + "," + oSub.HICMOInterID.ToString() + "," + oSub.HICMOEntryID.ToString() + ",'" + oSub.HICMOBillNo.ToString()
+                             + "','" + oSub.HProcExchBillNo.ToString() + "'," + oSub.HProcExchInterID.ToString() + "," + oSub.HProcExchEntryID.ToString()
+                             + ",'" + oSub.HScanDate.ToString() + "','" + oSub.HMouldNumber.ToString() + "') ");
+                }
+
+                // 淇濆瓨鍚庢帶鍒讹紙鏍规嵁鎿嶄綔绫诲瀷锛�
+                if (OperationType == 1) // 鏂板
+                {
+                    objJsonResult = AfterSave_MouldLowerBill(HInterID, HBillNo, 1);
+                    if (objJsonResult.count == 0)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.Message = objJsonResult.Message;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else // 淇敼/澶嶅埗
+                {
+                    objJsonResult = AfterSave_MouldLowerBill(HInterID, HBillNo, 2);
+                    if (objJsonResult.count == 0)
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.Message = objJsonResult.Message;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+
+                // 鎵�鏈夋搷浣滄垚鍔燂紝鎻愪氦浜嬪姟
+                oCN.Commit();
+                              
+                if (OperationType == 1) // 鏂板
+                {                  
+                    // 鑷姩鐢熸垚宸ヤ綔鑱旂郴鍗曪紙鍗庤垷涓撶敤锛�
+                    string sReturn = "";
+                    if (oSystemParameter.ShowBill(ref sReturn) == true)
+                    {
+                        if (oSystemParameter.omodel.WMS_CampanyName == "鍗庤垷")
+                        {
+                            var ds2 = oCN.RunProcReturn("exec h_p_OA_WorkLinkBill_Create " + HInterID + "," + 3847, "h_p_OA_WorkLinkBill_Create");
+                            if (ds2 != null && ds2.Tables[0].Rows.Count > 0)
+                            {
+                                int HInterID0 = int.Parse(ds2.Tables[0].Rows[0]["NewHInterID"].ToString());
+                                LogService.Write("鎵ц娑堟伅鎺ㄩ��..." + HInterID0);
+                                Service.GeTuiService.PubishSingle(HInterID0);
+                            }
+                        }
+                    }
+                }
+
+                // 杩斿洖鎴愬姛缁撴灉锛堟敞鎰忓師閫昏緫涓娇鐢ㄤ簡 ds.Tables[0]锛�
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鏂板鍗曟嵁鎴愬姛锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                oCN.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "Exception锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
+        #region 涓嬫ā鍗� PDA鏂板  鑰佺殑  鑰佺殑app鍦ㄥ彂淇℃伅鐨勬椂鍊欏洖瀵艰嚧琛ㄨ閿佷綇
+        [Route("Sc_MouldUpperBill/AddSc_MouldLowerBill_PDA_OLD")]
+        [HttpPost]
+        public object AddSc_MouldLowerBill_PDA_OLD([FromBody] JObject oMain)
         {
             var _value = oMain["oMain"].ToString();
             string msg1 = _value.ToString();
@@ -2447,7 +2620,17 @@
                     if (oSystemParameter.omodel.WMS_CampanyName == "鍗庤垷")
                     {
                         //鑷姩鐢熸垚宸ヤ綔鑱旂郴鍗�
-                        oCN.RunProc("exec h_p_OA_WorkLinkBill_Create " + HInterID + "," + 3847);
+                        var ds2 = oCN.RunProcReturn("exec h_p_OA_WorkLinkBill_Create " + BillOld.omodel.HInterID + "," + 3847, "h_p_OA_WorkLinkBill_Create");
+
+                        if (ds2 != null && ds2.Tables[0].Rows.Count > 0)
+                        {
+                            int HInterID0 = int.Parse(ds2.Tables[0].Rows[0]["NewHInterID"].ToString());
+                            LogService.Write("鎵ц娑堟伅鎺ㄩ��..." + HInterID0);
+
+                            // 瑙﹀彂娑堟伅鎺ㄩ��
+                            //Service.GeTuiService.PubishSingle(HInterID0);
+
+                        }
                     }                   
                 }
              

--
Gitblit v1.9.1