Просмотр исходного кода

维修上料主替代处理,回流途程名称处理

callm 1 день назад
Родитель
Сommit
cda2340c96

+ 5 - 5
UAS_MES_YDCY/FunctionCode/Make/Make_FeedingCollectionBadOnlyNEW.cs

@@ -443,16 +443,16 @@ namespace UAS_MES_NEW.Make
             sql.Append("sp_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproduct left join product on pr_code=sp_fsoncode where ");
             sql.Append("sp_bomversion='" + ms_bomversion.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' and  instr('" + ms_paststep + "',sp_stepcode)>0 ");
             sql.Append("And sp_mothercode ='" + ma_prodcode.Text + "' and sp_tracekind=1  and  nvl(pr_prodtype,' ')<>'包装物料' and not exists(select 1 from craftmaterial where ");
-            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and cm_fsoncode=");
-            sql.Append("sp_fsoncode and cm_status=0 and cm_stepcode=sp_stepcode ) group by sp_fsoncode,sp_id union ");
+            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and ");
+            sql.Append("(cm_fsoncode = sp_fsoncode   OR EXISTS (SELECT 1 FROM stepproductrep r WHERE r.spr_spid  = sp_id AND r.spr_stepcode = cm_stepcode AND r.spr_fsoncode = cm_fsoncode) ) and cm_status=0 and cm_stepcode=sp_stepcode ) group by sp_fsoncode,sp_id union ");
             sql.Append("select '替代' sptype,spr_id,max(spr_isreplace),max(spr_rate)spr_rate,max(pr_lightbox)pr_lightbox,spr_spid,max(nvl(spr_subnum,0))spr_subnum,max(nvl(spr_subnumlength,0))spr_subnumlength,max(spr_detno)spr_detno,min(spr_ifrepeat)spr_ifrepeat,max(spr_checkbarcode)spr_checkbarcode,min(spr_checksalecode)spr_checksalecode,");
             sql.Append("spr_fsoncode,max(spr_barcoderule)spr_barcoderule,max(nvl(spr_sntype,'原厂'))spr_sntype,wm_concat(spr_soncode) spr_soncode,max(spr_ifuseregex)spr_ifuseregex,max(spr_ifforsn)");
             sql.Append("spr_ifforsn,max(spr_length)spr_length,max(spr_type)spr_type,replace(wm_concat(spr_prefix),',','|')spr_prefix,max(spr_regex)");
-            sql.Append("spr_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproductrep left join product on pr_code=spr_fsoncode where ");
+            sql.Append("spr_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproductrep left join product on pr_code=spr_fsoncode left join stepproduct on spr_spid=sp_id where ");
             sql.Append("spr_bomversion='" + ms_bomversion.Text + "' and spr_craftcode='" + ms_craftcode.Text + "' and instr('" + ms_paststep + "',spr_stepcode)>0 ");
             sql.Append("And spr_mothercode ='" + ma_prodcode.Text + "' and spr_tracekind=1  and  nvl(pr_prodtype,' ')<>'包装物料' and not exists(select 1 from craftmaterial where ");
-            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and cm_fsoncode=");
-            sql.Append("spr_fsoncode and cm_status=0 and cm_stepcode=spr_stepcode) group by spr_fsoncode,spr_id,spr_spid ");
+            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' ");
+            sql.Append("and (cm_fsoncode=spr_fsoncode or cm_fsoncode=sp_fsoncode) and cm_status=0 and cm_stepcode=spr_stepcode) group by spr_fsoncode,spr_id,spr_spid ");
             sql.Append(") group by case when spr_isreplace=-1 then to_char(spr_isreplace) else sp_fsoncode end,sp_id order by sp_id");
             dt1 = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
             code.Clear();

+ 5 - 5
UAS_MES_YDCY/FunctionCode/Make/Make_FeedingCollectionNEW.cs

@@ -444,16 +444,16 @@ namespace UAS_MES_NEW.Make
             sql.Append("sp_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproduct left join product on pr_code=sp_fsoncode where ");
             sql.Append("sp_bomversion='" + ms_bomversion.Text + "' and sp_craftcode='" + ms_craftcode.Text + "' and sp_stepcode='" + User.CurrentStepCode + "' ");
             sql.Append("And sp_mothercode ='" + ma_prodcode.Text + "' and sp_tracekind=1 and not exists(select 1 from craftmaterial where ");
-            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and cm_fsoncode=");
-            sql.Append("sp_fsoncode and cm_status=0 and cm_stepcode=sp_stepcode) group by sp_fsoncode,sp_id union ");
+            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and ");
+            sql.Append("(cm_fsoncode = sp_fsoncode   OR EXISTS (SELECT 1 FROM stepproductrep r WHERE r.spr_spid  = sp_id AND r.spr_stepcode = cm_stepcode AND r.spr_fsoncode = cm_fsoncode) ) and cm_status=0 and cm_stepcode=sp_stepcode) group by sp_fsoncode,sp_id union ");
             sql.Append("select '替代' sptype,spr_id,max(spr_isreplace),max(spr_rate)spr_rate,max(pr_lightbox)pr_lightbox,spr_spid,max(nvl(spr_subnum,0))spr_subnum,max(nvl(spr_subnumlength,0))spr_subnumlength,max(spr_detno)spr_detno,min(spr_ifrepeat)spr_ifrepeat,max(spr_checkbarcode)spr_checkbarcode,min(spr_checksalecode)spr_checksalecode,");
             sql.Append("spr_fsoncode,max(spr_barcoderule)spr_barcoderule,max(nvl(spr_sntype,'原厂'))spr_sntype,wm_concat(spr_soncode) spr_soncode,max(spr_ifuseregex)spr_ifuseregex,max(spr_ifforsn)");
             sql.Append("spr_ifforsn,max(spr_length)spr_length,max(spr_type)spr_type,replace(wm_concat(spr_prefix),',','|')spr_prefix,max(spr_regex)");
-            sql.Append("spr_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproductrep left join product on pr_code=spr_fsoncode where ");
+            sql.Append("spr_regex,max(pr_detail)pr_detail,max(substr(pr_detail,0,20))pr_spec from stepproductrep left join product on pr_code=spr_fsoncode left join stepproduct on spr_spid=sp_id where ");
             sql.Append("spr_bomversion='" + ms_bomversion.Text + "' and spr_craftcode='" + ms_craftcode.Text + "' and spr_stepcode='" + User.CurrentStepCode + "' ");
             sql.Append("And spr_mothercode ='" + ma_prodcode.Text + "' and spr_tracekind=1 and not exists(select 1 from craftmaterial where ");
-            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' and cm_fsoncode=");
-            sql.Append("spr_fsoncode and cm_status=0 and cm_stepcode=spr_stepcode) group by spr_fsoncode,spr_id,spr_spid ");
+            sql.Append("cm_sncode in (select '" + ms_firstsn + "' from dual union select sn from makesnrelation where firstsn='" + ms_firstsn + "') and cm_makecode='" + ma_code.Text + "' ");
+            sql.Append("and (cm_fsoncode=spr_fsoncode or cm_fsoncode=sp_fsoncode) and cm_status=0 and cm_stepcode=spr_stepcode) group by spr_fsoncode,spr_id,spr_spid ");
             sql.Append(") group by case when spr_isreplace=-1 then to_char(spr_isreplace) else sp_fsoncode end,sp_id order by sp_id");
             dt1 = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
             code.Clear();

+ 4 - 3
UAS_MES_YDCY/FunctionCode/Make/Make_Repair.cs

@@ -602,12 +602,13 @@ namespace UAS_MES_NEW.Make
                 //    return;
                 //}
             }
