· 9 years ago · Oct 25, 2016, 01:50 PM
1INSERT INTO `admin_menu` (`pid`, `name`, `url`) VALUES ('92', 'КонÑтруктор лендингов', '/call/marketing/landings-constructor');
2SET @new_menu_id = last_insert_id();
3
4DROP TABLE IF EXISTS `landings_constructor`;
5
6CREATE TABLE IF NOT EXISTS `landings_constructor` (
7 `landings_constructor_id` int(11) NOT NULL AUTO_INCREMENT,
8 `landings_constructor_name` varchar(255) NOT NULL,
9 `landings_constructor_start_date` date NULL DEFAULT NULL,
10 `landings_constructor_end_date` date NULL DEFAULT NULL,
11 `landings_constructor_status` tinyint(1) DEFAULT '0',
12 `landings_constructor_available_for_authorized` tinyint(1) DEFAULT '0',
13 `landings_constructor_disable_layout` tinyint(1) DEFAULT '0',
14 `landings_constructor_template` varchar(255) NOT NULL,
15 `landings_constructor_data` text NOT NULL DEFAULT '',
16 `customers_id` int(11) NOT NULL DEFAULT '0',
17 `date_added` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
18 PRIMARY KEY (`landings_constructor_id`)
19) ENGINE=InnoDB DEFAULT CHARSET=utf8;
20
21DROP TABLE IF EXISTS `friendly_urls`;
22
23CREATE TABLE IF NOT EXISTS `friendly_urls` (
24 `friendly_url_id` int(11) NOT NULL AUTO_INCREMENT,
25 `friendly_url` varchar(255) NOT NULL,
26 `object_id` int(11) NOT NULL,
27 `friendly_url_entity` ENUM('docs', 'landings-constructor') NOT NULL,
28 PRIMARY KEY (`friendly_url_id`)
29) ENGINE=InnoDB DEFAULT CHARSET=utf8;
30
31INSERT IGNORE INTO `acl_rules` (`module`, `controller`, `action`)
32 VALUES('call', 'marketing', 'landings-constructor');
33
34INSERT IGNORE INTO `acl_rules` (`module`, `controller`, `action`)
35 VALUES('call', 'marketing', 'landings-constructor-template');
36
37INSERT IGNORE INTO `acl_rules` (`module`, `controller`, `action`)
38 VALUES('call', 'marketing', 'landings-constructor-form');
39
40INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
41 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
42 WHERE aro.`acl_roles_title_en` = 'marketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor';
43
44INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
45 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
46 WHERE aro.`acl_roles_title_en` = 'marketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor-template';
47
48INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
49 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
50 WHERE aro.`acl_roles_title_en` = 'marketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor-form';
51
52INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
53 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
54 WHERE aro.`acl_roles_title_en` = 'mainMarketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor';
55
56INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
57 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
58 WHERE aro.`acl_roles_title_en` = 'mainMarketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor-template';
59
60INSERT IGNORE INTO `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`)
61 SELECT aro.`acl_roles_id`, aru.`acl_rules_id`, 'ALLOW', '' FROM `acl_roles` aro, `acl_rules` aru
62 WHERE aro.`acl_roles_title_en` = 'mainMarketing' AND aru.`module` = 'call' AND aru.`controller` = 'marketing' AND aru.`action` = 'landings-constructor-form';
63
64update menu_filters_tree mft
65 join menu_filters_tree mft2 on mft2.menu_filters_tree_id = mft.menu_filters_tree_root_id
66set mft.menu_filters_tree_url = mft2.menu_filters_tree_url
67where mft.menu_filters_tree_selected_filters_link != '';
68
69INSERT IGNORE INTO acl_rules (module, controller, action) VALUES ('call', 'shop', 'can-create-products');
70
71INSERT IGNORE INTO acl_settings (acl_roles_id, acl_rules_id, access_type, assert)
72 SELECT aro.acl_roles_id, aru.acl_rules_id, 'ALLOW', ''
73 FROM acl_roles aro, acl_rules aru
74 WHERE aro.acl_roles_id IN (50) AND aru.module = 'call' AND aru.controller = 'shop' AND aru.action IN ('can-create-products');
75
76INSERT INTO `mail_templates` (`name`, `code`, `type`) VALUES ('Изменение цены продажи Ð´Ð»Ñ Ñтатики', 'change_static_products', '2');
77
78DROP TABLE `sms_notifies_to_objects`;
79ALTER TABLE `notifies` CHANGE `notifies_status` `send_status` TINYINT(1) NOT NULL DEFAULT '0';
80ALTER TABLE `notifies` DROP `object_type`;
81
82DROP TABLE IF EXISTS `suppliers_contracts_payments_types`;
83CREATE TABLE `suppliers_contracts_payments_types` (
84 `suppliers_contracts_payments_types_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
85 `suppliers_contracts_payments_types_title` VARCHAR(50) NOT NULL,
86 PRIMARY KEY (`suppliers_contracts_payments_types_id`)
87)
88 COMMENT = 'Варианты оплаты'
89 COLLATE = 'utf8_general_ci'
90 ENGINE = InnoDB;
91
92INSERT INTO `suppliers_contracts_payments_types` (`suppliers_contracts_payments_types_title`) VALUES ('ÐÐ²Ð°Ð½Ñ (от даты заказа)');
93INSERT INTO `suppliers_contracts_payments_types` (`suppliers_contracts_payments_types_title`) VALUES ('Предоплата (от даты привоза товара на Ñклад)');
94INSERT INTO `suppliers_contracts_payments_types` (`suppliers_contracts_payments_types_title`) VALUES ('ПоÑтоплата (от даты окончательной приемки)');
95
96ALTER TABLE `suppliers_contracts_payments`
97 CHANGE COLUMN `contract_payments_type_id` `suppliers_contracts_payments_types_id` INT(10) UNSIGNED NOT NULL DEFAULT 2
98COMMENT 'Вариант оплаты'
99 AFTER `suppliers_contracts_id`,
100 ADD INDEX `suppliers_contracts_payments_types_id` (`suppliers_contracts_payments_types_id`);
101
102CREATE TABLE if NOT EXISTS `orders_products_to_incomes_attributes` (
103 `orders_products_id` INT(11) NOT NULL,
104 `incomes_attributes_id` INT(11) NOT NULL,
105 PRIMARY KEY (`orders_products_id`),
106 INDEX `incomes_attributes_id` (`incomes_attributes_id`)
107)
108 COLLATE='utf8_general_ci'
109 ENGINE=InnoDB
110;
111
112UPDATE `fulfilments` SET `fulfilments_id` = '0' WHERE `fulfilments_id` = 2;
113
114ALTER TABLE `fulfilments_outgoing_packages_addresses`
115 DROP COLUMN `customers_id`,
116 DROP COLUMN `customers_firstname`,
117 DROP COLUMN `customers_middlename`,
118 DROP COLUMN `customers_lastname`,
119 DROP COLUMN `address_street`,
120 DROP COLUMN `address_house`,
121 DROP COLUMN `address_city`,
122 DROP COLUMN `address_region`,
123 DROP COLUMN `address_zip_code`,
124 DROP COLUMN `address_country_id`,
125 DROP COLUMN `phone`,
126 DROP COLUMN `passport_series`,
127 DROP COLUMN `passport_number`,
128 DROP COLUMN `passport_issue_date`,
129 DROP COLUMN `passport_issued_by`,
130 DROP COLUMN `fulfilments_delivery_country_id`
131;
132
133# выноÑим организационно-правовые формы в отдельную таблицу
134DROP TABLE IF EXISTS `suppliers_legal_forms`;
135CREATE TABLE `suppliers_legal_forms` (
136 `suppliers_legal_forms_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT
137 COMMENT 'ID организационно-правовой формы',
138 `suppliers_legal_forms_name` VARCHAR(10) NOT NULL
139 COMMENT 'Ðазвание на латинице',
140 `suppliers_legal_forms_short_title` VARCHAR(10) NOT NULL
141 COMMENT 'Сокращенное название',
142 `suppliers_legal_forms_full_title` VARCHAR(50) NOT NULL
143 COMMENT 'Полное название',
144 PRIMARY KEY (`suppliers_legal_forms_id`),
145 UNIQUE INDEX `suppliers_legal_forms_name` (`suppliers_legal_forms_name`),
146 UNIQUE INDEX `suppliers_legal_forms_short_title` (`suppliers_legal_forms_short_title`),
147 UNIQUE INDEX `suppliers_legal_forms_full_title` (`suppliers_legal_forms_full_title`)
148)
149 COMMENT = 'Организационно-Ð¿Ñ€Ð°Ð²Ð¾Ð²Ð°Ñ Ñ„Ð¾Ñ€Ð¼Ð° поÑтавщиков'
150 COLLATE = 'utf8_general_ci'
151 ENGINE = InnoDB;
152
153INSERT INTO `suppliers_legal_forms` (`suppliers_legal_forms_name`, `suppliers_legal_forms_short_title`, `suppliers_legal_forms_full_title`) VALUES
154 ('ooo', 'ООО', 'ОбщеÑтво Ñ Ð¾Ð³Ñ€Ð°Ð½Ð¸Ñ‡ÐµÐ½Ð½Ð¾Ð¹ ответÑтвенноÑтью'),
155 ('zao', 'ЗÐО', 'Закрытое акционерное общеÑтво'),
156 ('oao', 'ОÐО', 'Открытое акционерное общеÑтво'),
157 ('pao', 'ПÐО', 'Публичное акционерное общеÑтво'),
158 ('ao', 'ÐО', 'Ðкционерное общеÑтво'),
159 ('ip', 'ИП', 'Индивидуальный предприниматель'),
160 ('ano', 'ÐÐО', 'ÐÐ²Ñ‚Ð¾Ð½Ð¾Ð¼Ð½Ð°Ñ Ð½ÐµÐºÐ¾Ð¼Ð¼ÐµÑ€Ñ‡ÐµÑÐºÐ°Ñ Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ'),
161 ('nro', 'ÐРО', 'ÐекоммерчеÑÐºÐ°Ñ Ñ€ÐµÐ»Ð¸Ð³Ð¸Ð¾Ð·Ð½Ð°Ñ Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð°Ñ†Ð¸Ñ');
162
163# в поÑтавщиках заменÑем Ñтарое ENUM поле на новый ключ
164ALTER TABLE `suppliers`
165 ADD COLUMN `suppliers_legal_forms_id` INT(10) UNSIGNED NULL DEFAULT NULL
166COMMENT 'Организационно-Ð¿Ñ€Ð°Ð²Ð¾Ð²Ð°Ñ Ñ„Ð¾Ñ€Ð¼Ð°'
167 AFTER `suppliers_legal_form`,
168 ADD INDEX `suppliers_legal_forms_id` (`suppliers_legal_forms_id`);
169
170UPDATE `suppliers` AS `s`
171 JOIN `suppliers_legal_forms` AS `slf` ON `s`.`suppliers_legal_form` = `slf`.`suppliers_legal_forms_name`
172SET `s`.`suppliers_legal_forms_id` = `slf`.`suppliers_legal_forms_id`;
173
174ALTER TABLE `suppliers`
175 DROP COLUMN `suppliers_legal_form`;
176
177# в файлах заменÑем Ñтарое ENUM поле на новый ключ
178ALTER TABLE `files_types_suppliers_legal_form`
179 ADD COLUMN `suppliers_legal_forms_id` INT(10) UNSIGNED NULL DEFAULT NULL
180COMMENT 'Организационно-Ð¿Ñ€Ð°Ð²Ð¾Ð²Ð°Ñ Ñ„Ð¾Ñ€Ð¼Ð°'
181 AFTER `suppliers_legal_form`;
182
183UPDATE `files_types_suppliers_legal_form` AS `ftslf`
184 JOIN `suppliers_legal_forms` AS `slf` ON `ftslf`.`suppliers_legal_form` = `slf`.`suppliers_legal_forms_name`
185SET `ftslf`.`suppliers_legal_forms_id` = `slf`.`suppliers_legal_forms_id`;
186
187ALTER TABLE `files_types_suppliers_legal_form`
188 DROP INDEX `files_type_legal_form_idx`,
189 DROP COLUMN `suppliers_legal_form`,
190 ADD UNIQUE INDEX `files_type_legal_form_idx` (`files_types_id`, `suppliers_legal_forms_id`);
191
192# группы Ñтран
193DROP TABLE IF EXISTS `country_groups`;
194CREATE TABLE `country_groups` (
195 `country_groups_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
196 `country_groups_title` VARCHAR(50) NOT NULL,
197 PRIMARY KEY (`country_groups_id`)
198)
199 COMMENT = 'Группы Ñтран'
200 COLLATE = 'utf8_general_ci'
201 ENGINE = InnoDB;
202
203# привÑзка Ñтран к группам
204DROP TABLE IF EXISTS `country_to_groups`;
205CREATE TABLE `country_to_groups` (
206 `country_groups_id` INT(10) UNSIGNED NOT NULL,
207 `country_id` INT(11) UNSIGNED NOT NULL,
208 `is_include` TINYINT(1) UNSIGNED NOT NULL DEFAULT 1
209 COMMENT 'Должна ли группа включать или иÑключать данную Ñтрану',
210 PRIMARY KEY (`country_groups_id`, `country_id`)
211)
212 COMMENT = 'ПривÑзка Ñтраны к группе Ñтран'
213 COLLATE = 'utf8_general_ci'
214 ENGINE = InnoDB;
215
216# заполнÑем базовые (примерные) группы
217# наверное, вÑе же Ñто должна быть пÑевдо-группа Ñ Ð¾Ñ‚Ð´ÐµÐ»ÑŒÐ½Ñ‹Ð¼ и извеÑтным id.
218INSERT INTO `country_groups` (`country_groups_title`) VALUES ('Ð’Ñе Ñтраны');
219
220INSERT INTO `country_groups` (`country_groups_title`) VALUES ('РоÑÑиÑ');
221INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
222 (LAST_INSERT_ID(), 3159);
223
224INSERT INTO `country_groups` (`country_groups_title`) VALUES ('Ðе РоÑÑиÑ');
225INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`, `is_include`) VALUES
226 (LAST_INSERT_ID(), 3159, 0);
227
228INSERT INTO `country_groups` (`country_groups_title`) VALUES ('КорреÑпондентÑкий Ñчет');
229INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
230 (LAST_INSERT_ID(), 3159),
231 (LAST_INSERT_ID(), 5681),
232 (LAST_INSERT_ID(), 2374),
233 (LAST_INSERT_ID(), 2172);
234
235INSERT INTO `country_groups` (`country_groups_title`) VALUES ('IBAN (Международный Ñчет)');
236INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
237 (LAST_INSERT_ID(), 63),
238 (LAST_INSERT_ID(), 404),
239 (LAST_INSERT_ID(), 428),
240 (LAST_INSERT_ID(), 616),
241 (LAST_INSERT_ID(), 924),
242 (LAST_INSERT_ID(), 1012),
243 (LAST_INSERT_ID(), 1258),
244 (LAST_INSERT_ID(), 1366),
245 (LAST_INSERT_ID(), 1696),
246 (LAST_INSERT_ID(), 1707),
247 (LAST_INSERT_ID(), 1786),
248 (LAST_INSERT_ID(), 2297),
249 (LAST_INSERT_ID(), 2448),
250 (LAST_INSERT_ID(), 2514),
251 (LAST_INSERT_ID(), 2614),
252 (LAST_INSERT_ID(), 582043),
253 (LAST_INSERT_ID(), 1206),
254 (LAST_INSERT_ID(), 2897),
255 (LAST_INSERT_ID(), 3141),
256 (LAST_INSERT_ID(), 277555),
257 (LAST_INSERT_ID(), 5666),
258 (LAST_INSERT_ID(), 5673),
259 (LAST_INSERT_ID(), 10648),
260 (LAST_INSERT_ID(), 10668),
261 (LAST_INSERT_ID(), 277553),
262 (LAST_INSERT_ID(), 10874),
263 (LAST_INSERT_ID(), 10933),
264 (LAST_INSERT_ID(), 10968);
265
266INSERT INTO `country_groups` (`country_groups_title`) VALUES ('РоÑÑийÑкое направление');
267INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
268 (LAST_INSERT_ID(), 3159),
269 (LAST_INSERT_ID(), 1894),
270 (LAST_INSERT_ID(), 248);
271
272INSERT INTO `country_groups` (`country_groups_title`) VALUES ('Доллары');
273INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
274 (LAST_INSERT_ID(), 9705);
275
276INSERT INTO `country_groups` (`country_groups_title`) VALUES ('Евро');
277INSERT INTO `country_to_groups` (`country_groups_id`, `country_id`) VALUES
278 (LAST_INSERT_ID(), 1012);
279
280# добавлÑем Ñтраны к поÑтавщикам
281ALTER TABLE `suppliers`
282 ADD COLUMN `country_id` INT(11) UNSIGNED NULL DEFAULT NULL,
283 ADD INDEX `country_id` (`country_id`);
284
285UPDATE `suppliers`
286SET `country_id` = 3159 #РоÑÑийÑÐºÐ°Ñ Ð¤ÐµÐ´ÐµÑ€Ð°Ñ†Ð¸Ñ
287WHERE `suppliers_id` NOT IN (2885, 2886, 3166, 3401);
288
289UPDATE `suppliers`
290SET `country_id` = 2303 #КиргизÑÐºÐ°Ñ Ð ÐµÑпублика
291WHERE `suppliers_id` IN (2885);
292
293UPDATE `suppliers`
294SET `country_id` = 248 #РеÑпублика БеларуÑÑŒ
295WHERE `suppliers_id` IN (2886, 3166, 3401);
296
297# привÑзка организационно-правовых форм к группам Ñтран
298DROP TABLE IF EXISTS `suppliers_legal_forms_to_country_groups`;
299CREATE TABLE `suppliers_legal_forms_to_country_groups` (
300 `country_groups_id` INT(10) UNSIGNED NOT NULL,
301 `suppliers_legal_forms_id` INT(10) UNSIGNED NOT NULL,
302 PRIMARY KEY (`country_groups_id`, `suppliers_legal_forms_id`)
303)
304 COMMENT = 'ПривÑзка организационно-правовых форм к группе Ñтран'
305 COLLATE = 'utf8_general_ci'
306 ENGINE = InnoDB;
307
308INSERT INTO `suppliers_legal_forms_to_country_groups` (`country_groups_id`, `suppliers_legal_forms_id`) VALUES
309 (2, 1),
310 (2, 2),
311 (2, 3),
312 (2, 4),
313 (2, 5),
314 (2, 6),
315 (3, 7),
316 (3, 8);
317
318# таблица правил Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÐµÐ¹ в завиÑимоÑти от группы Ñтран и организационно-правовой формы
319DROP TABLE IF EXISTS `suppliers_forms_settings`;
320CREATE TABLE `suppliers_forms_settings` (
321 `suppliers_forms_settings_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
322 `country_groups_id` INT(10) UNSIGNED NOT NULL,
323 `suppliers_legal_forms_id` INT(10) UNSIGNED NULL,
324 `suppliers_forms_settings_key` VARCHAR(50) NOT NULL
325 COMMENT 'Ключ Ð´Ð»Ñ Ð¿Ð¾Ð¸Ñка Ð¿Ð¾Ð»Ñ - Ð˜Ð¼Ñ Ñ„Ð¾Ñ€Ð¼Ñ‹//Ð˜Ð¼Ñ Ð¿Ð¾Ð»Ñ',
326 `suppliers_forms_settings_visible` TINYINT(1) UNSIGNED NOT NULL DEFAULT 1
327 COMMENT 'Видимо Ñто поле или нет',
328 `suppliers_forms_settings_required` TINYINT(1) UNSIGNED NOT NULL DEFAULT 1
329 COMMENT 'ОбÑзательно Ñто поле или нет',
330 `suppliers_forms_settings_maxlength` INT(10) UNSIGNED NULL DEFAULT NULL
331 COMMENT 'МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° полÑ',
332 `suppliers_forms_settings_class` VARCHAR(50) NULL DEFAULT NULL
333 COMMENT 'КлаÑÑ (или клаÑÑÑ‹ через пробел) Ñлемента',
334 PRIMARY KEY (`suppliers_forms_settings_id`)
335)
336 COMMENT = 'ÐаÑтройки видимоÑти Ð´Ð»Ñ Ñ„Ð¾Ñ€Ð¼ региÑтрации/Ð·Ð°ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ Ð´Ð¾Ð³Ð¾Ð²Ð¾Ñ€Ð° поÑтавшика'
337 COLLATE = 'utf8_general_ci'
338 ENGINE = InnoDB;
339
340INSERT INTO `suppliers_forms_settings` (`country_groups_id`, `suppliers_legal_forms_id`, `suppliers_forms_settings_key`, `suppliers_forms_settings_visible`, `suppliers_forms_settings_required`) VALUES
341 (2, 1, 'legal//full_legal_name', 1, 1),
342 (2, 2, 'legal//full_legal_name', 1, 1),
343 (2, 3, 'legal//full_legal_name', 1, 1),
344 (2, 4, 'legal//full_legal_name', 1, 1),
345 (2, 5, 'legal//full_legal_name', 1, 1),
346 (3, NULL, 'legal//full_legal_name', 1, 1),
347 (2, 1, 'legal//short_legal_name', 1, 1),
348 (2, 2, 'legal//short_legal_name', 1, 1),
349 (2, 3, 'legal//short_legal_name', 1, 1),
350 (2, 4, 'legal//short_legal_name', 1, 1),
351 (2, 5, 'legal//short_legal_name', 1, 1),
352 (3, NULL, 'legal//short_legal_name', 1, 0),
353 (2, 6, 'ip//lastname', 1, 1),
354 (2, 6, 'ip//firstname', 1, 1),
355 (2, 6, 'ip//middlename', 1, 0),
356 (2, 6, 'ip//lastname_has_genitive', 1, 0),
357 (2, 6, 'ip//firstname_has_genitive', 1, 0),
358 (2, 6, 'ip//middlename_has_genitive', 1, 0),
359 (2, 6, 'ip//lastname_genitive', 1, 0),
360 (2, 6, 'ip//firstname_genitive', 1, 0),
361 (2, 6, 'ip//middlename_genitive', 1, 0),
362 (1, NULL, 'additional//city', 1, 1),
363 (1, NULL, 'additional//website', 1, 0),
364 (1, NULL, 'additional//website_archive', 1, 0),
365 (2, NULL, 'additional//INN', 1, 1),
366 (2, 1, 'additional//OGRN', 1, 1),
367 (2, 2, 'additional//OGRN', 1, 1),
368 (2, 3, 'additional//OGRN', 1, 1),
369 (2, 4, 'additional//OGRN', 1, 1),
370 (2, 5, 'additional//OGRN', 1, 1),
371 (2, 6, 'additional//OGRN', 1, 1),
372 (2, NULL, 'additional//OKATO', 1, 0),
373 (2, NULL, 'additional//OKFS', 1, 0),
374 (2, 1, 'additional//KPP', 1, 1),
375 (2, 2, 'additional//KPP', 1, 1),
376 (2, 3, 'additional//KPP', 1, 1),
377 (2, 4, 'additional//KPP', 1, 1),
378 (2, 5, 'additional//KPP', 1, 1),
379 (2, NULL, 'additional//OKPO', 1, 1),
380 (2, NULL, 'additional//OKVED', 1, 0),
381 (2, NULL, 'additional//OKOPF', 1, 0),
382 (2, NULL, 'additional//tax_form', 1, 1),
383 (1, NULL, 'additional//suppliers_source', 1, 1),
384 (2, 1, 'chief//chief_title', 1, 1),
385 (2, 2, 'chief//chief_title', 1, 1),
386 (2, 3, 'chief//chief_title', 1, 1),
387 (2, 4, 'chief//chief_title', 1, 1),
388 (2, 5, 'chief//chief_title', 1, 1),
389 (2, 1, 'chief//chief_lastname', 1, 1),
390 (2, 2, 'chief//chief_lastname', 1, 1),
391 (2, 3, 'chief//chief_lastname', 1, 1),
392 (2, 4, 'chief//chief_lastname', 1, 1),
393 (2, 5, 'chief//chief_lastname', 1, 1),
394 (2, 1, 'chief//chief_lastname_has_genitive', 1, 0),
395 (2, 2, 'chief//chief_lastname_has_genitive', 1, 0),
396 (2, 3, 'chief//chief_lastname_has_genitive', 1, 0),
397 (2, 4, 'chief//chief_lastname_has_genitive', 1, 0),
398 (2, 5, 'chief//chief_lastname_has_genitive', 1, 0),
399 (2, 1, 'chief//chief_lastname_genitive', 1, 0),
400 (2, 2, 'chief//chief_lastname_genitive', 1, 0),
401 (2, 3, 'chief//chief_lastname_genitive', 1, 0),
402 (2, 4, 'chief//chief_lastname_genitive', 1, 0),
403 (2, 5, 'chief//chief_lastname_genitive', 1, 0),
404 (2, 1, 'chief//chief_firstname', 1, 1),
405 (2, 2, 'chief//chief_firstname', 1, 1),
406 (2, 3, 'chief//chief_firstname', 1, 1),
407 (2, 4, 'chief//chief_firstname', 1, 1),
408 (2, 5, 'chief//chief_firstname', 1, 1),
409 (2, 1, 'chief//chief_firstname_has_genitive', 1, 0),
410 (2, 2, 'chief//chief_firstname_has_genitive', 1, 0),
411 (2, 3, 'chief//chief_firstname_has_genitive', 1, 0),
412 (2, 4, 'chief//chief_firstname_has_genitive', 1, 0),
413 (2, 5, 'chief//chief_firstname_has_genitive', 1, 0),
414 (2, 1, 'chief//chief_firstname_genitive', 1, 0),
415 (2, 2, 'chief//chief_firstname_genitive', 1, 0),
416 (2, 3, 'chief//chief_firstname_genitive', 1, 0),
417 (2, 4, 'chief//chief_firstname_genitive', 1, 0),
418 (2, 5, 'chief//chief_firstname_genitive', 1, 0),
419 (2, 1, 'chief//chief_middlename', 1, 0),
420 (2, 2, 'chief//chief_middlename', 1, 0),
421 (2, 3, 'chief//chief_middlename', 1, 0),
422 (2, 4, 'chief//chief_middlename', 1, 0),
423 (2, 5, 'chief//chief_middlename', 1, 0),
424 (2, 1, 'chief//chief_middlename_has_genitive', 1, 0),
425 (2, 2, 'chief//chief_middlename_has_genitive', 1, 0),
426 (2, 3, 'chief//chief_middlename_has_genitive', 1, 0),
427 (2, 4, 'chief//chief_middlename_has_genitive', 1, 0),
428 (2, 5, 'chief//chief_middlename_has_genitive', 1, 0),
429 (2, 1, 'chief//chief_middlename_genitive', 1, 0),
430 (2, 2, 'chief//chief_middlename_genitive', 1, 0),
431 (2, 3, 'chief//chief_middlename_genitive', 1, 0),
432 (2, 4, 'chief//chief_middlename_genitive', 1, 0),
433 (2, 5, 'chief//chief_middlename_genitive', 1, 0),
434 (3, NULL, 'gs//suppliers_vat_number', 1, 1),
435 (3, NULL, 'gs//suppliers_registration_number', 1, 1),
436 (3, NULL, 'gs//suppliers_eori_number', 1, 0),
437 (1, NULL, 'addresses//contractors_addresses_types_id', 1, 1),
438 (1, NULL, 'addresses//contractors_addresses_primary', 1, 1),
439 (2, NULL, 'addresses//contractors_addresses_index', 1, 1),
440 (3, NULL, 'addresses//contractors_addresses_index', 1, 1),
441 (1, NULL, 'addresses//fias_id', 1, 1),
442 (2, NULL, 'addresses//contractors_addresses_street', 1, 0),
443 (2, NULL, 'addresses//contractors_addresses_house', 1, 0),
444 (2, NULL, 'addresses//contractors_addresses_structure', 1, 0),
445 (2, NULL, 'addresses//contractors_addresses_building', 1, 0),
446 (2, NULL, 'addresses//contractors_addresses_construction', 1, 0),
447 (2, NULL, 'addresses//contractors_addresses_flat', 1, 0),
448 (2, NULL, 'addresses//contractors_addresses_office', 1, 0),
449 (2, NULL, 'addresses//contractors_addresses_place', 1, 0),
450 (1, NULL, 'addresses//country_id', 1, 1),
451 (3, NULL, 'addresses//contractors_addresses_address', 1, 1),
452 (1, NULL, 'details//contractors_details_bank_name', 1, 1),
453 (2, NULL, 'details//contractors_details_bank_account', 1, 1),
454 (3, NULL, 'details//contractors_details_bank_account', 1, 0),
455 (4, NULL, 'details//contractors_details_correspondent_account', 1, 1),
456 (2, NULL, 'details//contractors_details_correspondent_account', 1, 1),
457 (2, NULL, 'details//contractors_details_bik', 1, 1),
458 (3, NULL, 'details//contractors_details_swift', 1, 1),
459 (3, NULL, 'details//contractors_details_iban', 1, 0),
460 (5, NULL, 'details//contractors_details_iban', 1, 1);
461
462# добавлÑем к поÑтавщикам недоÑтающие полÑ
463ALTER TABLE `suppliers`
464 ADD COLUMN `suppliers_vat_number` VARCHAR(20) NOT NULL DEFAULT '',
465 ADD COLUMN `suppliers_registration_number` VARCHAR(20) NOT NULL DEFAULT '',
466 ADD COLUMN `suppliers_eori_number` VARCHAR(20) NOT NULL DEFAULT '';
467
468# добавлÑем к адреÑам недоÑтающие полÑ
469ALTER TABLE `contractors_addresses`
470 ADD COLUMN `country_id` INT(11) UNSIGNED NULL DEFAULT NULL,
471 ADD COLUMN `contractors_addresses_address` VARCHAR(255) NULL,
472 ADD INDEX `country_id` (`country_id`);
473
474# добавлÑем новые должноÑти
475INSERT INTO `suppliers_contact_persons_type` (`name`, `title`, `suppliers_contact_persons_type_status`, `entities_types_id`, `suppliers_contact_persons_type_callable`, `suppliers_contact_persons_type_chief`, `suppliers_contact_persons_type_validating`)
476VALUES
477 ('dir_gs', 'Director', 9, NULL, 0, 1, 0),
478 ('ceo', 'CEO', 9, NULL, 0, 1, 0),
479 ('gen_dir_gs', 'General Director', 9, NULL, 0, 1, 0),
480 ('fin_dir', 'Finance Director', 9, NULL, 0, 0, 0),
481 ('accountant', 'Accountant', 9, NULL, 0, 0, 0),
482 ('manager', 'Manager', 9, NULL, 0, 0, 0),
483 ('employee', 'Employee', 9, NULL, 0, 0, 0);
484
485# привÑзка должноÑтей к группам Ñтран
486DROP TABLE IF EXISTS `suppliers_contact_persons_type_to_country_groups`;
487CREATE TABLE `suppliers_contact_persons_type_to_country_groups` (
488 `country_groups_id` INT(10) UNSIGNED NOT NULL,
489 `suppliers_contact_persons_type_id` INT(10) UNSIGNED NOT NULL,
490 PRIMARY KEY (`country_groups_id`, `suppliers_contact_persons_type_id`)
491)
492 COMMENT = 'ПривÑзка должноÑтей к группе Ñтран'
493 COLLATE = 'utf8_general_ci'
494 ENGINE = InnoDB;
495
496INSERT INTO `suppliers_contact_persons_type_to_country_groups` (`country_groups_id`, `suppliers_contact_persons_type_id`) VALUES
497 (2, 1),
498 (2, 2),
499 (2, 3),
500 (2, 4),
501 (2, 5),
502 (2, 7),
503 (3, 8),
504 (3, 9),
505 (3, 10),
506 (3, 11),
507 (3, 12),
508 (3, 13),
509 (3, 14);
510
511# добавлÑем к реквизитам банка недоÑтающие полÑ
512ALTER TABLE `contractors_details`
513 ADD COLUMN `contractors_details_swift` VARCHAR(11) NOT NULL DEFAULT '',
514 ADD COLUMN `contractors_details_iban` VARCHAR(34) NOT NULL DEFAULT '';
515
516# добавлÑем новый "Тип" к договорам
517INSERT INTO `entities_types` (`entities_id`, `entities_types_title`, `entities_types_name`) VALUES (40, 'Global Sale', 'gs');
518
519# редактируем оÑновные документы
520INSERT INTO `files_types` (`component`, `files_types_name`) VALUES ('supplier', 'Registration document');
521SET @registration_document_files_types_id = LAST_INSERT_ID();
522INSERT INTO `files_types_suppliers_legal_form` (`files_types_id`, `suppliers_legal_forms_id`, `tax_form`, `is_necessary`) VALUES
523 (@registration_document_files_types_id, NULL, '', 'Y');
524
525INSERT INTO `files_types` (`component`, `files_types_name`) VALUES ('supplier', 'Другие документы');
526SET @other_document_files_types_id = LAST_INSERT_ID();
527INSERT INTO `files_types_suppliers_legal_form` (`files_types_id`, `suppliers_legal_forms_id`, `tax_form`, `is_necessary`) VALUES
528 (@other_document_files_types_id, NULL, '', 'N');
529
530ALTER TABLE `files_types_suppliers_legal_form`
531 ADD COLUMN `country_groups_id` INT(10) UNSIGNED NULL;
532
533UPDATE `files_types_suppliers_legal_form`
534SET `country_groups_id` = 2
535WHERE `files_types_id` NOT IN (@registration_document_files_types_id, @other_document_files_types_id);
536
537UPDATE `files_types_suppliers_legal_form`
538SET `country_groups_id` = 1
539WHERE `files_types_id` IN (@other_document_files_types_id);
540
541UPDATE `files_types_suppliers_legal_form`
542SET `country_groups_id` = 3
543WHERE `files_types_id` IN (@registration_document_files_types_id);
544
545INSERT INTO `files_types_suppliers_legal_form` (`files_types_id`, `suppliers_legal_forms_id`, `tax_form`, `is_necessary`, `country_groups_id`) VALUES
546 (12, NULL, '', 'Y', 3),
547 (29, NULL, '', 'Y', 3),
548 (30, NULL, '', 'Y', 3),
549 (31, NULL, '', 'N', 3),
550 (32, NULL, '', 'N', 3),
551 (33, NULL, '', 'N', 3);
552
553# Ñоздаем роль Ð´Ð»Ñ Ñ€ÑƒÐºÐ¾Ð²Ð¾Ð´Ð¸Ñ‚ÐµÐ»Ñ Ð—Ð°Ñ€ÑƒÐ±ÐµÐ¶Ð½Ð¾Ð³Ð¾ направлениÑ
554INSERT INTO `acl_roles` (`acl_locations_id`, `acl_roles_title_en`, `acl_roles_title_ru`) VALUES (1, 'headManagerGlobalSale', 'Старший менеджер Global Sale');
555SET @roles_id = LAST_INSERT_ID();
556# наÑледуем ее от "менеджер Global Sale" и от "Ñтарший бренд-менеджер"
557INSERT INTO `acl_roles_extends` (`module`, `acl_roles_id`, `parent_acl_roles_id`) VALUES
558 ('partner', @roles_id, 27),
559 ('call', @roles_id, 27),
560 ('catalog', @roles_id, 27),
561 ('supplier', @roles_id, 27),
562 ('partner', @roles_id, 94),
563 ('call', @roles_id, 94),
564 ('catalog', @roles_id, 94),
565 ('supplier', @roles_id, 94);
566# и заÑовываем в "Продажи"
567INSERT INTO `acl_roles_to_groups` (`acl_roles_groups_id`, `acl_roles_id`) VALUES ('6', @roles_id);
568
569# раÑпределÑем людей по ролÑм
570UPDATE `acl`
571SET `acl_roles_id` = @roles_id
572WHERE `customers_id` = 4517317; # Елена КраÑникова
573
574UPDATE `acl`
575SET `acl_roles_id` = 94
576WHERE `customers_id` IN (5162664, 4517308, 5902484); # Сидорова Ðнна, Уланова Ольга, ÐœÐ°Ñ€Ð¸Ñ ÐšÐ°Ð½ÐµÐ²ÑкаÑ
577
578# Ñоздаем таблицу-ÑпиÑок валют
579DROP TABLE IF EXISTS `currencies`;
580CREATE TABLE `currencies` (
581 `currencies_id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
582 `currencies_title` VARCHAR(20) NOT NULL,
583 PRIMARY KEY (`currencies_id`)
584)
585 COMMENT = 'СпиÑок валют'
586 COLLATE = 'utf8_general_ci'
587 ENGINE = InnoDB;
588INSERT INTO `currencies` (`currencies_title`) VALUES
589 ('рубль'),
590 ('тенге'),
591 ('белоруÑÑкий рубль'),
592 ('евро'),
593 ('доллар СШÐ');
594
595# добавлÑем поле валюты у поÑтавщика и по-умолчанию проÑтавлÑем рубли
596ALTER TABLE `suppliers`
597 ADD COLUMN `currencies_id` INT(10) UNSIGNED NOT NULL DEFAULT 1
598COMMENT 'Валюта поÑтавщика'
599 AFTER `fulfilments_id`,
600 ADD INDEX `currencies_id` (`currencies_id`);
601
602INSERT `acl_rules` (`module`, `controller`, `action`, `acl_rules_fake`) VALUES
603 ('partner', 'supplier-cabinet', 'set-currency', 'N');
604INSERT `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`) VALUES
605 (16, LAST_INSERT_ID(), 'ALLOW', '');
606
607INSERT `acl_rules` (`module`, `controller`, `action`, `acl_rules_fake`) VALUES
608 ('partner', 'supplier-cabinet', 'set-fulfilment', 'N');
609INSERT `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`) VALUES
610 (16, LAST_INSERT_ID(), 'ALLOW', '');
611
612INSERT `acl_rules` (`module`, `controller`, `action`, `acl_rules_fake`) VALUES
613 ('partner', 'supplier-registration', 'add-new-opf', 'N');
614SET @acl_rules_id = LAST_INSERT_ID();
615INSERT `acl_settings` (`acl_roles_id`, `acl_rules_id`, `access_type`, `assert`) VALUES
616 (16, @acl_rules_id, 'ALLOW', ''),
617 (35, @acl_rules_id, 'ALLOW', '');
618
619# доводим поле индекÑа до ума
620ALTER TABLE `contractors_addresses`
621 CHANGE COLUMN `contractors_addresses_index` `contractors_addresses_index` VARCHAR(50) NOT NULL;
622
623UPDATE `suppliers_forms_settings`
624SET `suppliers_forms_settings_maxlength` = 6, `suppliers_forms_settings_class` = 'only_number'
625WHERE `suppliers_forms_settings_id` = 99;
626
627UPDATE `suppliers_forms_settings`
628SET `suppliers_forms_settings_maxlength` = 50
629WHERE `suppliers_forms_settings_id` = 100;
630
631# убираем маÑки Ñ Ñ€Ð°Ñчетного и корреÑпондентÑкого Ñчетов
632UPDATE `suppliers_forms_settings`
633SET `suppliers_forms_settings_class` = 'validate'
634WHERE `suppliers_forms_settings_id` = 113;
635
636UPDATE `suppliers_forms_settings`
637SET `suppliers_forms_settings_class` = 'validate'
638WHERE `suppliers_forms_settings_id` = 116;
639
640INSERT INTO `status_maps_accepts_structures_to_acl_roles` (`status_maps_accepts_structures_id`, `acl_roles_id`) VALUES (1, 94);
641INSERT INTO `status_maps_accepts_structures_to_acl_roles` (`status_maps_accepts_structures_id`, `acl_roles_id`) VALUES (1, 102);