/// <summary> /// Método Público encargado de Terminar el Vencimiento /// </summary> /// <returns></returns> public RetornoOperacion TerminaVencimiento() { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Obteniendo Fecha de Fin DateTime fec_fin; DateTime.TryParse(txtFecFin.Text, out fec_fin); //Validando que Exista el Vencimiento if (this._id_vencimiento > 0) { //Instanciando Vencimiento using (SAT_CL.Global.Vencimiento ven = new SAT_CL.Global.Vencimiento(this._id_vencimiento)) { //Validando que exista el Vencimiento if (ven.id_vencimiento > 0) { //Terminando Vencimiento result = ven.TerminaVencimiento(fec_fin, ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } else { //Instanciando Excepción result = new RetornoOperacion("El vencimiento no fue encontrado para su edición."); } } } else { //Instanciando Excepción result = new RetornoOperacion("No existe un vencimiento que terminar."); } //Validando que la Operación fue Exitosa if (result.OperacionExitosa) { //Guardando Id de registro actualizado this._id_vencimiento = result.IdRegistro; this._id_tabla = this._id_registro = 0; //Invocando Método de Inicialización inicializaControl(); } //Mostrando Mensaje de Operación lblError.Text = result.Mensaje; //Devolviendo Objeto de Retorno return(result); }
/// <summary> /// Método encargado de Guardar un Vencimiento /// </summary> /// <returns></returns> public RetornoOperacion GuardaVencimiento() { //Declarando Objeto de Retorno RetornoOperacion result = new RetornoOperacion(); //Obteniendo Fechas DateTime fecha_inicio = DateTime.MinValue; DateTime.TryParse(txtFecIni.Text, out fecha_inicio); //Obteniendo Registro int idRegistro = Convert.ToInt32(TSDK.Base.Cadena.RegresaCadenaSeparada((txtRegistroEnt1.Visible ? txtRegistroEnt1.Text : (txtRegistroEnt2.Visible ? txtRegistroEnt2.Text : txtRegistroEnt3.Text)), "ID:", 1, "0")); //Validando que Exista el Tipo de Vencimiento if (ddlTipoVencimiento.SelectedValue != "0") { //Validando si existe un Vencimiento if (this._id_vencimiento > 0) { //Instanciando Vencimiento using (SAT_CL.Global.Vencimiento ven = new SAT_CL.Global.Vencimiento(this._id_vencimiento)) { //Validando que Exista el Vencimiento if (ven.id_vencimiento > 0) { //Edita Vencimiento result = ven.EditaVencimiento(ven.estatus, Convert.ToInt32(ddlEntidad.SelectedValue), idRegistro, Convert.ToInt32(ddlPrioridad.SelectedValue), Convert.ToInt32(ddlTipoVencimiento.SelectedValue), txtDescripcion.Text.ToUpper(), fecha_inicio, ven.fecha_fin, Convert.ToDecimal(txtValorKm.Text == "" ? "0" : txtValorKm.Text), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } } } else { //Edita Vencimiento result = SAT_CL.Global.Vencimiento.InsertaVencimiento(Convert.ToInt32(ddlEntidad.SelectedValue), idRegistro, Convert.ToInt32(ddlPrioridad.SelectedValue), Convert.ToInt32(ddlTipoVencimiento.SelectedValue), txtDescripcion.Text.ToUpper(), fecha_inicio, DateTime.MinValue, Convert.ToDecimal(txtValorKm.Text == "" ? "0" : txtValorKm.Text), ((SAT_CL.Seguridad.Usuario)Session["usuario"]).id_usuario); } } else { //Instanciando Excepción result = new RetornoOperacion("* Seleccione el Tipo del Vencimiento"); } //Validando que la Operación fuese Exitosa if (result.OperacionExitosa) { //Asignando Id de Registro actualizado this._id_vencimiento = result.IdRegistro; //Limpiando auxiliares de tabla y registro this._id_tabla = this._id_registro = 0; //Invocando Método de Inicialización inicializaControl(); } //Mostrando Mensaje de la Operación lblError.Text = result.Mensaje; //Devolviendo Resultado Obtenido return(result); }
/// <summary> /// Método encargado de Inicializar los Valores del Control /// </summary> private void inicializaControl() { //Limpiando Controles de texto limpiaControles(); //Cargando Catalogos cargaCatalogos(); //Si no hay un vencimiento activo (captura de nuevo vencimiento) if (this._id_tabla > 0) { //Asignando Valor de la Entidad ddlEntidad.SelectedValue = this._id_tabla.ToString(); //Instanciando el registro en cuestión //Si es un operador if (this._id_tabla == 76) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = true; txtRegistroEnt2.Visible = txtRegistroEnt3.Visible = txtValorKm.Enabled = false; //Si el registro es mayor a 0 if (this._id_registro > 0) { //Mostrando registro de interés using (SAT_CL.Global.Operador operador = new SAT_CL.Global.Operador(this._id_registro)) txtRegistroEnt1.Text = string.Format("{0} ID:{1}", operador.nombre, operador.id_operador); } } //Si es unidad else if (this._id_tabla == 19) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = txtRegistroEnt3.Visible = false; txtRegistroEnt2.Visible = true; txtValorKm.Enabled = true; //Si el registro es mayor a 0 if (this._id_registro > 0) { //Mostrando registro de interés using (SAT_CL.Global.Unidad unidad = new SAT_CL.Global.Unidad(this._id_registro)) txtRegistroEnt2.Text = string.Format("{0} ID:{1}", unidad.numero_unidad, unidad.id_unidad); } } //Si es Transportista else if (this._id_tabla == 1) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = txtRegistroEnt2.Visible = txtValorKm.Enabled = false; txtRegistroEnt3.Visible = true; //Si el registro es mayor a 0 if (this._id_registro > 0) { //Mostrando registro de interés using (SAT_CL.Documentacion.Servicio servicio = new SAT_CL.Documentacion.Servicio(this._id_registro)) txtRegistroEnt3.Text = string.Format("Servicio No.{0} ID:{1}", servicio.no_servicio, servicio.id_servicio); } } //Tipo de Vencimiento correspondiente al tipo de entidad (Tabla: 19 -> 1 Unidad, Tabla: 76 -> 2 Operador) SAT_CL.CapaNegocio.m_capaNegocio.CargaCatalogo(ddlTipoVencimiento, 48, "-- Seleccione un Tipo", Convert.ToInt32(ddlEntidad.SelectedValue == "76" ? "2" : ddlEntidad.SelectedValue == "19" ? "1" : "4"), "", 0, ""); //Instanciando Tipo de Vencimiento using (SAT_CL.Global.TipoVencimiento tv = new SAT_CL.Global.TipoVencimiento(Convert.ToInt32(ddlTipoVencimiento.SelectedValue))) { //Validando que Existe el Tipo if (tv.id_tipo_vencimiento > 0) { //Asignando Valor ddlPrioridad.SelectedValue = tv.id_prioridad.ToString(); } } } //De lo contrario (vencimiento activo en lectura o edición) else { //Instanciando vencimiento solicitado using (SAT_CL.Global.Vencimiento vencimiento = new SAT_CL.Global.Vencimiento(this._id_vencimiento)) { //Asignando atributos de vencimiento sobre controles de lectura/edición if (vencimiento.id_vencimiento > 0) { //Asignando Valores lblId.Text = vencimiento.id_vencimiento.ToString(); ddlEstatus.SelectedValue = vencimiento.id_estatus.ToString(); ddlEntidad.SelectedValue = vencimiento.id_tabla.ToString(); //cargando catalogo de tipos de vencimiento SAT_CL.CapaNegocio.m_capaNegocio.CargaCatalogo(ddlTipoVencimiento, 48, "-- Seleccione un Tipo", Convert.ToInt32(ddlEntidad.SelectedValue == "76" ? "2" : ddlEntidad.SelectedValue == "19" ? "1" : "4"), "", 0, ""); //Asignando valor al catalogo ddlTipoVencimiento.SelectedValue = vencimiento.id_tipo_vencimiento.ToString(); //Instanciando Tipo de Vencimiento using (SAT_CL.Global.TipoVencimiento tv = new SAT_CL.Global.TipoVencimiento(vencimiento.id_tipo_vencimiento)) { //Validando que Existe el Tipo if (tv.id_tipo_vencimiento > 0) { //Asignando Valor ddlPrioridad.SelectedValue = tv.id_prioridad.ToString(); } } ddlPrioridad.SelectedValue = vencimiento.id_prioridad.ToString(); ddlTipoVencimiento.SelectedValue = vencimiento.id_tipo_vencimiento.ToString(); txtDescripcion.Text = vencimiento.descripcion; txtFecIni.Text = vencimiento.fecha_inicio.ToString("dd/MM/yyyy HH:mm"); txtFecFin.Text = vencimiento.fecha_fin == DateTime.MinValue ? "" : vencimiento.fecha_fin.ToString("dd/MM/yyyy HH:mm"); txtValorKm.Text = vencimiento.valor_km.ToString(); //Si es un operador if (vencimiento.id_tabla == 76) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = true; txtRegistroEnt2.Visible = txtRegistroEnt3.Visible = txtValorKm.Enabled = false; using (SAT_CL.Global.Operador operador = new SAT_CL.Global.Operador(vencimiento.id_registro)) txtRegistroEnt1.Text = string.Format("{0} ID:{1}", operador.nombre, operador.id_operador); } //Si es unidad else if (vencimiento.id_tabla == 19) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = false; txtRegistroEnt2.Visible = true; txtRegistroEnt3.Visible = false; txtValorKm.Enabled = true; using (SAT_CL.Global.Unidad unidad = new SAT_CL.Global.Unidad(vencimiento.id_registro)) txtRegistroEnt2.Text = string.Format("{0} ID:{1}", unidad.numero_unidad, unidad.id_unidad); } //Si es servicio else if (vencimiento.id_tabla == 1) { //Habilitando controles según sea requerido txtRegistroEnt1.Visible = txtRegistroEnt2.Visible = false; txtRegistroEnt3.Visible = true; txtValorKm.Enabled = false; using (SAT_CL.Documentacion.Servicio servicio = new SAT_CL.Documentacion.Servicio(vencimiento.id_registro)) txtRegistroEnt3.Text = string.Format("Servicio No.{0} ID:{1}", servicio.no_servicio, servicio.id_servicio); } } } } //Validando Configuración de Termino if (this._hab_terminar) { //Asignando Valor txtFecFin.Text = TSDK.Base.Fecha.ObtieneFechaEstandarMexicoCentro().ToString("dd/MM/yyyy HH:mm"); } //Aplicando habilitación sobre botón terminar btnTerminar.Enabled = txtFecFin.Enabled = this._hab_terminar; }