|
@@ -94,7 +94,6 @@ def handle_follow(event):
|
|
|
event.reply_token,
|
|
|
TextSendMessage(text='歡迎加入好友'))
|
|
|
|
|
|
-
|
|
|
# message handler
|
|
|
@handler.add(MessageEvent, message=TextMessage)
|
|
|
def message(event):
|
|
@@ -167,6 +166,10 @@ def message(event):
|
|
|
alt_text="Receive",
|
|
|
template=button_template_message))
|
|
|
|
|
|
+@app.post("/push/")
|
|
|
+def push_text(user, message):
|
|
|
+ line_bot_api.push_message(user, TextSendMessage(text=message))
|
|
|
+
|
|
|
# nft collection api
|
|
|
@app.get("/collection/{userid}")
|
|
|
def collection(userid):
|
|
@@ -200,8 +203,6 @@ def collection(userid):
|
|
|
return nfts_all
|
|
|
db.close()
|
|
|
|
|
|
-
|
|
|
-
|
|
|
# receive handler
|
|
|
@app.get("/receive/{userid}")
|
|
|
def receive(userid):
|
|
@@ -239,20 +240,32 @@ async def receive(userModel : models.TransactionNft):
|
|
|
else:
|
|
|
userid = result['userid']
|
|
|
|
|
|
-
|
|
|
# update nft owner
|
|
|
if table3.find_one(nftid=nftid):
|
|
|
data = dict(nftid=nftid, userid=userid)
|
|
|
table3.update(data, ['nftid'])
|
|
|
+
|
|
|
+ # push訊息
|
|
|
+ result3 = table2.find_one(id=nftid)
|
|
|
+ title = result3['title']
|
|
|
+ message = "您的NFT : " + title + ", 已劃轉成功!"
|
|
|
+ push_text(userid, message)
|
|
|
+
|
|
|
db.close()
|
|
|
elif table2.find_one(id=nftid):
|
|
|
data = dict(id=nftid, userid=userid)
|
|
|
table2.update(data, ['id'])
|
|
|
+
|
|
|
+ # push訊息
|
|
|
+ result3 = table2.find_one(id=nftid)
|
|
|
+ title = result3['title']
|
|
|
+ message = "您的NFT : "+title+", 已劃轉成功!"
|
|
|
+ push_text(userid, message)
|
|
|
+
|
|
|
db.close()
|
|
|
else:
|
|
|
db.close()
|
|
|
return {'msg': 'nft not found'}
|
|
|
-
|
|
|
return {'msg': 'OK'}
|
|
|
|
|
|
# shop handler
|
|
@@ -272,7 +285,7 @@ def shop(userid):
|
|
|
db.close()
|
|
|
|
|
|
@app.post("/buy")
|
|
|
-async def buy(userModel : models.BuyNft):
|
|
|
+async def buy(userModel: models.BuyNft):
|
|
|
# db connect
|
|
|
db = dataset.connect('mysql://choozmo:pAssw0rd@db.ptt.cx:3306/arkcard?charset=utf8mb4')
|
|
|
table2 = db['nft']
|
|
@@ -289,6 +302,13 @@ async def buy(userModel : models.BuyNft):
|
|
|
user_obj = table2.find_one(id=nftid)
|
|
|
user_obj['userid'] = userid
|
|
|
table2.update(dict(user_obj), ['id'])
|
|
|
+
|
|
|
+ # push訊息
|
|
|
+ result3 = table2.find_one(id=nftid)
|
|
|
+ title = result3['title']
|
|
|
+ message = "您的NFT : " + title + ", 已購買成功!"
|
|
|
+ push_text(userid, message)
|
|
|
+
|
|
|
db.close()
|
|
|
return "您已購買成功!"
|
|
|
|