/** * Retrieves a list of models based on the current search/filter conditions. * @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions. */ public function search() { $criteria = new CDbCriteria(); $criteria->compare('id', $this->id); $criteria->compare('workflow_id', $this->workflow_id); $criteria->addSearchCondition('name', $this->name, true, 'AND', 'ILIKE'); $criteria->addSearchCondition('label', $this->label, true, 'AND', 'ILIKE'); $criteria->compare('value', $this->value, true); $criteria->compare('description', $this->description, true); if ($this->setting_group == 'ungroup') { $criteria->addCondition("setting_group IS NULL OR setting_group = ''"); } else { $criteria->compare('setting_group', $this->setting_group, true); } if ($this->module == 'module_system') { $criteria->addCondition("module IS NULL OR module = ''"); } else { $criteria->compare('module', $this->module, true); } $criteria->order = 'module, setting_group, ordering, name'; $config = array('criteria' => $criteria, 'sort' => array('defaultOrder' => 'module, setting_group, name')); // if (empty($this->setting_group) === false && empty($this->module) === false) { $config['pagination'] = array('pageSize' => 1000); // } return new CActiveDataProvider(get_class($this), $config); }
/** * 生成首页 * */ public function actionIndex() { //print_r(Yii::app()->user->getState('username')); //先获取当前是否有页码信息 $pages['pageNum'] = Yii::app()->getRequest()->getParam("pageNum", 1); //当前页 $pages['countPage'] = Yii::app()->getRequest()->getParam("countPage", 0); //总共多少记录 $pages['numPerPage'] = Yii::app()->getRequest()->getParam("numPerPage", 50); //每页多少条数据 $pages['tmstart'] = Yii::app()->getRequest()->getParam("tmstart", date('Ym')); //开始月份 $pages['tmstop'] = Yii::app()->getRequest()->getParam("tmstop", date('Ym')); //结束月份 $pages['srh_service'] = Yii::app()->getRequest()->getParam("srh_service", ""); //按餐厅名称查询 $criteria = new CDbCriteria(); !empty($pages['srh_service']) && $criteria->addCondition('type=' . $pages['srh_service']); $criteria->addCondition('`month`>=' . $pages['tmstart']); $criteria->addCondition('`month`<=' . $pages['tmstop']); $pages['countPage'] = AppBsMoney::model()->count($criteria); $criteria->limit = $pages['numPerPage']; $criteria->offset = $pages['numPerPage'] * ($pages['pageNum'] - 1); $allList = AppBsMoney::model()->findAll($criteria); $this->renderPartial('index', array('models' => $allList, 'pages' => $pages), false, true); }
public static function querydealer() { $cri = new CDbCriteria(); $cri->addCondition('Identity=2'); $cri->addCondition("IsBlack='0'"); $cri->addCondition("IsFreeze='0'"); $cri->addCondition("Status='1'"); //获得联盟id $organID = Yii::app()->user->getOrganID(); $unionid = MallService::getUnioninfo($organID); $unionid = $unionid ? $unionid : '-1'; //联盟商品 $dids = MallService::getUnionOrgan(array('UnionID' => $unionid, 'type' => 2)); $cri->addCondition('ID in (' . $dids . ')'); $cri->order = 'Sort ASC'; $dealer = Organ::model()->findAll($cri); $deal_info = array(); if ($dealer) { foreach ($dealer as $key => $val) { //将机构图片换成LOGO 修改时间2014-09-03 修改人:邓家文 //$img=JpdOrganPhoto::model()->find('OrganID=:organ',array(':organ'=>$val['ID'])); $deal_info[$key]['ID'] = $val['ID']; $deal_info[$key]['OrganName'] = $val['OrganName']; $deal_info[$key]['Phone'] = $val['Phone']; if (!isset($val['Logo']) && empty($val['Logo'])) { $val['Logo'] = 'common/default-goods.png'; } $deal_info[$key]['imgpath'] = $val['Logo']; } } return $deal_info; }
/** * Retrieves a list of models based on the current search/filter conditions. * * Typical usecase: * - Initialize the model fields with values from filter form. * - Execute this method to get CActiveDataProvider instance which will filter * models according to data in model fields. * - Pass data provider to CGridView, CListView or any similar widget. * * @return CActiveDataProvider the data provider that can return the models * based on the search/filter conditions. */ public function search() { // @todo Please modify the following code to remove attributes that should not be searched. $criteria = new CDbCriteria(); $aJoin = array(); $criteria->compare('id', $this->id); $criteria->compare('placa', $this->placa, true); $criteria->compare('observacao', $this->observacao, true); $criteria->compare('excluido', $this->excluido); if (!empty($this->marca_id)) { $aJoin[] = 'JOIN marcas marca ON marca.id = t.marca_id'; $criteria->addCondition("marca.titulo like '%" . $this->marca_id . "%'"); } if (!empty($this->modelo_id)) { $aJoin[] = 'JOIN modelos modelo ON modelo.id = t.modelo_id'; $criteria->addCondition("modelo.titulo like '%" . $this->modelo_id . "%'"); } if (!empty($this->cliente_id)) { $aJoin[] = 'JOIN clientes cliente ON cliente.id = t.cliente_id'; $criteria->addCondition("cliente.nome like '%" . $this->cliente_id . "%'"); } if (!empty($aJoin)) { $criteria->join = implode(' ', $aJoin); } return new CActiveDataProvider($this, array('criteria' => $criteria)); }
public static function PersonEntrantDocuments($PersonID, $DiplomsOnly = 0) { $res = array(); $cr = new CDbCriteria(); $cr->addCondition("PersonID = " . $PersonID); if ($DiplomsOnly) { $cr->addCondition("TypeID <> 2"); } $model = Documents::model()->findAll($cr); if (!empty($model)) { $entrCount = 0; $res[""] = ""; foreach ($model as $doc) { $doctype = PersonDocumentTypes::model()->findByPk($doc->TypeID); if ($doctype->IsEntrantDocument == 1) { $entrCount++; $res[$doc->idDocuments] = $doctype->PersonDocumentTypesName . "({$doc->Series} {$doc->Numbers})"; } } if ($entrCount == 1) { unset($res[""]); } } return $res; }
public function actionIndex() { $criteria = new CDbCriteria(); //根据分类查找场地信息 $city = Yii::app()->request->getParam('city'); $food = Yii::app()->request->getParam('food'); $sex = Yii::app()->request->getParam('sex'); if (!empty($city)) { $criteria->addCondition("city = '{$city}'"); } if (!empty($food)) { $criteria->addCondition("food = '{$food}'"); } if (!empty($sex)) { $criteria->addCondition("sex = '{$sex}'"); } $criteria->addCondition('status = 1'); //分页类 $criteria->order = 'id ASC'; $count = Place::model()->count($criteria); //count() 函数计算数组中的单元数目或对象中的属性个数。 $pager = new CPagination($count); $pager->pageSize = 5; //每页显示的行数 $pager->applyLimit($criteria); $places = Place::model()->findAll($criteria); //查询所有的数据 $this->render('index', array('places' => $places, 'city' => $city, 'food' => $food, 'sex' => $sex, 'pager' => $pager)); }
public function actionGetimg() { if (isset($_POST['data'])) { $data = $_POST['data']; $model = new Image(); $criteria = new CDbCriteria(); if ($data[0]) { $criteria->addCondition("is_show=1 and pid={$data['0']} and id<{$data['1']}"); } else { $criteria->addCondition("is_show=1 and id<{$data['1']}"); } $criteria->order = 'id desc'; $criteria->limit = 6; $imgs = $model->findAll($criteria); if (!$imgs) { echo 0; exit; } $html = array(); if ($imgs) { foreach ($imgs as $one) { $html[] = "<div class='item'><div class='animate-box bounceIn animated'>\r\n\t\t\t\t\t<a href='javascript:;' class='image-popup fh5co-board-img' title='{$one->title}'><img src='http://7xssk6.com2.z0.glb.clouddn.com/{$one->img}' alt='s-nice'></a>\t\t\t\t\t\t\r\n\t\t\t\t\t</div>\r\n\t\t\t\t\t<div class='fh5co-desc'>{$one->des}</div></div>"; } $html[] = "<p style='display:none' id='imgid'>{$one->id}</p>"; } $html = json_encode($html); if ($html) { echo $html; exit; } else { echo 0; exit; } } }
/** * 操作日志列表 */ public function ActionOperationLogList() { $criteria = new CDbCriteria(); // 判断查询类型 (分页查询 / 条件查询) $searchType = Yii::app()->request->getParam('searchType'); if ($searchType === 'page') { $search_condition = unserialize(base64_decode(Yii::app()->request->getParam('search_condition'))); // 对分布传来的数据进行还原 } else { // 如有搜索条件 则获取条件并过滤条件数组中的空格与空值 if (!empty($_POST['search'])) { foreach ($_POST['search'] as $key => $val) { $search_condition[$key] = trim($val); } $search_condition = array_filter($search_condition); } else { $search_condition = ''; } } // 增加搜索条件 [S] // 搜索条件中包含时间 则添加时间查询条件 if (!empty($search_condition['start_time']) || !empty($search_condition['end_time'])) { // 如起始时间与结束时间一致 则查询同一个时间点的数据 if (!empty($search_condition['start_time']) && !empty($search_condition['end_time']) && $search_condition['start_time'] == $search_condition['end_time']) { $criteria->addSearchCondition('CreationDate', $search_condition['start_time']); } else { // 1.只按起始时间查询 2.只按结束时间查询 3.按起始+结束时间段查询 if (!empty($search_condition['start_time']) && empty($search_condition['end_time'])) { $criteria->addCondition('CreationDate >= :start_time'); $criteria->params[':start_time'] = $search_condition['start_time'] . ' 23:59:59'; } else { if (empty($search_condition['start_time']) && !empty($search_condition['end_time'])) { $criteria->addCondition('CreationDate <= :end_time'); $criteria->params[':end_time'] = $search_condition['end_time'] . ' 23:59:59'; } else { $criteria->addBetweenCondition('CreationDate', $search_condition['start_time'], $search_condition['end_time']); } } } } // 搜索条件中包含真实姓名 则添加关联查询及条件 if (!empty($search_condition['real_name'])) { $criteria->with = array('account' => array('joinType' => 'INNER JOIN', 'condition' => 'account.RealName="' . $search_condition['real_name'] . '"')); } //增加搜索条件 [E] // 分页配置 $criteria->order = 't.ID DESC'; $count = OperationLog::model()->count($criteria); $pager = new CPagination($count); if (!empty($search_condition)) { //判断是否存在搜索条件,并对搜索条件进行数据处理(便于url传输) $pager->params = array('search_condition' => base64_encode(serialize($search_condition)), 'searchType' => 'page'); } $pager->pageSize = 20; $pager->applyLimit($criteria); // 获取日志列表 $operation_log_list = OperationLog::model()->findAll($criteria); // 跳转至用户操作日志页面 $this->render('list_operation_log', array('operation_log_list' => $operation_log_list, 'pages' => $pager, 'search_condition' => $search_condition)); }
public function actionAll() { $model = Notify::model(); $user_id = Yii::app()->user->id; $criteria = new CDbCriteria(); $criteria->with = ['status' => ['select' => ['status.id', 'status.notify_id', 'status.user_id', 'status.read_status', 'IF(status.date_showed, status.date_showed, "' . date('c') . '") as date_showed'], 'on' => 'status.user_id = :user_id']]; $criteria->params = [':user_id' => $user_id, ':all_users' => Notify::All_USERS, ':type' => Notify::TYPE_DEFAULT, ':today' => date('c'), ':user_date_create' => $model->getUserDateCreate($user_id)]; $criteria->addCondition('t.user_id=:user_id OR t.user_id=:all_users'); if ($model->isGroupSupport() && $model->getUserGroups($user_id)) { $criteria->addInCondition('t.group_id', $model->getUserGroups($user_id), 'OR'); } $criteria->addCondition('(t.date_create >= :user_date_create AND t.date_show<=:today) AND (IF(date_end, :today <= date_end, 1) OR status.user_id IS NOT NULL)'); $criteria->addCondition('t.type = :type'); $criteria->order = 'date_showed desc, t.date_show desc'; $count = Notify::model()->count($criteria); $pages = new CPagination($count); $pages->pageSize = Yii::app()->notify->numberDisplayInAll; $pages->applyLimit($criteria); $notifications = Notify::model()->findAll($criteria); $ids = array_keys(array_filter(CHtml::listData($notifications, 'id', 'status.read_status'), function ($var) { return $var == 0; })); if ($ids) { Notify::changeReadStatusByIds($ids, $user_id, Notify::READ); $notifications = Notify::model()->findAll($criteria); } $this->render('all', ['notifications' => $notifications, 'pages' => $pages]); }
public function run() { $criteria = new CDbCriteria(); $criteria->addCondition('status=1'); if ($this->catId) { $criteria->addCondition('term_id=' . $this->catId); } if ($this->currentId) { $criteria->addCondition('id<>' . $this->currentId); } $criteria->order = 'create_time DESC'; $criteria->limit = 20; $news = News::model()->findAll($criteria); echo CHtml::openTag("div", array('class' => 'title', 'style' => 'color: #000000;font-size: 18px;')); echo "Tin khác"; echo CHtml::closeTag("div"); if ($news) { echo CHtml::openTag("ul", array('style' => 'border: 1px solid #CCCCCC; border-radius: 4px 4px 4px 4px; margin: 8px 0px 0px 0px; padding: 10px 5px;list-style:none;')); foreach ($news as $n) { echo CHtml::openTag('li'); echo CHtml::link($n->title, array('/news/detail', 'id' => $n->id, 'tid' => $n->term_id, 'title' => Lnt::safeTitle($n->title))) . " <span style='color:#a7a7a7'>({$n->view})</span>"; echo CHtml::closeTag('li'); } echo CHtml::closeTag("ul"); } }
/** * Retrieves a list of models based on the current search/filter conditions. * * Typical usecase: * - Initialize the model fields with values from filter form. * - Execute this method to get CActiveDataProvider instance which will filter * models according to data in model fields. * - Pass data provider to CGridView, CListView or any similar widget. * * @return CActiveDataProvider the data provider that can return the models * based on the search/filter conditions. */ public function search() { // @todo Please modify the following code to remove attributes that should not be searched. $criteria = new CDbCriteria(); $aJoin = array(); $criteria->compare('id', $this->id); $criteria->compare('quantidade', $this->quantidade); $criteria->compare('observacao', $this->observacao, true); $criteria->compare('data_hora', $this->data_hora, true); $criteria->compare('ordem_servico_id', $this->ordem_servico_id); $criteria->compare('excluido', $this->excluido); if (!empty($this->data_hora_inicial) && !empty($this->data_hora_final)) { $this->data_hora_inicial_grid = $this->data_hora_inicial; $this->data_hora_final_grid = $this->data_hora_final; $criteria->addBetweenCondition('date(data_hora)', $this->data_hora_inicial, $this->data_hora_final); } else { if (!empty($this->data_hora_inicial_grid) && !empty($this->data_hora_final_grid)) { $this->data_hora_inicial = $this->data_hora_inicial_grid; $this->data_hora_final = $this->data_hora_final_grid; $criteria->addBetweenCondition('date(data_hora)', $this->data_hora_inicial, $this->data_hora_final); } } if (!empty($this->produto_id)) { $criteria->addCondition("produto.titulo like '%" . $this->produto_id . "%'"); } if (!empty($this->usuario_id)) { $criteria->addCondition("usuario.nome like '%" . $this->usuario_id . "%'"); } if (!empty($aJoin)) { $criteria->join = implode(' ', $aJoin); } $criteria->with = array('produto', 'usuario'); return new CActiveDataProvider($this, array('criteria' => $criteria)); }
/** * Retrieves a list of models based on the current search/filter conditions. * * Typical usecase: * - Initialize the model fields with values from filter form. * - Execute this method to get CActiveDataProvider instance which will filter * models according to data in model fields. * - Pass data provider to CGridView, CListView or any similar widget. * * @return CActiveDataProvider the data provider that can return the models * based on the search/filter conditions. */ public function search() { // @todo Please modify the following code to remove attributes that should not be searched. $criteria = new CDbCriteria(); if (isset($_GET["Audit"])) { $dH = new DateTimeHelper(); $dtFrom = $dH->getDateTimeFromUI($_GET["Audit"]["dateTimeFrom"]); $dtTo = $dH->getDateTimeFromUI($_GET["Audit"]["dateTimeTo"]); if ($desde !== false) { $criteria->addCondition('date_time >= ' . $dtFrom->getTimestamp()); } else { $criteria->addCondition('date_time >= ' . $dH->getDefaultStartRangeFilter("")->getTimestamp()); } if ($hasta !== false) { $criteria->addCondition('date_time <= ' . $dtTo->getTimestamp()); } else { $criteria->addCondition('date_time <= ' . $dH->getDefaultEndRangeFilter("audit")->getTimestamp()); } } $criteria->compare('object', $this->object, true); $criteria->compare('operation', $this->operation, true); $criteria->compare('description', $this->description, true); $criteria->compare('user', $this->user, true); return new CActiveDataProvider($this, array('criteria' => $criteria)); }
public function actionGetstandardparamlists() { $organID = Commonmodel::getOrganID(); $criteria = new CDbCriteria(); $criteria->addCondition('organID=' . $organID); $criteria->addCondition('mark="U" and ISdelete="N"'); $criteria->group = 'standard_id'; // //查询数据总数 // $sql='SELECT count(distinct standard_id) as count FROM `tbl_make_goods_template` where organID='.$organID.' and mark="U" and ISdelete="N"'; // $count=Yii::app()->db->createCommand($sql)->queryAll(); // $total=$count[0]['count'];sss $count = MakeGoodsTemplate::model()->count($criteria); $criteria->order = 'id desc'; //分页 $pages = new CPagination($count); $pages->pageSize = isset($_GET['rows']) ? intval($_GET['rows']) : 10; $pages->applyLimit($criteria); $datas = MakeGoodsTemplate::model()->findAll($criteria); $res = array(); foreach ($datas as $key => $data) { //根据标准名称id查询标准名称 $res[$key]['id'] = $data['standard_id']; $standard = Gcategory::model()->findByPk($data['standard_id']); $res[$key]['name'] = $standard['name']; $res[$key]['createtime'] = date('Y-m-d H:i:s', $data['createtime']); //标准名称参数对应的商品数量 $sql = 'select count(b.standard_id) from tbl_make_goods a,tbl_make_goods_version b where a.ISdelete=0 and ' . 'a.NewVersion=b.version_name and a.id=b.goods_id and b.standard_id=' . $data['standard_id'] . ' and b.organID=' . $organID; $result = Yii::app()->db->createCommand($sql)->queryRow(); $res[$key]['count'] = $result['count(b.standard_id)']; } echo json_encode(array('total' => $count, 'rows' => $res)); }
/** * Retrieves a list of models based on the current search/filter conditions. * * Typical usecase: * - Initialize the model fields with values from filter form. * - Execute this method to get CActiveDataProvider instance which will filter * models according to data in model fields. * - Pass data provider to CGridView, CListView or any similar widget. * * @return CActiveDataProvider the data provider that can return the models * based on the search/filter conditions. */ public function search() { // @todo Please modify the following code to remove attributes that should not be searched. $criteria = new CDbCriteria(); if (Yii::app()->session['group_id'] == 4) { $criteria->addCondition('user_group_id=2'); } $criteria->addCondition('status=1'); $criteria->compare('id', $this->id); $criteria->compare('username', $this->username, true); $criteria->compare('password', $this->password, true); $criteria->compare('fullname', $this->fullname, true); $criteria->compare('address', $this->address, true); $criteria->compare('email', $this->email, true); $criteria->compare('region', $this->region, true); $criteria->compare('phone', $this->phone, true); $criteria->compare('company', $this->company, true); $criteria->compare('avatar', $this->avatar, true); $criteria->compare('user_group_id', $this->user_group_id); $criteria->compare('created_date', $this->created_date); $criteria->compare('status', $this->status); $criteria->compare('parent_id', $this->parent_id); $criteria->compare('sex', $this->sex); $criteria->compare('date_birth', $this->date_birth, true); return new CActiveDataProvider($this, array('criteria' => $criteria)); }
/** * checks if there is a consent form for the given episode and the given procedure and eye. * * @param Episode $episode * @param Procedure $procedure * @param string $side - left, right or both * * @throws Exception * * @return bool */ public function hasConsentForProcedure($episode, $procedure, $side) { if ($episode) { $required_eye = Eye::BOTH; if (!in_array($side, array('left', 'right', 'both'))) { throw new Exception('unrecognised side value ' . $side); } $event_type = $this->getEventType(); $criteria = new CDbCriteria(); $criteria->addCondition('event.event_type_id = :eventtype_id'); $criteria->addCondition('event.episode_id = :episode_id'); $criteria->addCondition('procedures.id = :proc_id OR additional_procedures.id = :proc_id'); $criteria->params = array(':eventtype_id' => $event_type->id, ':episode_id' => $episode->id, ':proc_id' => $procedure->id); $criteria->order = 't.created_date desc'; $eye_ids = array('eye_id' => Eye::BOTH); if ($side == 'left') { $eye_ids[] = Eye::LEFT; $required_eye = Eye::LEFT; } elseif ($side == 'right') { $eye_ids[] = Eye::RIGHT; $required_eye = Eye::RIGHT; } $criteria->addInCondition('t.eye_id', $eye_ids); foreach (Element_OphTrConsent_Procedure::model()->with('event', 'procedures', 'additional_procedures')->findAll($criteria) as $consent_proc) { if ($consent_proc->eye_id == Eye::BOTH || $consent_proc->eye_id == $required_eye) { return true; } } } return false; }
/** * Retrieves a list of models based on the current search/filter conditions. * @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions. */ public function search($params) { // Warning: Please modify the following code to remove attributes that // should not be searched. $criteria = new CDbCriteria(); $criteria->compare('id', $this->id, true); $criteria->compare('currency_id', $this->currency_id, true); $criteria->compare('date', $this->date, true); $criteria->compare('value', $this->value, true); if (!empty($this->from) && empty($this->to)) { $this->from = date("Y-m-d", CDateTimeParser::parse($this->from, Yii::$app->locale->getDateFormat('yiishort'))); $criteria->addCondition("date>=:date_from"); $criteria->params[':date_from'] = $this->from; } elseif (!empty($this->to) && empty($this->from)) { $this->to = date("Y-m-d", CDateTimeParser::parse($this->to, Yii::$app->locale->getDateFormat('yiishort'))); $criteria->addCondition("date>=:date_to"); $criteria->params[':date_to'] = $this->to; } elseif (!empty($this->to) && !empty($this->from)) { $this->from = date("Y-m-d", CDateTimeParser::parse($this->from, Yii::$app->locale->getDateFormat('yiishort'))); $this->to = date("Y-m-d", CDateTimeParser::parse($this->to, Yii::$app->locale->getDateFormat('yiishort'))); $criteria->addCondition("date>=:date_from"); $criteria->addCondition("date<=:date_to"); $criteria->params[':date_from'] = $this->from; $criteria->params[':date_to'] = $this->to; } $sort = new CSort(); $sort->defaultOrder = 'date DESC'; return new CActiveDataProvider($this, array('criteria' => $criteria, 'sort' => $sort)); }
/** * Provides basic searching functionality * @param int $id The search pagination id */ public function actionSearch($id = 1) { $this->setPageTitle(Yii::t('ciims.controllers.Site', '{{app_name}} | {{label}}', array('{{app_name}}' => Cii::getConfig('name', Yii::app()->name), '{{label}}' => Yii::t('ciims.controllers.Site', 'Search')))); $this->layout = '//layouts/default'; $data = array(); $pages = array(); $itemCount = 0; $pageSize = Cii::getConfig('searchPaginationSize', 10); if (Cii::get($_GET, 'q', false)) { $criteria = new CDbCriteria(); $criteria->addCondition('status = 1')->addCondition('published <= UTC_TIMESTAMP()'); if (strpos($_GET['q'], 'user_id') !== false) { $criteria->addCondition('author_id = :author_id')->addCondition("vid=(SELECT MAX(vid) FROM content AS v WHERE v.id=t.id)"); $criteria->params = array(':author_id' => str_replace('user_id:', '', Cii::get($_GET, 'q', 0))); } else { $param = Cii::get($_GET, 'q', 0); $criteria->addCondition("vid=(SELECT MAX(vid) FROM content AS v WHERE v.id=t.id) AND ((t.content LIKE :param) OR (t.title LIKE :param2))"); $criteria->params = array(':param' => '%' . $param . '%', ':param2' => '%' . $param . '%'); } $criteria->addCondition('password = ""'); $criteria->limit = $pageSize; $criteria->order = 'id DESC'; $itemCount = Content::model()->count($criteria); $pages = new CPagination($itemCount); $pages->pageSize = $pageSize; $criteria->offset = $criteria->limit * $pages->getCurrentPage(); $data = Content::model()->findAll($criteria); $pages->applyLimit($criteria); } $this->render('search', array('url' => 'search', 'id' => $id, 'data' => $data, 'itemCount' => $itemCount, 'pages' => $pages)); }
public function run() { $params = array(); $criteria = new CDbCriteria(); $criteria->select = array('lecture_name,training_minute,id,lecture_type'); if (isset($this->lecture_name) and $this->lecture_name != '') { $keyword = addcslashes($this->lecture_name, '%_'); $criteria->addCondition('lecture_name LIKE :keyword'); $params[':keyword'] = "%{$keyword}%"; } if (isset($this->lecture_cat) and $this->lecture_cat != '') { $criteria->addCondition('lecture_cat_id=' . $this->lecture_cat); } if (isset($this->trainer) and $this->trainer != '') { $criteria->addCondition('created_by=' . $this->trainer); } if (!empty(Yii::app()->user->id) and Yii::app()->session['group_id'] == 1) { $criteria->addCondition('created_by=' . Yii::app()->user->id); } $criteria->params = $params; $criteria->order = 'created_date DESC'; $total = Lecture::model()->count($criteria); $offset = $this->limit * ($this->page - 1); $criteria->limit = $this->limit; $criteria->offset = $offset; $data = Lecture::model()->findAll($criteria); if (!empty($data)) { $data = CJSON::decode(CJSON::encode($data)); } $pages = new CPagination($total); $pages->pageSize = $this->limit; $pages->applyLimit($criteria); $this->render($this->view, array('data' => $data, 'pages' => $pages)); }
public function login($email, $password, $override = false) { $this->logout(); if (!$override && empty($password)) { return false; } $c = new CDbCriteria(); if (strpos($email, '@') > 0 || !is_int($email)) { $c->addCondition('LOWER(email) = "' . $email . '"'); } else { $c->addCondition('telephone = "' . $email . '"'); $c->addCondition('bind_phone = 1'); } $c->addCondition('status=1'); if (!$override) { $c->addCondition("(password = SHA1(CONCAT(salt, SHA1(CONCAT(salt, SHA1('" . $password . "'))))) OR password = '******')"); } $this->customer_info = HtCustomer::model()->find($c); if ($this->customer_info) { Yii::app()->session['customer_id'] = $this->customer_info['customer_id']; return true; } else { return false; } }
/** * 这个是得到某人的黑名单 * * @param $userId * @return array */ public function getBlacks($userId) { $criteria = new CDbCriteria(); $criteria->addCondition('priUserId=' . $userId); $criteria->addCondition('type=0'); return $this->getArray($criteria); }
public function actionMore() { Yii::app()->clientScript->registerCssFile(Yii::app()->theme->baseUrl . '/css/enjoy.css'); $city_id = Yii::app()->request->getQuery('city', 0); $time_sort = Yii::app()->request->getQuery('time_sort', 'DESC'); $price_sort = Yii::app()->request->getQuery('lp_dol'); $criteria = new CDbCriteria(); $criteria->order = 'id DESC'; if (!empty($city_id)) { $criteria->addCondition('city_id=' . $city_id); } if (!empty($time_sort)) { $criteria->order = 'accessDate ' . $time_sort; } if (!empty($price_sort)) { $criteria->order = 'lp_dol ' . $price_sort; } $criteria->addCondition('lp_dol>3000000'); $count = House::model()->count($criteria); $pager = new CPagination($count); $pager->pageSize = 10; $pager->applyLimit($criteria); $house_list = House::model()->findAll($criteria); $subject_list = Subject::model()->findAll(array('order' => 'id DESC')); $cur_city = City::model()->findByPk($city_id); $data = array('house_list' => $house_list, 'subject_list' => $subject_list, 'cur_city' => $cur_city, 'count' => $count, 'time_sort' => $time_sort, 'price_sort' => $price_sort, 'pages' => $pager); $this->render('more', $data); }
public function beforeAction($action) { $criteria = new CDbCriteria(); $criteria->addCondition('status = 1'); $criteria->addCondition('created_by = ' . Yii::app()->user->getInfo()); $this->servicesArray = Services::model()->findAll($criteria); $arrayForSettings = array(); $Settings = Settings::model()->findAll(); foreach ($Settings as $key => $val) { $arrayForSettings[$val->setting_name] = $val->setting_value; } self::$settings = $arrayForSettings; $this->pageTitle = Yii::app()->name; $this->pageName = 'Account'; $this->pageClass = 'blue'; Yii::app()->session['securityCheck'] = md5(ip2long(Yii::app()->request->userHostAddress) + date("Y")); /* @var $cs CClientScript */ $cs = Yii::app()->clientScript; // register jQuery script $cs->registerPackage('jquery'); // register bootstrap script $cs->registerPackage('bootstrap'); // If application is using a theme, replace default layout controller variable that start with '//layouts/' with a theme link if (empty(Yii::app()->theme->name) == false && isset($this->layout) == true && strpos($this->layout, '//layouts/') === 0) { // Replace path with slash by dot. $sThemeLayout = 'webroot.themes.' . Yii::app()->theme->name . '.views.layouts.' . str_replace('/', '.', substr($this->layout, 10)); // If theme override given layout, get it from theme if ($this->getLayoutFile($sThemeLayout) !== false) { $this->layout = $sThemeLayout; } } return true; }
/** * Retrieves a list of models based on the current search/filter conditions. * @return CActiveDataProvider the data provider that can return the models based on the search/filter conditions. */ public function search($collegeId = null, $is_active = true, $reported = false) { // Warning: Please modify the following code to remove attributes that // should not be searched. $criteria = new CDbCriteria(); $criteria->with = array('postItem', 'college', 'program'); $criteria->compare('postItem.title', $this->post_item_id, true); $criteria->compare('postItem.is_active', $this->post_item_id); $criteria->compare('program_code', $this->program_code, true); $criteria->compare('college.college_id', $this->college_id); $criteria->compare('program.program_id', $this->program_id); $criteria->compare('semester_id', $this->semester_id); if ($collegeId != null) { $criteria->addCondition('t.college_id = :collegeId'); $criteria->params[':collegeId'] = $collegeId; } if (!$is_active) { $criteria->addCondition('postItem.is_active = :isActive'); $criteria->params[':isActive'] = $is_active; } if ($reported) { $criteria->with = array('postItem', 'college', 'program', 'complaint'); } return new CActiveDataProvider($this, array('criteria' => $criteria)); }
public static function numero($modelito, $campo, $aliascampo, $anchocampo, $campocriterio = NULL, $campocriterio2 = null, $prefijo = null) { //$this->numkardex=$gg->numero($this,'correlativ','maximovalor',12,'codmov'); //$this->numero=$gg->numero($this,'correlativ','maximovalor',7,'codocu'); //$campo : es el campo en el cual se va a sacar el valor maximo de la tabla segun u criterio o 2 segun se hayan // definido en los campos $campocriterio y $campocriterio2 //$campocriterio: El criterio WHERE que filtra a los valores de $campo //$campocriterio2: El criterio AND que filtra a los valores de $campo y where de $criterio $criteria = new CDbCriteria(); $criteria->select = 'max(' . $campo . ') AS ' . $aliascampo . ''; if (!is_null($campocriterio)) { $criteria->addCondition(" " . $campocriterio . "='" . $modelito->{$campocriterio} . "' "); } if (!is_null($campocriterio2)) { $criteria->addCondition(" " . $campocriterio2 . "='" . $modelito->{$campocriterio2} . "' "); } $row = $modelito->model()->find($criteria); ///el resultado de efectuar el maximo valor de la tabla $somevariable = is_null($row) ? 1 : $row[$aliascampo] + 1; //a esto se le agrega uno mas $modelito->{$campo} = gettype($modelito->{$campo}) == 'string' ? $somevariable . '' : $somevariable; if (!is_null($campocriterio)) { return $modelito->{$campocriterio} . str_pad($somevariable . '', $anchocampo, "0", STR_PAD_LEFT); } else { return str_pad($somevariable, $anchocampo, "0", STR_PAD_LEFT); } Yii::app()->end(); //return "0000000000".$somevariable; }
public function actionLike($id) { $ok = false; if (!Yii::app()->user->isGuest) { $criteria = new CDbCriteria(); $criteria->addCondition('song_id=' . $id); $criteria->addCondition('user_id=' . Yii::app()->user->id); $exist = LikeSong::model()->count($criteria); $msg = 'Bạn đã like rồi!'; if (!$exist) { $like = new LikeSong(); $like->song_id = $id; $like->user_id = Yii::app()->user->id; if ($like->save()) { $ok = true; $msg = 'Thank you!'; } } } else { $ok = false; $msg = 'Bạn cần phải đăng nhập!'; } header('Content-Type: application/json'); echo CJSON::encode(array('ok' => $ok, 'msg' => $msg)); }
/** * Lists all disorders for a given search term. */ public function actionAutocomplete() { if (Yii::app()->request->isAjaxRequest) { $criteria = new CDbCriteria(); $params = array(); if (isset($_GET['term']) && ($term = $_GET['term'])) { $criteria->addCondition('LOWER(term) LIKE :term'); $params[':term'] = '%' . strtolower(strtr($term, array('%' => '\\%'))) . '%'; } $criteria->order = 'term'; // Limit results $criteria->limit = '200'; if (@$_GET['code']) { if (@$_GET['code'] == 'systemic') { $criteria->addCondition('specialty_id is null'); } else { $criteria->join = 'join specialty on specialty_id = specialty.id AND specialty.code = :specode'; $params[':specode'] = $_GET['code']; } } $criteria->params = $params; $disorders = Disorder::model()->active()->findAll($criteria); $return = array(); foreach ($disorders as $disorder) { $return[] = array('label' => $disorder->term, 'value' => $disorder->term, 'id' => $disorder->id, 'is_diabetes' => Disorder::model()->ancestorIdsMatch(array($disorder->id), Disorder::$SNOMED_DIABETES_SET), 'is_glaucoma' => strpos(strtolower($disorder->term), 'glaucoma') !== false); } echo CJSON::encode($return); } }
public function actionClass() { $db = Yii::app()->db; $class_id = $_GET['id']; $classGuitar = ClassGuitar::model()->findByPk($class_id); $criteria = new CDbCriteria(); $criteria->addCondition('class_id=' . $class_id); $dataProvider = new CActiveDataProvider("Student", array('criteria' => $criteria)); $sql = "SELECT `day`,start_time FROM {{class_calendar}} WHERE class_id = {$class_id}"; $cmd = $db->createCommand($sql); $calendar = $cmd->queryRow(); /*$sql = "SELECT class_id FROM {{class_calendar}} WHERE day=".$calendar['day']." AND start_time = ".$calendar['start_time']." AND class_id <> ".$classGuitar->id; $cmd = $db->createCommand($sql); $dataReader = $cmd->query(); $ids = array(); foreach($dataReader as $item){ $ids[] = $item['class_id']; }*/ $data = array('classGuitar' => $classGuitar, 'students' => $dataProvider); $criteria2 = new CDbCriteria(); //$criteria2->addCondition('id IN ('.implode(',',$ids).")"); $criteria2->addCondition('cid =' . $classGuitar->cid); $criteria2->addCondition('id <>' . $classGuitar->id); $criteria2->addCondition('end_time < ' . time()); $dataProvider2 = new CActiveDataProvider("ClassGuitar", array('criteria' => $criteria2)); $data['relatedClass'] = $dataProvider2; $this->render('class', $data); }
protected function getHijos($url_id) { $dependencia = new CDbCacheDependency("SELECT GREATEST(MAX(micrositio.creado), MAX(micrositio.modificado)) FROM micrositio WHERE micrositio.estado <> 0"); $c = new CDbCriteria(); $c->addCondition('t.estado <> 0'); $c->addCondition('micrositios.estado > 1'); if ($url_id == 1) { $c->order = 'micrositios.creado DESC'; } else { $c->order = 't.nombre ASC'; } $seccion = Seccion::model()->cache(21600, $dependencia)->with('micrositios')->findByAttributes(array('url_id' => $url_id), $c); if ($seccion) { return $seccion->micrositios; } else { $c = new CDbCriteria(); $c->addCondition('t.estado > 1'); $c->addCondition('paginas.estado <> 0'); $c->order = 't.nombre DESC'; //$micrositio = Micrositio::model()->cache(21600, $dependencia)->with('paginas')->findByAttributes( array('url_id' => $url_id), $c ); if ($micrositio->seccion_id == 1) { return $micrositio->paginas; } } return false; }
public function getCriteria() { $criteria = new CDbCriteria(); $having = ''; $params = $with = $condition = []; if (!empty($this->address_name)) { $from_radius = (int) $this->address_radius; $radius = ($from_radius < 25 ? 25 : $from_radius) / 111.144; $lat = (double) $this->address_address_lat; $lng = (double) $this->address_address_long; $condition[] = "(address.lat BETWEEN '" . ($lat - $radius) . "' AND '" . ($lat + $radius) . "') \r\n AND (address.long BETWEEN '" . ($lng - $radius) . "' AND '" . ($lng + $radius) . "')\r\n AND SQRT(POW(" . $lat . "-address.lat,2)+POW(" . $lng . "-address.long,2)) <" . $radius; } if (!empty($condition)) { $with['address'] = ['joinType' => 'INNER JOIN', 'condition' => implode(' OR ', $condition)]; } if (!empty($this->name)) { $criteria->addCondition('t.name LIKE :name'); $params[':name'] = '%' . $this->name . '%'; } $with['user'] = ['with' => ['company']]; $criteria->addCondition('t.status=:status AND company.active = "1"'); $params[':status'] = 'active'; $criteria->with = $with; $criteria->params = $params; $criteria->having = $having; $criteria->order = 'store_call_id DESC'; return $criteria; }
public function run() { $params = array(); $criteria = new CDbCriteria(); // $criteria->select = array('id,username,fullname,phone,address,status'); $criteria->select = '*'; if (isset($this->course_id) and $this->course_id != '') { $criteria->addCondition('course_id=' . $this->course_id); } $criteria->addCondition('status=1'); $criteria->params = $params; $total = WCourseTrainee::model()->count($criteria); $offset = $this->limit * ($this->page - 1); $criteria->limit = $this->limit; $criteria->offset = $offset; $data = WCourseTrainee::model()->findAll($criteria); $listTrainee = array(); if (!empty($data)) { foreach ($data as $item) { $listTrainee[] = CJSON::decode(CJSON::encode($item->pls_user)); } } $data = $listTrainee; $pages = new CPagination($total); $pages->pageSize = $this->limit; $pages->applyLimit($criteria); $this->render($this->view, array('data' => $data, 'pages' => $pages)); }