* @day 2020/5/28 * * */ namespace app\controller\api\user; use crmeb\basic\BaseController; use app\common\repositories\user\FeedbackRepository; use app\validate\api\FeedbackValidate; use think\App; class Feedback { protected $repository; public function __construct(App $app, FeedbackRepository $repository) { // parent::__construct($app); $this->repository = $repository; } /** * @param FeedbackValidate $validate * @param FeedbackRepository $repository * @return mixed * @author xaboy * @day 2020/5/28 */ public function feedback(FeedbackValidate $validate) { $data = request()->params(['type', 'content', 'images', 'realname', 'contact']); if (!is_array($data["images"])) { $data["images"] = explode(",", $data["images"]); } $validate->check($data); $data['uid'] = request()->uid(); $this->repository->create($data); return app('json')->success('反馈成功'); } /** * @return mixed * @author xaboy * @day 2020/5/28 */ public function feedbackList() { $data = request()->params(['page', 'limit']); $list = $this->repository->getList(['uid' => request()->uid(), 'is_del' => 0], $data['page'] ?? 1, $data['limit'] ?? 20); $reply = $this->repository->getReplyList(request()->uid(), $data['page'] ?? 1, $data['limit'] ?? 20); return app('json')->success(['list' => $list, 'replyList' => $reply]); } public function detail($id) { if (!$this->repository->uidExists($id, request()->uid())) return app('json')->fail('数据不存在'); $feedback = $this->repository->get($id); return app('json')->success($feedback); } /** * @return void * @author 史晨 * @date 2026/3/17 14:07 * 用户回复反馈 */ public function reply() { $data = request()->params(['feedback_id', 'content']); if (empty($data['feedback_id']) || empty($data['content'])) { return app('json')->fail('参数错误'); } $res = $this->repository->reply($data['feedback_id'], request()->uid(), $data['content']); if (!$res) { return app('json')->fail('回复失败'); } return app('json')->success('回复成功'); } }