大家好,我是python222_小锋老师,分享一套优质的基于Python的Flask+Vue物业管理系统 。
项目简介
本文首先实现了基于Python的Flask+Vue物业管理系统技术的发展随后依照传统的软件开发流程,最先为系统挑选适用的言语和软件开发平台,依据需求分析开展控制模块制做和数据库查询构造设计,随后依据系统整体功能模块的设计,制作系统的功能模块图、E-R图。随后,设计框架,依据设计的框架撰写编码,完成系统的每个功能模块。最终,对基本系统开展了检测,包含软件性能测试、单元测试和性能指标。测试结果表明,该系统能够实现所需的功能,运行状况尚可并无明显缺点。
源码下载
提取码: 1234
相关截图
核心代码
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¤tPage=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¤tPage=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)