From 1d9f82659dbfdfd6ac0ddbb33f1fd5af1164d939 Mon Sep 17 00:00:00 2001
From: yangle <admin@YINMOU>
Date: 星期五, 29 十一月 2024 16:52:14 +0800
Subject: [PATCH] 浸渍 铁芯检测 无尘 单品过站 不能开工不能过站控制

---
 WFormSynchronizeData_SMR/WFormReadData_SMR/ReadyDataForm.cs |  190 +++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 183 insertions(+), 7 deletions(-)

diff --git a/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadyDataForm.cs b/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadyDataForm.cs
index e432e06..cf790b0 100644
--- a/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadyDataForm.cs
+++ b/WFormSynchronizeData_SMR/WFormReadData_SMR/ReadyDataForm.cs
@@ -122,12 +122,12 @@
             string dataTime = DateTime.Now.ToString("yyyyMMdd");
             ////鍒ゆ柇鏄惁鏈夎繖涓枃浠�
             bool flag = File.Exists($@"D:\{year}\{month}\{day}\{dataTime}.txt");
-            //bool flag = File.Exists($@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20231123.txt");
+            //bool flag = File.Exists($@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20241128.txt");
 
             if (flag)
             {
                 StreamReader stream = new StreamReader($@"D:\{year}\{month}\{day}\{dataTime}.txt", Encoding.GetEncoding("gb2312"));
-                //StreamReader stream = new StreamReader($@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20231123.txt", Encoding.GetEncoding("gb2312"));
+                //StreamReader stream = new StreamReader($@"C:\Users\admin\Desktop\鏂板缓鏂囦欢澶� (2)\20241128.txt", Encoding.GetEncoding("gb2312"));
 
                 string FileData = stream.ReadToEnd();
                 stream.Close();
@@ -201,9 +201,10 @@
                 list.Add(dic);
             }
             //鑾峰彇褰撳墠鏃堕棿
-            DateTime ActionTime = DateTime.Parse(DateTime.Now.AddMinutes(-1).ToString("yyyy-MM-dd  HH:mm:ss"));
+            DateTime ActionTime = DateTime.Parse(DateTime.Now.AddMinutes(-2).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;
             //寰幆闆嗗悎
             for (int i = 0; i < list.Count; i++)
             {
@@ -226,10 +227,46 @@
 
                     if (ds.Tables[0].Rows.Count == 0)
                     {
-                        string sql = $@"insert into Sb_EquipMentCollection_SN(HSourceCode,HEmpCode,HType,HBarCode,HCount,HCreateTime,HDate,HResult,HProcNumber,HFlag)
+                        string HProjectNum = HBarCode.Substring(18, 8);
+                        DataSet dataSet = oCN.RunProcReturn("select HBillNo from Sc_ProcessExchangeBillMain where HProjectNum='" + HProjectNum + "-1'", "Sc_ProcessExchangeBillMain");
+                        if (dataSet.Tables[0].Rows.Count > 0)
+                        {
+                            string HBillNo = dataSet.Tables[0].Rows[0]["HBillNo"].ToString();
+                            dataSet = oCN.RunProcReturn("select  * from Sc_ICMOBillStatus_Tmp where HSourceBillNo='" + HBillNo + "' and HICMOStatus='1'", "Sc_ICMOBillStatus_Tmp");
+
+                            if (dataSet.Tables[0].Rows.Count > 0)
+                            {
+                                if (Get_AllowLoadData(HBarCode, HProcNumber, flag_1, out flag_2))
+                                {
+                                    string sql = $@"insert into Sb_EquipMentCollection_SN(HSourceCode,HEmpCode,HType,HBarCode,HCount,HCreateTime,HDate,HResult,HProcNumber,HFlag)
 values('{HSourceCode}','{HEmpCode}','{HType}','{HBarCode}','{HCount}','{HCreateTime}','{HDate}','{HResult}','{HProcNumber}','{HFlag}')";
-                        oCN.RunProc(sql);
-                        ListSelect.Items.Add("鏉$爜:" + HBarCode + ",鏃ユ湡:" + HCreateTime + ",缁撴灉:" + HResult);
+                                    oCN.RunProc(sql);
+                                    ListSelect.Items.Add("鏉$爜:" + HBarCode + ",鏃ユ湡:" + HCreateTime + ",缁撴灉:" + HResult);
+                                }
+                                else
+                                {
+                                    flag_1 = flag_2;
+                                }
+                            }
+                            else
+                            {
+                                if (!flag_1)
+                                {
+                                    MessageBox.Show(new Form { TopMost = true }, "鏉$爜:" + HBarCode + ",瀵瑰簲鐨勬祦杞崱:" + HBillNo + ",娴佽浆鍗℃湭寮�宸�!");
+                                }
+                                DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",瀵瑰簲鐨勬祦杞崱:" + HBillNo + ",娴佽浆鍗℃湭寮�宸�!", DateTime.Now.ToString("yyyy-MM-dd"));
+                                flag_1 = true;
+                            }
+                        }
+                        else
+                        {
+                            if (!flag_1)
+                            {
+                                MessageBox.Show(new Form { TopMost = true }, "鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
+                            }
+                            DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
+                            flag_1 = true;
+                        }
                     }
                 }
                 else
@@ -295,6 +332,145 @@
 
         }
 
