当前使用版本(必填,否则不予处理)
3.5.2
该问题是如何引起的?(确定最新版也有问题再提!!!)
不会提pr,在使用扩展默认mapper的方法时候,经常会出现需要查询已经逻辑删除的数据(关联业务数据回显) 在自己的类继承了com.baomidou.mybatisplus.core.injector.AbstractMethod以后 需要重写 com.baomidou.mybatisplus.core.injector.AbstractMethod#sqlWhereEntityWrapper方法
当前版本中需要copy方法改造,建议改造如下
protected String sqlWhereEntityWrapper(boolean newLine, TableInfo table) {
if (table.isWithLogicDelete()) {
//业务逻辑
}else{
//业务逻辑
}
}
希望改造增加一个方法可以后续继承的方法控制是否需要逻辑删除的标记
protected String sqlWhereEntityWrapper(boolean newLine, TableInfo table) {
sqlWhereEntityWrapper(newLine,table,table.isWithLogicDelete())
}
protected String sqlWhereEntityWrapper(boolean newLine, TableInfo table,boolean logicDeleteUse) {
if (logicDeleteUse) {
//业务逻辑
}else{
//业务逻辑
}
}
重现步骤(如果有就写完整)
报错信息
Comment From: miemieYaho
那你就不该用逻辑删除,应该用其他状态表示
Comment From: wuzl807924995
那你就不该用逻辑删除,应该用其他状态表示
很多历史原因: 老的数据改造成本,历史业务逻辑修改成本等等,现阶段我是copy了sqlWhereEntityWrapper实现的