def on_get(self, req, resp, datatype=None): if datatype == "0": stats = models_stats.Sumario.select().first() response = model_to_dict(stats) resp.body = json.dumps(response, cls=JSONEncoderPlus, sort_keys=True) elif datatype == "1": gasto_organismos = models_stats.MinisterioOrganismoMonto.select( models_stats.MinisterioOrganismoMonto.nombre_ministerio.concat("-") .concat(models_stats.MinisterioOrganismoMonto.nombre_organismo) .alias("nombre"), cast(models_stats.MinisterioOrganismoMonto.monto, "bigint").alias("monto"), ).order_by(peewee.SQL("nombre")) output = BytesIO() csvwriter = csv.writer(output, encoding="utf-8") for go in gasto_organismos.tuples(): csvwriter.writerow(go if len(go) == 4 else go + ("null", "null")) resp.content_type = "text/csv" output.seek(0) resp.stream = output else: raise falcon.HTTPNotFound()
def list(): search_param = request.args.get('q') if search_param: courses = Course.select().join(Department).where( Course.name.contains(search_param) | cast(Course.number, 'text').contains(search_param) | cast(Course.credit_hours, 'text').contains(search_param) | Department.name.contains(search_param) | Department.code.contains(search_param)).order_by(Course.number) else: courses = Course.select().join(Department).order_by(Course.number) return render_template('course/list.html', title="Courses", courses=courses, search=search_param)
def list_for_department(department_code): # FIXME: this seems like an unneccesary first query; is there a way to get the same behavior but save a query? department = get_object_or_404(Department, Department.code == department_code) search_param = request.args.get('q') if search_param: courses = Course.select().join(Department).where( (Course.name.contains(search_param) | cast(Course.number, 'text').contains(search_param) | cast(Course.credit_hours, 'text').contains(search_param) | Department.name.contains(search_param)), Department.code == department_code).order_by(Course.number) else: courses = Course.select().join(Department).where( Department.code == department_code) return render_template('course/list.html', title=department.name + " Courses", courses=courses, search=search_param)
def on_get(self, req, resp, datatype=None): """Obtiene estadisticas :param req: Falcon request object :param resp: Falcon response object :param datatype: Tipo de estadisticas solicitadas :return: """ if datatype == '0': stats = models_api.Sumario.select().first() response = model_to_dict(stats) resp.body = json.dumps(response, cls=JSONEncoderPlus, sort_keys=True) elif datatype == '1': gasto_organismos = models_api.MinisterioOrganismoMonto.select( models_api.MinisterioOrganismoMonto.nombre_ministerio.concat('-').concat(models_api.MinisterioOrganismoMonto.nombre_organismo).alias('nombre'), cast(models_api.MinisterioOrganismoMonto.monto, 'bigint').alias('monto') ).order_by( peewee.SQL('nombre') ) # Presentar los resultados como un archivo CSV # Simular archivo con un archivo en memoria output = BytesIO() csvwriter = csv.writer(output, encoding='utf-8') # Escribir archivo for go in gasto_organismos.tuples(): csvwriter.writerow(go if len(go) == 4 else go+('null', 'null')) # Preparar archivo para descarga resp.content_type = 'text/csv' output.seek(0) resp.stream = output else: raise falcon.HTTPNotFound()
# Migrate ############################################### ### PublicCompanies -> Comprador ### ############################################### print "\nMIGRATE PublicCompanies -> %s.Comprador" % db_schema_bkn fields_from = [ models_old.PublicCompanies.id, models_old.Jerarquia.ministerio_nombre, models_old.Jerarquia.catalogo_organismo, cast(models_old.Jerarquia.organismo_codigo, 'integer'), models_old.Jerarquia.organismo_nombre, cast(models_old.PublicCompanies.codigo_unidad, 'integer'), models_old.PublicCompanies.nombre_unidad, models_old.PublicCompanies.rut_unidad, models_old.PublicCompanies.direccion_unidad, models_old.PublicCompanies.comuna_unidad, models_old.PublicCompanies.region_unidad, cast(models_old.PublicCompanies.codigo_usuario, 'integer'), models_old.PublicCompanies.nombre_usuario, models_old.PublicCompanies.rut_usuario, models_old.PublicCompanies.cargo_usuario, ]