Example #1
0
    def do_reports(self, args):
        """Позвлояет запустить процесс генерирования отчетных документов для финансового отдела. Данная команда
        не предусматривает использования параметров. Директорию, в которой хранятся файлы отчетов можно узнать в
        соотвествующей секции конфигурации (которую можно просмотреть командой show_config)."""

        arguments = [int(a) for a in args.split() if a.isdigit()]

        if self.connection.get_status() == 'YES':
            if len(arguments) == 1 and arguments[0] in range(1, 999999):
                docs_generator = generate_docs.DocsGenerator(
                    self.per.get_period(),
                    self.config,
                    start_bill_number=arguments[0])
                docs_generator.generate_reports()
                self.config_manager.save_config(
                )  # Сохраняем файл конфига для сохарнения номера счета для 1С
            elif not args:
                docs_generator = generate_docs.DocsGenerator(
                    self.per.get_period(), self.config)
                docs_generator.generate_reports()
                self.config_manager.save_config(
                )  # Сохраняем файл конфига для сохарнения номера счета для 1С
            else:
                print('Некорректные параметры. Воспользутесь командой '
                      'help reports для получения помощи для подключения')
        else:
            print(
                'Проблемы с подключением к серверу. Воспользутесь командой connect для подключения или командой '
                'help details для получения помощи.')
Example #2
0
    def do_bills(self, args):
        """Позволяет запустить процесс генерирования квитанций для всех клиентов физических лиц.
        Обязательно обращайте внимание на отчетный период. Директорию, в которой хранятся файлы
        счетов можно узнать в соотвествующей секции конфигурации (которую можно просмотреть командой show_config).
        Данная команда не предусматривает использования параметров."""

        if not args:
            if self.connection.get_status() == 'YES':
                docs_generator = generate_docs.DocsGenerator(
                    self.per.get_period(), self.config)
                docs_generator.generate_bills()
            else:
                print(
                    'Проблемы с подключением к серверу. Воспользутесь командой connect для подключения или командой '
                    'help bills для получения помощи.')
        else:
            print(
                'Некорректные параметры. Воспользутесь командой help bills для получения помощи для подключения'
            )
Example #3
0
    def do_bill(self, args):
        """Позволяет запустить процесс генерирования телефонного счета указанному в качестве параметра клиенту.
        В качестве параметра допускается передавать ID Аккаунта в формате <ID Аккаунта>. Отсутсвие параметров не
        допускается. Например, команда bill 3354 запустит процесс генерирования счета для клиента с ID аккаунта 3354.
        Обязательно обращайте внимание на отчетный период (строка состояния данного приложения).
        Директорию, в которой хранятся файлы счетов можно узнать в соотвествующей секции конфигурации
        (которую можно просмотреть командой config)."""

        arguments = [a if not a.isdigit() else int(a) for a in args.split()]

        if self.connection.get_status() == 'YES':
            if len(arguments) == 1 and arguments[0] in range(1, 9999):
                docs_generator = generate_docs.DocsGenerator(
                    self.per.get_period(), self.config)
                docs_generator.generate_bill_for_client(str(arguments[0]))
            else:
                print(
                    'Некорректные параметры. Воспользутесь командой help generate_client_bill для получения помощи.'
                )
        else:
            print(
                'Проблемы с подключением к серверу. Воспользутесь командой connect для подключения или командой '
                'help bill для получения помощи.')