// Cuando le doy click a generar la cuota private void btn_generar_Click(object sender, EventArgs e) { FrmImprimirBoleta FormularioImpresionBoleta; Modelo_Entidades.CtaCte oCtaCte; Modelo_Entidades.Boleta oBoleta; Modelo_Entidades.Movimiento oMovimiento; Modelo_Entidades.Anual oAnual; Modelo_Entidades.Bimensual oBimensual; Modelo_Entidades.Auditoria_Cuota oLog_Cuota; if (ValidarDatos()) { string tipo_de_cuota = cmb_tipo_matricula.SelectedItem.ToString(); #region Generación de cuota anual if (rbtn_anual.Checked == true) // genero la anual y la 1º { switch (tipo_de_cuota) { case ("Normal"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesNormales()) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oAnual = new Modelo_Entidades.Anual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); oMovimiento.fecha = DateTime.Now; oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oAnual).Valor(), 2); oMovimiento.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.estado = false; oAnual.Profesional = oProfesional; cCuota.AgregarCuota(oAnual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota anual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "Cuota anual año " + nud_año.Value.ToString(), 1); DialogResult DrLogin = FormularioImpresionBoleta.ShowDialog(); break; case ("Relación de Dependencia"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesEnRelacionDeDependencia()) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oAnual = new Modelo_Entidades.Anual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); oMovimiento.fecha = DateTime.Now; oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oAnual).Valor() * 0.7, 2); // EL PORCENTAJE ESTÁ HARKODEADO, DE TODAS FORMAS ESE ES EL VALOR QUE ANUALMENTE EL COLEGIO DISPONE oMovimiento.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.estado = false; oAnual.Profesional = oProfesional; cCuota.AgregarCuota(oAnual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota anual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "anual", 2); DialogResult DrLogin1 = FormularioImpresionBoleta.ShowDialog(); break; case ("Reciprocidad de Matrícula"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesEnReciprocidadDeMatricula()) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oAnual = new Modelo_Entidades.Anual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); oMovimiento.fecha = DateTime.Now; oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oAnual).Valor(), 2); oMovimiento.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oAnual.estado = false; oAnual.Profesional = oProfesional; cCuota.AgregarCuota(oAnual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota anual año " + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota anual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "anual", 3); DialogResult DrLogin2 = FormularioImpresionBoleta.ShowDialog(); break; } } #endregion #region Generación de cuota bimensual if (rbtn_bimensual.Checked == true) { switch (tipo_de_cuota) { case ("Normal"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesNormales()) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oBimensual = new Modelo_Entidades.Bimensual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); if (cCuota.ObtenerSiElProfPago(oProfesional, "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(), nud_año.Value.ToString()) == false) { oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oBimensual).Valor(), 2); oMovimiento.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.estado = false; oBimensual.Profesional = oProfesional; cCuota.AgregarCuota(oBimensual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota bimensual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.fecha = DateTime.Now; oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "/", 1); DialogResult DrLogin = FormularioImpresionBoleta.ShowDialog(); break; case ("Relación de Dependencia"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesEnRelacionDeDependencia()) { // Esto verifica si el profesional pagó la anual, no la genere las cuotas bimensuales y el que esté en relación de dependencia, la 5° y 6° cuota no las pague if (cCuota.ObtenerSiElProfPago(oProfesional, "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(), nud_año.Value.ToString()) == false) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oBimensual = new Modelo_Entidades.Bimensual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); if (nud_cuontas_numeros.Value.ToString() != "5" || nud_cuontas_numeros.Value.ToString() != "6") { oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oBimensual).Valor(), 2); oMovimiento.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.estado = false; oBimensual.Profesional = oProfesional; cCuota.AgregarCuota(oBimensual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota bimensual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.fecha = DateTime.Now; oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } } } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "/", 2); DialogResult DrLogin1 = FormularioImpresionBoleta.ShowDialog(); break; case ("Reciprocidad de Matrícula"): foreach (Modelo_Entidades.Profesional oProfesional in cProfesional.ObtenerProfesionalesEnReciprocidadDeMatricula()) { // Esto verifica si el profesional pagó la anual, no la genere las cuotas bimensuales y el que esté en relación de dependencia, la 5° y 6° cuota no las pague if (cCuota.ObtenerSiElProfPago(oProfesional, "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(), nud_año.Value.ToString()) == false) { oCtaCte = oProfesional.CtaCte; oBoleta = new Modelo_Entidades.Boleta(); oMovimiento = new Modelo_Entidades.Movimiento(); oBimensual = new Modelo_Entidades.Bimensual(); oLog_Cuota = new Modelo_Entidades.Auditoria_Cuota(); if (nud_cuontas_numeros.Value.ToString() != "5" || nud_cuontas_numeros.Value.ToString() != "6") { oMovimiento.importe = Math.Round(cCuota.ObtenerValor_Tipo_Couta(oBimensual).Valor(), 2); oMovimiento.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oBimensual.estado = false; oBimensual.Profesional = oProfesional; cCuota.AgregarCuota(oBimensual); #region Audito la cuota oLog_Cuota.estado = false; oLog_Cuota.descripcion = "Cuota " + nud_cuontas_numeros.Value.ToString() + "/" + nud_año.Value.ToString(); oLog_Cuota.Profesional_dni = oProfesional.dni; oLog_Cuota.usuario = miUsuario.nombre_apellido; oLog_Cuota.fecha = DateTime.Now; oLog_Cuota.accion = "Agregado de cuota bimensual al profesional " + oProfesional.nombre_apellido; cAuditoria.AuditarCuota(oLog_Cuota); #endregion oMovimiento.fecha = DateTime.Now; oMovimiento.CtaCte = oProfesional.CtaCte; oMovimiento.Tipo_Movimiento = cTipo_Movimiento.ObtenerMov_Deudor(); oMovimiento.Comprobante = oBoleta; cMovimiento.Alta(oMovimiento); oProfesional.CtaCte.Movimientos.Add(oMovimiento); oCtaCte.saldo = oCtaCte.saldo - Convert.ToDecimal(oMovimiento.importe); cCtaCte.Modificacion(oCtaCte); } } } FormularioImpresionBoleta = new FrmImprimirBoleta(cCuota.ObtenerCuotas().First().id, cCuota.ObtenerCuotas().Last().id, "/", 3); DialogResult DrLogin2 = FormularioImpresionBoleta.ShowDialog(); break; } } # endregion } this.Close(); }