From 40717d3db9ebad0ae81409396ff3c680e947cb34 Mon Sep 17 00:00:00 2001
From: YL <YL@LAPTOP-SE03PLUR>
Date: 星期三, 04 八月 2021 19:19:18 +0800
Subject: [PATCH] 优化F7人员、往来单位通过组织过滤

---
 WebAPI/Controllers/MoveStockBillController.cs |  138 +++++++++------------------------------------
 1 files changed, 28 insertions(+), 110 deletions(-)

diff --git a/WebAPI/Controllers/MoveStockBillController.cs b/WebAPI/Controllers/MoveStockBillController.cs
index f86d8e4..7b0c127 100644
--- a/WebAPI/Controllers/MoveStockBillController.cs
+++ b/WebAPI/Controllers/MoveStockBillController.cs
@@ -44,7 +44,7 @@
         public DataSet ds = new DataSet();
         public ClsGy_BarCodeBill_WMS_Model_View oView = new ClsGy_BarCodeBill_WMS_Model_View();
         public ClsKF_PonderationBillMain_Temp model = new ClsKF_PonderationBillMain_Temp();
-        public JsonResult objJsonResult = new JsonResult();
+        private JsonResult objJsonResult = new JsonResult();
         private json objjson = new json();
 
         /// <summary>
@@ -170,7 +170,7 @@
         //        {
         //            sQty = sRelQty;
         //        }
-        //        else if(sRelQty == 0)
+        //        else if (sRelQty == 0)
         //        {
         //            objJsonResult.code = "0";
         //            objJsonResult.count = 0;
@@ -221,7 +221,7 @@
         /// <returns></returns>
         [Route("MoveStockBill/get_InfoByBarCode_Source_Json")]
         [HttpGet]
-        public object get_InfoByBarCode_Source_Json(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID)
+        public object get_InfoByBarCode_Source_Json(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID, string HMaker, Int64 HOrgID)
         {
             try
             {
@@ -230,7 +230,7 @@
                 dal.GetInfoByNumber_View(sCode);
                 if (dal.omodel_View.HBarCodeType != "鎵樼洏鏉$爜")
                 {
-                    return get_InfoByBarCode_Source_Json_s(sCode, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID);
+                    return get_InfoByBarCode_Source_Json_s(sCode, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID, HMaker, HOrgID);
                 }
                 else
                 {
@@ -256,8 +256,8 @@
                         for (int i = 0; i < dsTBarCode.Tables[0].Rows.Count; i++)
                         {
                             sBarCode_MX = DBUtility.ClsPub.isStrNull(dsTBarCode.Tables[0].Rows[i]["HBarCodeMX"]);
-                            objJsonResult= (JsonResult)get_InfoByBarCode_Source_Json_s(sBarCode_MX, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID);
-                            if(objJsonResult.code == "0")
+                            objJsonResult = (JsonResult)get_InfoByBarCode_Source_Json_s(sBarCode_MX, sInterID, sBillNo, sQty, HWHID, HSPID, SCWhID, SCSPID, HMaker,HOrgID);
+                            if (objJsonResult.code == "0")
                             {
                                 return objJsonResult;
                             }
@@ -265,7 +265,7 @@
                         return objJsonResult;
                     }
                 }
-                
+
             }
             catch (Exception e)
             {
@@ -277,7 +277,7 @@
             }
         }
 
