博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
3333
阅读量:5245 次
发布时间:2019-06-14

本文共 5107 字,大约阅读时间需要 17 分钟。

from bson import ObjectId

from flask import Blueprint,request,jsonify
from setting import MDB,RET
import datetime

devices_bp = Blueprint('devices_bp', name)

@devices_bp.route('/scan_qr',methods=['post'])

def scan_qr():
device = request.form.to_dict() # device key
print(device)
device_info = MDB.Devices.find_one(device)
if device_info:
RET['CODE'] = 0
RET['MSG'] = "扫描成功"
RET['DATE'] = device
# 描二维码成功
else:
# 扫描二维码失败 可能不是玩具二维码 数据库中未存在deviceKey
RET['CODE'] = 1
RET['MSG'] = "请扫描玩具二维码"
RET['DATE'] = {}

return jsonify(RET)

@devices_bp.route('/bind_toy',methods=['post'])

def bind_toy():
'''

:return:'''toy_info = request.form.to_dict()  # 获取玩具的信息print(toy_info)# {'toy_name': '小狐狸', 'baby_name': '小主人', 'remark': '爸爸', 'device_key': 'undefined', 'user_id': '5d351fe2e1361657b745d191'}# {'_id': ObjectId('5d351fe2e1361657b745d191'), 'username': '3', 'password': 'eccbc87e4b5ce2fe28308fd9f2a7baf3', 'nickname': '3', 'gender': '1', 'avatar': 'mama.jpg', 'bind_toys': [], 'friend_list': []}toy_info['avatar'] = 'toy.jpg'  # 加入图片? 信息user_id = toy_info.pop("user_id")   # 删除获得user_id的值toy_info['bind_user'] = user_id  # 并给一个新的值  # // 玩具的绑定用户toy_info['friend_list'] = []    # // 玩具通讯录信息user_info = MDB.Users.find_one({'_id':ObjectId(user_id)})   #print(user_info,user_id)toy_add_user = {                   "friend_id": user_id,  # app id                   "friend_nick": user_info.get('nickname'),  # user 昵称                   "friend_remark":  user_info.get('remark'),  # remark在哪里呢?                   "friend_avatar":  user_info.get('avatar'),   # user有头像吗?                   # "friend_chat": user_id,                   "friend_type": "app"  # 好友的用户类型 app / toy               }toy_info["friend_list"].append(toy_add_user)toy_id = MDB.Toys.insert_one(toy_info)print(toy_info)# print(list(toy_id)) # TypeError: 'InsertOneResult' object is not iterable# print()# '''user_add_toy = {                   "friend_id": toy_id.inserted_id, # toy_id str                   "friend_nick": toy_info.get('baby_name'), # baby_name                   "friend_remark": toy_info.get('toy_name'), # toy_name                   "friend_avatar": toy_info.get('avatar'), # 阿凡达                   # "friend_chat": toy_id.inserted_id, # chat_id   # // 私聊窗口ID 聊天数据表对应值                   "friend_type": "toy" # 好友的类型 toy               }user_info["bind_toys"].append(str(toy_id.inserted_id))user_info["friend_list"].append(user_add_toy)print(user_info,toy_info)# MDB.Users.update_one({'_id':ObjectId(toy_info["bind_user"])})# 修改 Users 的全部数据MDB.Users.update_one({'_id':ObjectId(user_id)},{"$set":user_info})# Chats 数据也会变化 user_list player_list 将 toy_id  和 user_id 加入# MDB.Chats.update_one({},{"$set":{"user_list":["toy_id","user_id"]}})u_chat_list = []t_chat_list = []u_chat_t = {    "from_user": user_id, # 信息发送方ID    "to_user": toy_id.inserted_id, # 信息接收方ID    "chat": "回家吃饭?", # 语音消息文件名    "createTime": datetime.datetime.now() # 聊天创建时间}# MDB.Chats.insert_one(u_chat_t)# chat_id = MDB.Chats.insert_one(u_chat_t).inserted_id# print(chat_id)# toy_add_user['friend_chat'] = chat_idt_chat_u = {    "from_user": toy_id.inserted_id,  # 信息发送方ID    "to_user": user_id,  # 信息接收方ID    "chat": "在网吧呢!",  # 语音消息文件名    "createTime": datetime.datetime.now()  # 聊天创建时间}u_chat_list.append(u_chat_t)t_chat_list.append(t_chat_u)MDB.Chats.insert_one({'chat_list':t_chat_list})MDB.Chats.insert_one({'chat_list':u_chat_list})id1 = str(list(MDB.Chats.find({'chat_list': t_chat_list}))[0].get('_id'))    # u_add 的聊天的 那个idid2 = str(list(MDB.Chats.find({'chat_list': u_chat_list}))[0].get('_id'))# toy_add_user['friend_chat'] = id1# user_add_toy['friend_chat'] = id1# print(id1,id2,user_add_toy)# print(toy_add_user,user_add_toy,type(toy_add_user),type(user_add_toy))  #  
添加成元祖了怎么整# 把聊天id 传给friend , 然后 保存到数据库print(1)toy_add_user['friend_chat'] = id1user_add_toy['friend_chat'] = id2toy_info["friend_list"].append(toy_add_user)MDB.Toys.update({'_id': ObjectId(str(toy_id.inserted_id))}, {"$set": toy_info})print(2)user_info["bind_toys"].append(str(toy_id.inserted_id))user_info["friend_list"].append(user_add_toy)MDB.Users.update_one({'_id': ObjectId(str(user_id))}, {"$set": user_info})# MDB.Chats.insert_one({'chat_list':t_chat_list})# MDB.Chats.insert_one({'chat_list':u_chat_list})print(3)user_toy = [user_id, str(toy_id.inserted_id)]toy_user = [str(toy_id.inserted_id), user_id]MDB.Chats.update_one({'chat_list': t_chat_list}, {"$set": {'user_list': user_toy}})MDB.Chats.update_one({'chat_list': u_chat_list}, {"$set": {'user_list': toy_user}})print(4)# print(str(list(MDB.Chats.find({'chat_list':t_chat_list}))[0].get('_id')))# chat_id = MDB.Chats.insert_one(u_chat_t).inserted_id# print(chat_id)# print(list(MDB.Chats.find({})))RET["CODE"] = 0RET["MSG"] = "绑定完成"RET["DATA"] = {}# '''return jsonify(RET)

