Разработка интернет-магазина мебели

  • Вид работы:
    Курсовая работа (т)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Русский
    ,
    Формат файла:
    MS Word
    87,11 Кб
  • Опубликовано:
    2015-04-03
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

Разработка интернет-магазина мебели

Введение

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

В современном мире обычно для обработки данных используются различные СУБД. Одной из наиболее распространенных СУБД является MySQL. Она проста в администрировании, неприхотлива к ресурсам и может быть установлена на персональный компьютер с небольшим объёмом памяти. Основные достоинства СУБД MySQL: бесплатность, простота, быстродействие, надёжность. СУБД MySQL обладает всеми необходимыми функциональными возможностями.

1.      Описание предметной области

.1 Название организации

программа интернет магазин

Мебельный магазин «Империя»

.2 Адрес и телефон организации

Амурская область, Благовещенский район, г. Благовещенск, ул. Мухина 112/3, тел: 8 (963) 8177181

.3 Виды деятельности организации

Продажа мебели и изготовление мебели под заказ. Осуществляются как розничные продажи, так и оптовые.

.4 Положение на рынке

Магазин «Империя» осуществляет свою работу на рынке более 5 лет. Цель магазина - продажа и производство качественной дизайнерской мебели по доступным ценам для потребителей. За время своей работы магазин «Империя» установил тесные партнерские отношения с крупнейшими поставщиками и ведущими мировыми производителями мебели.

1.5 Организационная структура

Директор: Осуществляет общее руководство всеми направлениями деятельности магазина, определяет цели и задачи его развития, контролирует и руководит деятельностью коллектива.

Производственный отдел: В этом отделе разрабатывается и создается мебель под заказ, а так же в штат входят грузчики и сборщики мебели.

Отдел продаж: В этом отделе разрабатываются стратегии и реклама по продажам. Осуществляется сотрудничество с поставщиками и оформление заказов. Продавцы непосредственно консультируют покупателей и продают уже готовую мебель, а так же предлагают услуги дизайнера.

Бухгалтерия: В этом отделе один сотрудник - главный бухгалтер, который производит все расчеты, ведет счета, а так же начисляет заработную плату.

Технический персонал: В этом отделе состоят сотрудники, которые отвечают за чистоту и порядок в магазине, а так же своевременно устраняют технические и косметические неполадки.

1.6 Основные тенденции развития организации

Магазин «Империя» хоть и довольно молодая компания на рынке, но уже активно развивается и постоянно ведет работу по совершенствованию скорости и качества обслуживания покупателей.

Основные принципы, которых придерживается компания в своей работе:

) Только качественная мебель

) Широкий ассортимент

) Квалифицированное обслуживание

) Удобное расположение магазина

) Выгодные условия покупки

) Опыт работы

1.7    Границы исследования, границы предметной области

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

.8 Цели построения базы данных

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

1.9 Требования заказчика

1)      Учет товара (наличие товара в магазине и на складе)

)        Данные о заказах мебели (Узнать информацию об оформленных заказах, их цене и сроках выполнения.)

)        Данные о сотрудниках (Узнать информацию о сотрудниках, времени зачисления на работу, количество сотрудников, вывести с указанием должности и времени приема на работу сотрудников магазина в алфавитном порядке)

)        Данные о поставщиках:)       Узнать сведения об интересующих поставщиках и поставляемых ими товарах, а также ценах на эти товары.

b)      Вывести информацию о поставщиках в алфавитном порядке, зарегистрированных в Благовещенске с указанием адреса.

5)      Данные о производителях (Узнать сведения о производителях товаров.)

)        Данные об обладателях дисконтных карт (Узнать информацию об обладателях дисконтных карт, их процентной ставке и Ф.И.О. сотрудника оформившего карту.)

2. Инфологическое проектирование

.1 Определение сущностей

На основании проведенных исследований предметной области и учёта структуры магазина, были выделены следующие сущности, необходимые для построения информационной базы. Все сущности приведены в таблице 1.

Таблица 1 - Формирование сущностей

Название сущности

Описание сущности

Количество экземпляров

Сотрудники

содержит информацию обо всех работающих в магазине сотрудниках

20

Типы товаров (категории)

содержит информацию о наименовании и коде типа мебели

50

Товары

содержит описание всех имеющихся товаров, на складе и в магазине

1000

Заказ мебели

Содержит информацию о заказах дизайнерской мебели

100

Поставщики

содержит информацию обо всех поставщиках товаров

10

Обладатели дисконтных карт

