コード例 #1
0
 public List <TipoVales> ObtenerComboTipoVale(TipoVales Datos)
 {
     try
     {
         List <TipoVales> Lista = new List <TipoVales>();
         TipoVales        Item;
         SqlDataReader    Dr = SqlHelper.ExecuteReader(Datos.Conexion, "spCSLDB_get_ComboTipoVale", Datos.IncluirSelect);
         while (Dr.Read())
         {
             Item             = new TipoVales();
             Item.IDTipoVale  = Dr.IsDBNull(Dr.GetOrdinal("IDTipoVale")) ? 0 : Dr.GetInt32(Dr.GetOrdinal("IDTipoVale"));
             Item.Descripcion = Dr.IsDBNull(Dr.GetOrdinal("Descripcion")) ? string.Empty : Dr.GetString(Dr.GetOrdinal("Descripcion"));
             Item.Porcentaje  = Dr.IsDBNull(Dr.GetOrdinal("Porcentaje")) ? false : Dr.GetBoolean(Dr.GetOrdinal("Porcentaje"));
             Item.Monto       = Dr.IsDBNull(Dr.GetOrdinal("Monto")) ? false : Dr.GetBoolean(Dr.GetOrdinal("Monto"));
             Item.NxN         = Dr.IsDBNull(Dr.GetOrdinal("NxN")) ? false : Dr.GetBoolean(Dr.GetOrdinal("NxN"));
             Item.NxM         = Dr.IsDBNull(Dr.GetOrdinal("NxM")) ? false : Dr.GetBoolean(Dr.GetOrdinal("NxM"));
             Lista.Add(Item);
         }
         Dr.Close();
         return(Lista);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #2
0
        private Vales ObtenerDatos()
        {
            try
            {
                Vales     DatosAux = new Vales();
                TipoVales AuxTV = this.ObtenerTipoValesSeleccionado();
                int       CantidadLimite = 0, CantidadRequeridaNxN = 0, CantidadGratisNxN = 0, CantidadRequeridaMxN = 0, CantidadGratisMxN = 0;
                decimal   Monto = 0, Porcentaje = 0;
                DatosAux.IDVale         = TipoForm == 2 ? this._DatosVales.IDVale : string.Empty;
                DatosAux.IDTipoVale     = Convert.ToInt32(this.cmbTipoVale.SelectedValue.ToString());
                DatosAux.NombreTipoVale = AuxTV.Descripcion;
                DatosAux.Nombre         = this.txtNombreVale.Text.Trim();
                DatosAux.Folio          = this.txtFolioVale.Text.Trim();
                int.TryParse(this.txtCantidadLimite.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out CantidadLimite);
                decimal.TryParse(this.txtMontoEfectivo.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out Monto);
                decimal.TryParse(this.txtPrcentajeDia.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out Porcentaje);
                DatosAux.CantLimite  = CantidadLimite;
                DatosAux.Monto       = Monto;
                DatosAux.Porcentaje  = Porcentaje;
                DatosAux.Abierto     = this.chkAbiertoPublico.Checked;
                DatosAux.RangoFechas = this.radioBntRangoFechas.Checked;

                int.TryParse(this.txtCantidadRequeridadNxN.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out CantidadRequeridaNxN);
                int.TryParse(this.txtCantidadGratisNxN.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out CantidadGratisNxN);
                DatosAux.IDProductoNxN        = this.ProductoN.IDProducto;
                DatosAux.CantidadRequeridaNxN = CantidadRequeridaNxN;
                DatosAux.CantidadGratisNxN    = CantidadGratisNxN;

                int.TryParse(this.txtCantidadRequeridadMxN.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out CantidadRequeridaMxN);
                int.TryParse(this.txtCantidadGratisMxN.Text, NumberStyles.Currency, CultureInfo.CurrentCulture, out CantidadGratisMxN);
                DatosAux.IDProductoRequerido = this.ProductoM.IDProducto;
                DatosAux.IDProductoGratis    = this.ProductoN.IDProducto;
                DatosAux.CantRequeridad      = CantidadRequeridaMxN;
                DatosAux.CantGratis          = CantidadGratisMxN;
                DatosAux.FechaInicio         = this.dtpFechaInicio.Value;
                DatosAux.FechaFin            = this.dtpFechaFin.Value;
                DatosAux.Lunes      = this.chkAplicaLunes.Checked;
                DatosAux.Martes     = this.chkAplicaMartes.Checked;
                DatosAux.Miercoles  = this.chkAplicaMiercoles.Checked;
                DatosAux.Jueves     = this.chkAplicaJueves.Checked;
                DatosAux.Viernes    = this.chkAplicaViernes.Checked;
                DatosAux.Sabado     = this.chkAplicaSabado.Checked;
                DatosAux.Domingo    = this.chkAplicaDomingo.Checked;
                DatosAux.Opcion     = this.TipoForm;
                DatosAux.Conexion   = Comun.Conexion;
                DatosAux.IDUsuario  = Comun.IDUsuario;
                DatosAux.TablaDatos = this.ObtenerTablaProductos();
                return(DatosAux);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
コード例 #3
0
 public List <TipoVales> ObtenerComboTipoVales(TipoVales Datos)
 {
     try
     {
         Vales_Datos VD = new Vales_Datos();
         return(VD.ObtenerComboTipoVale(Datos));
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #4
0
 private TipoVales ObtenerTipoValesSeleccionado()
 {
     try
     {
         TipoVales DatosAux = new TipoVales();
         if (this.cmbTipoVale.SelectedIndex != -1)
         {
             DatosAux = (TipoVales)this.cmbTipoVale.SelectedItem;
         }
         return(DatosAux);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #5
0
 private void LlenarComboTipoVales()
 {
     try
     {
         TipoVales DatosTipoVale = new TipoVales {
             Conexion = Comun.Conexion, IncluirSelect = true
         };
         Vales_Negocio VN = new Vales_Negocio();
         this.cmbTipoVale.ValueMember   = "IDTipoVale";
         this.cmbTipoVale.DisplayMember = "Descripcion";
         this.cmbTipoVale.DataSource    = VN.ObtenerComboTipoVales(DatosTipoVale);
     }
     catch (Exception ex)
     {
         throw ex;
     }
 }
コード例 #6
0
 private void cmbTipoVale_SelectedValueChanged(object sender, EventArgs e)
 {
     try
     {
         if (this.cmbTipoVale.SelectedIndex != -1)
         {
             this.LimpiarDatosVales();
             TipoVales TVale = (TipoVales)this.cmbTipoVale.SelectedItem;
             ListaProductos = new List <Producto>();
             if (TVale.Porcentaje)
             {
                 this.PanelPorcentajePorDia.Enabled = true;
                 this.txtPrcentajeDia.Text          = string.Format("{0:F2}", 0);
                 this.PanelMontoEfectivo.Enabled    = false;
                 this.PanelNxN.Enabled       = false;
                 this.PanelMxN.Enabled       = false;
                 this.PanelNXNLayout.Visible = false;
                 this.PanelMXNLayout.Visible = false;
                 this.txtPrcentajeDia.Focus();
             }
             else if (TVale.Monto)
             {
                 this.PanelPorcentajePorDia.Enabled = false;
                 this.PanelMontoEfectivo.Enabled    = true;
                 this.txtMontoEfectivo.Text         = string.Format("{0:c}", 0);
                 this.PanelNxN.Enabled       = false;
                 this.PanelMxN.Enabled       = false;
                 this.PanelNXNLayout.Visible = false;
                 this.PanelMXNLayout.Visible = false;
                 this.txtMontoEfectivo.Focus();
             }
             else if (TVale.NxN)
             {
                 this.PanelPorcentajePorDia.Enabled = false;
                 this.PanelMontoEfectivo.Enabled    = false;
                 this.PanelNxN.Enabled = true;
                 this.txtCantidadRequeridadNxN.Text = "0";
                 this.txtCantidadGratisNxN.Text     = "0";
                 this.PanelMxN.Enabled       = false;
                 this.PanelNXNLayout.Visible = true;
                 this.PanelMXNLayout.Visible = true;
                 this.btnElegirProdServNXN.Focus();
             }
             else if (TVale.NxM)
             {
                 this.PanelPorcentajePorDia.Enabled = false;
                 this.PanelMontoEfectivo.Enabled    = false;
                 this.PanelNxN.Enabled = false;
                 this.PanelMxN.Enabled = true;
                 this.txtCantidadRequeridadMxN.Text = "0";
                 this.txtCantidadGratisMxN.Text     = "0";
                 this.PanelNXNLayout.Visible        = true;
                 this.PanelMXNLayout.Visible        = true;
                 this.btnElegirProdServM.Focus();
             }
             else
             {
                 this.PanelPorcentajePorDia.Enabled = false;
                 this.PanelMontoEfectivo.Enabled    = false;
                 this.PanelNxN.Enabled       = false;
                 this.PanelMxN.Enabled       = false;
                 this.PanelNXNLayout.Visible = true;
                 this.PanelMXNLayout.Visible = true;
             }
         }
     }
     catch (Exception ex)
     {
         LogError.AddExcFileTxt(ex, "frmNuevoVale ~ cmbTipoVale_SelectedValueChanged");
         MessageBox.Show(Comun.MensajeError, Comun.Sistema, MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
コード例 #7
0
        private List <Error> ValidarDatos()
        {
            try
            {
                List <Error> Errores = new List <Error>();
                int          Aux     = 0;
                //Validar TextBox Nombre del Vale
                if (string.IsNullOrEmpty(this.txtNombreVale.Text.Trim()))
                {
                    Errores.Add(new Error {
                        Numero = (Aux += 1), Descripcion = "Ingrese el Nombre del Vale.", ControlSender = this.txtNombreVale
                    });
                }
                if (this.cmbTipoVale.SelectedIndex == -1)
                {
                    Errores.Add(new Error {
                        Numero = (Aux += 1), Descripcion = "Seleccione una opción en Tipo de Vales.", ControlSender = this.cmbTipoVale
                    });
                }
                else
                {
                    TipoVales TVale = (TipoVales)this.cmbTipoVale.SelectedItem;
                    if (TVale.IDTipoVale != 0)
                    {
                        //Validar Datos del PanelPorcentajePorDia
                        if (TVale.Porcentaje)
                        {
                            if (string.IsNullOrEmpty(this.txtPrcentajeDia.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese el Porcentaje de descuento.", ControlSender = this.txtPrcentajeDia
                                });
                            }
                            else
                            {
                                decimal Porcentaje = this.ObtenerPorcentaje();
                                if (Porcentaje <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "El porcentaje de descuento debe ser mayor a 0%.", ControlSender = this.txtPrcentajeDia
                                    });
                                }
                                else if (Porcentaje > 100)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "El porcentaje de descuento no puede ser mayor a 100%.", ControlSender = this.txtPrcentajeDia
                                    });
                                }
                            }
                            if (this.dgvProductosXVale.Rows.Count == 0)
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Debe de ingresar al menos un producto al vale.", ControlSender = this.dgvProductosXVale
                                });
                            }
                        }
                        //Validar Datos del PanelMontoEfectivo
                        if (TVale.Monto)
                        {
                            if (string.IsNullOrEmpty(this.txtMontoEfectivo.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese el Monto en Efectivo.", ControlSender = this.txtMontoEfectivo
                                });
                            }
                            else
                            {
                                decimal Monto = this.ObtenerMontoDescuento();
                                if (Monto <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "El monto de descuento debe ser mayor a $ 0.00.", ControlSender = this.txtMontoEfectivo
                                    });
                                }
                            }
                            if (this.dgvProductosXVale.Rows.Count == 0)
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Debe de ingresar al menos un producto al vale.", ControlSender = this.dgvProductosXVale
                                });
                            }
                        }
                        //Validar Datos del PanelNxN
                        if (TVale.NxN)
                        {
                            if (string.IsNullOrEmpty(ProductoN.IDProducto))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Seleccione el producto requerido para la promoción.", ControlSender = this.btnElegirProdServNXN
                                });
                            }
                            if (string.IsNullOrEmpty(this.txtCantidadRequeridadNxN.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese la Cantidad Requerida en N x N.", ControlSender = this.PanelNxN
                                });
                            }
                            if (string.IsNullOrEmpty(this.txtCantidadGratisNxN.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese la Cantidad Gratis en N x N.", ControlSender = this.PanelNxN
                                });
                            }
                            if (!string.IsNullOrEmpty(this.txtCantidadRequeridadNxN.Text.Trim()) && !string.IsNullOrEmpty(this.txtCantidadGratisNxN.Text.Trim()))
                            {
                                int CantidadReq = 0, CantidadGratis = 0;
                                CantidadReq    = this.ObtenerCantidad(this.txtCantidadRequeridadNxN);
                                CantidadGratis = this.ObtenerCantidad(this.txtCantidadGratisNxN);
                                if (CantidadReq <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "Cantidad Requerida debe ser mayor a 0", ControlSender = this.txtCantidadRequeridadNxN
                                    });
                                }
                                if (CantidadGratis <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "Cantidad Gratis debe ser mayor a 0.", ControlSender = this.txtCantidadGratisNxN
                                    });
                                }
                                if (CantidadReq > 0 && CantidadGratis > 0)
                                {
                                    if (CantidadGratis >= CantidadReq)
                                    {
                                        Errores.Add(new Error {
                                            Numero = (Aux += 1), Descripcion = "Cantidad Gratis debe ser menor a la cantidad requerida.", ControlSender = this.txtCantidadGratisNxN
                                        });
                                    }
                                }
                            }
                        }
                        //Validar Datos del PanelMxN
                        if (TVale.NxM)
                        {
                            if (string.IsNullOrEmpty(ProductoM.IDProducto))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Seleccione el producto requerido para la promoción.", ControlSender = this.btnElegirProdServM
                                });
                            }
                            if (string.IsNullOrEmpty(ProductoN.IDProducto))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Seleccione el producto gratis para la promoción.", ControlSender = this.btnElegirProdServN
                                });
                            }
                            if (string.IsNullOrEmpty(this.txtCantidadRequeridadMxN.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese la Cantidad Requerida en M x N.", ControlSender = this.PanelMxN
                                });
                            }
                            if (string.IsNullOrEmpty(this.txtCantidadGratisMxN.Text.Trim()))
                            {
                                Errores.Add(new Error {
                                    Numero = (Aux += 1), Descripcion = "Ingrese la Cantidad Gratis en M x N.", ControlSender = this.PanelMxN
                                });
                            }
                            if (!string.IsNullOrEmpty(this.txtCantidadRequeridadMxN.Text.Trim()) && !string.IsNullOrEmpty(this.txtCantidadGratisMxN.Text.Trim()))
                            {
                                int CantidadReq2 = 0, CantidadGratis2 = 0;
                                CantidadReq2    = this.ObtenerCantidad(this.txtCantidadRequeridadMxN);
                                CantidadGratis2 = this.ObtenerCantidad(this.txtCantidadGratisMxN);
                                if (CantidadReq2 <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "Cantidad Requerida debe ser mayor a 0", ControlSender = this.txtCantidadRequeridadMxN
                                    });
                                }
                                if (CantidadGratis2 <= 0)
                                {
                                    Errores.Add(new Error {
                                        Numero = (Aux += 1), Descripcion = "Cantidad Gratis debe ser mayor a 0.", ControlSender = this.txtCantidadGratisMxN
                                    });
                                }
                                if (CantidadReq2 > 0 && CantidadGratis2 > 0)
                                {
                                    if (CantidadGratis2 >= CantidadReq2)
                                    {
                                        Errores.Add(new Error {
                                            Numero = (Aux += 1), Descripcion = "Cantidad Gratis debe ser menor a la cantidad requerida.", ControlSender = this.txtCantidadGratisMxN
                                        });
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        Errores.Add(new Error {
                            Numero = (Aux += 1), Descripcion = "Seleccione una opción en Tipo Vale.", ControlSender = this.cmbTipoVale
                        });
                    }
                }
                //Validar TextBox Cantidad Limite
                if (string.IsNullOrEmpty(this.txtCantidadLimite.Text.Trim()))
                {
                    Errores.Add(new Error {
                        Numero = (Aux += 1), Descripcion = "Ingrese la Cantidad Limite.", ControlSender = this.txtCantidadLimite
                    });
                }
                else
                {
                    if (!Validar.IsValidOnlyNumber(this.txtCantidadLimite.Text.Trim()))
                    {
                        Errores.Add(new Error {
                            Numero = (Aux += 1), Descripcion = "Debe ingresar el Cantidad Limite válido.", ControlSender = this.txtCantidadLimite
                        });
                    }
                }

                //Validar RadioButton Para Seleccionar
                if (!this.radioBntRangoFechas.Checked && !this.radioBtnDiasSemanas.Checked)
                {
                    Errores.Add(new Error {
                        Numero = (Aux += 1), Descripcion = "Debe seleccionar Rango de Fecha ó Dias de la Semana", ControlSender = this.PanelDiasSemanas
                    });
                }
                //Validar RadioButton Fecha Inicio y Fecha Fin
                if (this.radioBntRangoFechas.Checked)
                {
                    if (this.dtpFechaInicio.Value > this.dtpFechaFin.Value)
                    {
                        Errores.Add(new Error {
                            Numero = (Aux += 1), Descripcion = "La Fecha Final debe ser mayor a la Fecha Inicial", ControlSender = this.PanelRangoFechas
                        });
                    }
                    if (this.dtpFechaInicio.Value < DateTime.Today)
                    {
                        Errores.Add(new Error {
                            Numero = (Aux += 1), Descripcion = "La Fechas deben ser mayores a la Fecha Actual.", ControlSender = this.PanelRangoFechas
                        });
                    }
                }
                //Validar RadioButton Para Seleccionar Dias de las Semana
                if (this.radioBtnDiasSemanas.Checked)
                {
                    if (!this.chkAplicaLunes.Checked &&
                        !this.chkAplicaMartes.Checked &&
                        !this.chkAplicaMiercoles.Checked &&
                        !this.chkAplicaJueves.Checked &&
                        !this.chkAplicaViernes.Checked &&
                        !this.chkAplicaSabado.Checked &&
                        !this.chkAplicaDomingo.Checked)
                    {
                        Errores.Add(new Error {
                            Numero = (Aux += 1), Descripcion = "Debe seleccionar al menos un Día de la Semana", ControlSender = this.PanelDiasSemanas
                        });
                    }
                }
                return(Errores);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }