From aa51348d3501aa3a9bbda287929f3c8a05825063 Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期三, 03 十二月 2025 18:14:31 +0800
Subject: [PATCH] 1

---
 WebAPI/Controllers/POStockInBillController.cs |  238 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 224 insertions(+), 14 deletions(-)

diff --git a/WebAPI/Controllers/POStockInBillController.cs b/WebAPI/Controllers/POStockInBillController.cs
index ec68edf..87cdf36 100644
--- a/WebAPI/Controllers/POStockInBillController.cs
+++ b/WebAPI/Controllers/POStockInBillController.cs
@@ -995,12 +995,12 @@
                         bool flag3 = dataSet5.Tables[0].Rows.Count > 0;
                         if (!flag3)
                         {
-                            POStockInBillController postockInBillController = new POStockInBillController();
-                            //鎵簮鍗曟柟娉�
-                            postockInBillController.set_SavePonderationBillMain_Temp_Source_Fast_Json("1103", text5, hinterid, HBillNo);
+                            //POStockInBillController postockInBillController = new POStockInBillController();
+                            ////鎵簮鍗曟柟娉�
+                            //postockInBillController.set_SavePonderationBillMain_Temp_Source_Fast_Json("1103", text5, hinterid, HBillNo);
 
-                            //WEBSController webscontroller4 = new WEBSController();
-                            //object obj4 = webscontroller4.Get_SourceBarCode_PoStockIn_Json(hinterid, HBillNo, HBillType, text5, "1103", HMaker, HOrgID,1, oSystemParameterMain, ref DBUtility.ClsPub.sErrInfo);
+                            WEBSController webscontroller4 = new WEBSController();
+                            object obj4 = webscontroller4.get_SourceBarCode_POStockIn_Json(hinterid, HBillNo, HBillType, text5, "1103", HMaker, HOrgID);
 
 
 
@@ -1066,8 +1066,11 @@
                         bool flag4 = dataSet6.Tables[0].Rows.Count > 0;
                         if (!flag4)
                         {
-                            POStockInBillController postockInBillController2 = new POStockInBillController();
-                            postockInBillController2.set_SavePonderationBillMain_Temp_Source_Fast_Json("1103", text5, hinterid, HBillNo);
+                            //POStockInBillController postockInBillController2 = new POStockInBillController();
+                            //postockInBillController2.set_SavePonderationBillMain_Temp_Source_Fast_Json("1103", text5, hinterid, HBillNo);
+
+                            WEBSController webscontroller4 = new WEBSController();
+                            object obj4 = webscontroller4.get_SourceBarCode_POStockIn_Json(hinterid, HBillNo, HBillType, text5, "1103", HMaker, HOrgID);
                         }
                     }
                 }
@@ -3366,8 +3369,76 @@
         }
 
 
