From d38136e8b743a3186dc873d0f18e5a58e84e86d9 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期四, 24 十一月 2022 08:51:40 +0800
Subject: [PATCH] Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API

---
 WebAPI/Controllers/POStockInBillController.cs |  927 +++++++++++++++++++++++++++++++++------------------------
 1 files changed, 536 insertions(+), 391 deletions(-)

diff --git a/WebAPI/Controllers/POStockInBillController.cs b/WebAPI/Controllers/POStockInBillController.cs
index 6ff55fd..57446e2 100644
--- a/WebAPI/Controllers/POStockInBillController.cs
+++ b/WebAPI/Controllers/POStockInBillController.cs
@@ -51,6 +51,7 @@
         public ClsGy_BarCodeBill_WMS_Model_View oView = new ClsGy_BarCodeBill_WMS_Model_View();
         public ClsKF_PonderationBillMain_Temp model = new ClsKF_PonderationBillMain_Temp();
         public ClsKf_ICStockBill_WMS oBar = new Model.ClsKf_ICStockBill_WMS();
+        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
         public double sRelQty = 0;
         SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
         // private DataBaseServices objDataBaseServices = new DataBaseServices();
@@ -81,6 +82,8 @@
         {
             try
             {
+
+                var sJXCode = POStockInBillController.JX_Json(sCode, HOWNERID);
                 //if (sRedBlue == true)
                 //{
                 //    HBillType = "1239";
@@ -89,7 +92,8 @@
                 WebS.WebService1 oWebs = new WebS.WebService1();
                 WebS.ClsKf_ICStockBill_WMS WebSoBar = new WebS.ClsKf_ICStockBill_WMS();
                 string sExpressNumber = "";
-                WebSoBar = oWebs.get_CheckTypeByBarCode_All(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, sExpressNumber, ref DBUtility.ClsPub.sErrInfo);
+                WebSoBar = oWebs.get_CheckTypeByBarCode_All(sJXCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, sExpressNumber, ref DBUtility.ClsPub.sErrInfo);
+                //WebSoBar = oWebs.get_ba(sCode, sInterID, HBillType, sBillNo, sMaker, WhID, SPID, sQty, sRedBlue, SourceFlag, sSourceBillNo, sSourceType, HOWNERID, sExpressNumber, ref DBUtility.ClsPub.sErrInfo);
                 if (WebSoBar == null)
                 {
                     objJsonResult.code = "0";
@@ -164,6 +168,83 @@
                 objJsonResult.Message = e.Message + ";" + e.StackTrace;
                 objJsonResult.data = null;
                 return objJsonResult;
+            }
+
+        }
+
+
+        [Route("kf_PoStockInBill/JX_Json")]
+        [HttpGet]
+        public static string JX_Json(string sBarCodeNew, Int64 HOrgID)
+        {
+            try
+            {
+                //鍔犱簡  鐢熶骇鏃ユ湡  鏈夋晥鏈熻嚦   淇濊川鏈熸爣蹇�
+
+                string[] sArray = sBarCodeNew.Split('@');
+                string HMaterNumber = "";
+                HMaterNumber = sArray[0];
+                Int64 HQty = 0;
+                HQty = ClsPub.isInt(sArray[4]);
+                string HBarchNo = "";
+                HBarchNo = sArray[6];
+
+                DateTime HSCRQ = ClsPub.isDate(sArray[3]);
+                DateTime HYXQZ = ClsPub.isDate(sArray[5]);
+
+
+                Int64 HMaterID = 0;
+
+                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+                DataSet Dss;
+                Dss = oCn.RunProcReturn(" select HNumber from h_v_CLD_ORGANIZATIONSList where HItemID= " + HOrgID, "h_v_CLD_ORGANIZATIONSList");
+                string HOrgNumber = Pub_Class.ClsPub.isStrNull(Dss.Tables[0].Rows[0]["HNumber"]);
+
+                DataSet Dss1;
+                Dss1 = oCn.RunProcReturn(" select HItemID,HName,HModel,HUnitID from Gy_Material where HNumber= '" + HMaterNumber + "' and  huseorgid = " + HOrgID, "Gy_Material");
+                HMaterID = Pub_Class.ClsPub.isLong(Dss1.Tables[0].Rows[0]["HItemID"]);
+                string HMaterName = Pub_Class.ClsPub.isStrNull(Dss1.Tables[0].Rows[0]["HName"]);
+                string HMaterModel = Pub_Class.ClsPub.isStrNull(Dss1.Tables[0].Rows[0]["HModel"]);
+                Int64 HUnitID = Pub_Class.ClsPub.isInt(Dss1.Tables[0].Rows[0]["HUnitID"]);
+
+                string HTM = "";
+                HTM = HOrgNumber + HMaterID + HBarchNo;
+                string ModName = "85";
+                var  HInterID = DBUtility.ClsPub.CreateBillID_Prod(ModName, ref DBUtility.ClsPub.sExeReturnInfo);
+                Int64 HSupID = 0;
+                oCn.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
+                                   ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
+                                   ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
+                                   ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
+                                   ",HCusID,HCusType,HEndDate,HProduceDate,HExpiryDate,HWorkLineName,HBarCodeDate " +
+                                   ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID,HEntryID " +
+                                   ",HGiveAwayFlag,HSeOrderSEQ,HInitSourceEntryID " +
+                                   ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo,HExpirationDateFlag " +
+                                   ") values ("
+                                   + "'" + HTM + "','鎵规鏉$爜'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty.ToString()
+                                   + ",'" + HBarchNo + "'," + HSupID.ToString() + ",0,'" + ClsPub.CurUserName + "',getdate(),0," + HQty.ToString()
+                                   + ", 0,0,'','',0"
+                                   + ", 0,'',0,0,0,''"
+                                   + ",0,'',''," + HSCRQ.ToShortDateString() + "," + HYXQZ.ToShortDateString() + ",'',getdate()"
+                                   + ", " + HOrgID.ToString() + "," + HOrgID.ToString() + ",''," + HInterID.ToString() + ",1"
+                                   + ",0,0,0"
+                                   + ",'" + HMaterName + "','" + HMaterModel + "','',0,'','',1)");
+
+
+                string sExpressNumber = "";
+                //objJsonResult.code = "0";
+                //objJsonResult.count = 1;
+                //objJsonResult.Message = DBUtility.ClsPub.sErrInfo;
+                //objJsonResult.data = ;
+                return HTM;
+            }
+            catch (Exception e)
+            {
+                //objJsonResult.code = "0";
+                //objJsonResult.count = 1;
+                //objJsonResult.Message = e.Message + ";" + e.StackTrace;
+                //objJsonResult.data = null;
+                return e.Message + ";" + e.StackTrace;
             }
 
         }
@@ -409,6 +490,55 @@
                 return objJsonResult;
             }
         }
+
+
+
+
+
+
+        [Route("Kf_QCStockInCheckBill_Fast/BarCode_Json")]
+        [HttpGet]
+        public object BarCode_Json(string HBarCode)
+        {
+            try
+            {
+                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
+                ds = oCN.RunProcReturn("select * from h_v_QCStockInCheckBill_Json where  鏉$爜缂栧彿 ='" + HBarCode.ToString() + "'", "h_v_QCStockInCheckBill_Json");
+                if (ds == null || ds.Tables[0].Rows.Count <= 0)
+                {
+
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                    //DBUtility.ClsPub.MessageBeep((int)DBUtility.ClsPub.BeepType.Warning);
+                }
+                else
+                {
+                    objJsonResult.code = "0";
+                    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>
@@ -847,8 +977,6 @@
                 return objJsonResult;
             }
         }
-
-
         [Route("POStockInBill/Delete_Json")]
         [HttpGet]
         public object Delete_Json(long HInterID, long HMaterID, long HAuxPropID, string HMTONo, long HSourceInterID, long HSourceEntryID, string sHBillType)
@@ -985,7 +1113,6 @@
             }
             catch (Exception)
             {
-
                 objJsonResult.code = "0";
                 objJsonResult.count = 0;
                 objJsonResult.Message = "鍒犻櫎澶辫触锛�";
@@ -995,7 +1122,6 @@
 
         }
 
-
         #region 鍒拌揣纭
         [Route("POStockInBillList/Get_ReciveBill")]
         [HttpGet]
