Скрипт php для корректировки цен в БД и-магазина
Требуется скрипт для движка интерент магазина на базе vamshop для корректировки текущих цен в БД в зависимости от изменений цен поставщика. В магазине есть импорт и экспорт в вот думаю на основе того модуля и можно сделать. Примерное ТЗ ниже. Прошу предложения по исполнению, сроки и Вашу цену за работу.
Есть БД (стандартная vamshop) название БД , например, vam35.
Что должен сделать скрипт:
1.Спросить имя БД, пользователя,пароль, и коэффициент наценки (k_nac):
2. Подготовить файл CSV новых товаров (пусть будет называться new_prodacts.csv)
3Цикл до окончания записей в файле .xls
4. Взять Значение цены из столбца «NO», соответствующее очередному артикулу из столбца «Артикул» , умножить его на коэффициент наценки;
5. Найти соответствующую запись в БД по артикулу (в БД он называется код товара) и записать новое значение цены из (NO) x (k_nac)
Если нет такого артикула в БД, перейти к п. 6,
Иначе – перейти к п.4
6. Внести запись в файл CSV для обновления БД магазина структура которого соответствует требованиям Vamshop. Из файла price_new.xls беруться значения для v_products_model из столбца «Артикул», для v_products_name_1 из столбца «Наименование товара», для v_products_price присваивается значение из столбца (NO)x(k_nac).
v_products_quantity_min =1; v_products_quantity_max = 1000; v_products_quantity = 100000; v_date_added = текущая дата; v_categories_name_1_1 = Новые; v_tax_class_title = --нет-- ; v_status = Active (а м.б. не активными? )
7. Сверить в цикле текущую БД с текущим прайс листом по артикулам, т. е. если в БД и прайс листе присутствует позиция, то ей должен быть присвоен статус Activ . Если в БД присутствует Артикул, а в прайс листе его нет, то присвоить в БД статус "Не активный"
Результатом работы скрипта является:
- обновление БД по ценам и из текущего прайса;
- обновление БД по отсутствующим позициям в текущем прайсе (т.е. если в прайсе не оказалось той или иной позиции, то они должны быть отключены в БД (но не удалены);
- обновление БД по вновь появившимся и и меющимся позициям в БД, такие позиции должны поиметь статус Activ.
- Файл CSV с отсутствующими позициями в БД из текущего прайса (а может быть не файл, а сразу новые позиции в БД в раздел «Новые», но их делать не активными?)