protected function _mapLifeCycleHistoryFilterValue(\App_ListFilter_Interface $filter, \App_ListFilter $filterList)
 {
     $result = array();
     foreach ($filterList->getFilters() as $filter) {
         switch ($filter->getFieldName()) {
             case SimFilterFields::LIFE_CYCLE_HISTORY_START_STATE:
                 $result['start_state'] = \Application\Model\Mapper\LifeCycleMapper::getInstance()->mapLifeCycleStatusToEricsson($filter->getValue());
                 break;
             case SimFilterFields::LIFE_CYCLE_HISTORY_END_STATE:
                 $result['end_state'] = \Application\Model\Mapper\LifeCycleMapper::getInstance()->mapLifeCycleStatusToEricsson($filter->getValue());
                 break;
             case SimFilterFields::LIFE_CYCLE_HISTORY_INTERVAL:
                 if ($filter instanceof \App_ListFilter_BetweenFilter) {
                     if (!$filter->getMin() && !$filter->getMax()) {
                         $result['interval'] = array();
                     } else {
                         $result['interval'] = array('start_date' => $filter->getMin(), 'end_date' => $filter->getMax());
                     }
                 } elseif ($filter instanceof \App_ListFilter_GreaterThanFilter) {
                     $result['interval'] = array('start_date' => $filter->getValue());
                 } elseif ($filter instanceof \App_ListFilter_LessThanFilter) {
                     $result['interval'] = array('end_date' => $filter->getValue());
                 }
                 break;
         }
     }
     return $result;
 }
Exemplo n.º 2
0
 protected function _mapFilterListPaging(\App_ListFilter $filterList, $paging)
 {
     $params = array();
     foreach ($filterList->getFilters() as $filter) {
         $params[$filter->getFieldName()] = $this->mapFilter($filter);
     }
     if (isset($paging['count'])) {
         $params['_count'] = $paging['count'];
     }
     if (isset($paging['page'])) {
         $params['_page'] = $paging['page'];
     }
     return $params;
 }
 /**
  * Creates a filter protobuffer message
  * @param  \App_ListFilter          $filterList
  * @return DrSlump\ProtoBuf\Message type of $_filterClass, defined above.
  */
 protected function _createFilter(\App_ListFilter $filterList)
 {
     $criterias = $filterList->getFilters();
     if (!empty($criterias)) {
         $filterClass = $this->_filterClass;
         $filter = new $filterClass();
         foreach ($criterias as $criteria) {
             if ($crit = $this->_createCriteria($criteria, $filterList)) {
                 $filter->addCriterias($crit);
             }
         }
         $list = $filter->getCriteriasList();
         if (empty($list)) {
             unset($filter);
         }
     }
     return isset($filter) ? $filter : null;
 }