@@ -1003,25 +1129,8 @@
         {
             try
             {
-                SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
-                string sql = $"select * from H_v_SRM_POInStockBillList where 鍗曟嵁鍙� ='{HBillno}'";
-                ds = oCn.RunProcReturn(sql, "H_v_SRM_POInStockBillList");
-                if (ds == null || ds.Tables[0].Rows.Count == 0)
-                {
-                    objJsonResult.code = "0";
-                    objJsonResult.count = 0;
-                    objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�";
-                    objJsonResult.data = null;
-                    return objJsonResult;
-                }
-                else
-                {
-                    objJsonResult.code = "1";
-                    objJsonResult.count = 1;
-                    objJsonResult.Message = "Sucess锛�";
-                    objJsonResult.data = ds.Tables[0];
-                    return objJsonResult;
-                }
+                json result = Get_ReciveBillCheckDate(HBillno);
+                return result;
             }
             catch (Exception e)
             {
@@ -1030,372 +1139,6 @@
                 objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
                 objJsonResult.data = null;
                 return objJsonResult;
-            }
-        }
-        [Route("POStockInBillList/AuditPOInStockBill")]
-        [HttpGet]
-        public object AuditPOInStockBill(string HInterID, string CurUserName, string HBillNo)
-        {
-            Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
-            json objjson = new json();
-            try
-            {
-                SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
-                //閲囪喘璁㈠崟 鐢熸垚閫佽揣鍗曞垪琛�
-                if (!String.IsNullOrEmpty(HBillNo))
-                    HInterID = GetHinterIDByBillNo(HBillNo, "Aduit").ToString();
-                if (HInterID == "0")
-                {
-                    objjson.code = "0";
-                    objjson.count = 0;
-                    objjson.Message = "鎿嶄綔澶辫触,璇峰厛淇濆瓨璁㈠崟";
-                    objjson.data = null;
-                    return objjson;
-                }
-                string parameterSql = $"select HValue from Xt_SystemParameter where HKey ='Cg_POInStockBill_ErpAduit'";
-                var HValue = oCn.RunProcReturn(parameterSql, "dt").Tables[0].Rows[0][0].ToString();
-                string sql = string.Empty;
-                if (HValue == "Y")
-                {
-                    var kdTbaleName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");
-                    string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo);
-                    DataTable dt = new DataTable();
-                    List<string> fidList = new List<string>();
-                    if (FCusName == "鐟炰笌绁�" || FCusName == "")
-                    {
-                        sql = string.Format(@"
-SELECT T3.FNAME AS FTYPENAME,M.HBILLNO,B.HINTERID,B.HENTRYID,C.FID,C.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER
-,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER  AS FSETTLEORGNUMBER,
-E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID 
-,CU.FNUMBER AS FUNITNUMBER,CR.FPRICE,CR.FTAXPRICE,CR.FTAXRATE,D.FPURCHASERID,isnull(T4.FNUMBER,'') AS FPURCHASERNUMBER
-FROM CG_POINSTOCKBILLSUB B  
-JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID
-JOIN {0}..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID
-LEFT JOIN {0}..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMATERIALID
-LEFT JOIN {0}..T_BD_UNIT CU ON C.FUNITID =CU.FUNITID
-JOIN {0}..T_PUR_POORDERENTRY_D CD ON    C.FENTRYID = CD.FENTRYID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS CDOO ON CD.FRECEIVEORGID = CDOO.FORGID
-JOIN {0}..T_PUR_POORDERENTRY_F CR ON    C.FENTRYID = CR.FENTRYID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS CROO ON CR.FSETTLEORGID = CROO.FORGID
-LEFT JOIN {0}..T_PUR_POORDER D ON C.FID =D.FID
-LEFT JOIN {0}..T_BAS_BILLTYPE T2 ON D.FBILLTYPEID = T2.FBILLTYPEID
-LEFT JOIN {0}..T_BAS_BILLTYPE_L T3 ON T2.FBILLTYPEID = T3.FBILLTYPEID and FLOCALEID=2052
-LEFT JOIN  {0}..V_BD_BUYER T4 ON D.FPURCHASERID =T4.FID
-LEFT JOIN {0}..T_BD_SUPPLIER DS ON D.FSUPPLIERID = DS.FSUPPLIERID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS DOO ON D.FPURCHASEORGID = DOO.FORGID
-JOIN {0}..T_PUR_POORDERFIN E ON C.FID =E.FID
-LEFT JOIN {0}..T_BD_CURRENCY EC ON E. FSETTLECURRID =EC.FCURRENCYID  
- WHERE b.hinterid in ({1}) and M.HERPInterID = 0
-", kdTbaleName, HInterID);
-                        //LEFT JOIN  {0}..T_HR_EMPINFO T5 ON D.F_XBKF_BASE1 = T5.FID
-                        dt = oCn.RunProcReturn(sql, "sltz").Tables[0];
-                        if (dt.Rows.Count > 0)
-                        {
-                            foreach (DataRow dr in dt.Rows)
-                            {
-                                if (fidList.Contains(dr["FID"].ToString() + dr["HINTERID"].ToString()))
-                                    continue;
-                                else
-                                    fidList.Add(dr["FID"].ToString() + dr["HINTERID"].ToString());
-
-                                DataRow[] drs = dt.Select("FID = " + dr["FID"].ToString() + " and HINTERID = " + dr["HINTERID"].ToString());
-
-                                JObject model = new JObject();
-                                string fTypeName = "SLD01_SYS";//鏍囧噯閲囪喘璁㈠崟绫诲瀷
-                                string ywTypeName = "CG";//鏍囧噯涓氬姟绫诲瀷
-                                if (dr["FTYPENAME"].ToString().Contains("濮斿"))
-                                {
-                                    fTypeName = "SLD03_SYS";
-                                    ywTypeName = "WW";
-                                }
-                                if (dr["FTYPENAME"].ToString().Contains("璧勪骇"))
-                                {
-                                    fTypeName = "SLD04_SYS";
-                                    ywTypeName = "ZCCG";
-                                }
-                                model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = fTypeName }); //鍗曟嵁绫诲瀷
-                                model.Add("FBusinessType", ywTypeName); //涓氬姟绫诲瀷
-                                model.Add("FBILLNO", dr["HBillNo"].ToString()); //鍗曟嵁缂栧彿
-                                model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //閫氱煡鏃ユ湡
-                                model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // 鏀舵枡缁勭粐 
-                                model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //閲囪喘缁勭粐
-                                model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //渚涘簲鍟�
-                                model.Add("FPURCHASERID", new JObject() { ["Fnumber"] = dr["FPURCHASERNUMBER"].ToString() }); //閲囪喘鍛�
-                                model.Add("FOwnerTypeIdHead", "BD_Supplier");//  璐т富绫诲瀷
-                                model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() });//璐т富 渚涘簲鍟� 
-                                JArray Fentity = new JArray();
-                                foreach (var item in drs)
-                                {
-                                    JObject FentityModel = new JObject();
-                                    FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMATERIALNUMBER"].ToString() }); // 鐗╂枡缂栫爜   
-                                    FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 鍗曚綅   
-                                    FentityModel.Add("FPreDeliveryDate", DateTime.Now.ToString("yyyy-MM-dd")); //棰勮鍒拌揣鏃ユ湡   
-                                    FentityModel.Add("FPriceUnitId", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 璁′环鍗曚綅   
-                                    FentityModel.Add("FStockUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); //  搴撳瓨鍗曚綅   
-                                    FentityModel.Add("FActReceiveQty", Convert.ToDecimal(item["HQTY"])); // 渚涘簲鍟嗛�佽揣鏁伴噺锛堟彁鏂欒鍒掓暟閲� - 宸茬敓鎴愰�佽揣鍗曟暟閲忥級
-                                    FentityModel.Add("FOwnerTypeId", "BD_OwnerOrg");//璐т富绫诲瀷
-                                    FentityModel.Add("FOwnerID", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//璐т富 
-                                    FentityModel.Add("FSrcId", item["FID"].ToString());//婧愬崟鍐呯爜
-                                    FentityModel.Add("FSRCFORMID", "PUR_PurchaseOrder");//婧愬崟绫诲瀷
-                                    FentityModel.Add("FSrcBillNo", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
-                                    FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
-                                    FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
-                                    FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
-                                    FentityModel.Add("FSRMENTRYID", item["HENTRYID"].ToString());//SRM hentryid
-                                    FentityModel.Add("FPrice", item["FPRICE"].ToString());//鍗曚环
-                                    FentityModel.Add("FTaxPrice", item["FTAXPRICE"].ToString());//鍚◣鍗曚环
-                                    FentityModel.Add("FEntryTaxRate", item["FTAXRATE"].ToString());//绋庣巼
-
-                                    JArray Fentity2 = new JArray();
-                                    JObject FentityModel2 = new JObject();
-                                    FentityModel2.Add("FDetailEntity_Link_FRULEID", "PUR_PurchaseOrder-PUR_ReceiveBill");
-                                    FentityModel2.Add("FDetailEntity_Link_FSTableName", "t_PUR_POOrderEntry");
-                                    FentityModel2.Add("FDetailEntity_Link_FSBillId", item["FID"].ToString());
-                                    FentityModel2.Add("FDetailEntity_Link_FSId", item["FEntryID"].ToString());
-                                    Fentity2.Add(FentityModel2);
-                                    FentityModel.Add("FDetailEntity_Link", Fentity2);
-                                    Fentity.Add(FentityModel);
-                                }
-                                model.Add("FDetailEntity", Fentity); //鏄庣粏淇℃伅
-
-                                JObject _FentityModel = new JObject();
-                                _FentityModel.Add("FSettleOrgId", new JObject() { ["Fnumber"] = dr["FSETTLEORGNUMBER"].ToString() }); //  缁撶畻缁勭粐  
-                                _FentityModel.Add("FSettleCurrId", new JObject() { ["Fnumber"] = dr["FSETTLECURRNUMBER"].ToString() }); //  缁撶畻甯佸埆
-                                _FentityModel.Add("FPricePoint", 0); //  瀹氫环鏃剁偣
-                                model.Add("FinanceEntity ", _FentityModel);//璐㈠姟淇℃伅
-                                JObject jsonRoot = new JObject()
-                                {
-                                    ["Creator"] = "",
-                                    ["NeedUpDateFields"] = new JArray(),
-                                    ["NeedReturnFields"] = new JArray(),
-                                    ["IsDeleteEntry"] = "false",
-                                    ["SubSystemId"] = "",
-                                    ["IsVerifyBaseDataField"] = "false",
-                                    ["Model"] = model
-                                };
-                                var loginRet = InvokeHelper.Login();
-                                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
-                                if (isSuccess <= 0)
-                                {
-                                    objjson.code = "0";
-                                    objjson.count = 0;
-                                    objjson.Message = loginRet;
-                                    objjson.data = null;
-                                    return objjson;
-                                }
-                                //LogService.Write("jsonRoot:" + jsonRoot.ToString());
-                                var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
-                                //LogService.Write(result);
-                                if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE")
-                                {
-                                    //鏇存柊閫佽揣鍗� 涓昏〃 ERP鍗曟嵁鍙� 浠ュ強 ERP涓诲唴鐜�
-                                    string FBillNo = JObject.Parse(result)["Result"]["Number"].ToString();
-                                    string FID = JObject.Parse(result)["Result"]["Id"].ToString();
-
-                                    string updateSql = string.Format(@"
-                                                      update a set 
-                                                      a.HERPInterID = {0} ,
-                                                      a.HERPBillNO   ='{1}'
-                                                      from Cg_POInStockBillMain a
-                                                      join Cg_POInStockBillSub b on a.hinterid = b.hinterid
-                                                      where b.HInterID = ({2})
-                                                      and b. HSOURCEINTERID = {3}
-                                                      and a.HERPInterID = 0
-                                                     ", FID, FBillNo, dr["HINTERID"].ToString(), dr["FID"].ToString());
-                                    oCn.RunProc(updateSql);
-                                }
-                                else
-                                {
-                                    objjson.code = "0";
-                                    objjson.count = 0;
-                                    objjson.Message = result;
-                                    objjson.data = null;
-                                    return objjson;
-                                }
-                            }
-                        }
-                    }
-                    else if (FCusName == "澶忓疂鐢靛櫒")
-                    {
-                        sql = string.Format(@"
-SELECT T3.FNAME AS FTYPENAME,M.HBILLNO,B.HINTERID,B.HENTRYID,C.FID,C.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER
-,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER  AS FSETTLEORGNUMBER,
-E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID 
-,CU.FNUMBER AS FUNITNUMBER,D.F_XBKF_COMBO1,CR.FPRICE,CR.FTAXPRICE,CR.FTAXRATE,D.FPURCHASERID,isnull(T4.FNUMBER,'') AS FPURCHASERNUMBER,D.F_XBKF_BASE1,isnull(T5.FNUMBER,'') AS FRECEIVEMENNUMBER
-FROM CG_POINSTOCKBILLSUB B  
-JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID
-JOIN {0}..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID
-LEFT JOIN {0}..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMATERIALID
-LEFT JOIN {0}..T_BD_UNIT CU ON C.FUNITID =CU.FUNITID
-JOIN {0}..T_PUR_POORDERENTRY_D CD ON    C.FENTRYID = CD.FENTRYID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS CDOO ON CD.FRECEIVEORGID = CDOO.FORGID
-JOIN {0}..T_PUR_POORDERENTRY_F CR ON    C.FENTRYID = CR.FENTRYID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS CROO ON CR.FSETTLEORGID = CROO.FORGID
-LEFT JOIN {0}..T_PUR_POORDER D ON C.FID =D.FID
-LEFT JOIN {0}..T_BAS_BILLTYPE T2 ON D.FBILLTYPEID = T2.FBILLTYPEID 
-LEFT JOIN {0}..T_BAS_BILLTYPE_L T3 ON T2.FBILLTYPEID = T3.FBILLTYPEID  and FLOCALEID=2052
-LEFT JOIN  {0}..V_BD_BUYER T4 ON D.FPURCHASERID =T4.FID
-LEFT JOIN  {0}..T_HR_EMPINFO T5 ON D.F_XBKF_BASE1 = T5.FID
-LEFT JOIN {0}..T_BD_SUPPLIER DS ON D.FSUPPLIERID = DS.FSUPPLIERID
-LEFT JOIN {0}..T_ORG_ORGANIZATIONS DOO ON D.FPURCHASEORGID = DOO.FORGID
-JOIN {0}..T_PUR_POORDERFIN E ON C.FID =E.FID
-LEFT JOIN {0}..T_BD_CURRENCY EC ON E. FSETTLECURRID =EC.FCURRENCYID  
- WHERE b.hinterid in ({1}) and M.HERPInterID = 0
-", kdTbaleName, HInterID);
-                        dt = oCn.RunProcReturn(sql, "sltz").Tables[0];
-                        if (dt.Rows.Count > 0)
-                        {
-                            foreach (DataRow dr in dt.Rows)
-                            {
-                                if (fidList.Contains(dr["FID"].ToString() + dr["HINTERID"].ToString()))
-                                    continue;
-                                else
-                                    fidList.Add(dr["FID"].ToString() + dr["HINTERID"].ToString());
-
-                                DataRow[] drs = dt.Select("FID = " + dr["FID"].ToString() + " and HINTERID = " + dr["HINTERID"].ToString());
-
-                                JObject model = new JObject();
-                                string fTypeName = "SLD01_SYS";//鏍囧噯閲囪喘璁㈠崟绫诲瀷
-                                string ywTypeName = "CG";//鏍囧噯涓氬姟绫诲瀷
-                                if (dr["FTYPENAME"].ToString().Contains("濮斿"))
-                                {
-                                    fTypeName = "SLD03_SYS";
-                                    ywTypeName = "WW";
-                                }
-                                if (dr["FTYPENAME"].ToString().Contains("璧勪骇"))
-                                {
-                                    fTypeName = "SLD04_SYS";
-                                    ywTypeName = "ZCCG";
-                                }
-                                model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = fTypeName }); //鍗曟嵁绫诲瀷
-                                model.Add("FBusinessType", ywTypeName); //涓氬姟绫诲瀷
-                                model.Add("FBILLNO", dr["HBillNo"].ToString()); //鍗曟嵁缂栧彿
-                                model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //閫氱煡鏃ユ湡
-                                model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // 鏀舵枡缁勭粐 
-                                model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //閲囪喘缁勭粐
-                                model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //渚涘簲鍟�
-                                model.Add("FPURCHASERID", new JObject() { ["Fnumber"] = dr["FPURCHASERNUMBER"].ToString() }); //閲囪喘鍛�
-                                model.Add("F_xbkf_Base", new JObject() { ["Fnumber"] = dr["FRECEIVEMENNUMBER"].ToString() }); //鏀舵枡鍛�
-                                model.Add("FOwnerTypeIdHead", "BD_Supplier");//  璐т富绫诲瀷
-                                model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() });//璐т富 渚涘簲鍟� 
-                                model.Add("F_XBKF_COMBO", dr["F_xbkf_Combo1"].ToString());//鏄惁鏈夌エ 
-                                JArray Fentity = new JArray();
-                                foreach (var item in drs)
-                                {
-                                    JObject FentityModel = new JObject();
-                                    FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMATERIALNUMBER"].ToString() }); // 鐗╂枡缂栫爜   
-                                    FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 鍗曚綅   
-                                    FentityModel.Add("FPreDeliveryDate", DateTime.Now.ToString("yyyy-MM-dd")); //棰勮鍒拌揣鏃ユ湡   
-                                    FentityModel.Add("FPriceUnitId", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 璁′环鍗曚綅   
-                                    FentityModel.Add("FStockUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); //  搴撳瓨鍗曚綅   
-                                    FentityModel.Add("FActReceiveQty", Convert.ToDecimal(item["HQTY"])); // 渚涘簲鍟嗛�佽揣鏁伴噺锛堟彁鏂欒鍒掓暟閲� - 宸茬敓鎴愰�佽揣鍗曟暟閲忥級
-                                    FentityModel.Add("FOwnerTypeId", "BD_OwnerOrg");//璐т富绫诲瀷
-                                    FentityModel.Add("FOwnerID", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//璐т富 
-                                    FentityModel.Add("FSrcId", item["FID"].ToString());//婧愬崟鍐呯爜
-                                    FentityModel.Add("FSRCFORMID", "PUR_PurchaseOrder");//婧愬崟绫诲瀷
-                                    FentityModel.Add("FSrcBillNo", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
-                                    FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
-                                    FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
-                                    FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
-                                    FentityModel.Add("FSRMENTRYID", item["HENTRYID"].ToString());//SRM hentryid
-                                    FentityModel.Add("FPrice", item["FPRICE"].ToString());//鍗曚环
-                                    FentityModel.Add("FTaxPrice", item["FTAXPRICE"].ToString());//鍚◣鍗曚环
-                                    FentityModel.Add("FEntryTaxRate", item["FTAXRATE"].ToString());//绋庣巼
-
-                                    JArray Fentity2 = new JArray();
-                                    JObject FentityModel2 = new JObject();
-                                    FentityModel2.Add("FDetailEntity_Link_FRULEID", "PUR_PurchaseOrder-PUR_ReceiveBill");
-                                    FentityModel2.Add("FDetailEntity_Link_FSTableName", "t_PUR_POOrderEntry");
-                                    FentityModel2.Add("FDetailEntity_Link_FSBillId", item["FID"].ToString());
-                                    FentityModel2.Add("FDetailEntity_Link_FSId", item["FEntryID"].ToString());
-                                    Fentity2.Add(FentityModel2);
-                                    FentityModel.Add("FDetailEntity_Link", Fentity2);
-                                    Fentity.Add(FentityModel);
-                                }
-                                model.Add("FDetailEntity", Fentity); //鏄庣粏淇℃伅
-
-                                JObject _FentityModel = new JObject();
-                                _FentityModel.Add("FSettleOrgId", new JObject() { ["Fnumber"] = dr["FSETTLEORGNUMBER"].ToString() }); //  缁撶畻缁勭粐  
-                                _FentityModel.Add("FSettleCurrId", new JObject() { ["Fnumber"] = dr["FSETTLECURRNUMBER"].ToString() }); //  缁撶畻甯佸埆
-                                _FentityModel.Add("FPricePoint", 0); //  瀹氫环鏃剁偣
-                                model.Add("FinanceEntity ", _FentityModel);//璐㈠姟淇℃伅
-                                JObject jsonRoot = new JObject()
-                                {
-                                    ["Creator"] = "",
-                                    ["NeedUpDateFields"] = new JArray(),
-                                    ["NeedReturnFields"] = new JArray(),
-                                    ["IsDeleteEntry"] = "false",
-                                    ["SubSystemId"] = "",
-                                    ["IsVerifyBaseDataField"] = "false",
-                                    ["Model"] = model
-                                };
-                                var loginRet = InvokeHelper.Login();
-                                var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
-                                if (isSuccess < 0)
-                                {
-                                    objjson.code = "0";
-                                    objjson.count = 0;
-                                    objjson.Message = loginRet;
-                                    objjson.data = null;
-                                    return objjson;
-                                }
-                                //LogService.Write("jsonRoot:" + jsonRoot.ToString());
-                                var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
-                                //LogService.Write(result);
-                                if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE")
-                                {
-                                    //鏇存柊閫佽揣鍗� 涓昏〃 ERP鍗曟嵁鍙� 浠ュ強 ERP涓诲唴鐜�
-                                    string FBillNo = JObject.Parse(result)["Result"]["Number"].ToString();
-                                    string FID = JObject.Parse(result)["Result"]["Id"].ToString();
-
-                                    string updateSql = string.Format(@"
-                                                      update a set 
-                                                      a.HERPInterID = {0} ,
-                                                      a.HERPBillNO   ='{1}'
-                                                      from Cg_POInStockBillMain a
-                                                      join Cg_POInStockBillSub b on a.hinterid = b.hinterid
-                                                      where b.HInterID = ({2})
-                                                      and b. HSOURCEINTERID = {3}
-                                                      and a.HERPInterID = 0
-                                                     ", FID, FBillNo, dr["HINTERID"].ToString(), dr["FID"].ToString());
-                                    oCn.RunProc(updateSql);
-                                }
-                                else
-                                {
-                                    objjson.code = "0";
-                                    objjson.count = 0;
-                                    objjson.Message = result;
-                                    objjson.data = null;
-                                    return objjson;
-                                }
-                            }
-                        }
-                    }
-                }
-                var check = Exec_ReciveBillCheck(HBillNo);
-                if (check.code == "0")
-                    return check;
-                //if(check)
-                //鏇存柊涓昏〃鐘舵�� 瀹℃牳
-                sql = string.Format(@"update Cg_POInStockBillMain set 
-HBillStatus = 2 ,
-HChecker   ='{0}',
-HCheckDate   = getdate()
-where HInterID in ({1})", CurUserName, HInterID);
-                oCn.RunProc(sql);
-                objjson.code = "1";
-                objjson.count = 1;
-                objjson.Message = "鎿嶄綔鎴愬姛";
-                objjson.data = null;
-                return objjson;
-            }
-            catch (Exception ex)
-            {
-                objjson.code = "0";
-                objjson.count = 0;
-                objjson.Message = "鎿嶄綔澶辫触" + ex.Message.ToString();
-                objjson.data = null;
-                return objjson;
             }
         }
         public int GetHinterIDByBillNo(string HBillNo, string type)
@@ -1411,13 +1154,23 @@
             return HInterID;
         }
 
+        /// <summary>
+        /// 鍒拌揣纭鎵敹鏂欓�氱煡鍗曞彿 鑾峰彇琛ㄤ綋鍜岃〃澶存暟鎹�
+        /// </summary>
+        /// <param name="HBarCode"></param>
+        /// <returns></returns>
         public json Get_ReciveBillCheckDate(string HBarCode)
         {
             json objjson = new json();
             try
             {
                 SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
-                DataSet Ds = oCn.RunProcReturn("exec h_p_KF_PonderationBillMain_Temp_Add_POInStockCheck2 '" + HBarCode + "'", "h_p_KF_PonderationBillMain_Temp_Add_POInStockCheck2");
+                DataSet Ds;
+                string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo);//瀹㈡埛鍚嶇О
+                if (FCusName.Contains("瀹夌憺"))
+                    Ds = oCn.RunProcReturn("exec h_p_GetPOInStockByBarCode'" + HBarCode + "'", "h_p_GetPOInStockByBarCode");
+                else
+                    Ds = oCn.RunProcReturn("exec h_p_KF_PonderationBillMain_Temp_Add_POInStockCheck2 '" + HBarCode + "'", "h_p_KF_PonderationBillMain_Temp_Add_POInStockCheck2");
                 if (Ds == null || Ds.Tables[0].Rows.Count == 0)
                 {
                     objjson.code = "0";
@@ -1457,6 +1210,398 @@
             }
         }
 
+        [Route("POStockInBillList/AuditPOInStockBillPost")]
+        [HttpPost]
+        public object AuditPOInStockBill([FromBody] JObject msg)
+        {
+            try
+            {
+                string _msg = msg["msg"].ToString();
+                _msg = _msg.Replace("\\", "");
+                _msg = _msg.Replace("\n", "");
+                List<Models.ReciveBill_FastModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.ReciveBill_FastModel>>(_msg);
+                DAL.ClsCg_POInStockBill oBill = new DAL.ClsCg_POInStockBill();
+                var hinterID = list[0].HInterID;
+                var FID = list[0].FID;
+                string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo);//瀹㈡埛鍚嶇О
+                string FisRealess = oSystemParameter.GetSingleSystemParameter("Cg_POInStockBill_ErpAduit", ref DBUtility.ClsPub.sExeReturnInfo);//閫佽揣鍗曞埌璐х‘璁ゅ悗鍚屾閲戣澏浜戞敹鏂欓�氱煡鍗�
+                string FishaveBarcode = oSystemParameter.GetSingleSystemParameter("Cg_POInStockBill_BarCodeCtl", ref DBUtility.ClsPub.sExeReturnInfo);//鍒拌揣纭蹇呴』鎵爜绠辨潯鐮�
+                var kdTbaleName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");
+                string sql = string.Empty;
+                #region 鏍¢獙鏄惁鎵弿鏉$爜
+                if (FishaveBarcode == "Y")
+                {
+                    var HInterID = list[0].HInterID;
+                    string jysql = string.Format(@"select * from KF_PonderationBillMain_Temp where HSourceInterID = {0}", HInterID);
+                    DataTable jyDt = oCn.RunProcReturn(jysql, "jysql").Tables[0];
+                    if (jyDt.Rows.Count == 0 || jyDt == null)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "璇锋壂鎻忔潯鐮�";
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                #endregion
+                #region 閲戣澏瀹℃牳鍚庝細閲嶆柊鍚屾鍗曟嵁鍒癿es 鏁呬笉闇�瑕佹洿鏂癿es鐨勬敹鏂欓�氱煡鍗� 
+                oCn.BeginTran();
+                foreach (var item in list)
+                {
+                    if (item.HSQty == 0)
+                        continue;
+                    sql = $"update Cg_POInStockBillSub set Hqty = {item.HSQty} where HInterID ={item.HInterID} and HEntryID = {item.HEntryID}";
+                    oCn.RunProc(sql);
+                }
+                //鏇存柊鎴愬姛鍚� 鍚屾鏇存柊閲戣澏
+                oCn.Commit();
+                #endregion
+
+                if (FCusName.Contains("瀹夌憺"))
+                {
+                    sql = string.Format(@"
+SELECT T3.FNAME AS FTYPENAME,M.HBILLNO,B.HINTERID,B.HENTRYID,C.FID,C.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER
+,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER  AS FSETTLEORGNUMBER,
+E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID 
+,CU.FNUMBER AS FUNITNUMBER,CR.FPRICE,CR.FTAXPRICE,CR.FTAXRATE,D.FPURCHASERID,isnull(T4.FNUMBER,'') AS FPURCHASERNUMBER
+FROM CG_POINSTOCKBILLSUB B  
+JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID
+JOIN {0}..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID
+LEFT JOIN {0}..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMATERIALID
+LEFT JOIN {0}..T_BD_UNIT CU ON C.FUNITID =CU.FUNITID
+JOIN {0}..T_PUR_POORDERENTRY_D CD ON    C.FENTRYID = CD.FENTRYID
+LEFT JOIN {0}..T_ORG_ORGANIZATIONS CDOO ON CD.FRECEIVEORGID = CDOO.FORGID
+JOIN {0}..T_PUR_POORDERENTRY_F CR ON    C.FENTRYID = CR.FENTRYID
+LEFT JOIN {0}..T_ORG_ORGANIZATIONS CROO ON CR.FSETTLEORGID = CROO.FORGID
+LEFT JOIN {0}..T_PUR_POORDER D ON C.FID =D.FID
+LEFT JOIN {0}..T_BAS_BILLTYPE T2 ON D.FBILLTYPEID = T2.FBILLTYPEID
+LEFT JOIN {0}..T_BAS_BILLTYPE_L T3 ON T2.FBILLTYPEID = T3.FBILLTYPEID and FLOCALEID = 2052
+LEFT JOIN  {0}..V_BD_BUYER T4 ON D.FPURCHASERID =T4.FID
+LEFT JOIN {0}..T_BD_SUPPLIER DS ON D.FSUPPLIERID = DS.FSUPPLIERID
+LEFT JOIN {0}..T_ORG_ORGANIZATIONS DOO ON D.FPURCHASEORGID = DOO.FORGID
+JOIN {0}..T_PUR_POORDERFIN E ON C.FID =E.FID
+LEFT JOIN {0}..T_BD_CURRENCY EC ON E. FSETTLECURRID =EC.FCURRENCYID  
+ WHERE b.hinterid in ({1}) and M.HERPInterID = 0
+", kdTbaleName, hinterID);
+                    DataTable dt = oCn.RunProcReturn(sql, "sltz").Tables[0];
+                    List<string> fidList = new List<string>();
+                    if (dt.Rows.Count > 0)
+                    {
+                        //foreach (DataRow dr in dt.Rows)
+                        //{
+                        //    //閲囪喘璁㈠崟涓嬫帹鐢熸垚閫佽揣鍗� 鏃跺�� 鍒ゆ柇鏄惁鏈夌敓鎴愰噰璐鍗曞彉鏇村崟 濡傛灉鏈変笖鍙樻洿鍗曠姸鎬佷笉涓哄凡瀹℃牳 闄愬埗涓嬫帹
+                        //    objJsonResult = TestPOOrder(dr["FEntryID"].ToString());
+                        //    if (objJsonResult.code == "0")
+                        //        return objJsonResult;
+                        //}
+                        foreach (DataRow dr in dt.Rows)
+                        {
+                            if (fidList.Contains(dr["HINTERID"].ToString()))
+                                continue;
+                            else
+                                fidList.Add(dr["HINTERID"].ToString());
+                            DataRow[] drs = dt.Select("HINTERID = " + dr["HINTERID"].ToString());
+                            JObject model = new JObject();
+                            string fTypeName = "SLD01_SYS";//鏍囧噯閲囪喘璁㈠崟绫诲瀷
+                            string ywTypeName = "CG";//鏍囧噯涓氬姟绫诲瀷
+                            if (dr["FTYPENAME"].ToString().Contains("濮斿"))
+                            {
+                                fTypeName = "SLD03_SYS";
+                                ywTypeName = "WW";
+                            }
+                            if (dr["FTYPENAME"].ToString().Contains("璧勪骇"))
+                            {
+                                fTypeName = "SLD04_SYS";
+                                ywTypeName = "ZCCG";
+                            }
+                            model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = fTypeName }); //鍗曟嵁绫诲瀷
+                            model.Add("FBusinessType", ywTypeName); //涓氬姟绫诲瀷
+                            model.Add("FBILLNO", dr["HBillNo"].ToString()); //鍗曟嵁缂栧彿
+                            model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //閫氱煡鏃ユ湡
+                            model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // 鏀舵枡缁勭粐 
+                            model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //閲囪喘缁勭粐
+                            model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //渚涘簲鍟�
+                            model.Add("FPURCHASERID", new JObject() { ["Fnumber"] = dr["FPURCHASERNUMBER"].ToString() }); //閲囪喘鍛�
+                            model.Add("FOwnerTypeIdHead", "BD_Supplier");//  璐т富绫诲瀷
+                            model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() });//璐т富 渚涘簲鍟� 
+                            JArray Fentity = new JArray();
+                            foreach (var item in drs)
+                            {
+                                JObject FentityModel = new JObject();
+                                FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMATERIALNUMBER"].ToString() }); // 鐗╂枡缂栫爜   
+                                FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 鍗曚綅   
+                                FentityModel.Add("FPreDeliveryDate", DateTime.Now.ToString("yyyy-MM-dd")); //棰勮鍒拌揣鏃ユ湡   
+                                FentityModel.Add("FPriceUnitId", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // 璁′环鍗曚綅   
+                                FentityModel.Add("FStockUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); //  搴撳瓨鍗曚綅   
+                                FentityModel.Add("FStockID", new JObject() { ["Fnumber"] = "BJCK-SH.01.005" }); //  搴撳瓨鍗曚綅   
+                                FentityModel.Add("FActReceiveQty", Convert.ToDecimal(item["HQTY"])); // 渚涘簲鍟嗛�佽揣鏁伴噺锛堟彁鏂欒鍒掓暟閲� - 宸茬敓鎴愰�佽揣鍗曟暟閲忥級
+                                FentityModel.Add("FOwnerTypeId", "BD_OwnerOrg");//璐т富绫诲瀷
+                                FentityModel.Add("FOwnerID", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//璐т富 
+                                FentityModel.Add("FSrcId", item["FID"].ToString());//婧愬崟鍐呯爜
+                                FentityModel.Add("FSRCFORMID", "PUR_PurchaseOrder");//婧愬崟绫诲瀷
+                                FentityModel.Add("FSrcBillNo", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
+                                FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
+                                FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//婧愬崟鍗曞彿
+                                FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//婧愬崟鍒嗗綍鍐呯爜
+                                FentityModel.Add("FSRMENTRYID", item["HENTRYID"].ToString());//SRM hentryid
+                                FentityModel.Add("FPrice", item["FPRICE"].ToString());//鍗曚环
+                                FentityModel.Add("FTaxPrice", item["FTAXPRICE"].ToString());//鍚◣鍗曚环
+                                FentityModel.Add("FEntryTaxRate", item["FTAXRATE"].ToString());//绋庣巼
+
+                                JArray Fentity2 = new JArray();
+                                JObject FentityModel2 = new JObject();
+                                FentityModel2.Add("FDetailEntity_Link_FRULEID", "PUR_PurchaseOrder-PUR_ReceiveBill");
+                                FentityModel2.Add("FDetailEntity_Link_FSTableName", "t_PUR_POOrderEntry");
+                                FentityModel2.Add("FDetailEntity_Link_FSBillId", item["FID"].ToString());
+                                FentityModel2.Add("FDetailEntity_Link_FSId", item["FEntryID"].ToString());
+                                Fentity2.Add(FentityModel2);
+                                FentityModel.Add("FDetailEntity_Link", Fentity2);
+                                Fentity.Add(FentityModel);
+                            }
+                            model.Add("FDetailEntity", Fentity); //鏄庣粏淇℃伅
+
+                            JObject _FentityModel = new JObject();
+                            _FentityModel.Add("FSettleOrgId", new JObject() { ["Fnumber"] = dr["FSETTLEORGNUMBER"].ToString() }); //  缁撶畻缁勭粐  
+                            _FentityModel.Add("FSettleCurrId", new JObject() { ["Fnumber"] = dr["FSETTLECURRNUMBER"].ToString() }); //  缁撶畻甯佸埆
+                            _FentityModel.Add("FPricePoint", 0); //  瀹氫环鏃剁偣
+                            model.Add("FinanceEntity ", _FentityModel);//璐㈠姟淇℃伅
+                            JObject jsonRoot = new JObject()
+                            {
+                                ["Creator"] = "",
+                                ["NeedUpDateFields"] = new JArray(),
+                                ["NeedReturnFields"] = new JArray(),
+                                ["IsDeleteEntry"] = "false",
+                                ["SubSystemId"] = "",
+                                ["IsVerifyBaseDataField"] = "false",
+                                ["Model"] = model
+                            };
+                            var loginRet = InvokeHelper.Login();
+                            var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
+                            if (isSuccess == 0)
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = loginRet;
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+                            //LogService.Write("jsonRoot:" + jsonRoot.ToString());
+                            var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
+                            //LogService.Write(result);
+                            if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE")
+                            {
+                                //鏇存柊閫佽揣鍗� 涓昏〃 ERP鍗曟嵁鍙� 浠ュ強 ERP涓诲唴鐜�
+                                string FBillNo = JObject.Parse(result)["Result"]["Number"].ToString();
+                                FID = JObject.Parse(result)["Result"]["Id"].ToString();
+                                string updateSql = string.Format(@"
+                                                      update a set 
+                                                      a.HERPInterID = {0} ,
+                                                      a.HERPBillNO   ='{1}'
+                                                      from Cg_POInStockBillMain a
+                                                      join Cg_POInStockBillSub b on a.hinterid = b.hinterid
+                                                      where b.HInterID = ({2})
+                                                      and b. HSOURCEINTERID = {3}
+                                                      and a.HERPInterID = 0
+                                                     ", FID, FBillNo, dr["HINTERID"].ToString(), dr["FID"].ToString());
+                                oCn.RunProc(updateSql);
+                            }
+                            else
+                            {
+                                objJsonResult.code = "0";
+                                objJsonResult.count = 0;
+                                objJsonResult.Message = result;
+                                objJsonResult.data = null;
+                                return objJsonResult;
+                            }
+
+                        }
+                    }
+                    else
+                    {
+                        LogService.Write("鏀舵枡閫氱煡鍗曞鏍告棤鏁版嵁锛�" + sql);
+                    }
+                }
+                else //澶忓疂 锛屾洿鏂癳rp淇℃伅
+                {
+                    JObject jsonRoot = new JObject();
+                    jsonRoot.Add("Creator", "");
+                    jsonRoot.Add("NeedUpDateFields", new JArray());
+                    jsonRoot.Add("NeedReturnFields", new JArray());
+                    jsonRoot.Add("IsDeleteEntry", "false");
+                    jsonRoot.Add("SubSystemId", "");
+                    jsonRoot.Add("IsVerifyBaseDataField", "");
+
+                    JObject jsonModel = new JObject();
+                    jsonModel.Add("FID", FID);
+                    JArray Entry = new JArray();
+                    foreach (var item in list)
+                    {
+                        if (item.HSQty == 0)
+                            continue;
+                        JObject jsonFPOOrderEntry = new JObject();
+                        jsonFPOOrderEntry.Add("FEntryID", item.FEntryID);
+                        jsonFPOOrderEntry.Add("FActReceiveQty ", item.HSQty); ;
+                        Entry.Add(jsonFPOOrderEntry);
+                    }
+                    jsonModel.Add("FDetailEntity", Entry);
+                    jsonRoot.Add("Model", jsonModel);
+                    var loginRet = InvokeHelper.Login();
+                    var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
+                    if (isSuccess <= 0)
+                    {
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = loginRet;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                    var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
+                    //LogService.Write(result);
+                    if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                    {
+                        LogService.Write("鏀舵枡閫氱煡鍗曚慨鏀瑰け璐sonRoot:" + jsonRoot.ToString());
+                        objJsonResult.code = "0";
+                        objJsonResult.count = 0;
+                        objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曟洿鏂板け璐�" + result;
+                        objJsonResult.data = null;
+                        return objJsonResult;
+                    }
+                }
+                var json = new
+                {
+                    Ids = FID,
+                };
+                //LogService.Write(json);
+                //鎻愪氦
+                var _result = InvokeHelper.Submit("PUR_ReceiveBill", JsonConvert.SerializeObject(json));
+                var _saveObj = JObject.Parse(_result);
+                if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                {
+                    LogService.Write("鏀舵枡閫氱煡鍗曟彁浜ゅけ璐sonRoot:" + json.ToString());
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曟彁浜ゅけ璐�" + _result;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+
+                }
+                //瀹℃牳
+                _result = InvokeHelper.Audit("PUR_ReceiveBill", JsonConvert.SerializeObject(json));
+                _saveObj = JObject.Parse(_result);
+                if (_saveObj["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
+                {
+                    LogService.Write("鏀舵枡閫氱煡鍗曞鏍稿け璐sonRoot:" + json.ToString());
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "閲戣澏鏀舵枡閫氱煡鍗曞鏍稿け璐sonRoot" + _result;
+                    objJsonResult.data = null;
+                    return objJsonResult;
+
+                }
+
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "鎿嶄綔鎴愬姛锛�";
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+            catch (Exception e)
+            {
+                //oCn.RollBack();
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "寮傚父锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+
+        }
+
+        /// <summary>
+        /// 鍒拌揣纭 鎵潯鐮� 鏍¢獙
+        /// </summary>
+        /// <param name="HBarcode"></param>
+        /// <param name="HInterID"></param>
+        /// <returns></returns>
+        [Route("POStockInBillList/Get_ReciveBillByBarcode")]
+        [HttpGet]
+        public object Get_ReciveBillByBarcode(string HBarcode, string HInterID)
+        {
+            try
+            {
+                //var code = HBarcode.Split('#')[0];
+                //鏍¢獙鏉$爜鏄惁瀛樺湪
+                string FCusName = oSystemParameter.GetSingleSystemParameter("WMS_CampanyName", ref DBUtility.ClsPub.sExeReturnInfo);//瀹㈡埛鍚嶇О
+                string sql = string.Empty;
+                if (FCusName.Contains("瀹夌憺"))
+                    sql = $"select HItemID,HSourceBillNo,HQty,HSourceInterID,HSourceEntryID from  Gy_BarCodeBill where HSourceInterID ={HInterID} and HBarCode = '{HBarcode}' and HBarCodeType ='绠卞彿鍐呮潯鐮�'";
+                else
+                    sql = $"select HItemID,HSourceBillNo,HQty,HSourceInterID,HSourceEntryID from  Gy_BarCodeBill where HSourceInterID ={HInterID} and HBarCode = '{HBarcode.Split('#')[0]}' and HQty = {HBarcode.Split('#')[1]}";
+                DataSet ds = oCn.RunProcReturn(sql, "H_v_SRM_POOrderBillList");
+                if (ds.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "鏉$爜涓嶅瓨鍦紒";
+                    objJsonResult.data = ds.Tables[0];
+                    return objJsonResult;
+                }
+                else
+                {
+                    //瀛樺叆鏉$爜涓存椂琛�
+                    sql = $"delete from KF_PonderationBillMain_Temp Where HBillNo='{ds.Tables[0].Rows[0]["HSourceBillNo"]}' ";
+                    oCn.RunProc(sql);
+                    sql = string.Format(@"Insert into KF_PonderationBillMain_Temp 
+	(HInterID,HBillNo,HBillType,HMaterID,HProcID,HWhID,HSCWHID
+	,HStockPlaceID,HOutStockPlaceID,HGroupID,HQty,HQtyMust,HPieceQty
+	,HAuxPropID,HBatchNo,HBarCode,HAddr,HMaker,HMakeDate
+	,HSourceInterID,HSourceEntryID,HSourceBillType,HSourceBillNo,HMTONo
+	,HSTOCKORGID,HOWNERID,HExpressNumber,HSubBillType
+	,HRelationInterID,HRelationEntryID,HRelationBillNo,HRedBlueFlag
+	,HCusID)
+	select HInterID,HSourceBillNo,HBillType,HMaterID,0,0,0
+	,0,0,0,HQty,HQty,0
+	,HAuxPropID,HBatchNo,'','','System',getdate()
+	,HSourceInterID,HSourceEntryID,HSourceBillType,HSourceBillNo,HMTONo
+	,HSTOCKORGID,HOWNERID,'',HBillType
+	,0,0,'',0
+	,0 from Gy_BarCodeBill  
+	where HItemID = {0}", ds.Tables[0].Rows[0]["HItemID"]);
+                    oCn.RunProc(sql);
+                }
+
+                objJsonResult.code = "1";
+                objJsonResult.count = 1;
+                objJsonResult.Message = "Sucess锛�";
+                objJsonResult.data = ds.Tables[0];
+                return objJsonResult;
+                //SQLHelper.ClsCN oCn = new SQLHelper.ClsCN();
+                //string sql = $"select * from H_v_SRM_POInStockBillList where 鍗曟嵁鍙� ='{HBillno}'";
+                //ds = oCn.RunProcReturn(sql, "H_v_SRM_POInStockBillList");
+                //if (ds == null || ds.Tables[0].Rows.Count == 0)
+                //{
+                //    objJsonResult.code = "0";
+                //    objJsonResult.count = 0;
+                //    objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�";
+                //    objJsonResult.data = null;
+                //    return objJsonResult;
+                //}
+                //else
+                //{
+
+                //}
+            }
+            catch (Exception e)
+            {
+                objJsonResult.code = "0";
+                objJsonResult.count = 0;
+                objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�" + e.ToString();
+                objJsonResult.data = null;
+                return objJsonResult;
+            }
+        }
+
         //鏀舵枡閫氱煡鍗曞鏍� 瀹℃牳鎻愪氦
         [Route("POStockInBillList/Exec_ReciveBillCheck")]
         [HttpGet]

--
Gitblit v1.9.1