From 42c5ed8edc862ebc80c117ed9a26e00f6f3e844d Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期二, 17 十二月 2024 08:24:11 +0800
Subject: [PATCH] 基础资料单据(产品工艺参数、设备启动点检清单、产品防错验证清单)增加 导入按钮

---
 WebAPI/Controllers/POStockInBillController.cs |  169 +++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 135 insertions(+), 34 deletions(-)

diff --git a/WebAPI/Controllers/POStockInBillController.cs b/WebAPI/Controllers/POStockInBillController.cs
index 6416cdc..f9cb83b 100644
--- a/WebAPI/Controllers/POStockInBillController.cs
+++ b/WebAPI/Controllers/POStockInBillController.cs
@@ -928,14 +928,15 @@
                 WebS.ClsXt_SystemParameterMain oSystemParameterMain = new WebS.ClsXt_SystemParameterMain();
                 string text = "";
                 string text1 = "";
-                bool flag = HBillType == "1201";
+                //gy_billnumber 鍗曟嵁绫诲瀷琛�
+                bool flag = HBillType == "1201"; //WMS 閲囪喘鍏ュ簱
                 if (flag)
                 {
                     string[] array = sBarCodeNew.Split(new char[]
                     {
                 '@'
                     });
-                    string str = array[0];
+                    string str = array[0]; //鐗╂枡浠g爜
                     long num = (long)ClsPub.isInt(array[4]);
                     string text2 = array[6];
                     DateTime dateTime = ClsPub.isDate(array[3]);
@@ -946,11 +947,12 @@
                     string str3 = ClsPub.isStrNull(dataSet.Tables[0].Rows[0]["HNumber"]);
 
 
-
+                    //鐢ㄦ媶鍒嗗嚭鏉ョ殑鐗╂枡浠g爜鏌ヨ鐗╂枡琛ㄩ噷鐨勬柊鐗╂枡缂栫爜
                     DataSet Dss7;
                     Dss7 = clsCN.RunProcReturn(" select * from AIS20220914133941..T_BD_MATERIAL where FNumber = '" + str + "'", "T_BD_MATERIAL");
                     if (Dss7 == null || Dss7.Tables[0].Rows.Count == 0)
                     {
+                        //鏂扮墿鏂欒〃閲屾病鏈夎繑鍥炴暟鎹垯鏌ヨ鐗╂枡琛ㄩ噷鐨勬棫鐗╂枡缂栫爜
                         DataSet Dss8;
                         Dss8 = clsCN.RunProcReturn(" select * from AIS20220914133941..T_BD_MATERIAL where FOldNumber = '" + str + "'", "T_BD_MATERIAL");
                         str = DBUtility.ClsPub.isStrNull(Dss8.Tables[0].Rows[0]["FNumber"]);
@@ -968,6 +970,7 @@
                     long num3 = (long)ClsPub.isInt(dataSet2.Tables[0].Rows[0]["HUnitID"]);
                     text = str3 + num2.ToString() + text2  + "#" + num;
                     text1 = str3 + num2.ToString() + text2;
+                    //鎵炬簮鍗�
                     DataSet dataSet3 = clsCN.RunProcReturn(" select fid,FMATERIALID,FENTRYID,FBILLNO from h_v_RECEIVEQuery where FSRCBILLNO= '" + str2 + "' and  FLOT_TEXT = '" + text2 + "' and  FMATERIALID = " + num2.ToString(), "h_v_RECEIVEQuery");
                     //DataSet dataSet3 = clsCN.RunProcReturn(" select fid,FMATERIALID,FENTRYID,FBILLNO from h_v_RECEIVEQuery where FLOT_TEXT= '" + text2 + "' and FPRODUCEDATE = '" + dateTime + "' and  FMATERIALID = " + num2.ToString(), "h_v_RECEIVEQuery");
                     num2 = ClsPub.isLong(dataSet3.Tables[0].Rows[0]["FMATERIALID"]);
@@ -980,6 +983,7 @@
                     {
                         DataSet dataSet5 = clsCN.RunProcReturn(string.Concat(new string[]
                         {
+                    //鎵爜涓存椂璁板綍琛�
                     " select * from KF_PonderationBillMain_Temp where  HInterID = ",
                     hinterid.ToString(),
                     " and HBillType = '",
@@ -991,11 +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);
 
 
 
@@ -1061,12 +1066,15 @@
                         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);
                         }
                     }
                 }
-                bool flag5 = HBillType == "1202";
+                bool flag5 = HBillType == "1202"; //WMS 鐢熶骇鍏ュ簱
                 if (flag5)
                 {
                     string text6 = sBarCodeNew.Remove(0, sBarCodeNew.Length - 4);
@@ -1074,14 +1082,14 @@
                     bool flag6 = text7.Contains("W") || text7.Contains("N");
                     if (flag6)
                     {
-                        string text8 = sBarCodeNew.Substring(0, 10);
-                        string str4 = sBarCodeNew.Substring(10, 10);
+                        string text8 = sBarCodeNew.Substring(0, 10);//鍟嗗搧鐮�    鍟嗗搧鐮�+鐗╂枡浠g爜+鐢熶骇鏃ユ湡+鎵规+澶辨晥鏃ユ湡+涓�浣嶅瓧姣�+涓変綅鏁板瓧
+                        string str4 = sBarCodeNew.Substring(10, 10);//鐗╂枡浠g爜
                         string text9 = "20" + sBarCodeNew.Substring(20, 6);
-                        long num8 = (long)ClsPub.isInt(text9.Substring(0, 4));
-                        long num9 = (long)ClsPub.isInt(text9.Substring(4, 2));
-                        long num10 = (long)ClsPub.isInt(text9.Substring(6, 2));
-                        long num11 = (long)ClsPub.isInt(sBarCodeNew.Remove(0, sBarCodeNew.Length - 3));
-                        string text10 = sBarCodeNew.Remove(0, sBarCodeNew.Length - 10);
+                        long num8 = (long)ClsPub.isInt(text9.Substring(0, 4));  //骞�
+                        long num9 = (long)ClsPub.isInt(text9.Substring(4, 2));  //鏈�
+                        long num10 = (long)ClsPub.isInt(text9.Substring(6, 2)); //鏃�
+                        long num11 = (long)ClsPub.isInt(sBarCodeNew.Remove(0, sBarCodeNew.Length - 3));//鍚庝笁浣嶆案杩滈兘鏄暟瀛�
+                        string text10 = sBarCodeNew.Remove(0, sBarCodeNew.Length - 10);//澶辨晥鏃ユ湡+涓�浣嶅瓧姣�+涓変綅鏁板瓧
                         string text11 = "20" + text10.Substring(0, 6);
                         long num12 = (long)ClsPub.isInt(text11.Substring(0, 4));
                         long num13 = (long)ClsPub.isInt(text11.Substring(4, 2));
@@ -1236,7 +1244,8 @@
                     }
                     else
                     {
-                        string str6 = sBarCodeNew.Substring(0, 10);
+                        /*鍓嶅崄浣嶇墿鏂欎唬鐮侊紝鍚庡叚浣嶇敓鏁堟棩鏈燂紝鍊掓暟鍓嶄笁浣嶆槸鏁板瓧鍓嶅叚浣嶆槸澶辨晥鏃ユ湡 */
+                        string str6 = sBarCodeNew.Substring(0, 10);//鐗╂枡浠g爜
                         string text17 = "20" + sBarCodeNew.Substring(10, 6);
                         long num21 = (long)ClsPub.isInt(text17.Substring(0, 4));
                         long num22 = (long)ClsPub.isInt(text17.Substring(4, 2));
@@ -1255,9 +1264,9 @@
                     "-",
                     num27.ToString()
                         }));
