瀏覽代碼

Refactoring Container

feature/symfony6.1
Fab 2 年之前
父節點
當前提交
d91a691934
共有 22 個檔案被更改,包括 91 行新增25 行删除
  1. +7
    -0
      Container/Newsletter/NewsletterContainer.php
  2. +6
    -0
      Container/Reminder/ReminderContainer.php
  3. +7
    -0
      Container/Setting/SiteSettingContainer.php
  4. +6
    -0
      Container/Site/NewsContainer.php
  5. +6
    -0
      Container/Site/PageContainer.php
  6. +5
    -0
      Container/Site/SiteContainer.php
  7. +7
    -0
      Container/Ticket/TicketContainer.php
  8. +5
    -0
      Container/Ticket/TicketMessageContainer.php
  9. +5
    -0
      Container/User/GroupUserContainer.php
  10. +5
    -0
      Container/User/UserContainer.php
  11. +1
    -1
      Controller/User/UserAdminController.php
  12. +0
    -1
      Factory/File/FileFactory.php
  13. +3
    -3
      Factory/Newsletter/NewsletterFactory.php
  14. +3
    -3
      Factory/Reminder/ReminderFactory.php
  15. +3
    -2
      Factory/Setting/SiteSettingFactory.php
  16. +3
    -3
      Factory/Site/NewsFactory.php
  17. +3
    -2
      Factory/Site/PageFactory.php
  18. +3
    -2
      Factory/Site/SiteFactory.php
  19. +3
    -2
      Factory/Ticket/TicketFactory.php
  20. +3
    -2
      Factory/Ticket/TicketMessageFactory.php
  21. +3
    -2
      Factory/User/GroupUserFactory.php
  22. +4
    -2
      Factory/User/UserFactory.php

+ 7
- 0
Container/Newsletter/NewsletterContainer.php 查看文件



namespace Lc\SovBundle\Container\Newsletter; namespace Lc\SovBundle\Container\Newsletter;


use App\Entity\Newsletter\Newsletter;
use Lc\SovBundle\Definition\Field\Newsletter\NewsletterFieldDefinition; use Lc\SovBundle\Definition\Field\Newsletter\NewsletterFieldDefinition;
use Lc\SovBundle\Factory\Newsletter\NewsletterFactory; use Lc\SovBundle\Factory\Newsletter\NewsletterFactory;
use Lc\SovBundle\Repository\Newsletter\NewsletterRepositoryQuery; use Lc\SovBundle\Repository\Newsletter\NewsletterRepositoryQuery;
$this->fieldDefinition = $fieldDefinition; $this->fieldDefinition = $fieldDefinition;
} }


public static function getEntityFqcn()
{
return Newsletter::class;
}


public function getFactory(): NewsletterFactory public function getFactory(): NewsletterFactory
{ {
return $this->factory; return $this->factory;

+ 6
- 0
Container/Reminder/ReminderContainer.php 查看文件



namespace Lc\SovBundle\Container\Reminder; namespace Lc\SovBundle\Container\Reminder;


use App\Entity\Reminder\Reminder;
use Lc\SovBundle\Factory\Reminder\ReminderFactory; use Lc\SovBundle\Factory\Reminder\ReminderFactory;
use Lc\SovBundle\Repository\Reminder\ReminderRepositoryQuery; use Lc\SovBundle\Repository\Reminder\ReminderRepositoryQuery;
use Lc\SovBundle\Repository\Reminder\ReminderStore; use Lc\SovBundle\Repository\Reminder\ReminderStore;
$this->store = $store; $this->store = $store;
} }


public static function getEntityFqcn()
{
return Reminder::class;
}

