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

修改装箱BUG,数据发送中兴结构

callm 3 тижнів тому
батько
коміт
bf03cc5096

+ 11 - 83
UAS_MES_HYSX/FunctionCode/Make/Make_ImeiCheck_ThreeLabel.cs

@@ -107,7 +107,12 @@ namespace UAS_MES_NEW.Make
                 }
                 if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, sncode.Text, User.UserCode, out omakeCode, out oMsid, out oErrorMessage))
                 {
-
+                    sql.Clear();
+                    sql.Append("select ma_code,nvl(mcd_okqty,0) mcd_okqty,ma_prodcode,pr_detail,");
+                    sql.Append("ma_qty - nvl(mcd_okqty, 0) remain_qty 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 + "'");
+                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
+                    BaseUtil.SetFormValue(Controls, dt);
                 }
                 //输入的是SN
                 if (!isImei1 && !isImei2)
@@ -173,49 +178,8 @@ namespace UAS_MES_NEW.Make
                 else if (isImei1)
                 {
                     OperateResult.AppendText("<<" + sncode.Text + "\n", Color.Black);
-                    sql.Clear();
-                    sql.Append("select max(ms_id) ms_id from makeserial where ms_sncode ='" + sncode.Text + "'");
-                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                    if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                    {
-                        sql.Clear();
-                        sql.Append("select max(ms_id) ms_id from makeserial where ms_imei1 ='" + sncode.Text + "'");
-                        dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                        if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                        {
-                            sql.Clear();
-                            sql.Append("select max(ms_id) ms_id from makeserial where ms_imei2 ='" + sncode.Text + "'");
-                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                            if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                            {
-                                sql.Clear();
-                                sql.Append("select max(ms_id) ms_id from makeimeilist left join makeserial on mil_makecode=ms_makecode and mil_sncode=ms_sncode where mil_imei1 ='" + sncode.Text + "'");
-                                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                                {
-                                    sql.Clear();
-                                    sql.Append("select max(ms_id) ms_id from makeimeilist left join makeserial on mil_makecode=ms_makecode and mil_sncode=ms_sncode where mil_imei2 ='" + sncode.Text + "'");
-                                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                    if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                                    {
-                                        OperateResult.AppendText("<<SN错误,序列号" + sncode.Text + "不存在\n", Color.Red, sncode);
-                                        OperateResult.AppendText(">>请输入SN\n", Color.Black);
-                                        SetCheck set = new SetCheck("NG", Color.Red);
-                                        BaseUtil.SetFormCenter(set);
-                                        set.ShowDialog();
-                                    }
-                                }
-                            }
-                        }
-                    }
-                    sql.Clear();
-                    sql.Append("select ms_sncode from  makeserial  where ms_id='" + dt.Rows[0]["ms_id"].ToString() + "'");
-                    info = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                    if (info.Rows.Count > 0)
-                    {
-                        imei1 = info.Rows[0]["ms_sncode"].ToString();
-                    }
-                    if (imei1 == checksn)
+                    imei1 = sncode.Text;
+                    if (imei1.Contains(checksn))
                     {
                         OperateResult.AppendText("<<条码1核对成功\n", Color.Green, sncode);
                         OperateResult.AppendText(">>请输入需要核对的条码2\n", Color.Black);
@@ -242,50 +206,14 @@ namespace UAS_MES_NEW.Make
                 //输入的是imei1
                 else
                 {
-                    OperateResult.AppendText("<<" + sncode.Text + "\n", Color.Black);
                     sql.Clear();
-                    sql.Append("select max(ms_id) ms_id from makeserial where ms_sncode ='" + sncode.Text + "'");
-                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                    if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                    {
-                        sql.Clear();
-                        sql.Append("select max(ms_id) ms_id from makeserial where ms_imei1 ='" + sncode.Text + "'");
-                        dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                        if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                        {
-                            sql.Clear();
-                            sql.Append("select max(ms_id) ms_id from makeserial where ms_imei2 ='" + sncode.Text + "'");
-                            dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                            if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                            {
-                                sql.Clear();
-                                sql.Append("select max(ms_id) ms_id from makeimeilist left join makeserial on mil_makecode=ms_makecode and mil_sncode=ms_sncode where mil_imei1 ='" + sncode.Text + "'");
-                                dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                                {
-                                    sql.Clear();
-                                    sql.Append("select max(ms_id) ms_id from makeimeilist left join makeserial on mil_makecode=ms_makecode and mil_sncode=ms_sncode where mil_imei2 ='" + sncode.Text + "'");
-                                    dt = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
-                                    if (dt.Rows.Count == 0 || dt.Rows[0]["ms_id"].ToString() == "")
-                                    {
-                                        OperateResult.AppendText("<<SN错误,序列号" + sncode.Text + "不存在\n", Color.Red, sncode);
-                                        SetCheck set = new SetCheck("NG", Color.Red);
-                                        BaseUtil.SetFormCenter(set);
-                                        set.ShowDialog();
-                                        OperateResult.AppendText(">>请输入SN\n", Color.Black);
-                                    }
-                                }
-                            }
-                        }
-                    }
-                    sql.Clear();
-                    sql.Append("select ms_sncode from  makeserial  where ms_id='" + dt.Rows[0]["ms_id"].ToString() + "'");
+                    sql.Append("select ZD_SN from  ZTEDATA  where ZD_DEV_EN_NO='" + sncode.Text + "' and zd_makecode='" + ma_code.Text + "' order by zd_id desc");
                     info = (DataTable)dh.ExecuteSql(sql.GetString(), "select");
                     if (info.Rows.Count > 0)
                     {
-                        imei2 = info.Rows[0]["ms_sncode"].ToString();
+                        imei2 = info.Rows[0]["ZD_SN"].ToString();
                     }
-                    if (imei1 == checksn && imei2 == checksn)
+                    if (imei1.Contains(checksn) && imei2 == checksn)
                     {
                         //说明输入的imei1对比一致
                         //判断工序属性attribute

+ 2 - 26
UAS_MES_HYSX/FunctionCode/Packing/Packing_PackageCollection.cs

@@ -231,34 +231,10 @@ namespace UAS_MES_NEW.Packing
             {
                 if (LogicHandler.CheckStepAttribute(Tag.ToString(), User.UserSourceCode, out ErrorMessage))
                 {
-                    dt = (DataTable)dh.ExecuteSql("select ms_sncode from makeserial where ms_imei1='" + sn_code.Text + "' order by ms_id desc", "select");
+                    dt = (DataTable)dh.ExecuteSql("select ZD_SN from ZTEDATA where ZD_DEV_EN_NO='" + sn_code.Text+"'", "select");
                     if (dt.Rows.Count > 0)
                     {
-                        sn_code.Text = dt.Rows[0]["ms_sncode"].ToString();
-                    }
-                    else
-                    {
-                        dt = (DataTable)dh.ExecuteSql("select ms_sncode from makeserial where ms_imei2='" + sn_code.Text + "' order by ms_id desc", "select");
-                        if (dt.Rows.Count > 0)
-                        {
-                            sn_code.Text = dt.Rows[0]["ms_sncode"].ToString();
-                        }
-                        else
-                        {
-                            dt = (DataTable)dh.ExecuteSql("select mil_sncode from makeimeilist where mil_imei1='" + sn_code.Text + "' order by mil_id desc", "select");
-                            if (dt.Rows.Count > 0)
-                            {
-                                sn_code.Text = dt.Rows[0]["mil_sncode"].ToString();
-                            }
-                            else
-                            {
-                                dt = (DataTable)dh.ExecuteSql("select mil_sncode from makeimeilist where mil_imei2='" + sn_code.Text + "' order by mil_id desc", "select");
-                                if (dt.Rows.Count > 0)
-                                {
-                                    sn_code.Text = dt.Rows[0]["mil_sncode"].ToString();
-                                }
-                            }
-                        }
+                        sn_code.Text = dt.Rows[0]["ZD_SN"].ToString();
                     }
                     dt = (DataTable)dh.ExecuteSql("select ms_status,ms_id,ms_makecode,ms_nextstepcode,ms_craftcode,ms_prodcode from makeserial where ms_sncode ='" + sn_code.Text + "' order by ms_id desc", "select");
                     if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, sn_code.Text, User.UserCode, out oMakeCode, out oMsID, out ErrorMessage) || (dt.Rows.Count > 0 && dt.Rows[0]["ms_status"].ToString() == "2"))

+ 3 - 27
UAS_MES_HYSX/FunctionCode/Packing/Packing_PackageCollectionZX.cs

@@ -219,34 +219,10 @@ namespace UAS_MES_NEW.Packing
             {
                 if (LogicHandler.CheckStepAttribute(Tag.ToString(), User.UserSourceCode, out ErrorMessage))
                 {
-                    dt = (DataTable)dh.ExecuteSql("select ms_sncode from makeserial where ms_imei1='" + sn_code.Text + "' order by ms_id desc", "select");
+                    dt = (DataTable)dh.ExecuteSql("select ZD_SN from ZTEDATA where ZD_DEV_EN_NO='" + sn_code.Text + "'", "select");
                     if (dt.Rows.Count > 0)
                     {
-                        sn_code.Text = dt.Rows[0]["ms_sncode"].ToString();
-                    }
-                    else
-                    {
-                        dt = (DataTable)dh.ExecuteSql("select ms_sncode from makeserial where ms_imei2='" + sn_code.Text + "' order by ms_id desc", "select");
-                        if (dt.Rows.Count > 0)
-                        {
-                            sn_code.Text = dt.Rows[0]["ms_sncode"].ToString();
-                        }
-                        else
-                        {
-                            dt = (DataTable)dh.ExecuteSql("select mil_sncode from makeimeilist where mil_imei1='" + sn_code.Text + "' order by mil_id desc", "select");
-                            if (dt.Rows.Count > 0)
-                            {
-                                sn_code.Text = dt.Rows[0]["mil_sncode"].ToString();
-                            }
-                            else
-                            {
-                                dt = (DataTable)dh.ExecuteSql("select mil_sncode from makeimeilist where mil_imei2='" + sn_code.Text + "' order by mil_id desc", "select");
-                                if (dt.Rows.Count > 0)
-                                {
-                                    sn_code.Text = dt.Rows[0]["mil_sncode"].ToString();
-                                }
-                            }
-                        }
+                        sn_code.Text = dt.Rows[0]["ZD_SN"].ToString();
                     }
                     dt = (DataTable)dh.ExecuteSql("select ms_status,ms_id,ms_makecode,ms_nextstepcode,ms_craftcode,ms_prodcode from makeserial where ms_sncode ='" + sn_code.Text + "' order by ms_id desc", "select");
                     if (LogicHandler.CheckStepSNAndMacode(ma_code.Text, User.UserSourceCode, sn_code.Text, User.UserCode, out oMakeCode, out oMsID, out ErrorMessage) || (dt.Rows.Count > 0 && dt.Rows[0]["ms_status"].ToString() == "2"))
@@ -633,7 +609,7 @@ namespace UAS_MES_NEW.Packing
                 string Seal = MessageBox.Show(this.ParentForm, "是否确认封箱?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question).ToString();
                 if (Seal == "Yes")
                 {
-                    HttpServer.SendBoxData(pa_outboxcode.Text);
+                    //HttpServer.SendBoxData(pa_outboxcode.Text);
                     HttpServer.GetOutBoxInfo(pa_outboxcode.Text);
                     OperateResult.AppendText(">>箱号" + pa_outboxcode.Text + "采集完成,手动封箱成功\n", Color.Green);
                     dh.UpdateByCondition("package", "pa_status=1,pa_totalqty=pa_currentqty,pa_packageqty=pa_currentqty", "pa_outboxcode='" + pa_outboxcode.Text + "'");

+ 11 - 2
UAS_MES_HYSX/PublicMethod/HttpServer.cs

@@ -7,6 +7,7 @@ using System.Net;
 using System.Net.Sockets;
 using System.Security.Cryptography;
 using System.Text;
+using System.Text.RegularExpressions;
 using System.Threading;
 using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
@@ -394,7 +395,7 @@ namespace UAS_MES_NEW.PublicMethod
                 HashKey = ComputeSha256Hash(sn)
             });
             dt = (DataTable)dh.ExecuteSql("select pd_barcode from packagedetail where pd_outboxcode='" + iBox + "'", "select");
-            DataTable dt1 = (DataTable)dh.ExecuteSql("select pid_item,pid_value,pid_valuetype from productitem left join productitemdetail on pid_piid=pi_id where pi_prodcode='" + pr_code + "'", "select");
+            DataTable dt1 = (DataTable)dh.ExecuteSql("select pid_sql,pid_item,pid_value,pid_valuetype from productitem left join productitemdetail on pid_piid=pi_id where pi_prodcode='" + pr_code + "'", "select");
             for (int i = 0; i < dt.Rows.Count; i++)
             {
                 for (int j = 0; j < dt1.Rows.Count; j++)
@@ -413,6 +414,14 @@ namespace UAS_MES_NEW.PublicMethod
                     }
                     else
                     {
+                        string sql = dt.Rows[i]["pid_sql"].ToString();
+                        Regex ConnoteA = new Regex("{\\w+}");
+                        foreach (Match mch in ConnoteA.Matches(sql))
+                        {
+                            string x = mch.Value.Trim();
+                            sql = sql.Replace(x, "'" + dt.Rows[i]["pd_barcode"].ToString() + "'");
+                        }
+                        DataTable Param = (DataTable)dh.ExecuteSql(sql.ToString(), "select");
                         root.BindList.Add(new BindItem
                         {
                             BindKey = "mac",
@@ -459,7 +468,7 @@ namespace UAS_MES_NEW.PublicMethod
         {
             dynamic obj = new ExpandoObject();
             var expandoDict = obj as IDictionary<string, object>;
-            DataTable dt = (DataTable)dh.ExecuteSql("select pd_barcode,pd_makecode,ZD_DEV_EN_NO from packagedetail left join ZTEDATA on zd_makecode=pd_makecode and pd_barcode=zd_sn left join make on ma_code=pd_makecode  where pd_outboxcode='" + iBox + "'", "select");
+            DataTable dt = (DataTable)dh.ExecuteSql("select ma_custpo,pd_barcode,pd_makecode,ZD_DEV_EN_NO from packagedetail left join ZTEDATA on zd_makecode=pd_makecode and pd_barcode=zd_sn left join make on ma_code=pd_makecode  where pd_outboxcode='" + iBox + "'", "select");
             string makecode = "";
             string po = "";
             for (int i = 0; i < dt.Rows.Count; i++)