def web_register(user_name): print(user_name) username = request.form.get('userName') pwd = request.form.get('pwd') userphone = request.form.get("userPhone") usermail = request.form.get("userMail") mailcode = request.form.get('mailCode') codeKey = "" + usermail + ":code" code = r.get(codeKey) user = wx_user.query.filter(wx_user.name == username or wx_user.phone == userphone).first() #找到 if user: return ("2") else: # 判断邮箱验证码是否正确 if mailcode == '%s' % code: for k in r.scan_iter('wx_user*'): r.delete(k) webuser = wx_user(name=username, email=usermail, phone=userphone, password=pwd, wx_id=1, info_number=0) db.session.add(webuser) db.session.commit() for k in r.scan_iter('wx_user*'): r.delete(k) return ("1") else: return ("0")
def register(): openid = request.values.get('openid') username = request.values.get('name') id = wx_user.query.filter(wx_user.wx_id == openid).first() if id: return '该用户已注册' else: for k in r.scan_iter('wx_user*'): r.delete(k) user = wx_user(name=username, wx_id=openid, phone='无', email='无', password='******', info_number=0, control_power=0) db.session.add(user) db.session.commit() for k in r.scan_iter('wx_user*'): r.delete(k) wxuser = wx_user.query.filter(wx_user.wx_id == openid).first() id = wxuser.id sql = 'select * from upload_img' cursor.execute(sql) image_id = cursor.fetchall() for i in image_id: unread = "insert into information(user_id,image_id,equip_id) VALUE (%s,%s,%s)" % ( id, i[0], i[4]) # unread = information(user_id=id,image_id=i[0],equip_id=i[4]) cursor.execute(unread) database.commit() return ''
def get_imagedata(): if len(r.keys('upload_img*')) == 0: sql='select distinct * from v_userImgs' cursor.execute(sql) user_data=cursor.fetchall() fields = cursor.description column_list = [] json_list = [] for i in fields: column_list.append(i[0]) for row in user_data: data = {} for i in range(len(column_list)): data[column_list[i]] = row[i] json_list.append(data) imgsData = json.dumps(json_list,ensure_ascii=False,cls=CJsonEncoder) for i in range(len(user_data)): imgs_infor = {'name':user_data[i][0],'id':user_data[i][1],'user_id':user_data[i][2],'number':user_data[i][3], 'date':user_data[i][4].strftime("%Y-%m-%d %H:%M:%S"),'equip_id':user_data[i][5],'image_desc':user_data[i][7],'image_title':user_data[i][6]} r.hmset('upload_img:%d'%(user_data[i][1]),imgs_infor) r.expire('upload_img:%d'%(user_data[i][1]),432000) return imgsData else: imgsdata = [] for k in r.scan_iter('upload_img*'): data = r.hgetall(k) imgsdata.append(data) imgsdata = tuple(imgsdata) imgsdata = json.dumps(imgsdata,ensure_ascii=False,cls=CJsonEncoder) return imgsdata
def change_phones(): userid = request.form.get('userID') # oldPhone = request.form.get('oldPhone') newPhone = request.form.get('newPhone') mailcode = request.form.get('mailcode') usermail = request.form.get('userMail') #用户接收验证码的邮箱 codeKey = "" + usermail + ":code" code = r.get(codeKey) if mailcode == '%s' % code: if len(r.keys('wx_user*')) != 0: for k in r.scan_iter('wx_user*'): r_username = r.hget(k, 'name') if r.get(userid) == r_username: user_infor = {'phone': newPhone} r.hmset(k, user_infor) break sql = 'update wx_user set phone="' + newPhone + '" where name="' + r.get( userid) + '"' cursor.execute(sql) database.commit() return ("0") else: return ("1")
def change_passwords(): userid = request.form.get('userID') oldpwd = request.form.get('oldpwd') newpwd = request.form.get('newpwd') # mailcode = request.form.get('mailcode') # usermail = request.form.get('userMail') #用户接收验证码的邮箱 # codeKey = ""+ usermail +":code" # code = r.get(codeKey) # if mailcode =='%s' % code: user_name = r.get(userid) user = wx_user.query.filter(wx_user.password == oldpwd and wx_user.name == user_name).first() if user: if len(r.keys('wx_user*')) != 0: for k in r.scan_iter('wx_user*'): r_username = r.hget(k, 'name') if user_name == r_username: user_infor = {'password': newpwd} r.hmset(k, user_infor) break user_update = wx_user.query.filter( wx_user.password == oldpwd and wx_user.name == user_name).update({'password': newpwd}) db.session.commit() return ("0") else: return ("1")
def ctreate_ThreadPool(self): recived = self.ws.receive() if not recived is None: # 接收传过来的用户名,设备id,时间戳,,图片数量,主题,描述 rec = str(recived, encoding="utf8") # 此处为你需要传过来用户id,设备id,时间戳,图片数量,实验主题和实验描述 username, pwd, equip_code, t, number, theme, description, resume = rec.split( SEPARATOR) u_name = '\'%s\'' % username u_pwd = '\'%s\'' % pwd sql = 'select id from wx_user where name=%s and password=%s' % ( u_name, u_pwd) cursor.execute(sql) user_id = cursor.fetchall() data = json.dumps(user_id) if len(data) < 5: self.ws.send("登录失败") else: self.ws.send("核对成功") equip = equipment.query.filter( equipment.equip_code == equip_code).first() # 获取刚刚上传图片数据的id equip_id = equip.id number = int(number) # 将number转为int型 ###############此处直接调用信息处理类来处理信息############################ if resume == 'False': d = Data_deal(user_id, number, equip_id, description, theme) d.update_info() for j in r.scan_iter('imgs*'): r.delete(j) for k in r.scan_iter('upload_img*'): r.delete(k) for i in r.scan_iter("eqimfo*"): r.delete(i) threadPool = ThreadPoolExecutor( max_workers=number, thread_name_prefix="pro") # 根据用户上传的文件 # 一个用户来访问就会开一个线程,然后根据他传过来的图片数量,开启线程池读取文件 for i in range(number): future = threadPool.submit(self.re(username, user_id, t)) # j将线程提交到线程池 time.sleep(3) threadPool.shutdown() print('接收完!')
def ctreate_ThreadPool(self): recived = self.ws.receive() if not recived is None: rec = str(recived, encoding="utf8") equip_code, t, number, resume = rec.split(SEPARATOR) # 接收传过来的用户名,设备id,时间戳,,图片数量,主题,描述 equip = equipment.query.filter( equipment.equip_code == equip_code).first() # 获取刚刚上传图片数据的id equip_id = str(equip.id) sql = 'select user_id from upload_img where equip_id=%s and number<%s' % ( equip_id, 30) cursor.execute(sql) data = cursor.fetchall() print(data, type(data)) user_id = data[0][0] user = wx_user.query.filter( wx_user.id == user_id).first() # 获取刚刚上传图片数据的id username = user.name self.ws.send("核对成功") ###############此处直接调用信息处理类来处理信息############################ if resume == 'False': d = Data_deal(number, equip_id) d.update_info() for j in r.scan_iter('imgs*'): r.delete(j) for k in r.scan_iter('upload_img*'): r.delete(k) for i in r.scan_iter("eqimfo*"): r.delete(i) number = int(number) # 将number转为int型 threadPool = ThreadPoolExecutor( max_workers=number, thread_name_prefix="pro") # 根据用户上传的文件 # 一个用户来访问就会开一个线程,然后根据他传过来的图片数量,开启线程池读取文件 for i in range(number): future = threadPool.submit(self.re(username, user_id, t)) # j将线程提交到线程池 time.sleep(3) threadPool.shutdown() print('接收完!')
def changedata(): userid = request.args.get('id') name = request.args.get('name') phone = request.args.get('phone') email = request.args.get('email') u_name = '\'%s\'' % name u_phone = '\'%s\'' % phone u_mail = '\'%s\'' % email if len(r.keys('wx_user*')) != 0: for k in r.scan_iter('wx_user*'): r_userid = r.hget(k, 'id') if userid == r_userid: print("更新缓存") user_infor = {'name': name, 'phone': phone, 'email': email} r.hmset(k, user_infor) sql = 'update wx_user set name=%s,phone=%s,email=%s where id=%s' % ( u_name, u_phone, u_mail, userid) cursor.execute(sql) database.commit() json_data = srch_hash_data('wx_user', 'init', 'None') return json_data
def get_userdata(): if len(r.keys('wx_user*')) == 0: sql = 'select * from wx_user' cursor.execute(sql) user_data = cursor.fetchall() fields = cursor.description column_list = [] json_list = [] for i in fields: column_list.append(i[0]) for row in user_data: data = {} for i in range(len(column_list)): data[column_list[i]] = row[i] json_list.append(data) userData = json.dumps(json_list, ensure_ascii=False, cls=CJsonEncoder) for i in range(len(user_data)): user_infor = { 'id': user_data[i][0], 'name': user_data[i][1], 'phone': user_data[i][2], 'email': user_data[i][3], 'password': user_data[i][4], 'wx_id': user_data[i][5] } r.hmset('wx_user:%d' % (user_data[i][0]), user_infor) r.expire('wx_user:%d' % (user_data[i][0]), 86400) return userData else: userdata = [] for k in r.scan_iter('wx_user*'): data = r.hgetall(k) userdata.append(data) userdata = tuple(userdata) userdata = json.dumps(userdata, ensure_ascii=False, cls=CJsonEncoder) return userdata
def change_emails(): user_id = request.form.get('userID') new_mail = request.form.get('newMail') mail_code = request.form.get('mailcode') #用户输入的验证码 user_mail = request.form.get('oldMail') #用户接收验证码的邮箱 codeKey = "" + user_mail + ":code" code = r.get(codeKey) if mail_code == '%s' % code: if len(r.keys('wx_user*')) != 0: for k in r.scan_iter('wx_user*'): r_username = r.hget(k, 'name') if r.get(user_id) == r_username: user_infor = {'email': new_mail} r.hmset(k, user_infor) break user = wx_user.query.filter(wx_user.email == user_mail).update( {'email': new_mail}) db.session.commit() return ("0") else: return ("1")