后台管理CRUD自测注意事项
- 如business为配置项,则insert/update/delete需要考虑是否要进行更新缓存操作;
- 时间属性(示例LocalDateTime等)取值为空,在update时需要注意mybatis plus在updateById操作将无法赋值字段取值为空(前端非必填项以及必填项的区别所导致的问题,存在必填项则不会出现值为空的情况,否则反之);
- insert/update/delete操作时需要和前端统一约定响应码(异常响应码需要另取);
- 考虑删除废弃数据有两种做法(1逻辑删除 2物理删除),如果废弃数据有和其他的表数据进行关联,或者删除数据有存在需要历史展示的地方则需要进行逻辑删除;
- insert/update操作时,需要考虑字段属性的取值长度(字数限制)/取值规范/非空限制(要与原型对应上)/提示前端响应文等;
- insert/update操作时,如果字段为小数类型(decimal(10,8))这种,则需要考虑小数后的位数如何处理(进位/舍位/截断);
- insert/update操作时,需要考虑如果某些值为空/空字符串/多个空格字符串是否对app端视觉造成影响,前端对空字符串的处理是否要处理为null上送给后端/后端对空字符串的处理是否要处理为null上送给数据库(结合app视觉考虑);
- 分页时需要注意前端传参PageQuery中pageSize超过100则默认pageSize为100;
- 分页导出时需要注意第二页导出时的pageIndex是否正确;
- 后端对参数的校验不仅仅是程序上的校验,还有业务上的校验(程序校验可空/空字符串,但业务上不存在这种取值参数);