Случается, что необходимо добавить один родительский контекст и к нему - пару десятков дочерних. В топике об Android-приложении я приводила пример 22-х супермаркетов АТБ: неплохо бы объединить их в группу, присваивать задаче родительский контекст, но выполнить её в любом из дочерних (это касалось также вида "Рядом" в мобильном приложении).
В принципе возможность объединения контекстов в группы существует, но нет возможности скрыть содержимое группы в спойлер / не показывать в настройках задач, поэтому получаются вот такие казусы:
Итого список может растянуться на 100-200-300 записей, и это жутко неудобно...
Предложение номер один: Сделать возможность сворачивать в спойлер группы контекстов и скрывать их в списке в настройках задач.
Предложение номер два касается предоставлению пользователю минимального функционала для выбора месторасположения контекстов, кроме ручного ввода координат в поля.
На данный момент, как я догадываюсь, есть серьёзные причины, по которым в десктопную версию MLO не добавили карты, как в мобильном приложении. Пока этот функционал находится в стадии разработки (либо же отвергнут по техническим причинам), есть неплохой вариант посильной помощи пользователям в выборе месторасположения контекста: сервис Яндекс-геокодер.
Данный сервис предоставляет возможность отправить службе яндекс карт в качестве атрибутов http-запроса адрес здания и получить в ответ xml-файл с его координатами и другими данными. Или наоборот - по координатам получить адрес.
Это позволит дать возможность пользователю ввести в описание месторасположения нужный адрес и, нажав утопическую кнопку "Получить месторасположение", получить координаты в свойства контекста. А чтоб не испугаться, что яндекс не угадал - можно вывести, кроме координат, описание места из xml. И для особо мнительных - сделать рядом кнопку "Проверить месторасположение", по которой пусть открывается в браузере яндекс-карта с отметкой по координатам.
Например, ищем координаты здания, находящегося по адресу: Мариуполь, пр. Строителей, д. 86.
http-запрос будет выглядеть так:
https://geocode-maps.yandex.ru/1.x/?geocode=Мариуполь,+пр.+Строителей,+д.+86
В ответ получаем длинный xml-файл, в котором ищем соответствующую строку с координатами:
Код: Выделить всё
<Point xmlns="http://www.opengis.net/gml">
<pos>37.522998 47.096697</pos>
</Point>
Координаты придётся поменять местами, но это не страшно
Для проверки - описание нашей точки:
Код: Выделить всё
<AddressLine>
Донецкая область, Мариуполь, проспект Строителей, 86
</AddressLine>
И обратно (Заходим на яндекс-карты по координатам): https://yandex.ua/maps/?text=47.096697,37.522998
Соответственно, загрузится карта с меткой в нужном здании!
Такой способ, несомненно, требует от пользователя внимательности и соблюдения правил написания адреса, но всё же, он лучше, чем выискивание, правка и заполнение координат вручную.
Предложение номер три. Уважаемые разработчики, если вы всё же решите добавить в десктоп-приложение полноценные карты, пожалуйста, не забудьте добавить туда такой же, как в версии для Android, метод указания радиуса! Уж больно он хорош для визуальной оценки!
Благодарю за внимание, желаю развиваться и хорошеть!