From a244b0bc08e9175fd58d68ff4a1730c750d4af5d Mon Sep 17 00:00:00 2001 From: Suomm <1474983351@qq.com> Date: Tue, 4 Jul 2023 10:42:43 +0800 Subject: [PATCH] =?UTF-8?q?fixed=20e903b9e=20from=20https://gitee.com/Suom?= =?UTF-8?q?m/mybatis-flex/pulls/105=20feat:=20=E6=B7=BB=E5=8A=A0=20updateN?= =?UTF-8?q?umberAddByQuery=20=E9=87=8D=E8=BD=BD=E6=96=B9=E6=B3=95=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../main/java/com/mybatisflex/core/BaseMapper.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/mybatis-flex-core/src/main/java/com/mybatisflex/core/BaseMapper.java b/mybatis-flex-core/src/main/java/com/mybatisflex/core/BaseMapper.java index f5328358..a72ad182 100644 --- a/mybatis-flex-core/src/main/java/com/mybatisflex/core/BaseMapper.java +++ b/mybatis-flex-core/src/main/java/com/mybatisflex/core/BaseMapper.java @@ -332,6 +332,20 @@ public interface BaseMapper { @UpdateProvider(type = EntitySqlProvider.class, method = "updateNumberAddByQuery") int updateNumberAddByQuery(@Param(FlexConsts.FIELD_NAME) String fieldName, @Param(FlexConsts.VALUE) Number value, @Param(FlexConsts.QUERY) QueryWrapper queryWrapper); + /** + * 执行类似 update table set field=field+1 where ... 的场景 + * + * @param column 字段名 + * @param value 值( >=0 加,小于 0 减) + * @param queryWrapper 条件 + * @see EntitySqlProvider#updateNumberAddByQuery(Map, ProviderContext) + */ + default int updateNumberAddByQuery(QueryColumn column, Number value, QueryWrapper queryWrapper) { + if (value == null) { + throw FlexExceptions.wrap("value can not be null."); + } + return updateNumberAddByQuery(column.getName(), value, queryWrapper); + } /** * 执行类似 update table set field=field+1 where ... 的场景