public function getFactory(): ReminderFactory public function getFactory(): ReminderFactory
{ {
return $this->factory; return $this->factory;

+ 7
- 0
Container/Setting/SiteSettingContainer.php 查看文件



namespace Lc\SovBundle\Container\Setting; namespace Lc\SovBundle\Container\Setting;


use App\Entity\Setting\SiteSetting;
use Lc\SovBundle\Definition\SiteSettingDefinition; use Lc\SovBundle\Definition\SiteSettingDefinition;
use Lc\SovBundle\Factory\Setting\SiteSettingFactory; use Lc\SovBundle\Factory\Setting\SiteSettingFactory;
use Lc\SovBundle\Repository\Setting\SiteSettingRepositoryQuery; use Lc\SovBundle\Repository\Setting\SiteSettingRepositoryQuery;
$this->settingSolver = $settingSolver; $this->settingSolver = $settingSolver;
} }



public static function getEntityFqcn()
{
return SiteSetting::class;
}

public function getFactory(): SiteSettingFactory public function getFactory(): SiteSettingFactory
{ {
return $this->factory; return $this->factory;

+ 6
- 0
Container/Site/NewsContainer.php 查看文件



namespace Lc\SovBundle\Container\Site; namespace Lc\SovBundle\Container\Site;


use App\Entity\Site\News;
use Lc\SovBundle\Definition\Field\Site\NewsFieldDefinition; use Lc\SovBundle\Definition\Field\Site\NewsFieldDefinition;
use Lc\SovBundle\Factory\Site\NewsFactory; use Lc\SovBundle\Factory\Site\NewsFactory;
use Lc\SovBundle\Repository\Site\NewsRepositoryQuery; use Lc\SovBundle\Repository\Site\NewsRepositoryQuery;
$this->fieldDefinition = $fieldDefinition; $this->fieldDefinition = $fieldDefinition;
} }



public static function getEntityFqcn()
{
return News::class;
}
public function getFactory(): NewsFactory public function getFactory(): NewsFactory
{ {
return $this->factory; return $this->factory;

+ 6
- 0
Container/Site/PageContainer.php 查看文件



namespace Lc\SovBundle\Container\Site; namespace Lc\SovBundle\Container\Site;


use App\Entity\Site\Page;
use Lc\SovBundle\Definition\Field\Site\PageFieldDefinition; use Lc\SovBundle\Definition\Field\Site\PageFieldDefinition;
use Lc\SovBundle\Factory\Site\PageFactory; use Lc\SovBundle\Factory\Site\PageFactory;
use Lc\SovBundle\Repository\Site\PageRepositoryQuery; use Lc\SovBundle\Repository\Site\PageRepositoryQuery;
$this->fieldDefinition = $fieldDefinition; $this->fieldDefinition = $fieldDefinition;
} }


public static function getEntityFqcn()
{
return Page::class;
}

public function getFactory(): PageFactory public function getFactory(): PageFactory
{ {
return $this->factory; return $this->factory;

+ 5
- 0
Container/Site/SiteContainer.php 查看文件



namespace Lc\SovBundle\Container\Site; namespace Lc\SovBundle\Container\Site;


use App\Entity\Site\Site;
use Lc\SovBundle\Factory\Site\SiteFactory; use Lc\SovBundle\Factory\Site\SiteFactory;
use Lc\SovBundle\Repository\Site\SiteRepositoryQuery; use Lc\SovBundle\Repository\Site\SiteRepositoryQuery;
use Lc\SovBundle\Repository\Site\SiteStore; use Lc\SovBundle\Repository\Site\SiteStore;
$this->store = $store; $this->store = $store;
} }


public static function getEntityFqcn()
{
return Site::class;
}
public function getFactory(): SiteFactory public function getFactory(): SiteFactory
{ {
return $this->factory; return $this->factory;

+ 7
- 0
Container/Ticket/TicketContainer.php 查看文件



namespace Lc\SovBundle\Container\Ticket; namespace Lc\SovBundle\Container\Ticket;


use App\Entity\Ticket\Ticket;
use Lc\SovBundle\Builder\Ticket\TicketBuilder; use Lc\SovBundle\Builder\Ticket\TicketBuilder;
use Lc\SovBundle\Definition\Field\Ticket\TicketFieldDefinition; use Lc\SovBundle\Definition\Field\Ticket\TicketFieldDefinition;
use Lc\SovBundle\Factory\Ticket\TicketFactory; use Lc\SovBundle\Factory\Ticket\TicketFactory;
$this->fieldDefinition = $fieldDefinition; $this->fieldDefinition = $fieldDefinition;
} }



