From 7c7845a68a0e5c7a544eeedfae2cb038362cefd8 Mon Sep 17 00:00:00 2001
From: zgq <519541279@qq.com>
Date: 星期五, 20 八月 2021 14:30:26 +0800
Subject: [PATCH] 工序进站接收增加编辑前判断及审核方法

---
 WebAPI/Controllers/CJGL/Cj_StationInBillController.cs |  366 ++++++++++++++++++++++++++++-----------------------
 1 files changed, 201 insertions(+), 165 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
index cc78bce..a82414a 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
@@ -21,131 +21,6 @@
         DataSet ds1;
 
 
-        ///// <summary>
-        ///// test
-        /////鍙傛暟锛歴tring sql銆�
-        /////杩斿洖鍊硷細object銆�
-        ///// </summary>
-        //[Route("Cj_StationInBill/AddBill")]
-        //[HttpPost]
-        //public object AddBill([FromBody] JObject oMain)
-        //{
-        //    var _value = oMain["oMain"].ToString();
-        //    string msg1 = _value.ToString();
-        //    try
-        //    {
-        //        //濮斿宸ュ簭鍙戝嚭鍙嶅簭鍒楀寲
-        //        msg1 = "[" + msg1.ToString() + "]";
-        //        List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg1);
-        //        string BillType = "3790";
-        //        long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
-        //        string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
-        //        int HBillStatus = 0;
-        //        string HMaker = list[0].HMaker;//鍒跺崟浜�
-        //        int HYear = 2021;
-        //        long HPeriod = 1;
-        //        string HRemark = list[0].HRemark;//澶囨敞
-        //        long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D
-        //        string HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗�
-        //        int HProcPlanInterID = 0;
-        //        int HProcPlanEntryID = 0;
-        //        string HProcPlanBillNo = "";
-        //        int HProcExchInterID = 0;
-        //        int HProcExchEntryID = 0;
-        //        string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗�
-        //        long HMaterID = list[0].HMaterID;//浜у搧ID
-        //        long HProcID = list[0].HProcID;//褰撳墠宸ュ簭
-        //        double HICMOQty = list[0].HICMOQty;//浠诲姟鍗曟暟閲�
-        //        double HPlanQty = list[0].HPlanQty;//娴佽浆鍗℃暟閲�
-        //        long HSourceID = list[0].HSourceID;//鐢熶骇璧勬簮ID
-        //        long HGroupID = list[0].HGroupID;//鐝粍ID
-        //        long HDeptID = 0;
-        //        long HEmpID = list[0].HEmpID;//鎺ユ敹浜篒D
-        //        string HBarCode = list[0].HBarCode;//鏉″舰鐮�
-        //        string HAddr = "";
-        //        string HBarCodeMaker = "";
-        //        long HSupID = 0;
-        //        double HQty = list[0].HQty;//鎺ユ敹鏁伴噺
-        //        double HPrice = 0;
-        //        double HMoney = 0;
-        //        double HPieceQty = list[0].HPieceQty;//鎺ユ敹浠舵暟
-        //        string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О
-        //        long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID
-        //        long HProcNo = list[0].HProcNo;//娴佹按鍙�
-        //        string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙�
-
-        //        ListModels oListModels = new ListModels();
-
-        //        DAL.ClsSc_StationInBill BillNew = new DAL.ClsSc_StationInBill();
-
-        //        BillNew.omodel.HInterID = HInterID;
-        //        BillNew.omodel.HYear = HYear;
-        //        BillNew.omodel.HPeriod = HPeriod;
-        //        BillNew.omodel.HBillNo = HBillNo;
-        //        BillNew.omodel.HICMOBillNo = HICMOBillNo;
-        //        BillNew.omodel.HICMOInterID = HICMOInterID;
-        //        BillNew.omodel.HProcExchInterID = HProcExchInterID;
-        //        BillNew.omodel.HProcExchEntryID = HProcExchEntryID;
-        //        BillNew.omodel.HProcExchBillNo = HProcExchBillNo;
-        //        BillNew.omodel.HProcID = HProcID;
-        //        BillNew.omodel.HMaterID = HMaterID;
-        //        BillNew.omodel.HStationInTime = DateTime.Now;
-        //        BillNew.omodel.HEmpID = HEmpID;
-        //        BillNew.omodel.HSourceID = HSourceID;
-        //        BillNew.omodel.HGroupID = HGroupID;
-        //        BillNew.omodel.HICMOQty = HICMOQty;
-        //        BillNew.omodel.HPlanQty = HPlanQty;
-        //        BillNew.omodel.HQty = HQty;
-        //        BillNew.omodel.HPieceQty = HPieceQty;
-        //        BillNew.omodel.HSourceName = HSourceName;
-        //        BillNew.omodel.HCenterID = HCenterID;
-        //        BillNew.omodel.HBillStatus = HBillStatus;
-        //        BillNew.omodel.HMaker = HMaker;
-        //        BillNew.omodel.HRemark = HRemark;
-        //        BillNew.omodel.HProcPlanInterID = HProcPlanInterID;
-        //        BillNew.omodel.HProcPlanEntryID = HProcPlanEntryID;
-        //        BillNew.omodel.HProcPlanBillNo = HProcPlanBillNo;
-        //        BillNew.omodel.HDeptID = HDeptID;
-        //        BillNew.omodel.HBarCode = HBarCode;
-        //        BillNew.omodel.HAddr = HAddr;
-        //        BillNew.omodel.HBarCodeMaker = HBarCodeMaker;
-        //        BillNew.omodel.HSupID = HSupID;
-        //        BillNew.omodel.HPrice = HPrice;
-        //        BillNew.omodel.HMoney = HMoney;
-
-        //        BillNew.omodel.HProcNo = HProcNo;
-        //        BillNew.omodel.HOrderProcNO = HOrderProcNO;
-        //        bool bResult = BillNew.AddBill(ref ClsPub.sExeReturnInfo);
-
-        //        //鎻愮ず
-        //        if (bResult == true)
-        //        {
-        //            objJsonResult.code = "1";
-        //            objJsonResult.count = 1;
-        //            objJsonResult.Message = "鍗曟嵁瀛樼洏瀹屾瘯!鍗曟嵁鍙�:" + HBillNo.Trim();
-        //            objJsonResult.data = null;
-        //            return objJsonResult;
-        //        }
-        //        else
-        //        {
-        //            objJsonResult.code = "0";
-        //            objJsonResult.count = 0;
-        //            objJsonResult.Message = "淇濆瓨澶辫触!鍘熷洜:" + ClsPub.sExeReturnInfo;
-        //            objJsonResult.data = null;
-        //            return objJsonResult;
-        //        }
-        //    }
-        //    catch (Exception e)
-        //    {
-        //        objJsonResult.code = "0";
-        //        objJsonResult.count = 0;
-        //        objJsonResult.Message = "Exception锛�" + e.ToString();
-        //        objJsonResult.data = null;
-        //        return objJsonResult;
-        //    }
-        //}
-
-
         /// <summary>
         /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
         ///鍙傛暟锛歴tring sql銆�
