request->isAjax) { $get = \Yii::$app->request->get(); $where = [ ['mall_id' => $this->mall_id], ['store_id' => $this->store_id], ['status' => [StatusEnum::ENABLED, StatusEnum::DISABLED]], ]; if (!empty($get['user_id'])) $where[] = ['user_id' => $get['user_id']]; $params = ['where' => $where, 'order' => 'id desc', 'with' => 'user']; $list = StoreClerk::listPage($params); if ($list === false) return $this->error(StoreClerk::getStaticError()); return $this->success('ok', $list); } return $this->render($this->action->id); } public function actionClerkLog() { if (Yii::$app->request->isAjax) { $get = \Yii::$app->request->get(); $where = [ ['mall_id' => $this->mall_id], ['store_id' => $this->store_id], ['status' => [StatusEnum::ENABLED, StatusEnum::DISABLED]], ]; if (!empty($get['clerk_id'])) $where[] = ['clerk_id' => $get['clerk_id']]; if (!empty($get['user_id'])) $where[] = ['user_id' => $get['user_id']]; if (!empty($get['order_no'])) $where[] = ['order_no' => $get['order_no']]; $params = ['where' => $where, 'order' => 'id desc', 'with' => 'user']; $list = StoreClerkLog::listPage($params); if ($list === false) return $this->error(StoreClerkLog::getStaticError()); return $this->success('ok', $list); } return $this->render($this->action->id); } public function actionEdit() { $params = Yii::$app->request->post(); $params['mall_id'] = $this->mall_id; $params['store_id'] = $this->store_id; $res = StoreClerk::findOne([ 'mall_id' => $this->mall_id, 'user_id' => $params['user_id'], 'status' => [StatusEnum::ENABLED, StatusEnum::DISABLED], 'store_id' => $this->store_id, ]); if (!empty($res)) return $this->error('该会员已是核销员'); $res = StoreClerk::setData($params); if ($res === false) return $this->error(StoreClerk::getStaticError()); return $this->success('操作成功'); } /** * @desc:修改状态 * @Author: hua * @Date: 2021/10/23 * @Time: 16:46 * @Copyright: copyright (c) 2021 广东七件事集团 * @return mixed|void */ public function actionSwitchStatus() { if (\Yii::$app->request->isAjax) { if (\Yii::$app->request->isPost) { $params = \Yii::$app->request->post(); $res = Yii::$app->services->validate->validate($params, [ [['id'], 'required'], [['status'], 'integer'] ]); if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage()); $params['mall_id'] = $this->mall_id; $params['store_id'] = $this->store_id; $res = StoreClerk::updateData($params); if ($res === false) return $this->error(StoreClerk::getStaticError()); return $this->success('操作成功'); } } return $this->error(); } /** * @desc:删除等级 * @Author: hua * @Date: 2021/10/23 * @Time: 16:46 * @Copyright: copyright (c) 2021 广东七件事集团 * @return mixed|void */ public function actionDelete() { if (\Yii::$app->request->isAjax) { if (\Yii::$app->request->isPost) { $params = \Yii::$app->request->post(); $res = Yii::$app->services->validate->validate($params, [ [['id'], 'required'], ]); if ($res === false) return $this->error(Yii::$app->services->validate->getErrorMessage()); $params['mall_id'] = $this->mall_id; $params['store_id'] = $this->store_id; $params['status'] = StatusEnum::DELETE; $res = StoreClerk::updateData($params); if ($res === false) return $this->error(StoreClerk::getStaticError()); return $this->success('操作成功'); } } return $this->error(); } /** * @desc: * @Author: hua * @Date: 2021/10/29 * @Time: 10:37 * @Copyright: copyright (c) 2021 广东七件事集团 * @return mixed|void */ //todo 不用验证权限,添加核销员搜索 public function actionSearchUser() { if (\Yii::$app->request->isAjax) { if (!\Yii::$app->request->isGet) return $this->error('请求方式错误'); $keyword = \Yii::$app->request->get('keyword'); $params = []; $where[] = ['mall_id' => $this->mall_id]; $where[] = ['store_id' => $this->store_id]; $where[] = ['status' => StatusEnum::ENABLED]; $list = StoreClerk::lists([ 'where'=>[ ['mall_id' => $this->mall_id], ['status' => [StatusEnum::ENABLED, StatusEnum::DISABLED]], ['store_id' => $this->store_id], // 需要区分门店ID ] ]); $have_user_id_arr = array_column($list,'user_id'); if (!empty($keyword)) { $user_list = User::lists([ 'where' => [ ['or', ['like', 'nickname', '%' . trim($keyword) . '%', false], ['like', 'mobile', '%' . trim($keyword) . '%', false], ['=', 'id', $keyword] ], ['mall_id' => $this->mall_id] ], 'select' => 'id', ]); $where[] = ['user_id' => array_column($user_list, 'id')]; $store = Store::findOne(['shop_mobile'=> trim($keyword),'id'=>$this->store_id,'mall_id'=>$this->mall_id,'status'=>[StatusEnum::ENABLED,StatusEnum::DISABLED]]); } $params['where'] = $where; $params['select'] = 'user_id'; $params['limit'] = 20; $list = StoreUser::lists($params); $list_data = []; if (!empty($list)) { $user_ids = array_column($list, 'user_id'); $user_list = User::lists(['where' => [['id' => $user_ids]], 'select' => 'id,nickname,avatar_url,mobile', 'index' => 'id']); foreach ($list as $k=>&$item) { if(in_array($item['user_id'],$have_user_id_arr)) continue; if (isset($user_list[$item['user_id']])) { if (!empty($user_list[$item['user_id']]['nickname'])) { $item['nickname'] = $user_list[$item['user_id']]['nickname']; } else { $item['nickname'] = $user_list[$item['user_id']]['mobile'] . "(id:" . $user_list[$item['user_id']]['mobile'] . ')'; } } $list_data[]=$item; } } if(isset($store)){ $user = User::getOne([['id' => $store['user_id']]],true,[],false,'id,nickname,avatar_url,mobile'); if (!empty($user['nickname'])) { $nickname = $user['nickname']; } else { $nickname= $user['mobile'] . "(id:" . $user['mobile'] . ')'; } $list_data[]=['nickname'=>$nickname, 'user_id'=>$store['user_id'],]; } return $this->success('操作成功', ['list' => $list_data]); } } }