예제 #1
0
 def add_friend(token, ftk):
     friend = session.query(Friend).filter(Friend.ftk == ftk,
                                           Friend.token == token).first()
     if friend is not None:
         return -1, friend
     my_category = session.query(User).filter(
         User.token == token).first().category
     if my_category == 2:
         count = session.query(func.count(
             Friend.id)).filter(Friend.token == token).scalar()
         if count > max_helpers:
             return -2, None
     user = session.query(User).filter(User.token == ftk).first()
     if user is None:
         return -3, None
     friend_category = user.category
     if friend_category == 2:
         count = session.query(func.count(Friend.id)).filter(
             Friend.ftk == ftk, Friend.category == 2).scalar()
         if count > max_helpers:
             return -2, None
     if my_category == 2 and friend_category == 2:
         return -4, None
     intimacy = 0
     if my_category == 1 and friend_category == 2:
         intimacy = 1
     adt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     friend = Friend(token, ftk, friend_category, intimacy, adt)
     session.add(friend)
     friend = Friend(ftk, token, my_category, 0, adt)
     session.add(friend)
     session.commit()
     friend = session.query(Friend).filter(Friend.ftk == ftk,
                                           Friend.token == token).first()
     return 0, friend
예제 #2
0
 def update_sn(token, sn):
     try:
         session.query(User).filter(User.token == token).update({User.sn: sn})
         session.commit()
     except InvalidRequestError:
         session.rollback()
     except Exception as e:
         print(e)
예제 #3
0
 def update_intimacy(token, ftk, intimacy):
     try:
         session.query(Friend).filter(Friend.ftk == ftk,
                                      Friend.token == token).update(
                                          {Friend.intimacy: intimacy})
         session.commit()
     except InvalidRequestError:
         session.rollback()
예제 #4
0
 def do_save(code, content, url, image):
     try:
         ut = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
         qrcode = Qrcode(code, content, url, image, ut)
         session.add(qrcode)
         session.commit()
     except InvalidRequestError:
         session.rollback()
예제 #5
0
 def add_new_version_file(file_name, version, check_sum):
     adt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     try:
         firmware = Firmware(file_name, version, check_sum, adt)
         session.add(firmware)
         session.commit()
     except InvalidRequestError:
         session.rollback()
예제 #6
0
 async def update_token(old_token, new_token):
     try:
         session.query(Friend).filter(Friend.ftk == old_token).update(
             {Friend.ftk: new_token})
         session.query(Friend).filter(Friend.token == old_token).update(
             {Friend.token: new_token})
         session.commit()
     except InvalidRequestError:
         session.rollback()
예제 #7
0
 def del_friend(token, ftk):
     try:
         session.query(Friend).filter(Friend.ftk == ftk,
                                      Friend.token == token).delete()
         session.query(Friend).filter(Friend.token == ftk,
                                      Friend.ftk == token).delete()
         session.commit()
     except InvalidRequestError:
         session.rollback()
         pass
예제 #8
0
 def get_reg_user(number, password):
     user = session.query(User).filter(User.number == number, User.password == password).first()
     otk = ""
     if user is not None:
         otk = user.token
         user.token = Encode.generate_token()
         user.lt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
         session.query(User).filter(User.number == number).update({User.token: user.token, User.lt: user.lt})
         session.commit()
     return otk, user
예제 #9
0
 def add_user(token, category):
     user = session.query(User).filter(User.token == token).first()
     if user is not None:
         return -1, user
     rt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     user = User("", "", "", token, "", category, "", rt, rt)
     session.add(user)
     session.commit()
     user = session.query(User).filter(User.token == token).first()
     return 0, user
예제 #10
0
 def update_user(token, name, image):
     user = None
     try:
         session.query(User).filter(User.token == token).update({User.name: name, User.image: image})
         session.commit()
         user = session.query(User).filter(User.token == token).first()
     except InvalidRequestError:
         session.rollback()
     except Exception as e:
         print(e)
     return user
예제 #11
0
 def reg_user(number, password, category, dev_sn):
     user = session.query(User).filter(User.number == number).first()
     if user is not None:
         return -1, user
     rt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     token = Encode.generate_token()
     user = User("", number, password, token, "", category, dev_sn, rt, rt)
     session.add(user)
     session.commit()
     user = session.query(User).filter(User.token == token).first()
     return 0, user
예제 #12
0
 def add_new_version(project, version_name, base_code, version_code,
                     file_type, file_name, apk_check_sum, patch_check_sum):
     adt = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
     try:
         version = Version(project, version_name, base_code, version_code,
                           file_type, file_name, apk_check_sum,
                           patch_check_sum, adt)
         session.add(version)
         session.commit()
     except InvalidRequestError:
         session.rollback()