Файл: Проектирование реализации операций бизнес-процесса «Анализ и изучение конкуренции» ( Аналитическая часть).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 17.05.2023

Просмотров: 79

Скачиваний: 5

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

Для работы с данными профиля пользователю необходимо нажать на свое имя в верхней панели сайта. Откроется форма работы с профилем (Рисунок 21).

Рисунок 21. Форма работы с данными профиля

ЗАКЛЮЧЕНИЕ

В ходе проделанной работы были решены следующие задачи:

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

Все задачи, поставленные перед данным курсовым проектом, выполнены в полном объеме.

СПИСОК ЛИТЕРАТУРЫ

  • ГОСТ 2.105 – 95. Общие требования к текстовым документам.
  • ГОСТ 7.32 – 2001. Отчет по научно-исследовательской работе. Структура и правила оформления.
  • ГОСТ 7.82-2001. Библиографическое описание электронных ресурсов.
  • ГОСТ 24.702-85 Эффективность автоматизированных систем управления.
  • ГОСТ Р 7.0.5-2008. Библиографическая запись. Библиографическое описание.
  • Алистер Коберн, Современные методы описания функциональных требований к системам, М.: издательство "Лори", 2017. – 288 с
  • Гайфуллин Б.Н., Обухов И.А., Автоматизация систем управления предприятиями стандарта ERP-MRPII. – М:Интерфейс-пресс, 2010 г. – 114 c.
  • Гончаров А. Самоучитель. HMTL / А. Гончаров. – Спб. : Питер, 2011. – 240 с.
  • Дунаев В. HTML, скрипты и стили / В. Дунаев. – Спб. : БХВ-Петербург, 2015. – 816 с.
  • Жадеев А. PHP для начинающих / А. Жадеев. – Спб.: «Питер», 2014. – 592 c.
  • Колисниченко Д. PHP и MySQL. Разработка WEB-приложений / Д. Колисниченков – Спб: БХВ-Петербург, 2013. – 560 с.
  • Конналли Т. Базы данных. Проектирование, реализация и сопровождение. Теория и практика / Т. Коналли, К. Бегг. – М.: Издательский дом «Вильямс», 2013. – 1093 c.
  • Лобова Г. Моделирование и анализ бизнес-процессов SADT. – М.: LAP Lambert Academic Publishing, 2014. – 352 c.
  • Макдональд, М. Созданиец Web-сайта. Недостающее руководство / М. Макдональд. – Спб. : БХВ-Петербург, 2013. – 624 с.
  • Маклаков С. В. Моделирование бизнес-процессов с AllFusion Process Modeler (BPwin 4.1) / С.В. Маклаков. – М. : ДИАЛОГ-МИФИ, 2013. – 340 c.
  • Маклаков С.В. Создание информационных систем с AllFusion Modeling Suite / С.В. Маклаков. – М. : ДИАЛОГ-МИФИ, 2013. – 512 c.
  • Маклаков С.В. BPwin и Erwin. CASE-средства разработки информационных систем / С.В. Маклаков. – М. : ДИАЛОГ–МИФИ, 2014. – 369 c.
  • Тельнов, Ю.Ф. Информационные системы и технологии. Information System and Technologies: науч. издание под ред. Тельнова Ю. Ф. – М: Юнити-Дана,2012 – 303 с.
  • Флэнаган, Д. Javascript. Подробное руководство / Д. Флэнаган : пер с англ. – М. : Символ-Плюс, 2013. – 1080 с.
  • Проектирование информационных систем. http://проектирование-ис.рф/лекции/лекция-12/

ПРИЛОЖЕНИЯ

<?php

namespace AppBundle\Controller;

use AppBundle\Entity\Comment;

use AppBundle\Entity\ProductCategory;

use AppBundle\Entity\Ticket;

use AppBundle\Entity\TicketStatus;

use AppBundle\Entity\TypeTicket;

use AppBundle\Form\Type\MyTicketFilterFormType;

use AppBundle\Form\Type\ProductCategoryFilterFormType;

use AppBundle\Form\Type\ProductCategoryFormType;

use AppBundle\Form\Type\ProductFormType;

use AppBundle\Entity\Role;

use AppBundle\Entity\Product;

use AppBundle\Form\Type\TicketCommentFormType;

use AppBundle\Form\Type\TicketFilterFormType;

use AppBundle\Form\Type\TicketFormType;

use AppBundle\Form\Type\TypeTicketFilterFormType;

use AppBundle\Form\Type\TypeTicketFormType;

use Sensio\Bundle\FrameworkExtraBundle\Configuration as Config;

use Symfony\Component\Form\FormError;

use Symfony\Component\HttpFoundation\RedirectResponse;

use Symfony\Component\HttpFoundation\Response;

class TicketController extends InitializableController

