from PDAPI import * __metadata__ = { "methods": ["POST"], "blueprint": "GERP", "permission": 3.0, "attributes": [], "limit": "1 per second", "args": [ {"Name": "DepartmentUUID", "Type": "UUID"}, {"Name": "UserUUIDs", "Type": "str"} ] } def HandleRequest(): UserUUIDs = flask.request.form.get("UserUUIDs") DepartmentUUID = flask.request.form.get("DepartmentUUID") if not UserUUIDs: return {"code": 400, "msg": "参数缺失: UserUUIDs"} if not DepartmentUUID: return {"code": 400, "msg": "参数缺失: DepartmentUUID"} if not (Department := GERPDepartment.query.filter( GERPDepartment.DepartmentUUID == Get16toBytes(DepartmentUUID) ).first()): return {"code": 1, "msg": "部门 不存在"} user_uuid_list = [uuid.strip() for uuid in UserUUIDs.split('\n') if uuid.strip()] if not user_uuid_list: return {"code": 400, "msg": "参数缺失: UserUUIDs"} deleted_count = 0 for user_uuid in user_uuid_list: smtm_record = GERPSMTM.query.filter( GERPSMTM.DepartmentUUID == Get16toBytes(DepartmentUUID), GERPSMTM.UserUUID == Get16toBytes(user_uuid) ).first() if smtm_record: db.session.delete(smtm_record) deleted_count += 1 try: db.session.commit() return {"code": 0, "msg": f"成功删除 {deleted_count} 个成员"} except: print(traceback.print_exc()) db.session.rollback() return {"code": 1, "msg": "SQL 提交失败"}