-                        string text20 = sBarCodeNew.Remove(0, 16);
-                        string text21 = text20.Remove(text20.Length - 9, 9);
-                        ClsCN clsCN3 = new ClsCN();
+                        string text20 = sBarCodeNew.Remove(0, 16); //SAE1300100 230309 2303704 250308 010
+                        string text21 = text20.Remove(text20.Length - 9 , 9); //SAE1300100230309 2303704 250308010
+                         ClsCN clsCN3 = new ClsCN();
                         DataSet dataSet13 = clsCN3.RunProcReturn(" select HItemID,HName,HModel,HUnitID from Gy_Material where HNumber= '" + str6 + "' and  huseorgid = " + HOrgID.ToString(), "Gy_Material");
                         long num28 = ClsPub.isLong(dataSet13.Tables[0].Rows[0]["HItemID"]);
                         string text22 = ClsPub.isStrNull(dataSet13.Tables[0].Rows[0]["HName"]);
@@ -1292,7 +1301,7 @@
                     "-",
                     num23.ToString()
                         }));
-                        DataSet dataSet16 = clsCN3.RunProcReturn(" select * from Gy_BarCodeBill where HBarCode= '" + text1 + "'", "Gy_BarCodeBill");
+                        DataSet dataSet16 = clsCN3.RunProcReturn(" select * from Gy_BarCodeBill where HBarCode= '" + text1 + "'", "Gy_BarCodeBill"); 
                         bool flag10 = dataSet16.Tables[0].Rows.Count > 0;
                         if (flag10)
                         {
@@ -1317,6 +1326,7 @@
                         }
                         else
                         {
+                            //鍙兘鍜屼粬浠殑鐧诲綍缁勭粐鏈夊叧绯�
                             string billCode3 = "85";
                             long num32 = ClsPub.CreateBillID_Prod(billCode3, ref ClsPub.sExeReturnInfo);
                             long num33 = 0L;
@@ -1381,7 +1391,7 @@
                         }
                     }
                 }
-                bool flag13 = HBillType == "1244";
+                bool flag13 = HBillType == "1244"; //WMS 鐢熶骇閫�鏂欏崟
                 if (flag13)
                 {
                     bool flag14 = sBarCodeNew.Contains("@");
@@ -1672,7 +1682,7 @@
                         }
                     }
                 }
-                bool flag19 = HBillType == "1207";
+                bool flag19 = HBillType == "1207"; //WMS 鐩存帴璋冩嫧
                 if (flag19)
                 {
                     bool flag20 = sBarCodeNew.Contains("@");
@@ -1947,7 +1957,7 @@
                         }
                     }
                 }
-                bool flag25 = HBillType == "1206";
+                bool flag25 = HBillType == "1206"; //WMS 閿�鍞嚭搴�
                 if (flag25)
                 {
                     bool flag26 = sBarCodeNew.Contains("@");
@@ -2235,8 +2245,8 @@
                             }
                         }
                     }
-                }
-                bool flag31 = HBillType == "1204";
+                } 
+                bool flag31 = HBillType == "1204"; //WMS 鐢熶骇棰嗘枡
                 if (flag31)
                 {
                     bool flag32 = sBarCodeNew.Contains("@");
@@ -2526,7 +2536,7 @@
                         }
                     }
                 }
-                bool flag37 = HBillType == "1254" || HBillType == "1211" || HBillType == "1255";
+                bool flag37 = HBillType == "1254" /*鐢熶骇琛ユ枡*/ || HBillType == "1211" || HBillType == "1255";
                 if (flag37)
                 {
                     bool flag38 = sBarCodeNew.Contains("@");
@@ -2815,7 +2825,7 @@
                         }
                     }
                 }
-                bool flag43 = HBillType == "1205";
+                bool flag43 = HBillType == "1205"; 
                 if (flag43)
                 {
                     bool flag44 = sBarCodeNew.Contains("@");
@@ -3911,8 +3921,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();
@@ -3944,7 +3954,8 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 1;
-                    objJsonResult.Message = "鎴愬姛锛佸崟鎹彿涓猴細";
+                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //鎴愬姛锛�
+                    //objJsonResult.Message = "鎴愬姛锛佸崟鎹彿涓猴細";
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -3952,7 +3963,8 @@
                 {
                     objJsonResult.code = "0";
                     objJsonResult.count = 0;
-                    objJsonResult.Message = "涓婁紶澶辫触锛�" + DBUtility.ClsPub.sErrInfo;
+                    objJsonResult.Message = DBUtility.ClsPub.sErrInfo;  //澶辫触锛�
+                    //objJsonResult.Message = "涓婁紶澶辫触锛�" + DBUtility.ClsPub.sErrInfo;
                     objJsonResult.data = null;
                     return objJsonResult;
                 }
@@ -4301,6 +4313,14 @@
                 {
                     DataSet dataSet = this.oCn.RunProcReturn("exec h_p_ReceiveBill_Fast " + hinterID, "h_p_ReceiveBill_Fast");
                     DataRow dataRow = dataSet.Tables[0].Rows[0];
+                    if (dataSet.Tables[0].Rows.Count == 1 && dataSet.Tables[0].Rows[0]["FRECEIVENumber"].ToString() == "0")
+                    {
+                        this.objJsonResult.code = "0";
+                        this.objJsonResult.count = 0;
+                        this.objJsonResult.Message = "瀛樺湪澶氫釜閲囪喘璁㈠崟鍗曟嵁绫诲瀷锛屼笉鍏佽鎻愪氦锛�";
+                        this.objJsonResult.data = null;
+                        return this.objJsonResult;
+                    }
                     bool flag4 = dataSet.Tables[0].Rows.Count <= 0;
                     bool flag5 = flag4;
                     bool flag6 = flag5;
@@ -4419,6 +4439,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());
@@ -5040,6 +5061,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
@@ -5123,6 +5145,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();
@@ -5294,6 +5317,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>
@@ -5312,9 +5411,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