章政 8 anni fa
parent
commit
b82571277a

+ 15 - 9
UAS-MES/FunctionCode/Make/Make_Repair.cs

@@ -351,16 +351,22 @@ namespace UAS_MES.Make
                     string confirm = MessageBox.Show(this.ParentForm, "此操作不可撤销,是否确认报废", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk).ToString();
                     if (confirm == "Yes")
                     {
-                        string ms_ifrework = dh.getFieldDataByCondition("makeserial", "nvl(ms_ifrework,0)", "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'").ToString();
-                        if (ms_ifrework == "0")
-                        {
-                            dh.UpdateByCondition("makeserial", "ms_paststep = ms_paststep ||'," + User.CurrentStepCode + "',ms_status=4,ms_nextstepcode='',ms_stepcode='" + User.CurrentStepCode + "'", "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'");
-                        }
-                        else
+                        DataTable dt = dh.getFieldsDataByCondition("makeserial", new string[] { "nvl(ms_ifrework,0)ms_ifrework", "ms_reworkcode" }, "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'");
+                        if (dt.Rows.Count > 0)
                         {
-                            dh.UpdateByCondition("makeserial", "ms_paststep = ms_paststep ||'," + User.CurrentStepCode + "',ms_reworkstatus= 4,ms_nextstepcode='',ms_stepcode='" + User.CurrentStepCode + "'", "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'");
-                            dh.UpdateByCondition("oqcbatch", "ob_nowcheckqty=ob_nowcheckqty-1", "ob_checkno='" + ms_checkno.Text + "'");
-                            dh.ExecuteSql("delete from oqcbatchedetail where obd_sncode='" + ms_sncode.Text + "'", "delete");
+                            string ms_ifrework = dt.Rows[0]["ms_ifrework"].ToString();
+                            string reworkcode = dt.Rows[0]["ms_reworkcode"].ToString();
+                            if (ms_ifrework == "0")
+                            {
+                                dh.UpdateByCondition("makeserial", "ms_paststep = ms_paststep ||'," + User.CurrentStepCode + "',ms_status=4,ms_nextstepcode='',ms_stepcode='" + User.CurrentStepCode + "'", "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'");
+                            }
+                            else
+                            {
+                                dh.UpdateByCondition("makeserial", "ms_paststep = ms_paststep ||'," + User.CurrentStepCode + "',ms_reworkstatus= 4,ms_nextstepcode='',ms_stepcode='" + User.CurrentStepCode + "'", "ms_sncode='" + ms_sncode.Text + "' and ms_makecode='" + macode + "'");
+                                dh.UpdateByCondition("oqcbatch", "ob_nowcheckqty=ob_nowcheckqty-1", "ob_checkno='" + ms_checkno.Text + "'");
+                                dh.ExecuteSql("delete from oqcbatchedetail where obd_sncode='" + ms_sncode.Text + "'", "delete");
+                                dh.UpdateByCondition("ReworkDetail", "rd_rwstatus='报废'", "rd_reid=(select re_id from rework where re_code='"+reworkcode+"') and rd_sncode='"+ reworkcode + "'");
+                            }
                         }
                         dh.UpdateByCondition("make", "MA_NGMADEQTY=nvl(MA_NGMADEQTY,0)+1", "ma_code='" + macode + "'");
                         LogicHandler.InsertMakeProcess(ms_sncode.Text, ms_makecode.Text, User.UserSourceCode, "报废", "序列号报废", User.UserCode);

+ 1 - 1
UAS-MES/FunctionCode/Make/Make_TestCollection.cs

@@ -581,7 +581,6 @@ namespace UAS_MES.Make
             sql.Clear();
             sql.Append("update oqcbatch set ob_status='UNCHECK' where ob_checkno ='" + ob_checkno.Text + "'");
             dh.ExecuteSql(sql.GetString(), "select");
-            ob_checkno.Text = "";
             ob_nowcheckqty.Text = "";
             ob_batchqty.Text = "";
             ob_nowcheckqty.ForeColor = Color.Black;
@@ -591,6 +590,7 @@ namespace UAS_MES.Make
             LogicHandler.InsertMakeProcess(LastSncode, ma_code.Text, User.UserSourceCode, "手动送检", "手动送检成功", User.UserCode);
             //记录操作日志
             LogicHandler.DoCommandLog(User.UserCode, ma_code.Text, User.UserLineCode, User.UserSourceCode, "手动送检", "手动送检成功", "", ob_checkno.Text);
+            ob_checkno.Text = "";
         }
 
         private void ob_checkno_TextChanged(object sender, EventArgs e)