Задачу реализовать на yii2, умение работать с гитом обязательно. Уровень подготовки не ниже мидла. Дедлайн три дня. Есть еще много интересных задачек.В админке Надо вывести таблицу “article_cross” (вес около 6 гиг: http://prntscr.com/mk7jiy ) на новой странице в админке, путь к которой вывести в главном меню сюда: http://prntscr.com/mj7jdw “Загрузить кроссы”, сама страница должна иметь примерно такой формат: http://prntscr.com/mk5ogi1) В таблице “article_cross” в столбцах OENbr и PartsDataSupplierArticleNumber => надо по удалять все лишние символы, такие как пробел, дефис, тире, нижнее подчеркивание,скобки, точки, запятые, лапки одинарные и двойные и другие символы, которые вы знаете
2) В таблице “article_cross” удалить все одинаковые строки
3) Отобразить таблицу артикулов (число строк на одной странице: 200 шт.), с такими столбцами:
а) № => номер строки по-порядку
б) ID manuf. => manufacturerId
в) Производитель OEM => достаем записи от сюда: manufacturers.descriptions через manufacturerId
г) Код ОЕМ => OENbr
д) ID supl. => SupplierId
е) Производитель Запчасти => suppliers.description через SupplierId
ж) VendorCode => PartsDataSupplierArticleNumber
4) Добавить сверху поле выбора файла: И кнопку “загрузить XLS” => при загрузке файла, исходный формат такой: http://prntscr.com/mk6bxd
а) SupplierName => "производитель запчасти"
б) PartsDataSupplierArticleNumber
в) ManufacturerName => "производитель OEM"
г) OENbr
* В столбцах №1 и №3 указаны названия производителей запчастей => то-есть скрипт ищет название через suppliers.descripion потом узнает suppliers.id и уже подставляет в article_cross.suppliersid. Также допустим формат, когда в столбцах "производитель запчасти" и "производитель OEM" указываются цифры: http://prntscr.com/mk74z3 , тогда скрипт напрямую ищет в столбцах article_cross. supplierid И article_cross.manufacturedid
5) алгоритм загрузки документа => по очереди скрипт загружает все строки:
а) с исходной строки удаляется доп. символы со столбцов №2 и №4
б) сравнивает есть ли такая строка в таблице article_cross
в) если строка найдена пропускает, если нет, то добавляет
г) в конце обработки прога должна отдавать экселевский или текстовый файл в котором напротив строки через TAB указать статус!
Варианты статусов: OK, запись уже есть, производитель запчасти не найден, производитель OEM не найден !
6) Нужно реализовать форму ручного добавления артикулов: http://prntscr.com/mk7734 => скрипт тоже должен проверять есть ли такая запись или нету => производителя запчастей и производителя оригинала выбираем с помощью выпадающего списка
7) также должна быть форма редактирования записей: http://prntscr.com/mk76vf => скрипт тоже должен проверять есть ли такая запись или нету
8) поиск записей сверху таблицы: http://prntscr.com/mk77ks
Пишите в личку