Selaa lähdekoodia

添加拼版数过数

callm 12 tuntia sitten
vanhempi
commit
5a0e753c6a

+ 11 - 4
UAS_MES_YTDZ/FunctionCode/Make/Make_TestCollection.cs

@@ -1216,10 +1216,17 @@ namespace UAS_MES_NEW.Make
                     OperateResult.AppendText(">已采集数量" + sumcount + ",本次采集数量" + pr_pcbacount.Value * count + ",超出工单数量" + ma_qty.Text + "\n", Color.Red, SNCount);
                     return;
                 }
-                dh.ExecuteSql("insert into makehourcount(mhc_id,mhc_macode,mhc_indate,MHC_SOURCECODE,mhc_stepcode, MHC_INMAN,mhc_qty,mhc_linecode,mhc_pcbcount)" +
-                    "values(makehourcount_seq.nextval,'" + ma_code.Text + "',sysdate,'" + User.UserSourceCode + "','" + User.CurrentStepCode + "','" + User.UserCode + "','" + pr_pcbacount.Value * count + "','" + User.UserLineCode + "','" + pr_pcbacount.Value + "')", "insert");
-                OperateResult.AppendText(">采集成功,个数量" + count + ",拼板产品数" + pr_pcbacount.Value * count + "\n", Color.Green, SNCount);
-                return;
+                if (LogicHandler.UpdateStencil(ma_code.Text, User.UserSourceCode, (pr_pcbacount.Value * count).ToString(), User.UserCode, out ErrorMessage))
+                {
+                    dh.ExecuteSql("insert into makehourcount(mhc_id,mhc_macode,mhc_indate,MHC_SOURCECODE,mhc_stepcode, MHC_INMAN,mhc_qty,mhc_linecode,mhc_pcbcount)" +
+                       "values(makehourcount_seq.nextval,'" + ma_code.Text + "',sysdate,'" + User.UserSourceCode + "','" + User.CurrentStepCode + "','" + User.UserCode + "','" + pr_pcbacount.Value * count + "','" + User.UserLineCode + "','" + pr_pcbacount.Value + "')", "insert");
+                    OperateResult.AppendText(">采集成功,个数量" + count + ",拼板产品数" + pr_pcbacount.Value * count + "\n", Color.Green, SNCount);
+                    return;
+                }
+                else
+                {
+                    OperateResult.AppendText(">" + ErrorMessage + "\n", Color.Red, SNCount);
+                }
             }
         }
     }

+ 19 - 9
UAS_MES_YTDZ/PublicMethod/LogicHandler.cs

@@ -68,6 +68,14 @@ namespace UAS_MES_NEW.PublicMethod
             SerialNum = param[2];
         }
 
+        public static void UpdateStencil(string iMakecode, string iSource, string iQTY, string iUserCode, out string Error)
+        {
+            Error = "";
+            string[] param = new string[] { iMakecode, iSource, iQTY.ToString(), iUserCode, Error };
+            dh.CallProcedure("CS_MACOUNTPASS", ref param);
+            Error = param[4];
+        }
+
         /// <summary>
         /// 验证用户身份信息
         /// </summary>