Содержит информацию о покупателях, которые оформили дисконтную карту

100

Производители

содержит информацию о производителях мебели

10

.2 Описание атрибутов

Название атрибута

Описание атрибута

Диапазон значений

Единица измерения

Пример

КодСотрудника

Код сотрудника

1, 2, …

-

1

Ф.И.О.

Фамилия, Имя, Отчество сотрудника

-

-

Иванов Иван Иванович

ДатаРождения

Дата рождения сотрудника

-

число, месяц, год

11.05.1989

Адрес

Улица, дом, квартира

-

улица, дом, квартира

ул. Василенко, д. 16, кв. 12

Телефон

Телефон сотрудника

-

-

56-25-64

Должность

Должность сотрудника

-

-

Продавец-консультант

ДатаПриема

Дата приема сотрудника на работу

-

число, месяц, год

08.04.2010


Данная сущность идентифицируется атрибутом КодСотрудника, он является и первичным ключом таблицы. В сущности не используются ограничения. Сущность «Сотрудники» является родительной по отношению к таблице «Обладатели дисконтных карт». Эти сущности связаны отношением «один по многим», т.к. один сотрудник может оформить несколько дисконтных карт. Также сущность сотрудники является родительной таблицей по отношению к сущностям «Заказ мебели» и «Товары». Эти сущности связаны отношением «один ко многим», т.к. один сотрудник оформляет несколько заказов мебели и один сотрудник может продать несколько товаров.

Таблица 3 - Атрибуты сущности «Типы товаров»

Название атрибута

Описание атрибута

Диапазон значений

Единицы измерения

Пример

КодТипа

Код типа

1,2, …

-

11

Наименование

Название типа

-

-

Стулья


Данная сущность идентифицируется атрибутом КодТипа, он является и первичным ключом таблицы. В сущности не используются ограничения. Сущность «Типы товаров» является родительной по отношению к таблице «Товары». Эти сущности связаны отношением «один по многим», т.к. один тип товаров может включать несколько товаров.


Таблица 4 - Атрибуты сущности «Товары»

Название атрибута

Описание атрибута

Диапазон значений

Единицы измерения

Пример

КодТтовара

Код товара

1,2, …

-

3

Тип мебели

-

-

Стулья

Название

Наименование мебели

-

-

«Модерн»

Количество на складе

Количество товара на складе

0,1,2, …

-

20

Количество в магазине

Количество товара в магазине

0,1,2, …

-

4

Поставщик

Название поставщика

-

-

«Амурмебель»

Производитель

Название производителя

-

-

Китай

Цена

Стоимость товара

1,2, …

руб.

1500


Сущность Товар идентифицируется атрибутом «КодТовара», он же является первичным ключом. Данная таблица связана с сущностями «Производители», «Поставщики», «Типы товара» и «Сотрудники» отношением «многие к одному». Соответственно сущность «Товар» является дочерней по отношению к перечисленным сущностям. Соединение сущностей производится по соответствующим внешним ключам, например, сущность «Товар» и сущность «Сотрудники» связаны при помощи внешнего ключа таблицы «Товар» Idsot ссылающегося на первичный ключ таблицы «Сотрудники» (Idsot).

Таблица 5 - Атрибуты сущности «Заказ мебели»

Название атрибута

Описание атрибута

Диапазон значений

Единицы измерения

Пример

КодЗаказа

Код заказа

0,1,2, …

-

058

Описание заказа

Краткое описание заказа

-

-

Кухонный гарнитур «Модерн»

ДатаОформления

Дата оформления заказа

-

Число, месяц, год

05.06.2013

ДатаИсполнения

Дата исполнения заказа

-

Число, месяц, год

28.06.2013

ЦенаЗаказа

Цена заказа

-

руб.

25000


Сущность Заказ мебели идентифицируется атрибутом «КодЗаказа», он же является первичным ключом. В сущности не используются ограничения. Сущность «Сотрудники» является дочерней по отношению к сущности «Заказ мебели». Эти сущности связаны отношением «один по многим», т.к. один сотрудник может оформить несколько заказов.

Таблица 6 - Атрибуты сущности «Поставщики»

Название атрибута

Описание атрибута

Диапазон значений

Пример

КодПоставщика

Код поставщика

1,2, …

-

1

Название

Наименование поставщика

-

-

«Амурмебель»

Адрес

Адрес фирмы-поставщика

-

-

Г. Благовещенск, ул. Ленина 12/3

Телефон

Номер телефона

-

-

56-96-46


