Browse Source

机身标打印,取消采集优化

callm 3 months ago
parent
commit
d3e0dfa368

+ 8 - 3
UAS_MES_ODLF/FunctionCode/Make/Make_FuselageLabelPrintGetIMEI.cs

@@ -124,17 +124,19 @@ namespace UAS_MES_NEW.Make
                     if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, sncode.Text, User.UserCode, out oMakeCode, out oMsId, out oErrorMessage))
                     {
                         //IF (如果ma_code 为空)THEN
+                        string pr_getpsn = "";
                         if (ma_code.Text == "" || ma_code.Text != oMakeCode)
                         {
                             //获取工单的其他信息
                             sql.Clear();
-                            sql.Append("select ma_code,nvl(mcd_okqty,0),ma_prodcode,pr_detail,nvl(ma_unlimitin,0)ma_unlimitin,");
+                            sql.Append("select ma_code,nvl(pr_getpsn,0)pr_getpsn,nvl(mcd_okqty,0),ma_prodcode,pr_detail,nvl(ma_unlimitin,0)ma_unlimitin,");
                             sql.Append("pr_spec,ma_qty - nvl(mcd_inqty, 0) mcd_remainqty from make left join makecraftdetail on ");
                             sql.Append("mcd_maid=ma_id left join product on pr_code=ma_prodcode where ma_code='" + oMakeCode + "' and mcd_stepcode='" + User.CurrentStepCode + "'");
                             mapB = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                             //如果有数据的话
                             if (mapB.Rows.Count > 0)
                             {
+                                pr_getpsn = mapB.Rows[0]["pr_getpsn"].ToString();
                                 ma_unlimitin = mapB.Rows[0]["ma_unlimitin"].ToString();
                                 //将工单的其他信息赋值到对应的控件
                                 BaseUtil.SetFormValue(this.Controls, mapB);
@@ -187,6 +189,7 @@ namespace UAS_MES_NEW.Make
                             string oID1 = "";
                             string oID2 = "";
                             string oID3 = "";
+                            pr_getpsn = dh.getFieldDataByCondition("Make left join product on pr_code=ma_prodcode", "pr_getpsn", "ma_code='" + oMakeCode + "'").ToString();
                             if (!LogicHandler.GetMEIOrNetCodeRange(sncode.Text, ma_code.Text, "", "", out oIMEI1, out oIMEI2, out oMEID, out oNetcode, out oPSN, out oID1, out oID2, out oID3, out oErrorMessage))
                             {
                                 OperateResult.AppendText(">>" + oErrorMessage + "\n", Color.Red);
@@ -197,8 +200,10 @@ namespace UAS_MES_NEW.Make
                                 OperateResult.AppendText(">>" + oErrorMessage + "\n", Color.Red);
                                 return;
                             }
-                            //string PSN = "";
-                            //LogicHandler.GetPSN(oMsId, out PSN);
+                            if (pr_getpsn != "0" && pr_getpsn != "")
+                            {
+                                LogicHandler.GetPSN(oMsId, out oPSN);
+                            }
                             dh.ExecuteSql("update makeserial set ms_sncode='" + oPSN + "',ms_firstsn='" + oPSN + "',ms_tsn='" + sncode.Text + "' where ms_id='" + oMsId + "' ", "update");
                             //string oBT = "";
                             //string oWifi = "";

+ 1 - 1
UAS_MES_ODLF/FunctionCode/Make/Make_ReWorkPrintLabel.cs

@@ -117,7 +117,7 @@ namespace UAS_MES_NEW.Make
                 if (giftBox.Checked || fuselagel.Checked || pitao.Checked)
                 {
                     //select max(ms_id)ms_id from makeserial where ms_sncode=? 
-                    ms_id = dh.getFieldDataByCondition("makeserial", "max(ms_id) ms_id", "ms_sncode='" + inputText.Text + "' or ms_firstsn='" + inputText.Text + "' or ms_imei1='" + inputText.Text + "' or ms_imei2='" + inputText.Text + "'").ToString();
+                    ms_id = dh.getFieldDataByCondition("makeserial", "max(ms_id) ms_id", "ms_sncode='" + inputText.Text + "' or ms_code='" + inputText.Text + "' or ms_imei1='" + inputText.Text + "' or ms_imei2='" + inputText.Text + "'").ToString();
                     //如果ms_id 无值或者为空,提示用户SN不存在,请输入SN
                     if (ms_id == "")
                     {

+ 5 - 4
UAS_MES_ODLF/FunctionCode/Special/Special_CancelCollection.cs

@@ -24,10 +24,11 @@ namespace UAS_MES_NEW.Special
         private void Confirm_Click(object sender, EventArgs e)
         {
             //获取序列号的途程
-            DataTable dt = (DataTable)dh.ExecuteSql("select ms_firstsn,ms_sncode,ms_id,ms_nextstepcode,ms_currentstepcode,ms_outboxcode,ms_makecode,ms_status,ms_checkno,ms_craftcode,ms_prodcode,ms_stepcode from makeserial where ms_sncode='" + sn_code.Text + "' or ms_imei1='" + sn_code.Text + "' and ms_outboxcode is null order by ms_id desc", "select");
+            DataTable dt = (DataTable)dh.ExecuteSql("select ms_code,ms_firstsn,ms_sncode,ms_id,ms_nextstepcode,ms_currentstepcode,ms_outboxcode,ms_makecode,ms_status,ms_checkno,ms_craftcode,ms_prodcode,ms_stepcode from makeserial where ms_sncode='" + sn_code.Text + "' or ms_imei1='" + sn_code.Text + "' and ms_outboxcode is null order by ms_id desc", "select");
             if (dt.Rows.Count > 0)
             {
                 string ms_outboxcode = dt.Rows[0]["ms_outboxcode"].ToString();
+                string ms_code = dt.Rows[0]["ms_code"].ToString();
                 string ms_firstsn = dt.Rows[0]["ms_firstsn"].ToString();
                 string ms_sncode = dt.Rows[0]["ms_sncode"].ToString();
                 string pr_code = dt.Rows[0]["ms_prodcode"].ToString();
@@ -61,7 +62,7 @@ namespace UAS_MES_NEW.Special
                 }
                 else
                 {
-                    sqls.Add("update makecraftdetail set mcd_inqty=mcd_inqty-1,mcd_outqty=mcd_outqty-1,mcd_okqty=mcd_okqty-1 where mcd_macode='" + ms_makecode + "' and instr((select ms_paststep from makeserial where ms_sncode='" + sn_code.Text + " and ms_makecode='" + ms_makecode + "''),mcd_stepcode)>0 ");
+                    sqls.Add("update makecraftdetail set mcd_inqty=mcd_inqty-1,mcd_outqty=mcd_outqty-1,mcd_okqty=mcd_okqty-1 where mcd_macode='" + ms_makecode + "' and instr((select ms_paststep from makeserial where ms_sncode='" + sn_code.Text + "' and ms_makecode='" + ms_makecode + "'),mcd_stepcode)>0 ");
                 }
                 sqls.Add("delete from makebad where mb_sncode='" + ms_sncode + "' and mb_makecode='" + ms_makecode + "'");
                 if (ms_checkno != "")
@@ -92,7 +93,7 @@ namespace UAS_MES_NEW.Special
                     dh.BatchInsert(sql.GetString(), new string[] { "barcode" }, barcode.ToArray());
                     sqls.Add("delete from craftmaterial where cm_sncode='" + ms_sncode + "' and cm_makecode='" + ms_makecode + "'");
                 }
-                sqls.Add("delete from sninfo where si_sn='" + ms_sncode + "' or si_sn='" + ms_firstsn + "'");
+                sqls.Add("delete from sninfo where si_sn='" + ms_sncode + "' or si_sn='" + ms_code + "'");
                 sqls.Add("update makeaddresslist set mal_sncode='',mal_status=0 where mal_sncode='" + ms_sncode + "'");
                 //删除打印日志
                 sqls.Add("delete from labelprintlog where lpl_value='" + ms_sncode + "' and lpl_makecode='" + ms_makecode + "'");
@@ -105,7 +106,7 @@ namespace UAS_MES_NEW.Special
                 //更新MAC使用记录
                 sqls.Add("update  makeaddresslist set mal_status=0,mal_sncode='' where mal_sncode='" + ms_sncode + "' and mal_makecode='" + ms_makecode + "'");
                 sqls.Add("delete from makesnrelation where (sn='" + ms_sncode + "' or beforesn='" + ms_sncode + "') and makecode='" + ms_makecode + "'");
-
+                sqls.Add("delete from  makesnlist  where MSL_BEFORESN in ('" + ms_sncode + "','"+ ms_code + "') and msl_makecode='" + ms_makecode + "' and msl_type='after'");
                 sqls.Add("update makesnlist set msl_status=0,msl_sncode='' where msl_sncode='" + ms_sncode + "' and msl_makecode='" + ms_makecode + "' and msl_type='before'");
                 ////初始化号段状态
                 sqls.Add("update MAKESNRULEDETAIL set msd_status=0 where msd_sncode='" + ms_sncode + "' and msd_makecode='" + ms_makecode + "'  and msd_type='before'");