def balance_overview(user_ids=-1): to_print = '' if user_ids == -1: user_ids = [] elif isinstance(user_ids, list): pass elif isinstance(user_ids, int): user_ids = [user_ids] else: to_print += '\nWrong input' return users = server_conn('list_users') counterpart_ids = users.to_list() if not user_ids: user_ids = counterpart_ids for user_id in user_ids: to_print += '\n' to_print += ('=' * 50) user1 = User(user_id=user_id) user1.load() to_print += '\n' to_print += user1.f_name user1_balance = user1.balance() to_print += '\n' to_print += ('Accumulated debt: {0} RUB'.format(user1_balance[0])) to_print += '\n' to_print += ('Accumulated receivables: {0} RUB'.format( user1_balance[1])) remaining_users = [i for i in counterpart_ids if i != user1.user_id] for counterpart_id in remaining_users: user2 = User(user_id=counterpart_id) counterpart_balance = user1.balance(counterpart_id=user2.user_id) debt_to_counterpart = counterpart_balance[0] receivables_from_counterpart = counterpart_balance[1] if debt_to_counterpart != 0 or receivables_from_counterpart != 0: user2.load() to_print += '\n' to_print += ('-' * 20) to_print += '\n' to_print += ('Debt to {0}: {1} RUB:'.format( user2.f_name, debt_to_counterpart)) to_print += '\n' to_print += ('Receivables from {0}: {1} RUB'.format( user2.f_name, receivables_from_counterpart)) print(to_print) return to_print
def load_user_button_click(self): global f_name_out_label, l_name_out_label, debt_out_label, receivables_out_label user = User(username=self.username_entry.get()) user.load(offer_to_create=False) if user.user_id == -1: messagebox.showwarning('Error', 'User not found') f_name_out_label.destroy() l_name_out_label.destroy() debt_out_label.destroy() receivables_out_label.destroy() else: f_name_out_label = tk.Label(self.user_overview, text=user.f_name) f_name_out_label.grid(row=2, column=1) l_name_out_label = tk.Label(self.user_overview, text=user.l_name) l_name_out_label.grid(row=3, column=1) balance = user.balance() debt_out_label = tk.Label(self.user_overview, text=balance[0]) debt_out_label.grid(row=4, column=1) receivables_out_label = tk.Label(self.user_overview, text=balance[1]) receivables_out_label.grid(row=5, column=1)
def balance_overview(message): # todo update with a keyboard & usernames if message.text == '': users = -1 else: users = [message.text] print('users', users) to_print = '' counterparts = server_conn('list_users') counterpart_usernames = counterparts if users == -1: users = counterpart_usernames for username in users: print('user', username) to_print += '\n' to_print += ('=' * 50) user1 = User(username=username) user1.load() to_print += '\n' to_print += user1.f_name user1_balance = user1.balance() to_print += '\n' to_print += ('Accumulated debt: {0} RUB'.format(user1_balance[0])) to_print += '\n' to_print += ('Accumulated receivables: {0} RUB'.format(user1_balance[1])) remaining_users = [i for i in counterpart_usernames if i != user1.user_id] for counterpart_id in remaining_users: user2 = User(username=counterpart_id) counterpart_balance = user1.balance(counterpart_id=user2.user_id) debt_to_counterpart = counterpart_balance[0] receivables_from_counterpart = counterpart_balance[1] if debt_to_counterpart != 0 or receivables_from_counterpart != 0: user2.load() user2.describe() to_print += '\n' to_print += ('-' * 20) to_print += '\n' to_print += ('Debt to {0}: {1} RUB:'.format(user2.f_name, debt_to_counterpart)) to_print += '\n' to_print += ('Receivables from {0}: {1} RUB'.format(user2.f_name, receivables_from_counterpart)) bot.send_message(message.chat.id, to_print, reply_markup=types.ReplyKeyboardRemove())
def home(): if request.method == 'POST': username = request.form['username'] user = User(username=username) user.load() balance = user.balance() return render_template('load_user.html', f_name=user.f_name, l_name=user.l_name, debt=balance[0], receivables=balance[1]) return render_template('load_user.html', f_name='', l_name='', debt='', receivables='')