Данная сущность идентифицируется атрибутом КодПоставщика, он является и первичным ключом таблицы. В сущности не используются ограничения. Сущность «Поставщики» является дочерней по отношению к сущности «Товары». Эти сущности связаны отношением «один ко многим», т.к. один поставщик может постовлять несколько товаров.

Таблица 7 - Атрибуты сущности «Обладатели дисконтных карт»

Название атрибута

Описание атрибута

Диапазон значений

Единица измерения

Пример

КодОбладателя

Код обладателя дисконтной карты

0,1, 2, …

-

014

Ф.И.О.

Фамилия, Имя, Отчество обладателя дисконтной карты

-

-

Петров Петр Петрович

ДатаРождения

Дата рождения обладателя дисконтной карты

-

число, месяц, год

25.09.1973

Телефон

Телефон обладателя дисконтной карты

-

-

89638252892

Процентная ставка

Процентная ставка дисконтной карты

-

-

4%


Сущность «Обладатели дисконтных карт» идентифицируется атрибутом «КодОбладателя», он же является первичным ключом. Данная таблица связана с сущностью «Сотрудники» отношением «многие к одному». Соответственно сущность «Обладатели дисконтных карт» является исходной по отношению к сущности «Сотрудники».

Таблица 8 - Атрибуты сущности «Производители»

Название атрибута

Описание атрибута

Диапазон значений

Единица измерения

Пример

КодПроизводителя

Код производителя

0, 1, 2, …

-

06

ИмяПроизводителя

Название производителя

-

-

«Мебельный Рай»

Страна производителя

-

-

Россия


Данная сущность идентифицируется атрибутом КодПроизводителя, он является и первичным ключом таблицы. В сущности не используются ограничения. Сущность «Производители» является дочерней по отношению к сущности «Товары». Эти сущности связаны отношением «один ко многим», т.к. один производитель может производить несколько товаров.

2.3 Выявление связей между сущностями

Выявленные связи и аргументация представлены в таблице 9.

Таблица 9 - Установление связей между сущностями

Название первой сущности, участвующей в связи

Название второй сущности, участвующей в связи

Название связи

Тип связи

Обоснование выбора типа связи

Сотрудники

Заказы мебели

Оформляет

Один ко многим

Каждой записи сущности «Сотрудники» соответствует несколько записей сущности «Заказы мебели», каждой записи сущности «Заказы мебели» соответствует одна запись сущности «Сотрудник». Один сотрудник может оформить несколько заказов, и любой из заказов может быть оформлен только одним сотрудником.

Сотрудники

Товары

Продают

Один ко многим

Каждой записи сущности «Сотрудники» соответствует несколько записей сущности «Товары», каждой записи сущности «Товары» соответствует одна запись сущности «Сотрудник». Один сотрудник может продать несколько товаров, и любой из товаров может быть продан только одним сотрудником.

Типы товаров

Товары

Содержат (включают)

Один ко многим

Каждой записи сущности «Типы товаров» соответствует несколько записей сущности «Товары», каждой записи сущности «Товары» соответствует одна запись сущности «Типы товаров». То есть, один тип товаров может включать несколько товаров, а любой из товаров может быть частью только одного типа товара.

Поставщики

Товары

Поставляют

Один ко многим

Каждой записи сущности «Поставщики» соответствует несколько записей сущности «Товары», каждой записи сущности «Товары» соответствует одна запись сущности «Поставщики». То есть, один поставщик может поставлять несколько товаров, а любой из товаров может поставляться только одним поставщиком.

Производители

Товары

Производят

Один ко многим

Каждой записи сущности «Производители» соответствует несколько записей сущности «Товары», каждой записи сущности «Товары» соответствует одна запись сущности «Производители». То есть, один производитель может производить несколько товаров, а любая из товаров может производиться только одним производителем.

Сотрудники

Обладатели дисконтных карт

Оформляют

Один ко многим

Каждой записи сущности «Сотрудники» соответствует несколько записей сущности «Обладатели дисконтных карт», каждой записи сущности «Обладатели дисконтных карт» соответствует одна запись сущности «Сотрудники». То есть один сотрудник может оформить несколько дисконтных карт, и любой из заказов может быть оформлен только одним сотрудником.



Рисунок 1 - Концептуально-инфологическая модель

2.4 Справочник задач, решаемых пользователем

Справочник задач, решаемых пользователем, представлен в таблице 10.

Таблица 10 - Справочник задач решаемых пользователем

Наименование задачи

Цель решения задачи

Сущности, используемые при решении задачи

Частота решения задачи (месяц)

