✏️ 正在编辑: RelatorioSemanalService.php
路径:
/srv/systems_dir/yuppiecred/application/Modules/Relatorio/Service/RelatorioSemanalService.php
提示:
您可以编辑任何文件(包括二进制文件),但请注意不当修改可能导致文件损坏。
<?php namespace Modules\Relatorio\Service; use Doctrine\Common\Collections\ArrayCollection; use Modules\Comercial\Dto\ProdutividadeSupervisorDto; use Modules\Comercial\Model\DbTable\SupervisorRotaTable; class RelatorioSemanalService { /** @var string */ public const MSG_SEM_PRODUTIVIDADE = 'Não houve produtividade no período informado.'; /** * @return \Doctrine\Common\Collections\ArrayCollection */ public function produtividadeSupervisorSemanal(): ArrayCollection { $produtividade = (new SupervisorRotaTable())->findProdutividade(); if ($produtividade->isEmpty()) { throw new \DomainException(self::MSG_SEM_PRODUTIVIDADE); } return $produtividade; } /** * @throws \Mpdf\MpdfException */ public function sendProdutividadeSupervisor(): void { $view = new \Zend_View(); $view->setScriptPath(APPLICATION_PATH . '/views/scripts'); (new \Service_Relatorio_Gerador())->sendProdutividadeSupervisor($view); } /** * @param ArrayCollection $produtividade * @return ArrayCollection * @throws \Exception */ public function sortByProjecao(ArrayCollection $produtividade): ArrayCollection { $iterator = $produtividade->getIterator(); $iterator->uasort(function ($first, $second) { /** @var $first ProdutividadeSupervisorDto */ /** @var $second ProdutividadeSupervisorDto */ return ($first->projecao < $second->projecao) ? 1 : -1; }); return new ArrayCollection(iterator_to_array($iterator)); } }
💾 保存文件
← 返回文件管理器