|
|
@@ -1,4 +1,5 @@
|
|
|
-using System;
|
|
|
+using NPOI.SS.Formula.Functions;
|
|
|
+using System;
|
|
|
using System.Collections;
|
|
|
using System.Collections.Generic;
|
|
|
using System.Data;
|
|
|
@@ -10,6 +11,7 @@ using UAS_MES.CustomControl.TextBoxWithIcon;
|
|
|
using UAS_MES.DataOperate;
|
|
|
using UAS_MES.Entity;
|
|
|
using UAS_MES.PublicMethod;
|
|
|
+using static System.Runtime.CompilerServices.RuntimeHelpers;
|
|
|
|
|
|
namespace UAS_MES.Make
|
|
|
{
|
|
|
@@ -70,7 +72,7 @@ namespace UAS_MES.Make
|
|
|
em_name.FormName = Name;
|
|
|
em_name.TableName = "employee";
|
|
|
em_name.SelectField = "em_code # 人员编号,em_name # 人员名称,em_position # 岗位";
|
|
|
- em_name.SetValueField = new string[] { "em_code","em_name" };
|
|
|
+ em_name.SetValueField = new string[] { "em_code", "em_name" };
|
|
|
em_name.DBTitle = "人员";
|
|
|
em_name.Condition = " em_class = '正式' ";
|
|
|
em_name.DbChange += mbr_dutyman_DbChange;
|
|
|
@@ -91,7 +93,7 @@ namespace UAS_MES.Make
|
|
|
bd_soncode.DbChange += Prodcode_DbChange;
|
|
|
|
|
|
//nrg_name.BringToFront();
|
|
|
- nrg_name.TableName = "(select nrg_name,nrg_code from QUA_NGREASONGROUP left join DATAINPUTRECORD ON NRG_NAME = DIR_COMMENT AND DIR_GROUP = '不良原因组' and DIR_SOURCECODE = '" + User.UserSourceCode+ "' ORDER BY NVL(DIR_NUMBER,0) DESC)";
|
|
|
+ nrg_name.TableName = "(select nrg_name,nrg_code from QUA_NGREASONGROUP left join DATAINPUTRECORD ON NRG_NAME = DIR_COMMENT AND DIR_GROUP = '不良原因组' and DIR_SOURCECODE = '" + User.UserSourceCode + "' ORDER BY NVL(DIR_NUMBER,0) DESC)";
|
|
|
nrg_name.Field = "nrg_name";
|
|
|
nrg_name.ValueField = "nrg_code";
|
|
|
nrg_name.Condition = " 1=1 ORDER BY ROWNUM asc";
|
|
|
@@ -369,7 +371,7 @@ namespace UAS_MES.Make
|
|
|
else OperatResult.AppendText(">>" + ErrorMessage + "\n", Color.Red);
|
|
|
SaveRepairInf.Enabled = false;
|
|
|
if (QuickRepair.Checked)
|
|
|
- RepairComplete_Click(sender, new EventArgs());
|
|
|
+ RepairComplete_Click(sender, new EventArgs());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -395,7 +397,7 @@ namespace UAS_MES.Make
|
|
|
if (e.Node.Level == 0)
|
|
|
{
|
|
|
mb_id = e.Node.Tag.ToString();
|
|
|
- BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component,em_name,em_code);
|
|
|
+ BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component, em_name, em_code);
|
|
|
mbl_locdgv.DataSource = null;
|
|
|
mbp_partdgv.DataSource = null;
|
|
|
bc_name.Text = BadInf_1[mb_id]["bc_name"];
|
|
|
@@ -543,6 +545,21 @@ namespace UAS_MES.Make
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
+ if (dh.getRowCount("makebadcount", "mbc_sncode='" + ms_sncode.Text + "'") >= 3)
|
|
|
+ {
|
|
|
+ OperatResult.AppendText(">>SN" + ms_sncode.Text + "维修次数已达到三次或以上,已被冻结\n", Color.Red);
|
|
|
+ string[] param = new string[] { "MakeDown", "0", ms_makecode.Text };
|
|
|
+ dh.CallProcedure("SP_GETMAXNUMBER", ref param);
|
|
|
+ string mdcode = param[2];
|
|
|
+ sql.Clear();
|
|
|
+ sql.Append("INSERT INTO MAKEDOWN (MD_ID,MD_LINECODE,MD_SCCODE,MD_STEPCODE,");
|
|
|
+ sql.Append("MD_SNCODE,MD_PRODCODE,MD_MACODE, MD_DOWNREASON, MD_CODE,");
|
|
|
+ sql.Append("MD_DOWNDATE,MD_DOWNMAN,MD_STATUS) values (MAKEDOWN_seq.nextval,'" + User.UserLineCode + "','" + User.UserSourceCode + "',");
|
|
|
+ sql.Append("'" + User.CurrentStepCode + "','" + ms_sncode.Text + "','" + ms_prodcode.Text + "','" + ms_makecode.Text + "','维修次数达到三次','" + mdcode + "',sysdate,'" + User.UserCode + "','-1')");
|
|
|
+ dh.UpdateByCondition("makeserial", "ms_downstatus='-1'", "ms_id='" + msid + "'");
|
|
|
+ dh.ExecuteSql(sql.GetString(), "insert");
|
|
|
+ return;
|
|
|
+ }
|
|
|
//判断是否所有的不良信息都有维护不良原因
|
|
|
DataTable dt = (DataTable)dh.ExecuteSql("select mb_id,bc_name,mbr_mbid from makebad left join makebadreason on mbr_mbid=mb_id left join badcode on mb_badcode=bc_code where mb_sncode='" + ms_sncode.Text + "' and mb_makecode='" + ms_makecode.Text + "' and mb_status=0", "select");
|
|
|
string ErrorMessage = "";
|
|
|
@@ -635,11 +652,12 @@ namespace UAS_MES.Make
|
|
|
else
|
|
|
SQLS.Add("update makeserial set ms_spi = 0,ms_xray = 0,ms_checkpack = -1, 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 where ms_id='" + msid + "'");
|
|
|
}
|
|
|
- SQLS.Add("update makebad set mb_status=-1,mb_restep='"+cd_stepcode.Text+"' where mb_sncode='" + ms_sncode.Text + "' and mb_makecode='" + ms_makecode.Text + "'");
|
|
|
+ SQLS.Add("update makebad set mb_status=-1,mb_restep='" + cd_stepcode.Text + "' where mb_sncode='" + ms_sncode.Text + "' and mb_makecode='" + ms_makecode.Text + "'");
|
|
|
SQLS.Add("update makebad set mb_enddate = sysdate where mb_sncode='" + ms_sncode.Text + "' and mb_makecode='" + ms_makecode.Text + "' and mb_enddate is null");
|
|
|
SQLS.Add("update makebad set mb_receivetime = sysdate where mb_sncode='" + ms_sncode.Text + "' and mb_makecode='" + ms_makecode.Text + "' and mb_receivetime is null");
|
|
|
//取消最近拆解部件
|
|
|
SQLS.Add("update craftmaterial set cm_lastdeco=0 where cm_sncode='" + ms_sncode.Text + "' and cm_makecode='" + ms_makecode.Text + "' and nvl(cm_lastdeco,0)<>0");
|
|
|
+ SQLS.Add("insert into makebadcount (mbc_id,mbc_sncode,mbc_stepcode,mbc_status,mbc_indate)values(makebadcount_seq.nextval,'" + ms_sncode.Text + "','" + cd_stepcode.Text + "',0,sysdate)");
|
|
|
dh.ExecuteSQLTran(SQLS.ToArray());
|
|
|
LogicHandler.InsertMakeProcess(ms_sncode.Text, ms_makecode.Text, User.UserSourceCode, "回流工序", "完成维修", User.UserCode);
|
|
|
LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, macode, User.UserLineCode, User.UserSourceCode, "回流工序", "完成维修", ms_sncode.Text, ms_checkno.Text);
|
|
|
@@ -742,7 +760,7 @@ namespace UAS_MES.Make
|
|
|
ErrorMessage += " 不良原因 ";
|
|
|
if (mbr_dutyname.Text == "")
|
|
|
ErrorMessage += " 责任别 ";
|
|
|
- if ((mbr_dutyname.Text == "整机作业问题"|| mbr_dutyname.Text == "基板作业问题")&&em_name.Text=="")
|
|
|
+ if ((mbr_dutyname.Text == "整机作业问题" || mbr_dutyname.Text == "基板作业问题") && em_name.Text == "")
|
|
|
ErrorMessage += " 责任人 ";
|
|
|
if (ErrorMessage != "")
|
|
|
{
|
|
|
@@ -778,19 +796,19 @@ namespace UAS_MES.Make
|
|
|
return;
|
|
|
}
|
|
|
//保存选择记录至后台,根据岗位资源代码记录
|
|
|
-
|
|
|
- dh.ExecuteSql("merge into DATAINPUTRECORD using (select NRG_NAME from QUA_NGREASONGROUP where NRG_NAME = '" + nrg_name.Text + "') ON (NRG_NAME = DIR_COMMENT AND DIR_GROUP = '不良原因组' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (NRG_NAME,1,'" + User.UserSourceCode + "','不良原因组')","select");
|
|
|
- dh.ExecuteSql("merge into DATAINPUTRECORD using (select nr_name from QUA_NGReason left join QUA_NGREASONGROUPDET on nrgd_nrcode=nr_code left join QUA_NGREASONGROUP on nrgd_nrgid=nrg_id where nr_name = '" + nr_name.Text + "' and NRG_NAME = '" + nrg_name.Text + "') ON (nr_name = DIR_COMMENT AND DIR_GROUP = '不良原因' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (nr_name,1,'" + User.UserSourceCode + "','不良原因')","select");
|
|
|
- dh.ExecuteSql("merge into DATAINPUTRECORD using (select nd_name from ngduty where nd_name = '" + mbr_dutyname.Text + "') ON (nd_name = DIR_COMMENT AND DIR_GROUP = '责任别' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (nd_name,1,'" + User.UserSourceCode + "','责任别')","select");
|
|
|
+
|
|
|
+ dh.ExecuteSql("merge into DATAINPUTRECORD using (select NRG_NAME from QUA_NGREASONGROUP where NRG_NAME = '" + nrg_name.Text + "') ON (NRG_NAME = DIR_COMMENT AND DIR_GROUP = '不良原因组' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (NRG_NAME,1,'" + User.UserSourceCode + "','不良原因组')", "select");
|
|
|
+ dh.ExecuteSql("merge into DATAINPUTRECORD using (select nr_name from QUA_NGReason left join QUA_NGREASONGROUPDET on nrgd_nrcode=nr_code left join QUA_NGREASONGROUP on nrgd_nrgid=nrg_id where nr_name = '" + nr_name.Text + "' and NRG_NAME = '" + nrg_name.Text + "') ON (nr_name = DIR_COMMENT AND DIR_GROUP = '不良原因' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (nr_name,1,'" + User.UserSourceCode + "','不良原因')", "select");
|
|
|
+ dh.ExecuteSql("merge into DATAINPUTRECORD using (select nd_name from ngduty where nd_name = '" + mbr_dutyname.Text + "') ON (nd_name = DIR_COMMENT AND DIR_GROUP = '责任别' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (nd_name,1,'" + User.UserSourceCode + "','责任别')", "select");
|
|
|
dh.ExecuteSql("merge into DATAINPUTRECORD using (select so_name from solution where so_name = '" + so_name.Text + "') ON (so_name = DIR_COMMENT AND DIR_GROUP = '解决方案' and DIR_SOURCECODE = '" + User.UserSourceCode + "') when matched then update set DIR_NUMBER = DIR_NUMBER +1 when not matched then insert (DIR_COMMENT,DIR_NUMBER,DIR_SOURCECODE,DIR_GROUP) VALUES (so_name,1,'" + User.UserSourceCode + "','解决方案')", "select");
|
|
|
-
|
|
|
+
|
|
|
//保存不良原因
|
|
|
sql.Clear();
|
|
|
sql.Append("insert into makebadreason (mbr_mbid,mbr_id,mbr_brcode,mbr_solutioncode,");
|
|
|
sql.Append("mbr_dutycode,mbr_brgcode,mbr_badcode,mbr_sncode,mbr_makecode,mbr_indate,");
|
|
|
sql.Append("mbr_inman,mbr_brname,mbr_solutionname,mbr_badname,mbr_brgname,mbr_dutyname,mbr_dutyman,mbr_dutymancode) select '" + mb_id + "','" + mbr_id + "','" + nr_code.Text + "',");
|
|
|
sql.Append("'" + so_code.Text + "','" + mbr_dutyname.Text + "','" + nrg_code.Text + "','" + bc_code.Text + "',");
|
|
|
- sql.Append("'" + ms_sncode.Text + "','" + ms_makecode.Text + "',sysdate,'" + User.UserCode + "','" + nr_name.Text + "','" + so_name.Text + "','" + bc_name.Text + "','" + nrg_name.Text + "','" + mbr_dutyname.Text + "','"+em_name.Text+"','"+em_code.Text+"' from dual");
|
|
|
+ sql.Append("'" + ms_sncode.Text + "','" + ms_makecode.Text + "',sysdate,'" + User.UserCode + "','" + nr_name.Text + "','" + so_name.Text + "','" + bc_name.Text + "','" + nrg_name.Text + "','" + mbr_dutyname.Text + "','" + em_name.Text + "','" + em_code.Text + "' from dual");
|
|
|
dh.ExecuteSql(sql.GetString(), "insert");
|
|
|
if (mbc_component.Text != "")
|
|
|
{
|
|
|
@@ -819,7 +837,7 @@ namespace UAS_MES.Make
|
|
|
string delete4 = "delete from makebadreason where mbr_id='" + mbr_id + "'";
|
|
|
dh.ExecuteSQLTran(delete1, delete2, delete3, delete4);
|
|
|
OperatResult.AppendText(">>删除成功\n", Color.Green);
|
|
|
- BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component,em_name, em_code);
|
|
|
+ BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component, em_name, em_code);
|
|
|
mbp_partdgv.DataSource = null;
|
|
|
mbl_locdgv.DataSource = null;
|
|
|
mbr_id = "";
|
|
|
@@ -867,7 +885,7 @@ namespace UAS_MES.Make
|
|
|
sql.Append("mbp_brcode,mbp_sncode,mbp_makecode,mbp_indate,mbp_inman,mbp_loc)");
|
|
|
sql.Append("select makebadrspart_seq.nextval," + mbr_id + ",'" + dt.Rows[0][0].ToString() + "',");
|
|
|
sql.Append("'" + bc_code.Text + "','" + nr_code.Text + "','" + GetSNCode.Text + "','" + macode + "',");
|
|
|
- sql.Append("sysdate,'" + User.UserCode + "','"+ mbl_loc.Text.ToUpper() + "' from dual");
|
|
|
+ sql.Append("sysdate,'" + User.UserCode + "','" + mbl_loc.Text.ToUpper() + "' from dual");
|
|
|
dh.ExecuteSql(sql.GetString(), "insert");
|
|
|
dt = (DataTable)dh.ExecuteSql("select mbp_id,mbp_part from makebadrspart where mbp_mbrid=" + mbr_id, "select");
|
|
|
BaseUtil.FillDgvWithDataTable(mbp_partdgv, dt);
|
|
|
@@ -1025,7 +1043,7 @@ namespace UAS_MES.Make
|
|
|
{
|
|
|
if (bc_code.Text != "")
|
|
|
{
|
|
|
- dh.ExecuteSql("update makebad set mb_badremark = '"+ mb_badremark.Text + "' where mb_id = '"+ mb_id + "'", "update");
|
|
|
+ dh.ExecuteSql("update makebad set mb_badremark = '" + mb_badremark.Text + "' where mb_id = '" + mb_id + "'", "update");
|
|
|
OperatResult.AppendText(">>更新备注成功\n", Color.Green);
|
|
|
}
|
|
|
else
|
|
|
@@ -1050,7 +1068,7 @@ namespace UAS_MES.Make
|
|
|
string delete = "delete from makebad where mb_id = '" + mb_id + "'";
|
|
|
dh.ExecuteSQLTran(delete1, delete2, delete3, delete4, delete);
|
|
|
OperatResult.AppendText(">>删除成功\n", Color.Green);
|
|
|
- BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component,em_name,em_code);
|
|
|
+ BaseUtil.CleanControlsText(bc_name, bc_code, bg_name, bg_code, mb_badremark, nrg_name, nrg_code, nr_name, nr_code, so_name, so_code, mbr_dutyname, mbr_dutycode, mbc_component, em_name, em_code);
|
|
|
mbp_partdgv.DataSource = null;
|
|
|
mbl_locdgv.DataSource = null;
|
|
|
mb_id = "";
|