Esempio n. 1
0
def uploadAdminlist():
    resp = {"code": 200, "msg": "success", "data": {}}

    # 权限判断
    if g.current_user.super != 1:  #超级管理员权限
        resp["code"] = -1
        resp["msg"] = "无权限"
        return jsonify(resp)

    id = request.values["venue_id"] if "venue_id" in request.values else None
    file = request.files["file"] if "file" in request.files else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not file:
        resp["code"] = -1
        resp["msg"] = "请选择文件"
        return jsonify(resp)

    # 保存文件
    config_upload = app.config["UPLOAD"]
    # filename = secure_filename(file.filename)
    filename = file.filename

    ext = filename.rsplit(".", 1)[1]  #后缀名
    if ext not in config_upload["ext"]:
        resp["code"] = -1
        resp["msg"] = "文件类型错误"
        jsonify(resp)

    root_path = app.root_path + config_upload["adminlist_prefix_path"]
    file_dir = getCurrentDate("%Y%m%d")
    save_dir = root_path + file_dir
    if not os.path.exists(save_dir):
        os.mkdir(save_dir)
        os.chmod(save_dir, stat.S_IRWXU | stat.S_IRGRP | stat.S_IRWXO)

    file_name = str(uuid.uuid4()).replace("-", "") + "." + ext
    filepathname = "{0}/{1}".format(save_dir, file_name)
    file.save(filepathname)

    adminlist = []
    with open(filepathname, 'r') as f:
        reader = csv.reader(f)
        for row in reader:
            if not row or not row[0]:
                continue
            else:
                if (row[0].strip() != ""):
                    adminlist.append(getParserValue(row[0].strip()))

    # 先批量删
    VenueService.deleteAdminList(id)
    # 再批量增
    VenueService.updateAdminList(id, adminlist)

    return jsonify(resp)
Esempio n. 2
0
def addAdminNo():
    resp = {"code": 200, "msg": "success", "data": {}}

    # 权限判断
    if g.current_user.super != 1:  #超级管理员权限
        resp["code"] = -1
        resp["msg"] = "无权限"
        return jsonify(resp)

    id = request.values["venue_id"] if "venue_id" in request.values else None
    no = request.values["no"] if "no" in request.values else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not no:
        resp["code"] = -1
        resp["msg"] = "请输入学工号"
        return jsonify(resp)

    adminlist = []
    if no.strip() != "":
        adminlist.append(getParserValue(no.strip()))

    VenueService.updateAdminList(id, adminlist)

    return jsonify(resp)
Esempio n. 3
0
def deleteAdminNo():
    resp = {"code": 200, "msg": "success", "data": {}}

    # 权限判断
    if g.current_user.super != 1:  #超级管理员权限
        resp["code"] = -1
        resp["msg"] = "无权限"
        return jsonify(resp)

    id = request.values["venue_id"] if "venue_id" in request.values else None
    no = request.values["no"] if "no" in request.values else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not no:
        resp["code"] = -1
        resp["msg"] = "请选择人员"
        return jsonify(resp)

    VenueService.deleteAdminNo(id, no)

    return jsonify(resp)
Esempio n. 4
0
def addWhiteNo():
    resp = {"code": 200, "msg": "success", "data": {}}

    tagID = int(request.values["tagID"]) if 'tagID' in request.values else 0
    id = request.values["venue_id"] if "venue_id" in request.values else None
    no = request.values["no"] if "no" in request.values else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not no:
        resp["code"] = -1
        resp["msg"] = "请输入学工号"
        return jsonify(resp)

    #根据id获取tag,若不存在提示先添加版本
    tag = VenueService.getWhiteListTag(tagID, id)
    if not tag:
        resp["code"] = -1
        resp["msg"] = "请选择白名单版本"
        return jsonify(resp)

    whitelist = []
    if (no.strip() != ""):
        whitelist.append(getParserValue(no.strip()))

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        VenueService.updateWhiteList("", tag, id, whitelist)
    else:
        VenueService.updateWhiteList(g.current_user.no, tag, id, whitelist)
    return jsonify(resp)
