Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
S
schbrain-parent
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Incidents
Environments
Packages & Registries
Packages & Registries
Package Registry
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
framework
schbrain-parent
Commits
e1f5d54c
Commit
e1f5d54c
authored
May 31, 2023
by
liaozan
🏀
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fix AlwaysUpdateSomeColumnById
parent
7d30e603
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
11 additions
and
11 deletions
+11
-11
starters/mybatis-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/mybatis/sql/injector/DefaultMethodSqlInjector.java
...figure/mybatis/sql/injector/DefaultMethodSqlInjector.java
+11
-11
No files found.
starters/mybatis-spring-boot-starter/src/main/java/com/schbrain/framework/autoconfigure/mybatis/sql/injector/DefaultMethodSqlInjector.java
View file @
e1f5d54c
...
...
@@ -6,13 +6,16 @@ import com.baomidou.mybatisplus.core.injector.methods.*;
import
com.baomidou.mybatisplus.core.metadata.TableInfo
;
import
com.baomidou.mybatisplus.extension.injector.methods.AlwaysUpdateSomeColumnById
;
import
com.google.common.collect.Lists
;
import
com.schbrain.framework.autoconfigure.mybatis.constant.MybatisConstants
;
import
com.schbrain.framework.autoconfigure.mybatis.sql.method.Delete
;
import
com.schbrain.framework.autoconfigure.mybatis.sql.method.DeleteBatchByIds
;
import
com.schbrain.framework.autoconfigure.mybatis.sql.method.DeleteById
;
import
com.schbrain.framework.autoconfigure.mybatis.sql.method.DeleteByMap
;
import
lombok.extern.slf4j.Slf4j
;
import
java.util.List
;
import
java.util.Set
;
import
static
com
.
schbrain
.
framework
.
autoconfigure
.
mybatis
.
constant
.
MybatisConstants
.*;
/**
* @author liaozan
...
...
@@ -22,13 +25,10 @@ import java.util.List;
public
class
DefaultMethodSqlInjector
extends
AbstractSqlInjector
{
/**
* <ul>
* <li>replace {@link com.baomidou.mybatisplus.core.injector.methods.Delete} to {@link Delete}</li>
* <li>replace {@link com.baomidou.mybatisplus.core.injector.methods.DeleteById} to {@link com.schbrain.framework.autoconfigure.mybatis.sql.method.DeleteById}</li>
* <li>replace {@link com.baomidou.mybatisplus.core.injector.methods.DeleteByMap} to {@link DeleteByMap}</li>
* <li>replace {@link com.baomidou.mybatisplus.core.injector.methods.DeleteBatchByIds} to {@link DeleteBatchByIds}</li>
* </ul>
* 更新时忽略的字段
*/
private
static
final
Set
<
String
>
FIELDS_TO_IGNORE_WHEN_UPDATE
=
Set
.
of
(
CREATE_TIME
,
MODIFY_TIME
,
DELETE_VERSION
);
@Override
public
List
<
AbstractMethod
>
getMethodList
(
Class
<?>
mapperClass
,
TableInfo
tableInfo
)
{
List
<
AbstractMethod
>
methodList
=
Lists
.
newArrayListWithExpectedSize
(
20
);
...
...
@@ -44,16 +44,16 @@ public class DefaultMethodSqlInjector extends AbstractSqlInjector {
methodList
.
add
(
new
SelectList
());
methodList
.
add
(
new
SelectPage
());
if
(
tableInfo
.
havePK
())
{
methodList
.
add
(
new
com
.
schbrain
.
framework
.
autoconfigure
.
mybatis
.
sql
.
method
.
DeleteById
());
methodList
.
add
(
new
DeleteById
());
methodList
.
add
(
new
DeleteBatchByIds
());
methodList
.
add
(
new
UpdateById
());
methodList
.
add
(
new
AlwaysUpdateSomeColumnById
(
field
->
!
field
.
getColumn
().
equals
(
MybatisConstants
.
DELETE_VERSION
)));
methodList
.
add
(
new
AlwaysUpdateSomeColumnById
(
field
->
!
FIELDS_TO_IGNORE_WHEN_UPDATE
.
contains
(
field
.
getColumn
()
)));
methodList
.
add
(
new
SelectById
());
methodList
.
add
(
new
SelectBatchByIds
());
}
else
{
log
.
warn
(
"{}
,
Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method."
,
tableInfo
.
getEntityType
());
log
.
warn
(
"{} Not found @TableId annotation, Cannot use Mybatis-Plus 'xxById' Method."
,
tableInfo
.
getEntityType
());
}
return
methodList
;
}
}
\ No newline at end of file
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment