public FrmABMInsertUpdateVisibilidad(Visibilidad visibility)
        {
            InitializeComponent();
            //Si no se le pasa ningún rol por parámetro (NULL) se considera que esta trabajando en modo alta
            insertMode = visibility == null;

            if (!insertMode)
            {
                CurrentVisibility = visibility;
                OldVisibilityActive = visibility.Activo;
            }
        }
        private void RefreshSources(List<Estadistica> estadisticas)
        {
            #region Load sources

            //Cargo el combo de años
            var dataSourceAño = new List<object>();
            for (var i = 1980; i <= Convert.ToInt32(Configuration.ConfigurationVariables.FechaSistema.Year); i++)
                dataSourceAño.Add(new { Name = i.ToString(), Value = i });
            CboAño.DataSource = dataSourceAño;
            CboAño.ValueMember = "Value";
            CboAño.DisplayMember = "Name";

            //Cargo el combo de trimestres
            var dataSourceTrimestre = new List<object>();
            dataSourceTrimestre.Add(new { Name = "Enero - Marzo", Value = 1 });
            dataSourceTrimestre.Add(new { Name = "Abril - Junio", Value = 2 });
            dataSourceTrimestre.Add(new { Name = "Julio - Septiembre", Value = 3 });
            dataSourceTrimestre.Add(new { Name = "Octubre - Diciembre", Value = 4 });
            CboTrimestre.ValueMember = "Value";
            CboTrimestre.DisplayMember = "Name";
            CboTrimestre.DataSource = dataSourceTrimestre;

            //Cargo el combo con los posibles listados a pedir
            var dataSourceListado = new List<object>();
            dataSourceListado.Add(new { Name = "[Vendedores] Mayor cant. de productos no vendidos", Value = 1 });
            dataSourceListado.Add(new { Name = "[Vendedores] Mayor facturación", Value = 2 });
            dataSourceListado.Add(new { Name = "[Vendedores] Mayores calificaciones", Value = 3 });
            dataSourceListado.Add(new { Name = "[Clientes] Mayor cant. de publicaciones sin calificar", Value = 4 });
            CboListado.DataSource = dataSourceListado;
            CboListado.ValueMember = "Value";
            CboListado.DisplayMember = "Name";

            //Cargo las visibilidades para los filtros de la primera estadística
            var dataSourceVisibilidad = VisibilidadPersistance.GetAll();
            var visibilidadTodos = new Visibilidad();
            visibilidadTodos.ID = 0;
            visibilidadTodos.Descripcion = "Todos";
            dataSourceVisibilidad.Add(visibilidadTodos);
            CboVisibilidad.DataSource = dataSourceVisibilidad;
            CboVisibilidad.ValueMember = "ID";
            CboVisibilidad.DisplayMember = "Descripcion";

            #endregion

            ClearDataGridView();
        }
Beispiel #3
0
 public void GetObjectsById()
 {
     UsuarioCreador = UsuarioPersistance.GetById(_usuarioCreador);
     Visibilidad = VisibilidadPersistance.GetById(_visibilidad);
     EstadoPublicacion = EstadoPublicacionPersistance.GetById(_estadoPublicacion);
     TipoPublicacion = TipoPublicacionPersistance.GetById(_tipoPublicacion);
     Rubros = RubroPersistance.GetByPublicationId(ID);
     Compras = CompraPersistance.GetByPublicationId(ID);
 }
