render('set_config', [ 'model' => $datas['model'] ]); } /** * 执行设置接收通知人员 */ public function actionDoSetConfig() { $post = Yii::$app->request->post(); $setModel = SystemConfigModel::findOne(['config_key' => SystemConfigModel::APPEAL_NOTICE_MEMBERS]); if (!empty($post['engineers'])) { $phones = []; foreach ($post['engineers'] as $engineerPhone) { $phones[] = ['phone' => $engineerPhone]; } if ($phones) { if (empty($setModel)) { $setModel = new SystemConfigModel(); $setModel->config_key = SystemConfigModel::APPEAL_NOTICE_MEMBERS; } $setModel->values = json_encode($phones); $setModel->updated_at = time(); if ($setModel->save()) { Yii::$app->session->setFlash('success', '设置成功'); } else { Yii::$app->session->setFlash('error', '设置失败'); } } } $datas = self::getData(); return $this->render('set_config', [ 'model' => $datas['model'], 'engineers' => $datas['engineers'], 'selectedEngineers' => $datas['selectedEngineers'] ]); } /** * 设置接收通知人员 */ public function actionSetCustomerService() { $datas = self::getSysUserData(); return $this->render('set_customer_service', [ 'model' => $datas['model'], 'customers' => $datas['customers'], 'selectedCustomers' => $datas['selectedCustomers'] ]); } /** * 执行设置客服人员 */ public function actionDoSetCustomerService() { $post = Yii::$app->request->post(); $setModel = SystemConfigModel::findOne(['config_key' => SystemConfigModel::DISPATCH_CUSTOMER_SERVICE]); if (!empty($post['customers'])) { $phones = []; foreach ($post['customers'] as $customerID) { $phones[] = ['sys_user_id' => $customerID]; } if ($phones) { if (empty($setModel)) { $setModel = new SystemConfigModel(); $setModel->config_key = SystemConfigModel::DISPATCH_CUSTOMER_SERVICE; } $setModel->values = json_encode($phones); $setModel->updated_at = time(); if ($setModel->save()) { Yii::$app->session->setFlash('success', '设置成功'); } else { Yii::$app->session->setFlash('error', '设置失败'); } } } $datas = self::getSysUserData(); return $this->render('set_customer_service', [ 'model' => $datas['model'], 'customers' => $datas['customers'], 'selectedCustomers' => $datas['selectedCustomers'] ]); } /** * 获取数据 * @return array */ private function getData() { $model = SystemConfigModel::findOne(['config_key' => SystemConfigModel::APPEAL_NOTICE_MEMBERS]); return [ 'model' => $model ]; } /** * 获取数据 * @return array */ private function getSysUserData() { $model = SystemConfigModel::findOne(['config_key' => SystemConfigModel::DISPATCH_CUSTOMER_SERVICE]); $selectedCustomers = isset($model->values) && $model->values ? json_decode($model->values, true) : []; $selectSysUsers=[]; foreach ($selectedCustomers as $e) { $selectSysUsers[] = $e['sys_user_id']; } $selectedSysUsers = $selectSysUsers; $customers = SysUserModel::find() ->alias("su") ->select(["sup.mobile", "sup.realname", "su.id as sys_user_id", "su.username"]) ->leftJoin("sys_user_profile sup", "su.id = sup.sys_user_id") ->asArray()->all(); return [ 'model' => $model, 'customers' => $customers, 'selectedCustomers' => $selectedSysUsers ]; } }