PHP + MySQL база

Web/сайты Прочее

Был(а) онлайн: 09.12.18 17:23
Umen 24 года

1.0 Был(а) онлайн: 09.12.18 17:23

Недавно
Надо сделать базу данных, php+MySQL

При желании, победителю конкурса будет дан Access-прообраз заказанной базы (приблизительный, без деления Контрагентов по планам). Скриншот прикреплен.

Существует php+MySQL база "Задания исполнителям". Желанно исполнить работу в виде дополнения к присутствующей базе. Из присутствующей базы следует взять систему доступа к планам и редактирование справочников. Выполнение задачи в виде дополения к присутствующей php+MySQL базе - под вопросом, будет обсуждаться.

Если хотите делать план с нуля, с применением framework'ов, просьба указать фрэймворк.

По бюджету - не дюже представляю, сколько это тут может стоить. Бюджет указан $250, но чем поменьше сумма тем класснее :).
================================================
Конструкция данных:

[Контрагент]:
КомпанияID
СотрID (наш работник, отвечающий за фирму)
ВедущийСотруID (наш руководитель, отвечающий за фирму)
*Название
Вид_деятельности_ID (справочник)
Источник_информации_ID (справочник)
Адреса, телефоны
www, email
Станция_метро_ID (справочник)
Примечания
Дата_перезвонить (обновляется на основании данных их таблицы [Контакты])
Была_презентация (логичный)
Делают_заказ (логичный)
Не_заинтересованы (логичный)
Начальник_должен_обратить_внимание (логичный)

[Наши_сотрудники]:
СотрID
*login
*ФИО

[Контакты]:
КомпанияID
КонтактID
*Дата (дата+время)
*C кем (текст, при вводе вероятность предпочесть из списка сотр. орг., либо набрать ФИО на клавиатуре)
*Наш_сотрудникID
Дата_перезвонить (дата+время, может быть не заполнена)
*Содержание_разговора
Примечания

[Контрагента_сотрудники]:
КомпанияID
КСотрID
*ФИО
Должность
Телефоны
email
Явл_основным_контактом (логичный)

Во всех таблицах обязаны быть поля:
Созд_Login
Созд_Время
Посл_изм_Login
Посл_изм_время
Эти поля обязаны заполняться механически.

Для всякого контрагента есть поле [Дата перезвонить], она вычисляется механически. Берется самый конечный контакт с данным контрагентом max ([Контакты].[КонтактID]) Where [КомпанияID]=***, и берется [Дата_перезвонить] из этого контакта.

Существуют таблицы [История_Контрагентов] и [История_Контрагента_сотрудники]. При удалении либо изменении записи в таблице [Контрагент]/[Контрагента_сотрудники] в таблицу [История_***] помещается предыдущая версия записи.

================================================
Пользователь
1. Ставит фильтр на те фирмы которые ему необходимы. Варианты фильтрации:
1.1 [Дата_перезвонить] >=
1.2 [Дата_перезвонить] <=
1.3 Не было звонков (контактов)
1.4 [Вид_деятельности_ID] (вероятность предпочесть несколько видов деятельности)
1.5 [Источник_информации_ID]
1.6 [Не_заинтересованы] = Да/Нет/Все
1.7 [Делают_заказ] = Да/Нет/Все
1.8 [Была_презентация] = Да/Нет/Все
1.9 [СотрID]
1.10 [ВедущийСотруID]
1.11 [Начальник_должен_обратить_внимание] = Да/Нет/Все

2. Выбирает фирму из списка отфильтрованных, просматривает и редактирует данные об этой фирме.
3. Либо Админ может экспортировать список отфильтрованных фирм в Excel.

Группы доступа:
Админ - может все
Локальный пользователь - Может добавлять записи в таблицу [Контакты], может добавлять/удалять/редактировать данные в таблицах [Контрагент] и [Контрагента_сотрудники]. ! При этом имеет доступ только к фирмам, где указан в качестве ответственного ([СотрID]). Позже установки флажка [Делают_заказ] теряет доступ удалять/редактировать к таблицам [Контрагент] и [Контрагента_сотрудники], за исключением доступа к галочке [Начальник_должен_обратить_внимание].

При редактировании данных о фирме, для ввода нового контакта, либо нового работника фирмы, пользователь не должен загружать страницу снова. Т.е. желанно переключать видимость форм ввода новой информации при нажатии на соотв. кнопку на странице просмотра/редактирования инф. о фирме.

Есть еще "отчет по звонкам" - ставится фильтр на громки, выводится список звонков удовлетворяющих фильтру. Если нужно, могу выслать скриншоты.
================================================
Проекты
Выше описан примитивный случай, случай одного плана. Для нескольких планов,
Добавляется таблица [Проекты]
ПроектID
Название_проекта

Изменяется система доступа
Админ всеобщий - может все. Перед началом работы выбирает, с каким планом будет трудиться, в процессе работы может предпочесть иной план.
Админ локальный - работает в границах одного плана, в границах плана может все, включачая управление локальными пользователями и админами.
Пользователь всеобщий - то же что легко пользователь, может выбирать план с которым работает.
Пользователь локальный - то же что легко пользователь, но работает только в границах своего плана.

У всякого плана свои значения справочников и свои списки контрагентов.

Добавляется таблица [Справочная_информация_по_проекту]
ПроектID
ДокументID
Название_документа
html_текст_документа
прикрепленный_документ (либо рисунок)

Админы могут добавлять / удалять записи из [Справочная_информация_по_проекту]
Пользователи могут выбирать документ, позже чего на экране отображается [html_текст_документа], если [прикрепленный_документ] имеет растяжение .gif, .jpg, .bmp, .png то прикрепленный документ отображается на экране. Пользователь может загрузить [прикрепленный_документ]
==========================================

Чтобы добавить заявку к этому заказу, нужно войти или зарегистрироваться

Мой блок

09.12.18 17:23
Umen 24