def is_acceptable(self, user_id, friend_id): user = ShourUser.get_by_id(int(user_id)) friend = ShourUser.get_by_id(int(friend_id)) if not user: # 申請元が存在しない raise ShourAppError(20001) if not friend: # 相手方が存在しない raise ShourAppError(20002) else: # 申請元または相手方ユーザーが存在しない return [user, friend]
def activate(self, token, tmp_user_id, user_id): if token: tmp_user = db.get(token) user = ShourUser.get_by_id(int(user_id)) else: # アクティベートに失敗 raise ShourAppError(10006) if tmp_user and user: if tmp_user.used == True: # アクティベートに失敗 raise ShourAppError(10006) elif user.active == True: # アクティベートに失敗 raise ShourAppError(10006) # クロスグループトランザクションCross-Group (XG) Transactions有効化 xg_on = db.create_transaction_options(xg=True) db.run_in_transaction_options(xg_on, ShourTempUser.activate_all, tmp_user, user) else: # アクティベートに失敗 raise ShourAppError(10006)