Диплом: Автоматизация управления продажами книжного интернет магазина ООО "Литера"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
126
Форма
просмотра
товара
Форма
деталей
заказа
Заказ
Форма
изменения
заказа
Клиент КурьерМенеджер
1: Просмотр товара
2: Отрыть форму
3: Указать заказываемые товары и количество
4: Сохранить заказ
5: Создать пустой заказ
6: Заполнить ФИО клиента, название товара и количество
7: Сохранить заказ
8: Изменение заказа
11: Передача заказа на выполнение
12: Выполнение заявки
9: Сохранение заказа
10: Подтверждение заказа или отказ от заказа
Рис.38. Диаграмма последовательности
127
Создание таблиц на физическом уровне при помощи запросов MySQL
1. Создание таблиц.
Создание таблицы «COUNTRY»
CREATE TABLE `COUNTRY` (
`ID_COUNTRY` INT NOT NULL AUTO_INCREMENT ,
`COUNTRY` VARCHAR ( 30 ) NOT NULL ,
PRIMARY KEY (`ID_COUNTRY` ) );
Создание таблицы «GENRE»
CREATE TABLE `GENRE` (
`ID_ GENRE` INT NOT NULL AUTO_INCREMENT ,
`GENRE` VARCHAR ( 30 ) NOT NULL ,
PRIMARY KEY (`ID_GENRE`) );
Создание таблицы «AUTHOR»
CREATE TABLE `AUTHOR` (
`ID_AUTHOR` INT NOT NULL AUTO_INCREMENT ,
`AUTHOR` VARCHAR( 100 ) NOT NULL ,
`ID_COUNTRY_A` INT NOT NULL ,
PRIMARY KEY (`ID_AUTHOR` ) );
Создание таблицы «PRODUCER»
CREATE TABLE `PRODUCER` (
`ID_PRODUCER` INT NOT NULL AUTO_INCREMENT ,
`ID_COUNTRY_P` INT NOT NULL ,
`NAME_PRODUCER` VARCHAR ( 50 ) NOT NULL,
`WEB_PRODUCER` VARCHAR ( 50 ) NOT NULL,
PRIMARY KEY (`ID_PRODUCER` ) );
Создание таблицы « BOOKS »
CREATE TABLE `BOOKS` (
` ID_BOOK` INT NOT NULL AUTO_INCREMENT ,
` ID_AUTHOR` INT NOT NULL ,
128
` ID_GENRE` INT NOT NULL ,
` ID_ PRODUCER` INT NOT NULL ,
` ID_RESPONSE` INT NOT NULL ,
` NAME_BOOK` VARCHAR( 100 ) NOT NULL ,
` DESCRIPTION` VARCHAR (500) NOT NULL ,
` EDITION` VARCHAR( 100 ) NOT NULL,
` PHOTO` BLOB NOT NULL ,
` RATING` DEC( 1,2 ),
` PRICE` DEC( 10,2 ) NOT NULL ,
`AMOUNT` INT NOT NULL ,
PRIMARY KEY (`ID_BOOK`) );
Создание таблицы «GROUP»
CREATE TABLE `GROUP` (
`ID_GROUP` INT NOT NULL ,
`IGROUP` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY (`ID_GROUP`) );
Создание таблицы «UNIT»
CREATE TABLE ` UNIT ` (
`ID_UNIT` INT NOT NULL ,
`UNIT` VARCHAR( 10 ) NOT NULL ,
PRIMARY KEY (`ID_UNIT`) );
Создание таблицы « STATIONERY »
CREATE TABLE `STATIONERY` (
` ID_STATIONERY` INT NOT NULL ,
` ID_PRODUCER` INT NOT NULL ,
` ID_GROUP` INT NOT NULL ,
` ID_UNIT` INT NOT NULL ,
` ID_RESPONSE` INT NOT NULL ,
` NAME_STATIONERY` VARCHAR( 100 ) NOT NULL ,
` DESCRIPTION` VARCHAR( 500 ) NOT NULL ,
` PHOTO` BLOB NOT NULL ,
129
` RATING` DEC( 1,1 ) ,
` PRICE` DEC( 10,2 ) NOT NULL ,
` AMOUNT` INT NOT NULL ,
PRIMARY KEY (`ID_STATIONERY` ) );
Создание таблицы « CLIENT »
CREATE TABLE `CLIENT` (
` ID_CLIENT` INT NOT NULL AUTO_INCREMENT ,
` NAME_CLIENT` VARCHAR( 100 ) NOT NULL ,
` TYPE` BOOLEAN default false,
` ID_REQUISITES` INT NOT NULL,
` LOGIN` VARCHAR( 20 ) NOT NULL ,
` PASSWORD` VARCHAR( 50 ) NOT NULL ,
` ADDRESS` VARCHAR( 200 ) NOT NULL ,
` PHONE_NUMBER` VARCHAR( 30 ) NOT NULL ,
` MAIL` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY (`ID_CLIENT`) );
Создание таблицы « REQUISITES »
CREATE TABLE `ID_REQUISITES` (
` ID_REQUISITES` INT NOT NULL AUTO_INCREMENT,
` NAME` VARCHAR( 100 ) NOT NULL,
` LEGAL_ADDRESS` VARCHAR( 200 ) NOT NULL,
` ACTUAL_ADDRESS` VARCHAR( 200 ) NOT NULL,
` INN` INT (12) NOT NULL,
` KPP` INT (9) NOT NULL,
` BIK` INT (9) NOT NULL,
` RS` INT (20) NOT NULL,
` KS` INT (20) NOT NULL,
` BANK` VARCHAR( 50 ) NOT NULL,
PRIMARY KEY (`ID_REQUISITES`));
Создание таблицы « CATEGORY »
CREATE TABLE `CATEGORY` (
130
` ID_CATEGORY` INT NOT NULL ,
` CATEGORY` VARCHAR( 20 ) NOT NULL ,
PRIMARY KEY (`ID_CATEGORY`) );
Создание таблицы « RESPONSES »
CREATE TABLE `RESPONSES` (
` ID_RESPONSE` INT NOT NULL ,
` ID_CATEGORY` INT NOT NULL ,
` ID_CLIENT` INT NOT NULL ,
` ID_PRODUCT` INT NOT NULL ,
` DATE` DATETIME NOT NULL ,
` TITLE` VARCHAR( 30 ) NOT NULL ,
` TEXT` VARCHAR( 500 ) NOT NULL ,
PRIMARY KEY (`ID_RESPONSE`) );
Создание таблицы « BOUGHT_PRODUCTS »
CREATE TABLE `BOUGHT_PRODUCTS` (
` ID` INT NOT NULL AUTO_INCREMENT,
` ID_CATEGORY` INT NOT NULL,
` ID_PRODUCT` INT NOT NULL,
` ID_ORDER` INT NOT NULL,
` ID_CLIENT` INT NOT NULL,
` AMOUNT` INT NOT NULL,
PRIMARY KEY (`ID`));
Создание таблицы « PAYTYPE »
CREATE TABLE `PAYTYPE` (
` ID_PAYTYPE` INT NOT NULL,
` PAYTYPE` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY (`ID_PAYTYPE`) );
Создание таблицы «STATUS»
CREATE TABLE `STATUS` (
131
` ID_STATUS` INT NOT NULL,
` TYPE_STATUS` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY (`ID_STATUS` ));
Создание таблицы «DELIVERY»
CREATE TABLE `DELIVERY` (
` ID_DELIVERY` INT NOT NULL,
` TYPE_DELIVERY` VARCHAR( 30 ) NOT NULL ,
PRIMARY KEY (`ID_DELIVERY`));
Создание таблицы «ORDER»
CREATE TABLE `ORDER` (
` ID_ORDER` INT NOT NULL AUTO_INCREMENT ,
` ID_CLIENT` INT NOT NULL ,
` ID_STATUS` INT NOT NULL ,
` ID_PAYTYPE` INT NOT NULL ,
` ID_DELIVERY` INT NOT NULL ,
` DATE` DATETIME NOT NULL,
`TOTAL` DEC ( 10,2 ),
PRIMARY KEY (`ORDER`) );
2. Добавление вторичных(внешних) ключей:
Таблица «AUTHOR»
ALTER TABLE AUTHOR
ADD FOREIGN KEY (ID_COUNTRY_A) REFERENCES COUNTRY(ID_COUN
TRY);
Таблица « BOOKS »
ALTER TABLE BOOKS
ADD FOREIGN KEY (ID_GENRE) REFERENCES GENRE (ID_GENRE);
ALTER TABLE BOOKS
ADD FOREIGN KEY (ID_AUTHOR) REFERENCES AUTHOR(ID_AUTHOR);
132
ALTER TABLE BOOKS
ADD FOREIGN KEY (ID_PRODUCER) REFERENCES PRODUCER (ID_
PRODUCER);
ALTER TABLE BOOKS
ADD FOREIGN KEY (ID_RESPONSE) REFERENCES RESPONSES (ID_
RESPONSE);
Таблица « PRODUCER »
ALTER TABLE PRODUCER
ADD FOREIGN KEY (ID_COUNTRY_P) REFERENCES COUNTRY
(ID_COUNTRY);
Таблица « STATIONERY »
ALTER TABLE STATIONERY
ADD FOREIGN KEY (ID_GROUP) REFERENCES GROUP (ID_GROUP);
ALTER TABLE STATIONERY
ADD FOREIGN KEY (ID_UNIT) REFERENCES UNIT (ID_UNIT);
ALTER TABLE STATIONERY
ADD FOREIGN KEY (ID_PRODUCER) REFERENCES PRODUCER
(ID_PRODUCER);
ALTER TABLE STATIONERY
ADD FOREIGN KEY (ID_RESPONSE) REFERENCES RESPONSES
(ID_RESPONSE);
Таблица « RESPONSES »
ALTER TABLE RESPONSES
ADD FOREIGN KEY (ID_CLIENT) REFERENCES CLIENT (ID_CLIENT);
ALTER TABLE RESPONSES
ADD FOREIGN KEY (ID_PRODUCT) REFERENCES BOOKS (ID_BOOK);
ALTER TABLE RESPONSES
ADD FOREIGN KEY (ID_PRODUCT) REFERENCES STATIONERY
(ID_STATIONERY);
ALTER TABLE RESPONSES
ADD FOREIGN KEY (ID_CATEGORY) REFERENCES CATEGORY
(ID_CATEGORY);
133
Таблица « BOUGHT_PRODUCTS »
ALTER TABLE BOUGHT_PRODUCTS
ADD FOREIGN KEY (ID_PRODUCT) REFERENCES BOOKS (ID_BOOK);
ALTER TABLE BOUGHT_PRODUCTS
ADD FOREIGN KEY (ID_PRODUCT) REFERENCES STATIONERY
(ID_STATIONERY);
ALTER TABLE BOUGHT_PRODUCTS
ADD FOREIGN KEY (ID_CATEGORY) REFERENCES CATEGORY
(ID_CATEGORY);
ALTER TABLE BOUGHT_PRODUCTS
ADD FOREIGN KEY (ID_CLIENT) REFERENCES CLIENT (ID_CLIENT);
ALTER TABLE BOUGHT_PRODUCTS
ADD FOREIGN KEY (ID_ORDER) REFERENCES ORDER (ID_ORDER);
Таблица « CLIENT »
ALTER TABLE CLIENT
ADD FOREIGN KEY (NAME_CLIENT) REFERENCES REQUISITES (NAME);
Таблица « ORDER »
ALTER TABLE ORDER
ADD FOREIGN KEY (ID_DELIVERY) REFERENCES DELIVERY
(ID_DELIVERY);
ALTER TABLE ORDER
ADD FOREIGN KEY (ID_PAYTYPE) REFERENCES PAYTYPE
(ID_PAYTYPE);
ALTER TABLE ORDER
ADD FOREIGN KEY (ID_CLIENT) REFERENCES CLIENT (ID_CLIENT);
ALTER TABLE ORDER
ADD FOREIGN KEY (ID_STATUS) REFERENCES STATUS (ID_STATUS);
134
Листинг кода основных выполняемых функций программы
1. Листинг кода выполняемого на странице «Каталог книг».
<?php
include("../config.php");\\подключения файла конфигурации
include("../functions.php");\\ подключение файла функций
$link = mysql_connect($DBSERVER, $DBUSER, $DBPASS)
or die("ошибка подключения к серверу" );
mysql_select_db($DB, $link) or die ('ошибка подключения к БД');
include("header.inc"); \\ подключение шаблона шапки
include("left_menu.inc");\\ подключение шаблона меню навигации
include("content.inc");\\ подключения шаблона вывода основного содержимого
$query_FindAllBooks =”Select * from books”;
$array_FindAllBooks = mysql_fetch_array($query_FindAllBooks);
$i=0;
While (mysql_fetch_array($query_FindAllBooks)) {
include (outputBookFunction.php)
include("foot.inc");\\ подключения шаблона конца страницы;
?>
содержимое файла outputBookFunction.php
<?php
echo ‘<tr style=”content” id=”books”>’;
echo ‘<td id=books>
<h4>”’. array_FindAllBooks[‘name’].’”<h4>
<img src=”’. array_FindAllBooks[‘photo’].’”>
<h5>”’. array_FindAllBooks[‘author’].’”<h4>
<br><a href=’?action=open&book=’. array_FindAllBooks[‘id’].’> подробнее…</a>
<br></td>
Inc($i);
If ($i==2)
echo ‘<tr>’;
}
?>
135
2. Листинг кода выполняемого на странице «расширенный поиск книг».
<?php
include("../config.php");\\подключения файла конфигурации
include("../functions.php");\\ подключение файла функций
$link = mysql_connect($DBSERVER, $DBUSER, $DBPASS)
or die("ошибка подключения к серверу" );
mysql_select_db($DB, $link) or die ('ошибка подключения к БД');
include("header.inc"); \\ подключение шаблона шапки
include("left_menu.inc");\\ подключение шаблона меню навигации
include("content.inc");\\ подключения шаблона вывода основного содержимого
if(!$_POST['books_order']) {
echo '<div style="padding-left:35%">';
echo '<form action="?action=books_order" method="post" enctype="multipart/form-
data">';
echo 'введите название книги <input type="text" name="name" size="20"
wrap="off">';
echo 'выбираете автора <input type="JumpMenu " name="author" size="20" ><br/>';
echo 'введите цену <input type="text" name="price" size="3" wrap="off"><br/>';
echo '<input type="submit" name="add_book_ok" value="найти">';
echo '</form>';
echo '</div>';
} else {
$querty_FindBookName = “Select * from books where price in
(‘”.$_GET(down_price)’”, ‘”.$_GET(up_price)’”) and author =
‘”.$_GET(book_author)’” and ”.$_GET(book_name)’”;
}
If (@$querty_FindBookName) {
echo 'по вашему запросу найдено';
include (outputBookFunction.php)
echo '<meta http-equiv="refresh" content="1; url=?action='.$db.'"';

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
IPO - инструмент финансирования деятельности организации. На примере ПАО «Нефтяная компания «Лукойл»
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)