UPD: В связи с появлением “нормального” модуля вложение из этого поста убираю.
У меня есть абсолютно “непричесанный” модуль для EMS - Почты России. Делал для себя. Единственное но - там требуется добавить список регионов (областей) России, этот список есть только в виде SQL-запроса (в файле), т.е. добавлять его нужно в базу вручную. Руки так и не дошли сделать инициализацию - пока другие проблемы есть.
Все во вложении, инструкцию сюда кидаю (в архиве она тоже есть).
Для включения модуля Cifrum_Rus необходимо:
1. Выполнить sql-запрос из файла russian_areas.sql - либо через phpMySqlAdmin, либо вручную из командной строки: mysql -u <mysqluser> -p -D <magento_db_name> < russian_areas.sql
Важно!!! У меня никаких префиксов перед таблицами нет, если у вас они стоят - необходимо в запросе отредактировать имена таблиц.
Обратите внимание: после выполнения этого запроса блок Область в любых адресах для России станет выпадающим списком, а не полем для ввода!
2. Скопировать папку Cifrum в app/code/local/, а файл Cifrum_Rus.xml - в app/etc/modules/.
В модуле в настоящий момент находятся два способа доставки: EMS - Russian Post и City Courier.
City Courier
Простейший способ доставки - курьером с фиксированной ставкой вне зависимости от объема\веса. Бывает активен ТОЛЬКО при совпадении названий города, в котором находится магазин (задается в системных Настройках доставки) и города из адреса доставки покупателя.
EMS - Russian Post
Способ доставки через EMS - Russian Post. Из основных настроек, вводимых вручную - максимальный вес отправки. В настоящий момент он составляет 31.5 кг.
Все остальное - автоматически. Алгоритм: поиск производится сначала по названиям городов, если совпадения не найдено - то по названиям областей. При нахождении совпадения считается исходя из веса отправления. Количество мест считается принятым за единицу.
Хотелось бы в дальнейшем доделать автоматический расчет количества мест и т.д., но пока не до того.
За исправление любых ошибок и доработки буду благодарен. Единственная просьба: любые изменения присылайте, пожалуйста, мне (адрес есть в коде). Это нужно исключительно для того, чтобы не расплодилось в Сети несовместимых модификаций.
Disclamer: имейте ввиду, что все писалось “абы как”, лишь бы быстрее заработало. Поэтому код грязный, в нем много мусора и кривостей. Кроме того, помните, что используете вы все на свой страх и риск.
Из данной ветки следует, что часть очень интересных плагинов к Magento кое-кем уже была разработана самостоятельно или заказана у третьих лиц.
Не подскажите ли, у кого я мог бы купить готовые надстройки (без Интеркассы):
Посмотрите чуть выше - там выложено. City Courier - модуль доставки с оплатой наличными, отображается только при соответствии города заказчика городу, в котором находится магазин.
Оплата через Сбербанк РФ.
Настройки (реквизиты получателя) указываются в интерфейсе администратора в настройках платежных модулей.
На текущий момент квитанцию на оплату можно распечатать только через Профиль зарегистрированного пользователя из информации о заказе. Буду благодарен за идеи реализации подобного функционала и для незарегистрированных пользователей!
Модули доставки:
CityCourier.
Модуль курьерской доставки. Становится активен только при соответствии города доставки городу магазина (Система->Конфигурация->Настройки доставки->Расположение магазина). Т.к. обнаружилось, что при вводе пользователи иногда вводят лишние символы, пришлось упростить сравнение, таким образом, сейчас модуль может стать активен и при частичном соответствии. Например, он будет доступен для пары городов Новгород и Нижний Новгород (но не для Великий Новгород и Нижний Новгород!).
EMS - Russian Post.
Модуль автоматически (через API EMS - Russian Post) определяет сумму на основании сравнения сначала городов, затем - областей отправителя и получателя.
Обратите внимание - после установки модуля поле Область (State) становится выпадающим списком и для России (в оригинале - поле для ввода текста)! В базу данных добавляются области РФ с кодами, таким образом, если Вы самостоятельно делали модификации таблиц directory_country_region и directory_country_region_name, добавляя туда свои описания областей, необходимо эти модификации удалить, выполнив запрос
DELETE FROM `directory_country_region` WHERE `country_id` = 'RU'
Это же действие требуется выполнить, если вы вручную устанавливали предыдущую версию модуля (кстати, я ее удаляю).
Changelog
0.3.1
- Первый публичный релиз через MagentoConnect.
0.3.0
- Добавлен платежный модуль для оплаты через Сбербанк РФ. Квитанция для оплаты формируется только в Профиле зарегистрированного пользователя.
- Изменен механизм сравнения населенного пункта получателя для модуля CityCourier.
0.2.0
- Альфа-версия, работают способы доставки EMS Russian Post и CityCourier.
Модуль шикарный, спасибо.
Пожелание - добавьте, пожалуйста, в список областей Москву и Санкт-Петербург.
В идеале было полное соответствие списка фактическому федеративному устройству России (http://ru.wikipedia.org/wiki/Федеративное_устройство_России).
Не планируете расширить этот модуль на доставку Почтой России (с наложенным платежом)?