Наличие товара на складе и в магазине

Узнать наличие какого-либо товара на складе и в магазине

Товары

Примерно 30 раз (по мере необходимости)

Сведения о сотрудниках

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

Сотрудники

По мере необходимости

Сведения о поставщиках

Узнать сведения об интересующих поставщиках и поставляемых ими товарах, а также ценах на эти товары.

Поставщики

По мере необходимости

Сведения о производителях

Узнать сведения о производителях товаров.

Производители

По мер необходимости

Сведения о заказах мебели

Узнать информацию об оформленных заказах, их цене и сроках выполнения.

По мере необходимости

Сведения об обладателях дисконтных карт

Узнать информацию об обладателях дисконтных карт, их процентной ставке и Ф.И.О. сотрудника оформившего карту.

Обладатели дисконтных карт

По мере необходимости

Сведения о поставщиках

Вывести информацию о поставщиках в алфавитном порядке, зарегистрированных в Благовещенске с указанием адреса.

Поставщики

По мере необходимости

Добавить строку в таблицу

Добавить строку в таблицу Товары. Просмотреть новую таблицу.

Товары

По мере необходимости

Удалить строку из таблицы

Удалить строку из таблицы Сотрудники. Просмотреть полученную таблицу

Сотрудники

По мере необходимости

Изменить процентные ставки по дисконтным картам

Изменить процентные ставки по дисконтным картам у Пасика И.А. и Слепеньковой Е.А. Просмотреть результат.

Обладатели дисконтных карт

По мере необходимости



3. Логическое проектирование

Целью данного этапа является построение реляционной логической модели. Реляционная логическая модель представляет собой совокупность нормализованных отношений, в которых реализованы связи между объектами предметной области и выполнены все преобразования, необходимые для ее эффективной реализации в среде конкретной СУБД.

3.1 Отображение концептуально-инфологической модели на реляционную модель

) Связь «Сотрудники - Заказ мебели» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Сотрудники», исходной - «Заказ мебели».

) Связь «Сотрудники - Обладатели дисконтных карт» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Сотрудники», исходной - «Обладатели дисконтных карт».

) Связь «Сотрудники - Товары» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Сотрудники», исходной - «Товары».

4) Связь «Производители - Товары» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Производители», исходной - «Товары».

) Связь «Поставщики - Товары» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Поставщики», исходной - «Товары».

) Связь «Типы товаров - Товары» является связью типа «один-ко-многим». При отображении ключ порожденной сущности добавляется в исходную сущность. Порожденной сущностью является сущность «Поставщики», исходной - «Товары».

Объединяя полученные отношения, формируем итоговый набор реляционных отношений:

3.2 Нормализация отношений

Приведение к Первой нормальной форме:

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

Приведение ко Второй нормальной форме:

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

Отношение «Сотрудники» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Товары» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Обладатели дисконтных карт» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Заказ мебели» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Поставщики» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Производители» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Отношение «Типы товаров» находится во второй нормальной форме, так как все неключевые атрибуты этого отношения функционально зависят от первичного ключа.

Приведение к Третьей нормальной форме:

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


4. Физическое проектирование

.1 Создание Базы данных

Листинг создания таблиц:

Create table sotrudniki

(IdSot bigint not null,char(40) not null,smalldatetime not null,char (40) not null,bigint not null,char (40) not null,smalldatetime not null,key (IdSot))

table TipTovara

(KodTipa bigint Primary key not null,char (20) not null)

table Postavchiki

(KodPost bigint Primary key not null,char (20) not null,char (50) not null,bigint not null)

table Proiz_Mebeli

(KodProiz bigint Primary key not null,_proiz char (40) not null,char (30) not null)

Create table ZakazMebeli

(idSot bigint foreign key references sotrudniki (IdSot) ON UPDATE NO ACTION ON DELETE SET NULL,bigint not null,_zacaza char (50) not null,smalldatetime not null,smalldatetime not null,money not null,key(KodZakaza)

)

table Disk_kart

