|
|
@@ -80,64 +80,71 @@ namespace UAS_MES.Make
|
|
|
string oMakecode = "";
|
|
|
string oMsid = "";
|
|
|
//记录当前序列号查出来的工单
|
|
|
- makecode = dh.getFieldDataByCondition("makeserial","ms_makecode","ms_sncode='"+code.Text+"'").ToString();
|
|
|
- //核对工序
|
|
|
- if (LogicHandler.CheckStepSNAndMacode(makecode==ms_macode.Text?makecode:"", User.UserSourceCode, code.Text, User.UserCode, out oMakecode, out oMsid, out errorMessage))
|
|
|
+ if (LogicHandler.GetMakeInfo(code.Text, out makecode, out errorMessage))
|
|
|
{
|
|
|
- //核对TSN是否正确
|
|
|
- string beforesn = dh.getFieldDataByCondition("makeserial", "ms_beforesn", "ms_sncode='" + code.Text + "'").ToString().Trim();
|
|
|
- if (beforesn == "" || beforesn == null)
|
|
|
+ //核对工序
|
|
|
+ if (LogicHandler.CheckStepSNAndMacode(makecode == ms_macode.Text ? makecode : "", User.UserSourceCode, code.Text, User.UserCode, out oMakecode, out oMsid, out errorMessage))
|
|
|
{
|
|
|
- //按照out出的工单号查出工单相关信息,并赋值到相关控件
|
|
|
- sql.Clear();
|
|
|
- sql.Append("select ma_code as ms_macode,mcd_okqty,ma_qty,ma_qty-mcd_inqty as remain_qty,pr_detail,pr_code as ma_prodcode ");
|
|
|
- sql.Append("from makeserial left join make on ms_makecode=ma_code left join product on ");
|
|
|
- sql.Append("ms_prodcode=pr_code left join makecraftdetail on ms_makecode=mcd_macode where ms_sncode=:sncode and mcd_stepcode='" + User.CurrentStepCode + "'");
|
|
|
- dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select", code.Text);
|
|
|
- if (dt.Rows.Count > 0)
|
|
|
+ //核对TSN是否正确
|
|
|
+ string beforesn = dh.getFieldDataByCondition("makeserial", "ms_beforesn", "ms_sncode='" + code.Text + "'").ToString().Trim();
|
|
|
+ if (beforesn == "" || beforesn == null)
|
|
|
{
|
|
|
- //记录数量
|
|
|
- ma_qty = int.Parse(dt.Rows[0]["ma_qty"].ToString());
|
|
|
- BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
- //判断用户是否锁定输入TSN长度,
|
|
|
- if (!checkLengthOrPre(TSNLength_checkBox, TSNLength, "长度","TSN"))
|
|
|
+ //按照out出的工单号查出工单相关信息,并赋值到相关控件
|
|
|
+ sql.Clear();
|
|
|
+ sql.Append("select ma_code as ms_macode,mcd_okqty,ma_qty,ma_qty-mcd_inqty as remain_qty,pr_detail,pr_code as ma_prodcode ");
|
|
|
+ sql.Append("from makeserial left join make on ms_makecode=ma_code left join product on ");
|
|
|
+ sql.Append("ms_prodcode=pr_code left join makecraftdetail on ms_makecode=mcd_macode where ms_sncode=:sncode and mcd_stepcode='" + User.CurrentStepCode + "'");
|
|
|
+ dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select", code.Text);
|
|
|
+ if (dt.Rows.Count > 0)
|
|
|
{
|
|
|
+ //记录数量
|
|
|
+ ma_qty = int.Parse(dt.Rows[0]["ma_qty"].ToString());
|
|
|
+ BaseUtil.SetFormValue(this.Controls, dt);
|
|
|
+ //判断用户是否锁定输入TSN长度,
|
|
|
+ if (!checkLengthOrPre(TSNLength_checkBox, TSNLength, "长度", "TSN"))
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ //判断用户是否锁定输入TSN前缀,
|
|
|
+ if (!checkLengthOrPre(TSNPre_checkBox, TSNPre, "前缀", "TSN"))
|
|
|
+ {
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ OperateResult.AppendText(">>序列号" + code.Text + "不存在\n", Color.Red);
|
|
|
+ code.Text = "";
|
|
|
return;
|
|
|
}
|
|
|
- //判断用户是否锁定输入TSN前缀,
|
|
|
- if (!checkLengthOrPre(TSNPre_checkBox, TSNPre, "前缀","TSN"))
|
|
|
+ //获取需要关联采集的信息,以及校验规则
|
|
|
+ ListA = (DataTable)dh.ExecuteSql("select * from productsnrelation where psr_prodcode='" + ma_prodcode.Text + "' order by psr_detno", "select");
|
|
|
+ //没有获取到就提示错误请维护产品对应的关联采集信息
|
|
|
+ if (ListA.Rows.Count == 0)
|
|
|
{
|
|
|
+ OperateResult.AppendText(">>请维护产品对应的关联采集信息\n", Color.Red);
|
|
|
+ OperateResult.AppendText("<<请输入TSN\n", Color.Green);
|
|
|
return;
|
|
|
}
|
|
|
+ step = 1;
|
|
|
+
|
|
|
+ //记录转换前的序列号
|
|
|
+ TSN = code.Text;
|
|
|
+ code.Text = "";
|
|
|
+ OperateResult.AppendText("<<请输入SN\n", Color.Green);
|
|
|
}
|
|
|
else
|
|
|
+ //不为空,进行过转换。不勾选修改结果,就不能再修改
|
|
|
{
|
|
|
- OperateResult.AppendText(">>序列号" + code.Text + "不存在\n", Color.Red);
|
|
|
+ OperateResult.AppendText(">>序列号" + code.Text + "已进行了转换\n", Color.Red);
|
|
|
code.Text = "";
|
|
|
- return;
|
|
|
+ OperateResult.AppendText("<<请重新输入TSN\n", Color.Green);
|
|
|
}
|
|
|
- //获取需要关联采集的信息,以及校验规则
|
|
|
- ListA = (DataTable)dh.ExecuteSql("select * from productsnrelation where psr_prodcode='" + ma_prodcode.Text + "' order by psr_detno", "select");
|
|
|
- //没有获取到就提示错误请维护产品对应的关联采集信息
|
|
|
- if (ListA.Rows.Count == 0)
|
|
|
- {
|
|
|
- OperateResult.AppendText(">>请维护产品对应的关联采集信息\n", Color.Red);
|
|
|
- OperateResult.AppendText("<<请输入TSN\n", Color.Green);
|
|
|
- return;
|
|
|
- }
|
|
|
- step = 1;
|
|
|
-
|
|
|
- //记录转换前的序列号
|
|
|
- TSN = code.Text;
|
|
|
- code.Text = "";
|
|
|
- OperateResult.AppendText("<<请输入SN\n", Color.Green);
|
|
|
}
|
|
|
else
|
|
|
- //不为空,进行过转换。不勾选修改结果,就不能再修改
|
|
|
{
|
|
|
- OperateResult.AppendText(">>序列号" + code.Text + "已进行了转换\n", Color.Red);
|
|
|
+ OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red);
|
|
|
code.Text = "";
|
|
|
- OperateResult.AppendText("<<请重新输入TSN\n", Color.Green);
|
|
|
}
|
|
|
}
|
|
|
else
|