public static function getOrderlist($params) { $payment = $params['Payment']; $BuyerName = $params['BuyerName']; $Status = $params['Status']; $EvaStatus = $params['EvaStatus']; $OrderSN = $params['search_text']; $starttime = $params['starttime']; $endtime = $params['endtime']; $pageSize = $params['pageSize'] ? $params['pageSize'] : 10; $criteria = new CDbCriteria(); $criteria->order = "t.CreateTime desc"; $criteria->condition = "t.SellerID = {$params['OrganID']} and t.IsDelete=0"; //订单类型 if ($payment && in_array($payment, array(1, 2))) { $criteria->addCondition("t.Payment = {$payment}", "AND"); } //买家查询 if ($BuyerName) { $BuyerName = EvaluateService::checkKey(urldecode($BuyerName)); $model = self::getOrgan(array('OrganName' => $BuyerName)); $idArr = array(); foreach ($model as $v) { $idArr[] = $v->ID; } $criteria->addInCondition("t.BuyerID", $idArr); } //订单状态 if ($Status && in_array($Status, array(1, 2, 3, 5, 9, 10))) { if ($Status == 5) { $criteria->addCondition("t.Status = 3 and t.ReturnStatus!=0", "AND"); } else { if ($Status == 3) { $criteria->addCondition("t.Status = 3 and t.ReturnStatus=0", "AND"); } else { $criteria->addCondition("t.Status = {$Status}", "AND"); } } } else { if ($params['SendStatus']) { $criteria->addCondition("t.Status in(1,2)", "AND"); } } //订单评价 if ($EvaStatus && $EvaStatus == 1) { $criteria->addCondition("t.EvaStatus in(0,15) and t.Status=9", "AND"); } else { if ($EvaStatus == 2) { $criteria->addCondition("t.EvaStatus in(16,20) and t.Status=9", "AND"); } } //订单号 if ($OrderSN) { $OrderSN = EvaluateService::checkKey(urldecode($OrderSN)); $criteria->addCondition("t.OrderSN like '%{$OrderSN}%'"); } //下单时间 if ($starttime && $endtime) { $criteria->addCondition("t.CreateTime > {$starttime} and t.CreateTime < {$endtime}+3600*24", 'AND'); } else { if ($starttime) { $criteria->addCondition("t.CreateTime > {$starttime}", 'AND'); } else { if ($endtime) { $criteria->addCondition("t.CreateTime < {$endtime}+3600*24", 'AND'); } } } $data = new CActiveDataProvider('PapOrder', array('criteria' => $criteria, 'pagination' => array('pageSize' => $pageSize))); $datas = $data->getData(); foreach ($datas as $vv) { foreach ($vv->goodsinfo as $v) { $v = self::getVersionGoods($v); } } $data->setData($datas); return $data; }