Files
pear-admin-flask/applications/common/admin/dept_curd.py
T

90 lines
2.2 KiB
Python

from applications.extensions import db
from applications.models import Dept, DeptSchema
from applications.models import User
from applications.common.curd import model_to_dicts
from flask import escape
def get_dept_dict():
dept = Dept.query.order_by(Dept.sort).all()
res = model_to_dicts(Schema=DeptSchema, model=dept)
return res
def save_dept(req):
address = escape(req.get("address"))
deptName = escape(req.get("deptName"))
email = escape(req.get("email"))
leader = escape(req.get("leader"))
parentId = escape(req.get("parentId"))
phone = escape(req.get("phone"))
sort = escape(req.get("sort"))
status = escape(req.get("status"))
dept = Dept(
parent_id=parentId,
dept_name=deptName,
sort=sort,
leader=leader,
phone=phone,
email=email,
status=status,
address=address
)
r = db.session.add(dept)
db.session.commit()
return r
def get_dept_by_id(_id):
"""根据 id 获取部门"""
d = Dept.query.filter_by(id=_id).first()
return d
def enable_status(_id):
""" 启用权限 """
enable = 1
d = Dept.query.filter_by(id=_id).update({"status": enable})
if d:
db.session.commit()
return True
return False
def disable_status(_id):
""" 停用权限 """
enable = 0
d = Dept.query.filter_by(id=_id).update({"status": enable})
if d:
db.session.commit()
return True
return False
def update_dept(json):
""" 更新部门信息 """
_id = json.get("deptId"),
data = {
"dept_name": escape(json.get("deptName")),
"sort": escape(json.get("sort")),
"leader": escape(json.get("leader")),
"phone": escape(json.get("phone")),
"email": escape(json.get("email")),
"status": escape(json.get("status")),
"address": escape(json.get("address"))
}
d = Dept.query.filter_by(id=_id).update(data)
if not d:
return False
db.session.commit()
return True
def remove_dept(_id):
d = Dept.query.filter_by(id=_id).delete()
if not d:
return False
User.query.filter_by(dept_id=_id).update({"dept_id": None})
db.session.commit()
return True