Диплом: Автоматизация документооборота организации на примере ООО "Технопарк-центр"

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
96
typeid CHAR(18) NOT NULL, PRIMARY KEY (id)
);
CREATE TABLE Role
( id INTEGER AUTOINCREMENT NOT NULL,
caption VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE Staff
( id INTEGER AUTOINCREMENT NOT NULL,
caption VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE Staffs_types
( typeid INTEGER NOT NULL,
staffid INTEGER NOT NULL,
PRIMARY KEY (typeid, staffid)
);
CREATE TABLE Status
( id INTEGER AUTOINCREMENT NOT NULL,
caption VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE TypeDoc
( id INTEGER AUTOINCREMENT NOT NULL,
caption VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE UploadFile
( id AUTOINCREMENT INTEGER NOT NULL,
createdat DATETIME NOT NULL,
97
pathfile VARCHAR(255) NOT NULL,
docid INTEGER NOT NULL,
authorid INTEGER NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE User
( id AUTOINCREMENT INTEGER NOT NULL,
fio VARCHAR(255) NOT NULL,
login VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
departmentid INTEGER NOT NULL,
staffid INTEGER NOT NULL,
PRIMARY KEY (id)
);
CREATE TABLE Users_role
( userid INTEGER NOT NULL,
roleid INTEGER NOT NULL,
PRIMARY KEY (roleid, userid)
);
98
Приложение 2
<?php
namespace AppBundle\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;
/**
* Class User
* @package AppBundle\Entity
* @ORM\Entity
* @ORM\Table(name = "users")
*/
class User extends AbstractEntity implements UserInterface, \Serializable
{ /**
* @var string
* @ORM\Column(name = "password", type = "string")
*/
protected $password;
/**
* @var ArrayCollection|Role[]
* @ORM\ManyToMany(targetEntity = "AppBundle\Entity\Role", inversedBy =
"users")
* @ORM\JoinTable(name = "user_roles", * joinColumns =
{@ORM\JoinColumn(name = "userid", referencedColumnName = "id")},
* inverseJoinColumns = {@ORM\JoinColumn(name = "roleid",
referencedColumnName = "id")}
* )
*/
protected $roles;
/**
* @var string
99
* @ORM\Column(name = "salt", type = "string")
*/
protected $salt;
/**
* @var string
* @ORM\Column(name = "username", type = "string", unique = true)
*/
protected $username;
/**
* @var string
* @ORM\Column(name = "userfio", type = "string")
*/
protected $userfio;
/**
* @var string
* @ORM\Column(name = "email", type = "string")
*/ protected $email;
/**
* @var string
* @ORM\Column(name = "phone", type = "string")
*/
protected $phone;
/**
* @var boolean
* @ORM\Column(name = "deleted", type = "boolean")
*/
protected $deleted;
/**
* @var ArrayCollection|Movement[]
100
* @ORM\OneToMany(targetEntity = "AppBundle\Entity\Movement", mappedBy =
"user", cascade = {"persist", "remove"})
*/
protected $movements;
public function __construct()
{
parent::__construct();
$this->roles = new ArrayCollection();
$this->movements = new ArrayCollection();
$this->salt = self::generateSalt();
$this->deleted = false;
}
public function eraseCredentials()
{
return $this;
}
/**
* @return string
*/
public static function generateSalt()
{
$symbols = '0123456789abcdef';
$salt = '';
foreach (range(1, 32) as $i) $salt .= $symbols[mt_rand(0, 15)];
return $salt;
// return openssl_random_pseudo_bytes(32);
}
/**
* @return string
*/
101
public function getPassword()
{
return $this->password;
}
/**
* @return array|Role[]
*/
public function getRoles()
{
return $this->roles->toArray();
}
/**
* @return ArrayCollection|Role[]
*/
public function getRolesCollection()
{ return $this->roles;
}
/**
* @return string
*/ public function getSalt()
{
return $this->salt;
}
/**
* @return string
*/ public function getUsername()
{
return $this->username;
}
public function serialize()
102
{
return serialize(array(
'id' => $this->id,
'username' => $this->username,
'password' => $this->password,
'salt' => $this->salt
));
}
/**
* @param string $password
* @return $this
*/
public function setPassword($password)
{
$this->password = $password;
return $this;
}
public function setRoles($roles)
{
$this->roles->clear();
foreach ($roles as $role) $this->roles->add($role);
return $this;
}
/**
* @param string $salt
* @return $this
*/
public function setSalt($salt)
{
$this->salt = $salt;
103
return $this;
}
/**
* @param string $username
* @return $this
*/
public function setUsername($username)
{
$this->username = $username;
return $this;
}
public function unserialize($serialized)
{
$unserialized = unserialize($serialized);
$this->id = $unserialized['id'];
$this->username = $unserialized['username'];
$this->password = $unserialized['password'];
$this->salt = $unserialized['salt'];
return $this;
}
/**
* @return boolean
*/ public function isDeleted()
{ return $this->deleted;
}
/**
* @param boolean $deleted
*/ public function setDeleted($deleted)
{
$this->deleted = $deleted;
104
}
/**
* @return string
*/
public function getEmail()
{
return $this->email;
}
/**
* @param string $email
*/
public function setEmail($email)
{
$this->email = $email;
}
/**
* @return string
*/ public function getPhone()
{
return $this->phone;
}
/**
* @param string $phone
*/
public function setPhone($phone)
{
$this->phone = $phone;
}
/**
* @return string
105
*/ public function getUserfio()
{
return $this->userfio;
}
/**
* @param string $userfio
*/
public function setUserfio($userfio)
{ $this->userfio = $userfio;
}
/**
* @return Movement[]|ArrayCollection
*/ public function getMovements()
{
return $this->movements;
}
/**
* @param Movement[]|ArrayCollection $movements
*/
public function setMovements($movements)
{
$this->movements = $movements;
}
}
<?php
namespace AppBundle\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* Class Department

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

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