yusijie
20 小时以前 6841301e31bb79d9c7899f7a1578f9869f22899e
WebAPI/Controllers/»ªÔ¶datamapping/HY_DataMappingController.cs
@@ -14,6 +14,43 @@
namespace WebAPI.Controllers
{
    #region åŽè¿œè¯·æ±‚基础资料
    #region ç‚¬æ£®VRS内层提取上传二维码位置接口 ç›¸å…³æ¨¡åž‹ç±»
    public class VRSInner_savePNLBarCodePosition_RequestParams
    {
        public string HBarCode_PNL;                         //PNL条码编号
        public string HPosition_x;                      //二维码x坐标
        public string HPosition_y;                      //二维码y坐标
    }
    public class VRSInner_savePNLBarCodePosition_RequestResult
    {
        public string code;
        public string msg;
    }
    #endregion
    #region ç‚¬æ£®VRS内层获取PNL二维码位置信息接口 ç›¸å…³æ¨¡åž‹ç±»
    public class VRSInner_getPNLBarCodePosition_RequestParams
    {
        public string HBarCode_PNL;                      //PNL条码编号
    }
    public class VRSInner_getPNLBarCodePosition_RequestResult
    {
        public string code;
        public string msg;
        public List<VRSInner_getPNLBarCodePosition_RequestResult_data> data;
    }
    public class VRSInner_getPNLBarCodePosition_RequestResult_data
    {
        public string HBarCode_PNL;                     //PNL条码号
        public double HPosition_x;                      //二维码x坐标
        public double HPosition_y;                      //二维码y坐标
    }
    #endregion
    #region ç‚¬æ£®VRS内层检验结果上传接口 ç›¸å…³æ¨¡åž‹ç±»
    public class VRSInner_saveCheckNote_RequestParams
    {
@@ -36,6 +73,42 @@
        public string code;
        public string msg;
    }
    #endregion
    #region ç‚¬æ£®VRS外层提取上传二维码位置接口 ç›¸å…³æ¨¡åž‹ç±»
    public class VRSOuter_saveSetBarCodePosition_RequestParams
    {
        public string HBarCode_Set;                     //Set条码编号
        public string HPosition_x;                      //二维码x坐标
        public string HPosition_y;                      //二维码y坐标
    }
    public class VRSOuter_saveSetBarCodePosition_RequestResult
    {
        public string code;
        public string msg;
    }
    #endregion
    #region ç‚¬æ£®VRS外层获取set二维码位置信息接口 ç›¸å…³æ¨¡åž‹ç±»
    public class VRSOuter_getSetBarCodePosition_RequestParams
    {
        public string HBarCode_Set;                      //set条码编号
    }
    public class VRSOuter_getSetBarCodePosition_RequestResult
    {
        public string code;
        public string msg;
        public List<VRSOuter_getSetBarCodePosition_RequestResult_data> data;
    }
    public class VRSOuter_getSetBarCodePosition_RequestResult_data
    {
        public string HBarCode_Set;                     //Set条码号
        public double HPosition_x;                      //二维码x坐标
        public double HPosition_y;                      //二维码y坐标
    }
    #endregion
    #region ç‚¬æ£®VRS外层获取datamapping接口 ç›¸å…³æ¨¡åž‹ç±»
@@ -208,6 +281,97 @@
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
        DataSet ds;
        #region ç‚¬æ£®VRS内层提取上传PNL二维码位置 æŽ¥å£
        [Route("VRSInner/VRSInner_savePNLBarCodePosition")]
        [HttpGet]
        public VRSInner_savePNLBarCodePosition_RequestResult VRSInner_savePNLBarCodePosition(string HBarCode_PNL,double HPNLPosition_x,double HPNLPosition_y)
        {
            VRSInner_savePNLBarCodePosition_RequestResult result = new VRSInner_savePNLBarCodePosition_RequestResult();
            try
            {
                string HLayOutName = "";                                            //PNL条码编号对应的PNL布局名称
                string sql = @"
                    select b.HLayOutName
                    from Gy_BarCodeBill_PNL_Temp as a
                    inner join Gy_PNLInfo as b on a.HLayOutName = b.HLayOutName
                    where a.HBarCode = '" + HBarCode_PNL + "'";
                ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill_PNL_Temp");
                if (ds.Tables[0].Rows.Count == 0)
                {
                    result.code = "0";
                    result.msg = "上传失败!!料号信息不存在!!";
                    return result;
                }
                else
                {
                    HLayOutName = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HLayOutName"]);
                }
                string sql_save = "" +
                    "update Gy_PNLInfo set HPNLPosition_x = " + HPNLPosition_x + ",HPNLPosition_y = " + HPNLPosition_y + " where HLayOutName = '" + HLayOutName + "'";
                oCN.RunProc(sql_save);
                result.code = "1";
                result.msg = "上传成功";
                return result;
            }
            catch (Exception e)
            {
                result.code = "0";
                result.msg = "" + e.Message;
                return result;
            }
        }
        #endregion
        #region ç‚¬æ£®VRS内层获取PNL二维码位置信息 æŽ¥å£
        [Route("VRSInner/VRSInner_getPNLBarCodePosition")]
        [HttpGet]
        public VRSInner_getPNLBarCodePosition_RequestResult VRSInner_getPNLBarCodePosition(string HBarCode_PNL)
        {
            VRSInner_getPNLBarCodePosition_RequestResult result = new VRSInner_getPNLBarCodePosition_RequestResult();
            List<VRSInner_getPNLBarCodePosition_RequestResult_data> dataList = new List<VRSInner_getPNLBarCodePosition_RequestResult_data>();
            try
            {
                string sql = @"
                    select top(1) b.*
                    from Gy_BarCodeBill_PNL_Temp as a
                    inner join Gy_PNLInfo as b on a.HLayOutName = b.HLayOutName
                    where a.HBarCode = '" + HBarCode_PNL + "'";
                ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill_PNL_Temp");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    result.code = "0";
                    result.msg = "PNL二维码烧蚀位置信息获取失败!!当前PNL二维码对应料号未设置默认烧蚀位置!!";
                    result.data = null;
                    return result;
                }
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    VRSInner_getPNLBarCodePosition_RequestResult_data data = new VRSInner_getPNLBarCodePosition_RequestResult_data();
                    data.HBarCode_PNL = HBarCode_PNL;
                    data.HPosition_x = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HPNLPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HPNLPosition_y"]);
                    dataList.Add(data);
                }
                result.code = "1";
                result.msg = "";
                result.data = dataList;
                return result;
            }
            catch (Exception e)
            {
                result.code = "0";
                result.msg = "" + e.Message;
                result.data = null;
                return result;
            }
        }
        #endregion
        #region ç‚¬æ£®VRS内层检验结果上传接口
        [Route("VRSInner/VRSInner_saveCheckNote")]