Esempio n. 5
0
def getVenueStatistics():
    resp_data = {"code": 200, "msg": "success", "data": {}}
    req = request.values
    id = req["id"] if 'id' in req else ''

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        statistics = VenueService.getVenueStatistics("", id)
    else:  #场所管理员
        statistics = VenueService.getVenueStatistics(g.current_user.no, id)

    resp_data['data'] = statistics
    return jsonify(resp_data)
Esempio n. 6
0
def getWhiteListTagsDetail():

    resp_data = {}
    req = request.values
    id = req["id"] if 'id' in req else ''

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        tagList = VenueService.getWhiteListTagsDetail("", id)
    else:  #场所管理员
        tagList = VenueService.getWhiteListTagsDetail(g.current_user.no, id)

    resp_data["list"] = tagList

    return jsonify(resp_data)
Esempio n. 7
0
def getAllPOI():

    resp_data = {"code": 200, "msg": "success", "data": {}}

    # if user_info.super==None:
    # 权限判断
    if g.current_user.super==1:#超级管理员
        data=VenueService.getAllForIndex("")
    else:#场所管理员
        data=VenueService.getAllForIndex(g.current_user.no)


    # 场所列表
    resp_data['data'] = data
    return jsonify(resp_data)
Esempio n. 8
0
def getAdminList():

    resp_data = {"code": 200, "msg": "操作成功", "data": {}}

    # 权限判断
    if g.current_user.super != 1:  #超级管理员权限
        resp_data["code"] = -1
        resp_data["msg"] = "无权限"
        return jsonify(resp_data)

    req = request.values
    id = req["id"] if 'id' in req else ''
    dept = req["dept"] if 'dept' in req else ''
    no = req["no"] if 'no' in req else ''
    name = req["name"] if 'name' in req else ''
    page = int(req["p"]) if ("p" in req and req["p"]) else 1

    totalCount, adminList = VenueService.getAdminList(id, dept, no, name, page,
                                                      app.config["PAGE_SIZE"])

    page_params = {
        "total": totalCount,
        "page_size": app.config["PAGE_SIZE"],
        "page_num": page,
        "display": app.config["PAGE_DISPLAY"],
    }

    pages = iPagination(page_params)

    resp_data["list"] = adminList
    resp_data["pages"] = pages

    return jsonify(resp_data)
Esempio n. 9
0
def getMyVenue():
    resp_data = {"code": 200, "msg": "success", "venueList": {}}

    member_info = g.member_info
    venueList = VenueService.getMyVenueIdAndName(member_info.no)

    resp_data['venueList'] = venueList
    return jsonify(resp_data)
Esempio n. 10
0
def reverseStatus():
    resp = {"code": 200, "msg": "操作成功", "data": {}}
    req = request.values

    id = req["id"] if "id" in req else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择需要操作的场所"
        return jsonify(resp)

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        VenueService.reverseStatus("", id)
    else:  #场所管理员
        VenueService.reverseStatus(g.current_user.no, id)

    return jsonify(resp)
Esempio n. 11
0
def editVenue():

    resp = {"code": 200, "msg": "操作成功", "data": {}}
    req = request.values

    id = req["id"] if "id" in req else None
    name = req["name"] if "name" in req else None
    lon = req["lon"] if "lon" in req else None
    lat = req["lat"] if "lat" in req else None
    permissionType = int(req["permissionType"]) if (
        "permissionType" in req and req["permissionType"]) else 1

    if not name:
        resp["code"] = -1
        resp["msg"] = "请输入场所名称"
        return jsonify(resp)

    if not lon or not lat:
        resp["code"] = -1
        resp["msg"] = "请选择场所地点"
        return jsonify(resp)

    if permissionType not in [1, 2, 3, 4]:
        permissionType = 1

    name = getParserValue(name)
    lon = getParserValue(lon)
    lat = getParserValue(lat)

    # print("name=="+name+"-lon"+lon+"-"+lat)

    resp["msg"] = "保存成功"

    if not id:  #新增

        # 权限判断
        if g.current_user.super == 1:  #超级管理员才能新增
            id = VenueService.geneVenueID()
            createtime = getFormatDate(date=datetime.datetime.now())
            VenueService.create(id, name, lon, lat, permissionType, createtime)

            # 获取小程序码
            url = createWXcode(id)
            resp["wxCodeUrl"] = url
        else:
            resp["code"] = -1
            resp["msg"] = "无权限"
            return jsonify(resp)

    else:  #修改
        # 权限判断
        if g.current_user.super == 1:  #超级管理员
            VenueService.update("", id, name, lon, lat, permissionType)
        else:  #场所管理员
            VenueService.update(g.current_user.no, id, name, lon, lat,
                                permissionType)

    return jsonify(resp)
