瀏覽代碼

seqTrans序列号enter带出信息

shim 8 年之前
父節點
當前提交
a79e19eaab
共有 1 個文件被更改,包括 114 次插入117 次删除
  1. 114 117
      UAS-MES/FunctionCode/Make/Make_SeqTransform.cs

+ 114 - 117
UAS-MES/FunctionCode/Make/Make_SeqTransform.cs

@@ -50,149 +50,146 @@ namespace UAS_MES.Make
             {
                 if (sncode.Text != "")
                 {
-                    if (LogicHandler.CheckStepAttribute(Tag.ToString(),User.UserSourceCode,out errorMessage))
+                    if (LogicHandler.CheckStepAttribute(Tag.ToString(), User.UserSourceCode, out errorMessage))
                     {
                         OperateResult.AppendText(">>序列号:" + sncode.Text + " , 发送请求\n", Color.Green);
                         //如果用户没有输入工单号自行去后台查询
-                        string macode;
-                        //如果用户填写了工单号 
-                        if (ma_code.Text != "")
+                        //通过工单序列号关系验证
+                        //bsncode为空,就说明是输入转换之前的序列号
+                        if (bsncode == "")
                         {
-                            macode = ma_code.Text;
-                            //通过工单序列号关系验证
-                            //bsncode为空,就说明是输入转换之前的序列号
-                            if (bsncode == "")
+                            //定义传入方法的变量
+                            string oMakeCode = "";
+                            string oMsId = "";
+                            //用户填写了工单号,那么序列号必须要是该工单的,否则提示错误
+                            if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, sncode.Text, User.UserCode, out oMakeCode, out oMsId, out errorMessage))
                             {
-                                //定义传入方法的变量
-                                string oMakeCode = "";
-                                string oMsId = "";
-                                //用户填写了工单号,那么序列号必须要是该工单的,否则提示错误
-                                if (LogicHandler.CheckStepSNAndMacode(macode, User.UserSourceCode, sncode.Text, User.UserCode, out oMakeCode, out oMsId, out errorMessage))
-                                {
-                                    //判断用户是否锁定输入转换前序列号长度,
-                                    if (!checkLengthOrPre(beforeTransSNLength_checkBox, beforeTransSNLength, "长度"))
-                                        return;
-                                    //判断用户是否锁定输入转换前序列号前缀,
-                                    if (!checkLengthOrPre(beforeTransSNPre_checkBox, beforeTransSNPre, "前缀"))
-                                        return;
-                                    switch (ChangeResult.CheckState)
+                                //如果用户没有选择工单号
+                                if (ma_code.Text=="") {
+                                    dt = (DataTable)dh.ExecuteSql("select ma_code,ma_prodcode,pr_detail,ma_qty from make left join product on ma_prodcode=pr_code where ma_code='" + oMakeCode + "'", "select");
+                                    if (dt.Rows.Count > 0)
                                     {
-                                        //勾选是修改已转换的序列,矫正修改错了的序列号
-                                        case CheckState.Checked:
-                                            if (dh.CheckExist("MakeSerial", "ms_beforesn='" + sncode.Text + "'"))
-                                            {
-                                                bsncode = sncode.Text;
-                                                sncode.Text = "";
-                                                OperateResult.AppendText("<<请输入转换后的序列号\n", Color.Green);
-                                            }
-                                            else
-                                            {
-                                                OperateResult.AppendText(">>不存在该已转序列号\n" + sncode.Text + "\n");
-                                                sncode.Text = "";
-                                                OperateResult.AppendText("<<请重新输入序列号\n", Color.Green);
-                                            }
-                                            break;
-                                        case CheckState.Unchecked:
-
-                                            string beforesn = dh.getFieldDataByCondition("makeserial", "ms_beforesn", "ms_sncode='" + sncode.Text + "'").ToString().Trim();
-                                            //为空,就说明,没有进行过序列号的转换
-                                            if (beforesn == "" || beforesn == null)
-                                            {
-                                                //记录转换前的序列号
-                                                bsncode = sncode.Text;
-                                                sncode.Text = "";
-                                                OperateResult.AppendText("<<请输入转换后的序列号\n", Color.Green);
-                                            }
-                                            else
-                                            //不为空,进行过转换。不勾选修改结果,就不能再修改
-                                            {
-                                                OperateResult.AppendText(">>序列号" + sncode.Text + "已进行了转换\n", Color.Red);
-                                                sncode.Text = "";
-                                                OperateResult.AppendText("<<请重新输入序列号\n", Color.Green);
-                                            }
-                                            break;
-                                        default:
-                                            break;
+                                        BaseUtil.SetFormValue(this.Controls, dt);
+                                        ms_makecode_lock.Checked = true;
                                     }
                                 }
-                                else {
-                                    OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red);
-                                    sncode.Text = "";
-                                }
-                            }
-                            //bsncode不为空,说明输入的是转换后的序列号
-                            else
-                            {
-                                //判断用户是否锁定输入转换后序列号长度,
-                                if (!checkLengthOrPre(afterTransSNLength_checkBox, afterTransSNLength, "长度"))
+                                //判断用户是否锁定输入转换前序列号长度,
+                                if (!checkLengthOrPre(beforeTransSNLength_checkBox, beforeTransSNLength, "长度"))
                                     return;
-                                //判断用户是否锁定输入转换序列号前缀,
-                                if (!checkLengthOrPre(afterTransSNPre_checkBox, afterTransSNPre, "前缀"))
+                                //判断用户是否锁定输入转换前序列号前缀,
+                                if (!checkLengthOrPre(beforeTransSNPre_checkBox, beforeTransSNPre, "前缀"))
                                     return;
-                                //如果两次输入的序列号相同进行提示,不相同则进行下一步
-                                if (bsncode != sncode.Text)
+                                switch (ChangeResult.CheckState)
                                 {
-                                    //勾选了修改转换结果
-                                    if (ChangeResult.Checked)
-                                    {
-                                        if (!dh.CheckExist("makeserial", "ms_sncode='" + sncode.Text + "'"))
+                                    //勾选是修改已转换的序列,矫正修改错了的序列号
+                                    case CheckState.Checked:
+                                        if (dh.CheckExist("MakeSerial", "ms_beforesn='" + sncode.Text + "'"))
                                         {
-                                            //查询ms_firstsn
-                                            string firstsn = dh.getFieldDataByCondition("makeserial", "ms_firstsn", "ms_beforesn='" + bsncode + "'").ToString();
-                                            //记录本次修改,存入makesnrelation表中
-                                            string updateSql = "update makeserial set ms_sncode='" + sncode.Text + "' where ms_beforesn='" + bsncode + "'";
-                                            string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + bsncode + "','" + sncode.Text + "','" + firstsn + "','" + ma_code.Text + "', sysdate ,'" + User.UserCode + "')";
-                                            dh.ExecuteSQLTran(updateSql, insertSql);
-                                            OperateResult.AppendText(">>转换成功");
-                                            //写入日志
-                                            LogManager.DoLog("修改序列号:" + bsncode + "为" + sncode.Text + "成功!" + "操作人:" + User.UserCode);
-                                            OperateResult.AppendText(">>请输入转换前的序列号\n", Color.Green);
-                                            //置空
-                                            bsncode = "";
-                                            //更新数量
-                                            changenum.Text = int.Parse(changenum.Text) + 1 + "";
+                                            bsncode = sncode.Text;
+                                            sncode.Text = "";
+                                            OperateResult.AppendText("<<请输入转换后的序列号\n", Color.Green);
                                         }
                                         else
-                                            OperateResult.AppendText(">>序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
-                                    }
-                                    //未勾选修改转换结果
-                                    else
-                                    {
-                                        if (!dh.CheckExist("makeserial", "ms_sncode='" + sncode.Text + "'"))
                                         {
-                                            //查询ms_firstsn
-                                            string firstsn = dh.getFieldDataByCondition("makeserial", "ms_firstsn", "ms_sncode='" + bsncode + "'").ToString();
-                                            //记录本次修改,存入makesnrelation表中
-                                            string updateSql = "update makeserial set ms_sncode='" + sncode.Text + "', ms_beforesn='" + bsncode + "' where ms_sncode='" + bsncode + "'";
-                                            string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + bsncode + "','" + sncode.Text + "','" + firstsn + "','" + ma_code.Text + "', sysdate ,'" + User.UserCode + "')";
-                                            dh.ExecuteSQLTran(updateSql, insertSql);
-                                            OperateResult.AppendText(">>转换成功\n", Color.Green);
-                                            //写入日志
-                                            LogManager.DoLog("修改序列号:" + bsncode + "为" + sncode.Text + "成功!" + "操作人:" + User.UserCode);
-                                            OperateResult.AppendText(">>请输入转换前的序列号\n", Color.Green);
-                                            //置空
-                                            bsncode = "";
-                                            //更新数量
-                                            changenum.Text = int.Parse(changenum.Text) + 1 + "";
+                                            OperateResult.AppendText(">>不存在该已转序列号\n" + sncode.Text + "\n");
+                                            sncode.Text = "";
+                                            OperateResult.AppendText("<<请重新输入序列号\n", Color.Green);
+                                        }
+                                        break;
+                                    case CheckState.Unchecked:
+
+                                        string beforesn = dh.getFieldDataByCondition("makeserial", "ms_beforesn", "ms_sncode='" + sncode.Text + "'").ToString().Trim();
+                                        //为空,就说明,没有进行过序列号的转换
+                                        if (beforesn == "" || beforesn == null)
+                                        {
+                                            //记录转换前的序列号
+                                            bsncode = sncode.Text;
+                                            sncode.Text = "";
+                                            OperateResult.AppendText("<<请输入转换后的序列号\n", Color.Green);
                                         }
                                         else
-                                            OperateResult.AppendText(">>序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
-                                    }
+                                        //不为空,进行过转换。不勾选修改结果,就不能再修改
+                                        {
+                                            OperateResult.AppendText(">>序列号" + sncode.Text + "已进行了转换\n", Color.Red);
+                                            sncode.Text = "";
+                                            OperateResult.AppendText("<<请重新输入序列号\n", Color.Green);
+                                        }
+                                        break;
+                                    default:
+                                        break;
                                 }
-                                else
-                                    OperateResult.AppendText(">>相同序列号不能进行转换\n", Color.Red);
+                            }
+                            else
+                            {
+                                OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red);
+                                sncode.Text = "";
                             }
                         }
+                        //bsncode不为空,说明输入的是转换后的序列号
                         else
                         {
-                            macode = dh.getFieldDataByCondition("makeserial", "ms_makecode", "ms_sncode='" + sncode.Text + "' or ms_beforesn='" + sncode.Text + "'").ToString();
-                            if (macode == "")
+                            //判断用户是否锁定输入转换后序列号长度,
+                            if (!checkLengthOrPre(afterTransSNLength_checkBox, afterTransSNLength, "长度"))
+                                return;
+                            //判断用户是否锁定输入转换后序列号前缀,
+                            if (!checkLengthOrPre(afterTransSNPre_checkBox, afterTransSNPre, "前缀"))
+                                return;
+                            //如果两次输入的序列号相同进行提示,不相同则进行下一步
+                            if (bsncode != sncode.Text)
                             {
-                                OperateResult.AppendText(">>无该序列号对应工单!\n", Color.Red);
+                                //勾选了修改转换结果
+                                if (ChangeResult.Checked)
+                                {
+                                    if (!dh.CheckExist("makeserial", "ms_sncode='" + sncode.Text + "'"))
+                                    {
+                                        //查询ms_firstsn
+                                        string firstsn = dh.getFieldDataByCondition("makeserial", "ms_firstsn", "ms_beforesn='" + bsncode + "'").ToString();
+                                        //记录本次修改,存入makesnrelation表中
+                                        string updateSql = "update makeserial set ms_sncode='" + sncode.Text + "' where ms_beforesn='" + bsncode + "'";
+                                        string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + bsncode + "','" + sncode.Text + "','" + firstsn + "','" + ma_code.Text + "', sysdate ,'" + User.UserCode + "')";
+                                        dh.ExecuteSQLTran(updateSql, insertSql);
+                                        OperateResult.AppendText(">>转换成功");
+                                        //写入日志
+                                        LogManager.DoLog("修改序列号:" + bsncode + "为" + sncode.Text + "成功!" + "操作人:" + User.UserCode);
+                                        OperateResult.AppendText(">>请输入转换前的序列号\n", Color.Green);
+                                        //置空
+                                        bsncode = "";
+                                        //更新数量
+                                        changenum.Text = int.Parse(changenum.Text) + 1 + "";
+                                    }
+                                    else
+                                        OperateResult.AppendText(">>序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
+                                }
+                                //未勾选修改转换结果
+                                else
+                                {
+                                    if (!dh.CheckExist("makeserial", "ms_sncode='" + sncode.Text + "'"))
+                                    {
+                                        //查询ms_firstsn
+                                        string firstsn = dh.getFieldDataByCondition("makeserial", "ms_firstsn", "ms_sncode='" + bsncode + "'").ToString();
+                                        //记录本次修改,存入makesnrelation表中
+                                        string updateSql = "update makeserial set ms_sncode='" + sncode.Text + "', ms_beforesn='" + bsncode + "' where ms_sncode='" + bsncode + "'";
+                                        string insertSql = "insert into  makesnrelation (BEFORESN,SN,FIRSTSN,MAKECODE,msr_indate, msr_inman)values('" + bsncode + "','" + sncode.Text + "','" + firstsn + "','" + ma_code.Text + "', sysdate ,'" + User.UserCode + "')";
+                                        dh.ExecuteSQLTran(updateSql, insertSql);
+                                        OperateResult.AppendText(">>转换成功\n", Color.Green);
+                                        //写入日志
+                                        LogManager.DoLog("修改序列号:" + bsncode + "为" + sncode.Text + "成功!" + "操作人:" + User.UserCode);
+                                        OperateResult.AppendText(">>请输入转换前的序列号\n", Color.Green);
+                                        //置空
+                                        bsncode = "";
+                                        //更新数量
+                                        changenum.Text = int.Parse(changenum.Text) + 1 + "";
+                                    }
+                                    else
+                                        OperateResult.AppendText(">>序列号" + sncode.Text + "已存在,请输入其他序列号\n", Color.Red);
+                                }
                             }
+                            else
+                                OperateResult.AppendText(">>相同序列号不能进行转换\n", Color.Red);
                         }
                     }
-                    else {
+                    else
+                    {
                         OperateResult.AppendText(">>" + errorMessage + "\n", Color.Red);
                         sncode.Text = "";
                     }