diff --git a/crud.py b/crud.py index 53d1fbe..c1ae377 100644 --- a/crud.py +++ b/crud.py @@ -14,6 +14,10 @@ def get_user(db: Session, user_id: int): def get_user_by_openId(db: Session, openId: str): return db.query(models.User).filter(models.User.openId == openId).first() +# 通过openId岔村用户 +def get_user_by_openId(db: Session, h5openid: str): + return db.query(models.User).filter(models.User.h5openid == h5openid).first() + # 通过wxid岔村用户 def get_user_by_wxid(db: Session, wxid: str): diff --git a/main.py b/main.py index 6270eef..dd443af 100644 --- a/main.py +++ b/main.py @@ -27,7 +27,7 @@ from pydantic import BaseModel import utils import requests import config -from urllib.parse import quote,unquote +from urllib.parse import quote, unquote models.Base.metadata.create_all(bind=engine) @@ -84,6 +84,26 @@ def read_users(code, wxid, db: Session = Depends(get_db)): return new_user +# H5保存用户h5openid与wxid +@app.get("/addH5openid") +def addH5openid(h5openid, wxid, db: Session = Depends(get_db)): + db_user = crud.get_user_by_openId(db, h5openid=h5openid) + print('db_user----', db_user) + + if db_user: + # 返回用户完整数据 + new_user = db_user + else: + if wxid: + # 机器人id + account_wxid = config.account_wxid + # 新增用户 + new_user = utils.saveWxidInfo(account_wxid, wxid, h5openid) + # "errmsg":r['errmsg'],,"errcode":r['errcode'] + # return {"session_key":r['session_key'],"unionid":r['unionid'],"openid":r['openid']} + return new_user + + # 加入微信群 @app.get("/joingroup") # 群-异度星球 49187487591@chatroom chatroom