コード例 #1
0
    def work(self, message=None):
        if self.state == 0:
            job = storage.get_job_by_user_id(self.requester.id)
            if job:
                self.done = True
                return State.SKIP, Message(content=message_of(
                    'gettask', 'A', Tasks.get_name(Tasks, job.typus)),
                                           channel=self.channel)

            var = 'Aktuell gibt es folgende Dinge zu erledigen: \n' \
                + ''.join([f'[{i}] {Tasks.get_name(Tasks, task)} \n' \
                for i, task in enumerate(storage.available_tasks)])

            return State.OK, Message(content=message_of(
                'gettask', self.state, var),
                                     channel=self.channel)

        if self.state == 1:
            try:
                task_num = int(message.content[1])
                task = storage.available_tasks[task_num]
                storage.available_tasks.remove(task)
                storage.insert_new_job(self.requester.id, task, 0)
                construct_task(task, self.requester.id, self.client)
                return State.OK, Message(content=message_of(
                    'gettask', self.state, Tasks.get_name(Tasks, task)),
                                         channel=self.channel)
            except Exception as e:
                print(e)
                return State.FAILED, None
コード例 #2
0
 def work(self, message=None):
     for u in storage.users:
         if u.id.val == self.requester.id:
             return True, Message(content=message_of(
                 'balance', self.state, u.money.val),
                                  channel=self.channel)
コード例 #3
0
 def work(self, message=None):
     for u in storage.users:
         if u.id.val == self.requester.id:
             return True, Message(content=message_of(
                 'salary', self.state, salary_of(u.role.val)),
                                  channel=self.channel)