@devices_bp.route('/toy_list',methods=['post'])

def toy_list():
bind_user = request.form.get('_id')
toyl = list(MDB.Toys.find({'bind_user':bind_user}))

for toy in toyl:    toy['_id'] = str(toy.get('_id'))RET['CODE'] = 0RET['MSG'] = '获取Toy列表'RET["DATA"] = toylreturn jsonify(RET)

转载于:https://www.cnblogs.com/Doner/p/11228238.html

你可能感兴趣的文章
redis-cli info命令中各数值含义
查看>>
软件测试2019:第五次作业
查看>>
JS异步加载的三种方案
查看>>
设计模式---简单工厂和工厂模式
查看>>
我的第一次算法分析笔记
查看>>
ZOJ 3870 Team Formation(二进制找规律)
查看>>
Redis内存模型
查看>>
cisa备考体会
查看>>
timus1004 最小环()Floyd 算法
查看>>
数据结构05之高级排序
查看>>
python 字典实现类似c的switch case
查看>>
面试问题总结
查看>>
ubuntu qq
查看>>
redis 常用命令
查看>>
【转载】C#常用数据库Sqlserver通过SQL语句查询数据库以及表的大小
查看>>
_kbhit() for linux
查看>>
Mayor's posters POJ - 2528
查看>>
决策树--信息增益,信息增益比,Geni指数的理解
查看>>
常用sql备份
查看>>
Solr源码在MyEclipse下的搭建
查看>>