From fcb0eba8e37fd7ea5e24f72fd00964979dd3227e Mon Sep 17 00:00:00 2001
From: jingh <jingh@LAPTOP-I53VDLOO>
Date: 星期六, 07 八月 2021 00:49:59 +0800
Subject: [PATCH] 77

---
 WebAPI/Controllers/CJGL/Cj_StationInBillController.cs |  331 ++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 301 insertions(+), 30 deletions(-)

diff --git a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
index 761dd47..752f464 100644
--- a/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
+++ b/WebAPI/Controllers/CJGL/Cj_StationInBillController.cs
@@ -21,7 +21,6 @@
         DataSet ds1;
 
 
-
         /// <summary>
         /// 鏂板鍗曟嵁-淇濆瓨鎸夐挳
         ///鍙傛暟锛歴tring sql銆�
@@ -38,6 +37,43 @@
                 //濮斿宸ュ簭鍙戝嚭鍙嶅簭鍒楀寲
                 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
                 string HBillNo = list[0].HBillNo;//閫掑叆type寰楀埌鐨勫崟鎹彿
@@ -48,12 +84,9 @@
                 string HRemark = list[0].HRemark;//澶囨敞
                 long HICMOInterID = list[0].HICMOInterID;//浠诲姟鍗旾D
                 string HICMOBillNo = list[0].HICMOBillNo;//浠诲姟鍗�
-                int HProcPlanInterID = 0;
-                int HProcPlanEntryID = 0;
+                long HProcPlanInterID = 0;
+                long 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;//浠诲姟鍗曟暟閲�
@@ -72,28 +105,140 @@
                 double HPieceQty = list[0].HPieceQty;//鎺ユ敹浠舵暟
                 string HSourceName = list[0].HSourceName;//鐢熶骇璧勬簮鍚嶇О
                 long HCenterID = list[0].HCenterID;//宸ヤ綔涓績ID
-                string HProcNo = list[0].HProcNo;//娴佹按鍙�
                 string HOrderProcNO = list[0].HOrderProcNO;//璁㈠崟璺熻釜鍙�
