/// <summary> /// Maneja el evento "CellContentClick" para el control "vistaContratosDataGridView" /// </summary> /// <param name="sender">El control "vistaContratosDataGridView"</param> /// <param name="e">Los datos del evento</param> private void vista_ContratosDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { // El formulario de actualización de contratos ActualizacionContratoRenta ac = new ActualizacionContratoRenta(); Entities.Vista_Contratos contrato = (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem; // Obtenemos el estatus del contrato int estatuscontrato_id = Convert.ToInt32( DB.QueryScalar( "SELECT EstatusContrato_ID FROM Contratos WHERE Contrato_ID = @Contrato_ID", DB.Param("@Contrato_ID", contrato.Contrato_ID) ) ); // Si se oprimió la columna "EditColumn" if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "EditColumn") { // Si el estatus no es activo if (estatuscontrato_id != 1) { // Enviamos excepción AppHelper.ThrowException("El contrato {0} no esta activo, no puede ser actualizado", contrato.Contrato_ID); } // Configuramos folio ac.Contrato_ID = contrato.Contrato_ID; // Navegamos a la forma de actualización Padre.SwitchForma("ActualizacionContratoRenta", ac); // Salimos de la función return; } // Si se oprmío la columna "CancelColumn" if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "CancelColumn") { // Si el estatus del contrato no es "Activo" if (estatuscontrato_id != 1) { // Enviamos excepción AppHelper.ThrowException("El contrato {0} no esta activo, no puede ser terminado", contrato.Contrato_ID); } // Solicitamos confirmación if (AppHelper.Confirm("¿Realmente desea cancelar el contrato?") == System.Windows.Forms.DialogResult.Yes) { // Navegamos a la cancelación del contrato CancelarContrato(contrato.Contrato_ID); } } } catch (Exception ex) { AppHelper.Error(ex.Message); } }
/// <summary> /// Maneja el evento "CellContentClick" para el control "vistaContratosDataGridView" /// </summary> /// <param name="sender">El control "vistaContratosDataGridView"</param> /// <param name="e">Los datos del evento</param> private void vista_ContratosDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e) { try { // El formulario de actualización de contratos ActualizacionContratoRenta ac = new ActualizacionContratoRenta(); Entities.Vista_Contratos contrato = (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem; // Obtenemos el estatus del contrato int estatuscontrato_id = Convert.ToInt32( DB.QueryScalar( "SELECT EstatusContrato_ID FROM Contratos WHERE Contrato_ID = @Contrato_ID", DB.Param("@Contrato_ID", contrato.Contrato_ID) ) ); // Si se oprimió la columna "EditColumn" if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "EditColumn") { // Si el estatus no es activo if (estatuscontrato_id != 1) { // Enviamos excepción AppHelper.ThrowException("El contrato {0} no esta activo, no puede ser actualizado", contrato.Contrato_ID); } // Configuramos folio ac.Contrato_ID = contrato.Contrato_ID; // Navegamos a la forma de actualización Padre.SwitchForma("ActualizacionContratoRenta", ac); // Salimos de la función return; } // Si se oprmío la columna "CancelColumn" if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "CancelColumn") { // Si el estatus del contrato no es "Activo" if (estatuscontrato_id != 1) { // Enviamos excepción AppHelper.ThrowException("El contrato {0} no esta activo, no puede ser terminado", contrato.Contrato_ID); } // Solicitamos confirmación if (AppHelper.Confirm("¿Realmente desea cancelar el contrato?") == System.Windows.Forms.DialogResult.Yes) { //Se verifica si hay adendums vigentes int buscaCancelar = 1; DataTable dt = SICASv20.Entities.Vista_ContratosAdendumDetalle.GetDataTable(contrato.Contrato_ID, buscaCancelar); if (dt != null && dt.Rows.Count > 0) { AppHelper.Error("El contrato tiene adendum vigentes, favor de finalizarlo."); return; } //si tiene asignado equipo de gas if (Entities.Vista_EquipoGas.UnidadConEquipoGas(contrato.Contrato_ID)) { AppHelper.Error(string.Format("El conductor {0} del contrato {1} tiene un Equipo de Gas asignado, para cancelar el contrato favor de dar de baja la asignación del equipo de gas.", contrato.Conductor, contrato.Contrato_ID)); return; } // Navegamos a la cancelación del contrato CancelarContrato(contrato.Contrato_ID); } } } catch (Exception ex) { AppHelper.Error(ex.Message); } }