Files
SMANAGE/backup/_api_backup/TempLateAPI/GERP/API/Department copy/AddDepartmentMember.api
T

38 lines
1.4 KiB
Plaintext

from PDAPI import *
__metadata__ = {
"methods": ["POST"],
"blueprint": "GERP",
"permission": 3.0,
"attributes": [],
"limit": "1 per second",
"form": [
{"Name": "DepartmentUUID", "Type": "UUID"},
{"Name": "UserUUIDs", "Type": "MUUID"},
]
}
def HandleRequest():
DepartmentUUID = Get16toBytes(flask.request.form.get("DepartmentUUID"))
UserUUIDs = flask.request.form.get("UserUUIDs")
if not GERPDepartment.query.filter(GERPDepartment.DepartmentUUID == DepartmentUUID).first():
return {"code": 1, "msg": "部门 不存在"}
for i in UserUUIDs.split("\n"):
if not i: continue
UserUUID = Get16toBytes(i)
if not GERPUser.query.filter(GERPUser.UserUUID == UserUUID).first():
return {"code": 1, "msg": f"目标用户 {i} 不存在"}
if GERPSMTM.query.filter(sqlalchemy.and_(GERPSMTM.UserUUID == UserUUID, GERPSMTM.DepartmentUUID == DepartmentUUID)).first():
continue
# return {"code": 1, "msg": f"目标用户 {i} 已在此部门"}
_ = GERPSMTM()
_.SMTMUUID = Get16toBytes(NewUUID())
_.DepartmentUUID = DepartmentUUID
_.UserUUID = UserUUID
db.session.add(_)
try:
db.session.commit()
return {"code": 0, "msg": "添加成功"}
except:
db.session.rollback()
return {"code": 1, "msg": "SQL 提交错误"}