callm 2 днів тому
батько
коміт
e38e4b56dd

+ 24 - 2
UAS_MES_YDCY/FunctionCode/OQC/OQC_PlanMaintain_Cust.cs

@@ -188,13 +188,24 @@ namespace UAS_MES_NEW.OQC
                 if (ms_ifqccheck == "-2")
                 {
                     sql.Clear();
-                    sql.Append("select 1  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
+                    sql.Append("select ms_craftcode  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
                         " left join craftdetail on cd_crid=cr_id where ms_id='" + oMSID + "' and cd_stepcode='" + pcd_okretuenstep + "'");
                     dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                     if (dt.Rows.Count > 0)
                     {
+                        string ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
                         if (pcd_okretuenstep != "" && ms_ifqccheck == "-2")
                         {
+                            string stepno = dh.getFieldDataByCondition("craft left join craftdetail on cd_crid=cr_id", "cd_stepno", "cr_prodcode='" + ms_prodcode.Text + "' and cr_code='" + ms_craftcode + "' and cd_stepcode='" + pcd_okretuenstep + "'").ToString();
+                            if (stepno == "")
+                            {
+                                stepno = "100";
+                            }
+                            StringBuilder sql = new StringBuilder();
+                            sql.Append("update craftmaterial set cm_status=-1,CM_DROPMAN='" + User.UserName + "' where  cm_stepcode in (select cd_stepcode from craft left join ");
+                            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + stepno + ") ");
+                            sql.Append("and cm_sncode='" + ms_sncode.Text + "' and cm_makecode='" + oMakeCode + "'");
+                            dh.ExecuteSql(sql.ToString(), "update");
                             dh.ExecuteSql("update makeserial set MS_IFQCCHECK=0,ms_nextstepcode='" + pcd_okretuenstep + "' where ms_id='" + oMSID + "'", "select");
                         }
                         else
@@ -242,13 +253,24 @@ namespace UAS_MES_NEW.OQC
                 if (ms_ifqccheck == "-2")
                 {
                     sql.Clear();
-                    sql.Append("select 1  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
+                    sql.Append("select ms_craftcode  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
                         " left join craftdetail on cd_crid=cr_id where ms_id='" + oMSID + "' and cd_stepcode='" + pcd_ngretuenstep + "'");
                     dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                     if (dt.Rows.Count > 0)
                     {
+                        string ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
                         if (pcd_ngretuenstep != "")
                         {
+                            string stepno = dh.getFieldDataByCondition("craft left join craftdetail on cd_crid=cr_id", "cd_stepno", "cr_prodcode='" + ms_prodcode.Text + "' and cr_code='" + ms_craftcode + "' and cd_stepcode='" + pcd_okretuenstep + "'").ToString();
+                            if (stepno == "")
+                            {
+                                stepno = "100";
+                            }
+                            StringBuilder sql = new StringBuilder();
+                            sql.Append("update craftmaterial set cm_status=-1,CM_DROPMAN='" + User.UserName + "' where  cm_stepcode in (select cd_stepcode from craft left join ");
+                            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + stepno + ") ");
+                            sql.Append("and cm_sncode='" + ms_sncode.Text + "' and cm_makecode='" + oMakeCode + "'");
+                            dh.ExecuteSql(sql.ToString(), "update");
                             dh.ExecuteSql("update makeserial set MS_IFQCCHECK=0,ms_nextstepcode='" + pcd_ngretuenstep + "' where ms_id='" + oMSID + "'", "select");
                         }
                         else

+ 37 - 5
UAS_MES_YDCY/FunctionCode/OQC/OQC_PlanMaintain_NEW.cs

@@ -1,4 +1,5 @@
-using System;
+using DevExpress.Charts.Native;
+using System;
 using System.Collections.Generic;
 using System.Data;
 using System.Drawing;
@@ -167,14 +168,30 @@ namespace UAS_MES_NEW.OQC
 
                 if (ReturnStep.Checked)
                 {
+                    if (pcd_okretuenstep == "")
+                    {
+                        OperateResult.AppendText(">>回流工序为空,不允许回流\n", Color.Red, ms_sncode);
+                        return;
+                    }
                     sql.Clear();
-                    sql.Append("select 1  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
+                    sql.Append("select ms_craftcode  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
                         " left join craftdetail on cd_crid=cr_id where ms_id='" + oMSID + "' and cd_stepcode='" + pcd_okretuenstep + "'");
                     dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                     if (dt.Rows.Count > 0)
                     {
+                        string ms_craftcode = dt.Rows[0]["ms_craftcode"].ToString();
                         if (pcd_okretuenstep != "")
                         {
+                            string stepno = dh.getFieldDataByCondition("craft left join craftdetail on cd_crid=cr_id", "cd_stepno", "cr_prodcode='" + ms_prodcode.Text + "' and cr_code='" + ms_craftcode + "' and cd_stepcode='" + pcd_okretuenstep + "'").ToString();
+                            if (stepno == "")
+                            {
+                                stepno = "100";
+                            }
+                            StringBuilder sql = new StringBuilder();
+                            sql.Append("update craftmaterial set cm_status=-1,CM_DROPMAN='" + User.UserName + "' where  cm_stepcode in (select cd_stepcode from craft left join ");
+                            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + stepno + ") ");
+                            sql.Append("and cm_sncode='" + ms_sncode.Text + "' and cm_makecode='" + oMakeCode + "'");
+                            dh.ExecuteSql(sql.ToString(), "update");
                             dh.ExecuteSql("update makeserial set MS_IFQCCHECK=0,ms_nextstepcode='" + pcd_okretuenstep + "' where ms_id='" + oMSID + "'", "select");
                         }
                         else
@@ -191,7 +208,7 @@ namespace UAS_MES_NEW.OQC
                         dh.ExecuteSql("update makecraftdetail set mcd_inqty=mcd_inqty-1,mcd_outqty=mcd_outqty-1,mcd_okqty=mcd_okqty-1 where mcd_macode='" + oMakeCode + "' and instr((select ms_paststep from makeserial where ms_id='" + oMSID + "'),mcd_stepcode)>0 ", "update");
                         string ms_id = dh.getFieldDataByCondition("makeserial", "max(ms_id)", "ms_sncode='" + ms_sncode.Text + "'").ToString();
                         //dh.ExecuteSql("update makeserial set ms_nextmacode='',ms_nextstepcode='" + pcd_ngretuenstep + "',ms_status=1 where ms_id='" + ms_id + "'", "update");
-                        dh.ExecuteSql("update makeserial set ms_nextmacode='',ms_nextstepcode='',ms_status=3 where ms_id='" + ms_id + "'", "update");
+                        dh.ExecuteSql("update makeserial set ms_nextmacode='',ms_nextstepcode='"+ pcd_okretuenstep + "',ms_status=1 where ms_id='" + ms_id + "'", "update");
                     }
                 }
                 dh.ExecuteSql("update makeserial set MS_IFQCCHECK=0 where ms_id='" + oMSID + "'", "select");
@@ -222,19 +239,34 @@ namespace UAS_MES_NEW.OQC
 
                 dh.ExecuteSql("insert into makebad(MB_ID, MB_MAKECODE, MB_MSCODE, MB_SNCODE, MB_INMAN, MB_INDATE, MB_STEPCODE, MB_SOURCECODE, MB_BADCODE, MB_BGCODE, " +
                     "MB_BADNAME, MB_BGNAME, MB_YMD, MB_LINECODE, MB_TYPE, MB_RETURNSTEP)values(makebad_seq.nextval,'" + oMakeCode + "','" + ms_sncode.Text + "','" + ms_sncode.Text + "'," +
-                    "'" + User.UserCode + "',sysdate,'" + ms_stepcode + "','" + User.UserSourceCode + "','CustError','CustError','客户抽检不良','客户抽检不良'," +
+                    "'" + User.UserCode + "',sysdate,'" + ms_stepcode + "','" + User.UserSourceCode + "','QCError','QCError','抽检不良','客户抽检不良'," +
                     "to_char(sysdate,'yyyymmdd'),'" + User.UserLineCode + "','Client','" + pcd_ngretuenstep + "')", "insert");
 
                 if (ReturnStep.Checked)
                 {
                     sql.Clear();
-                    sql.Append("select 1  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
+                    sql.Append("select ms_craftcode  from makeserial left join craft on cr_prodcode=ms_prodcode and cr_code=ms_craftcode " +
                         " left join craftdetail on cd_crid=cr_id where ms_id='" + oMSID + "' and cd_stepcode='" + pcd_ngretuenstep + "'");
                     dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                     if (dt.Rows.Count > 0)
                     {
+                        string ms_craftcode=dt.Rows[0]["ms_craftcode"].ToString();
+                        if (pcd_okretuenstep == "")
+                        {
+                            OperateResult.AppendText(">>回流工序为空,不允许回流\n", Color.Red, ms_sncode);
+                            return;
+                        }
                         if (pcd_ngretuenstep != "")
                         {
+                            string stepno = dh.getFieldDataByCondition("craft left join craftdetail on cd_crid=cr_id", "cd_stepno", "cr_prodcode='" + ms_prodcode.Text + "' and cr_code='" + ms_craftcode + "' and cd_stepcode='" + pcd_okretuenstep + "'").ToString();
+                            if (stepno == "") {
+                                stepno = "100";
+                            }
+                            StringBuilder sql = new StringBuilder();
+                            sql.Append("update craftmaterial set cm_status=-1,CM_DROPMAN='" + User.UserName + "' where  cm_stepcode in (select cd_stepcode from craft left join ");
+                            sql.Append("craftdetail on cd_crid = cr_id where cr_prodcode = '" + ms_prodcode + "'  and cd_detno >= " + stepno + ") ");
+                            sql.Append("and cm_sncode='" + ms_sncode.Text + "' and cm_makecode='" + oMakeCode + "'");
+                            dh.ExecuteSql(sql.ToString(), "update");
                             dh.ExecuteSql("update makeserial set MS_IFQCCHECK=0,ms_nextstepcode='" + pcd_ngretuenstep + "' where ms_id='" + oMSID + "'", "select");
                         }
                         else