Twix007
Гуру форума
- Регистрация
- 11 Окт 2009
- Сообщения
- 257
- Реакции
- 57
- Автор темы
- #1
По робочему модулю 4 Delivery для Simple:
Сделал ещё 3 базы Автолюкс, Интайм, Укрпочта, Ваш Час по аналогу Новой почты (в архиве), но вопрос:
Как правильно изменить запрос в файле, если у меня отдельные таблицы в БД вида oc_autolux_city и oc_autolux_adress и аналоги?
А не стандыртные oc_country и oc_zone как для новой почты (в архиве)....
Для каждой службы чтобы была своя таблица адреса и города!
БД - было так:
а нужно что-бы запрос работал в бд так:
За помощь - выложу Ин Тайм, Ваш Час, Автолюкс базы, УкрПочту Еще не осилил доделать...
\catalog\model\shipping\novaposhta.php
как этот запрос сделать, чтобы он брал данные о стране из таблицы zone_to_geo_zone и из таблиц города oc_novaposhta_city и таблицы адресов отделений oc_novaposhta_adress ?
Изясню по другому уже!=)
В архиве 2 модуля доставки новая почта и автолюкс. Также в архиве база отделений новой почты.
база заменяет дефолтные таблицы: префикс_country и префикс_zone и работает только с новой почтой.
Как изменить запрос в файле \catalog\model\shipping\novaposhta.php чтобы не заменялись дефолтные таблицы префикс_country и префикс_zone? А для базы новой почты были свои 2 таблицы?
Также своя база аналогична новой почте, но для автолюкса.
Для просмотра ссылки Войдиили Зарегистрируйся
Неужели никому не интересна нормальная доставка opencart, по аналогии которой можно сделать любую службу доставки с выбором города и отделения перевозчика?
Сделал ещё 3 базы Автолюкс, Интайм, Укрпочта, Ваш Час по аналогу Новой почты (в архиве), но вопрос:
Как правильно изменить запрос в файле, если у меня отдельные таблицы в БД вида oc_autolux_city и oc_autolux_adress и аналоги?
А не стандыртные oc_country и oc_zone как для новой почты (в архиве)....
Для каждой службы чтобы была своя таблица адреса и города!
БД - было так:
DROP TABLE IF EXISTS `oc_country`;
CREATE TABLE IF NOT EXISTS `oc_country` (
`country_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`iso_code_2` varchar(2) NOT NULL,
`iso_code_3` varchar(3) NOT NULL,
`address_format` text NOT NULL,
`postcode_required` tinyint(1) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`country_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5369 ;
DROP TABLE IF EXISTS `oc_zone`;
CREATE TABLE IF NOT EXISTS `oc_zone` (
`zone_id` int(11) NOT NULL AUTO_INCREMENT,
`country_id` int(11) NOT NULL,
`name` varchar(128) NOT NULL,
`code` varchar(32) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`zone_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1490 ;
CREATE TABLE IF NOT EXISTS `oc_country` (
`country_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`iso_code_2` varchar(2) NOT NULL,
`iso_code_3` varchar(3) NOT NULL,
`address_format` text NOT NULL,
`postcode_required` tinyint(1) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`country_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5369 ;
DROP TABLE IF EXISTS `oc_zone`;
CREATE TABLE IF NOT EXISTS `oc_zone` (
`zone_id` int(11) NOT NULL AUTO_INCREMENT,
`country_id` int(11) NOT NULL,
`name` varchar(128) NOT NULL,
`code` varchar(32) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`zone_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1490 ;
DROP TABLE IF EXISTS `oc_autolux_city`;
CREATE TABLE IF NOT EXISTS `oc_autolux_city` (
`city_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`city_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5369 ;
DROP TABLE IF EXISTS `oc_autolux_adress`;
CREATE TABLE IF NOT EXISTS `oc_autolux_adress` (
`adress_id` int(11) NOT NULL AUTO_INCREMENT,
`city_id` int(11) NOT NULL,
`name` varchar(128) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`adress_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1490 ;
CREATE TABLE IF NOT EXISTS `oc_autolux_city` (
`city_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(128) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`city_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5369 ;
DROP TABLE IF EXISTS `oc_autolux_adress`;
CREATE TABLE IF NOT EXISTS `oc_autolux_adress` (
`adress_id` int(11) NOT NULL AUTO_INCREMENT,
`city_id` int(11) NOT NULL,
`name` varchar(128) NOT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1',
PRIMARY KEY (`adress_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1490 ;
За помощь - выложу Ин Тайм, Ваш Час, Автолюкс базы, УкрПочту Еще не осилил доделать...
\catalog\model\shipping\novaposhta.php
как этот запрос сделать, чтобы он брал данные о стране из таблицы zone_to_geo_zone и из таблиц города oc_novaposhta_city и таблицы адресов отделений oc_novaposhta_adress ?
Код:
$query = $this->db->query("SELECT * FROM " . DB_PREFIX . "zone_to_geo_zone WHERE geo_zone_id = '" . (int) $this->config->get('novaposhta_geo_zone_id') . "' AND country_id = '" . (int) $address['country_id'] . "' AND (zone_id = '" . (int) $address['zone_id'] . "' OR zone_id = '0')");
if (!$this->config->get('novaposhta_geo_zone_id')) {
$status = TRUE;
} elseif ($query->num_rows) {
$status = TRUE;
} else {
$status = FALSE;
}
} else {
$status = FALSE;
}
Изясню по другому уже!=)
В архиве 2 модуля доставки новая почта и автолюкс. Также в архиве база отделений новой почты.
база заменяет дефолтные таблицы: префикс_country и префикс_zone и работает только с новой почтой.
Как изменить запрос в файле \catalog\model\shipping\novaposhta.php чтобы не заменялись дефолтные таблицы префикс_country и префикс_zone? А для базы новой почты были свои 2 таблицы?
Также своя база аналогична новой почте, но для автолюкса.
Для просмотра ссылки Войди
Неужели никому не интересна нормальная доставка opencart, по аналогии которой можно сделать любую службу доставки с выбором города и отделения перевозчика?
Вложения
Последнее редактирование модератором: