Browse Source

添加不良展示

章政 8 years ago
parent
commit
d5226bc6d2
1 changed files with 60 additions and 38 deletions
  1. 60 38
      UAS-MES/FunctionCode/Query/Query_ExeProgress.cs

+ 60 - 38
UAS-MES/FunctionCode/Query/Query_ExeProgress.cs

@@ -53,49 +53,71 @@ namespace UAS_MES.Query
         {
             if (e.KeyCode == Keys.Enter)
             {
-                if (Step != null && Step.Count > 0)
+                dt = (DataTable)dh.ExecuteSql("select ms_status,ms_paststep,ms_stepcode from makeserial where ms_sncode='" + sn_code.Text + "'", "select");
+                if (dt.Rows.Count > 0)
                 {
-                    Step.Clear();
-                    SerialPanel.Controls.Clear();
-                }
-                //查询执行过的步骤
-                sql.Clear();
-                sql.Append("select CD_DETNO,CD_STEPCODE from craft left join craftdetail on cd_crid = cr_id  left join makeserial ");
-                sql.Append("on ms_craftcode=cr_code and ms_prodcode=cr_prodcode where ms_sncode='" + sn_code.Text + "' order by cd_detno");
-                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                Step = new Dictionary<int, string>();
-                PastStep = dh.getFieldDataByCondition("makeserial", "ms_paststep", "ms_sncode='" + sn_code.Text + "'").ToString();
-                for (int i = 0; i < dt.Rows.Count + 2; i++)
-                {
-                    if (i == 0)
-                        Step.Add(i, "开始");
-                    else if (i == dt.Rows.Count + 1)
-                        Step.Add(i, "结束");
-                    else
-                        Step.Add(i, dt.Rows[i - 1]["CD_STEPCODE"].ToString());
-                }
-                //添加开始节点绿色
-                PaintColor.Add(Brushes.Green);
-                //添加中间节点
-                for (int i = 0; i < dt.Rows.Count; i++)
-                {
-                    if (PastStep.Contains(dt.Rows[i]["CD_STEPCODE"].ToString()))
+                    if (Step != null && Step.Count > 0)
+                    {
+                        Step.Clear();
+                        SerialPanel.Controls.Clear();
+                        PaintColor.Clear();
+                    }
+                    //执行过的步骤
+                    PastStep = dt.Rows[0]["ms_paststep"].ToString();
+                    //如果为不良的时候
+                    string BadStep = "";
+                    if (dt.Rows[0]["ms_status"].ToString() == "3")
+                    {
+                        BadStep = dt.Rows[0]["ms_stepcode"].ToString();
+                    }
+                    //查询执行过的步骤
+                    sql.Clear();
+                    sql.Append("select CD_DETNO,CD_STEPCODE from craft left join craftdetail on cd_crid = cr_id  left join makeserial ");
+                    sql.Append("on ms_craftcode=cr_code and ms_prodcode=cr_prodcode where ms_sncode='" + sn_code.Text + "' order by cd_detno");
+                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    Step = new Dictionary<int, string>();
+                    for (int i = 0; i < dt.Rows.Count + 2; i++)
+                    {
+                        if (i == 0)
+                            Step.Add(i, "开始");
+                        else if (i == dt.Rows.Count + 1)
+                            Step.Add(i, "结束");
+                        else
+                            Step.Add(i, dt.Rows[i - 1]["CD_STEPCODE"].ToString());
+                    }
+                    //添加开始节点绿色
+                    PaintColor.Add(Brushes.Green);
+                    //添加中间节点
+                    for (int i = 0; i < dt.Rows.Count; i++)
+                    {
+                        if (PastStep.Contains(dt.Rows[i]["CD_STEPCODE"].ToString()))
+                        {
+                            if (BadStep != dt.Rows[i]["CD_STEPCODE"].ToString())
+                            {
+                                PaintColor.Add(Brushes.Green);
+                            }
+                            else
+                            {
+                                PaintColor.Add(Brushes.Red);
+                            }
+                        }
+                        else
+                            PaintColor.Add(Brushes.White);
+                    }
+                    //完工添加绿色,未完工添加红色
+                    if (dh.CheckExist("Makeserial", "ms_sncode='" + sn_code.Text + "' and ms_status=2"))
                         PaintColor.Add(Brushes.Green);
                     else
                         PaintColor.Add(Brushes.White);
+                    Refresh();
+                    SerialPanel.Refresh();
+                    sql.Clear();
+                    sql.Append("select mp_makecode,ma_prodcode,ma_linecode,ma_craftcode,mp_sourcecode,mp_sncode,mp_indate ");
+                    sql.Append("from makeprocess left join make on mp_makecode=ma_code where mp_sncode='" + sn_code.Text + "'");
+                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    BaseUtil.FillDgvWithDataTable(CraftInfDgv, dt);
                 }
-                //完工添加绿色,未完工添加红色
-                if (dh.CheckExist("Makeserial", "ms_sncode='" + sn_code.Text + "' and ms_status=2"))
-                    PaintColor.Add(Brushes.Green);
-                else
-                    PaintColor.Add(Brushes.White);
-                Refresh();
-                SerialPanel.Refresh();
-                sql.Clear();
-                sql.Append("select mp_makecode,ma_prodcode,ma_linecode,ma_craftcode,mp_sourcecode,mp_sncode,mp_indate ");
-                sql.Append("from makeprocess left join make on mp_makecode=ma_code where mp_sncode='" + sn_code.Text + "'");
-                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                BaseUtil.FillDgvWithDataTable(CraftInfDgv, dt);
+                else MessageBox.Show("序列号" + sn_code.Text + "不存在");
             }
         }