+        #region  [閫氳繃 婧愬崟鍗曞彿 杩涜 鏉ユ枡妫�楠宂
+        /// <summary>
+        /// 閫氳繃 婧愬崟鍗曞彿 杩涜 鏉ユ枡妫�楠�
+        /// </summary>
+        /// <param name="HBarCode">婧愬崟鍗曞彿</param>
+        /// <param name="HOrgID">缁勭粐ID</param>
+        /// <returns></returns>
+        [Route("Kf_QCStockInCheckBill_Fast/BarCode_Json_SourceBillNo")]
+        [HttpGet]
+        public object BarCode_Json_SourceBillNo(string HBarCode, Int64 HOrgID)
+        {
+            try
+            {
+                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 Dss2;
+                Dss2 = oCn.RunProcReturn(" select fid,FMATERIALID,FENTRYID,FBILLNO from h_v_RECEIVEQuery where FSRCBILLNO= '" + HBarCode + "'", "h_v_RECEIVEQuery");
+                
+                if(Dss2 == null || Dss2.Tables[0].Rows.Count == 0)
+                {
+                    objJsonResult.code = "0";
+                    objJsonResult.count = 0;
+                    objJsonResult.Message = "娌℃湁杩斿洖浠讳綍璁板綍锛�";
+                    objJsonResult.data = null;
+                    return objJsonResult;
+                }
+
+                string HPOStockInBillNo = Dss2.Tables[0].Rows[0]["FBILLNO"].ToString();
 
 
+
+                DataSet ds;
+                ds = oCN.RunProcReturn("select * from h_v_QCStockInCheckBill_Json_SourceBill where  HSourceBillNo ='" + HPOStockInBillNo.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;
+            }
+        }
+        #endregion
 
 
         [Route("Kf_QCStockInCheckBill_Fast/BarCode_Json")]
@@ -3918,8 +3989,8 @@
                 List<Model.ClsKf_POStockInBillMain> lsmain = new List<Model.ClsKf_POStockInBillMain>();
                 ListModels oListModels = new ListModels();
                 lsmain = oListModels.getPOStockInBillMainByJson(msg1);
-                lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
-                lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
+                //lsmain[0].HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
+                //lsmain[0].HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));
                 string sSourceBillType = lsmain[0].HBillType;
 
                 WebAPI.WebS.ClsKf_POStockInBillMain websLsmain = new WebS.ClsKf_POStockInBillMain();
@@ -4436,6 +4507,7 @@
                             jobject16.Add("FSRCENTRYID", dataRow2["FENTRYID"].ToString());
                             jobject16.Add("FORDERBILLNO", dataRow2["FBILLNO"].ToString());
                             jobject16.Add("FPOORDERENTRYID", dataRow2["FENTRYID"].ToString());
+                            jobject16.Add("FGiveAway", dataRow2["FGIVEAWAY"].ToString());//鏄惁璧犲搧
                             //jobject16.Add("FPrice", dataRow2["FPRICE"].ToString());
                             //jobject16.Add("FTaxPrice", dataRow2["FTAXPRICE"].ToString());
                             //jobject16.Add("FEntryTaxRate", dataRow2["FTAXRATE"].ToString());
@@ -5009,7 +5081,16 @@
         {
             try
             {
-                string _msg = msg["msg"].ToString();
+                string HMaker ="";           //鍒跺崟浜�
+                var _value = msg["msg"].ToString();
+                string msg1 = _value.ToString();
+                string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
+                string _msg = sArray[0].ToString();
+                if(sArray.Length>1)
+                {
+                    HMaker = sArray[1].ToString();
+                }
+
                 _msg = _msg.Replace("\\", "");
                 _msg = _msg.Replace("\n", "");
                 List<Models.ReciveBill_FastModel> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.ReciveBill_FastModel>>(_msg);
@@ -5057,6 +5138,7 @@
 ,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
+,C.FGIVEAWAY AS FGIVEAWAY   
 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
@@ -5140,6 +5222,7 @@
                                 FentityModel.Add("FPrice", item["FPRICE"].ToString());//鍗曚环
                                 FentityModel.Add("FTaxPrice", item["FTAXPRICE"].ToString());//鍚◣鍗曚环
                                 FentityModel.Add("FEntryTaxRate", item["FTAXRATE"].ToString());//绋庣巼
+                                FentityModel.Add("FGiveAway", item["FGIVEAWAY"].ToString());//鏄惁璧犲搧
 
                                 JArray Fentity2 = new JArray();
                                 JObject FentityModel2 = new JObject();
@@ -5168,7 +5251,8 @@
                                 ["IsVerifyBaseDataField"] = "false",
                                 ["Model"] = model
                             };
-                            var loginRet = InvokeHelper.Login();
+                            //鐧诲綍
+                            var loginRet = InvokeHelper.LoginUser(HMaker);
                             var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                             if (isSuccess == 0)
                             {
@@ -5214,7 +5298,54 @@
                         LogService.Write("鏀舵枡閫氱煡鍗曞鏍告棤鏁版嵁锛�" + sql);
                     }
                 }
-                else //澶忓疂 锛屾洿鏂癳rp淇℃伅
+                else if(FCusName.Contains("澶忓疂"))
+                {
+                    JObject jsonRoot = new JObject();
+                    jsonRoot.Add("Creator", "");
+                    jsonRoot.Add("NeedUpDateFields", new JArray());
+                    jsonRoot.Add("NeedReturnFields", new JArray());
+                    jsonRoot.Add("IsDeleteEntry", "false"); //娉ㄦ剰IsDeleteEntry鍙傛暟锛屽涓篢rue锛屽垯鍘熷垎褰曡鐨凢EntryId鏈湪鍒嗗綍json鍑虹幇鐨勮锛屽皢浼氳鍒犻櫎 锛堝鏃犻渶鍒犻櫎鍒嗗綍琛岋紝鍙敼涓篺asle锛�
+                    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.LoginUser(HMaker);
+                    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;
+                    }
+                }
+                else //鏇存柊erp淇℃伅
                 {
                     JObject jsonRoot = new JObject();
                     jsonRoot.Add("Creator", "");
@@ -5238,7 +5369,8 @@
                     }
                     jsonModel.Add("FDetailEntity", Entry);
                     jsonRoot.Add("Model", jsonModel);
-                    var loginRet = InvokeHelper.Login();
+                    //鐧诲綍
+                    var loginRet = InvokeHelper.LoginUser(HMaker);
                     var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                     if (isSuccess <= 0)
                     {
@@ -5311,6 +5443,82 @@
 
         }
 
+        [Route("POStockInBillList/AuditPOInStockBillPost_TianKang")]
+        [HttpGet]
+        public object AuditPOInStockBill_TianKang(long FID,string user)
+        {
+            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);//瀹㈡埛鍚嶇О               
+                //var kdTbaleName = Util.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "/Config/kdapi.config", "DataBaseName");
+                //string sql = string.Empty;
+                                              
+                var json = new
+                {
+                    Ids = FID,
+                };
+                //LogService.Write(json);
+                //鐧诲綍
+                var loginRet = InvokeHelper.LoginUser(user);
+                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.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>
@@ -5329,9 +5537,11 @@
                 string sql = string.Empty;
                 if (FCusName.Contains("瀹夌憺"))
                     sql = $"select top 1 HItemID,HSourceBillNo,HQty,HSourceInterID,HSourceEntryID from  Gy_BarCodeBill where HSourceInterID =(select distinct HSourceInterID from Cg_POInStockBillSub where HInterID ={HInterID}) and HBarCode = '{HBarcode}' and HBarCodeType ='绠卞彿鍐呮潯鐮�'";
+                else if(FCusName.Contains("娣诲悍绉戞妧"))
+                    sql = $"select top 1 HItemID,HSourceBillNo,HQty,HSourceInterID,HSourceEntryID,HMaterID,HBatchNo,HProduceDate,HExpiryDate 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");
+                DataSet ds = oCn.RunProcReturn(sql, "Gy_BarCodeBill");
                 if (ds.Tables[0].Rows.Count == 0)
                 {
                     objJsonResult.code = "0";

--
Gitblit v1.9.1