@@ -292,6 +456,167 @@
        }
        #endregion
        #region ç‚¬æ£®VRS外层提取上传set二维码位置 æŽ¥å£
        [Route("VRSOuter/VRSOuter_saveSetBarCodePosition")]
        [HttpGet]
        public VRSOuter_saveSetBarCodePosition_RequestResult VRSOuter_saveSetBarCodePosition(string HBarCode_Set, double HSetPosition_x, double HSetPosition_y)
        {
            VRSOuter_saveSetBarCodePosition_RequestResult result = new VRSOuter_saveSetBarCodePosition_RequestResult();
            try
            {
                string HLayOutName = "";                                            //Set条码编号对应的PNL布局名称
                string HSetNo = "";                                                 //set号
                string sql = @"
                    select distinct
                       c.HLayOutName
                       ,d.HSetNo
                    from Gy_BarCodeBill_Set_Temp as a
                    inner join Gy_BarCodeBill_PNL_Temp as b on a.HBarCode_PNL = b.HBarCode
                    inner join Gy_PNLInfo as c on b.HLayOutName = c.HLayOutName
                    inner join Gy_PNLInfoSub as d on c.HInterID = d.HInterID
                    where b.HBarCode + d.HSetNo = a.HBarCode
                    and a.HBarCode = '" + HBarCode_Set + "'";
                ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill_Set_Temp");
                if (ds.Tables[0].Rows.Count == 0)
                {
                    result.code = "0";
                    result.msg = "上传失败!!料号信息不存在!!";
                    return result;
                }
                else
                {
                    HLayOutName = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HLayOutName"]);
                    HSetNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HSetNo"]);
                }
                string sql_save = "" +
                    "update b set " +
                    "b.HSetPosition_x = " + HSetPosition_x + " " +
                    ",b.HSetPosition_y = " + HSetPosition_y +" " +
                    "from Gy_PNLInfo as a " +
                    "inner join Gy_PNLInfoSub as b on a.HInterID = b.HInterID " +
                    "where a.HLayOutName = '" + HLayOutName + "' " +
                    "and b.HSetNo = '" + HSetNo + "'";
                oCN.RunProc(sql_save);
                result.code = "1";
                result.msg = "上传成功";
                return result;
            }
            catch (Exception e)
            {
                result.code = "0";
                result.msg = "" + e.Message;
                return result;
            }
        }
        #endregion
        #region ç‚¬æ£®VRS外层获取Set二维码位置信息 æŽ¥å£
        [Route("VRSOuter/VRSOuter_getSetBarCodePosition")]
        [HttpGet]
        public VRSOuter_getSetBarCodePosition_RequestResult VRSOuter_getSetBarCodePosition(string HBarCode_Set)
        {
            VRSOuter_getSetBarCodePosition_RequestResult result = new VRSOuter_getSetBarCodePosition_RequestResult();
            List<VRSOuter_getSetBarCodePosition_RequestResult_data> dataList = new List<VRSOuter_getSetBarCodePosition_RequestResult_data>();
            try
            {
                string sql = @"
                    select distinct
                       d.HSetNo
                        ,d.HSetPosition_x
                        ,d.HSetPosition_y
                    from Gy_BarCodeBill_Set_Temp as a
                    inner join Gy_BarCodeBill_PNL_Temp as b on a.HBarCode_PNL = b.HBarCode
                    inner join Gy_PNLInfo as c on b.HLayOutName = c.HLayOutName
                    inner join Gy_PNLInfoSub as d on c.HInterID = d.HInterID
                    where b.HBarCode + d.HSetNo = a.HBarCode
                    and a.HBarCode = '" + HBarCode_Set + "'";
                ds = oCN.RunProcReturn(sql, "Gy_BarCodeBill_PNL_Temp");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    result.code = "0";
                    result.msg = "Set二维码烧蚀位置信息获取失败!!当前Set二维码对应料号未设置默认烧蚀位置!!";
                    result.data = null;
                    return result;
                }
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    VRSOuter_getSetBarCodePosition_RequestResult_data data = new VRSOuter_getSetBarCodePosition_RequestResult_data();
                    data.HBarCode_Set = HBarCode_Set;
                    data.HPosition_x = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HSetPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isDoule(ds.Tables[0].Rows[i]["HSetPosition_y"]);
                    dataList.Add(data);
                }
                result.code = "1";
                result.msg = "";
                result.data = dataList;
                return result;
            }
            catch (Exception e)
            {
                result.code = "0";
                result.msg = "" + e.Message;
                result.data = null;
                return result;
            }
        }
        #endregion
        #region ç‚¬æ£®VRS内层申请PNL条码接口
        /// <summary>
        /// ç”³è¯·PNL条码接口
        /// </summary>
        /// <returns></returns>
        [Route("VRSInner/VRSInner_getBarCodeBill_PNL")]
        [HttpGet]
        public object VRSInner_getBarCodeBill_PNL(string HLayOutName, string HMaker)
        {
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_PNL_Temp_Insert '" + HLayOutName + "','" + HMaker + "'", "h_p_Gy_BarCodeBill_PNL_Temp_Insert");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "写入获取PNL条码时发生错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;  //失败!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;  //成功!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = ds.Tables[0].Rows[0]["HBarCode"].ToString();
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "申请PNL条码接口失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region ç‚¬æ£®VRS外层获取datamapping数据 æŽ¥å£
        [Route("VRSOuter/VRSOuter_getDataMapping")]
        [HttpGet]
@@ -302,17 +627,19 @@
            try
            {
                string sql = "" +
                    //"select * from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode + "' " +
                    "select distinct * from (" +
                    //"select HBarCode,HPCSNo from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode + "' " +
                    //"union " +
                    "select * from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode + "'";
                    "select HBarCode,HPCSNo from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode + "' " +
                    ") as a";
                ds = oCN.RunProcReturn(sql, "QC_CheckNote_PNL_Temp");
                for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    VRSOuter_getDataMapping_RequestResult_data data = new VRSOuter_getDataMapping_RequestResult_data();
                    data.HBarCode = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode"]); 
                    data.HPCSNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HPCSNo"]);
                    data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    //data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    //data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    dataList.Add(data);
                }
@@ -414,6 +741,62 @@
        }
        #endregion
        #region ç‚¬æ£®VRS外层申请set条码接口
        /// <summary>
        /// ç”³è¯·set条码接口
        /// </summary>
        /// <returns></returns>
        [Route("VRSOuter/VRSOuter_getBarCodeBill_SET")]
        [HttpGet]
        public object VRSOuter_getBarCodeBill_SET(string HBarCode_PNL, string HMaker)
        {
            try
            {
                ds = oCN.RunProcReturn("exec h_p_Gy_BarCodeBill_Set_Temp_Insert '" + HBarCode_PNL + "','" + HMaker + "'", "h_p_Gy_BarCodeBill_Set_Temp_Insert");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "写入获取SET条码时发生错误!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else if (DBUtility.ClsPub.isLong(ds.Tables[0].Rows[0]["HBack"]) == 1)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;  //失败!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                else
                {
                    List<string> HBarCodeList = new List<string>();
                    for(int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        HBarCodeList.Add(ds.Tables[0].Rows[i]["HBarCode"].ToString());
                    }
                    objJsonResult.code = "1";
                    objJsonResult.count = 1;  //成功!
                    objJsonResult.Message = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HRemark"]);
                    objJsonResult.data = HBarCodeList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "申请SET条码接口失败!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region AVI获取datamapping数据 æŽ¥å£
        [Route("AVI/AVI_getDataMapping")]
        [HttpGet]
@@ -423,18 +806,44 @@
            List<AVI_getDataMapping_RequestResult_data> dataList = new List<AVI_getDataMapping_RequestResult_data>();
            try
            {
                string sql = "" +
                    //"select * from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode + "' " +
                //根据set条码编号,获取set所属的PNL条码编号
                string HBarCode_PNL = "";
                string sql_PNLBarCode = "" +
                    //"select * from Gy_BarCodeBill_Set_His where HBarCode = '" + HBarCode + "' " +
                    //"union " +
                    "select * from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode + "'";
                    "select * from Gy_BarCodeBill_Set_Temp where HBarCode = '" + HBarCode + "' ";
                ds = oCN.RunProcReturn(sql_PNLBarCode, "Gy_BarCodeBill_Set_Temp");
                if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
                {
                    HBarCode_PNL = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBarCode_PNL"]);
                }
                else
                {
                    result.code = "0";
                    result.msg = "mapping信息获取失败!!set条码不存在!!";
                    result.data = null;
                    return result;
                }
                //根据set条码编号,获取set号。(set条码编号规则:y+ww+五位PNL流水号+两位set号)
                string HSetNo = HBarCode.Substring(HBarCode.Length - 2, 2);
                //根据PNL条码编号、set号,从PNL检验信息表中获取set对应的检验信息
                string sql = "" +
                    "select distinct * from (" +
                    //"select HBarCode,HPCSNo from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    //"union " +
                    "select HBarCode,HPCSNo from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    ") as a";
                ds = oCN.RunProcReturn(sql, "QC_CheckNote_PNL_Temp");
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    AVI_getDataMapping_RequestResult_data data = new AVI_getDataMapping_RequestResult_data();
                    data.HBarCode = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode"]);
                    data.HPCSNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HPCSNo"]);
                    data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    //data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    //data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    dataList.Add(data);
                }
@@ -556,23 +965,33 @@
                {
                    HBarCode_PNL = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBarCode_PNL"]);
                }
                else
                {
                    result.code = "0";
                    result.msg = "mapping信息获取失败!!set条码不存在!!";
                    result.data = null;
                    return result;
                }
                //根据set条码编号,获取set号。(set条码编号规则:y+ww+五位PNL流水号+两位set号)
                string HSetNo = HBarCode.Substring(HBarCode.Length-2,2);
                //根据PNL条码编号、set号,从PNL检验信息表中获取set对应的检验信息
                string sql = "" +
                    //"select * from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    "select distinct * from (" +
                    //"select HBarCode,HPCSNo from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    //"union " +
                    "select * from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' ";
                    "select HBarCode,HPCSNo from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    ") as a";
                ds = oCN.RunProcReturn(sql, "QC_CheckNote_PNL_Temp");
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    DC_getDataMapping_RequestResult_data data = new DC_getDataMapping_RequestResult_data();
                    data.HBarCode = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode"]);
                    data.HPCSNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HPCSNo"]);
                    data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    //data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    //data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    dataList.Add(data);
                }
