public async Task UpdateWithRelated(PolizaDto p) { var poliza = await _dbContext.Poliza.Include(x => x.PolizaClientes).FirstOrDefaultAsync(x => x.Id.Equals(p.Id)); if (poliza != null) { poliza.Nombre = p.Nombre; poliza.Descripcion = p.Descripcion; poliza.CoberturaMeses = p.CoberturaMeses; poliza.InicioVigencia = p.InicioVigencia; poliza.PorcentajeCubrimiento = p.PorcentajeCubrimiento; poliza.Precio = p.Precio; poliza.AgenciaId = p.Agencia.Id; poliza.TipoCubrimientoId = p.TipoCubrimiento.Id; poliza.TipoRiesgoId = p.TipoRiesgo.Id; poliza.PolizaClientes.Clear(); await _dbContext.SaveChangesAsync(); poliza.PolizaClientes = p.Clientes.Select(x => new PolizaCliente { ClienteId = x.Id }).ToList(); await _dbContext.SaveChangesAsync(); } }
private LocalReport GetReportePlanillaDespacho(int idPedido) { var pedido = _dbContext.Pedidos.Find(idPedido); var polizas = pedido.Polizas.Where(a => a.DetallePolizas.Any()).ToList(); _tempPolizas = polizas; var datosCabecera = new List <PlanillaDespachoDto> { new PlanillaDespachoDto { NombreCompleto = pedido.Cliente.NombreCompleto, NitCi = pedido.Cliente.Carnet, Descripcion = string.IsNullOrEmpty(pedido.Contenedores) ? "": pedido.Contenedores, Poliza = string.Join(" - ", polizas.Select(a => a.Codigo)), LugarFecha = $"Santa Cruz - {DateTime.Now.Day} de {DateTime.Now.ToString("MMMM")} del {DateTime.Now.Year}", TotalPedido = polizas.Sum(a => a.DetallePolizas.Sum(b => b.Precio)) } }; var datosPolizas = new List <PolizaDto>(); foreach (var poliza in polizas) { var datoPoliza = new PolizaDto { IdPoliza = poliza.Id, Nombre = poliza.Nombre, Codigo = poliza.Codigo, TotalPoliza = poliza.DetallePolizas.Sum(a => a.Precio) }; datosPolizas.Add(datoPoliza); } var localReport = new LocalReport(); localReport.SubreportProcessing += SubReporteDetalleContenedor; localReport.DataSources.Clear(); var memory = pedido.EmpresaId == (int)EmpresaEnum.MaxiTrader ? new MemoryStream(ReportesResources.PlanillaDespachoMaxT) : new MemoryStream(ReportesResources.PlanillaDespacho); var subMemory = new MemoryStream(ReportesResources.SubDetalleContenedor); localReport.LoadReportDefinition(memory); localReport.LoadSubreportDefinition("SubDetalleContenedor", subMemory); ////Agregar nuevo ReportDataSource con el nombre y lista correspondiente. localReport.DataSources.Add(new ReportDataSource("PlantillaDespacho", datosCabecera)); localReport.DataSources.Add(new ReportDataSource("Poliza", datosPolizas)); return(localReport); }
public async Task <PolizaDto> CrearPoliza(PolizaDto p) { var poliza = new Poliza { Nombre = p.Nombre, Descripcion = p.Descripcion, CoberturaMeses = p.CoberturaMeses, InicioVigencia = p.InicioVigencia, Precio = p.Precio, PorcentajeCubrimiento = p.PorcentajeCubrimiento, AgenciaId = p.Agencia.Id, TipoCubrimientoId = p.TipoCubrimiento.Id, TipoRiesgoId = p.TipoRiesgo.Id, PolizaClientes = p.Clientes.Select(x => new PolizaCliente { ClienteId = x.Id }).ToList() }; await _polizaRepository.Create(poliza); p.Id = poliza.Id; return(p); }
public async Task <IActionResult> ActualizarPoliza([FromBody] PolizaDto p) { var result = await _polizaService.ActualizarPoliza(p); return(Ok(result)); }
public async Task <PolizaDto> EliminarPoliza(PolizaDto p) { await _polizaRepository.DeleteWithRelated(p.Id); return(p); }
public async Task <PolizaDto> ActualizarPoliza(PolizaDto p) { await _polizaRepository.UpdateWithRelated(p); return(p); }