分享一套【优质Python源码】基于Python的Flask+Vue物业管理系统

47 阅读2分钟

大家好,我是python222_小锋老师,分享一套优质的基于Python的Flask+Vue物业管理系统  。  

3.jpg

项目简介

本文首先实现了基于Python的Flask+Vue物业管理系统技术的发展随后依照传统的软件开发流程,最先为系统挑选适用的言语和软件开发平台,依据需求分析开展控制模块制做和数据库查询构造设计,随后依据系统整体功能模块的设计,制作系统的功能模块图、E-R图。随后,设计框架,依据设计的框架撰写编码,完成系统的每个功能模块。最终,对基本系统开展了检测,包含软件性能测试、单元测试和性能指标。测试结果表明,该系统能够实现所需的功能,运行状况尚可并无明显缺点。

源码下载

链接:pan.baidu.com/s/1SAcVzNks…

提取码: 1234

相关截图

2.jpg

4.jpg

5.jpg

6.jpg

7.jpg

8.jpg

核心代码

from flask import Blueprint, request

from extensions import db
from repair.model import UserRepair
from util.security import permission_required
from util.status_code import response, SUCCESS_CODE, ERROR_CODE

repair_print  = Blueprint('repair_print', __name__, url_prefix='/api/userRepair')





@repair_print.route('/list', methods=['GET'])
@permission_required('sys:repairList')
def get_repair_list():
    """
    获取报修列表
    """
    # list?total=0&currentPage=1&pageSize=10&userId=&repairContent=&status=
    current_page = request.args.get('currentPage', default=1)
    page_size = request.args.get('pageSize', default=10)
    user_id = request.args.get('userId')
    repair_content = request.args.get('repairContent')
    status = request.args.get('status')
    query = UserRepair.query
    if user_id:
        query = query.filter(UserRepair.user_id == user_id)
    if repair_content:
        query = query.filter(UserRepair.repair_content.like('%' + repair_content + '%'))
    if status:
        query = query.filter(UserRepair.status == status)

    pagination = query.paginate(page=int(current_page), per_page=int(page_size), error_out=False)

    r_lists = {"records":[i.to_dict() for i in pagination.items]}
    return response("获取成功", SUCCESS_CODE, r_lists)



@repair_print.route('', methods=['PUT'])
def depose_user_repair():
    """
    处理报修单/修改报修单
    """
    data = request.get_json()
    repair_id = data.get('repairId')
    status = data.get('status')
    phone = data.get('phone')
    repair_address = data.get('repairAddress')
    repair_content = data.get('repairContent')

    user_repair = UserRepair.query.filter(UserRepair.repair_id == repair_id).first()

    @permission_required('sys:repairList:do')
    def dispose_user_repair():
        user_repair.status = status
        user_repair.status = status
        db.session.commit()
        return response("处理成功", SUCCESS_CODE)

    @permission_required('sys:myRepair:edit')
    def update_repair():
        user_repair.phone = phone
        user_repair.repair_address = repair_address
        user_repair.repair_content = repair_content
        db.session.commit()
        return response("修改成功", SUCCESS_CODE)

    try:
        if repair_id and status:
            return dispose_user_repair()
        elif repair_id:
            return update_repair()
    except:
        db.session.rollback()
        return response("处理失败", ERROR_CODE)
    return response("参数错误", ERROR_CODE)


@repair_print.route('/myList', methods=['GET'])
@permission_required('sys:myRepair')
def get_my_repair_list():
    """
    获取用户报修列表
    """
    # /myList?total=0&currentPage=1&pageSize=10&userId=1&repairContent=&status=
    current_page = request.args.get('currentPage', default=1)
    page_size = request.args.get('pageSize', default=10)
    user_id = request.args.get('userId')
    repair_content = request.args.get('repairContent')
    status = request.args.get('status')

    query = UserRepair.query.filter(UserRepair.user_id == user_id)
    if repair_content:
        query = query.filter(UserRepair.repair_content.like('%' + repair_content + '%'))
    if status:
        query = query.filter(UserRepair.status == status)
    if repair_content:
        query = query.filter(UserRepair.repair_content.like('%' + repair_content + '%'))

    pagination = query.paginate(page=int(current_page), per_page=int(page_size), error_out=False)
    r_lists = {"records":[i.to_dict() for i in pagination.items]}
    return response("获取成功", SUCCESS_CODE, r_lists)


@repair_print.route('/<int:repair_id>', methods=['DELETE'])
@permission_required('sys:myRepair:delete')
def delete_user_repair(repair_id):
    """
    删除报修单
    """
    user_repair = UserRepair.query.filter(UserRepair.repair_id == repair_id).first()
    if user_repair:
        db.session.delete(user_repair)
        db.session.commit()
        return response("删除成功", SUCCESS_CODE)
    return response("删除失败", ERROR_CODE)

@repair_print.route('', methods=['POST'])
@permission_required('sys:myRepair:add')
def add_user_repair():
    """
    添加报修单
    """
    data = request.get_json()
    new_user_repair = UserRepair(
        phone=data.get('phone'),
        repair_address=data.get('repairAddress'),
        repair_content=data.get('repairContent'),
        user_id=data.get('userId'),
        status='0'
    )
    try:
        db.session.add(new_user_repair)
        db.session.commit()
        return response("添加成功", SUCCESS_CODE)
    except:
        db.session.rollback()
        return response("添加失败", ERROR_CODE)