public static function getEntityFqcn()
{
return Ticket::class;
}

public function getFactory(): TicketFactory public function getFactory(): TicketFactory
{ {
return $this->factory; return $this->factory;

+ 5
- 0
Container/Ticket/TicketMessageContainer.php 查看文件



namespace Lc\SovBundle\Container\Ticket; namespace Lc\SovBundle\Container\Ticket;


use App\Entity\Ticket\TicketMessage;
use Lc\SovBundle\Builder\Ticket\TicketMessageBuilder; use Lc\SovBundle\Builder\Ticket\TicketMessageBuilder;
use Lc\SovBundle\Factory\Ticket\TicketMessageFactory; use Lc\SovBundle\Factory\Ticket\TicketMessageFactory;
use Lc\SovBundle\Repository\Ticket\TicketMessageRepositoryQuery; use Lc\SovBundle\Repository\Ticket\TicketMessageRepositoryQuery;
$this->builder = $builder; $this->builder = $builder;
} }


public static function getEntityFqcn()
{
return TicketMessage::class;
}
public function getFactory(): TicketMessageFactory public function getFactory(): TicketMessageFactory
{ {
return $this->factory; return $this->factory;

+ 5
- 0
Container/User/GroupUserContainer.php 查看文件



namespace Lc\SovBundle\Container\User; namespace Lc\SovBundle\Container\User;


use App\Entity\User\GroupUser;
use Lc\SovBundle\Factory\User\GroupUserFactory; use Lc\SovBundle\Factory\User\GroupUserFactory;
use Lc\SovBundle\Repository\User\GroupUserRepositoryQuery; use Lc\SovBundle\Repository\User\GroupUserRepositoryQuery;
use Lc\SovBundle\Repository\User\GroupUserStore; use Lc\SovBundle\Repository\User\GroupUserStore;
$this->store = $store; $this->store = $store;
} }


public static function getEntityFqcn()
{
return GroupUser::class;
}
public function getFactory(): GroupUserFactory public function getFactory(): GroupUserFactory
{ {
return $this->factory; return $this->factory;

+ 5
- 0
Container/User/UserContainer.php 查看文件



namespace Lc\SovBundle\Container\User; namespace Lc\SovBundle\Container\User;


use App\Entity\User\User;
use Lc\SovBundle\Builder\User\UserBuilder; use Lc\SovBundle\Builder\User\UserBuilder;
use Lc\SovBundle\Definition\Field\User\UserFieldDefinition; use Lc\SovBundle\Definition\Field\User\UserFieldDefinition;
use Lc\SovBundle\Definition\RolesDefinitionInterface; use Lc\SovBundle\Definition\RolesDefinitionInterface;
$this->fieldDefinition = $fieldDefinition; $this->fieldDefinition = $fieldDefinition;
$this->rolesDefinition = $rolesDefinition; $this->rolesDefinition = $rolesDefinition;
} }
public static function getEntityFqcn()
{
return User::class;
}


