Просмотр исходного кода

Редактирование readme.md

R_Mamaev 1 год назад
Родитель
Сommit
acf39e2343
3 измененных файлов с 209 добавлено и 2 удалено
  1. BIN
      img/BD.png
  2. BIN
      img/ER-Диаграмма.png
  3. 209 2
      readme.md

BIN
img/ER-Диаграмма.png


+ 209 - 2
readme.md

@@ -32,7 +32,6 @@
 
 <div style="page-break-after: always;"></div>
 
-test
 
 ## Содержание
 
@@ -40,6 +39,9 @@ test
 * [Диаграмма вариантов использования](#диаграмма-вариантов-использования)
 * [Спецификация вариантов использования (прецедентов)](#спецификация-вариантов-использования-прецедентов)
 * [Диаграмма состояний](#диаграмма-состояний)
+* [ER-диаграмма](#er-диаграмма)
+* [Словарь данных](#словарь-данных)
+* [База данных SQL](#база-данных-sql)
 
 ### Описание предметной области
 * Предполагается, что в системе автосалона будет 4 роли пользователей: клиенты, продавцы-консультанты, подборщики, администраторы. Авторизация в системе производится по телефону и паролю. Клиенты могут зарегистрироваться в системе, указав ФИО, телефон, пароль, дату рождения.
@@ -94,4 +96,209 @@ test
 
 ![img21](./img/21.png)
 ![img22](./img/22.png)
-![img23](./img/23.png)
+![img23](./img/23.png)
+
+### ER-Диаграмма
+![ER-Диаграмма](./img/ER-Диаграмма.png)
+
+### Словарь данных
+
+* Member (Пользователь)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| fullName | varchar(255) | Y | Полное ФИО (строка), обязательное поле
+&nbsp;| phoneNumber | varchar(12) | Y | Телефон
+&nbsp;| password | varchar(40) | Y | Пароль пользователя
+&nbsp;| postAdress | varchar(255) | Y | Адрес доставки
+FK | roleId | int | Y | Ссылка на словарь **Role**
+
+* Role (Роль)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(50) | Y | Роль
+
+* Payment (Оплата)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| paymentDate | Date | Y | Дата оплаты
+&nbsp;| description | varchar(255) | Y | Описание заказа
+&nbsp;| amountPaid | int(15) | Y | Оплаченная сумма
+
+* Order (Заказ автомобиля пользователем)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| transactionDate | Date | Y | Дата транзакции
+FK| memberId | int | Y | Ссылка на словарь **Member**
+FK| carId | int | Y | Ссылка на словарь **Car**
+FK| paymentId | int | Y | Ссылка на словарь **Payment**
+
+* Car (Автомобиль)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+FK| brandId | int | Y | Ссылка на словарь **Brand**
+FK| modelId | int | Y | Ссылка на словарь **Model**
+FK| generationId | int | Y | Ссылка на словарь **Generation**
+&nbsp;| dateOfIssue | Date | Y | Дата выпуска автомобиля
+&nbsp;| engineCap | decimal(2,1) |  | Объём двигателя (1-2 знака перед запятой, 1 знак после запятой)
+FK| engineId | int | Y | Тип двигателя с ссылкой на словарь **Engine**
+&nbsp;| cost | int(15) | Y | Цена автомобиля
+FK| colorId | int | Y | Цвет с ссылкой на словарь **Color**
+FK| transmissionId | int | Y | Коробка передач с ссылкой на словарь **Transmission**
+&nbsp;| photo | varchar(255) |  | Фотография автомобиля (Обязательно, хотя бы 1)
+&nbsp;| description | varchar(255) |  | Описание автомобиля
+FK| categoryId | int | Y | Категория с ссылкой на словарь **Category** 
+
+* Brand (Марка)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(100) | Y | Марка
+
+* Model (Модель)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(100) | Y | Модель
+
+* Generation (Поколение)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(100) | Y | Поколение
+
+* Engine (Тип двигателя)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(30) | Y | Тип двигателя
+
+* Color (Цвет)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(80) | Y | Цвет
+
+* Transmission (Тип)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(30) | Y | Тип трансмиссии
+
+* Category (Категория)
+
+Key | Field Name | Data Type/Field Size | Required? | Notes
+:-:|----|-----|:-:|---
+PK | Id | INT | Y |
+&nbsp;| titile | varchar(60) | Y | В какой категории продается авто
+
+### База данных SQL
+![Базы данных](/img/BD.png)
+#### Скрипт
+```
+CREATE TABLE `Role` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(50) DEFAULT NULL
+)
+
+CREATE TABLE `Member` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`phoneNumber` varchar(12) DEFAULT NULL,
+	`fullName` varchar(255) DEFAULT NULL,
+	`password` varchar(40) DEFAULT NULL,
+	`postAdress` varchar(255) DEFAULT NULL,
+	`roleId` INT,
+	FOREIGN KEY(`roleId`) REFERENCES `ROLE` (`Id`)
+)
+
+CREATE TABLE `Brand` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(100) DEFAULT NULL
+)
+
+CREATE TABLE `Model` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(100) DEFAULT NULL
+)
+
+CREATE TABLE `Generation` (
+	`Id` INT(11) NOT NULL AUTO_INCR EMENT PRIMARY KEY,
+	`title` varchar(100) DEFAULT NULL
+)
+
+CREATE TABLE `Engine` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(30) DEFAULT NULL
+)
+
+CREATE TABLE `Color` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(80) DEFAULT NULL
+)
+
+CREATE TABLE `Transmission` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(30) DEFAULT NULL
+)
+
+CREATE TABLE `Category` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`title` varchar(60) DEFAULT NULL
+)
+
+CREATE TABLE `Car` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`brandId` INT,
+	FOREIGN KEY(`brandId`) REFERENCES `Brand` (`Id`),
+	`modelId` INT,
+	FOREIGN KEY(`modelId`) REFERENCES `Model` (`Id`),
+	`generationId` INT,
+	FOREIGN KEY(`generationId`) REFERENCES `Generation` (`Id`),
+	`dateOfIssue` Date DEFAULT NULL,
+	`engineCap` Decimal(2,1) DEFAULT NULL,
+	`engineId` INT,
+	FOREIGN KEY(`engineId`) REFERENCES `Engine` (`Id`),
+	`cost` int(15) DEFAULT NULL,
+	`colorId` INT,
+	FOREIGN KEY(`colorId`) REFERENCES `Color` (`Id`),
+	`transmissionId` INT,
+	FOREIGN KEY(`transmissionId`) REFERENCES `Transmission` (`Id`),
+	`photo` varchar(255),
+	`description` varchar(255),
+	`categoryId` INT,
+	FOREIGN KEY(`categoryId`) REFERENCES `Category` (`Id`)
+)
+
+CREATE TABLE `Payment` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`paymentDate` Date DEFAULT NULL,
+	`description` varchar(255) DEFAULT NULL, 
+	`amountPaid` INT(15) DEFAULT NULL
+)
+
+CREATE TABLE `Order` (
+	`Id` INT(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
+	`transactionDate` Date DEFAULT NULL,
+	`memberId` INT,
+	FOREIGN KEY(`memberId`) REFERENCES `Member` (`Id`),
+	`carId` INT,
+	FOREIGN KEY(`carId`) REFERENCES `Car` (`Id`),
+	`paymentId` INT,
+	FOREIGN KEY(`paymentId`) REFERENCES `Payment` (`Id`)
+)
+```