/// <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);
            }
        }
Beispiel #2
0
        /// <summary>
        /// Maneja el evento "CellContentClick" del control "Vista_ContratosDataGridView"
        /// </summary>
        /// <param name="sender">La celda seleccionada</param>
        /// <param name="e">Los argumentos del evento</param>
        private void vista_ContratosDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                //  Si se hizo click en la columna "Actualizar"
                if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "EditColumn")
                {
                    //  Mostramos la pantalla de actualización de contrato
                    ActualizacionContrato    ac       = new ActualizacionContrato();
                    Entities.Vista_Contratos contrato =
                        (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem;
                    ac.Contrato_ID = contrato.Contrato_ID;

                    Padre.SwitchForma("ActualizacionContrato", ac);
                }

                //  Si se hizo click en la columna "Cancelar"
                else if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "CancelColumn")
                {
                    //  Solicitamos confirmación
                    if (AppHelper.Confirm("¿Realmente desea cancelar el contrato?") == System.Windows.Forms.DialogResult.Yes)
                    {
                        // Cancelar el contrato
                        Entities.Vista_Contratos contrato =
                            (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem;
                        CancelarContrato(contrato.Contrato_ID);
                    }
                }
            }
            catch (Exception ex)
            {
                AppHelper.Error(ex.Message);
            }
        }
Beispiel #3
0
		/// <summary>
		/// Maneja el evento "CellContentClick" del control "Vista_ContratosDataGridView"
		/// </summary>
		/// <param name="sender">La celda seleccionada</param>
		/// <param name="e">Los argumentos del evento</param>
		private void vista_ContratosDataGridView_CellContentClick(object sender, DataGridViewCellEventArgs e)
		{
			try
			{
				Entities.Vista_Contratos contrato =
						  (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem;

				//  Si se hizo click en la columna "Actualizar"
				if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "EditColumn")
				{
					//  Mostramos la pantalla de actualización de contrato
					ActualizacionContrato ac = new ActualizacionContrato();
					ac.Contrato_ID = contrato.Contrato_ID;

					Padre.SwitchForma("ActualizacionContrato", ac);
				}

				//  Si se hizo click en la columna "Cancelar"
				if (vista_ContratosDataGridView.Columns[e.ColumnIndex].Name == "CancelColumn")
				{
					//Se verifica si hay adendums vigentes
					DataTable dt = SICASv20.Entities.Vista_ContratosAdendumDetalle.GetDataTable(contrato.Contrato_ID);

					//La query de la bd esta ordenado por la fecha de inicio en forma descendete, es decir, trae la fecha de inicio mas reciente
					DataRow[] drs = dt.Select(string.Format("FechaInicio <= '{0}' and FechaFin >= '{0}'", DateTime.Now.Date));

					//si hay adendums viegentes al dia de hoy
					if (dt != null && dt.Rows.Count > 0 && drs.Length > 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;
					}

					//  Solicitamos confirmación
					if (AppHelper.Confirm("¿Realmente desea cancelar el contrato?") == System.Windows.Forms.DialogResult.Yes)
					{
						// Cancelar el contrato
						//Entities.Vista_Contratos contrato =
						//    (Entities.Vista_Contratos)vista_ContratosDataGridView.Rows[e.RowIndex].DataBoundItem;
						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);
            }
        }