package com.example.jz.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.api.ApiController; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.example.jz.modle.R; import com.example.jz.modle.dto.AddReportDto; import com.example.jz.modle.dto.ReportParamDto; import com.example.jz.modle.entity.Report; import com.example.jz.modle.vo.ReportListVo; import com.example.jz.service.ReportService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletResponse; import java.io.Serializable; import java.util.Date; /** * 报案表(Report)表控制层 * * @author 安瑾然 * @since 2022-07-13 11:52:58 */ @RestController @RequestMapping("report") @Api(value = "案件区-案件人员", tags = "案件区-案件人员") public class ReportController extends ApiController { /** * 服务对象 */ @Resource private ReportService reportService; /** * 分页查询所有数据 * * @param page 分页对象 * @param reportParamDto 查询实体 * @return 所有数据 */ @GetMapping @ApiOperation(value = "分页查询所有数据") public R> selectAll(Page page, ReportParamDto reportParamDto) { return R.ok(reportService.getPage(page, reportParamDto)); } /** * 通过主键查询单条数据 * * @param id 主键 * @return 单条数据 */ @GetMapping("{id}") @ApiOperation(value = "通过主键查询单条数据") public R selectOne(@PathVariable Serializable id) { return R.ok(reportService.getReportListVoById(id)); } /** * 报案 * * @param AddReportDto 实体对象 * @return 新增结果 */ @PostMapping @ApiOperation(value = "报案") public R insert(@RequestBody AddReportDto addReportDto) { return R.ok(reportService.addReport(addReportDto)); } /** * 审核通过并且关联案件id * * @param report 实体对象 * @return 修改结果 */ @PostMapping("/audit") @ApiOperation(value = "审核通过") public R audit(@RequestBody Report report) { return R.ok(reportService.audit(report)); } @ApiOperation(httpMethod = "PUT", value = "案件台-报案人员-编辑") @PutMapping("/updateReport") @ApiResponse(message = "执行成功", code = 200) public R updateReport(@RequestBody Report report) { reportService.updateById(report); return R.ok(); } @ApiOperation(httpMethod = "DELETE", value = "案件台-报案人员-退群") @DeleteMapping("/leaveGroup") @ApiResponse(message = "执行成功", code = 200) public R leaveGroup(@RequestParam(value = "id") Integer id, @RequestParam(value = "groupId") Integer groupId) { reportService.leaveGroup(id, groupId); return R.ok(); } @ApiOperation(httpMethod = "DELETE", value = "案件台-报案人员-删除") @DeleteMapping("/deleteReporter") @ApiResponse(message = "执行成功", code = 200) public R deleteReporter(@RequestParam(value = "id") Integer id) { reportService.removeById(id); return R.ok(); } @ApiOperation(httpMethod = "POST", value = "案件台-报案人员-报案材料导出") @PostMapping("/exportReporter") @ApiResponse(message = "执行成功", code = 200) public void exportReport(@RequestParam(value = "id") Integer id, HttpServletResponse response) { reportService.exportReporter(id, response); } }