コード例 #1
0
ファイル: admin_service.py プロジェクト: yj490732088/qq_bot
def login():
    if request.method == "GET":
        resp = render_template("login_admin.html")
    else:
        mysqlconn.ping(reconnect=True)
        target = request.args.get("redirect")
        if target is None:
            target = "/"
        target = urllib.parse.unquote(target)
        #print(target)
        username = request.form["username"]
        passwd = request.form["password"]
        exist = mysqldb.execute("SELECT * from admin WHERE id=%s", username)
        state = False
        if exist:
            user = mysqldb.fetchall()[0]
            state = check(user, passwd)
        if state:
            cookies = str(uuid.uuid4())
            redisdb.set(
                cookies,
                json.dumps({
                    "id": user[0],
                    "auth_class": user[3],
                    "OTP_key": user[4]
                }))
            resp = Response(render_template("redirect.html", target=target))
            resp.set_cookie("token", cookies)
        else:
            resp = render_template("login_admin.html",
                                   color='red',
                                   message='密码错误或用户不存在')
    return resp
コード例 #2
0
ファイル: app.py プロジェクト: yj490732088/qq_bot
def group(context):
    mysqlconn.ping(reconnect=True)
    sql = "INSERT INTO service_log (time, type, target) VALUES (NOW(),'groupMessage',%s)"
    mysqldb.execute(
        sql,
        (f"group:{context['group_id']};person:{context['sender']['user_id']}"))
    mysqlconn.commit()
    try:
        respond_group(groupMessageHandles, groupMessageHandle_init_data,
                      context, bot)
    except Exception as e:
        traceback.print_exc()
        error_data = traceback.format_exc()
        sql = "INSERT INTO error_log (time, error_detail) VALUES (NOW(),%s)"
        mysqldb.execute(sql, (pymysql.escape_string(error_data)))
        mysqlconn.commit()
コード例 #3
0
ファイル: app.py プロジェクト: yj490732088/qq_bot
def private(context):
    mysqlconn.ping(reconnect=True)
    #logger
    sql = "INSERT INTO service_log (time, type, target) VALUES (NOW(),'privateMessage',%s)"
    mysqldb.execute(sql, (f"person:{context['sender']['user_id']}"))
    mysqlconn.commit()
    try:
        state = respond_private(privateMessageHandles, context, bot)
        if not state:
            take_message_handle(context, bot)
    except Exception as e:
        bot.send(context, "服务器发生内部错误,请稍后重试")
        traceback.print_exc()
        error_data = traceback.format_exc()
        sql = "INSERT INTO error_log (time, error_detail) VALUES (NOW(),%s)"
        mysqldb.execute(sql, (pymysql.escape_string(error_data)))
        mysqlconn.commit()
        redisdb.delete(context["sender"]["user_id"])
コード例 #4
0
ファイル: app.py プロジェクト: yj490732088/qq_bot
def handle_group_increase(context):
    mysqlconn.ping(reconnect=True)
    sql = 'INSERT INTO service_log (time, type, target) VALUES (NOW(),"groupMumReq",%s)'
    mysqldb.execute(
        sql, (f'group:{context["user_id"]};person:{context["group_id"]}'))
    mysqlconn.commit()
コード例 #5
0
ファイル: app.py プロジェクト: yj490732088/qq_bot
def handle_request(context):
    mysqlconn.ping(reconnect=True)
    sql = 'INSERT INTO service_log (time, type, target) VALUES (NOW(),"groupMumAdd",%s)'
    mysqldb.execute(sql, (f'group:{context["group_id"]}'))
    mysqlconn.commit()
コード例 #6
0
ファイル: app.py プロジェクト: yj490732088/qq_bot
def handle_request(context):
    mysqlconn.ping(reconnect=True)
    sql = 'INSERT INTO service_log (time, type, target) VALUES (NOW(),"friendAdd",%s)'
    mysqldb.execute(sql, (f'person:{context["user_id"]}'))
    mysqlconn.commit()
    return {"approve": True}