+        //鏍规嵁鏉$爜 鍒ゆ柇鏄惁淇濆瓨
+        public bool Get_AllowLoadData(string HBarCode, string HProcNumber, bool flag_1, out bool flag_2)
+        {
+            if (HBarCode.Length != 29 && HBarCode.Length != 50)
+            {
+                flag_2 = false;
+                return false;
+            }
+
+            //鍒ゆ柇闀垮害鏄惁涓�29浣� 鏃犲皹杞﹂棿
+            string HProcExchBillNo = "";
+            string HProcExchInterID = "";
+            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)
+                    {
+                        MessageBox.Show(new Form { TopMost = true }, "鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
+                    }
+                    DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
+                    flag_2 = true;
+                    return false;
+                }
+            }
+            //鍒ゆ柇闀垮害鏄惁涓�50浣�  15杞﹂棿
+            else if (HBarCode.Length == 50)
+            {
+                string str1 = HBarCode.Substring(42, 8);
+                DataSet ds = oCN.RunProcReturn("select  HBillNo from Sc_ProcessExchangeBillMain where HProjectNum like'" + str1 + "-1%'", "Sc_ProcessExchangeBillMain");
+                //鍒ゆ柇鏄惁鑳芥壘鍒板搴旂殑娴佽浆鍗�
+                if (ds.Tables[0].Rows.Count > 0)
+                {
+                    HProcExchBillNo = ds.Tables[0].Rows[0]["HBillNo"].ToString();
+                }
+                else
+                {
+                    if (!flag_1)
+                    {
+                        MessageBox.Show("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!");
+                    }
+                    DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + ",娴佽浆鍗′笉瀛樺湪!", DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    flag_2 = true;
+                    return false;
+                }
+            }
+
+
+            //杩囩珯鎺у埗
+            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();
+
+                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)
+                    {
+                        MessageBox.Show("鏉$爜:" + HBarCode + "宸ュ簭:" + HProName + ",宸ュ簭鎺у埗鏌ユ棤鏁版嵁!");
+                    }
+                    DBHelper.CustomWriteLog("鏉$爜:" + HBarCode + "宸ュ簭:" + HProName + ",宸ュ簭鎺у埗鏌ユ棤鏁版嵁!", DateTime.Now.ToString("yyyy-MM-dd"));
+
+                    flag_2 = true;
+                    return false;
+                }
+                else if (ds1.Tables[0].Rows[0]["HBack"].ToString() == "2")
+                {
+                    if (!flag_1)
+                    {
+                        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"));
+
+                    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");
+
+            if (double.Parse(ds1.Tables[0].Rows[0][0].ToString()) < 0)
+            {
+                if (!flag_1)
+                {
+                    MessageBox.Show("娴佽浆鍗�:" + HProcExchBillNo + ",鍑虹珯鏁伴噺瓒呰繃娴佽浆鍗℃暟閲�!");
+                }
+                DBHelper.CustomWriteLog("娴佽浆鍗�:" + HProcExchBillNo + ",鍑虹珯鏁伴噺瓒呰繃娴佽浆鍗℃暟閲�!", DateTime.Now.ToString("yyyy-MM-dd"));
+                flag_2 = true;
+                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++)
+                {
+                    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)
+                    {
+                        if (!flag_1)
+                        {
+                            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;
+                    }
+                }
+            }
+            flag_2 = false;
+            return true;
+        }
+
         private void ReadyDataForm_FormClosing(object sender, FormClosingEventArgs e)
         {
             if (num == 1) {

--
Gitblit v1.9.1