From cd7025a07f30a87cc90a09f9345d6d1e6ae41e44 Mon Sep 17 00:00:00 2001
From: zrg <z18737863051@163.com>
Date: 星期四, 08 五月 2025 15:59:10 +0800
Subject: [PATCH] 1

---
 WFormSynchronizeData_SMR/WFormReadData_SMR/ReadCSV.cs |  183 ++++++++++++++++++++++++++++++---------------
 1 files changed, 123 insertions(+), 60 deletions(-)

diff --git a/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadCSV.cs b/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadCSV.cs
index 97122ca..457a52d 100644
--- a/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadCSV.cs
+++ b/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadCSV.cs
@@ -22,8 +22,7 @@
             InitializeComponent();
         }
         public static int num = 0;
-
-
+        public static DateTime time = DateTime.Now.AddMinutes(-5);
 
         //鏇存崲鏉″舰鐮�
         private void btnGH_Click(object sender, EventArgs e)
@@ -51,6 +50,7 @@
                         string HProjectNum = ds.Tables[0].Rows[0]["HProjectNum"].ToString();
                         this.txtHBath.Text = HProjectNum.Split('-')[0];
                         this.txtHBardCode.ReadOnly = true;
+                        list.Clear();
                     }
                     else {
                         MessageBox.Show(HBillNo + ",娴佽浆鍗℃湭寮�宸�!");
@@ -160,6 +160,7 @@
                 ReadCsv();
             }
         }
+        public static List<string> list = new List<string>();
 
         //璇诲彇csv鏍煎紡鏂囦欢
         private void ReadCsv()
@@ -176,7 +177,7 @@
 
             //娉�:鏂帿灏旂粍瑁�3 鍦‥鐩�  _332009
             //鍏朵綑鍦―鐩� _C332001_2M
-            //string csv_file_path = $@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20231123.csv";
+            //string csv_file_path = $@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\250933P9_250403_C332001_2M.csv";
             string csv_file_path = $@"D:\THLCR_Data\{HBath}\{HBath}_{Date}_C332001_2M.csv"; //缁勮1 缁勮2璺緞 
             //string csv_file_path = $@"E:\THLCR_Data\{HBath}\{HBath}_{Date}_332009.csv";  //缁勮3璺緞
             //15杞﹂棿缂哄皯璺緞 D:\DATA SAVE\骞碶骞存湀\骞存湀鏃鎵规鍙穃鏁版嵁淇濆瓨.csv