Esempio n. 12
0
def getVenueList():

    resp_data = {}
    req = request.values
    page = int(req["p"]) if ("p" in req and req["p"]) else 1
    status = int(req["status"]) if ("status" in req and req["status"]) else 0
    name = req["name"] if 'name' in req else ''

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        totalCount, venueList = VenueService.search("", status, name, page,
                                                    app.config["PAGE_SIZE"])
        resp_data["super"] = 1
    else:  #场所管理员
        totalCount, venueList = VenueService.search(g.current_user.no, status,
                                                    name, page,
                                                    app.config["PAGE_SIZE"])
        resp_data["super"] = 0

    page_params = {
        "total": totalCount,
        "page_size": app.config["PAGE_SIZE"],
        "page_num": page,
        "display": app.config["PAGE_DISPLAY"],
    }

    pages = iPagination(page_params)

    _venueList = []
    for record in venueList:
        _venueList.append({
            "id": record.id,
            "name": record.name,
            "lat": record.lat,
            "lon": record.lon,
            "status": record.status,
            "permissionType": record.permissionType,
            "createtime": record.createtime,
        })

    resp_data["list"] = _venueList
    resp_data["pages"] = pages
    return jsonify(resp_data)
Esempio n. 13
0
def getVenueAndReviewer():
    resp_data = {
        "code": 200,
        "msg": "success",
        "venueList": {},
        "reviewerList": {}
    }

    venueList = VenueService.getVenueIdAndName()
    reviewerList = UserService.getReviewerNoAndName()

    resp_data['venueList'] = venueList
    resp_data['reviewerList'] = reviewerList
    return jsonify(resp_data)
Esempio n. 14
0
def getWhiteList():
    # timestamp=int(round(time.time()))
    # time_str=time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(timestamp))
    # print(timestamp)
    # print(time_str)

    resp_data = {}
    req = request.values
    tagID = int(req["tagID"]) if 'tagID' in req else 0
    id = req["id"] if 'id' in req else ''
    dept = req["dept"] if 'dept' in req else ''
    no = req["no"] if 'no' in req else ''
    name = req["name"] if 'name' in req else ''
    page = int(req["p"]) if ("p" in req and req["p"]) else 1

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        totalCount, whiteList = VenueService.getWhiteList(
            "", tagID, id, dept, no, name, page, app.config["PAGE_SIZE"])
    else:  #场所管理员
        totalCount, whiteList = VenueService.getWhiteList(
            g.current_user.no, tagID, id, dept, no, name, page,
            app.config["PAGE_SIZE"])

    page_params = {
        "total": totalCount,
        "page_size": app.config["PAGE_SIZE"],
        "page_num": page,
        "display": app.config["PAGE_DISPLAY"],
    }

    pages = iPagination(page_params)

    resp_data["list"] = whiteList
    resp_data["pages"] = pages

    return jsonify(resp_data)