@@ -591,7 +599,7 @@ namespace UAS_MES_NEW.PublicMethod
             {
                 if (iMakeCode != oMakeCode && oMakeCode != "" && iMakeCode != "" && oStatus != "2")
                 {
-                    string ChangeMakeCode = System.Windows.Forms.MessageBox.Show("序列号" + iSN + "所属工单"+ oMakeCode + "与当前工单"+ iMakeCode + "不同,是否切换?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
+                    string ChangeMakeCode = System.Windows.Forms.MessageBox.Show("序列号" + iSN + "所属工单" + oMakeCode + "与当前工单" + iMakeCode + "不同,是否切换?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
                     //如果选择不切换赋值当前界面工单
                     if (ChangeMakeCode != "Yes")
                     {
@@ -632,7 +640,7 @@ namespace UAS_MES_NEW.PublicMethod
             {
                 if (iSNMakecode != ctl.Text && ctl.Text != "")
                 {
-                    string ChangeMakeCode = System.Windows.Forms.MessageBox.Show("序列号" + iSN + "所属工单"+ iSNMakecode+"与当前工单"+ ctl.Text + "不同,是否切换?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
+                    string ChangeMakeCode = System.Windows.Forms.MessageBox.Show("序列号" + iSN + "所属工单" + iSNMakecode + "与当前工单" + ctl.Text + "不同,是否切换?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
                     //如果选择不切换赋值当前界面工单
                     if (ChangeMakeCode == "Yes")
                     {
@@ -783,7 +791,7 @@ namespace UAS_MES_NEW.PublicMethod
                 dh.ExecuteSql("delete from oqcbatchdetail where obd_sncode='" + iSnCode + "'", "delete");
             }
             //删除SMT版绑定关系
-           // dh.ExecuteSql("delete from smtbind where sb_barcode = '"+iSnCode+"' and sb_makecode = '"+ iMakeCode + "'", "delete");
+            // dh.ExecuteSql("delete from smtbind where sb_barcode = '"+iSnCode+"' and sb_makecode = '"+ iMakeCode + "'", "delete");
             //之前保存的不良就不再调用
             DataTable dt = dh.getFieldsDataByCondition("makeserial", new string[] { "ms_stepcode", "nvl(ms_ifrework,0)ms_ifrework", "ms_status" }, "ms_sncode='" + iSnCode + "' and ms_makecode='" + iMakeCode + "'");
             if (dt.Rows.Count > 0)
@@ -1412,23 +1420,25 @@ namespace UAS_MES_NEW.PublicMethod
                     oErrMsg = "序列号:" + iSN + "长度错误,不满足产品防呆规则!";
                     return false;
                 }
-                if (psr_prefix.Length>iSN.Length|| iSN.Substring(0, psr_prefix.Length) != psr_prefix)
+                if (psr_prefix.Length > iSN.Length || iSN.Substring(0, psr_prefix.Length) != psr_prefix)
                 {
                     oErrMsg = "序列号:" + iSN + "前缀错误,不满足产品防呆规则!";
                     return false;
                 }
             }
             //判断维护号段范围
-            dt = (DataTable)dh.ExecuteSql("select 1 from makesnruledetail where msd_makecode='"+iMakeCode+"'", "select");
-            if (dt.Rows.Count > 0) {
-                dt = (DataTable)dh.ExecuteSql("select 1 from makesnruledetail where msd_makecode='" + iMakeCode + "' and msd_sncode='"+iSN+"'", "select");
-                if (dt.Rows.Count == 0) {
+            dt = (DataTable)dh.ExecuteSql("select 1 from makesnruledetail where msd_makecode='" + iMakeCode + "'", "select");
+            if (dt.Rows.Count > 0)
+            {
+                dt = (DataTable)dh.ExecuteSql("select 1 from makesnruledetail where msd_makecode='" + iMakeCode + "' and msd_sncode='" + iSN + "'", "select");
+                if (dt.Rows.Count == 0)
+                {
                     oErrMsg = "序列号:" + iSN + "不在工单防呆起始结束范围内!";
                     return false;
                 }
             }
             //判断导入清单范围
-            dt = (DataTable)dh.ExecuteSql("select 1 from makesnlist where msl_makecode='"+iMakeCode+"'", "select");
+            dt = (DataTable)dh.ExecuteSql("select 1 from makesnlist where msl_makecode='" + iMakeCode + "'", "select");
             if (dt.Rows.Count > 0)
             {
                 dt = (DataTable)dh.ExecuteSql("select 1 from makesnlist where msd_makecode='" + iMakeCode + "' and msl_sncode='" + iSN + "'", "select");