Переглянути джерело

Merge branch 'master' of ssh://10.10.100.21/source/mes-client

Hcsy 8 роки тому
батько
коміт
b2507fd5cb

+ 16 - 17
UAS-MES/FunctionCode/Make/Make_SeqProgramTransform.cs

@@ -53,6 +53,8 @@ namespace UAS_MES.Make
 
         string oMakecode = "";
         string oMsid = "";
+
+        string siid="";//存储TSN对应的sninfo记录id
         bool onlyPass = false;
 
         DataTable macRange;//记录macBT范围
@@ -164,6 +166,8 @@ namespace UAS_MES.Make
                                     return;
                                 }
                             }
+                            //查询TSN对应的sninfo记录id
+                            siid= dh.getFieldDataByCondition("sninfo", "max(si_id) si_id", "si_sn in (select '" + code.Text + "' from dual union select sn from makesnrelation where beforesn = '" + code.Text + "' )").ToString();
                             //获取需要关联采集的信息,以及校验规则
                             ListA = (DataTable)dh.ExecuteSql("select * from productsnrelation where psr_prodcode='" + ma_prodcode.Text + "' order by psr_detno", "select");
                             //没有获取到就提示错误请维护产品对应的关联采集信息
@@ -440,8 +444,8 @@ namespace UAS_MES.Make
                 case "IMEI1":
                 case "IMEI2":
                 case "IMEI3":
-                    if (!ChangeResult.Checked && checkExist("(ms_imei1='" + code.Text + "' or ms_imei2 = '" + code.Text + "' or ms_imei3 = '" + code.Text + "') and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' '")
-                        || ChangeResult.Checked && checkExist("ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' ' and  (ms_imei1='" + code.Text + "' or ms_imei2 = '" + code.Text + "' or ms_imei3 = '" + code.Text + "') and ms_id <> '" + oMsid + "'"))
+                    if (!ChangeResult.Checked && checkExist("(ms_imei1='" + code.Text + "' or ms_imei2 = '" + code.Text + "' or ms_imei3 = '" + code.Text + "') and  ms_status in (0,1,2,3)")
+                        || ChangeResult.Checked && checkExist("(ms_imei1='" + code.Text + "' or ms_imei2 = '" + code.Text + "' or ms_imei3 = '" + code.Text + "') and  ms_status in (0,1,2,3)  and ms_id <> '" + oMsid + "'"))
                     {
                         OperateResult.AppendText(">>" + type + ":" + code.Text + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + type + "\n", Color.Black, code);
@@ -486,8 +490,8 @@ namespace UAS_MES.Make
                         }
                     }
                     //验证是否已被使用
-                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' '")
-                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' '  and ms_id <> '" + oMsid + "'"))
+                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (0,1,2,3)")
+                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + macOrBt + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
                     {
                         OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
@@ -510,8 +514,8 @@ namespace UAS_MES.Make
                     toSi.Append("si_" + type + " = '" + macOrBt + "',");
                     break;
                 case "NETCODE":
-                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + code.Text + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' '")
-                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + code.Text + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' ' and ms_id <> '" + oMsid + "'"))
+                    if (!ChangeResult.Checked && checkExist("MS_" + type + "='" + code.Text + "' and  ms_status in (0,1,2,3)")
+                        || ChangeResult.Checked && checkExist("MS_" + type + "='" + code.Text + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'"))
                     {
                         OperateResult.AppendText(">>" + ListA.Rows[step - 2]["psr_type"].ToString() + ":" + code.Text + "错误,不允许重复\n", Color.Red);
                         OperateResult.AppendText(">>请输入" + ListA.Rows[step - 2]["psr_type"].ToString() + "\n", Color.Black, code);
@@ -554,8 +558,8 @@ namespace UAS_MES.Make
                     //遍历判断已采集的信息是否已存在
                     foreach (DictionaryEntry de in hs)
                     {
-                        if (!ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString() == "WIFI" ? "MAC" : de.Key) + "='" + de.Value + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' '")
-                            || (ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString() == "WIFI" ? "MAC" : de.Key) + "='" + de.Value + "' and  ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' ' and ms_id <> '" + oMsid + "'")))
+                        if (!ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString() == "WIFI" ? "MAC" : de.Key) + "='" + de.Value + "' and  ms_status in (0,1,2,3)")
+                            || (ChangeResult.Checked && dh.CheckExist("makeserial", "MS_" + (de.Key.ToString() == "WIFI" ? "MAC" : de.Key) + "='" + de.Value + "' and  ms_status in (0,1,2,3) and ms_id <> '" + oMsid + "'")))
                         {
                             flag = false;
                             OperateResult.AppendText(">>" + de.Key + "已被使用,请重新输入TSN,重新转换\n", Color.Red);
@@ -590,6 +594,8 @@ namespace UAS_MES.Make
                             firstsn = dh.getFieldDataByCondition("makeserial", "ms_firstsn", "ms_id='" + oMsid + "' and  ms_beforesn='" + TSN + "'").ToString();
                             //记录本次修改,存入makesnrelation表中
                             updateSql = "update makeserial set ms_sncode='" + SN + "'," + s1.Remove(s1.Length - 1, 1).ToString() + " where ms_id='" + oMsid + "' and  ms_beforesn='" + TSN + "'";
+                            //删除最近一条转换记录
+                            dh.ExecuteSql("delete from makesnrelation where BEFORESN='" + TSN + "' and makecode='" + ms_macode.Text + "'", "delete");
                         }
                         //未勾选修改转换结果
                         else
