Плательщики

Боль

  • Тесты могли портить данные друг другу
  • Постоянно были запросы к КС, которые занимали время
  • Было много дублирования
  • Уникальные решения были раскиданы по коду (плохая инкапсуляция)
  • Не было гарантии что плательщик (не) существует

Решение - PayerGetter

  • Вытаскиваем плательщиков большой пачкой на старте
  • Подгружаем новых, если не хватило
  • Поддерживаем кастомные виды плательщиков
  • Получение любых плательщиков в одном месте
  • Каждому по плательщику
    public interface IPayerGetter
    {
        void Initialize(bool firstTime = true);
        Abonent Get(ClientType type, bool isCorp = false, bool isBudget = false);
        Abonent GetClientWithFocus();
        (Abonent head, Abonent branch) GetHeadWithBranch();

        string GetNotExistingPayerInn(ClientType type);
    }

Описание интерфейса

Вопросы

Made with Slides.com