コード例 #1
0
 /**
  * @return array
  */
 public static function getSlotInfos()
 {
     self::includeModuleFile();
     $result = array(array('NAME' => 'SUM_TOTAL', 'IS_FIXED' => true, 'TITLE' => GetMessage('CRM_DEAL_SUM_STAT_ENTRY_SLOT_SUM_TOTAL')));
     $names = DealSumStatisticsTable::getSumSlotFieldNames();
     foreach ($names as $name) {
         $result[] = array('NAME' => $name);
     }
     return $result;
 }
コード例 #2
0
 /** @return array */
 public function prepareEntityListFilter(array $filterParams)
 {
     $filter = self::internalizeFilter($filterParams);
     $query = new Query(DealSumStatisticsTable::getEntity());
     $query->addSelect('OWNER_ID');
     $query->addGroup('OWNER_ID');
     $period = $filter->getPeriod();
     $periodStartDate = $period['START'];
     $periodEndDate = $period['END'];
     $query->addFilter('>=END_DATE', $periodStartDate);
     $query->addFilter('<=START_DATE', $periodEndDate);
     $responsibleIDs = $filter->getResponsibleIDs();
     if (!empty($responsibleIDs)) {
         $query->addFilter('@RESPONSIBLE_ID', $responsibleIDs);
     }
     $semanticID = $filter->getExtraParam('semanticID', PhaseSemantics::UNDEFINED);
     if ($semanticID !== PhaseSemantics::UNDEFINED) {
         $query->addFilter('=STAGE_SEMANTIC_ID', $semanticID);
     }
     return array('__JOINS' => array(array('TYPE' => 'INNER', 'SQL' => 'INNER JOIN(' . $query->getQuery() . ') DS ON DS.OWNER_ID = L.ID')));
 }
コード例 #3
0
 /**
  * @return void
  */
 public static function unregister($ownerID)
 {
     DealSumStatisticsTable::deleteByOwner($ownerID);
 }