//Generacion de cupones
        public List <Ent_BataClub_ListaCliente> GenerarCupones(decimal usu_id, decimal pordes, DateTime fecfin, int paresmax, string prom_des, DataTable dt_lista)
        {
            DataTable dtprueba = dt_lista; //datatable
            List <Ent_BataClub_ListaCliente> list_client = new List <Ent_BataClub_ListaCliente>();

            foreach (DataRow fila in dtprueba.Rows)
            {
                var item = new Ent_BataClub_ListaCliente();
                item.dni       = fila["dni"].ToString();
                item.nombre    = fila["Nombres"].ToString();
                item.apellidos = fila["Apellidos"].ToString();
                item.email     = fila["correo"].ToString();
                list_client.Add(item);
            }
            var array = new Ent_BataClub_ListaItems();

            array.Lista = list_client.ToArray();

            var list_client_return = genera_list_barra(usu_id, pordes, fecfin, paresmax, prom_des, array);

            return(list_client_return);
        }
        //Generación de listado de cupones
        public List <Ent_BataClub_ListaCliente> genera_list_barra(decimal usu_id, decimal pordes, DateTime fecfin, int paresmax, string prom_des, Ent_BataClub_ListaItems list_cliente)
        {
            List <Ent_BataClub_ListaCliente> lista_return_barra = null;

            try
            {
                if (list_cliente.Lista.Count() > 0)
                {
                    lista_return_barra = return_barra_list(list_cliente, pordes, fecfin, paresmax, prom_des, usu_id);
                }
            }
            catch (Exception ex)
            {
                lista_return_barra = null;
            }
            return(lista_return_barra);
        }
        //Retorno de lista de clientes con la barra de cupón
        public static List <Ent_BataClub_ListaCliente> return_barra_list(Ent_BataClub_ListaItems list_cliente, decimal _pordes, DateTime fecfin, int _pares_max, string _tipo_des, decimal usu_id)
        {
            string sqlquery = "USP_BATACLUB_INSERTAR_CUPONES";
            List <Ent_BataClub_ListaCliente> list_return = null;

            try
            {
                if (list_cliente.Lista.Count() > 0)
                {
                    /*verificamos si en la lista hay valores; si esta así, entonces creamos un datatable temporal*/
                    DataTable dt = new DataTable();
                    dt.Columns.Add("dni", typeof(string));
                    dt.Columns.Add("nombres", typeof(string));
                    dt.Columns.Add("apellidos", typeof(string));
                    dt.Columns.Add("email", typeof(string));
                    dt.Columns.Add("barra", typeof(string));

                    foreach (var item in list_cliente.Lista)
                    {
                        dt.Rows.Add(item.dni, item.nombre, item.apellidos, item.email, item.barra);
                    }

                    using (SqlConnection cn = new SqlConnection(Ent_Conexion.conexion))
                    {
                        using (SqlCommand cmd = new SqlCommand(sqlquery, cn))
                        {
                            cmd.CommandTimeout = 0;
                            cmd.CommandType    = CommandType.StoredProcedure;
                            cmd.Parameters.AddWithValue("@pordes", _pordes);
                            cmd.Parameters.AddWithValue("@fecfin", String.Format("{0:MM-dd-yyyy}", Convert.ToDateTime(fecfin)));
                            cmd.Parameters.AddWithValue("@paresmax", _pares_max);
                            cmd.Parameters.AddWithValue("@prom_des", _tipo_des);
                            cmd.Parameters.AddWithValue("@tmpcupones", dt);
                            cmd.Parameters.AddWithValue("@usu_id", usu_id);

                            using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                            {
                                DataTable dtbarra = new DataTable();
                                da.Fill(dtbarra);

                                if (dtbarra.Rows.Count > 0)
                                {
                                    list_return = new List <Ent_BataClub_ListaCliente>();

                                    list_return = (from item in dtbarra.AsEnumerable()
                                                   select new Ent_BataClub_ListaCliente
                                    {
                                        dni = item.Field <string>("dni"),
                                        nombre = item.Field <string>("nombres"),
                                        apellidos = item.Field <string>("apellidos"),
                                        email = item.Field <string>("email"),
                                        barra = item.Field <string>("barra"),
                                    }).ToList();
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception exc)
            {
                list_return = null;
            }
            return(list_return);
        }