-            dt = (DataTable)dh.ExecuteSql("select cr_id from craft where cr_statuscode='AUDITED' and cr_code='" + cr_code.Text + "'", "select");
+            dt = (DataTable)dh.ExecuteSql("select cr_id,cr_name from craft where cr_statuscode='AUDITED' and cr_code='" + cr_code.Text + "'", "select");
             if (dt.Rows.Count == 0)
                 OperatResult.AppendText(">>回流工序不存在\n", Color.Red);
             else
             {
                 string cr_id = dt.Rows[0]["cr_id"].ToString();
+                string cr_name = dt.Rows[0]["cr_name"].ToString();
                 dt = (DataTable)dh.ExecuteSql("select cd_ifinput from craftdetail left join step on st_code=cd_stepcode where cd_crid='" + cr_id + "' and cd_stepcode='" + cd_stepcode.Text + "' and st_statuscode='AUDITED'", "select");
                 if (dt.Rows.Count == 0)
                     OperatResult.AppendText(">>回流工序不在回流工艺中\n", Color.Red);
@@ -626,9 +627,9 @@ namespace UAS_MES_NEW.Make
                             return;
                         }
                         if (ms_ifrework == "0")
-                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_status=1,ms_qccheck=-1 where ms_id='" + msid + "'");
+                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftname='" + cr_name + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_status=1,ms_qccheck=-1 where ms_id='" + msid + "'");
                         else