public function getFactory(): UserFactory public function getFactory(): UserFactory
{ {

+ 1
- 1
Controller/User/UserAdminController.php 查看文件



$entityInstance = $event->getEntityInstance(); $entityInstance = $event->getEntityInstance();


ApplicationDefinition::getSubscribedContainerServices();
ApplicationDefinition::getSubscribedContainerServices();




$metas = $this->getEntityManager()->getMetadataFactory()->getAllMetadata(); $metas = $this->getEntityManager()->getMetadataFactory()->getAllMetadata();

+ 0
- 1
Factory/File/FileFactory.php 查看文件



namespace Lc\SovBundle\Factory\File; namespace Lc\SovBundle\Factory\File;


use App\Entity\File\File;
use Lc\SovBundle\Container\File\FileContainer; use Lc\SovBundle\Container\File\FileContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\File\FileInterface; use Lc\SovBundle\Model\File\FileInterface;

+ 3
- 3
Factory/Newsletter/NewsletterFactory.php 查看文件



namespace Lc\SovBundle\Factory\Newsletter; namespace Lc\SovBundle\Factory\Newsletter;


use App\Entity\Newsletter\Newsletter;
use Lc\SovBundle\Definition\ApplicationDefinition;
use Lc\SovBundle\Container\Newsletter\NewsletterContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Newsletter\NewsletterInterface; use Lc\SovBundle\Model\Newsletter\NewsletterInterface;


{ {
public function create(): NewsletterInterface public function create(): NewsletterInterface
{ {
$newsletter = new Newsletter();
$class = NewsletterContainer::getEntityFqcn();
$newsletter = new $class;


return $newsletter; return $newsletter;
} }

+ 3
- 3
Factory/Reminder/ReminderFactory.php 查看文件



namespace Lc\SovBundle\Factory\Reminder; namespace Lc\SovBundle\Factory\Reminder;


use App\Entity\Reminder\Reminder;
use Lc\SovBundle\Container\Reminder\ReminderContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Reminder\ReminderInterface; use Lc\SovBundle\Model\Reminder\ReminderInterface;


string $crudControllerFqcn = null, string $crudControllerFqcn = null,
int $entityId = null int $entityId = null
): ReminderInterface { ): ReminderInterface {
$reminder = new Reminder();
$class = ReminderContainer::getEntityFqcn();
$reminder = new $class;
$reminder->setCrudAction($crudAction); $reminder->setCrudAction($crudAction);
$reminder->setCrudControllerFqcn($crudControllerFqcn); $reminder->setCrudControllerFqcn($crudControllerFqcn);
$reminder->setEntityId($entityId); $reminder->setEntityId($entityId);

+ 3
- 2
Factory/Setting/SiteSettingFactory.php 查看文件



namespace Lc\SovBundle\Factory\Setting; namespace Lc\SovBundle\Factory\Setting;


use App\Entity\Setting\SiteSetting;
use Lc\SovBundle\Container\Setting\SiteSettingContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\File\FileInterface; use Lc\SovBundle\Model\File\FileInterface;
use Lc\SovBundle\Model\Setting\SiteSettingInterface; use Lc\SovBundle\Model\Setting\SiteSettingInterface;
{ {
public function create(SiteInterface $site, string $name, string $text = null, \DateTime $date = null, FileInterface $file = null): SiteSettingInterface public function create(SiteInterface $site, string $name, string $text = null, \DateTime $date = null, FileInterface $file = null): SiteSettingInterface
{ {
$siteSetting = new SiteSetting();
$class = SiteSettingContainer::getEntityFqcn();
$siteSetting = new $class;


$siteSetting->setSite($site); $siteSetting->setSite($site);
$siteSetting->setName($name); $siteSetting->setName($name);

+ 3
- 3
Factory/Site/NewsFactory.php 查看文件



namespace Lc\SovBundle\Factory\Site; namespace Lc\SovBundle\Factory\Site;


use App\Entity\Site\News;
use Lc\SovBundle\Container\Site\NewsContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Site\NewsInterface; use Lc\SovBundle\Model\Site\NewsInterface;


{ {
public function create(): NewsInterface public function create(): NewsInterface
{ {
$news = new News();
$class = NewsContainer::getEntityFqcn();
$news = new $class;
$news->setStatus(1); $news->setStatus(1);


return $news; return $news;

+ 3
- 2
Factory/Site/PageFactory.php 查看文件



namespace Lc\SovBundle\Factory\Site; namespace Lc\SovBundle\Factory\Site;


use App\Entity\Site\Page;
use Lc\SovBundle\Container\Site\PageContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Site\PageInterface; use Lc\SovBundle\Model\Site\PageInterface;


{ {
public function create(): PageInterface public function create(): PageInterface
{ {
$page = new Page();
$class = PageContainer::getEntityFqcn();
$page = new $class;


$page->setStatus(1); $page->setStatus(1);



+ 3
- 2
Factory/Site/SiteFactory.php 查看文件



namespace Lc\SovBundle\Factory\Site; namespace Lc\SovBundle\Factory\Site;


use App\Entity\Site\Site;
use Lc\SovBundle\Container\Site\SiteContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Site\SiteInterface; use Lc\SovBundle\Model\Site\SiteInterface;


{ {
public function create(string $devAlias = null): SiteInterface public function create(string $devAlias = null): SiteInterface
{ {
$site = new Site();
$class = SiteContainer::getEntityFqcn();
$site = new $class;


$site->setDevAlias($devAlias); $site->setDevAlias($devAlias);



+ 3
- 2
Factory/Ticket/TicketFactory.php 查看文件



namespace Lc\SovBundle\Factory\Ticket; namespace Lc\SovBundle\Factory\Ticket;


use App\Entity\Ticket\Ticket;
use Lc\SovBundle\Container\Ticket\TicketContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Ticket\TicketInterface; use Lc\SovBundle\Model\Ticket\TicketInterface;
use Lc\SovBundle\Model\Ticket\TicketModel; use Lc\SovBundle\Model\Ticket\TicketModel;
{ {
public function create(): TicketInterface public function create(): TicketInterface
{ {
$ticket = new Ticket();
$class = TicketContainer::getEntityFqcn();
$ticket = new $class;


$ticketMessageFactory = new TicketMessageFactory(); $ticketMessageFactory = new TicketMessageFactory();
$ticketMessage = $ticketMessageFactory->create($ticket) ; $ticketMessage = $ticketMessageFactory->create($ticket) ;

+ 3
- 2
Factory/Ticket/TicketMessageFactory.php 查看文件



namespace Lc\SovBundle\Factory\Ticket; namespace Lc\SovBundle\Factory\Ticket;


use App\Entity\Ticket\TicketMessage;
use Lc\SovBundle\Container\Ticket\TicketMessageContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\Ticket\TicketInterface; use Lc\SovBundle\Model\Ticket\TicketInterface;
use Lc\SovBundle\Model\Ticket\TicketMessageInterface; use Lc\SovBundle\Model\Ticket\TicketMessageInterface;
{ {
public function create(TicketInterface $ticket): TicketMessageInterface public function create(TicketInterface $ticket): TicketMessageInterface
{ {
$ticketMessage = new TicketMessage();
$class = TicketMessageContainer::getEntityFqcn();
$ticketMessage = new $class;


$ticketMessage->setTicket($ticket); $ticketMessage->setTicket($ticket);
$ticketMessage->setStatus(1); $ticketMessage->setStatus(1);

+ 3
- 2
Factory/User/GroupUserFactory.php 查看文件



namespace Lc\SovBundle\Factory\User; namespace Lc\SovBundle\Factory\User;


use App\Entity\User\GroupUser;
use Lc\SovBundle\Container\User\GroupUserContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\User\GroupUserInterface; use Lc\SovBundle\Model\User\GroupUserInterface;


{ {
public function create(): GroupUserInterface public function create(): GroupUserInterface
{ {
$groupUser = new GroupUser();
$class = GroupUserContainer::getEntityFqcn();
$groupUser = new $class;


$groupUser->setStatus(1); $groupUser->setStatus(1);



+ 4
- 2
Factory/User/UserFactory.php 查看文件



namespace Lc\SovBundle\Factory\User; namespace Lc\SovBundle\Factory\User;


use App\Entity\User\User;
use Lc\SovBundle\Container\User\UserContainer;
use Lc\SovBundle\Factory\AbstractFactory; use Lc\SovBundle\Factory\AbstractFactory;
use Lc\SovBundle\Model\User\UserInterface; use Lc\SovBundle\Model\User\UserInterface;


{ {
public function create(): UserInterface public function create(): UserInterface
{ {
$user = new User();

$class = UserContainer::getEntityFqcn();
$user = new $class;


return $user; return $user;
} }

Loading…
取消
儲存