/// <summary> /// Registra una nueva cuota a pagar por el asociado, automáticamente se ejecuta /// un trigger en la base de datos que le asigna de manera automática a cada asociado /// activo el pago pendiente de la misma. /// </summary> /// <param name="pCuota"></param> public void RegistrarCuota(SIGEEA_Cuota pCuota) { DataClasses1DataContext dc = new DataClasses1DataContext(); dc.SIGEEA_Cuotas.InsertOnSubmit(pCuota); dc.SubmitChanges(); }
/// <summary> /// Actualiza la categoría del asociado con respecto a las cuotas /// </summary> /// <param name="pCuota"></param> /// <param name="pAsociado"></param> private void ActualizarCategoriaCuota(SIGEEA_Cuota pCuota, int pAsociado) { try { DataClasses1DataContext dc = new DataClasses1DataContext(); int calificacion; SIGEEA_Asociado asociado = dc.SIGEEA_Asociados.First(c => c.PK_Id_Asociado == pAsociado); List <SIGEEA_spObtenerInfoCategoriaAsocCuotasResult> lista = dc.SIGEEA_spObtenerInfoCategoriaAsocCuotas(pAsociado).ToList(); double calificacionActual = dc.SIGEEA_CatAsociados.First(c => c.PK_Id_CatAsociado == asociado.FK_Id_CatAsociado).CuotasProm_CatAsociado; if (DateTime.Now > pCuota.FecFin_Cuota) { calificacion = 1; //Si ya se pasó la fecha de pago } else if (DateTime.Now == pCuota.FecFin_Cuota) { calificacion = 3; //Si hoy es el día de pago } else { calificacion = 5; //Si va a pagar con antelación } int cantidadPagos = lista.Count(); double calificacionNuevaTotal = ((cantidadPagos - 1) * calificacionActual) + calificacion; double calificacionNuevaFinal = calificacionNuevaTotal / cantidadPagos; dc.SIGEEA_spActualizaCategoriaCuotas(asociado.FK_Id_CatAsociado, calificacionNuevaFinal); dc.SubmitChanges(); } catch (Exception ex) { } }
/// <summary> /// Registra una nueva cuota a pagar por el asociado, automáticamente se ejecuta /// un trigger en la base de datos que le asigna de manera automática a cada asociado /// activo el pago pendiente de la misma. /// </summary> /// <param name="pCuota"></param> public void RegistrarCuota(SIGEEA_Cuota pCuota) { SIGEEA_DiagramaDataContext dc = new SIGEEA_DiagramaDataContext(); dc.SIGEEA_Cuotas.InsertOnSubmit(pCuota); dc.SubmitChanges(); }
/// <summary> /// Edita la información de una cuota existente /// </summary> /// <param name="pCuota"></param> public void EditarCuota(SIGEEA_Cuota pCuota) { DataClasses1DataContext dc = new DataClasses1DataContext(); SIGEEA_Cuota cuota = dc.SIGEEA_Cuotas.First(c => c.PK_Id_Cuota == pCuota.PK_Id_Cuota); cuota.Monto_Cuota = pCuota.Monto_Cuota; cuota.FecFin_Cuota = pCuota.FecFin_Cuota; cuota.FecInicio_Cuota = pCuota.FecInicio_Cuota; cuota.FK_Id_Moneda = pCuota.FK_Id_Moneda; cuota.Nombre_Cuota = pCuota.Nombre_Cuota; dc.SubmitChanges(); }
public wnwRegistrarCuota(int pIdCuota) { InitializeComponent(); if (pIdCuota != 0) { SIGEEA_DiagramaDataContext dc = new SIGEEA_DiagramaDataContext(); SIGEEA_Cuota cuota = dc.SIGEEA_Cuotas.First(c => c.PK_Id_Cuota == pIdCuota); txbNombre.Text = cuota.Nombre_Cuota; txbMonto.Text = cuota.Monto_Cuota.ToString(); dtpFecInicio.Text = cuota.FecInicio_Cuota.ToString(); dtpFecFin.Text = cuota.FecFin_Cuota.ToString(); ucMoneda.setMoneda(cuota.FK_Id_Moneda); pk_cuota = pIdCuota; } }
private void btnGuardar_Click(object sender, RoutedEventArgs e) { try { ValidacionesMantenimiento validacion = new ValidacionesMantenimiento(); bool valido = true; foreach (TextBox txb in grdValidar.Children) { BrushConverter bc = new BrushConverter(); txb.Foreground = (Brush)bc.ConvertFrom("#FF000000"); if (validacion.Validar(txb.Text, Convert.ToInt32(txb.Tag)) == false) { valido = false; txb.Foreground = (Brush)bc.ConvertFrom("#FFFF0404"); } } if (valido == true) { SIGEEA_Cuota cuota = new SIGEEA_Cuota(); AsociadoMantenimiento asociado = new AsociadoMantenimiento(); cuota.Nombre_Cuota = txbNombre.Text; cuota.Monto_Cuota = Convert.ToDouble(txbMonto.Text); cuota.FecInicio_Cuota = dtpFecInicio.SelectedDate.Value; cuota.FecFin_Cuota = dtpFecFin.SelectedDate.Value; cuota.FK_Id_Moneda = ucMoneda.getMoneda(); if (pk_cuota == 0) { asociado.RegistrarCuota(cuota); } else { cuota.PK_Id_Cuota = pk_cuota; asociado.EditarCuota(cuota); } MessageBox.Show("La cuota se ha registrado con éxito.", "SIGEEA", MessageBoxButton.OK, MessageBoxImage.Information); this.Close(); } else { throw new System.ArgumentException("Los datos ingresados no coinciden con los formatos requeridos."); } } catch (Exception ex) { MessageBox.Show("Error: " + ex.Message, "SIGEEA", MessageBoxButton.OK, MessageBoxImage.Error); } }
/// <summary> /// Se realiza el pago de una cuota de asociado /// </summary> /// <param name="pCuotaAsociado"></param> /// <param name="pMonto"></param> /// <returns></returns> public bool RealizarPagoCuota(int pCuotaAsociado, double pMonto) { try { DataClasses1DataContext dc = new DataClasses1DataContext(); SIGEEA_Cuota_Asociado cuota = dc.SIGEEA_Cuota_Asociados.First(c => c.PK_Id_Cuota_Asociado == pCuotaAsociado); double saldo = dc.SIGEEA_Cuota_Asociados.First(c => c.PK_Id_Cuota_Asociado == pCuotaAsociado).Saldo_Cuota_Asociado; cuota.Saldo_Cuota_Asociado = saldo - pMonto; if (cuota.Saldo_Cuota_Asociado <= 0)//Si el asociado ya terminó de cancelar la cuota { SIGEEA_Cuota cuotaPrincipal = dc.SIGEEA_Cuotas.First(c => c.PK_Id_Cuota == cuota.FK_Id_Cuota); cuota.Estado_Cuota_Asociado = true; dc.SubmitChanges(); ActualizarCategoriaCuota(cuotaPrincipal, cuota.FK_Id_Asociado); } dc.SubmitChanges(); return(true); } catch { return(false); } }