Esempio n. 15
0
def deleteTag():
    resp = {"code": 200, "msg": "操作成功", "data": {}}
    req = request.values

    id = req["id"] if "id" in req else None
    tagID = int(req["tagID"]) if "tagID" in req else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择需要操作的场所"
        return jsonify(resp)

    if not tagID:
        resp["code"] = -1
        resp["msg"] = "请选择需要操作的白名单"
        return jsonify(resp)

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        VenueService.deleteTag("", id, tagID)
    else:  #场所管理员
        VenueService.deleteTag(g.current_user.no, id, tagID)

    return jsonify(resp)
Esempio n. 16
0
def deleteWhiteNo():
    resp = {"code": 200, "msg": "success", "data": {}}

    tagID = int(request.values["tagID"]) if 'tagID' in request.values else 0
    id = request.values["venue_id"] if "venue_id" in request.values else None
    no = request.values["no"] if "no" in request.values else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not no:
        resp["code"] = -1
        resp["msg"] = "请选择人员"
        return jsonify(resp)

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        VenueService.deleteWhiteNo("", tagID, id, no)
    else:
        VenueService.deleteWhiteNo(g.current_user.no, tagID, id, no)

    return jsonify(resp)
Esempio n. 17
0
def addApply():
    resp = {"code": 200, "msg": "success", "data": {}}
    req = request.values

    venueid = req["venueid"] if "venueid" in req else None
    if not venueid:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    reviewer = req["reviewer"] if "reviewer" in req else None
    if not reviewer:
        resp["code"] = -1
        resp["msg"] = "请选择审核人"
        return jsonify(resp)

    starttime = req["starttime"] if "starttime" in req else None
    if not starttime:
        resp["code"] = -1
        resp["msg"] = "请选择开始时间"
        return jsonify(resp)

    endtime = req["endtime"] if "endtime" in req else None
    if not endtime:
        resp["code"] = -1
        resp["msg"] = "请选择结束时间"
        return jsonify(resp)

    reason = req["reason"] if "reason" in req else None
    if not reason:
        resp["code"] = -1
        resp["msg"] = "请填写申请原因"
        return jsonify(resp)

    id = VenueService.geneVenueID()  #生成审批id
    applytime = getFormatDate(date=datetime.datetime.now())

    member_info = g.member_info
    UserService.addApply(member_info.no, venueid, reviewer, id, applytime,
                         starttime, endtime, reason)

    return jsonify(resp)
