From d85ad3bf2ac49b685be90a38aee3da1b403cdc5b Mon Sep 17 00:00:00 2001 From: Mlxa0324 Date: Sat, 19 Nov 2022 22:35:44 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8E=92=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/core/service/CoreBaseService.java | 22 +++++++++++++++++++ .../jlw/service/StudentClientLinkService.java | 9 ++++++++ .../resources/sql/jlw/studentClientLink.md | 2 +- 3 files changed, 32 insertions(+), 1 deletion(-) diff --git a/admin-core/src/main/java/com/ibeetl/admin/core/service/CoreBaseService.java b/admin-core/src/main/java/com/ibeetl/admin/core/service/CoreBaseService.java index 2ee7507d..ee162976 100644 --- a/admin-core/src/main/java/com/ibeetl/admin/core/service/CoreBaseService.java +++ b/admin-core/src/main/java/com/ibeetl/admin/core/service/CoreBaseService.java @@ -1,5 +1,7 @@ package com.ibeetl.admin.core.service; +import cn.hutool.core.util.NumberUtil; +import cn.hutool.core.util.ObjectUtil; import com.ibeetl.admin.core.util.PlatformException; import com.ibeetl.admin.core.util.enums.DelFlagEnum; import org.beetl.sql.core.SQLManager; @@ -9,10 +11,12 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import java.lang.reflect.ParameterizedType; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.function.Function; /** * @@ -67,6 +71,24 @@ public class CoreBaseService extends CoreBaseAnnotationParser { return (List) sqlManager.template(c); } + /** + * 获取指定字段 自增 + 1 的值。不会修改原属性 + * @param paras + * @param function + * @return + * @param + * @param + */ + public BigDecimal getAutoIncrement(T paras, Function function) { + List templateList = sqlManager.template(paras); + if (ObjectUtil.isEmpty(templateList)) { + return null; + } + + Number v1 = ObjectUtil.defaultIfNull(function.apply(templateList.get(0)), 0); + return NumberUtil.add(v1, 1); + } + /** * 根据实体查询实体对象List * diff --git a/web/src/main/java/com/ibeetl/jlw/service/StudentClientLinkService.java b/web/src/main/java/com/ibeetl/jlw/service/StudentClientLinkService.java index 8c1f4533..8effdae4 100644 --- a/web/src/main/java/com/ibeetl/jlw/service/StudentClientLinkService.java +++ b/web/src/main/java/com/ibeetl/jlw/service/StudentClientLinkService.java @@ -17,6 +17,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; @@ -88,6 +89,14 @@ public class StudentClientLinkService extends CoreBaseService public JsonResult add(StudentClientLinkQuery studentClientLinkQuery){ String msg = ""; StudentClientLink studentClientLink = studentClientLinkQuery.pojo(); + + // 获取新的排序值 + StudentClientLink paras = new StudentClientLink(); + paras.setStudentClientLinkOpenType(studentClientLink.getStudentClientLinkOpenType()); + paras.setStudentClientLinkStatus(1); + BigDecimal bigDecimal = getAutoIncrement(paras, StudentClientLink::getStudentClientLinkOrder); + studentClientLink.setStudentClientLinkOrder(bigDecimal.intValue()); + studentClientLinkDao.insert(studentClientLink); studentClientLinkQuery.setStudentClientLinkId(studentClientLink.getStudentClientLinkId()); JsonResult jsonResult = new JsonResult(); diff --git a/web/src/main/resources/sql/jlw/studentClientLink.md b/web/src/main/resources/sql/jlw/studentClientLink.md index 4bd4f44a..2d6cc074 100644 --- a/web/src/main/resources/sql/jlw/studentClientLink.md +++ b/web/src/main/resources/sql/jlw/studentClientLink.md @@ -106,7 +106,7 @@ queryByConditionQuery @if(!isEmpty(orgIdPlural)){ and find_in_set(t.org_id,#orgIdPlural#) @} - + order by t.student_client_link_order desc