(idSor bigint foreign key references sotrudniki (IdSot) ON DELETE SET NULL ON UPDATE CASCADE,_kart bigint not null,char (40) not null,smalldatetime not null,bigint not null,smallint not null,key (id_kart),ch_proc check (ProcentSt in ('5', '10', '15'))

table Tovar

(idSot bigint foreign key references sotrudniki (IdSot) ON DELETE SET NULL ON UPDATE CASCADE,_tip bigint foreign key references TipTovara (KodTipa) ON DELETE CASCADE ON UPDATE CASCADE,_post bigint foreign key references Postavchiki (KodPost) ON DELETE CASCADE ON UPDATE CASCADE,_proiz bigint foreign key references Proiz_Mebeli (KodProiz) ON DELETE CASCADE ON UPDATE CASCADE,bigint Primary key not null,char (20) not null,char (20) not null,_vo_na_sklade bigint not null,_vo_v_magazine bigint not null,char (20) not null,char (30) not null,money not null,ch_skl check (Kol_vo_na_sklade <=200),ch_mag check (Kol_vo_v_magazine <=5),

Создание индекса (для таблицы сотрудники - упорядочить по алфавиту):

 

CREATE UNIQUE INDEX sot_ki ON(fio asc);

 

Проверка индекса:

select Fiosotrudniki


4.2 Связь между таблицами


4.3 Справочник задач, решаемых пользователем (запросы)

 

1. Наличие товара на складе и в магазине:

create view [Наличие товара] as

Nazvanie, Kol_vo_na_sklade, Kol_vo_v_magazineTovarTipMebeli='Стулья'by Nazvanie

2. Сведения о сотрудниках - вывести с указанием должности и времени приема на работу сотрудников магазина в алфавитном порядке:

view [Сведения о сотрудниках] as

select Fio, DataPriema, Doljnostsotrudniki by Fio

3. Сведения о поставщиках - вывести сведения об интересующем поставщике мебели (Название, поставляемая мебель с указанием цены):

 

create view [Сведения о поставщиках] as

select TipMebeli, Nazvanie, ZenaTovar

where Postavchik='Креатив'

4. Сведения о производителях - узнать сведения о производителях:

view [Сведения о производителях] as

select Nazv_proiz, StranaProiz_Mebeli by Nazv_proiz

5. Сведения о заказах мебели - вывести информацию о заказе (наименование товара, дата заказа, дата выполнения, цена):

create view [Сведения о заказах] as

select DataOform, Opis_zacaza, DataIspol, ZenaZakaza ZakazMebeli

order by DataOform

6. Сведения об обладателях дисконтных карт - вывести информацию о владельце карты, процентную ставку, Ф.И.О. сотрудника, ее оформившего:

create view [Сведения о ОДК] as

d. Fio, d. ProcentSt, s. Fiosotrudniki s, Disk_kart dd.idSor= s. IdSotby d. Fio

7. Сведения о поставщиках - вывести информацию о поставщиках в алфавитном порядке, зарегистрированных в Благовещенске с указанием адреса:

create view [Поставщики Блага] as

Nazvanie, AdressPostavchikiAdress like 'г. Благовещенск % ' by Nazvanie

. Добавить строку в таблицу Товары. Просмотреть новую таблицу

create view [Доб строку] as

insert into Tovar (idSot, id_tip, id_post, id_proiz, KodTovara, TipMebeli, Nazvanie, Kol_vo_na_sklade, Kol_vo_v_magazine, Postavchik, Proizvoditel, Zena)('11', '50', '104', '200', '00890', 'Спальня', 'Венеция', '3', '1', 'Элит', 'ДольчеВита', '70000')

9. Удалить строку из таблицы Сотрудники:

create view [Удал строку] as

sotrudniki Fio ='Кречетов Дмитрий Юрьевич'

10. Изменить процентные ставки по дисконтным картам у Пасика И.А. и Слепеньковой Е.А.:

create view [Изменить проц ставки] as

update Disk_kartidSor='11', id_kart='0000045', Fio='Пасика Ирина Анатольевна', DataR='04.08.1990', Telefon='9143856067', ProcentSt='15'Fio='Пасика Ирина Анатольевна'

Disk_kartidSor='11', id_kart='0027595', Fio='Слепенькова Елена Андреевна', DataR='22.06.1989', Telefon='9243855960', ProcentSt='15'

where Fio='Слепенькова Елена Андреевна'

Библиографический список

1. Чепак Л.В. Лекции и лабораторные работы по СУБД;

2.      Виктор Гольцман MySQL 5.0. Библиотека программиста: Питер; Санкт-Петербург 2010;

3. Аткинсон, Леон. MySQL. Библиотека профессионала.: Пер. с англ. - М.: Издательский дом «Вильяме», 2002. - 624 с.

.   Илюшечкин В.М. Основы использования и проектирования баз данных:

учеб. Пособие - М.: Юрайт: ИД Юрайт, 2011. - 213 с.

.   Электронные ресурсы (www. Google. ru)

Похожие работы на - Разработка интернет-магазина мебели

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!