问题:项目要求数据权限配置查询,全部、自定义、部门、部门及下级部门、个人。要求做统一处理。分析:数据权限精确到个人。那么每张表里面都要有创建人字段。每次插入数据都要保存创建人。查询的时候才能区分。mybatis-plus统一处理创建时间,创建人,更新时间,更新人:统一处理创建人查询的时候每个查询加条件代码太复杂。所以sql加统一处理例: SELECT %s FROM (%s) temp_data_scope WHERE temp_data_scope.%s IN (%s) 第一个%s:要查询的字段第二个%s:sql语句例:select * from user第三个%s:条件字段,从 第二个%s里面挑选第四个%s:查询的值
具体实现:
创建一个公共的entity实体类,所有的实体类继承这个类,当然你的表里面要有相应的字段
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import java.time.LocalDateTime;
/**
* 父级实体-公共属性
* @param
*/
@Data
@Accessors(chain = true)
public class OkayxBaseEntity |