public List <DTPuntuacion> PuntuacionesPorEmpresa() { //PRIMERO TRAIGO TODOS LOS ID DE EMPRESAS EmpresaController controladorEmpresa = new EmpresaController(); var empresas = controladorEmpresa.ListarEmpresas(); List <DTPuntuacion> listado = new List <DTPuntuacion>(); foreach (Empresa empresa in empresas) { DTPuntuacion dTPunt = new DTPuntuacion(); int sumaPuntuaciones = 0; int contador = 0; double promedio; var query = (from pago in _pagoAEmpresas.AsQueryable <PagoEmpresa>() where pago.ViajeFinalizado.Puntuacion != 0 && pago.ViajeFinalizado.IdEmpresa == empresa.ID select pago).ToList(); foreach (PagoEmpresa pagoEmpresa in query) { sumaPuntuaciones += pagoEmpresa.ViajeFinalizado.Puntuacion; contador++; } dTPunt.NombreEmpresa = empresa.Nombre; promedio = (double)sumaPuntuaciones / (double)contador; dTPunt.PromedioPuntuacion = Math.Round(promedio, 1); listado.Add(dTPunt); } return(listado); }
public List <DTComision> ComisionesCobradasPorEmpresa() { EmpresaController controladorEmpresa = new EmpresaController(); var empresas = controladorEmpresa.ListarEmpresas(); List <DTComision> listado = new List <DTComision>(); foreach (Empresa _empresa in empresas) { DTComision _dTComision = new DTComision(); double comision = 0; var query = (from pago in _pagoAEmpresas.AsQueryable <PagoEmpresa>() where pago.ViajeFinalizado.Pago == "SI" && pago.ViajeFinalizado.IdEmpresa == _empresa.ID select pago).ToList(); foreach (PagoEmpresa pago in query) { comision += pago.Comision; } _dTComision.NombreEmpresa = _empresa.Nombre; _dTComision.Comision = Math.Round(comision, 2); listado.Add(_dTComision); } return(listado); }
public List <UbicacionVehiculo> ListaUbicacionVehiculosDisponibles() { EmpresaController controladorEmpresa = new EmpresaController(); VehiculoController controladorVehiculo = new VehiculoController(); List <dal.Empresa> empresas = controladorEmpresa.ListarEmpresas(); List <UbicacionVehiculo> listado = new List <UbicacionVehiculo>(); foreach (Empresa _emp in empresas) { List <Vehiculo> vehiculos = controladorVehiculo.ListarVehiculosDisponibles(_emp.ID); foreach (Vehiculo _veh in vehiculos) { UbicacionVehiculo _ubicacion = this.UltimaUbicacion(_emp.ID, _veh.ID); if (_ubicacion != null) { listado.Add(_ubicacion); } } } return(listado); }