Esempio n. 18
0
def addTrackByAdmin():
    resp = {"code": 1000, "msg": "venue_name", "data": {}}
    req = request.values
    venueid = req["venueid"] if "venueid" in req else None
    if not venueid:
        resp["code"] = -1
        resp["msg"] = "需要场所id"
        return jsonify(resp)

    userid = req["userid"] if "userid" in req else None
    if not userid:
        resp["code"] = -1
        resp["msg"] = "需要用户id"
        return jsonify(resp)

    venue_info = VenueService.getByID(venueid)

    if not venue_info:
        resp["code"] = -1
        resp["msg"] = "场所不存在"
        return jsonify(resp)

    if venue_info.status == -1:
        resp["code"] = -1
        resp["msg"] = "场所已删除"
        return jsonify(resp)

    #通过userid获取User
    member_info = UserService.getByUserid(userid)
    if not member_info:
        resp["code"] = -1
        resp["msg"] = "用户不存在"
        return jsonify(resp)

    if member_info.leader == None:  #不是领导
        resp['data'] = {
            "userdept": member_info.dept,
            "username": member_info.name,
        }
    else:  #是领导
        resp['data'] = {
            "userdept": "",
            "username": "******",
        }

    now = datetime.datetime.now()
    str_now = getFormatDate(date=now)
    # now = datetime.datetime.now()
    # expiretime = now + datetime.timedelta(days=+10)
    # str_now = getFormatDate(date=expiretime)

    currentUser = g.member_info

    # -1直接红码
    if member_info.state == -1:
        # print("红码")
        resp["code"] = 2000
        resp["msg"] = venue_info.name  #获取场所名称返回 放在msg里
        return jsonify(resp)

    # 1直接绿码
    if member_info.state == 1:
        # print("超级用户绿码")
        # 添加轨迹
        TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                   str_now, 1)  #type=1 绿码 2黄码

        resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
        resp["msg"] = venue_info.name  #绿码
        return jsonify(resp)

    # 判断是否有提交过审批 需要审批通过且时间合法
    result2 = UserService.hasLegalApply(member_info.no, venueid, str_now)
    if result2 == True:
        TrackService.create(member_info.no, venueid, str_now, 1)  #绿码
        resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
        resp["msg"] = venue_info.name
        return jsonify(resp)

    permissionType = venue_info.permissionType
    if permissionType == 2:  #对全体教职工开放
        if "TEACHER" in member_info.labels:  #教职工
            # print("绿码")
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, 1)  #type=1 绿码 2黄码
            resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
            resp["msg"] = venue_info.name  #绿码
            return jsonify(resp)
        else:
            # print("黄码")
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, 2)  #type=1 绿码 2黄码
            resp["code"] = 1002  #1001绿码 1002黄码 #2000红码
            resp["msg"] = venue_info.name  #绿码
            return jsonify(resp)
    elif permissionType == 3:  #对全体学生开放
        if "STUDENT" in member_info.labels:  #学生
            # print("绿码")
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, 1)  #type=1 绿码 2黄码
            resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
            resp["msg"] = venue_info.name  #绿码
            return jsonify(resp)
        else:
            # print("黄码")
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, 2)  #type=1 绿码 2黄码
            resp["code"] = 1002  #1001绿码 1002黄码 #2000红码
            resp["msg"] = venue_info.name  #绿码
            return jsonify(resp)
    elif permissionType == 4:  #对所有人开放
        # print("绿码")
        TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                   str_now, 1)  #type=1 绿码 2黄码
        resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
        resp["msg"] = venue_info.name  #绿码
        return jsonify(resp)
    else:  #permissionType==1 #根据白名单授权

        if member_info.state == None:  #没有赋值过state状态,暂且当做黄码处理
            # 添加轨迹
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, 2)  #type=1 绿码 2黄码
            resp["code"] = 1002  #1001绿码 1002黄码 #2000红码
            resp["msg"] = venue_info.name  #绿码
            return jsonify(resp)

        if member_info.state == 0:
            # print("需要进一步判断")

            result = TrackService.hasPermission(member_info.no, venueid)
            if result == True:
                # print("有权限")
                type = 1
                resp["code"] = 1001  #1001绿码 1002黄码 #2000红码
            else:
                type = 2
                resp["code"] = 1002  #1001绿码 1002黄码 #2000红码

            # 添加轨迹
            TrackService.createByAdmin(currentUser.no, member_info.no, venueid,
                                       str_now, type)  #绿码
            resp["msg"] = venue_info.name
            return jsonify(resp)