+                //鍗曟嵁瀹屾暣鎬у垽鏂�
+                if (HMaterID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "浜у搧娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HSourceID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "宸ヤ綔涓績娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HProcID <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "褰撳墠宸ュ簭娌℃湁閫夋嫨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                if (HQty <= 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎺ユ敹涓暟涓嶈兘涓�0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                ds = oCN.RunProcReturn("select HInterID from Sc_ProcessExchangeBillSub Where hinterid=" + HProcExchInterID + " and hprocno<" + HProcNo + " order by hprocno", "Sc_ProcessExchangeBillSub");
+                if (ds == null)
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鍒ゆ柇棣栭亾宸ュ簭澶辫触锛屼笉鍏佽淇濆瓨锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+
                 //鑻AINDI閲嶅鍒欓噸鏂拌幏鍙�
                 oCN.BeginTran();
-                //涓昏〃
-                oCN.RunProc("Insert Into Sc_StationInBillMain " +
-                "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
-                ",HYear,HPeriod,HRemark" +
-                ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" +
-                ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" +
-                ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" +
-                ",HSupID,HQty,HPrice,HMoney,HPieceQty,HSourceName,HCenterID" +
-                ",HProcNo,HOrderProcNO" +
-                ") " +
-                " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
-                "," + HYear + "," + HPeriod + ",'" + HRemark + "'" +
-                "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
-                ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID +
-                "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" +
-                "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + ",'" + HSourceName + "'," + HCenterID +
-                ",'" + HProcNo + "','" + HOrderProcNO + "'" +
-              ") ");
+
+                if ("Add".Equals(eventType))
+                {
+                    if (!AllowbillNo(HBillNo))
+                    {
+                        oCN.RollBack();
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "鍗曟嵁鍙烽噸澶嶏紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    //鎻掑叆涓昏〃
+                    oCN.RunProc("Insert Into Sc_StationInBillMain " +
+                    "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
+                    ",HYear,HPeriod,HRemark" +
+                    ",HICMOInterID,HICMOBillNo,HProcPlanInterID,HProcPlanEntryID,HProcPlanBillNo,HProcExchInterID,HProcExchEntryID" +
+                    ",HProcExchBillNo,HMaterID,HProcID,HICMOQty,HPlanQty,HStationInTime,HSourceID" +
+                    ",HGroupID,HDeptID,HEmpID,HBarCode,HAddr,HBarCodeMaker,HBarCodeMakeDate" +
+                    ",HSupID,HQty,HPrice,HMoney,HPieceQty,HSourceName,HCenterID" +
+                    ",HProcNo,HOrderProcNO" +
+                    ") " +
+                    " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
+                    "," + HYear + "," + HPeriod + ",'" + HRemark + "'" +
+                    "," + HICMOInterID + ",'" + HICMOBillNo + "'," + HProcPlanInterID + "," + HProcPlanEntryID + ",'" + HProcPlanBillNo + "'," + HProcExchInterID + "," + HProcExchEntryID +
+                    ",'" + HProcExchBillNo + "'," + HMaterID + "," + HProcID + "," + HICMOQty + "," + HPlanQty + ",getdate()," + HSourceID +
+                    "," + HGroupID + "," + HDeptID + "," + HEmpID + ",'" + HBarCode + "','" + HAddr + "','" + HBarCodeMaker + "',getdate()" +
+                    "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HPieceQty + ",'" + HSourceName + "'," + HCenterID +
+                    ",'" + HProcNo + "','" + HOrderProcNO + "'" +
+                    ") ");
+                }
+                else if ("Modify".Equals(eventType))
+                {
+                    oCN.RunProc("exec h_p_Mes_ProcessExchangeRelationQty_In " + HProcExchInterID + ",-1");
+                    //鏇存柊涓昏〃
+                    oCN.RunProc("UpDate Sc_StationInBillMain set  " +
+                    " HBillNo='" + HBillNo + "'" +  
+                    ",HYear='" + HYear + "'" +
+                    ",HPeriod='" + HPeriod + "'" +
+                    ",HBillStatus='" + HBillStatus + "'" +
+                    ",HRemark='" + HRemark + "'" +
+                    ",HUpDater='" + HMaker + "'" +
+                    ",HUpDateDate=getdate()" +
+                    ",HSupID=" + HSupID +
+                    ",HQty=" + HQty +
+                    ",HPieceQty=" + HPieceQty +
+                    ",HSourceName='" + HSourceName + "'" +
+                    ",HICMOInterID=" + HICMOInterID +
+                    ",HICMOBillNo='" + HICMOBillNo + "'" +
+                    ",HProcPlanInterID=" + HProcPlanInterID +
+                    ",HProcPlanEntryID=" + HProcPlanEntryID +
+                    ",HProcPlanBillNo='" + HProcPlanBillNo + "'" +
+                    ",HProcExchInterID=" + HProcExchInterID +
+                    ",HProcExchEntryID=" + HProcExchEntryID +
+                    ",HProcExchBillNo='" + HProcExchBillNo + "'" +
+                    ",HMaterID=" + HMaterID +
+                    ",HProcID=" + HProcID +
+                    ",HICMOQty=" + HICMOQty +
+                    ",HPlanQty=" + HPlanQty +
+                    ",HStationInTime=getdate()" +
+                    ",HSourceID=" + HSourceID +
+                    ",HGroupID=" + HGroupID +
+                    ",HDeptID=" + HDeptID +
+                    ",HEmpID=" + HEmpID +
+                    ",HBarCode='" + HBarCode + "'" +
+                    ",HSaveBillFlag=0 " +
+                    ",HAddr='" + HAddr + "'" +
+                    ",HBarCodeMaker='" + HBarCodeMaker + "'" +
+                    ",HProcNo='" + HProcNo + "'" +
+                    ",HOrderProcNO='" + HOrderProcNO + "'" +
+                    " where HInterID=" + HInterID);
+                }
+                else
+                {
+                    oCN.RollBack();
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鎿嶄綔绫诲瀷鏃犳晥锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                
+
+
+                
+
                 ds = oCN.RunProcReturn("exec h_p_MES_StationInBill_QtyCtrl " + HInterID + "", "h_p_MES_StationInBill_QtyCtrl");
                 if (ds == null)
                 {
@@ -129,10 +274,10 @@
                                     " Where a.HInterID=" + HProcExchInterID + " and b.HEntryID=" + HProcExchEntryID + " ", "Sc_ProcessExchangeBillMain");
                 if (ds1 == null || ds1.Tables[0].Rows.Count == 0)
                 {
-                    
+
                 }
                 else if (ClsPub.isStrNull(ds1.Tables[0].Rows[0]["HFstProc"]) == "鏄�")
-                { 
+                {
 
                 }
                 oCN.Commit();
@@ -151,6 +296,15 @@
                 objJsonResult.data = null;
                 return objJsonResult;
             }
+        }
+        private bool AllowbillNo(string HBillNo)
+        {
+            ds = oCN.RunProcReturn("select HBillNo from Sc_StationInBillMain where  HBillNo = '" + HBillNo + "'", "Sc_StationInBillMain");
+            if (ds == null || ds.Tables[0].Rows.Count == 0)
+            {
+                return true;
+            }
+            return false;
         }
 
         /// <summary>
@@ -206,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
             {
@@ -226,7 +380,46 @@
                 {
                     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>
+        /// 缂栬緫椤甸潰鏍规嵁id鑾峰彇宸ュ簭杩涚珯鎺ユ敹鍗曚俊鎭�
+        ///鍙傛暟锛歴tring sql銆�
+        ///杩斿洖鍊硷細object銆�
+        /// </summary>
+        [Route("Cj_StationInBill/GetStationInBill")]
+        [HttpGet]
+        public object GetStationOutBill(int HInterID)
+        {
+            try
+            {
+                ds = oCN.RunProcReturn("select * from h_v_GetStationInBill where HInterID = " + HInterID, "h_v_GetStationInBill");
+                if (ds == null || ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "宸ュ簭杩涚珯鎺ユ敹鍗曚俊鎭幏鍙栧け璐ワ紒";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -249,6 +442,84 @@
             }
         }
 
+        #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;
+                }
+                Int64 lngBillKey = 0;
+                lngBillKey = HInterID;
+                if (lngBillKey == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "HInterID涓�0锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+                DAL.ClsSc_StationInBill oBill = new DAL.ClsSc_StationInBill();
+                //鏌ョ湅鏄惁宸插鏍�,鍏抽棴,浣滃簾
+                if (oBill.ShowBill(lngBillKey, 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 (oBill.CheckBill(lngBillKey, ref DBUtility.ClsPub.sExeReturnInfo) == true)
+                {
+                    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;
+                }
+
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "瀹℃牳澶辫触锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+        #endregion
+
 
         //
     }

--
Gitblit v1.9.1