/// <summary> /// Método que inicializa los valores de los controles acorde a cada estatus de la página. /// </summary> private void inicializaValores() { //Evalua cada estatus de la página switch ((Pagina.Estatus)Session["estatus"]) { //En caso de que el estado de la pagina sea nuevo, los controles no deberan tener texto case Pagina.Estatus.Nuevo: { txtDescripcion.Text = ""; chkGravado.Checked = false; txtImpuestoTrasladado.Text = ""; txtImpuestoRetenido.Text = ""; txtCargoAdicional1.Text = ""; txtCargoAdicional2.Text = ""; lblError.Text = ""; break; } //En caso de que el estado de la página este en modo de lectura o edición case Pagina.Estatus.Lectura: case Pagina.Estatus.Edicion: { //Invoca a la clase TipoPago y asigna como parametro al cosntructor la variable de session id_registro using (SAT_CL.Liquidacion.TipoPago tp = new SAT_CL.Liquidacion.TipoPago((int)Session["id_registro"])) { txtDescripcion.Text = tp.descripcion; ddlAplicacion.SelectedValue = tp.id_nivel_aplicacion.ToString(); //Invoca al constructor de la clase UnidadMedida para cargar los valores a los dropdownlist unidadMedida, y tarifa using (SAT_CL.Global.UnidadMedida um = new SAT_CL.Global.UnidadMedida(tp.id_unidad_medida)) { //Valida que el identificador de unidad de medida sea mayor a 0. if (tp.id_unidad_medida > 0) { //Si cumple con la validación: //Asigna el valor de tipounidadMedida consultado de la base de datos al dropdownlist ddlTipoUnidad.SelectedValue = um.id_tipo_unidad_medida.ToString(); //Invoca al catálogo unidad de medida SAT_CL.CapaNegocio.m_capaNegocio.CargaCatalogo(ddlUnidadMedida, 44, "", Convert.ToInt32(ddlTipoUnidad.SelectedValue), "", 0, ""); //Carga el valor de catálogo al dropdownlist con el valor almacenado en la base de datos ddlUnidadMedida.SelectedValue = tp.id_unidad_medida.ToString(); } } //Carga los controles con los valores almacenados en la base de datos txtImpuestoTrasladado.Text = tp.tasa_impuesto_trasladado.ToString(); txtImpuestoRetenido.Text = tp.tasa_impuesto_retenido.ToString(); txtCargoAdicional1.Text = tp.tasa_impuesto1.ToString(); txtCargoAdicional2.Text = tp.tasa_impuesto2.ToString(); ddlConceptoSat.SelectedValue = tp.id_concepto_sat_nomina.ToString(); ddlMoneda.SelectedValue = tp.id_moneda.ToString(); chkGravado.Checked = tp.gravado; } break; } } }
/// <summary> /// Método que almacena los datos obtenidos del formulario tipoPago a la base de datos. /// </summary> private void guardarTipoPago() { //Creación del objeto retorno RetornoOperacion retorno = new RetornoOperacion(); //Valida cada estado del formulario y ejecutara acciones. switch ((Pagina.Estatus)Session["estatus"]) { //Si el estado del formualrio es Nuevo case Pagina.Estatus.Nuevo: { //Asignación de valores obtenidos de los controles de la pagina al objeto retorno, para su insercion en la base de datos. retorno = SAT_CL.Liquidacion.TipoPago.InsertaTipoPago(txtDescripcion.Text, Convert.ToInt32(ddlUnidadMedida.SelectedValue), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtImpuestoTrasladado.Text, "0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtImpuestoRetenido.Text, "0")), Convert.ToByte(ddlAplicacion.SelectedValue), Convert.ToByte(ddlMoneda.SelectedValue), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCargoAdicional1.Text, "0")), Convert.ToDecimal(Cadena.VerificaCadenaVacia(txtCargoAdicional2.Text, "0")), Convert.ToInt32(ddlTarifa.SelectedValue), Convert.ToByte(ddlConceptoSat.SelectedValue), chkGravado.Checked, ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); break; } //Si el estado del formulario es Edición case Pagina.Estatus.Edicion: { //Invoca al constructor de la clase TipoPago con el valor de la variable de session id_registro. using (SAT_CL.Liquidacion.TipoPago tp = new SAT_CL.Liquidacion.TipoPago((int)Session["id_registro"])) { //Asignación de valores al objeto retorno, con los datos obtenidos de los controles del formulario TipoPago. retorno = tp.EditaTipoPago(txtDescripcion.Text, Convert.ToInt32(ddlUnidadMedida.SelectedValue), Convert.ToDecimal(txtImpuestoTrasladado.Text.ToString()), Convert.ToDecimal(txtImpuestoRetenido.Text.ToString()), Convert.ToByte(ddlAplicacion.SelectedValue), Convert.ToByte(ddlMoneda.SelectedValue), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Convert.ToDecimal(txtCargoAdicional1.Text.ToString()), Convert.ToDecimal(txtCargoAdicional2.Text.ToString()), Convert.ToInt32(ddlTarifa.SelectedValue), Convert.ToByte(ddlConceptoSat.SelectedValue), chkGravado.Checked, ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } break; } } //Valida que la operacion de inserción se realizo correctamente if (retorno.OperacionExitosa) { //Asigna el valor de estatus session en modo lectura. Session["estatus"] = Pagina.Estatus.Lectura; //Asigna a la variable de session id_registro el valor generado en la base de datos(id). Session["id_registro"] = retorno.IdRegistro; //Invoca al método inicializaForma. inicializaForma(); } //Muestra un mensaje acorde a la validación de la operación. lblError.Text = retorno.Mensaje; }
/// <summary> /// Método que modifica el estado de un registro (Habilita/Deshabilita)de la base de datos. /// </summary> private void deshabilitarTipoPago() { //Creación del objeto retorno RetornoOperacion retorno = new RetornoOperacion(); //Invoca al constructor de la clase TipoPago con el valor de la variable de session id_registro. using (SAT_CL.Liquidacion.TipoPago tp = new SAT_CL.Liquidacion.TipoPago((int)Session["id_registro"])) { //Asignación de valores al objeto retorno con los datos del usuario. retorno = tp.DeshabilitaTipoPago(((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } //Valida si la operación se realizo correctamente. if (retorno.OperacionExitosa) { //Asigna el valor de estado lectura a la variable de session estatus Session["estatus"] = Pagina.Estatus.Nuevo; //Asigna el valor 0 a la variable de session id_registro Session["id_registro"] = 0; //invoca al método inicializaForma(). inicializaForma(); } //Muestra un mensaje acorde a la validación de la operación lblError.Text = retorno.Mensaje; }