dongxinpa3101 2014-11-27 17:42
浏览 23
已采纳

使用调用存储库的方法的OOP模式

I have a class DashboardService (defined as a service in symfony2), i use it to call some methods to get results (just queries) from some repositories and display data.

class DashboardService {

/**
 * @var EntityManager 
 */
private $em;

public function __construct(EntityManager $em) {
    $this->em = $em;
}

public function getTotalActiveCampaignsByMonth($month) {

    $campaigns = $this->em->getRepository("WMAdminBundle:Campaign")->countAllActiveCampaignsByMonth($month);

    return $campaigns;
}

public function getTotalContactsByMonth($month) {

    $contacts = $this->em->getRepository("WMAdminBundle:Contact")->countAllContactsSentByMonth($month);

    return $contacts;
}

public function getTotalCAByMonth($month) {
    $ca = $this->em->getRepository("WMAdminBundle:ContactCampaign")->getAllCAByMonth($month);

    return $ca;
}

public function getTop10RentabilityCampaigns() {
    $campaigns = $this->em->getRepository("WMAdminBundle:Campaign")->findAllTop10Rentability();

    return $campaigns;
}

public function getTop10ContactCampaigns() {
    $campaigns = $this->em->getRepository("WMAdminBundle:Campaign")->findAllTop10Contacts();

    return $campaigns;
}

}

Is this class an OOP pattern or something ?

  • 写回答

1条回答 默认 最新

  • dongxingchang9345 2014-11-27 18:05
    关注

    it's like a basic application service in a typical layered architecture.

    Application Services : Used by external consumers to talk to your system (think Web Services). If consumers need access to CRUD operations, they would be exposed here.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 有没有帮写代码做实验仿真的
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题