@@ -607,12 +613,7 @@ namespace UAS_MES.Make
                         //记录日志
                         LogicHandler.DoCommandLog(Tag.ToString(), User.UserCode, ms_macode.Text, User.UserLineCode, User.UserSourceCode, "序列烧录转换", "转换成功", TSN, "");
                         //写入sninfo表
-                        insert2Sninfo(SN,TSN);
-                        if (ChangeResult.Checked)
-                        {
-                            //删除最近一条转换记录
-                            dh.ExecuteSql("delete from makesnrelation where BEFORESN='" + TSN + "' and makecode='" + ms_macode.Text + "' and sn <> '" + SN + "'", "delete");
-                        }
+                        insert2Sninfo(SN);
                         //输出提示用户“>>序列号转换成功”,“>>关联采集成功”
                         //完成该道工序 setFinish
                         if (LogicHandler.SetStepResult(ms_macode.Text, User.UserSourceCode, SN, "序列烧录转换", "序列烧录转换成功", User.UserCode, out errorMessage))
@@ -879,10 +880,8 @@ namespace UAS_MES.Make
                 OperateResult.AppendText("<<请输入TSN号\n", Color.Black);
             }
         }
-        private void insert2Sninfo(string sn,string tsn)
+        private void insert2Sninfo(string sn)
         {
-            //查询是否有记录
-            string siid = dh.getFieldDataByCondition("sninfo", "max(si_id) si_id", "si_sn in (select '"+tsn+"' from dual union select sn from makesnrelation where beforesn = '" + tsn + "' )").ToString();
             //是否为空
             if (siid == "")
             {

+ 2 - 2
UAS-MES/FunctionCode/Make/Make_UpdateCollectCode.cs

@@ -189,7 +189,7 @@ namespace UAS_MES.Make
                                     return;
                                 }
                                 //验证长度前缀通过,验证数据库
-                                if (dh.CheckExist("makeserial", "ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' ' and  ms_" + ((CheckBox)list[step - 1]).Text.Split('/')[0] + " ='" + inputValue.Text.Replace(":", "").Replace("-", "") + "'"))
+                                if (dh.CheckExist("makeserial", "ms_status in (0,1,2,3) and  ms_" + ((CheckBox)list[step - 1]).Text.Split('/')[0] + " ='" + inputValue.Text.Replace(":", "").Replace("-", "") + "'"))
                                 {
                                     OperateResult.AppendText("<<" + ((CheckBox)list[step - 1]).Text + ":" + inputValue.Text + "错误,已被使用\n", Color.Red, inputValue);
                                     return;
@@ -213,7 +213,7 @@ namespace UAS_MES.Make
                                 return;
                             }
                             //验证长度前缀通过,验证数据库
-                            if (dh.CheckExist("makeserial", "ms_status in (1,2,3) and nvl(ms_nextmacode,' ')=' ' and  ms_" + (((CheckBox)list[step - 1]).Text == "网标" ? "NETCODE" : ((CheckBox)list[step - 1]).Text) + " ='" + inputValue.Text + "'"))
+                            if (dh.CheckExist("makeserial", "ms_status in (0,1,2,3) and  ms_" + (((CheckBox)list[step - 1]).Text == "网标" ? "NETCODE" : ((CheckBox)list[step - 1]).Text) + " ='" + inputValue.Text + "'"))
                             {
                                 OperateResult.AppendText("<<" + ((CheckBox)list[step - 1]).Text + ":" + inputValue.Text + "错误,已被使用\n", Color.Red, inputValue);
                                 return;

+ 1 - 1
UAS-MES/PublicMethod/LogicHandler.cs

@@ -1242,7 +1242,7 @@ namespace UAS_MES.PublicMethod
                     break;
                 case "BARCODE":
                     //判定条码是否已经上料了
-                    dt = (DataTable)dh.ExecuteSql("select cm_barcode from craftmaterial where cm_barcode='" + iSN + "' cm_status=0", "select");
+                    dt = (DataTable)dh.ExecuteSql("select cm_barcode from craftmaterial where cm_barcode='" + iSN + "' and cm_status=0", "select");
                     if (dt.Rows.Count > 0)
                     {
                         ErrMessage = "条码" + iSN + "已经上料";