-                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_reworkstatus=1,ms_qccheck=-1 where ms_id='" + msid + "'");
+                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftname='" + cr_name + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_reworkstatus=1,ms_qccheck=-1 where ms_id='" + msid + "'");
                     }
                     SQLS.Add("update makebad set mb_status=-1 where (mb_sncode='" + ms_sncode.Text + "' or mb_mscode='" + ms_sncode.Text + "') and mb_makecode='" + ms_makecode.Text + "'");
                     //取消最近拆解部件

+ 4 - 3
UAS_MES_YDCY/FunctionCode/Make/Make_Repair67F.cs

@@ -601,12 +601,13 @@ namespace UAS_MES_NEW.Make
                 OperatResult.AppendText(">>" + prdetail.Replace("'", "") + "物料尚未备料,不允许回流\n", Color.Red);
                 return;
             }
-            dt = (DataTable)dh.ExecuteSql("select cr_id from craft where cr_statuscode='AUDITED' and cr_code='" + cr_code.Text + "' and cr_prodcode='" + ms_prodcode.Text + "'", "select");
+            dt = (DataTable)dh.ExecuteSql("select cr_id,cr_name from craft where cr_statuscode='AUDITED' and cr_code='" + cr_code.Text + "' and cr_prodcode='" + ms_prodcode.Text + "'", "select");
             if (dt.Rows.Count == 0)
                 OperatResult.AppendText(">>回流工序不存在\n", Color.Red);
             else
             {
                 string cr_id = dt.Rows[0]["cr_id"].ToString();
+                string cr_name = dt.Rows[0]["cr_name"].ToString();
                 dt = (DataTable)dh.ExecuteSql("select cd_ifinput from craftdetail left join step on st_code=cd_stepcode where cd_crid='" + cr_id + "' and cd_stepcode='" + cd_stepcode.Text + "' and st_statuscode='AUDITED'", "select");
                 if (dt.Rows.Count == 0)
                     OperatResult.AppendText(">>回流工序不在回流工艺中\n", Color.Red);
@@ -625,9 +626,9 @@ namespace UAS_MES_NEW.Make
                             return;
                         }
                         if (ms_ifrework == "0")
-                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_status=1,ms_qccheck=-1 where ms_id='" + msid + "'");
+                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftname='"+ cr_name + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_status=1,ms_qccheck=-1 where ms_id='" + msid + "'");
                         else
-                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_reworkstatus=1,ms_qccheck=-1 where ms_id='" + msid + "'");
+                            SQLS.Add("update makeserial set ms_checkno='',ms_paststep = ms_paststep || case when instr(','||ms_paststep||',','" + User.CurrentStepCode + "')=0 then ','||'" + User.CurrentStepCode + "' end , ms_nextstepcode ='" + cd_stepcode.Text + "',ms_craftname='"+ cr_name + "',ms_craftcode='" + cr_code.Text + "',ms_stepcode='" + User.CurrentStepCode + "',ms_reworkstatus=1,ms_qccheck=-1 where ms_id='" + msid + "'");
                     }
                     SQLS.Add("update makebad set mb_status=-1 where (mb_sncode='" + ms_sncode.Text + "' or mb_mscode='" + ms_sncode.Text + "') and mb_makecode='" + ms_makecode.Text + "'");
                     //取消最近拆解部件