Jump to content
Sign in to follow this  
unkind

[Исполнитель найден] Полная переделка логики поиска с нестандартной БД.

Recommended Posts

Добрый день!

Необходимо полностью переделать логику поиска. Задание, мягко говоря, не стандартное. Алгоритм работы поиска (как я его вижу) изложен в файле. Я думаю его можно считать ТЗ. Если у исполнителя есть идеи по оптимизации/улучшению, то это только приветствуется и обсуждается.

Поиск в несколько этапов и с условиями.

 

Таблицы, участвующие в поиске добавлены в БД.

После всех этапов и условий конечная выборка делается по одному столбцу в таблице Product.

Таблица Product и модели GetProduct изменены. Сейчас все работает, но со стандартной логикой поиска.

 

Интересуют сроки и цены.

В силу того, что задание не стандартное и многое уже переписано и переделано, цену можете указывать примерную +-10-15% думаю допустимый разбег.

 

Ссылка на файл. Сюда, почему-то, не удается прикрепить.

 

https://yadi.sk/i/LWeg7iJ3eKTcK

Share this post


Link to post
Share on other sites

Проектирование начинают с описания сущностей и связей. Потом эти сущности реализуют в схеме БД. А потом пишут SQL-запросы.

У вас в файле одни только SQL-запросы. Вы пытаетесь описывать задачу с конца.

 

Я не знаю вашу предметную область, не знаю, какая у вас схема БД. Вы предлагаете заниматься реверс-энжинирингом? По SQL-запросам догадайся до структуры БД и предметной области?

Share this post


Link to post
Share on other sites

я так понял ТС не просит проектировать базу. все запросы и логику он написал, не знаю почему он этого сам не сделает. по мне так всё работу он выполнил, остался технический момент - закодить

Share this post


Link to post
Share on other sites

1.

<select onchange="функция заполнения 2-го селекта

2. <select onchange="функция заполнения 3-го слекта

и т.д.

3

4.

5

6 Поиск

Share this post


Link to post
Share on other sites

Друзья. Попробую ответить сразу всем. :)

 

Предметная область - кроссировка запчастей. Если кто-нибудь сам заказывал себе запчасти в ИМ, то думаю понимает.

Если коротко, то суть такова: Каждая запчасть имеет аналоги у разных производтелей, а также может иметь разные коды внутри одного производителя. (причины не спрашивайте, их много и это целая лекция получится :) )

 

Бывают случаи когда у разных производителей разные детали имеют одинаковый код (что бы избежать ошибок в выдаче в базе есть привязка к производителю). Для примера на общеизвестном экзисте введите код 9761037000.

 

Необходимо, что бы поиск выдавал все имеющиеся в базе аналоги (как с разным кодом, так и от разных производителей). Для этого создается база связей кодов деталей, точнее три таблицы:

1.Аналоги оригинальных номеров между собой

2.Оригинальный номер определенного производителя и аналог неоригинальные

3.Неоригинальный номер определенного производителя и  соответствующий код по оригинальному.

 

Таблица 3 дана для того, чтобы можно было узнать нужный оригинальный код(он является лучшей "точкой отсчета") в случае когда клиент вводит в поиск неоригинальный код.

 

Структура базы есть, алгоритм есть. Но моих знаний php хватает только для чтения и примерного понимания уже готового кода, и небольших правок "по аналогии". Сам написать код я не могу(не знаю синтаксис и все тонкости...), к сожалению .

 

Структура таблиц, задействованных в алгоритме, изложена в файле. 

 

Еще хотел уточнить:

Те кто ознакомился с задание, какие вопросы остались, что уточнить?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
You are posting as a guest. If you have an account, please sign in.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

×

Important Information

On our site, cookies are used and personal data is processed to improve the user interface. To find out what and what personal data we are processing, please go to the link. If you click "I agree," it means that you understand and accept all the conditions specified in this Privacy Notice.