Пример #1
0
def proj_investments(project_id):
    selected_proj = [
        row for row in Projects.select().where(
            Projects.project_id == project_id).dicts()
    ]

    users_list = [
        row for row in Users.select(
            UserProject.user.first_name,
            UserProject.user.last_name,
            UserProject.role.title,
        ).join(UserProject).join(Roles).switch(UserProject).join(
            Projects).where(Projects.project_id == project_id).dicts()
    ]

    inv_list = [
        row for row in Projects.select(Projects, ProjectInvestment).join(
            ProjectInvestment).order_by(Projects.project_name).where(
                Projects.project_id == project_id).dicts()
    ]

    total = ProjectInvestment.select(
        peewee.fn.sum(ProjectInvestment.investment).alias('sum')).where(
            ProjectInvestment.project_id == project_id).scalar()

    return render_template('proj_investments.j2',
                           inv=inv_list,
                           proj=selected_proj[0],
                           users=users_list,
                           total=str(total))
Пример #2
0
def jsonproj():
    if request.method == 'GET':
        all_proj = [row for row in Projects.select().dicts()]
        selection = request.args.get('selection')
        return_value = Projects.select().where(
            Projects.project_id == selection)

        return render_template('projects.j2',
                               proj=return_value,
                               all_proj=all_proj)
Пример #3
0
def newinv():
    if request.method == 'GET':
        proj = [row for row in Projects.select().dicts()]
        return render_template('newinv.j2', proj=proj)
    new_inv = ProjectInvestment(**request.form)

    try:
        new_inv.save()
    except peewee.IntegrityError as err:
        return str(err)
    return redirect(url_for('investments'))
Пример #4
0
def investments():
    inv_list = [
        row for row in Projects.select(Projects, ProjectInvestment).join(
            ProjectInvestment).order_by(Projects.project_name).dicts()
    ]
    return render_template('investments.j2', inv=inv_list)