From 46ca053239e9841f4880873494bd1d58b275b6ad Mon Sep 17 00:00:00 2001
From: black-goat-me <226547893@qq.com>
Date: 星期五, 19 五月 2023 23:59:16 +0800
Subject: [PATCH] 工序流转卡维护:单据变更(实际发布)

---
 WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs |   96 +++++++++++++++++++++++++++++++++++-------------
 1 files changed, 70 insertions(+), 26 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
index 099cf8e..0b69b2c 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -118,6 +118,7 @@
                 double HWorkTimes = list[0].HWorkTimes;//宸ユ椂
                 long HQCCheckID = list[0].HQCCheckID;//妫�楠屽憳ID
                 long HPRDOrgID = list[0].HPRDOrgID;//缁勭粐ID
+                double HmaterOutqty = list[0].HmaterOutqty;//鐧藉澂鍙戝竷
                 //鍗曟嵁瀹屾暣鎬у垽鏂�
                 if (HProcExchInterID <= 0)
                 {
@@ -176,14 +177,6 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                if (HEmpID == 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "鎿嶄綔鍛樻病鏈夐�夋嫨锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
                 //if (HQCCheckID == 0)
                 //{
                 //    objJsonResult.code = "0";
@@ -192,14 +185,42 @@
                 //    objJsonResult.data = null;
                 //    return objJsonResult;
                 //}
-                //if (HSourceID == 0)
-                //{
-                //    objJsonResult.code = "0";
-                //    objJsonResult.count = 0;
-                //    objJsonResult.Message = "鐢熶骇璧勬簮娌℃湁閫夋嫨锛�";
-                //    objJsonResult.data = null;
-                //    return objJsonResult;
-                //}
+
+                //鑾峰彇绯荤粺鍙傛暟
+                string Ret = "";
+                if (oSystemParameter.ShowBill(ref Ret))
+                {
+                    //鍒ゆ柇瀹㈡埛涓嶄负榫欏北姹介厤
+                    if (oSystemParameter.omodel.WMS_CampanyName != "榫欏北姹介厤"&& oSystemParameter.omodel.WMS_CampanyName != "鐟炰笌绁�") //绯荤粺鍙傛暟                      
+                    {
+                        if (HSourceID == 0)
+                        {
+                            objJsonResult.code = "0";
+                            objJsonResult.count = 0;
+                            objJsonResult.Message = "鐢熶骇璧勬簮娌℃湁閫夋嫨锛�";
+                            objJsonResult.data = null;
+                            return objJsonResult;
+                        }                                     
+                    }
+                    //鍒ゆ柇瀹㈡埛涓洪緳灞辨苯閰�
+                    else if (oSystemParameter.omodel.WMS_CampanyName == "榫欏北姹介厤")
+                    {
+                        //鍒ゆ柇鏄惁涓哄宸ヤ綅
+                        ds = oCN.RunProcReturn("select * from h_v_GetStationOutBill_Detail where 宸ュ簭ID = " + HProcID + " and 鐗╂枡ID = " + HMaterID + " and 娴佽浆鍗″彿 = '" + HProcExchBillNo + "'", "h_v_GetStationOutBill_Detail");
+                        if (ds != null && ds.Tables[0].Rows.Count <= 1)
+                        {
+                            if (HEmpID == 0)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鎿嶄綔鍛樻病鏈夐�夋嫨锛�";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }
+                    }
+                }
+               
                 //if (HCenterID == 0)
                 //{
                 //    objJsonResult.code = "0";
@@ -282,6 +303,7 @@
                     ",HSupID,HQty,HPrice,HMoney,HBadCount,HCenterID,HProcNo,HOrderProcNO,HSourceNameList" +
                     ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" +
                     ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" +
+                       ",HmaterOutqty" +
                     ") " +
                     " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
                     "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
@@ -291,7 +313,7 @@
                     "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" +
                     "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) +
                     "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID +
-                    ") ");
+                     ","+ HmaterOutqty + ") ");
                 }
                 else if ("Modify".Equals(eventType))
                 {
@@ -1603,14 +1625,22 @@
                 DAL.ClsSc_StationOutBill oBill = new DAL.ClsSc_StationOutBill();
                 if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
                 {
-                    if (oBill.omodel.HMaker != HDeleteMan && (HDeleteMan != "admin" && HDeleteMan != "Admin"))
+                    string sReturn = "";
+                    if (oSystemParameter.ShowBill(ref sReturn))
                     {
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒";
-                        objJsonResult.data = null;
-                        return objJsonResult;
+                        if (oSystemParameter.omodel.MES_StationOutBill_DeleteCtl == "Y")
+                        {
+                            if (oBill.omodel.HMaker != HDeleteMan && (HDeleteMan != "admin" && HDeleteMan != "Admin"))
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = "鍙兘鍒犻櫎鏈汉鐨勫崟鎹紒";
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                        }
                     }
+                   
 
                     SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
                     DataSet ds;
@@ -1637,6 +1667,17 @@
                         objJsonResult.code = "0";
                         objJsonResult.count = 0;
                         objJsonResult.Message = "鍗曟嵁宸茬粡瀹℃牳,涓嶈兘鍒犻櫎锛�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+
+                    ds = oCn.RunProcReturn($"exec h_p_DelOutInBill {HInterID},'MES_StationOutBill_DeleteRelationCtl'", "h_p_DelOutInBill");
+
+                    if (ds.Tables[0].Rows[0][0].ToString()== "0")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "绯荤粺鍙傛暟鎺у埗,宸叉湁涓嬮亾宸ュ簭,涓嶈兘鍒犻櫎锛�";
                         objJsonResult.data = null;
                         return objJsonResult;
                     }
@@ -2190,6 +2231,7 @@
                 List<ClsSc_StationOutBillSub_Emp> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_StationOutBillSub_Emp>>(msg2);
                 List<ClsSc_StationOutBillSub_Emp> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsSc_StationOutBillSub_Emp>>(msg3);
 
+                long HInterID = mainList[0].HInterID;
                 long HWorkEmpID = subList[0].HWorkEmpID;
                 long HWorkSourceID = subList[0].HWorkSourceID;
                 decimal HQty = subList[0].HQty;
@@ -2197,21 +2239,23 @@
                 decimal HProcPrice = subList[0].HProcPrice;
                 decimal HMoney = subList[0].HMoney;
                 long HWorkProcID = mainList[0].HWorkProcID;
-
+                var EntryID = 0;
                 foreach (ClsSc_StationOutBillSub_Emp oSub in subList)
                 {
                     //ds = oCN.RunProcReturn("select * from h_v_IF_ICMOBillList where hmainid=" + HInterID + " and 鍗曟嵁鍙�='" + HBillNo + "'", "h_v_IF_ICMOBillList");
 
                     if ((OperationType == 1 || OperationType == 2))//鏂板 && ds.Tables[0].Rows.Count == 0
                     {
+                        EntryID++;
+
                         string sql = string.Empty;
                         sql = $@"
                         Insert into Sc_StationOutBillSub_Emp 
                         (HInterID,HEntryID,HBillNo_bak ,HRemark ,HSourceInterID
                         ,HSourceEntryID ,HSourceBillNo ,HSourceBillType ,HRelationQty ,HRelationMoney 
                         ,HWorkEmpID ,HWorkSourceID ,HQty ,HRate ,HProcPrice ,HMoney ,HWorkProcID) 
-                        values(" + 1 + "," + 2 + "," + "'" + mainList[0].HBillNo_bak + "','" + "HRemark" + "'," + 0 + "," + 0 + ",'" + " " + "','" + "HSource" + "'," + 
-                        "0" + "," + 0 + "," + 0 + "," + 0 + "," + 0 + "," + 0 + "," + 0 + "," + 0 + "," + 0 + ")";
+                        values(" + HInterID + "," + EntryID + "," + "'" + mainList[0].HBillNo_bak + "','" + mainList[0].HRemark + "'," + 0 + "," + 0 + ",'" + " " + "','" + " " + "'," + 
+                        "0" + "," + 0 + "," + oSub.HWorkEmpID + "," + oSub.HWorkSourceID + "," + oSub.HQty + "," + oSub.HRate + "," + oSub.HProcPrice + "," + oSub.HMoney + "," + HWorkProcID + ")";
 
                         oCN.RunProc(sql);
                     }

--
Gitblit v1.9.1