private int SetDeclaracionPrevia( DeclaracionPreviaModel model ) { var db = new ModelServidor(); var declaracionPreviaId = db.DeclaracionPrevia.Consecutivo(x => x.DeclaracionPreviaId); // guardarArchivo if (model.ArchivoRetencion != null) { model.RutaArchivoRetencion = FileSave.GuardarArchivo( model.ArchivoRetencion, $"{AppDomain.CurrentDomain.BaseDirectory}/Uploads/{DateTime.Now:yyyy}/{DateTime.Now:MM}", "ArchivoRetencion" ); } var declaracionPrevia = ToDeclaracionPrevia(model, declaracionPreviaId); var actividadesGravadas = ToActividadesGravadas( model.ActividadesGravadas, declaracionPreviaId ); var deudaCuotas = ToDeudaCuotas(declaracionPrevia); db.DeclaracionPrevia.Add(declaracionPrevia); db.ActividadGravablePorDeclaracion.AddRange(actividadesGravadas); db.DeclaracionDeudaCuota.AddRange(deudaCuotas); db.SaveChanges(); return(declaracionPreviaId); }
// GET: DeclaracionPrevia public ActionResult Index() { var model = new DeclaracionPreviaModel(); CalcularListasDropDown(ref model); return(View(model)); }
private void CalcularListasDropDown( ref DeclaracionPreviaModel model ) { var db = new ModelServidor(); var tiposDeDocumentos = db.TipoDocumento .Select( x => new ComboBox { Key = x.TipoDocumentoId, Value = x.Descripcion }) .ToList(); var tiposDeContribuyentes = db.TipoActividad.ToList(); var actividadesGravadas = db.ActividadGravada .OrderBy(x => x.Descripcion) .Select(x => new ActividadGravadaModel { ActividadId = x.ActividadId, Descripcion = x.Descripcion, Codigo = x.Codigo, Tarifa = x.Tarifa, Valor = x.Valor }) .ToList(); var clasificacionesContribuyentes = db.ClasificacionContribuyente .OrderBy(x => x.Descripcion) .Select(x => new ComboBox { Key = x.ClasificacionContribuyenteId, Value = x.Descripcion }) .ToList(); var tipoSanciones = db.TipoSancion .OrderBy(x => x.Descripcion) .Select(x => new TipoSancionModel { Key = x.TipoSancionId, Value = x.Descripcion, PorcentajeSancion = x.Porcentaje }) .ToList(); model.PagaAvisoTablero = true; model.TipoDocumentos = tiposDeDocumentos; model.TipoContribuyentes = tiposDeContribuyentes .Select(x => new SelectListItem { Text = x.Descripcion, Value = x.TipoActividadId.ToString() }).ToList(); model.ListaActividadesGravadas = actividadesGravadas; model.ListaClasificacionesContribuyentes = clasificacionesContribuyentes; model.ListaTipoSanciones = tipoSanciones; model.TipoSancion = tipoSanciones?.FirstOrDefault()?.Key; model.Cliente = model.PersonaId != 0 ? _clienteService.FindClienteByPersonaId(model.PersonaId) : new ClienteModel(); }
public ActionResult Index(DeclaracionPreviaModel model) { // Si no es válido, se regresa a corregir if (!ModelState.IsValid || !model.ActividadesGravadas.Any()) { CalcularListasDropDown(ref model); return(View(model)); } var declaracionPreviaId = SetDeclaracionPrevia(model); return(RedirectToAction("Exito", new { declaracionPreviaId })); }
private static DeclaracionPrevia ToDeclaracionPrevia( DeclaracionPreviaModel model, int consecutivo ) { return(new DeclaracionPrevia { DeclaracionPreviaId = consecutivo, FechaDeclaracion = DateTime.Now, Año = model.Año, TipoDeclaracion = model.TipoDeclaracion, TipoContribuyenteId = model.TipoContribuyenteId, TienePagoVoluntario = model.TienePagoVoluntario, PersonaId = model.PersonaId, IngresosEnElPais = model.IngresosEnElPais, IngresosFueraDelMunicipio = model.IngresosFueraDelMunicipio, TotalIngresosMunicipio = model.TotalIngresosMunicipio, IngresosDevoluciones = model.IngresosDevoluciones, IngresosExportaciones = model.IngresosExportaciones, IngresosActivosFijos = model.IngresosActivosFijos, IngresosNoGravados = model.IngresosNoGravados, IngresosActividadesExentas = model.IngresosActividadesExentas, TotalIngresosGravables = model.TotalIngresosGravables, TotalTarifa = model.TotalTarifa, CapacidadInstalada = model.CapacidadInstalada, TotaImpuestoEnergiaElectrica = model.TotaImpuestoEnergiaElectrica, TotalImpuestoIndustriaComercio = model.TotalImpuestoIndustriaComercio, ImpuestoAvisosTableros = model.ImpuestoAvisosTableros, PagoUnidadesComerciales = model.PagoUnidadesComerciales, SobretasaBomberil = model.SobretasaBomberil, SobretasaSeguridad = model.SobretasaSeguridad, TotalImpuestoCargo = model.TotalImpuestoCargo, ValorExoneracionImpuesto = model.ValorExoneracionImpuesto, RetencionesDelMunicipio = model.RetencionesDelMunicipio, DocumentoRetencion = model.RutaArchivoRetencion, AutoretencionesDelMunicipio = model.AutoretencionesDelMunicipio, AnticipoAnioAnterior = model.AnticipoAnioAnterior, AnticipoAnioSiguiente = model.AnticipoAnioSiguiente, TipoSancionId = model.TipoSancion, SaldoFavorPeriodoAnterior = model.SaldoFavorPeriodoAnterior, TotalSaldoCargo = model.TotalSaldoCargo, TotalSaldoFavor = model.TotalSaldoFavor, ValorPagar = model.ValorPagar, TotalPagar = model.TotalPagar }); }