CRUD 示例(PMS)
Controller 风格对齐示例
@RestController
@RequestMapping("/projectReport")
@Api(tags = "项目周报控制器")
public class ProjectReportController {
@Resource
private ProjectReportService projectReportService;
@ApiOperation("添加项目周报")
@PostMapping("/save")
public boolean save(@RequestBody ProjectReport projectReport) {
return projectReportService.save(projectReport);
}
@ApiOperation("分页查询")
@PostMapping("/page")
public Page<ProjectReport> page(@RequestBody ProjectReportPageQuery query) {
return projectReportService.pageQuery(query);
}
}
Mapper + XML 约束示例
public interface ProjectReportMapper extends BaseMapper<ProjectReport> {
Page<ProjectReportVO> pageCustom(Page<ProjectReportVO> page, @Param("q") ProjectReportPageQuery query);
}
<mapper namespace="com.tofly.pms.supervise.mapper.ProjectReportMapper">
<select id="pageCustom" resultType="com.tofly.pms.supervise.vo.ProjectReportVO">
SELECT id, report_id, project_id, create_time
FROM project_report
<where>
<if test="q != null and q.projectId != null">
AND project_id = #{q.projectId}
</if>
</where>
</select>
</mapper>
反例
// 错误:不要在 Mapper 注解里写 SQL
@Select("select * from project_report")
List<ProjectReport> listAll();