model = new \app\admin\model\FcComment; } /** * 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法 * 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑 * 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改 */ /** * 回复评价 */ public function reply() { $ids = $this->request->post('ids'); $reply = $this->request->post('reply'); if (trim((string)$reply) === '') { $this->error('回复内容不能为空'); } $ids = is_array($ids) ? $ids : explode(',', (string)$ids); $ids = array_filter($ids); if (!$ids) { $this->error('请选择要回复的评价'); } $comments = Db::name('fc_comment')->where('id', 'in', $ids)->select(); if (!$comments) { $this->error('评价不存在'); } foreach ($comments as $comment) { Db::name('fc_comment')->where('id', $comment['id'])->update([ 'reply' => $reply, 'replytime' => time(), 'updatetime' => time(), ]); Db::name('fc_message')->insert([ 'user_id' => $comment['user_id'], 'type' => 'interact', 'title' => '评价回复', 'content' => '您的评价已收到回复:' . $reply, 'isread' => 0, 'createtime' => time(), ]); } $this->success('回复成功'); } /** * 评价置顶/取消置顶 */ public function top() { $ids = $this->request->post('ids'); $top = (int)$this->request->post('top'); if (!in_array($top, [0, 1])) { $this->error('置顶状态错误'); } $ids = is_array($ids) ? $ids : explode(',', (string)$ids); $ids = array_filter($ids); if (!$ids) { $this->error('请选择要操作的评价'); } Db::name('fc_comment')->where('id', 'in', $ids)->update([ 'top' => $top, 'updatetime' => time(), ]); $this->success($top === 1 ? '置顶成功' : '取消置顶成功'); } }