예제 #1
0
        public void BindGrid(int currentPage)
        {
            IPercepcionDominio _domPerc = IoC.GetObjectDominio <IPercepcionDominio>();
            List <Dominio.Entidades.PercepcionDatos> _datos = _domPerc.PercepcionGet(txtProv.Text, txtPer.Text);

            dtgPercepcion.DataSource       = _datos;
            dtgPercepcion.CurrentPageIndex = currentPage;
            dtgPercepcion.DataBind();
            Session["DatosDTG"] = dtgPercepcion.DataSource;
        }
        protected void btnGuardar_Click(object sender, EventArgs e)
        {
            string provinciaId = "";
            double porcentaje  = 0;

            try
            {
                provinciaId = getLista(lstProvincias);
            }
            catch {
                ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("Debe seleccionar solo una provincia");
            }


            IProvincia prov = ProvinciaFactory.GetProvincia();

            prov.ProvinciaID = Convert.ToInt32(provinciaId);
            prov.Consultar();

            try
            {
                porcentaje = Convert.ToDouble(txtpercepcion.Text);
            }
            catch {
                ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("Debe ingresar un porcentaje");
            }


            try {
                Convert.ToDouble(porcentaje);
            }
            catch {
                ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("Debe ingresar un porcentaje válido");
            }

            string nombrep = txtNombercepcion.Text;


            if (nombrep == "" || nombrep == null)
            {
                ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("Debe ingresar un nombre de percepción");
            }

            IPercepcionDominio _domPer = IoC.GetObjectDominio <IPercepcionDominio>();

            Dominio.Entidades.Percepcion per;

            if (hdIDPercepcion.Value != "")
            {
                per = new Dominio.Entidades.Percepcion()
                {
                    PercepcionID      = Convert.ToInt32(hdIDPercepcion.Value),
                    ProvinciaID       = Convert.ToInt32(provinciaId),
                    ProvinciaDescrip  = prov.ProvinciaDescrip,
                    PorcentajeImporte = porcentaje,
                    PercepcionNombre  = nombrep,
                    Baja      = 0,
                    UsuarioID = usuario.UsuarioID
                };
                _domPer.Actualizar(per);
                ClientScript.RegisterStartupScript(this.GetType(), "myScript", "<script>javascript: alert('Datos actualizados correctamente'); window.location.href = 'PercepcionConsul.aspx';\n; </script>");
                //  Response.Redirect("PercepcionConsul.aspx");
            }
            else
            {
                try
                {
                    IPercepcionDominio _domPerc = IoC.GetObjectDominio <IPercepcionDominio>();
                    List <Dominio.Entidades.PercepcionDatos> _datos = _domPerc.PercepcionGet(prov.ProvinciaDescrip, "");



                    if (_datos.Count == 0)
                    {
                        per = new Dominio.Entidades.Percepcion()
                        {
                            ProvinciaID       = Convert.ToInt32(provinciaId),
                            ProvinciaDescrip  = prov.ProvinciaDescrip,
                            PorcentajeImporte = porcentaje,
                            PercepcionNombre  = nombrep,
                            Baja      = 0,
                            UsuarioID = usuario.UsuarioID
                        };
                        _domPer.Guardar(per);

                        ClientScript.RegisterStartupScript(this.GetType(), "myScript", "<script>javascript: alert('Datos guardados correctamente');</script>");
                    }
                    else
                    {
                        ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("La provincia de " + prov.ProvinciaDescrip + " ya tiene una percepción asignada");
                    }
                }
                catch
                {
                    ((ErrorWeb)(this.phErrores.Controls[0])).setMensaje("Error al intentar guardar percepción");
                }
            }
        }