@@ -189,7 +190,7 @@
             {
                 DataTable dt = new DataTable();
                 string HTypeName = "鏃犲皹";
-                //string csv_file_path_Read = @"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20231123_1.csv";
+                //string csv_file_path_Read = @"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\250933P9_250403_C332001_2M_1.csv";
                 string csv_file_path_Read = $@"D:\THLCR_Data\{HBath}\{HBath}_{Date}_C332001_2M_Read.csv"; //缁勮1 缁勮2璺緞 
                 //string csv_file_path_Read = $@"E:\THLCR_Data\{HBath}\{HBath}_{Date}_332009_Read.csv";  //缁勮3璺緞
 
@@ -199,6 +200,7 @@
 
                 //string csv_file_path_Read = $@"D:\DATA SAVE\{Year}\{Year + Month}\{Year + Month + Day}\{HBath}\鏁版嵁淇濆瓨_MES璇诲彇.csv";
 
+                //澶嶅埗涓�浠芥枃浠�
                 File.Copy(csv_file_path, csv_file_path_Read, true);
 
                 string contents = File.ReadAllText(csv_file_path_Read, Encoding.GetEncoding("gb2312"));
@@ -229,7 +231,7 @@
                 parser.Close();
 
                 //鑾峰彇褰撳墠鏃堕棿
-                DateTime ActionTime = DateTime.Parse(DateTime.Now.AddMinutes(-120).ToString("yyyy-MM-dd  HH:mm:ss"));
+                DateTime ActionTime = DateTime.Parse(DateTime.Now.AddMinutes(-20).ToString("yyyy-MM-dd  HH:mm:ss"));
                 DateTime EndTime = DateTime.Parse(DateTime.Now.AddMinutes(1).ToString("yyyy-MM-dd  HH:mm:00"));
                 bool flag_1 = false;
                 bool flag_2 = false;
@@ -240,7 +242,7 @@
                         DateTime NowTime = DateTime.Parse(item["娴嬭瘯鏃堕棿"].ToString());
                         string HBadCodeSN = item["搴忓彿"].ToString();
 
-                        if (((NowTime >= ActionTime && NowTime < EndTime) || dt.Rows.Count <= 20) && HBadCodeSN != "")
+                        if (((NowTime >= ActionTime && NowTime < EndTime) || dt.Rows.Count <= 20) && HBadCodeSN != "" && list.Contains(HBadCodeSN)==false)
                         {
 
                             string HSourceCode = this.HSouce.Text; //璁惧缂栧彿 缁勮1 9994 缁勮2 9995 缁勮3 9996
@@ -252,14 +254,15 @@
                             string HProcNumber = "005"; //005
                             int HFlag = 0;
                             //string HEmpCode = "";
+                            //鍒ゆ柇鏉$爜涓嶄负绌�
                             if (HBadCodeSN != "")
                             {
                                 string HType = "";
                                 int HCount = 1;
 
-                                DataSet ds = oCN.RunProcReturn(@"select * from Sb_EquipMentCollection_SN where HBarCode='" + HBarCode + "' and HCreateTime='" + HCreateTime + "'", "Sb_EquipMentCollection_SN");
+                                //DataSet ds = oCN.RunProcReturn(@"select * from Sb_EquipMentCollection_SN where HBarCode='" + HBarCode + "' and HCreateTime='" + HCreateTime + "'", "Sb_EquipMentCollection_SN");
 
-                                if (ds.Tables[0].Rows.Count == 0)
+                                if (true)
                                 {
                                     if (Get_AllowLoadData(HBarCode, HProcNumber, flag_1,out flag_2))
                                     {
@@ -267,7 +270,9 @@
                     values('{HSourceCode}','{HEmpCode}','{HType}','{HBarCode}','{HCount}','{HCreateTime}','{HDate}','{HResult}','{HProcNumber}','{HFlag}')";
                                         oCN.RunProc(sql);
                                         ListSelect.Items.Add("鏉$爜:" + HBarCode + ",褰撳墠鏃ユ湡:" + DateTime.Now.ToString() + ",鏃ユ湡:" + HCreateTime + ",缁撴灉:" + HResult);
+                                        list.Add(HBarCode);
 
+                                        //鏂板宸ヨ壓鍙傛暟
                                         for (int i = 0; i < dt.Columns.Count; i++)
                                         {
                                             if (dt.Columns[i].ColumnName.Contains("Hz"))
@@ -275,6 +280,7 @@
                                                 HType = dt.Columns[i].ColumnName;
                                                 string HCount_1 = item[HType].ToString();
 
+                                                //鏌ヨ褰撳ぉ鏉$爜 瀵瑰簲鐨勫伐鑹哄弬鏁版湁娌℃湁鎻掑叆鍒伴噷闈� 濡傛灉娌℃湁鍒欐柊澧�
                                                 DataSet ds1 = oCN.RunProcReturn(@"select * from Sb_EquipMentCollectionTechParam_SN where HBarCode='" + HBarCode + "' and HType='" + HType + "'", "Sb_EquipMentCollectionTechParam_SN");
 
                                                 if (ds1.Tables[0].Rows.Count == 0)
@@ -372,10 +378,17 @@
             }
         }
 
-       
+        public static string AllProcessExchange = "-1";
+        public static string AllProcessExchangeHProcExchBillNo = "";
+        public static string AllProcessExchangeHProcExchInterID = "";
+        public static string AllSNBarcodeProcCtrl = "";
+        public static string AllHProcID = "0";
+        public static string AllHProName = "";
+        public static double AllHQty = 0;
         //鏍规嵁鏉$爜 鍒ゆ柇鏄惁淇濆瓨
         public bool Get_AllowLoadData(string HBarCode,string HProcNumber,bool flag_1,out bool flag_2)
         {
+            decimal hqty = 2;
             if (HBarCode.Length != 29 && HBarCode.Length != 50)
             {
                 flag_2 = false;
@@ -388,23 +401,29 @@
             if (HBarCode.Length == 29)
             {
                 string str1 = HBarCode.Substring(18, 8);
-                string str2 = HBarCode.Substring(23, 3);
-               
-                DataSet ds = oCN.RunProcReturn("select  HInterID,HBillNo from Sc_ProcessExchangeBillMain where HProjectNum like'" + str1 + "-1%' or HProjectNum like'" + str2 + "-1%' order by HMakeDate desc", "Sc_ProcessExchangeBillMain");
-                //鍒ゆ柇鏄惁鑳芥壘鍒板搴旂殑娴佽浆鍗�
-                if (ds.Tables[0].Rows.Count > 0)
-                {
-                     HProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
-                    HProcExchInterID = ds.Tables[0].Rows[0]["HInterID"].ToString();
-                }
-                else {
-                    if (!flag_1)
+                //string str2 = HBarCode.Substring(23, 3);
+                if (AllProcessExchange != str1) {
+                    DataSet ds = oCN.RunProcReturn("select  HInterID,HBillNo from Sc_ProcessExchangeBillMain where HProjectNum like'" + str1 + "-1%' order by HMakeDate desc", "Sc_ProcessExchangeBillMain");
+                    //鍒ゆ柇鏄惁鑳芥壘鍒板搴旂殑娴佽浆鍗�
+                    if (ds.Tables[0].Rows.Count > 0)
                     {
-                        MessageBox.Show(new Form { TopMost = true }, "鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
+                        AllProcessExchangeHProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+                        AllProcessExchangeHProcExchInterID = ds.Tables[0].Rows[0]["HInterID"].ToString();
+
                     }
-                    DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
-                    flag_2 = true;
-                    return false;
+                    else
+                    {
+                        //閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                        if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
+                        {
+                            time = DateTime.Now;
+                            MessageBox.Show(new Form { TopMost = true }, "鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
+                        }
+                        DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
+                        flag_2 = true;
+                        return false;
+                    }
+                    AllProcessExchange = str1;
                 }
             }
             //鍒ゆ柇闀垮害鏄惁涓�50浣�  15杞﹂棿
@@ -415,11 +434,13 @@
                 //鍒ゆ柇鏄惁鑳芥壘鍒板搴旂殑娴佽浆鍗�
                 if (ds.Tables[0].Rows.Count > 0)
                 {
-                    HProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+                    AllProcessExchangeHProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
                 }
                 else {
-                    if (!flag_1)
+                    //flag_1=鍙湁绗竴娆¤繘鏉ユ墠浼氬脊鍑� 閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                    if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
                     {
+                        time = DateTime.Now;
                         MessageBox.Show("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
                     }
                     DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
@@ -429,24 +450,46 @@
                 }
             }
 
+            //璧嬪��
+            HProcExchBillNo = AllProcessExchangeHProcExchBillNo;
+            HProcExchInterID = AllProcessExchangeHProcExchInterID;
 
-            //杩囩珯鎺у埗
-            DataSet ds1 = oCN.RunProcReturn(@"select   b.HProcNo,b.HProcID,p.HName from Sc_ProcessExchangeBillMain a WITH(NOLOCK)
-inner join Sc_ProcessExchangeBillSub b WITH(NOLOCK) on a.HInterID=b.HInterID
-left join Gy_Process p WITH(NOLOCK) on  b.HProcID=p.HItemID 
-where a.HBillNo='" + HProcExchBillNo + "'  and p.HNumber='" + HProcNumber + "'", "Sc_ProcessExchangeBillMain");
-            string HProcID = "0";
-            if (ds1.Tables[0].Rows.Count > 0)
-            {
-                HProcID = ds1.Tables[0].Rows[0]["HProcID"].ToString();
-                string HProName = ds1.Tables[0].Rows[0]["HName"].ToString();
+            DataSet ds1;
 
+            //绗竴娆℃祦杞崱+宸ュ簭鍜屽悗闈㈢殑鍋氬姣� 濡傛灉鏄悓涓�涓祦杞崱灏变笉杩涜鍒ゆ柇
+            if ((HProcExchBillNo + HProcNumber) != AllSNBarcodeProcCtrl) {
+                //鏌ヨ宸ュ簭
+                ds1 = oCN.RunProcReturn(@"SELECT  HItemID,HName FROM Gy_Process WHERE HNumber='" + HProcNumber + "'", "Gy_Process");
+                if (ds1.Tables[0].Rows.Count > 0)
+                {
+                    AllHProcID = ds1.Tables[0].Rows[0]["HItemID"].ToString();
+                    AllHProName = ds1.Tables[0].Rows[0]["HName"].ToString();
+                }
+
+                //鏌ヨ娴佽浆鍗℃暟閲�
+                ds1 = oCN.RunProcReturn(@"SELECT  HQty FROM Sc_ProcessExchangeBillSub  where HInterID=" + HProcExchInterID + " and HProcID=" + AllHProcID, "Sc_ProcessExchangeBillSub");
+                if (ds1.Tables[0].Rows.Count > 0)
+                {
+                    AllHQty = double.Parse(ds1.Tables[0].Rows[0]["HQty"].ToString());
+                }
+
+                AllSNBarcodeProcCtrl = HProcExchBillNo + HProcNumber;
+            }
+               
+            string HProcID = AllHProcID;
+            string HProName = AllHProName;
+            ////绗竴娆℃祦杞崱+宸ュ簭鍜屽悗闈㈢殑鍋氬姣� 濡傛灉鏄悓涓�涓祦杞崱灏变笉杩涜鍒ゆ柇
+            //if ((HProcExchBillNo + HProcNumber) == AllSNBarcodeProcCtrl)
+            //{
+                //鍒ゆ柇 褰撳墠宸ュ簭 鏉$爜 鐨勪笂涓�閬撳伐搴忔湁娌℃湁杩囩珯
                 ds1 = oCN.RunProcReturn("exec h_p_Sc_SNBarcodeProcCtrl_S '" + HBarCode + "'," + HProcID, "h_v_Gy_QualifiedRecordsList");
 
                 if (ds1.Tables[0].Rows.Count == 0)
                 {
-                    if (!flag_1)
+                    //flag_1=鍙湁绗竴娆¤繘鏉ユ墠浼氬脊鍑� 閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                    if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
                     {
+                        time = DateTime.Now;
                         MessageBox.Show("鏉$爜:" + HBarCode + "宸ュ簭:" + HProName + ",宸ュ簭鎺у埗鏌ユ棤鏁版嵁!");
                     }
                     DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + "宸ュ簭:" + HProName + ",宸ュ簭鎺у埗鏌ユ棤鏁版嵁!", DateTime.Now.ToString("yyyy-MM-dd"));
@@ -456,8 +499,10 @@
                 }
                 else if (ds1.Tables[0].Rows[0]["HBack"].ToString() == "2")
                 {
-                    if (!flag_1)
+                    //flag_1=鍙湁绗竴娆¤繘鏉ユ墠浼氬脊鍑� 閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                    if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
                     {
+                        time = DateTime.Now;
                         MessageBox.Show("鏉$爜:" + HBarCode + "宸ュ簭:" + HProcID + "," + ds1.Tables[0].Rows[0]["HBackRemark"].ToString() + "!");
                     }
                     DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + "宸ュ簭:" + HProcID + "," + ds1.Tables[0].Rows[0]["HBackRemark"].ToString() + "!", DateTime.Now.ToString("yyyy-MM-dd"));
@@ -465,18 +510,29 @@
                     flag_2 = true;
                     return false;
                 }
-            }
+            //}
 
             //鏌ヨ鍑虹珯鏁伴噺鏄惁瓒呰繃娴佽浆鍗℃暟閲�
-            ds1 = oCN.RunProcReturn($@"select (b.HQty -sum(isnull(ou.HQty,0))-sum(isnull(ou.HBadCount,0))) HQty from Sc_ProcessExchangeBillSub b WITH(NOLOCK)
-left join Sc_StationOutBillMain ou WITH(NOLOCK) on b.HInterID=ou.HProcExchInterID and b.HEntryID=ou.HProcExchEntryID
-where b.HInterID={HProcExchInterID} and b.HProcID={HProcID}
-group by b.HInterID,b.HEntryID,b.HQty", "Sc_ProcessExchangeBill_Out");
+            ds1 = oCN.RunProcReturn($@"select ({AllHQty}-sum(isnull(ou.HQty,0))-sum(isnull(ou.HBadCount,0))) HQty from Sc_StationOutBillMain ou WITH(NOLOCK)
+where ou.HProcExchInterID={HProcExchInterID} and ou.HProcID={AllHProcID}
+group by  ou.HProcExchInterID,ou.HProcExchEntryID,ou.HQty", "Sc_StationOutBillMain");
 
-            if (double.Parse(ds1.Tables[0].Rows[0][0].ToString()) < 0)
+            //鑾峰彇娴佽浆鍗℃暟閲�
+            double hqtyOut = AllHQty;
+
+            //娴佽浆鍗℃暟閲�-鍑虹珯鍗曟暟閲忓ぇ浜�0 
+            if (ds1.Tables[0].Rows.Count > 0)
             {
-                if (!flag_1)
+                hqtyOut = double.Parse(ds1.Tables[0].Rows[0][0].ToString());
+            }
+
+            //濡傛灉鏁伴噺<0 鍒欎唬琛ㄥ嚭绔欏崟鏁伴噺瓒呭嚭娴佽浆鍗℃暟閲� 
+            if (hqtyOut <= 0)
+            {
+                //flag_1=鍙湁绗竴娆¤繘鏉ユ墠浼氬脊鍑� 閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
                 {
+                    time = DateTime.Now;
                     MessageBox.Show("娴佽浆鍗�:" + HProcExchBillNo + ",鍑虹珯鏁伴噺瓒呰繃娴佽浆鍗℃暟閲�!");
                 }
                 DBHelper.CustomWriteLog("娴佽浆鍗�:" + HProcExchBillNo + ",鍑虹珯鏁伴噺瓒呰繃娴佽浆鍗℃暟閲�!", DateTime.Now.ToString("yyyy-MM-dd"));
@@ -484,28 +540,35 @@
                 return false;
             }
 
-            //澧炲姞浜х嚎缁勮杩芥函鍗�
-            DataSet dataSet = oCN.RunProcReturn("exec h_p_Gy_BarCodeBillBomList '" + HProcExchBillNo + "'," + HProcID, "h_p_Gy_BarCodeBillBomList");
-            if (dataSet.Tables[0].Rows.Count > 0)
-            {
-                //鍒ら厤浠舵暟閲忔槸鍚︾瓑浜�0
-                for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
+            //鎷嶇収宸ュ簭闄ゅ
+            if (HProcNumber != "013") {
+                //澧炲姞浜х嚎缁勮杩芥函鍗�
+                //鏌ヨ褰撳墠娴佽浆鍗″搴旂殑宸ュ簭鏈夋病鏈夐厤浠朵俊鎭�,濡傛灉鏈� 鍒欏垽鏂厤浠跺崟鐨勬暟閲忔槸鍚︿负0
+                DataSet dataSet = oCN.RunProcReturn("exec h_p_Gy_BarCodeBillBomList '" + HProcExchBillNo + "'," + HProcID, "h_p_Gy_BarCodeBillBomList");
+                if (dataSet.Tables[0].Rows.Count > 0)
                 {
-                    double SYHQty = double.Parse(dataSet.Tables[0].Rows[i]["閰嶄欢鏁伴噺"].ToString());
-                    string HMaterNamePJ = dataSet.Tables[0].Rows[i]["閰嶄欢浠g爜"].ToString();
-                    string HMaterBarCode = dataSet.Tables[0].Rows[i]["HBarCode"].ToString();
-                    if (SYHQty == 0)
+                    //鍒ら厤浠舵暟閲忔槸鍚︾瓑浜�0
+                    for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++)
                     {
-                        if (!flag_1)
+                        double SYHQty = double.Parse(dataSet.Tables[0].Rows[i]["閰嶄欢鏁伴噺"].ToString());
+                        string HMaterNamePJ = dataSet.Tables[0].Rows[i]["閰嶄欢浠g爜"].ToString();
+                        string HMaterBarCode = dataSet.Tables[0].Rows[i]["HBarCode"].ToString();
+                        if (SYHQty == 0)
                         {
-                            MessageBox.Show("娴佽浆鍗�:" + HProcExchBillNo + ",閰嶄欢鏉$爜:" + HMaterBarCode + ",閰嶄欢浠g爜:" + HMaterNamePJ + ",鏁伴噺涓�0!");
+                            //flag_1=鍙湁绗竴娆¤繘鏉ユ墠浼氬脊鍑� 閿欒淇℃伅寮瑰嚭妗� 瀹氭椂瓒呰繃2鍒嗛挓寮逛竴娆�
+                            if (!flag_1 && (DateTime.Now - time).Minutes > hqty)
+                            {
+                                time = DateTime.Now;
+                                MessageBox.Show("娴佽浆鍗�:" + HProcExchBillNo + ",閰嶄欢鏉$爜:" + HMaterBarCode + ",閰嶄欢浠g爜:" + HMaterNamePJ + ",鏁伴噺涓�0!");
+                            }
+                            DBHelper.CustomWriteLog("娴佽浆鍗�:" + HProcExchBillNo + ",閰嶄欢鏉$爜:" + HMaterBarCode + ",閰嶄欢浠g爜:" + HMaterNamePJ + ",鏁伴噺涓�0!", DateTime.Now.ToString("yyyy-MM-dd"));
+                            flag_2 = true;
+                            return false;
                         }
-                        DBHelper.CustomWriteLog("娴佽浆鍗�:" + HProcExchBillNo + ",閰嶄欢鏉$爜:" + HMaterBarCode + ",閰嶄欢浠g爜:" + HMaterNamePJ + ",鏁伴噺涓�0!", DateTime.Now.ToString("yyyy-MM-dd"));
-                        flag_2 = true;
-                        return false;
                     }
                 }
             }
+                
             flag_2 = false;
             return true;
         }

--
Gitblit v1.9.1