/// <summary> /// Terminamos Cobro Recurrente /// </summary> /// <returns></returns> private RetornoOperacion terminaCobroRecurrente() { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Instanciamos Cobro Recurrente using (SAT_CL.Liquidacion.CobroRecurrente objCobroRecurrente = new SAT_CL.Liquidacion.CobroRecurrente(Convert.ToInt32(Session["id_registro"]))) { //Validamos que exista Cobro Recurrente if (objCobroRecurrente.id_cobro_recurrente > 0) { //Modificamios Cobro Recurrente result = objCobroRecurrente.ActualizaEstatusTerminoCobroRecurrente(SAT_CL.Liquidacion.CobroRecurrente.EstatusTermino.Terminado, ((Usuario)Session["usuario"]).id_usuario); //Validamos Resultado if (result.OperacionExitosa) { //Insertando Referencia result = SAT_CL.Global.Referencia.InsertaReferencia(objCobroRecurrente.id_cobro_recurrente, 77, SAT_CL.Global.ReferenciaTipo.ObtieneIdReferenciaTipo(0, 77, "Motivo", 0, "General"), txtMotivo.Text, TSDK.Base.Fecha.ObtieneFechaEstandarMexicoCentro(), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario, true); //Validamos Resultado if (result.OperacionExitosa) { //Inicializamos Valores inicializaValores(); //Cerramos Ventana Modal alternaVentanaModal("terminar", btnTerminar); } } } } //Mostrando Resultado de Operación ScriptServer.MuestraNotificacion(lkbGuardar, result, ScriptServer.PosicionNotificacion.AbajoDerecha); //Devolvemos resultado return(result); }
/// <summary> /// Evento Producido al Seleccionarse un Elemento del Menu /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void lkbElementoMenu_Click(object sender, EventArgs e) { //Referenciamos al objeto que disparo el evento LinkButton boton = (LinkButton)sender; //De acuerdo al nombre de comando asignado switch (boton.CommandName) { //Establecemos la pagina en estatus Nuevo case "Nuevo": { //Establecemos el estatus de la pagina a nuevo Session["estatus"] = Pagina.Estatus.Nuevo; //Inicializando Id de Registro activo Session["id_registro"] = 0; //Invocando Método de Inicialización inicializaPagina(); break; } //Permite abrir registros de la Recepcion de factura case "Abrir": { //Inicializando Apertura inicializaAperturaRegistro(77, ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor); break; } //Guarda el registro en la BD case "Guardar": { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Invocando Método de Guardado result = guardaCobroRecurrente(); //Mostrando Resultado de Operación ScriptServer.MuestraNotificacion(lkbGuardar, result, ScriptServer.PosicionNotificacion.AbajoDerecha); break; } //Envia al usuario a la pagina principal de la aplicación case "Salir": { //Regresando a Página Anterior PilaNavegacionPaginas.DireccionaPaginaAnterior(); break; } //Permite al usuario editar el registro actual case "Editar": { //Establecemos el estatus de la pagina a nuevo Session["estatus"] = Pagina.Estatus.Edicion; //Inicializamos la pagina inicializaPagina(); break; } //Deshabilita un registro de la Recepcion de factura case "Eliminar": { //Declarando Objeto de Retorno RetornoOperacion resultado = new RetornoOperacion(); //Instanciando registro actual using (SAT_CL.Liquidacion.CobroRecurrente cr = new SAT_CL.Liquidacion.CobroRecurrente(Convert.ToInt32(Session["id_registro"]))) { //Si la Recepcion existe if (cr.id_cobro_recurrente > 0) { //Deshabilitamos el registro resultado = cr.DeshabilitaCobroRecurrente(((Usuario)Session["usuario"]).id_usuario); } //Si se deshabilitó correctamente if (resultado.OperacionExitosa) { //Estableciendo estatus a nuevo registro Session["estatus"] = Pagina.Estatus.Nuevo; //Inicializando Id de registro activo Session["id_registro"] = 0; //Inicialziando la forma inicializaPagina(); } //Mostrando resultado ScriptServer.MuestraNotificacion(lkbTerminar, resultado, ScriptServer.PosicionNotificacion.AbajoDerecha); } break; } case "Bitacora": { //Inicializando Ventana de Bitacora inicializaBitacora(Session["id_registro"].ToString(), "77", "Cobro Recurrente"); break; } case "Referencias": { //Inicializando Ventana de Referencia inicializaReferenciaRegistro(Session["id_registro"].ToString(), "77", ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor.ToString()); break; } //Si la elección es Terminar el Cobro Recurrente case "Terminar": { //Mostramos Ventana Modal alternaVentanaModal("terminar", lkbTerminar); //Limpiamos Etiqueta de Motivo txtMotivo.Text = ""; break; } } }
/// <summary> /// Método Privado encargado de Inicializar los Valores /// </summary> private void inicializaValores() { //Validando el estatus de la Página switch ((Pagina.Estatus)Session["estatus"]) { case Pagina.Estatus.Nuevo: { //Asignando Valores lblId.Text = "Por Asignar"; txtTotalCobrado.Text = "0.00"; txtTotalDeuda.Text = txtMontoCobro.Text = txtSaldo.Text = //txtDiasCobro.Text = "0"; txtEntidad.Text = txtReferencia.Text = ""; txtFechaIni.Text = TSDK.Base.Fecha.ObtieneFechaEstandarMexicoCentro().ToString("dd/MM/yyyy"); txtFechaUltCob.Text = ""; //Inicializando Cobro Recurrente TSDK.ASP.Controles.InicializaGridview(gvCobroRecurrenteLiquidacion); break; } case Pagina.Estatus.Lectura: case Pagina.Estatus.Edicion: { //Instanciando Cobro Recurrente using (SAT_CL.Liquidacion.CobroRecurrente cr = new SAT_CL.Liquidacion.CobroRecurrente(Convert.ToInt32(Session["id_registro"]))) { //Validando que exista el Registro if (cr.id_cobro_recurrente != 0) { //Asignando Valores lblId.Text = cr.id_cobro_recurrente.ToString(); txtTotalDeuda.Text = cr.total_deuda.ToString(); txtTotalCobrado.Text = cr.total_cobrado.ToString(); txtSaldo.Text = cr.saldo.ToString(); txtMontoCobro.Text = cr.monto_cobro.ToString(); //txtDiasCobro.Text = cr.dias_cobro.ToString(); ddlTipoEntApl.SelectedValue = cr.id_tipo_entidad_aplicacion.ToString(); ddlTipoCobroRecurrente.SelectedValue = cr.id_tipo_cobro_recurrente.ToString(); //Validando si el tipo de entidad if (cr.id_operador != 0) { /**** Operador ****/ using (Operador op = new Operador(cr.id_operador)) { //Validando si existe if (op.id_operador != 0) { //Asignando Valor txtEntidad.Text = op.nombre + " ID:" + op.id_operador.ToString(); } } } else if (cr.id_proveedor_compania != 0) { /**** Proveedor ****/ using (CompaniaEmisorReceptor pro = new CompaniaEmisorReceptor(cr.id_proveedor_compania)) { //Validando si existe if (pro.id_compania_emisor_receptor != 0) { //Asignando Valor txtEntidad.Text = pro.nombre + " ID:" + pro.id_compania_emisor_receptor.ToString(); } } } else if (cr.id_unidad != 0) { /**** Unidad ****/ using (Unidad uni = new Unidad(cr.id_unidad)) { //Validando si existe if (uni.id_unidad != 0) { //Asignando Valor txtEntidad.Text = uni.numero_unidad + " ID:" + uni.id_unidad.ToString(); } } } else if (cr.id_empleado != 0) { /**** Empleado ****/ txtEntidad.Text = " ID:" + cr.id_empleado.ToString(); } //Asignando los Valores txtReferencia.Text = cr.referencia; txtFechaIni.Text = cr.fecha_inicial.ToString("dd/MM/yyyy"); txtFechaUltCob.Text = cr.fecha_ultimo_cobro.ToString("dd/MM/yyyy") == "01/01/0001" ? "" : cr.fecha_ultimo_cobro.ToString("dd/MM/yyyy"); ddlEstatusTermino.SelectedValue = cr.id_estatus_termino.ToString(); //Invocando Método de Carga de Historial de Cobros cargaCobrosRecurrentesTotales(cr.id_cobro_recurrente, cr.id_tipo_entidad_aplicacion, cr.id_unidad, cr.id_operador, cr.id_proveedor_compania, cr.id_compania_emisor); } } break; } } }
/// <summary> /// Método Privado encargado de Guardar el Cobro Recurrente /// </summary> private RetornoOperacion guardaCobroRecurrente() { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Obteniendo Fecha DateTime fec_ini; DateTime.TryParse(txtFechaIni.Text, out fec_ini); //Obteniendo Valor de la Entidad int id_unidad = ddlTipoEntApl.SelectedValue == "1" ? Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtEntidad.Text, "ID:", 1)) : 0; int id_operador = ddlTipoEntApl.SelectedValue == "2" ? Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtEntidad.Text, "ID:", 1)) : 0; int id_proveedor = ddlTipoEntApl.SelectedValue == "3" ? Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtEntidad.Text, "ID:", 1)) : 0; int id_empleado = ddlTipoEntApl.SelectedValue == "4" ? Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada(txtEntidad.Text, "ID:", 1)) : 0; //Validando que Exista un Tipo de Cobro if (ddlTipoCobroRecurrente.SelectedValue != "" && ddlTipoCobroRecurrente.SelectedValue != "0") { //Validando el Estatus de la Página switch ((Pagina.Estatus)Session["estatus"]) { case Pagina.Estatus.Nuevo: { //Insertando Cobro Recurrente result = SAT_CL.Liquidacion.CobroRecurrente.InsertaCobroRecurrente(Convert.ToInt32(ddlTipoCobroRecurrente.SelectedValue), ((SAT_CL.Seguridad.UsuarioSesion)Session["usuario_sesion"]).id_compania_emisor_receptor, Convert.ToDecimal(txtTotalDeuda.Text), Convert.ToDecimal(txtTotalCobrado.Text), Convert.ToDecimal(txtMontoCobro.Text == "" ? "0" : txtMontoCobro.Text), 1, 1, Convert.ToByte(ddlTipoEntApl.SelectedValue), id_unidad, id_operador, id_proveedor, id_empleado, txtReferencia.Text, fec_ini, fec_ini, Convert.ToByte(ddlEstatusTermino.SelectedValue), 0, 0, ((Usuario)Session["usuario"]).id_usuario); break; } case Pagina.Estatus.Edicion: { //Instanciando Cobro Recurrente using (SAT_CL.Liquidacion.CobroRecurrente cr = new SAT_CL.Liquidacion.CobroRecurrente(Convert.ToInt32(Session["id_registro"]))) { //Validando que exista el Registro if (cr.id_cobro_recurrente != 0) { //Editando Cobro Recurrente result = cr.EditaCobroRecurrente(Convert.ToInt32(ddlTipoCobroRecurrente.SelectedValue), cr.id_compania_emisor, Convert.ToDecimal(txtTotalDeuda.Text), Convert.ToDecimal(txtTotalCobrado.Text), Convert.ToDecimal(txtMontoCobro.Text == "" ? "0" : txtMontoCobro.Text), 1, cr.dias_cobro, Convert.ToByte(ddlTipoEntApl.SelectedValue), id_unidad, id_operador, id_proveedor, id_empleado, txtReferencia.Text, fec_ini, cr.fecha_ultimo_cobro, Convert.ToByte(ddlEstatusTermino.SelectedValue), cr.id_tabla, cr.id_registro, ((Usuario)Session["usuario"]).id_usuario); } } break; } } } else { //Instanciando Excepción result = new RetornoOperacion("No Existe el Tipo de Cobro"); } //Validando Operación Exitosa if (result.OperacionExitosa) { //Asignando Sessiones Session["id_registro"] = result.IdRegistro; Session["estatus"] = Pagina.Estatus.Lectura; //Inicializando Página inicializaPagina(); } //Mostrando Mensaje return(result); }
/// <summary> /// Método encargado de Inicializar el Control de Usuario /// </summary> private void inicializaControlUsuario() { //Validando que no exista el Tipo de Cobro Recurrente if (_id_cobro_recurrente == 0) { //Asignando Tipo de Entidad ddlTipoEntApl.SelectedValue = _id_tipo_entidad.ToString(); //Validando Tipo de Entidad switch (_id_tipo_entidad) { case 1: { //Instanciando Unidad using (SAT_CL.Global.Unidad unidad = new SAT_CL.Global.Unidad(_id_entidad)) { //Validando que exista la Unidad if (unidad.habilitar) { //Asignando Valor txtEntidad.Text = unidad.numero_unidad + " ID:" + unidad.id_unidad.ToString(); } } break; } case 2: { //Instanciando Operador using (SAT_CL.Global.Operador operador = new SAT_CL.Global.Operador(_id_entidad)) { //Validando que exista el Operador if (operador.habilitar) { //Asignando Valor txtEntidad.Text = operador.nombre + " ID:" + operador.id_operador.ToString(); } } break; } case 3: { //Instanciando Proveedor using (SAT_CL.Global.CompaniaEmisorReceptor proveedor = new SAT_CL.Global.CompaniaEmisorReceptor(_id_entidad)) { //Validando que exista el Proveedor if (proveedor.habilitar) { //Asignando Valor txtEntidad.Text = proveedor.nombre + " ID:" + proveedor.id_compania_emisor_receptor.ToString(); } } break; } } //Mostrando Total de la Deuda txtTotalDeuda.Text = string.Format("{0:0.00}", _total_deuda); //Limpiando Controles txtDescuento.Text = ""; //Validando Entidad switch (this._id_tabla) { case 82: { //Instanciando Liquidación using (SAT_CL.Liquidacion.Liquidacion liq = new SAT_CL.Liquidacion.Liquidacion(this._id_registro)) { //Validando que exista la Liquidación if (liq.habilitar) { //Asignando Fecha de Liquidación txtFecInicio.Text = liq.fecha_liquidacion.ToString("dd/MM/yyyy"); } else { //Asignando Fecha Actual txtFecInicio.Text = TSDK.Base.Fecha.ObtieneFechaEstandarMexicoCentro().ToString("dd/MM/yyyy"); } } break; } default: { //Asignando Fecha Actual txtFecInicio.Text = TSDK.Base.Fecha.ObtieneFechaEstandarMexicoCentro().ToString("dd/MM/yyyy"); break; } } } else { //Instanciando Cobro Recurrente using (SAT_CL.Liquidacion.CobroRecurrente cobro = new SAT_CL.Liquidacion.CobroRecurrente(_id_cobro_recurrente)) { //Validando que exista el Cobro if (cobro.habilitar) { //Validando Tipo de Entidad switch (cobro.id_tipo_entidad_aplicacion) { case 1: { //Instanciando Unidad using (SAT_CL.Global.Unidad unidad = new SAT_CL.Global.Unidad(cobro.id_unidad)) { //Validando que exista la Unidad if (unidad.habilitar) { //Asignando Valor txtEntidad.Text = unidad.numero_unidad + " ID:" + unidad.id_unidad.ToString(); } } break; } case 2: { //Instanciando Operador using (SAT_CL.Global.Operador operador = new SAT_CL.Global.Operador(cobro.id_operador)) { //Validando que exista el Operador if (operador.habilitar) { //Asignando Valor txtEntidad.Text = operador.nombre + " ID:" + operador.id_operador.ToString(); } } break; } case 3: { //Instanciando Proveedor using (SAT_CL.Global.CompaniaEmisorReceptor proveedor = new SAT_CL.Global.CompaniaEmisorReceptor(cobro.id_proveedor_compania)) { //Validando que exista el Proveedor if (proveedor.habilitar) { //Asignando Valor txtEntidad.Text = proveedor.nombre + " ID:" + proveedor.id_compania_emisor_receptor.ToString(); } } break; } } //Asignando Valores this._id_compania = cobro.id_compania_emisor; txtTotalDeuda.Text = string.Format("{0:0.00}", cobro.total_deuda); txtDescuento.Text = string.Format("{0:0.00}", cobro.monto_cobro); txtFecInicio.Text = cobro.fecha_inicial.ToString("dd/MM/yyyy"); } } } }