Jul 01, 2011 01:13
Сегодня мы запустили нашу систему автоматизации. Пока не без шероховатостей, но она работает. (На этом месте мне полагается чувствовать гордость как трушному айтишнику). Системка совсем небольшая, отвечает за импорт всех цен от поставщиков, выбор минимальной из предложенных и через модуль ценообразования обновление всех цен в интернет-магазине. Но, поверьте, это было непросто (можно ведь даже опытом поделиться, на хабр написать :))).
Сложности начинались уже с того, что процесс был никак не организован и мы не понимали, что собственно от нас требуется. Сначала была украинская программа E-Trade PriceList Importer с поисковой системой, где нужно было настраивать импорт прайсов (их около 60 с абсолютно разной структурой) и сопоставлять товары с сайта с найденными из прайсов, разбираясь с номенклатурными тонкостями того или иного производителя. Иногда программа вела себя необъяснимо, уподобляясь черному ящику: так, некоторые операции, описанные в руководстве программы, происходили с точностью до наоборот, да и сам мануал не способствовал пониманию "темных сторон". Правда, надо отдать должное техподдержке, на вопросы реагировали быстро и часто обновляли программу, прислушиваясь к нашим запросам. Другой черной дырой был программист, который отвечал за серверную часть: в одном месте ремонтирует, в другом ломается. И общались мы с ним через "испорченный телефон", пока ей не надоело, и она возложила "почетную обязанность по дрессировке" на нас. И только тут выяснилось, что никакого общего алгоритма работы просто нет, что разные виды товара и их цен, всевозможные галочки, статусы наличия и отображения практически на учитываются. Мы продумывали всевозможные ситуации наложения, нюансы ценообразования, приоритеты поставщиков и прочие мелочи, раскладывая все по полочкам и даже рисуя в голове блок-схемы, при этом пытаясь подстроиться под существующие ограничения. Лавируя таким образом, создавали цепочку процедур из условий и циклов: из программы выгружается csv с закупочными ценами, загружается на сервер, при импорте цены попадают в
модуль ценообразования, в зависимости от поставщика (4 вида поставщиков создают 4 сценария) товары приобретают нужный статус наличия, соответствующие галочки и цены. И что-то более-менее стройное получилось, и это что-то даже сегодня заработало. Надеюсь, завтра оно также будет работать :)
(Да, и отдельная радость мне. Сомнительная, правда, местами. Появился у нас жучок-паучок, который собирает характеристики товаров и рассовывает их по не всегда нужным, но все же, полям. А я его "контролирую", а вернее, подчищаю, чего он там натворил. Фильтры по выбору товаров летят напрочь! Плюс картинки не соответствуют. Кстати, никто не знает, как средствами php обрезать картинки? модуль "тот самый" у нас не покатит).
Очень познавательный опыт и еще одна it-строчка в моем резюме :)
PS: А "мы", это не "мы, наше величество", нас, внедренцев-любителей, было двое и мы удивительно друг друга дополняли. Марина с ее дотошностью, вниманием к деталям и похожим опытом и я, такая вся увлеченная технологиями, схватывающая суть налету и со всеми общающаяся. Наша маленькая команда помогла мне понять, что системщиком, разрывающимся между двух огней (требованиями заказчика и возможностями программиста), быть очень непросто. Она же показала мои и сильные стороны, и слабые. Думаю, я готова. Яндекс и прочее айтишное, я иду к вам!
it