Esempio n. 19
0
def uploadWhitelist():
    resp = {"code": 200, "msg": "success", "data": {}}

    tag_name = request.values[
        "tag_name"] if 'tag_name' in request.values else ""
    id = request.values["venue_id"] if "venue_id" in request.values else None
    file = request.files["file"] if "file" in request.files else None

    if not id:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    if not tag_name:
        resp["code"] = -1
        resp["msg"] = "请输入批次名"
        return jsonify(resp)

    if not file:
        resp["code"] = -1
        resp["msg"] = "请选择文件"
        return jsonify(resp)

    tag_name = getParserValue(tag_name)  #防注入

    # 保存文件
    config_upload = app.config["UPLOAD"]
    # filename = secure_filename(file.filename)
    filename = file.filename

    ext = filename.rsplit(".", 1)[1]  #后缀名
    if ext not in config_upload["ext"]:
        resp["code"] = -1
        resp["msg"] = "文件类型错误"
        return jsonify(resp)

    root_path = app.root_path + config_upload["whitelist_prefix_path"]
    file_dir = getCurrentDate("%Y%m%d")
    save_dir = root_path + file_dir
    if not os.path.exists(save_dir):
        os.mkdir(save_dir)
        os.chmod(save_dir, stat.S_IRWXU | stat.S_IRGRP | stat.S_IRWXO)

    file_name = str(uuid.uuid4()).replace("-", "") + "." + ext
    filepathname = "{0}/{1}".format(save_dir, file_name)
    file.save(filepathname)

    whitelist = []
    with open(filepathname, 'r', encoding='UTF-8') as f:
        reader = csv.reader(f)
        for row in reader:
            if not row or not row[0]:
                continue
            else:
                if row[0].strip() != "":
                    whitelist.append(getParserValue(row[0].strip()))  #防注入

    # # 权限判断
    # if g.current_user.super==1:#超级管理员
    #     # 先批量删
    #     VenueService.deleteWhiteList("",tag,id)
    #     # 再批量增
    #     VenueService.updateWhiteList("",tag,id,whitelist)
    # else:#场所管理员
    #     # 先批量删
    #     VenueService.deleteWhiteList(g.current_user.no,tag,id)
    #     # 再批量增
    #     VenueService.updateWhiteList(g.current_user.no,tag,id,whitelist)

    timestamp = int(round(time.time()))
    tag = {
        "id": timestamp,
        "tag": tag_name,
        "active": 1,
    }

    # 权限判断
    if g.current_user.super == 1:  #超级管理员
        VenueService.updateWhiteList("", tag, id, whitelist)
    else:  #场所管理员
        VenueService.updateWhiteList(g.current_user.no, tag, id, whitelist)
    return jsonify(resp)
Esempio n. 20
0
def uploadBatchAdminlist():
    resp = {"code": 200, "msg": "success", "data": {}}

    # tag_name = request.values["tag_name"] if 'tag_name' in request.values else ""
    ids = request.values["venue_ids"] if "venue_ids" in request.values else None
    file = request.files["file"] if "file" in request.files else None

    ids = ids.split(",")

    if not ids:
        resp["code"] = -1
        resp["msg"] = "请选择场所"
        return jsonify(resp)

    # if not tag_name:
    #     resp["code"] = -1
    #     resp["msg"] = "请输入批次名"
    #     return jsonify(resp)

    if not file:
        resp["code"] = -1
        resp["msg"] = "请选择文件"
        return jsonify(resp)

    # 保存文件
    config_upload = app.config["UPLOAD"]
    # filename = secure_filename(file.filename)
    filename = file.filename

    ext = filename.rsplit(".", 1)[1]  # 后缀名
    if ext not in config_upload["ext"]:
        resp["code"] = -1
        resp["msg"] = "文件类型错误"
        return jsonify(resp)

    root_path = app.root_path + config_upload["adminlist_prefix_path"]
    file_dir = getCurrentDate("%Y%m%d")
    save_dir = root_path + file_dir
    if not os.path.exists(save_dir):
        os.mkdir(save_dir)
        os.chmod(save_dir, stat.S_IRWXU | stat.S_IRGRP | stat.S_IRWXO)

    file_name = str(uuid.uuid4()).replace("-", "") + "." + ext
    filepathname = "{0}/{1}".format(save_dir, file_name)
    file.save(filepathname)

    adminlist = []
    with open(filepathname, 'r', encoding='UTF-8') as f:
        reader = csv.reader(f)
        for row in reader:
            if not row or not row[0]:
                continue
            else:
                if row[0].strip() != "":
                    adminlist.append(getParserValue(row[0].strip()))  # 防注入

    timestamp = int(round(time.time()))
    tag = {
        "id": timestamp,
        # "tag": tag_name,
        "active": 1,
    }
    for id in ids:
        VenueService.updateAdminList(id, adminlist)
    # 权限判断
    # if g.current_user.super == 1:  # 超级管理员
    #     for id in ids:
    #         VenueService.updateAdminList(id, adminlist)
    # else:  # 场所管理员
    #     for id in ids:
    #         VenueService.updateAdminList(id, adminlist)########################################################################################

    resp["data"] = {"tagID": timestamp}
    return jsonify(resp)