{

/**

* @return RedirectResponse|Response

* @Config\Route("/tickets", name = "site_tickets_index")

*/

public function indexAction()

{

if (($this->authChecker->isGranted(Role::TEHNIC)) || ($this->authChecker->isGranted(Role::PROGER))) {

$form=$this->createForm(new MyTicketFilterFormType());

$id = null;

$status=null;

$my = null;

$form->handleRequest($this->request);

$tickets = $this->getRepository('Ticket')->createQueryBuilder('t')

->leftJoin('t.status', 's')

->leftJoin('t.user', 'u')

->where('1=1');

if ($form->isSubmitted() && $form->isValid()) {

$id = $form->get('id')->getData();

$status = $form->get('status')->getData();

$my = $form->get('my')->getData();

}

if (!empty($id)) {

$tickets->andWhere('t.id = :id ')->setParameter('id', $id);

}

if (!empty($status)) {

$tickets->andWhere('s.id = :status ')->setParameter('status', $status);

}

if (!empty($my)) {

$tickets->andWhere('u.id = :user ')->setParameter('user', $this->user->getId());

}

}

else {

$form=$this->createForm(new TicketFilterFormType());

$id = null;

$status=null;

$form->handleRequest($this->request);

$tickets = $this->getRepository('Ticket')->createQueryBuilder('t')

->leftJoin('t.status', 's')

->leftJoin('t.author', 'u')

->where('1=1');

if ($form->isSubmitted() && $form->isValid()) {

$id = $form->get('id')->getData();

$status = $form->get('status')->getData();

}

if (!empty($id)) {

$tickets->andWhere('t.id = :id ')->setParameter('id', $id);

}

if (!empty($status)) {

$tickets->andWhere('s.id = :status ')->setParameter('status', $status);

}

$tickets->andWhere('u.id = :user ')->setParameter('user', $this->user->getId());

}

$tickets=$tickets->getQuery()->getResult();

$this->view['tickets'] = $tickets;

$this->view['form'] = $form->createView();

$this->navigation = array('active' => 'tickets');

return $this->render('AppBundle:Tickets:index.html.twig');

}

/**

* @return RedirectResponse|Response

* @Config\Route("/tickets/add", name = "site_tickets_add")

*/

public function addAction()

{

$ticket = new Ticket();

$form = $this->createForm(new TicketFormType(), $ticket);

$form->handleRequest($this->request);

if ($form->isSubmitted() && $form->isValid()) {

$ticket->setAuthor($this->user);

/* @var TicketStatus $status*/

$status=$this->getRepository('TicketStatus')->findOneBy(array('id'=>1));

$ticket->setStatus($status);

$this->manager->persist($ticket);

$this->manager->flush();

$this->addNotice('success',

'tickets.html.twig',

array('notice' => 'added', 'id' => $ticket->getId())

);

return $this->redirectToRoute('site_tickets_index');


}

$this->forms['ticket'] = $form->createView();

$this->navigation = array('active' => 'tickets');

$this->view['ticket']=null;

return $this->render('AppBundle:Tickets:add.html.twig');

}

/**

* @param Ticket $ticket

* @return RedirectResponse|Response

* @Config\Route("/tickets/{ticket}/edit", name = "site_tickets_edit")

* @Config\ParamConverter("ticket", options = {"mapping": {"ticket": "id"}})

*/

public function editAction(Ticket $ticket)

{

$comment= new Comment();

$form = $this->createForm(new TicketCommentFormType(), $comment);

$form->handleRequest($this->request);

if ($form->isSubmitted() && $form->isValid()) {

$comment->setTicket($ticket);

$comment->setAuthor($this->user);

if (is_null($ticket->getUser()) && $this->user != $ticket->getAuthor()) {

$ticket->setUser($this->user);

$this->manager->persist($ticket);

}

$comment->upload();

$this->manager->persist($comment);

$this->manager->flush();

return $this->redirectToRoute('site_tickets_edit', array('ticket'=>$ticket->getId()));

}

$this->forms['comment'] = $form->createView();

$this->view['ticket'] = $ticket;

$this->navigation = array('active' => 'tickets');

return $this->render('AppBundle:Tickets:edit.html.twig');

}

/**

* @param Ticket $ticket

* @param TicketStatus $status

* @return RedirectResponse|Response

* @Config\Route("/tickets/{ticket}/change/{status}", name = "site_tickets_change")

* @Config\ParamConverter("ticket", options = {"mapping": {"ticket": "id"}})

* @Config\ParamConverter("status", options = {"mapping": {"srarus": "id"}})

*/

public function changeAction(Ticket $ticket, TicketStatus $status)

{

$ticket->setStatus($status);

if ($status->getId()==4) {

$this->addNotice('success',

'tickets.html.twig',

array('notice' => 'closed', 'id' => $ticket->getId())

);

}

if ($status->getId()==3) {

$this->addNotice('info',

'tickets.html.twig',

array('notice' => 'sendmodified', 'id' => $ticket->getId())

);

$ticket->setUser(null);

}

$this->manager->persist($ticket);

$this->manager->flush();

$this->navigation = array('active' => 'tickets');

return $this->render('AppBundle:Tickets:index.html.twig');

}

}

<?php

namespace AppBundle\Controller;

use AppBundle\Form\Type\LoginFormType;

use AppBundle\Form\Type\ProfileFormType;

use AppBundle\Controller\InitializableController;

use AppBundle\Entity\Role;

use AppBundle\Entity\User;

use Sensio\Bundle\FrameworkExtraBundle\Configuration as Config;

use Symfony\Component\Form\FormError;

use Symfony\Component\HttpFoundation\RedirectResponse;

use Symfony\Component\HttpFoundation\Response;

use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;

use Symfony\Component\Security\Core\Encoder\UserPasswordEncoder;

use Symfony\Component\Security\Core\Security;

class SecurityController extends InitializableController

{

/**

* @return RedirectResponse|Response

* @Config\Route("/login", name = "site_security_login")

*/

public function loginAction()

{

if ($this->authChecker->isGranted(Role::USER)) return $this->redirectToRoute('homepage');

$error = null;

if ($this->request->attributes->has(Security::AUTHENTICATION_ERROR))

$error = $this->request->attributes->get(Security::AUTHENTICATION_ERROR);

else {

$error = $this->session->get(Security::AUTHENTICATION_ERROR, null);

$this->session->remove(Security::AUTHENTICATION_ERROR);

}

if (!is_null($error)) {

$this->addNotice('error', 'security_login.html.twig', array('notice' => 'auth_error'));

}

$form = $this->createForm(new LoginFormType(), new User());

$this->navigation = array('active' => 'login');

$this->forms = array(

'login' => $form->createView(),