@@ -162,6 +37,42 @@
                 //濮斿宸ュ簭鍙戝嚭鍙嶅簭鍒楀寲
                 msg1 = "[" + msg1.ToString() + "]";
                 List<StationBill> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<StationBill>>(msg1);
+                long HProcExchInterID = list[0].lngBillKey;//娴佽浆鍗′富鍐呯爜
+                if (HProcExchInterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "閿欒鐨勬祦杞崱鍐呯爜锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                long HProcExchEntryID = list[0].lngBillSubKey;//娴佽浆鍗″瓙鍐呯爜
+                if (HProcExchEntryID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛佽杈撳叆娴佹按鍙峰悗鍥炶溅锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                long HProcNo = list[0].HProcNo;//娴佹按鍙�
+                if (HProcNo <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗�
+                if (HProcExchBillNo == "")
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娴佽浆鍗″彿娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
                 string eventType = list[0].eventType;
                 string BillType = "3790";
                 long HInterID = list[0].HInterID;//閫掑叆type寰楀埌鐨勫崟鎹甀D
@@ -176,9 +87,6 @@
                 long HProcPlanInterID = 0;
                 long HProcPlanEntryID = 0;
                 string HProcPlanBillNo = "";
-                long HProcExchInterID = list[0].lngBillKey;//娴佽浆鍗′富鍐呯爜
-                long HProcExchEntryID = list[0].lngBillSubKey;//娴佽浆鍗″瓙鍐呯爜
-                string HProcExchBillNo = list[0].HProcExchBillNo;//娴佽浆鍗�
                 long HMaterID = list[0].HMaterID;//浜у搧ID
                 long HProcID = list[0].HProcID;//褰撳墠宸ュ簭
                 double HICMOQty = list[0].HICMOQty;//浠诲姟鍗曟暟閲�
@@ -197,41 +105,8 @@
                 double HPieceQty = list[0].HPieceQty;//鎺ユ敹浠舵暟
                 string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О
                 long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID
-                long HProcNo = list[0].HProcNo;//娴佹按鍙�
                 string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙�
                 //鍗曟嵁瀹屾暣鎬у垽鏂�
-                if (HProcExchInterID <= 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "閿欒鐨勬祦杞崱鍐呯爜锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                if (HProcExchEntryID <= 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "閿欒鐨勬祦杞崱瀛愬唴鐮侊紒";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                if (HProcNo <= 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "娴佹按鍙锋病鏈夐�夋嫨锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                if (HProcExchBillNo == "")
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "娴佽浆鍗″彿娌℃湁閫夋嫨锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
                 if (HMaterID <= 0)
                 {
                     objJsonResult.code = "0";
@@ -240,7 +115,7 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-                if (HSourceID <= 0)
+                if (HCenterID <= 0)
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -485,9 +360,9 @@
         ///鍙傛暟锛歴tring sql銆�
         ///杩斿洖鍊硷細object銆�
         /// </summary>
-        [Route("Cj_StationInBill/list")]
+        [Route("Cj_StationInBill/get_Display")]
         [HttpGet]
-        public object list(string sWhere)
+        public object get_Display(string sWhere)
         {
             try
             {
@@ -505,7 +380,53 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "false锛�";
+                    objJsonResult.Message = "鏌ヨ鏁版嵁寮傚父锛岃涓庣鐞嗗憳鑱旂郴锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    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;
+            }
+        }
+
+
+        /// <summary>
+        /// 缂栬緫鍓嶅垽鏂�
+        /// </summary>
+        [Route("Cj_StationInBill/set_ShowBillJudge")]
+        [HttpGet]
+        public object set_ShowBillJudge(string HBillNo)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_DelCtrl  '" + HBillNo + "'", "h_p_MES_StationInBill_DelCtrl");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍒ゆ柇鍏宠仈澶辫触锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else if(ds.Tables[0].Rows.Count > 0 && Pub_Class.ClsPub.isInt(ds.Tables[0].Rows[0][0]) == 2)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = Pub_Class.ClsPub.isStrNull(ds.Tables[0].Rows[0][1]);
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -567,7 +488,122 @@
             }
         }
 
+        #region [瀹℃牳]
+        [Route("Cj_StationInBill/set_CheckBill")]
+        [HttpGet]
+        public object set_CheckBill(int HInterID,string CurUserName)
+        {
+            try
+            {
+                string ModRightNameCheck = "MES_StationInBill_Check";
+                //瀹℃牳鏉冮檺
+                if (!DBUtility.ClsPub.Security_Log(ModRightNameCheck, 1, true,CurUserName))
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触锛佹棤鏉冮檺锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HInterID == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁ID涓�0锛屼笉鑳藉鏍革紒";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                DAL.ClsSc_StationInBill oBill = new DAL.ClsSc_StationInBill();
+                //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾
+                if (oBill.ShowBill(HInterID, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    if (oBill.omodel.HChecker.Trim() != "")
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁宸插鏍�!涓嶈兘鍐嶆瀹℃牳";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍗曟嵁涓嶅瓨鍦�!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                //瀹℃牳
+                if (Cj_StationInBillCheckBill(HInterID,CurUserName, ref DBUtility.ClsPub.sExeReturnInfo))
+                {
+                    objJsonResult.code = "1";
+                    objJsonResult.count = 1;
+                    objJsonResult.Message = "瀹℃牳鎴愬姛!";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "瀹℃牳澶辫触!鍘熷洜:" + DBUtility.ClsPub.sExeReturnInfo;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
 
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
+        //瀹℃牳
+        public bool Cj_StationInBillCheckBill(Int64 lngBillKey, string CurUserName, ref string sReturn)
+        {
+            try
+            {
+                string HChecker = CurUserName;
+                string HCheckDate = DBUtility.ClsPub.GetServerDate(-1);
+                oCN.BeginTran();
+                ds = oCN.RunProcReturn("Select * from Sc_StationInBillMain Where HInterID=" + lngBillKey.ToString(), "Sc_StationInBillMain");
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    sReturn = "鍗曟嵁鏈壘鍒帮紒";
+                    return false;
+                }
+                oCN.RunProc(" Update Sc_StationInBillMain set HChecker='" + HChecker + "',HCheckDate='" + HCheckDate + "' Where HInterID=" + lngBillKey.ToString());
+                oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_Check_In " + lngBillKey.ToString() + ",1");
+                //鍒ゆ柇鏄惁鏄� 棣栭亾宸ュ簭
+                DataSet ds1;
+                ds1 = oCN.RunProcReturn("select HLastProc,HFstProc " +
+                    " from Sc_ProcessExchangeBillMain a " +
+                    " inner join Sc_ProcessExchangeBillSub b on a.HInterID=b.HInterID " +
+                    " Where a.HInterID=(Select HProcExchInterID from Sc_StationInBillMain Where HInterID=55) " +
+                    " and b.HEntryID=(Select HProcExchEntryID from Sc_StationInBillMain Where HInterID=55)", "Sc_ProcessExchangeBillMain");
+                if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
+                {
+                }
+                else if (Pub_Class.ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "鏄�")
+                {
+                }
+                sReturn = sReturn + " 瀹℃牳鍔熻兘锛�";
+                oCN.Commit();
+                return true;
+            }
+            catch (Exception e)
+            {
+                sReturn = e.Message;
+                oCN.RollBack();
+                return false; ;
+            }
+        }
+        #endregion
 
 
         //

--
Gitblit v1.9.1