Browse Source

工单上传计划

callm 1 week ago
parent
commit
2d9c54eccb
4 changed files with 42 additions and 25 deletions
  1. 11 8
      FileWatcher/AutoMakeQTY.cs
  2. 12 6
      FileWatcher/DataHelper.cs
  3. 3 2
      FileWatcher/Program.cs
  4. 16 9
      FileWatcher/UploadMakePlan.cs

+ 11 - 8
FileWatcher/AutoMakeQTY.cs

@@ -220,7 +220,7 @@ namespace FileWatcher
             }
             if (Type.Text == "印刷机")
             {
-              
+                Timer.Start();
             }
             else
             {
@@ -294,12 +294,6 @@ namespace FileWatcher
 
         private void Timer_Tick(object sender, EventArgs e)
         {
-            if (serialPort1.IsOpen)
-            {
-                byte[] data = HexStringToBytes("01 03 00 01 00 06 94 08");
-                serialPort1.Write(data, 0, data.Length);
-            }
-
             if (Type.Text == "印刷机")
             {
                 DateTime targetDate = new DateTime(2025, 3, 17);
@@ -320,14 +314,23 @@ namespace FileWatcher
                             }
                             return false;
                         });
+                        int pcbcount = int.Parse(dh.getFieldDataByCondition("make left join product on ma_prodcode=pr_code", "nvl(pr_pcbacount,1)", "ma_code='" + ma_code.Text + "'").ToString());
                         foreach (var line in filteredLines)
                         {
                             dh.ExecuteSql("insert into makehourcount(mhc_id,mhc_macode,mhc_indate,mhc_type,mhc_qty,mhc_linecode)" +
-                         "values(makehourcount_seq.nextval,'" + ma_code.Text + "',sysdate,'" + Type.Text + "','1','" + li_code.Text + "')", "insert");
+                            "values(makehourcount_seq.nextval,'" + ma_code.Text + "',sysdate,'" + Type.Text + "','" + pcbcount + "','" + li_code.Text + "')", "insert");
                         }
                     }
                 }
             }
+            else
+            {
+                if (serialPort1.IsOpen)
+                {
+                    byte[] data = HexStringToBytes("01 03 00 01 00 06 94 08");
+                    serialPort1.Write(data, 0, data.Length);
+                }
+            }
         }
 
         private void AutoStart_CheckedChanged(object sender, EventArgs e)

+ 12 - 6
FileWatcher/DataHelper.cs

@@ -8,14 +8,20 @@ namespace FileWatcher
 {
     public class DataHelper
     {
-        //系统默认的的连接字符串
-        private string ConnectionStrings = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=YD_CYZZ;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11701)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
-        //用户选择的数据库的连接字符串
-        public static string DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=YD_CYZZ;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11701)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+        ////次元
+        //private string ConnectionStrings = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=YD_CYZZ;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11701)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+        ////用户选择的数据库的连接字符串
+        //public static string DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=YD_CYZZ;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11701)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
 
-        //private string ConnectionStrings = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.7)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+        //华耘
+        //private string ConnectionStrings = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11697)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
         ////用户选择的数据库的连接字符串
-        //public static string DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.7)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+        //public static string DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.81.208)(PORT=11697)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+
+        //柯赛
+        private string ConnectionStrings = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.7)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
+        //用户选择的数据库的连接字符串
+        public static string DBConnectionString = "Connection Timeout=0;Pooling=false;Password=select!#%*(;User ID=N_MES;Pooling=false;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.3.7)(PORT=1521)))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=orcl)));";
 
         public static OracleConnection connection = null;
         OracleCommand command = null;

+ 3 - 2
FileWatcher/Program.cs

@@ -46,8 +46,9 @@ namespace FileWatcher
                 Application.SetCompatibleTextRenderingDefault(false);
                 if (principal.IsInRole(WindowsBuiltInRole.Administrator))
                 {
-                    //Application.Run(new UploadMakePlan());
-                    Application.Run(new SOP("", ""));
+                    Application.Run(new UploadMakePlan());
+                    //Application.Run(new SOP("", ""));
+                    //Application.Run(new AutoMakeQTY());
                 }
                 else
                 {

+ 16 - 9
FileWatcher/UploadMakePlan.cs

@@ -105,7 +105,7 @@ namespace FileWatcher
                                 {
                                     planqtyIndex = colIndex;
                                 }
-                                else if (headerValue.Contains("备注") &&!headerValue .Contains( "生产异常备注"))
+                                else if (headerValue.Contains("备注") && !headerValue.Contains("生产异常备注"))
                                 {
                                     remarkIndex = colIndex;
                                 }
@@ -137,15 +137,22 @@ namespace FileWatcher
                                     string remark = row.GetCell(remarkIndex, MissingCellPolicy.CREATE_NULL_AS_BLANK).ToString();
                                     if (!string.IsNullOrEmpty(wccode) && !string.IsNullOrEmpty(orderdetno) && !string.IsNullOrEmpty(ordercode))
                                     {
-                                        string insertQuery = "INSERT INTO MakePlanDetail (mpd_mpid,mpd_detno,mpd_id,mpd_wccode, mpd_orderdetno, mpd_ordercode,mpd_outqty,mpd_remark) VALUES (" + id + "," + detno + ",MakePlanDetail_seq.nextval,:1, :2, :3,:4,:5)";
-                                        using (OracleCommand cmd = new OracleCommand(insertQuery, conn))
+                                        if (!dh.CheckExist("MakePlanDetail left join makeplan on mpd_mpid=mp_id ", "trunc(mp_begintime)=trunc(sysdate) and mpd_orderdetno='" + orderdetno + "' and mpd_ordercode='" + ordercode + "' and mpd_wccode='" + wccode + "'"))
                                         {
-                                            cmd.Parameters.Add(new OracleParameter(":1", wccode));
-                                            cmd.Parameters.Add(new OracleParameter(":2", orderdetno));
-                                            cmd.Parameters.Add(new OracleParameter(":3", ordercode));
-                                            cmd.Parameters.Add(new OracleParameter(":4", planqty));
-                                            cmd.Parameters.Add(new OracleParameter(":5", remark));
-                                            cmd.ExecuteNonQuery();
+                                            string insertQuery = "INSERT INTO MakePlanDetail (mpd_mpid,mpd_detno,mpd_id,mpd_wccode, mpd_orderdetno, mpd_ordercode,mpd_outqty,mpd_remark) VALUES (" + id + "," + detno + ",MakePlanDetail_seq.nextval,:1, :2, :3,:4,:5)";
+                                            using (OracleCommand cmd = new OracleCommand(insertQuery, conn))
+                                            {
+                                                cmd.Parameters.Add(new OracleParameter(":1", wccode));
+                                                cmd.Parameters.Add(new OracleParameter(":2", orderdetno));
+                                                cmd.Parameters.Add(new OracleParameter(":3", ordercode));
+                                                cmd.Parameters.Add(new OracleParameter(":4", planqty));
+                                                cmd.Parameters.Add(new OracleParameter(":5", remark));
+                                                cmd.ExecuteNonQuery();
+                                            }
+                                        }
+                                        else
+                                        {
+                                            OperateResult.AppendText(" 序号'" + orderdetno + "' 销售订单'" + ordercode + "' 工作中心'" + wccode + "' 重复");
                                         }
                                     }
                                 }