| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- <?php
- /**
- * 重庆赤晓店信息科技有限公司
- * https://www.chixiaodian.com
- * Copyright (c) 2023 赤店商城 All rights reserved.
- */
- namespace app\modules\client\models\v1\worker;
- use app\models\User;
- use app\modules\client\models\ApiModel;
- use Exception;
- use app\models\WorkerOrderExt;
- use app\models\OrderComment;
- use app\models\OrderDetail;
- use app\models\SaasUser;
- class AdminForm extends ApiModel
- {
- public $store_id;
- public $worker_id;
- public $user_id;
- public $name;
- public $score;
- public $begin;
- public $end;
- public $orderby;
- public function commentList()
- {
- $worker_id = $this->worker_id;
- $score = $this->score;
- $name = $this->name;
- $orderby = $this->orderby;
- $begin = $this->begin;
- $end = $this->end;
- $queryOrder = WorkerOrderExt::find()->where(['worker_id' => $worker_id])->select('order_id');
- $query = OrderComment::find()->alias('oc')->leftJoin([
- 'woe' => WorkerOrderExt::tableName()
- ], 'oc.order_id = woe.order_id')->leftJoin([
- 'od' => OrderDetail::tableName()
- ], 'oc.order_id = od.order_id')->leftJoin([
- 'u' => User::tableName()
- ], 'oc.user_id = u.id')->leftJoin([
- 'su' => SaasUser::tableName()
- ], 'su.mobile = u.binding')->where([
- 'oc.order_id' => $queryOrder,
- 'oc.is_hide' => 0,
- 'oc.is_delete' => OrderComment::IS_DELETE_FALSE,
-
- ])->groupBy('oc.id');
- if($name){
- $query->andWhere(['like', 'od.goods_name', $name]);
- }
- if($score > 0){
- if($score == 3){
- $query->andWhere(['>=', 'oc.score', $score]);
- }else{
- $query->andWhere(['oc.score' => $score]);
- }
- }
- if($begin){
- $query->andWhere(['>=', 'oc.created_at', $begin]);
- }
- if($end){
- $query->andWhere(['<=', 'oc.created_at', $end]);
- }
- $queryOrderBy = 'oc.id DESC';
- if($orderby == 1){
- $queryOrderBy = 'oc.id DESC';
- }else if($orderby == 2){
- $queryOrderBy = 'oc.id ASC';
- }
- $query->orderBy($queryOrderBy);
- $query->select('oc.*, od.goods_name, su.name su_name, su.avatar su_avatar');
- $data = pagination_make($query);
- foreach($data['list'] as &$item){
- $item['pic_list'] = json_decode($item['pic_list']);
- if (intval($item['is_virtual'])) {
- $item['su_name'] = $item['virtual_user'];
- $item['su_avatar'] = $item['virtual_avatar'];
- }
- }
- $res = [
- 'code' => 0,
- 'msg' => 'success',
- 'data' => $data,
- ];
- return $res;
- }
- }
|