@@ -687,23 +1106,33 @@
                {
                    HBarCode_PNL = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBarCode_PNL"]);
                }
                else
                {
                    result.code = "0";
                    result.msg = "mapping信息获取失败!!set条码不存在!!";
                    result.data = null;
                    return result;
                }
                //根据set条码编号,获取set号。(set条码编号规则:y+ww+五位PNL流水号+两位set号)
                string HSetNo = HBarCode.Substring(HBarCode.Length - 2, 2);
                //根据PNL条码编号、set号,从PNL检验信息表中获取set对应的检验信息
                string sql = "" +
                    //"select * from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    "select distinct * from (" +
                    //"select HBarCode,HPCSNo from QC_CheckNote_PNL_His where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    //"union " +
                    "select * from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' ";
                    "select HBarCode,HPCSNo from QC_CheckNote_PNL_Temp where HBarCode = '" + HBarCode_PNL + "' and HSetNo = '" + HSetNo + "' " +
                    ") as a";
                ds = oCN.RunProcReturn(sql, "QC_CheckNote_PNL_Temp");
                for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                {
                    JGG_getDataMapping_RequestResult_data data = new JGG_getDataMapping_RequestResult_data();
                    data.HBarCode = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HBarCode"]);
                    data.HPCSNo = DBUtility.ClsPub.isStrNull(ds.Tables[0].Rows[i]["HPCSNo"]);
                    data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    //data.HPosition_x = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_x"]);
                    //data.HPosition_y = DBUtility.ClsPub.isInt(ds.Tables[0].Rows[i]["HPosition_y"]);
                    dataList.Add(data);
                }