public static Facturacion facturarIntervalo(Dictionary <String, String> parametrosDeBusqueda) { List <Viaje> viajes = Viaje.buscar(parametrosDeBusqueda); //pulir esto, hacer bien la logica para las fechas //aca se le deberia decir a los viajes que se guarden el id de la factura double importeTotal = viajes.Sum(viaje => viaje.calcularMonto()); //feoooo ver como arreglarlo String[] fechas = parametrosDeBusqueda["entreFechas"].Split('&'); String fechaInicio = fechas[0]; String fechaFinal = fechas[1]; return(new Facturacion(Convert.ToInt64(parametrosDeBusqueda["id_cliente"]), Convert.ToDateTime(fechaInicio), Convert.ToDateTime(fechaFinal), importeTotal, viajes)); }
public static Rendicion calcularRendicion(Dictionary <String, String> parametrosDeBusqueda) { //chekear que el chofer este activo Int64 idChofer = Convert.ToInt64(parametrosDeBusqueda["id_chofer"]); Int64 idTurno = Convert.ToInt64(parametrosDeBusqueda["id_turno"]); DateTime fecha = Convert.ToDateTime(parametrosDeBusqueda["fecha_viaje_para_rendicion"]); //viajes --> buscar por idChofer, idTurno y fecha List <Viaje> viajes = Viaje.buscar(parametrosDeBusqueda); double importeTotal = viajes.Sum(viaje => viaje.calcularMonto()); double kilometros = viajes.Sum(viaje => viaje.CantidadKilometros); //turno --> buscar idTurno Dictionary <String, String> busquedaTurno = new Dictionary <string, string>(); busquedaTurno.Add("id_turno", idTurno.ToString()); Turno turno = Turno.find(busquedaTurno); double precioBase = turno.PrecioBase; double valorKilometro = turno.ValorKilometro; return(new Rendicion(idChofer, idTurno, fecha, importeTotal, kilometros, precioBase, valorKilometro, viajes)); }