Beispiel #4
0
        public ItemFactura ConvertToItemFactura()
        {
            if (Visibilidad == null)
                Visibilidad = VisibilidadPersistance.GetById(_visibilidad);

            return new ItemFactura
            {
                Publicacion = this,
                Monto = Visibilidad.PrecioPublicar,
                Cantidad = 1,
                ContadorBonificacion = false
            };
        }
        private void LblGrabar_Click(object sender, EventArgs e)
        {
            try
            {
                #region Validations

                var exceptionMessage = string.Empty;

                if (TypesHelper.IsEmpty(TxtDescripcion.Text))
                    exceptionMessage += Environment.NewLine + "La descripción de la visibilidad no puede ser vacía.";

                if (TypesHelper.IsEmpty(TxtDuracion.Text))
                    exceptionMessage += Environment.NewLine + "La duración de la visibilidad no puede ser vacía.";

                if (!TypesHelper.IsNumeric(TxtDuracion.Text))
                    exceptionMessage += Environment.NewLine + "La duración de la visibilidad debe ser numérica.";

                if (TypesHelper.IsEmpty(TxtPorcentajeVenta.Text))
                    exceptionMessage += Environment.NewLine + "El porcentaje de la venta de la visibilidad no puede ser vacío.";

                if (!TypesHelper.IsDecimal(TxtPorcentajeVenta.Text))
                    exceptionMessage += Environment.NewLine + "El porcentaje de la venta de la visibilidad debe ser decimal (o numérico).";

                if (TypesHelper.IsEmpty(TxtPrecioPublicar.Text))
                    exceptionMessage += Environment.NewLine + "El precio por publicar de la visibilidad no puede ser vacío.";

                if (!TypesHelper.IsDecimal(TxtPrecioPublicar.Text))
                    exceptionMessage += Environment.NewLine + "El precio por publicar de la visibilidad debe ser decimal (o numérico).";

                if (!TypesHelper.IsEmpty(exceptionMessage))
                    throw new Exception(exceptionMessage);

                #endregion

                if (insertMode)
                {
                    var filters = new VisibilidadFilters { Descripcion = TxtDescripcion.Text };

                    //Valido que no exista un rol con la descripcion informada
                    if (VisibilidadPersistance.GetAllByParameters(filters).Count > 0)
                        throw new Exception("Ya existe una visibilidad con la descripcion informada.");

                    #region Inserto la nueva visibilidad

                    var visibility = new Visibilidad();
                    visibility.Descripcion = TxtDescripcion.Text;
                    visibility.Duracion = Convert.ToInt32(TxtDuracion.Text);
                    visibility.PrecioPublicar = Convert.ToDouble(TxtPrecioPublicar.Text);
                    visibility.PorcentajeVenta = Convert.ToDouble(TxtPorcentajeVenta.Text);
                    visibility.Activo = ChkActivo.Checked;

                    var dialogAnswer = MessageBox.Show("Esta seguro que quiere insertar la nueva visibilidad?", "Atencion", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        if (VisibilidadPersistance.Insert(visibility) == 1)
                        {
                            MessageBox.Show("Se inserto satisfactoriamente la nueva visibilidad", "Atencion");
                            CompleteAction = true;
                            Close();
                        }
                    }

                    #endregion
                }
                else
                {
                    #region Modifico una visibilidad existente

                    if (OldVisibilityActive && !ChkActivo.Checked)
                    {
                        //Si cambió el valor de 'Activo' y existen publicaciones con dicha visibilidad, arrojo una excepcion
                        if (PublicacionPersistance.GetAllByVisibility(CurrentVisibility.ID).Count() > 0)
                            throw new Exception("No se puede modificar la visibilidad ya que existen publicaciones con dicho valor.");
                    }

                    CurrentVisibility.Descripcion = TxtDescripcion.Text;
                    CurrentVisibility.Duracion = Convert.ToInt32(TxtDuracion.Text);
                    CurrentVisibility.PrecioPublicar = Convert.ToDouble(TxtPrecioPublicar.Text);
                    CurrentVisibility.PorcentajeVenta = Convert.ToDouble(TxtPorcentajeVenta.Text);
                    CurrentVisibility.Activo = ChkActivo.Checked;

                    var dialogAnswer = MessageBox.Show(string.Format("Esta seguro que quiere modificar la visibilidad {0}?", CurrentVisibility.Descripcion), "Atencion", MessageBoxButtons.YesNo);
                    if (dialogAnswer == DialogResult.Yes)
                    {
                        //Modifico exitosamente si la cantidad de registros afectados es 1
                        if (VisibilidadPersistance.Update(CurrentVisibility) == 1)
                        {
                            MessageBox.Show("Se modifico satisfactoriamente la visibilidad", "Atencion");
                            CompleteAction = true;
                            Close();
                        }
                    }

                    #endregion
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atención");
                Close();
            }
        }
        public static int Insert(Visibilidad visibility)
        {
            var param = new List<SPParameter>
                {
                    new SPParameter("Descripcion", visibility.Descripcion),
                    new SPParameter("Precio_Publicar", visibility.PrecioPublicar),
                    new SPParameter("Porcentaje_Venta", visibility.PorcentajeVenta),
                    new SPParameter("Duracion", visibility.Duracion),
                    new SPParameter("Activo", visibility.Activo),
                };

            var sp = new StoreProcedure(DataBaseConst.Visibilidad.SPInsertVisibilidad, param);

            return sp.ExecuteNonQuery(null);
        }