-        public object get_InfoByBarCode_Source_Json_s(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID)
+        public object get_InfoByBarCode_Source_Json_s(string sCode, Int64 sInterID, string sBillNo, Double sQty, Int64 HWHID, Int64 HSPID, Int64 SCWhID, Int64 SCSPID, string HMaker,Int64 HOrgID)
         {
             try
             {
@@ -285,7 +285,6 @@
                 string sErrMsg = "";
                 bool sBool = false;
                 double sRelQty = 0;
-                double sRelQty2 = 0;
                 oView = webserver.get_InfoByBarCode_Source(sCode, sInterID, ref sBool, ref DBUtility.ClsPub.sErrInfo);
                 if (oView == null)
                 {
@@ -295,24 +294,23 @@
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
-
                 if (oView.HBarCodeType == "鍞竴鏉$爜" && sQty > 0 && oView.HQty < sQty)
                 {
-                    sRelQty2 = oView.HQty;
+                    sRelQty = oView.HQty;
                 }
                 else if (sQty > 0)
                 {
-                    sRelQty2 = sQty;
+                    sRelQty = sQty;
                 }
                 else
                 {
-                    sRelQty2 = oView.HQty;
+                    sRelQty = oView.HQty;
                 }
 
                 model.HInterID = DBUtility.ClsPub.isLong(sInterID);
                 model.HBillNo = DBUtility.ClsPub.isStrNull(sBillNo);
                 model.HBillType = this.HBillType;
-                model.HMaker = DBUtility.ClsPub.CurUserName;
+                model.HMaker = HMaker;
                 //
                 model.HMaterID = oView.HMaterID;
                 model.HAuxPropID = oView.HAuxPropID;
@@ -322,9 +320,6 @@
                 model.HBarCode = oView.HBarCode;
                 model.HBatchNo = oView.HBatchNo;
                 model.HMTONo = oView.HMTONo;
-
-                //model.HWhID = oView.HWHID;
-                //model.HStockPlaceID = oView.HSPID;
 
                 model.HWhID = DBUtility.ClsPub.isLong(HWHID);
                 model.HStockPlaceID = DBUtility.ClsPub.isLong(HSPID);
@@ -340,20 +335,27 @@
                 model.HSourceBillType = oView.HSourceBillType;
                 model.HRedBlueFlag = false;
                 model.HPieceQty = 1;
-                //model.HSTOCKORGID = DBUtility.ClsPub.HORGANIZATIONSID;
-                //model.HOWNERID = DBUtility.ClsPub.HORGANIZATIONSID;
+                model.HSTOCKORGID = HOrgID;
+                model.HOWNERID = HOrgID;
 
                 WebS.WebService1 oWebs = new WebS.WebService1();
                 //if (webserver.set_SavePonderationBillMain_Temp_Qty(model, sQty, ref DBUtility.ClsPub.sErrInfo))
-                objJsonResult = CheckQtyByBarCode_Json(model.HInterID, model.HBillType, model.HBarCode, ref SCWhID, ref SCSPID, sRelQty2, ref sRelQty);
-                
-                if (objJsonResult.count == 1)
+                bool flag = oWebs.Get_CheckQtyByBarCode_GetWhAndSP(model.HInterID, model.HBillType, model.HBarCode, ref SCWhID, ref SCSPID, sRelQty, ref sRelQty);
+                if (flag)
                 {
-                    sQty = sRelQty;
+                    //sQty = sRelQty;
                     model.HSCWHID = SCWhID;
                     model.HOutStockPlaceID = SCSPID;
+                    if(SCWhID<=0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "1-浠撳簱鏃犲簱瀛橈紒";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
                 }
-                else if (objJsonResult.count == 0)
+                else if (sRelQty == 0)
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
@@ -375,7 +377,7 @@
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
                     objJsonResult.Message = "4-鎵爜澶辫触锛�" + DBUtility.ClsPub.sErrInfo;
-                    objJsonResult.data = model.HBarCode;
+                    objJsonResult.data = null;
                     return objJsonResult;
                 }
             }
@@ -383,90 +385,6 @@
             {
 
                 throw;
-            }
-        }
-
-        //鏍规嵁鏉$爜 鏁伴噺 鍒ゆ柇鏉$爜搴撳瓨 鏄惁鍏呰冻 骞朵笖甯﹀嚭 浠撳簱浠撲綅
-        public JsonResult CheckQtyByBarCode_Json(long InterID, string sBillType, string sBarCode, ref long HWHID, ref long HSPID, double sQty, ref double sRelQty)
-        {
-            DataSet DS;
-            DataSet DSErp;
-            try
-            {
-                //鍗曟潯鐮侊紝涓�寮犲崟鎹竴鏉℃潯鐮�(鍑尝)
-                //DS = oCn.RunProcReturn("exec h_p_KF_ICInventory_WMS_GetWHAndSP_Single " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_KF_ICInventory_WMS_GetWHAndSP_Single", ref DBUtility.ClsPub.sExeReturnInfo);
-                //鍒ゆ柇鏉$爜搴撳瓨
-                DS = new SQLHelper.ClsCN().RunProcReturn("exec h_p_KF_ICInventory_WMS_GetWHAndSP " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_KF_ICInventory_WMS_GetWHAndSP", ref DBUtility.ClsPub.sExeReturnInfo);
-                if (DS.Tables[0].Rows.Count == 0)
-                {
-                    sRelQty = 0;
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                    objJsonResult.data = DS;
-                    return objJsonResult;
-                }
-                else
-                {
-                    double sKFQty = 0;
-                    double sKFQtyErp = 0;
-                    sKFQty = DBUtility.ClsPub.isDoule(DS.Tables[0].Rows[0]["HKFQty"]);
-                    HWHID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HWhID"]);
-                    HSPID = DBUtility.ClsPub.isLong(DS.Tables[0].Rows[0]["HSPID"]);
-                    //鐩存帴杩斿洖999
-                    DSErp = new SQLHelper.ClsCN().RunProcReturn("exec h_p_IF_ICInventory_WMS_GetWHAndSP " + InterID.ToString() + ",'" + sBillType + "','" + sBarCode + "'," + HWHID.ToString() + "," + HSPID.ToString(), "h_p_IF_ICInventory_WMS_GetWHAndSP", ref DBUtility.ClsPub.sExeReturnInfo);
-                    if (DSErp.Tables[0].Rows.Count == 0)
-                    {
-                        sRelQty = 0;//涓嶄細璧�
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                        objJsonResult.data = DS;
-                        return objJsonResult;
-                    }
-                    sKFQtyErp = DBUtility.ClsPub.isDoule(DSErp.Tables[0].Rows[0]["HKFQty"]);//9999
-                    if (sQty > sKFQty && sQty > sKFQtyErp) //褰撳簱瀛樺皬浜庢爣绛炬暟閲忔椂 鍙栧簱瀛樻暟閲�
-                    {
-                        sRelQty = sKFQtyErp;
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                        objJsonResult.data = DS;
-                        return objJsonResult;
-                    }
-                    else if (sQty > sKFQty && sQty < sKFQtyErp)  //褰撳簱瀛樺皬浜庢爣绛炬暟閲忔椂 鍙栧簱瀛樻暟閲�
-                    {
-                        sRelQty = sKFQty;
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                        objJsonResult.data = DS;
-                        return objJsonResult;
-                    }
-                    else if (sQty < sKFQty && sQty > sKFQtyErp)//鏃犳晥
-                    {
-                        sRelQty = sKFQtyErp;
-                        objJsonResult.code = "0";
-                        objJsonResult.count = 0;
-                        objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                        objJsonResult.data = DS;
-                        return objJsonResult;
-                    }
-                    else
-                    {
-                        sRelQty = sQty;
-                        objJsonResult.code = "1";
-                        objJsonResult.count = 1;
-                        objJsonResult.Message = "4-鎵爜澶辫触锛�";
-                        objJsonResult.data = DS;
-                        return objJsonResult;
-                    }
-                }
-            }
-            catch (Exception e)
-            {
-                sRelQty = 0;
-                throw (e);
             }
         }
 
@@ -520,7 +438,7 @@
                 websLsmain.HStockStyle = "";
                 websLsmain.HBillType = "1207";
                 websLsmain.HSupID = 0;
-                websLsmain.HGroupID = lsmain[0].HGroupID;
+                //websLsmain.HGroupID = lsmain[0].HGroupID;
 
                 if (webserver.set_SaveMoveStockBill(websLsmain, "-1", ref DBUtility.ClsPub.sErrInfo))
                 {

--
Gitblit v1.9.1