Модуль Drupal 7. Передача показаний приборов учета

Предлагаю ознакомиться с модулем Transfer meter readings. Этот модуль узко специализированный и большинству читателей, возможно, будет неинтересен. Модуль позволяет жителю многоквартирного дома передавать показания индивидуальных приборов учета в удобной форме на сайте управляющей организации, а управляющей организации в полуавтоматическом режиме обрабатывать эти данные.02690e2ba1194a31b54b3b5ea04b34c2.jpg

Форма выбора адреса

Пользовательская частьСначала жителю предлагается заполнить адрес и номер лицевого счета. При правильном соответствии адреса и лицевого счета пользователь переходит на форму ввода показаний: 8241b4a8e9564557a7f447372553515a.jpgЕсли по одному из счетчиков новые показания не были указаны, снова появится форма, но при этом ранее введенные значения уже не будут доступны для редактирования: 848445c2861b40458bf86032e2b3a78f.jpg

Когда по всем счетчикам переданы показания, отображается соответствующее уведомление: cce503ea32834ab3878dfbf26238385c.jpg

Административная часть 94f9f364353f4688ab3cb19b4a1dc06f.jpgУ администратора есть возможность:

Настроить формат импортируемого файла (файл с основными данными): Последовательность соответствий полей в базе данных и в файле; Указать разделители полей, символы экранирования и т.д.; Настроить формат экспортируемого файла (с переданными показаниями); Разблокировать или заблокировать любое введенное показание счетчика; Список обязательных полей, которые должны присутствовать в файле с основными данными: 88230ab0029943cd8f84fea1d6d95964.jpg

Хочу обратить внимание, что поля «обязательные» не для галочки, если одно из полей будет недоступно или пустым, то строка с этим полем не попадет в таблицу с общими данными. Пример как должен выглядеть правильный файл с основными данными (для импорта):

»2014–05–01»;»7200008701»;»1»; «ул. Циолковского »;»12345»;»5»;»7»; «Петров Иван Сидорович»;1;8702; «Водомер ХВ»;25 »2014–05–01»;»7200008701»;»1»; «ул. Циолковского »;»12345»;»5»;»7»; «Петров Иван Сидорович»;2;8703; «Водомер ГВ»;10 Учитывайте, что для каждого счетчика должна быть отдельная строка с данными об адресе, месяцем учета, номером ЛС.В месяце учета важны только месяц и год, день может быть любой (в пределах месяца). Например, значение »2014–05–12» вполне подходит.Импорт/экспорт На данный момент импорт и экспорт данных проходит только через текстовые файлы с разделителями. Экспорт показаний счетчиков производится в формате CSV. Для импорта подойдет любой текстовый файл с разделителями.Алгоритм работы Внесенные показания блокируются для изменения пользователями. Код блокировки 1; По умолчанию экспортируются показания с кодом блокировки 1; После экспорта показания помечаются как «выгруженные». Код блокировки 2; Модуль находится под лицензией BSD.Исходный код можно посмотреть на GitHub. На Drupal.org опубликую в песочнице в ближайшее время.

Приму любые замечания по коду и переводу модуля.

Спасибо за внимание.

© Habrahabr.ru