| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128 |
- <?php
- namespace addons\BlindBox\backend\controllers;
- use addons\Agent\common\models\Agent;
- use addons\Agent\common\models\AgentLevel;
- use addons\BlindBox\common\models\BlindBoxGoods;
- use addons\BlindBox\common\models\BlindBoxUser;
- use common\enums\StatusEnum;
- use common\models\goods\Goods;
- use common\models\user\User;
- use Yii;
- use common\controllers\AddonsController;
- /**
- * 默认控制器
- *
- * Class DefaultController
- * @package addons\BlindBox\backend\controllers
- */
- class DefaultController extends BaseController
- {
- /**
- * 首页
- *
- * @return string
- */
- public function actionIndex()
- {
- return $this->render('index', [
- ]);
- }
- public function actionUserList()
- {
- if (\Yii::$app->request->isAjax) {
- if (\Yii::$app->request->isGet) {
- $params = \Yii::$app->request->get();
- $user_id_arr = [];
- $is_search = 0;
- if (!empty($params['user_id'])){
- $is_search = 1;
- $user_id_arr[]=$params['user_id'];
- }
- if (!empty($params['keyword'])) {
- $is_search = 1;
- $user_list = User::lists(['where'=>[['mall_id'=>$this->mall_id],[
- 'or',
- ['like', 'username', $params['keyword']],
- ['like', 'nickname', $params['keyword']],
- ['like', 'mobile', $params['keyword']]
- ]],'select'=>'id']);
- $user_ids = array_column($user_list,'id');
- if(!empty($user_id_arr)){
- $user_id_arr = array_intersect($user_id_arr,$user_ids);
- }else{
- $user_id_arr = $user_ids;
- }
- }
- if($is_search)$params['where'][] = ['in', 'user_id', $user_id_arr];
- $params['where'][] = ['=', 'mall_id',$this->mall_id];
- $params['where'][] = ['in', 'status', [StatusEnum::ENABLED, StatusEnum::DISABLED]];
- $params['limit'] = 10;
- $params['order'] = 'id DESC';
- $pageData = BlindBoxUser::listPage($params, false);
- if ($pageData === false) return $this->error(Agent::getStaticError());
- if(!empty($pageData['list'])){
- $user_id_arr = array_column($pageData['list'],'user_id');
- $user_list = User::lists(['where'=>[['id'=>$user_id_arr]],'select'=>'id,nickname,avatar_url,mobile']);
- $user_arr = [];
- foreach ($user_list as $item){
- $user_arr[$item['id']] = $item;
- }
- foreach ($pageData['list'] as &$v) {
- $v['nickname'] = $v['avatar_url'] = $v['mobile'] = '';
- if (isset($user_arr[$v['user_id']])) {
- $v['mobile'] = $user_arr[$v['user_id']]['mobile'];
- $v['nickname'] = $user_arr[$v['user_id']]['nickname'];
- $v['avatar_url'] = $user_arr[$v['user_id']]['avatar_url'];
- }
- }
- }
- return $this->success('操作成功', $pageData);
- }
- }
- return $this->render('user-list', [
- ]);
- }
- //获取商品列表,添加活动使用,不用验证权限
- public function actionGoodsList()
- {
- $request = Yii::$app->request;
- if ($request->isAjax) {
- //商品列表筛选
- $params = Yii::$app->request->get();
- // 排序
- $blind_box_goods_list = BlindBoxGoods::findAll([
- 'mall_id' => $this->mall_id,
- 'status' => [StatusEnum::ENABLED, StatusEnum::DISABLED],
- ]);
- $goods_id_arr = array_column($blind_box_goods_list, 'goods_id');
- $where = [
- ['mall_id' => $this->mall['id']],
- ['status' => [StatusEnum::ENABLED]],
- ['is_on_sale' => 1],
- ];
- if (isset($params['keyword'])){
- $where[] = [
- 'or',
- ['like', 'goods_name', trim($params['keyword']) . '%', false],
- ['=', 'id', trim($params['keyword'])]
- ];
- }
- $where[] = ['not in', 'id', $goods_id_arr];
- $params['where'] = $where;
- $params['order'] = 'sort ASC,id DESC';
- $page_data = Goods::getGoodsList($params, true, false);
- if ($page_data === false) return $this->error(Goods::getStaticError());
- return $this->success('操作成功', $page_data);
- }
- return $this->render($this->action->id);
- }
- }
|