private function getCpOptions() { $options = array(); foreach (CP::model()->findAll() as $cp) { $options[$cp->id] = $cp->name; } return $options; }
public function getTableName() { $filters = $this->getFilterCondition(); $conditions = array(); if (isset($filters['cp_id'])) { $model = CP::model()->findByPk($filters['cp_id']); if ($model) { $conditions[] = "CP:{$model->name}"; } } if (isset($filters['adv_id'])) { $model = Advertise::model()->findByPk($filters['adv_id']); if ($model) { $conditions[] = "业务:{$model->name}"; } } if (isset($filters['channel_id'])) { $model = Channel::model()->findByPk($filters['channel_id']); if ($model) { $conditions[] = "渠道:{$model->name}"; } } /*2014-11-17包名*/ if (isset($filters['adv_channel_id'])) { $model = AdvertiseChannel::model()->findByPk($filters['adv_channel_id']); if ($model) { $conditions[] = "包名:{$model->tag}"; } } /*end*/ if (isset($filters['begin_date']) && isset($filters['end_date'])) { $conditions[] = "从{$filters['begin_date']}到{$filters['end_date']}"; } if (isset($filters['date'])) { $conditions[] = "日期:{$filters['date']}"; } if (count($conditions)) { return $this->getTableBaseName() . '-(' . join('-', $conditions) . ')'; } else { return $this->getTableBaseName() . '-全部'; } }
protected function getIndexCriteria($kw_search = "") { $criteria = new CDbCriteria(); $criteria->order = 't.ctime desc'; /* 添加搜索条件 10-29*/ if ($this->getModelClass() == 'CP') { $criteria->addSearchCondition('name', $kw_search, true, 'OR'); $criteria->addSearchCondition('fullname', $kw_search, true, 'OR'); } elseif ($this->getModelClass() == 'Advertise') { $first = new CDbCriteria(); $first->addSearchCondition('name', $kw_search); $cp = CP::model()->findAll($first); $i = 0; foreach ($cp as $c) { $arrcp[$i] = $c->id; $i++; } $criteria->addInCondition('cp_id', $arrcp, 'OR'); $criteria->addSearchCondition('name', $kw_search, true, 'OR'); } elseif ($this->getModelClass() == 'Channel') { $criteria->addSearchCondition('name', $kw_search); } else { } foreach ($this->getFilterCondition() as $field => $value) { //不加t. ActiveRecord join的时候容易出现重名字段冲突 $criteria->compare('t.' . $field, $value); } return $criteria; }