request->param('token'); $param = $this->request->param(); if (!$token) { return $this->error('参数错误'); } // 参数验证 $validate = $this->validate($param, [ 'page' => 'number', 'limit' => 'number', ]); if (true !== $validate) { return $this->error($validate); } $user = Db::name('user') ->where('token', $token) ->find(); if(!$user){ return $this->error('该用户不存在'); } $query = Db::name('politics') ->field([ 'a.*','p.name AS user_group_name' ]) ->alias('a') ->join('user w','a.user_id = w.id','LEFT') ->join('user_group p','a.group_id = p.id','LEFT') ->where('a.user_id', $user['id']) ->where('a.deletetime', 'null') ->order('a.createtime', 'desc'); // 分页查询 $list = $query->paginate([ 'page' => $param['page'] ?? 1, 'list_rows' => $param['limit'] ?? 10, ]); // 处理返回数据 $data = [ 'total' => $list->total(), 'list' => $list->items(), ]; return $this->success('查询成功', $data); } public function add() { // 获取请求参数 $param = $this->request->param(); $token = $this->request->param('token'); if (!$token) { return $this->error('参数错误'); } $user = Db::name('user') ->where('token', $token) ->find(); if(!$user){ return $this->error('该用户不存在'); } // 数据验证规则 $validate = $this->validate($param, [ 'group_id' => 'require|number|>:0', 'politics_content' => 'require', 'politics_images' => 'max:65535', // 根据实际存储格式调整验证规则 'open_status' => 'in:1,2', ]); // 验证失败返回错误信息 if (true !== $validate) { return $this->error($validate); } // 构建插入数据(自动过滤非表字段) $data = [ 'group_id' => $param['group_id'], 'user_id' => $user['id'], 'politics_content' => $param['politics_content'], 'politics_images' => $param['politics_images'] ?? '', 'open_status' => $param['open_status'] ?? '1', // 默认匿名 'weigh' => 99, 'createtime' => date('Y-m-d H:i:s'), // 自动填充创建时间 'updatetime' => date('Y-m-d H:i:s'), // 自动填充更新时间 ]; $result = Db::name('politics')->insert($data); if ($result) { return $this->success('提交成功', ['id' => Db::name('politics')->getLastInsID()]); } else { return $this->error('提交失败'); } } }