import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'main.dart'; /// Класс содержит заголовки и текст блоков FAQ. class Entry { Entry(this.title, this.text); final String title; final String text; } class EntryItem extends StatelessWidget { const EntryItem(this.entry); final Entry entry; Widget _buildTiles(Entry root) { return new ExpansionTile( key: new PageStorageKey(root), title: new Text(root.title), children: [new Text(root.text)] ); } @override Widget build(BuildContext context) { return _buildTiles(entry); } } /// Экран проведения покупки. class FAQScreen extends StatelessWidget { AppBar getAppBar(BuildContext context) { return new AppBar(title: new Text('FAQ', style: new TextStyle(fontSize: 18.0)), backgroundColor: primaryColor, actions: [getLogoutButton()]); } getLogoutButton() { return new IconButton(icon: new Image.asset(logout_png, height: iconHeight, width: iconHeight), onPressed: () => logout(context)); } @override Widget build(BuildContext context) { return new MaterialApp(home: new Scaffold(appBar: getAppBar(context), body: getBody())); } /// Метод возвращает ListView с блоками faq. getBody() { return new ListView.builder( itemBuilder: (BuildContext context, int index) => new EntryItem(data[index]), itemCount: data.length); } /// Список с контентом final List data = [ new Entry('Регистрация', registrationGuide), new Entry('Использование', usageGuide), new Entry('Контакты поддержки', supportGuide), new Entry('Использование', commonGuide) ]; /// TODO: Отформатировать строки static const String registrationGuide = '''После запуска приложения вы окажетесь на странице регистрации магазина. Введите DIN код магазина (выдается партнером/менеджером International Auto Club, дублируется на почту) Нажать кнопку: «Зарегистрировать» Дождитесь подтверждение активации программы, нажатием кнопки “Обновите статус активации” обновите статус. После подтверждения запроса на активацию программы Партнером/менеджером нажмите кнопку “Завершить регистрацию”, приложение готово к использованию. В случае желания изменить номер кассы, необходимо нажать на “значек” верхнем правом углу и вернуться на шаг регистрации.'''; static const String usageGuide = '''Действие 1: При предъявлении покупателем штрих кода участника системы лояльности, запустите данное приложение. На экране появиться сканер штрих кодов. Поднесите гаджет к смартфону или карте покупателя и отсканируйте предъявленный штрих код сканером. При успешном сканировании на вашем экране появятся данные партнера. Действие 2: Необходимо ввести сумму покупки данного покупателя и нажать на кнопку «Зафиксировать». Всплывет окно “Подтверждения правильности ввода суммы” в случае правильного ввода суммы, нажмите “ДА”, сумма будет проведена и вознаграждение будет начислено участнику системы лояльности. Если же сумма введена с ошибкой, нажмите “НЕТ” вы вернетесь на шаг ввода суммы и скорректируете ее.'''; static const String supportGuide = '''При некорректной работе приложения AUTO BONUS просьба сразу обратиться по телефону нашей технической поддержки: 8-800-234-6064 (звонок бесплатный), вас свяжут с менеджером. При звонке приготовьтесь назвать ИНН и наименование вашей организации. Рекомендуйте покупателям установить мобильное приложение дисконтной системы International Auto Club AUTO BONUS, и получайте кэш бэк и их покупок в любых наземных или интернет магазинов. Наш сайт https://www.auto-club.biz'''; static const String commonGuide = '''Для эффективного считывания штрих кода участника системы лояльности необходимо камеру сканера поднести так, чтобы в неё не попадали вертикальные полосы рамки. Долгое сканирование происходит из-за черной рамки, в которую помещен штрих-код, вертикальные полосы этой рамки расцениваются сканером как часть штрих-кода.'''; }