render('live'); } /** * 直播管理数据 * @return mixed */ public function actionLiveform() { $model = new Live(); $rows = $model->getList(Yii::$app->request->post()); if ($rows != null) { foreach ($rows as &$val) { $val['create_at'] = date('Y-m-d H:i', $val['create_at']); } return Help::JsonData(0, Yii::t('app', 'get_success'), $model->Total(Yii::$app->request->post()), $rows); } return Help::JsonCode(Help::ERROR, Yii::t('app', 'get_error')); } /** * 直播管理添加页面 * @return string */ public function actionLiveadd() { $city = $this->City(); return $this->render('liveadd', ['city' => $city]); } /** * 直播管理添加数据 * @return mixed */ public function actionLiveaddform() { $input = Yii::$app->request->post(); $model = new Live(); $model->scenario = 'add'; if (is_object($model)) { if ($model->load($input, '') && $model->save()) return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'add_success')); } return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'add_error'), $model->errors); } /** * 直播管理修改页面 * @return string */ public function actionLiveedit() { $model = new Live(); $input = Yii::$app->request->get(); $row = $model::findOne($input['id']); if ($row != null) { $city = $this->City(); return $this->render('liveedit', ['model' => $row, 'city' => $city]); } } /** * 直播管理修改数据 * @return mixed */ public function actionLiveeditform() { $input = Yii::$app->request->post(); $model = new Live(); if (!empty($input)) { $row = $model::findOne($input['id']); if ($row != null) { if ($row->load($input, '') && $row->save(false)) return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'edit_success')); } } return Help::JsonCode(Help::ERROR, Yii::t('app', 'edit_error'), $row->errors); } /** * 直播管理删除 * @return mixed */ public function actionSetlive() { $model = new Live(); $input = Yii::$app->request->post(); $row = $model::findOne($input['id']); if ($row != null) { switch ($input['type']) { case 'del': if ($row->delete()) return Help::JsonCode(Help::SUCCESS, '删除成功'); break; case 'sort': if (is_numeric($input['sort'])) { $row->sort = $input['sort']; } break; } if ($row->save(false)) return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'edit_success')); } return Help::JsonCode(Help::ERROR, '操作失败'); } /** * 选择区域 * @return mixed */ private function City() { $city = CategoryCity::find()->select(['id', 'city_name']) ->andWhere(['del' => 1, 'state' => 1, 'pid' => 0]) ->orderBy(['sort' => SORT_DESC])->asArray()->all(); if (!empty($city)) { foreach ($city as &$val) { $val['son'] = CategoryCity::find()->select(['id', 'city_name']) ->andWhere(['del' => 1, 'state' => 1, 'pid' => $val['id']]) ->orderBy(['sort' => SORT_DESC])->asArray()->all(); } } return $city; } //直播评论页面 public function actionLiveremark() { $lmodel = new \common\models\Live(); $data = $lmodel::findOne(Yii::$app->request->get('id')); return $this->render('liveremark', ['liveremark_check' => $data['remark_check'], 'live_id' => $data['id']]); } //直播评论数据 public function actionLiveremarkform() { $input = Yii::$app->request->post(); // p($input);die; $rmodel = new \common\models\LiveRemark(); $rmodel->is_show = 1; $data = $rmodel->getList($input); if (!empty($data['data'])) { return Help::JsonData(0, Yii::t('app', 'get_success'), $data['count'], $data['data']); } return Help::JsonCode(Help::ERROR, Yii::t('app', 'get_error')); //TOO } //开启人工验证后的评论数据 public function actionCheckstart() { $input = Yii::$app->request->post(); if (empty($input['returntime'])) exit(); set_time_limit(0);//无限请求超时时间 $startTime = time(); while (true) { sleep(1); // usleep(5000000);//0.5秒 //若得到数据则马上返回数据给客服端,并结束本次请求 $rmodel = new \common\models\LiveRemark(); $rmodel->is_show = 2; $data = $rmodel->getList($input); if ($data['count'] - $input['oldcount'] > 0) { $input['oldcount'] == 0 ? $data['data'] = array_slice($data['data'], 0) : $data['data'] = array_slice($data['data'], 0, -$input['oldcount']); // $data['data'] = array_slice($data['data'],0,-$input['oldcount']); // p($data);die; return Help::JsonCode(Help::SUCCESS, '加载成功', $data); } //服务器($_POST['time']*0.5)秒后告诉客服端无数据 if (time() - $startTime >= $input['returntime']) { return Help::JsonCode(Help::ERROR, '暂无数据', ''); } } } //修改人工审核 public function actionAllremarkcheck() { $input = Yii::$app->request->post(); $lmodel = new \common\models\Live(); $data = $lmodel::findOne($input['id']); if (!empty($data)) { $data->remark_check = $input['state']; if ($data->save(false)) return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'edit_success')); } return Help::JsonCode(Help::ERROR, Yii::t('app', 'edit_error')); } //官方主持人发送 initiator 1、游客发送 2、官方发送 public function actionComperesend() { $input = Yii::$app->request->post(); $input['is_show'] = 2; $input['initiator'] = 1; $lrmodel = new \common\models\LiveRemark(); $lrmodel->load($input, ''); if ($lrmodel->validate() && $lrmodel->save()) { return Help::JsonCode(Help::SUCCESS, Yii::t('app', 'add_success')); } return Help::JsonCode(Help::ERROR, Yii::t('app', 'add_error')); } }