shop_id=$this->storeId?:Store::getMainStore($this->wqData['uniacid'])['id']; $this->shop_id=$this->shop_id?:0; } //评价列表 public function actionCommentList(){ $uniacid = $this->wqData['uniacid']; $result=axios_request(); $storeId=$result['storeId']?:$this->shop_id; $page=$result['page']?:1; $star=$result['star']; $timeType=$result['timeType']; $keyword=$result['keyword']; $timeArr=empty($timeType) ? false : $this->timeArr[$timeType]; $num=($page-1)*10; $limit=10; $data= (new \yii\db\Query()) ->select('a.star,a.id,a.body,b.portrait,b.userName,from_unixtime(a.createdAt)createdAt,a.reply,a.state,a.media,b.id userId') ->from('{{%ybwm_comment}} a') ->leftJoin('{{%ybwm_member}} b','a.userId=b.id') ->where(['a.deleteAt'=>0,'a.storeId'=>$storeId,'a.uniacid'=>$uniacid]); if($star==1){ $data->andWhere('a.star>3'); } if($star==2){ $data->andWhere('a.star=3'); } if($star==3){ $data->andWhere('a.star<3'); } if($timeArr){ $data->andWhere('a.createdAt>=:startTime AND a.createdAt<=:endTime',[':startTime'=>$timeArr['startTime'],':endTime'=>$timeArr['endTime']]); } if($keyword){ $data->andWhere(['or',['like','b.userName',$keyword],['like','a.outTradeNo',$keyword],['like','b.userTel',$keyword]]); } // echo ddSql($data->offset($num) // ->limit($limit));die; $count=$data->count(); $res=$data->offset($num)->orderBy('id desc') ->limit($limit) ->all(); for($i=0;$iselect(['sum(if(star>3,1,0)) as good','sum(if(star=3,1,0)) as middle', 'sum(if(star<3,1,0)) as difference','TRUNCATE(avg(star),1) as average']) ->from('{{%ybwm_comment}}') ->where(['deleteAt'=>0,'state'=>2,'storeId'=>$storeId])->one(); $commentStatistics=(new \yii\db\Query()) ->from('{{%ybwm_comment}}') ->where(['deleteAt'=>0,'storeId'=>$storeId]); $list['average']=$starStatistics['average']; $list['good']=$starStatistics['good']; $list['goodStar']=sprintf("%.1f",(clone $commentStatistics)->andWhere('star>3')->average('star')?:0); $list['middle']=$starStatistics['middle']; $list['middleStar']=sprintf("%.1f",(clone $commentStatistics)->andWhere('star=3')->average('star')?:0); $list['difference']=$starStatistics['difference']; $list['differenceStar']=sprintf("%.1f",(clone $commentStatistics)->andWhere('star<3')->average('star')?:0); return $this->result(1,'成功',$list,$count); } //修改评价 public function actionModifyComment(){ $result=axios_request(); if($result['type']==1){ //通过 $data['state']=2; } if($result['type']==2){ //拒绝 $data['state']=3; } if($result['type']==3){ //回复 $data['reply']=$result['reply']; } if($result['type']==4){ //删除 $data['deleteAt']=time(); } $data['changeAt']=time(); $res = Yii::$app->db->createCommand()->update('{{%ybwm_comment}}', $data, 'id=:id', ['id' =>$result['id']])->execute(); if($res){ return $this->result(1,'成功'); }else{ return $this->result(2,'网络异常,请稍后再试'); } } //标签列表 public function actionLabelList(){ $result=axios_request(); $storeId=$result['storeId']?:$this->shop_id; $page=$result['page']?:1; $num=($page-1)*10; $limit=10; $table=(new \yii\db\Query()) ->from('{{%ybwm_core_category}}') ->where(['item'=>14,'deleteAt'=>0,'uniacid'=>$this->wqData['uniacid'],'storeId'=>$storeId]); $list=$table->offset($num) ->limit($limit)->orderBy('id desc')->all(); $count=$table->count(); return $this->result(1, '成功',$list,$count); } //保存标签 public function actionSaveLabel(){ $result=axios_request(); $request = Yii::$app->request; $uniacid=$this->wqData['uniacid']; $storeId=$result['storeId']?:$this->shop_id; if($request->isGet){ $info=(new \yii\db\Query()) ->from('{{%ybwm_core_category}}') ->where('id=:id',[':id'=>$result['id']])->one(); return $this->result(1, '成功',$info); } if(!$result['name']){ return $this->result(2,'标签名称不能为空!'); } $data['name']=$result['name']; $data['sort']=$result['sort']; $data['item']=14; $data['storeId']=$storeId; if($result['id']){ $data['changeAt']=time(); $re = Yii::$app->db->createCommand()->update('{{%ybwm_core_category}}', $data, 'id=:id', ['id' =>$result['id']])->execute(); }else{ $data['uniacid']=$uniacid; $data['createdAt']=time(); // print_R($data);die; try{ $re = Yii::$app->db->createCommand()->insert('{{%ybwm_core_category}}', $data)->execute(); }catch (\Exception $e){ print_R($e);die; } } if($re){ return $this->result(1,'成功'); }else{ return $this->result(2,'网络异常,请稍后再试'); } } //修改标签 public function actionModifyLabel(){ $post=axios_request(); if($post['type']==1){ //显示隐藏 $data['display']=$post['display']; } if($post['type']==2){ //删除 $data['deleteAt']=time(); } $data['changeAt']=time(); $res = Yii::$app->db->createCommand()->update('{{%ybwm_core_category}}', $data, 'id=:id', ['id' =>$post['id']])->execute(); if($res){ return $this->result(1,'成功'); }else{ return $this->result(2,'网络异常,请稍后再试'); } } }