瀏覽代碼

update 提取公共模块-日志
提取公共模块-基础的增删改查
提取公共模块-延迟队列

A17404李放 3 年之前
父節點
當前提交
bb06208194
共有 100 個文件被更改,包括 258 次插入1860 次删除
  1. 2 2
      nb-admin/src/main/java/com/nb/admin/controller/monitor/OnlineUserController.java
  2. 0 120
      nb-admin/src/main/java/com/nb/admin/controller/system/SysLoginController.java
  3. 4 4
      nb-admin/src/test/java/com/nb/admin/DelayMessageTest.java
  4. 0 6
      nb-admin/src/test/java/com/nb/admin/NotifyTest.java
  5. 2 2
      nb-admin/src/test/java/com/nb/admin/SpringBootApplicationTests.java
  6. 1 4
      nb-auth/pom.xml
  7. 3 3
      nb-auth/src/main/java/com/nb/auth/config/CustomStpInterface.java
  8. 81 0
      nb-auth/src/main/java/com/nb/auth/controller/AccountController.java
  9. 17 61
      nb-auth/src/main/java/com/nb/auth/controller/AuthController.java
  10. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/AccountInfoVO.java
  11. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/BaseTemplateVO.java
  12. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/RoleInfoVO.java
  13. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/RouteItemVO.java
  14. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/RouteMetoVO.java
  15. 1 1
      nb-auth/src/main/java/com/nb/auth/controller/vo/UserInfoVO.java
  16. 3 3
      nb-auth/src/main/java/com/nb/auth/granter/IAccountOperator.java
  17. 2 2
      nb-auth/src/main/java/com/nb/auth/granter/IAuthGranter.java
  18. 1 0
      nb-auth/src/main/java/com/nb/auth/granter/TokenParameter.java
  19. 0 62
      nb-auth/src/main/java/com/nb/auth/vo/AccountInfoVO.java
  20. 0 30
      nb-auth/src/main/java/com/nb/auth/vo/RouteItemVO.java
  21. 0 49
      nb-auth/src/main/java/com/nb/auth/vo/RouteMetoVO.java
  22. 0 35
      nb-auth/src/main/java/com/nb/auth/vo/UserInfoVO.java
  23. 0 37
      nb-codegen/pom.xml
  24. 0 219
      nb-codegen/src/main/java/com/nb/codegen/CodeGenerator.java
  25. 0 119
      nb-codegen/src/main/resources/templates/addDTO.java.vm
  26. 0 110
      nb-codegen/src/main/resources/templates/controller.java.vm
  27. 0 120
      nb-codegen/src/main/resources/templates/editDTO.java.vm
  28. 0 193
      nb-codegen/src/main/resources/templates/entity.java.vm
  29. 0 20
      nb-codegen/src/main/resources/templates/mapper.java.vm
  30. 0 39
      nb-codegen/src/main/resources/templates/mapper.xml.vm
  31. 0 94
      nb-codegen/src/main/resources/templates/queryDTO.java.vm
  32. 0 75
      nb-codegen/src/main/resources/templates/service.java.vm
  33. 0 113
      nb-codegen/src/main/resources/templates/serviceImpl.java.vm
  34. 0 24
      nb-codegen/src/main/resources/templates/sql.vm
  35. 0 65
      nb-codegen/src/main/resources/templates/vue/FormModal.vue.vm
  36. 0 37
      nb-codegen/src/main/resources/templates/vue/api.ts.vm
  37. 0 65
      nb-codegen/src/main/resources/templates/vue/data.ts.vm
  38. 0 139
      nb-codegen/src/main/resources/templates/vue/index.vue.vm
  39. 134 0
      nb-common/all-common/pom.xml
  40. 0 0
      nb-common/all-common/src/main/java/com/nb/common/Constants.java
  41. 0 0
      nb-common/all-common/src/main/java/com/nb/common/MenuConstants.java
  42. 0 0
      nb-common/all-common/src/main/java/com/nb/common/apply/ApplyManager.java
  43. 0 0
      nb-common/all-common/src/main/java/com/nb/common/aspect/DataSourceAspect.java
  44. 0 0
      nb-common/all-common/src/main/java/com/nb/common/aspect/DemoModelAspect.java
  45. 0 0
      nb-common/all-common/src/main/java/com/nb/common/bo/DictModel.java
  46. 0 0
      nb-common/all-common/src/main/java/com/nb/common/bo/SysRoleBO.java
  47. 0 0
      nb-common/all-common/src/main/java/com/nb/common/cache/CacheConfig.java
  48. 1 1
      nb-common/all-common/src/main/java/com/nb/common/cache/ClusterConfigStorage.java
  49. 1 1
      nb-common/all-common/src/main/java/com/nb/common/cache/ConfigStorage.java
  50. 0 0
      nb-common/all-common/src/main/java/com/nb/common/cache/manager/ClusterConfigStorageManager.java
  51. 0 0
      nb-common/all-common/src/main/java/com/nb/common/cache/manager/ConfigStorageManager.java
  52. 0 0
      nb-common/all-common/src/main/java/com/nb/common/cache/message/ClusterCache.java
  53. 0 0
      nb-common/all-common/src/main/java/com/nb/common/cache/message/RedisClusterCache.java
  54. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/AppConfig.java
  55. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/BooleanToIntegerSerializer.java
  56. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/CacheHttpServletRequestWrapper.java
  57. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/CachingContentFilter.java
  58. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/CorsConfig.java
  59. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/MinioConfig.java
  60. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/mybatis/DateToBigIntHandler.java
  61. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/mybatis/GetNameInterface.java
  62. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/mybatis/TenantNameHandler.java
  63. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/sa/SaConfig.java
  64. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/sa/SaTokenActionDefaultImpl.java
  65. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/sa/SaTokenConfig.java
  66. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/web/RequestCheckProperties.java
  67. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/web/handler/CheckRequestHandler.java
  68. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/web/handler/TenantIdHandler.java
  69. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/DefaultMessageListener.java
  70. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/DefaultRedisCallBack.java
  71. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/HospitalCodeCheck.java
  72. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/MessageResponse.java
  73. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/MessagingRequest.java
  74. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/TopicMessage.java
  75. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/WebSocketConstant.java
  76. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/Subscribe.java
  77. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/TopicWrapper.java
  78. 0 0
      nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/WsHandler.java
  79. 0 0
      nb-common/all-common/src/main/java/com/nb/common/convert/ExcelDictConverter.java
  80. 0 0
      nb-common/all-common/src/main/java/com/nb/common/datasource/DynamicDataSource.java
  81. 0 0
      nb-common/all-common/src/main/java/com/nb/common/datasource/DynamicDataSourceContextHolder.java
  82. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/BizEnum.java
  83. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/DataScopeEnum.java
  84. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/DelFlagEnum.java
  85. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/FileStorageStrategyEnum.java
  86. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/FrameEnum.java
  87. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/GrantTypeEnum.java
  88. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/KeepaliveEnum.java
  89. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/LinkExternalEnum.java
  90. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/MenuTypeEnum.java
  91. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/SexEnum.java
  92. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/StatusEnum.java
  93. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/VisibleEnum.java
  94. 0 0
      nb-common/all-common/src/main/java/com/nb/common/enums/YesNoEnum.java
  95. 0 0
      nb-common/all-common/src/main/java/com/nb/common/event/EventConfig.java
  96. 0 0
      nb-common/all-common/src/main/java/com/nb/common/notice/NotifyEnums.java
  97. 0 0
      nb-common/all-common/src/main/java/com/nb/common/notice/SystemMonitor.java
  98. 0 0
      nb-common/all-common/src/main/java/com/nb/common/notice/msg/AbstractMsg.java
  99. 0 0
      nb-common/all-common/src/main/java/com/nb/common/notice/msg/DeviceMsg.java
  100. 0 0
      nb-common/all-common/src/main/java/com/nb/common/notice/msg/DiskMsg.java

+ 2 - 2
nb-admin/src/main/java/com/nb/admin/controller/monitor/OnlineUserController.java

@@ -6,7 +6,7 @@ import cn.hutool.core.text.CharSequenceUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.nb.auth.bean.LoginUser;
-import com.nb.common.Constants;
+import com.nb.auth.utils.SecurityUtil;
 import com.nb.core.annotation.Log;
 import com.nb.common.redis.RedisUtils;
 import com.nb.core.result.R;
@@ -45,7 +45,7 @@ public class OnlineUserController {
         for (String key : keys) {
             // token sample, Authorization:login:token:8734da0866f4440daeea3d836d5ecf8c
             String tokenValue = CharSequenceUtil.subAfter(key, StpUtil.getTokenName() + ":" + StpUtil.TYPE + ":token:", true);
-            LoginUser item = (LoginUser) StpUtil.getTokenSessionByToken(tokenValue).get(Constants.LOGIN_USER_KEY);
+            LoginUser item =   SecurityUtil.getLoginUser(tokenValue);
             if (CharSequenceUtil.isNotBlank(username) && CharSequenceUtil.isNotBlank(userPlatform)) {
                 if (CharSequenceUtil.contains(item.getUsername(), username) && item.getUserPlatform().equals(userPlatform)) {
                     loginUserList.add(item);

+ 0 - 120
nb-admin/src/main/java/com/nb/admin/controller/system/SysLoginController.java

@@ -1,120 +0,0 @@
-//package com.nb.admin.controller.system;
-//
-//import cn.dev33.satoken.stp.StpUtil;
-//import com.alibaba.fastjson.JSONObject;
-//import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
-//import com.nb.admin.controller.system.vo.UserPassVo;
-//import com.nb.core.annotation.Log;
-//import com.nb.common.dto.TokenParameter;
-//import com.nb.core.exception.CustomException;
-//import com.nb.core.result.R;
-//import com.nb.common.util.SecurityUtil;
-//import com.nb.framework.web.service.IUserService;
-//import com.nb.system.common.vo.AccountInfoVO;
-//import com.nb.system.entity.SysUser;
-//import com.nb.system.service.ISysUserService;
-//import io.swagger.annotations.Api;
-//import io.swagger.annotations.ApiOperation;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.GetMapping;
-//import org.springframework.web.bind.annotation.PostMapping;
-//import org.springframework.web.bind.annotation.RequestBody;
-//import org.springframework.web.bind.annotation.RestController;
-//
-//import javax.annotation.Resource;
-//
-///**
-// * <p>
-// * 登录 前端控制器
-// * </p>
-// *
-// * @author Kevin
-// */
-//@RestController
-//@Api(tags = "登录接口")
-//public class SysLoginController {
-//
-//    @Resource
-//    IUserService userService;
-//
-//    @Resource
-//    ISysUserService sysUserService;
-//
-//    @Value("${sa-token.token-name}")
-//    private String tokenName;
-//    @Value("${sa-token.activity-timeout}")
-//    private String activityTimeout;
-//    @Log(title = "登录")
-//    @PostMapping({"/login","/token"})
-//    @ApiOperation("登录")
-//    public R login(@Validated @RequestBody TokenParameter req) {
-//        String token = userService.login(req);
-//        JSONObject result = new JSONObject();
-//        result.put("token", token);
-//        result.put("tokenName",tokenName);
-//        result.put("activityTimeout",activityTimeout);
-//        return R.success(result);
-//    }
-//
-//    @ApiOperation("修改密码")
-//    @PostMapping(value = "/updatePass")
-//    public R<Boolean> updatePass(@RequestBody @Validated UserPassVo passVo) {
-//        // 密码解密
-//        Long userId = SecurityUtil.getSysUser().getId();
-//        SysUser sysUser = sysUserService.getById(userId);
-//        if (!SecurityUtil.matchesPassword(passVo.getOldPass(), sysUser.getPassword())) {
-//            throw new CustomException("旧密码不正确");
-//        }
-//        String encryptPassword = SecurityUtil.encryptPassword(passVo.getNewPass());
-//        sysUserService
-//                .update(new UpdateWrapper<SysUser>()
-//                        .lambda().eq(SysUser::getId,userId)
-//                        .set(SysUser::getPassword,encryptPassword));
-//        return R.success(true);
-//    }
-//    @Log(title = "获取当前用户信息")
-//    @ApiOperation("获取当前用户信息")
-//    @GetMapping("/getUserInfo")
-//    public R getUserInfo() {
-//        return R.success(userService.getUserInfo());
-//    }
-//
-//    @Log(title = "获取权限集合")
-//    @ApiOperation("获取当前用户权限集合")
-//    @GetMapping("/getPermCode")
-//    public R getPermCode() {
-//        return R.success(userService.getPermCode());
-//    }
-//
-//    @Log(title = "获取菜单集合")
-//    @ApiOperation("获取当前用户菜单集合")
-//    @GetMapping("/getMenuList")
-//    public R getMenuList() {
-//        return R.success(userService.getMenuList());
-//    }
-//
-//    @Log(title = "获取账户信息")
-//    @ApiOperation("获取当前用户账户信息")
-//    @GetMapping("/getAccountInfo")
-//    public R getAccountInfo() {
-//        return R.success(userService.getAccountInfo());
-//    }
-//
-//    @Log(title = "保存用户信息")
-//    @ApiOperation("保存用户信息")
-//    @PostMapping("/saveAccountInfo")
-//    public R saveAccountInfo(@Validated @RequestBody AccountInfoVO req) {
-//        userService.saveAccountInfo(req);
-//        return R.success();
-//    }
-//
-//    @Log(title = "退出")
-//    @ApiOperation("用户登出")
-//    @PostMapping("/logout")
-//    public R logout() {
-//        StpUtil.logout();
-//        return R.success();
-//    }
-//
-//}

+ 4 - 4
nb-admin/src/test/java/com/nb/admin/DelayMessageTest.java

@@ -2,10 +2,10 @@ package com.nb.admin;
 
 import com.nb.bus.hospital.config.HospitalDeviceAutoUndoConfigHandler;
 import com.nb.bus.hospital.config.handler.HandlerConstant;
-import com.nb.common.cache.value.Value;
-import com.nb.common.delay_queue.manager.DelayMessageManager;
-import com.nb.common.delay_queue.message.DelayMessage;
-import com.nb.common.delay_queue.message.DelayMessageProperties;
+import com.nb.core.Value;
+import com.nb.common.queue.delay.manager.DelayMessageManager;
+import com.nb.common.queue.delay.message.DelayMessage;
+import com.nb.common.queue.delay.message.DelayMessageProperties;
 import lombok.extern.slf4j.Slf4j;
 import org.junit.Test;
 import org.junit.runner.RunWith;

+ 0 - 6
nb-admin/src/test/java/com/nb/admin/NotifyTest.java

@@ -8,16 +8,10 @@ import com.nb.common.notice.wechat.EnterpriseWeChatNotify;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.actuate.redis.RedisHealthIndicator;
 import org.springframework.boot.actuate.system.DiskSpaceHealthIndicator;
 import org.springframework.boot.test.context.SpringBootTest;
 import org.springframework.test.context.junit4.SpringRunner;
 
-import javax.jws.Oneway;
-import java.lang.management.ManagementFactory;
-import java.lang.management.MemoryMXBean;
-import java.lang.management.OperatingSystemMXBean;
-import java.util.Date;
 import java.util.Map;
 
 /**

+ 2 - 2
nb-admin/src/test/java/com/nb/admin/SpringBootApplicationTests.java

@@ -4,8 +4,8 @@ import cn.hutool.json.JSONUtil;
 import com.nb.bus.hospital.HospitalManagerRegister;
 import com.nb.bus.hospital.config.HospitalDeviceAutoUndoConfigHandler;
 import com.nb.bus.hospital.config.handler.DeputyDeviceAutoUndoHandler;
-import com.nb.common.cache.value.Value;
-import com.nb.common.delay_queue.message.DelayMessage;
+import com.nb.core.Value;
+import com.nb.common.queue.delay.message.DelayMessage;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;

+ 1 - 4
nb-auth/pom.xml

@@ -32,10 +32,7 @@
             <artifactId>hutool-http</artifactId>
             <version>${hutool.version}</version>
         </dependency>
-        <dependency>
-            <groupId>javax.validation</groupId>
-            <artifactId>validation-api</artifactId>
-        </dependency>
+
         <dependency>
             <groupId>com.github.xiaoymin</groupId>
             <artifactId>knife4j-spring-boot-starter</artifactId>

+ 3 - 3
nb-framework/src/main/java/com/nb/framework/satoken/service/CustomStpInterface.java → nb-auth/src/main/java/com/nb/auth/config/CustomStpInterface.java

@@ -1,11 +1,11 @@
-package com.nb.framework.satoken.service;
+package com.nb.auth.config;
 
 import cn.dev33.satoken.stp.StpInterface;
 import com.nb.auth.bean.SysRoleInfo;
 import com.nb.auth.utils.SecurityUtil;
-import com.google.common.collect.Lists;
 import org.springframework.stereotype.Component;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -19,7 +19,7 @@ import java.util.stream.Collectors;
 public class CustomStpInterface implements StpInterface {
     @Override
     public List<String> getPermissionList(Object loginId, String loginType) {
-        return Lists.newArrayList(SecurityUtil.getLoginUser().getPermissions());
+        return new ArrayList<>(SecurityUtil.getLoginUser().getPermissions());
     }
 
     @Override

+ 81 - 0
nb-auth/src/main/java/com/nb/auth/controller/AccountController.java

@@ -0,0 +1,81 @@
+package com.nb.auth.controller;
+
+import com.nb.auth.granter.IAccountOperator;
+import com.nb.auth.controller.vo.AccountInfoVO;
+import com.nb.core.annotation.Log;
+import com.nb.core.result.R;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * @author lifang
+ * @version 1.0.0
+ * @ClassName AccountController.java
+ * @Description TODO
+ * @createTime 2022年08月01日 17:22:00
+ */
+@AllArgsConstructor
+@RestController
+@Api(tags = "账号信息接口")
+public class AccountController {
+    private final IAccountOperator accountOperator;
+
+    //    @ApiOperation("修改密码")
+//    @PostMapping(value = "/updatePass")
+//    public R<Boolean> updatePass(@RequestBody @Validated UserPassVo passVo) {
+//        // 密码解密
+//        Long userId = SecurityUtil.getSysUser().getId();
+//        SysUser sysUser = sysUserService.getById(userId);
+//        if (!SecurityUtil.matchesPassword(passVo.getOldPass(), sysUser.getPassword())) {
+//            throw new CustomException("旧密码不正确");
+//        }
+//        String encryptPassword = SecurityUtil.encryptPassword(passVo.getNewPass());
+//        sysUserService
+//                .update(new UpdateWrapper<SysUser>()
+//                        .lambda().eq(SysUser::getId,userId)
+//                        .set(SysUser::getPassword,encryptPassword));
+//        return R.success(true);
+//    }
+
+    @Log(title = "获取当前用户信息")
+    @ApiOperation("获取当前用户信息")
+    @GetMapping("/getUserInfo")
+    public R getUserInfo() {
+        return R.success(accountOperator.getUserInfo());
+    }
+
+    @Log(title = "获取权限集合")
+    @ApiOperation("获取当前用户权限集合")
+    @GetMapping("/getPermCode")
+    public R getPermCode() {
+        return R.success(accountOperator.getPermCode());
+    }
+
+    @Log(title = "获取菜单集合")
+    @ApiOperation("获取当前用户菜单集合")
+    @GetMapping("/getMenuList")
+    public R getMenuList() {
+        return R.success(accountOperator.getMenuList());
+    }
+
+    @Log(title = "获取账户信息")
+    @ApiOperation("获取当前用户账户信息")
+    @GetMapping("/getAccountInfo")
+    public R getAccountInfo() {
+        return R.success(accountOperator.getAccountInfo());
+    }
+
+    @Log(title = "保存用户信息")
+    @ApiOperation("保存用户信息")
+    @PostMapping("/saveAccountInfo")
+    public R saveAccountInfo(@Validated @RequestBody AccountInfoVO req) {
+        accountOperator.saveAccountInfo(req);
+        return R.success();
+    }
+}

+ 17 - 61
nb-auth/src/main/java/com/nb/auth/controller/AuthController.java

@@ -2,10 +2,8 @@ package com.nb.auth.controller;
 import cn.dev33.satoken.stp.StpUtil;
 import com.nb.auth.bean.AuthInfo;
 import com.nb.auth.bean.LoginUser;
-import com.nb.auth.granter.IAccountOperator;
 import com.nb.auth.granter.IAuthGranter;
 import com.nb.auth.granter.TokenParameter;
-import com.nb.auth.vo.AccountInfoVO;
 import com.nb.core.exception.CustomException;
 import com.nb.core.result.R;
 import io.swagger.annotations.Api;
@@ -19,8 +17,6 @@ import org.springframework.web.bind.annotation.RestController;
 import java.util.*;
 import com.nb.core.annotation.Log;
 
-import javax.validation.constraints.NotBlank;
-
 /**
  * @author lifang
  * @version 1.0.0
@@ -28,19 +24,14 @@ import javax.validation.constraints.NotBlank;
  * @Description 授权接口
  * @createTime 2022年08月01日 13:33:00
  */
-
 @RestController
 @Api(tags = "登录、授权接口")
 public class AuthController {
 
     private final List<IAuthGranter> tokenGranter;
 
-    private final IAccountOperator accountOperator;
-
-    public AuthController(List<IAuthGranter> tokenGranter,
-                          IAccountOperator accountOperator) {
+    public AuthController(List<IAuthGranter> tokenGranter) {
         this.tokenGranter = tokenGranter;
-        this.accountOperator = accountOperator;
     }
 
     @Value("${sa-token.token-name}")
@@ -49,7 +40,7 @@ public class AuthController {
     @Value("${sa-token.activity-timeout}")
     private Long activityTimeout;
 
-    //    @Log(title = "登录")
+    @Log(title = "登录")
     @PostMapping({"/login","/token"})
     @ApiOperation("登录")
     public R<AuthInfo> login(@Validated @RequestBody TokenParameter req) {
@@ -69,56 +60,21 @@ public class AuthController {
                 .build());
     }
 
-//    @ApiOperation("修改密码")
-//    @PostMapping(value = "/updatePass")
-//    public R<Boolean> updatePass(@RequestBody @Validated UserPassVo passVo) {
-//        // 密码解密
-//        Long userId = SecurityUtil.getSysUser().getId();
-//        SysUser sysUser = sysUserService.getById(userId);
-//        if (!SecurityUtil.matchesPassword(passVo.getOldPass(), sysUser.getPassword())) {
-//            throw new CustomException("旧密码不正确");
-//        }
-//        String encryptPassword = SecurityUtil.encryptPassword(passVo.getNewPass());
-//        sysUserService
-//                .update(new UpdateWrapper<SysUser>()
-//                        .lambda().eq(SysUser::getId,userId)
-//                        .set(SysUser::getPassword,encryptPassword));
-//        return R.success(true);
-//    }
-
-    @Log(title = "获取当前用户信息")
-    @ApiOperation("获取当前用户信息")
-    @GetMapping("/getUserInfo")
-    public R getUserInfo() {
-        return R.success(accountOperator.getUserInfo());
-    }
-
-    @Log(title = "获取权限集合")
-    @ApiOperation("获取当前用户权限集合")
-    @GetMapping("/getPermCode")
-    public R getPermCode() {
-        return R.success(accountOperator.getPermCode());
-    }
-
-    @Log(title = "获取菜单集合")
-    @ApiOperation("获取当前用户菜单集合")
-    @GetMapping("/getMenuList")
-    public R getMenuList() {
-        return R.success(accountOperator.getMenuList());
-    }
-
-    @Log(title = "获取账户信息")
-    @ApiOperation("获取当前用户账户信息")
-    @GetMapping("/getAccountInfo")
-    public R getAccountInfo() {
-        return R.success(accountOperator.getAccountInfo());
-    }
-
-    @Log(title = "保存用户信息")
-    @ApiOperation("保存用户信息")
-    @PostMapping("/saveAccountInfo")
-    public R saveAccountInfo(@Validated @RequestBody AccountInfoVO req) {
-        accountOperator.saveAccountInfo(req);
+    /*
+     * 根据键值,获取value
+     */
+    @ApiOperation("刷新token时间")
+    @GetMapping("/refresh")
+    public R getTime() {
+        if (StpUtil.isLogin()) {
+            try {
+                StpUtil.checkActivityTimeout();
+                //手动续签
+                StpUtil.updateLastActivityToNow();
+            }catch (Exception e){
+
+            }
+        }
         return R.success();
     }
 

+ 1 - 1
nb-system/src/main/java/com/nb/system/common/vo/AccountInfoVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/AccountInfoVO.java

@@ -1,4 +1,4 @@
-package com.nb.system.common.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 1 - 1
nb-auth/src/main/java/com/nb/auth/vo/BaseTemplateVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/BaseTemplateVO.java

@@ -1,4 +1,4 @@
-package com.nb.auth.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 1 - 1
nb-auth/src/main/java/com/nb/auth/vo/RoleInfoVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/RoleInfoVO.java

@@ -1,4 +1,4 @@
-package com.nb.auth.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 1 - 1
nb-system/src/main/java/com/nb/system/common/vo/RouteItemVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/RouteItemVO.java

@@ -1,4 +1,4 @@
-package com.nb.system.common.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 1 - 1
nb-system/src/main/java/com/nb/system/common/vo/RouteMetoVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/RouteMetoVO.java

@@ -1,4 +1,4 @@
-package com.nb.system.common.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 1 - 1
nb-system/src/main/java/com/nb/system/common/vo/UserInfoVO.java → nb-auth/src/main/java/com/nb/auth/controller/vo/UserInfoVO.java

@@ -1,4 +1,4 @@
-package com.nb.system.common.vo;
+package com.nb.auth.controller.vo;
 
 import lombok.Data;
 

+ 3 - 3
nb-auth/src/main/java/com/nb/auth/granter/IAccountOperator.java

@@ -1,8 +1,8 @@
 package com.nb.auth.granter;
 
-import com.nb.auth.vo.AccountInfoVO;
-import com.nb.auth.vo.RouteItemVO;
-import com.nb.auth.vo.UserInfoVO;
+import com.nb.auth.controller.vo.AccountInfoVO;
+import com.nb.auth.controller.vo.RouteItemVO;
+import com.nb.auth.controller.vo.UserInfoVO;
 
 import java.util.List;
 import java.util.Set;

+ 2 - 2
nb-auth/src/main/java/com/nb/auth/granter/IAuthGranter.java

@@ -21,8 +21,8 @@ import cn.hutool.http.useragent.UserAgent;
 import cn.hutool.http.useragent.UserAgentUtil;
 import com.nb.auth.bean.LoginUser;
 import com.nb.auth.enums.GrantTypeEnum;
-import com.nb.auth.utils.AddressUtil;
-import com.nb.auth.utils.IpUtil;
+import com.nb.core.utils.AddressUtil;
+import com.nb.core.utils.IpUtil;
 
 import javax.servlet.http.HttpServletRequest;
 import java.util.Date;

+ 1 - 0
nb-auth/src/main/java/com/nb/auth/granter/TokenParameter.java

@@ -14,6 +14,7 @@ import javax.validation.constraints.NotBlank;
 @Data
 public class TokenParameter {
 
+    @ApiModelProperty("授权方式,1、web账密登录 2、手机短信登录 3、第三方应用登陆")
     GrantTypeEnum grantType;
 
     String username;

+ 0 - 62
nb-auth/src/main/java/com/nb/auth/vo/AccountInfoVO.java

@@ -1,62 +0,0 @@
-package com.nb.auth.vo;
-
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.Size;
-import java.io.Serializable;
-
-/**
- * 账户信息VO
- *
- * @author Kevin
- */
-@Data
-public class AccountInfoVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    /**
-     * 昵称
-     */
-    @NotBlank(message = "昵称不能为空")
-    @Size(max = 100, message = "昵称长度不能超过100个字符")
-    private String nickname;
-
-    /**
-     * 姓名
-     */
-    @Size(max = 100, message = "姓名长度不能超过100个字符")
-    private String realname;
-
-    /**
-     * 英文名
-     */
-    @Size(max = 100, message = "英文名长度不能超过100个字符")
-    private String englishName;
-
-    /**
-     * 头像
-     */
-    @Size(max = 100, message = "头像长度不能超过100个字符")
-    private String avatar;
-
-    /**
-     * 邮箱
-     */
-    @Size(max = 100, message = "邮箱长度不能超过100个字符")
-    private String email;
-
-    /**
-     * 性别 1男;2女;3未知
-     */
-    @NotBlank(message = "性别不能为空")
-    private String sex;
-
-    /**
-     * 备注
-     */
-    @Size(max = 500, message = "备注长度不能超过500个字符")
-    private String remarks;
-
-}

+ 0 - 30
nb-auth/src/main/java/com/nb/auth/vo/RouteItemVO.java

@@ -1,30 +0,0 @@
-package com.nb.auth.vo;
-
-import lombok.Data;
-
-import java.io.Serializable;
-import java.util.List;
-
-/**
- * 路由项VO
- *
- * @author Kevin
- */
-@Data
-public class RouteItemVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private String path;
-
-    private String component;
-
-    private RouteMetoVO meta;
-
-    private String name;
-
-    private String redirect;
-
-    private List<RouteItemVO> children;
-
-}

+ 0 - 49
nb-auth/src/main/java/com/nb/auth/vo/RouteMetoVO.java

@@ -1,49 +0,0 @@
-package com.nb.auth.vo;
-
-import lombok.Data;
-
-import java.io.Serializable;
-
-/**
- * 路由MetoVO
- *
- * @author Kevin
- */
-@Data
-public class RouteMetoVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private String title;
-
-    private Boolean ignoreAuth;
-
-    private String roles;
-
-    private Boolean ignoreKeepAlive;
-
-    private Boolean affix;
-
-    private String icon;
-
-    private String frameSrc;
-
-    private String transitionName;
-
-    private Boolean hideBreadcrumb;
-
-    private Boolean hideChildrenInMenu;
-
-    private Boolean carryParam;
-
-    private Boolean single;
-
-    private String currentActiveMenu;
-
-    private Boolean hideTab;
-
-    private Boolean hideMenu;
-
-    private Boolean isLink;
-
-}

+ 0 - 35
nb-auth/src/main/java/com/nb/auth/vo/UserInfoVO.java

@@ -1,35 +0,0 @@
-package com.nb.auth.vo;
-
-import lombok.Data;
-
-import java.io.Serializable;
-import java.util.List;
-
-/**
- * 用户信息VO
- *
- * @author Kevin
- */
-@Data
-public class UserInfoVO implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    private String userId;
-
-    private String username;
-
-    private String realName;
-
-    private String avatar;
-
-    private String desc;
-
-    private String tenantId;
-
-    private String tenantName;
-
-    private List<RoleInfoVO> roles;
-
-    private Boolean isSys;
-}

+ 0 - 37
nb-codegen/pom.xml

@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-         xmlns="http://maven.apache.org/POM/4.0.0"
-         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-    <parent>
-        <artifactId>nb-root</artifactId>
-        <groupId>com.tuoren</groupId>
-        <version>1.0</version>
-    </parent>
-    <modelVersion>4.0.0</modelVersion>
-
-    <artifactId>nb-codegen</artifactId>
-
-    <dependencies>
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-jdbc</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.baomidou</groupId>
-            <artifactId>mybatis-plus-generator</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>mysql</groupId>
-            <artifactId>mysql-connector-java</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>org.apache.velocity</groupId>
-            <artifactId>velocity-engine-core</artifactId>
-        </dependency>
-        <dependency>
-            <groupId>com.tuoren</groupId>
-            <artifactId>nb-common</artifactId>
-        </dependency>
-    </dependencies>
-
-</project>

+ 0 - 219
nb-codegen/src/main/java/com/nb/codegen/CodeGenerator.java

@@ -1,219 +0,0 @@
-package com.nb.codegen;
-
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.core.toolkit.StringPool;
-import com.baomidou.mybatisplus.generator.AutoGenerator;
-import com.baomidou.mybatisplus.generator.InjectionConfig;
-import com.baomidou.mybatisplus.generator.config.*;
-import com.baomidou.mybatisplus.generator.config.po.TableFill;
-import com.baomidou.mybatisplus.generator.config.po.TableInfo;
-import com.baomidou.mybatisplus.generator.config.rules.DateType;
-import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
-import com.baomidou.mybatisplus.generator.engine.VelocityTemplateEngine;
-import com.nb.common.util.IdUtil;
-import com.google.common.collect.Maps;
-
-import java.util.*;
-
-/**
- * 代码生成工具类
- * @author Kevin
- */
-@SuppressWarnings("ALL")
-public class CodeGenerator {
-
-    public static final String JDBC_URL = "jdbc:mysql://localhost:3306/nb-dev?characterEncoding=utf8&useSSL=false&allowMultiQueries=true&serverTimezone=Asia/Shanghai";
-    public static final String JDBC_USERNAME = "root";
-    public static final String JDBC_PASSWORD = "123456";
-    public static final String JDBC_DRIVER = "com.mysql.cj.jdbc.Driver";
-
-    /** 按照个人需要,进行修改 */
-    public static final String AUTHOR = "Kevin";
-    public static final String PROJECT_PATH = "D:\\tempCode";
-    public static final String PACKAGE_PARENT = "com.nb";
-    public static final String MODULE_NAME = "system";
-
-    /** 生成SQL脚本的上级菜单的ID,要开发的功能,需要放到XXX菜单下面,请找到XXX菜单的ID */
-    public static final String PARENT_MENU_ID = "1406064334403878913";
-
-    /** admin的ID,可以不用修改 */
-    public static final String CREATE_BY = "1";
-    public static final String UPDATE_BY = "1";
-
-    /** 默认菜单图标,可以不用修改,SQL脚本生成之后,在页面选择图标,进行修改即可 */
-    public static final String ICON = "ant-design:unordered-list-outlined";
-
-    // 是否导出excel
-    public static final Boolean exportExcel = false;
-
-    public static void main(String[] args) {
-        new CodeGenerator().generate(
-                "sys_example"
-        );
-    }
-
-    private void generate(String... tableNamesInclude) {
-        // 代码生成器
-        AutoGenerator mpg = new AutoGenerator();
-
-        // 全局配置
-        GlobalConfig gc = new GlobalConfig();
-        String projectPath = PROJECT_PATH;
-        gc.setOutputDir(projectPath + "/src/main/java");
-        gc.setAuthor(AUTHOR);
-        gc.setOpen(false);
-        gc.setDateType(DateType.ONLY_DATE);
-        //默认不覆盖,如果文件存在,将不会再生成,配置true就是覆盖
-        gc.setFileOverride(true);
-        // gc.setSwagger2(true); 实体属性 Swagger2 注解
-        gc.setBaseResultMap(true);
-        // gc.setBaseColumnList(true); // XML column list
-        mpg.setGlobalConfig(gc);
-
-        // 数据源配置
-        DataSourceConfig dsc = new DataSourceConfig();
-        dsc.setUrl(JDBC_URL);
-        dsc.setDriverName(JDBC_DRIVER);
-        dsc.setUsername(JDBC_USERNAME);
-        dsc.setPassword(JDBC_PASSWORD);
-        mpg.setDataSource(dsc);
-
-        // 包配置
-        PackageConfig pc = new PackageConfig();
-        // 设置模块名,会在指定parent包下生成一个指定的模块包
-        pc.setModuleName(MODULE_NAME);
-        pc.setParent(PACKAGE_PARENT);
-        mpg.setPackageInfo(pc);
-
-        // 自定义配置
-        InjectionConfig cfg = new InjectionConfig() {
-            @Override
-            public void initMap() {
-                // to do nothing
-                Arrays.asList(tableNamesInclude).forEach(item -> {
-                    Map params = Objects.isNull(this.getMap()) ? Maps.newHashMap() : this.getMap();
-                    params.put(item +"menuId", IdUtil.getSnowflakeId());
-                    params.put(item +"parentMenuId", PARENT_MENU_ID);
-                    params.put(item +"icon", ICON);
-                    params.put(item +"pageButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"addButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"editButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"removeButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"viewButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"exportButtonId", IdUtil.getSnowflakeId());
-                    params.put(item +"createBy", CREATE_BY);
-                    params.put(item +"updateBy", UPDATE_BY);
-                    params.put(item +"exportExcel", exportExcel);
-                    this.setMap(params);
-                });
-            }
-        };
-
-        // 如果模板引擎是 freemarker
-        // String templatePath = "/templates/mapper.xml.ftl";
-        // 如果模板引擎是 velocity
-        // String templatePath = "/templates/mapper.xml.vm";
-
-        // 自定义输出配置
-        List<FileOutConfig> focList = new ArrayList<>();
-        // 自定义配置会被优先输出
-        // 调整xml生成目录
-        focList.add(new FileOutConfig("/templates/mapper.xml.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/src/main/resources/mapper/" + tableInfo.getEntityName() + "Mapper" + StringPool.DOT_XML;
-            }
-        });
-        // 生成自定义模板
-        focList.add(new FileOutConfig("/templates/addDTO.java.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                String path = PACKAGE_PARENT.replaceAll("\\." , "/") + "/" + MODULE_NAME.replaceAll("\\." , "/");
-                return projectPath + "/src/main/java/" + path + "/common/dto/" + tableInfo.getEntityName() + "AddDTO" + StringPool.DOT_JAVA;
-            }
-        });
-        // 生成自定义模板
-        focList.add(new FileOutConfig("/templates/editDTO.java.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                String path = PACKAGE_PARENT.replaceAll("\\." , "/") + "/" + MODULE_NAME.replaceAll("\\." , "/");
-                return projectPath + "/src/main/java/" + path + "/common/dto/" + tableInfo.getEntityName() + "EditDTO" + StringPool.DOT_JAVA;
-            }
-        });
-        // 生成自定义模板
-        focList.add(new FileOutConfig("/templates/queryDTO.java.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                String path = PACKAGE_PARENT.replaceAll("\\." , "/") + "/" + MODULE_NAME.replaceAll("\\." , "/");
-                return projectPath + "/src/main/java/" + path + "/common/dto/" + tableInfo.getEntityName() + "QueryDTO" + StringPool.DOT_JAVA;
-            }
-        });
-        // 生成自定义模板,SQL
-        focList.add(new FileOutConfig("/templates/sql.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/" + tableInfo.getName() + "_sql.sql";
-            }
-        });
-        // 生成自定义模板,VUE
-        focList.add(new FileOutConfig("/templates/vue/api.ts.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/vue/" + tableInfo.getEntityPath() +"/" + tableInfo.getEntityPath() + "Api.ts";
-            }
-        });
-        // 生成自定义模板,VUE
-        focList.add(new FileOutConfig("/templates/vue/data.ts.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/vue/" + tableInfo.getEntityPath() +"/" + "data.ts";
-            }
-        });
-        // 生成自定义模板,VUE
-        focList.add(new FileOutConfig("/templates/vue/FormModal.vue.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/vue/" + tableInfo.getEntityPath() +"/" + "FormModal.vue";
-            }
-        });
-        // 生成自定义模板,VUE
-        focList.add(new FileOutConfig("/templates/vue/index.vue.vm") {
-            @Override
-            public String outputFile(TableInfo tableInfo) {
-                return projectPath + "/vue/" + tableInfo.getEntityPath() +"/" + "index.vue";
-            }
-        });
-        cfg.setFileOutConfigList(focList);
-        mpg.setCfg(cfg);
-
-        // 配置模板
-        TemplateConfig templateConfig = new TemplateConfig();
-        templateConfig.setXml(null)
-                .setEntity("/templates/entity.java.vm")
-                .setMapper("/templates/mapper.java.vm")
-                .setController("/templates/controller.java.vm")
-                .setService("/templates/service.java.vm")
-                .setServiceImpl("/templates/serviceImpl.java.vm");
-        mpg.setTemplate(templateConfig);
-
-        // 策略配置
-        StrategyConfig strategy = new StrategyConfig();
-        strategy.setNaming(NamingStrategy.underline_to_camel);
-        strategy.setColumnNaming(NamingStrategy.underline_to_camel);
-        strategy.setEntityLombokModel(true);
-        strategy.setRestControllerStyle(true);
-        strategy.setInclude(tableNamesInclude);
-        strategy.setChainModel(false);
-        List<TableFill> tableFillList = new ArrayList<>();
-        tableFillList.add(new TableFill("create_by" , FieldFill.INSERT));
-        tableFillList.add(new TableFill("create_time" , FieldFill.INSERT));
-        tableFillList.add(new TableFill("update_by" , FieldFill.INSERT_UPDATE));
-        tableFillList.add(new TableFill("update_time" , FieldFill.INSERT_UPDATE));
-        strategy.setTableFillList(tableFillList);
-        mpg.setStrategy(strategy);
-        mpg.setTemplateEngine(new VelocityTemplateEngine());
-        mpg.execute();
-        System.out.println(mpg.getTemplateEngine().getObjectMap(new TableInfo()));
-    }
-
-}

+ 0 - 119
nb-codegen/src/main/resources/templates/addDTO.java.vm

@@ -1,119 +0,0 @@
-package ${package.Controller.replace(".controller", "")}.common.dto;
-
-#foreach($pkg in ${table.importPackages})
-#if(${pkg.indexOf("baomidou")}==-1)
-import ${pkg};
-#end
-#end
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
-#if(${entityLombokModel})
-import lombok.Data;
-#if(${chainModel})
-import lombok.experimental.Accessors;
-#end
-#end
-
-/**
-* <p>
-* $!{table.comment}
-* </p>
-*
-* @author ${author}
-* @since ${date}
-*/
-#if(${entityLombokModel})
-@Data
-#if(${chainModel})
-@Accessors(chain = true)
-#end
-#end
-public class ${entity}AddDTO implements Serializable {
-
-#if(${entitySerialVersionUID})
-    private static final long serialVersionUID = 1L;
-#end
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-
-#if("$!field.comment" != "")
-    /**
-    * ${field.comment}
-    */
-#end
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-## String
-#if(${field.propertyType.equals("String")})
-#if("$!field.comment" != "")
-    @NotBlank(message = "${field.comment}不能为空")
-    @Size(max = 100, message = "${field.comment}长度不能超过100个字符")
-#else
-    @NotBlank(message = "${field.propertyName}不能为空")
-    @Size(max = 100, message = "${field.propertyName}长度不能超过100个字符")
-#end
-#else
-#if("$!field.comment" != "")
-    @NotNull(message = "${field.comment}不能为空")
-#else
-    @NotNull(message = "${field.propertyName}不能为空")
-#end
-#end
-#end
-    private ${field.propertyType} ${field.propertyName};
-#end
-## ----------END 字段循环遍历----------
-
-#if(!${entityLombokModel})
-#foreach($field in ${table.fields})
-#if(${field.propertyType.equals("boolean")})
-#set($getprefix="is")
-#else
-#set($getprefix="get")
-#end
-
-    public ${field.propertyType} ${getprefix}${field.capitalName}() {
-        return ${field.propertyName};
-    }
-
-#if(${chainModel})
-    public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#else
-    public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#end
-        this.${field.propertyName} = ${field.propertyName};
-#if(${chainModel})
-        return this;
-#end
-    }
-#end
-## --foreach end---
-#end
-## --end of #if(!${entityLombokModel})--
-
-#if(${entityColumnConstant})
-#foreach($field in ${table.fields})
-    public static final String ${field.name.toUpperCase()} = "${field.name}";
-
-#end
-#end
-#if(!${entityLombokModel})
-    @Override
-    public String toString() {
-        return "${entity}{" +
-#foreach($field in ${table.fields})
-#if($!{foreach.index}==0)
-                "${field.propertyName}=" + ${field.propertyName} +
-#else
-                ", ${field.propertyName}=" + ${field.propertyName} +
-#end
-#end
-        "}";
-    }
-#end
-}

+ 0 - 110
nb-codegen/src/main/resources/templates/controller.java.vm

@@ -1,110 +0,0 @@
-package ${package.Controller};
-
-import com.nb.core.annotation.Log;
-import ${package.Controller.replace(".${package.ModuleName}.controller", "")}.common.result.R;
-import ${package.Controller.replace(".${package.ModuleName}.controller", "")}.common.utils.ExcelUtils;
-import ${package.Controller.replace(".controller", "")}.common.dto.${table.entityName}AddDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${table.entityName}EditDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${table.entityName}QueryDTO;
-import ${package.Entity}.${entity};
-import ${package.Service}.${table.serviceName};
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.*;
-
-import javax.annotation.Resource;
-
-/**
- * <p>
- * $!{table.comment} 前端控制器
- * </p>
- *
- * @author ${author}
- * @since ${date}
- */
-#if(${restControllerStyle})
-@RestController
-#else
-@Controller
-#end
-@RequestMapping("#if(${package.ModuleName})/${package.ModuleName}#end/#if(${controllerMappingHyphenStyle})${controllerMappingHyphen}#else${table.entityPath}#end")
-#if(${kotlin})
-class ${table.controllerName}#if(${superControllerClass}) : ${superControllerClass}()#end
-
-#else
-#if(${superControllerClass})
-public class ${table.controllerName} extends ${superControllerClass} {
-#else
-public class ${table.controllerName} {
-#end
-
-    @Resource
-    private ${table.serviceName} ${table.entityPath}Service;
-
-    /**
-    * 分页查询
-    */
-    @GetMapping("/page")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:page')")
-    @Log(title = "$!{table.comment}分页查询")
-    public R page(Page reqPage, ${table.entityName}QueryDTO req) {
-        return R.success(${table.entityPath}Service.page(reqPage, req));
-    }
-
-    /**
-    * 新增
-    */
-    @PostMapping("/add")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:add')")
-    @Log(title = "$!{table.comment}新增")
-    public R add(@Validated @RequestBody ${table.entityName}AddDTO req) {
-        ${table.entityPath}Service.add(req);
-        return R.success();
-    }
-
-    /**
-    * 修改
-    */
-    @PostMapping("/edit")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:edit')")
-    @Log(title = "$!{table.comment}修改")
-    public R edit(@Validated @RequestBody ${table.entityName}EditDTO req) {
-        ${table.entityPath}Service.edit(req);
-        return R.success();
-    }
-
-    /**
-    * 删除
-    */
-    @PostMapping("/remove")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:remove')")
-    @Log(title = "$!{table.comment}删除")
-    public R remove(@RequestParam String ids) {
-        ${table.entityPath}Service.remove(ids);
-        return R.success();
-    }
-
-    /**
-    * 查看
-    */
-    @GetMapping("/view")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:view')")
-    @Log(title = "$!{table.comment}查看")
-    public R view(@RequestParam String id) {
-        return R.success(${table.entityPath}Service.view(id));
-    }
-#if(${cfg.get("${table.name}exportExcel")})
-    /**
-    * 导出
-    */
-    @GetMapping("/export")
-    @PreAuthorize("@ss.hasPermission('#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:export')")
-    @Log(title = "$!{table.comment}导出")
-    public R export(${table.entityName}QueryDTO req) {
-        String filepath = ExcelUtils.export("$!{table.comment}列表", ${table.entityName}.class, ${table.entityPath}Service.list(req));
-        return R.success(filepath);
-    }
-#end
-}
-
-#end

+ 0 - 120
nb-codegen/src/main/resources/templates/editDTO.java.vm

@@ -1,120 +0,0 @@
-package ${package.Controller.replace(".controller", "")}.common.dto;
-
-#foreach($pkg in ${table.importPackages})
-#if(${pkg.indexOf("baomidou")}==-1)
-import ${pkg};
-#end
-#end
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-import javax.validation.constraints.Size;
-#if(${entityLombokModel})
-import lombok.Data;
-#if(${chainModel})
-import lombok.experimental.Accessors;
-#end
-#end
-
-/**
-* <p>
-* $!{table.comment}
-* </p>
-*
-* @author ${author}
-* @since ${date}
-*/
-#if(${entityLombokModel})
-@Data
-#if(${chainModel})
-@Accessors(chain = true)
-#end
-#end
-public class ${entity}EditDTO implements Serializable {
-
-#if(${entitySerialVersionUID})
-    private static final long serialVersionUID = 1L;
-#end
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-
-#if("$!field.comment" != "")
-    /**
-    * ${field.comment}
-    */
-#end
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-    @NotNull(message = "主键不能为空")
-#end
-## 普通字段
-#else
-## String
-#if(${field.propertyType.equals("String")})
-#if("$!field.comment" != "")
-    @NotBlank(message = "${field.comment}不能为空")
-    @Size(max = 100, message = "${field.comment}长度不能超过100个字符")
-#else
-    @NotBlank(message = "${field.propertyName}不能为空")
-    @Size(max = 100, message = "${field.propertyName}长度不能超过100个字符")
-#end
-#else
-#if("$!field.comment" != "")
-    @NotNull(message = "${field.comment}不能为空")
-#else
-    @NotNull(message = "${field.propertyName}不能为空")
-#end
-#end
-#end
-    private ${field.propertyType} ${field.propertyName};
-#end
-## ----------END 字段循环遍历----------
-
-#if(!${entityLombokModel})
-#foreach($field in ${table.fields})
-#if(${field.propertyType.equals("boolean")})
-#set($getprefix="is")
-#else
-#set($getprefix="get")
-#end
-
-    public ${field.propertyType} ${getprefix}${field.capitalName}() {
-        return ${field.propertyName};
-    }
-
-#if(${chainModel})
-    public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#else
-    public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#end
-        this.${field.propertyName} = ${field.propertyName};
-#if(${chainModel})
-        return this;
-#end
-    }
-#end
-## --foreach end---
-#end
-## --end of #if(!${entityLombokModel})--
-
-#if(${entityColumnConstant})
-#foreach($field in ${table.fields})
-    public static final String ${field.name.toUpperCase()} = "${field.name}";
-
-#end
-#end
-#if(!${entityLombokModel})
-    @Override
-    public String toString() {
-        return "${entity}{" +
-#foreach($field in ${table.fields})
-#if($!{foreach.index}==0)
-                "${field.propertyName}=" + ${field.propertyName} +
-#else
-                ", ${field.propertyName}=" + ${field.propertyName} +
-#end
-#end
-        "}";
-    }
-#end
-}

+ 0 - 193
nb-codegen/src/main/resources/templates/entity.java.vm

@@ -1,193 +0,0 @@
-package ${package.Entity};
-
-#if(${cfg.get("${table.name}exportExcel")})
-import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
-import com.alibaba.excel.annotation.ExcelProperty;
-import com.alibaba.excel.annotation.write.style.*;
-import com.alibaba.excel.enums.poi.HorizontalAlignmentEnum;
-#end
-import com.fasterxml.jackson.annotation.JsonFormat;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-#foreach($pkg in ${table.importPackages})
-import ${pkg};
-#end
-#if(${swagger2})
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-#end
-#if(${entityLombokModel})
-import lombok.Data;
-#if(${superEntityClass})
-import lombok.EqualsAndHashCode;
-#end
-#if(${chainModel})
-import lombok.experimental.Accessors;
-#end
-#end
-
-/**
-* <p>
-* $!{table.comment}
-* </p>
-*
-* @author ${author}
-* @since ${date}
-*/
-#if(${entityLombokModel})
-@Data
-#if(${superEntityClass})
-@EqualsAndHashCode(callSuper = true)
-#end
-#if(${chainModel})
-@Accessors(chain = true)
-#end
-#end
-#if(${cfg.get("${table.name}exportExcel")})
-@ColumnWidth(15)
-@HeadRowHeight(15)
-@ContentRowHeight(15)
-@HeadStyle
-@HeadFontStyle(fontHeightInPoints = 12)
-@ContentStyle(horizontalAlignment = HorizontalAlignmentEnum.CENTER)
-@ContentFontStyle(fontHeightInPoints = 10)
-@ExcelIgnoreUnannotated
-#end
-#if(${table.convert})
-@TableName("${table.name}")
-#end
-#if(${swagger2})
-@ApiModel(value="${entity}对象", description="$!{table.comment}")
-#end
-#if(${superEntityClass})
-public class ${entity} extends ${superEntityClass}#if(${activeRecord})<${entity}>#end {
-#elseif(${activeRecord})
-public class ${entity} extends Model<${entity}> {
-#else
-public class ${entity} implements Serializable {
-#end
-
-#if(${entitySerialVersionUID})
-    private static final long serialVersionUID = 1L;
-#end
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-
-#if(${field.keyFlag})
-#set($keyPropertyName=${field.propertyName})
-#end
-#if("$!field.comment" != "")
-#if(${swagger2})
-    @ApiModelProperty(value = "${field.comment}")
-#else
-    /**
-    * ${field.comment}
-    */
-#end
-#end
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#elseif(${field.fill})
-## -----存在字段填充设置-----
-#if(${field.convert})
-    @TableField(value = "${field.annotationColumnName}", fill = FieldFill.${field.fill})
-#else
-    @TableField(fill = FieldFill.${field.fill})
-#end
-#elseif(${field.convert})
-    @TableField("${field.annotationColumnName}")
-#end
-## 乐观锁注解
-#if(${versionFieldName}==${field.name})
-    @Version
-#end
-## 逻辑删除注解
-#if(${logicDeleteFieldName}==${field.name})
-    @TableLogic
-#end
-## Long
-#if(${field.propertyType.equals("Long")})
-    @JsonSerialize(using = ToStringSerializer.class)
-#end
-## LocalDateTime
-#if(${field.propertyType.equals("LocalDateTime")} || ${field.propertyType.equals("Date")})
-    @JsonFormat(timezone = "GMT+8" , pattern = "yyyy-MM-dd HH:mm:ss")
-#if(${cfg.get("${table.name}exportExcel")})
-    @ColumnWidth(20)
-#end
-#end
-#if("$!field.comment" != "")
-    #if(${cfg.get("${table.name}exportExcel")})
-    @ExcelProperty(value = "${field.comment}" , index = ${foreach.index})
-    #end
-#else
-    #if(${cfg.get("${table.name}exportExcel")})
-    @ExcelProperty(value = "${field.propertyName}" , index = ${foreach.index})
-    #end
-#end
-    private ${field.propertyType} ${field.propertyName};
-#end
-## ----------END 字段循环遍历----------
-
-#if(!${entityLombokModel})
-#foreach($field in ${table.fields})
-#if(${field.propertyType.equals("boolean")})
-#set($getprefix="is")
-#else
-#set($getprefix="get")
-#end
-
-    public ${field.propertyType} ${getprefix}${field.capitalName}() {
-        return ${field.propertyName};
-    }
-
-#if(${chainModel})
-    public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#else
-    public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#end
-        this.${field.propertyName} = ${field.propertyName};
-#if(${chainModel})
-        return this;
-#end
-    }
-#end
-## --foreach end---
-#end
-## --end of #if(!${entityLombokModel})--
-
-#if(${entityColumnConstant})
-#foreach($field in ${table.fields})
-    public static final String ${field.name.toUpperCase()} = "${field.name}";
-
-#end
-#end
-#if(${activeRecord})
-    @Override
-    protected Serializable pkVal() {
-#if(${keyPropertyName})
-        return this.${keyPropertyName};
-#else
-        return null;
-#end
-    }
-
-#end
-#if(!${entityLombokModel})
-    @Override
-    public String toString() {
-        return "${entity}{" +
-#foreach($field in ${table.fields})
-#if($!{foreach.index}==0)
-                "${field.propertyName}=" + ${field.propertyName} +
-#else
-                ", ${field.propertyName}=" + ${field.propertyName} +
-#end
-#end
-        "}";
-    }
-#end
-}

+ 0 - 20
nb-codegen/src/main/resources/templates/mapper.java.vm

@@ -1,20 +0,0 @@
-package ${package.Mapper};
-
-import ${package.Entity}.${entity};
-import ${superMapperClassPackage};
-
-/**
- * <p>
- * $!{table.comment} Mapper 接口
- * </p>
- *
- * @author ${author}
- * @since ${date}
- */
-#if(${kotlin})
-interface ${table.mapperName} : ${superMapperClass}<${entity}>
-#else
-public interface ${table.mapperName} extends ${superMapperClass}<${entity}> {
-
-}
-#end

+ 0 - 39
nb-codegen/src/main/resources/templates/mapper.xml.vm

@@ -1,39 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="${package.Mapper}.${table.mapperName}">
-
-#if(${enableCache})
-    <!-- 开启二级缓存 -->
-    <cache type="org.mybatis.caches.ehcache.LoggingEhcache"/>
-
-#end
-#if(${baseResultMap})
-    <!-- 通用查询映射结果 -->
-    <resultMap id="BaseResultMap" type="${package.Entity}.${entity}">
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})##生成主键排在第一位
-        <id column="${field.name}" property="${field.propertyName}"/>
-#end
-#end
-#foreach($field in ${table.commonFields})##生成公共字段
-        <result column="${field.name}" property="${field.propertyName}"/>
-#end
-#foreach($field in ${table.fields})
-#if(!${field.keyFlag})##生成普通字段
-        <result column="${field.name}" property="${field.propertyName}"/>
-#end
-#end
-    </resultMap>
-
-#end
-#if(${baseColumnList})
-    <!-- 通用查询结果列 -->
-    <sql id="Base_Column_List">
-    #foreach($field in ${table.commonFields})
-    ${field.columnName},
-    #end
-    ${table.fieldNames}
-    </sql>
-
-#end
-</mapper>

+ 0 - 94
nb-codegen/src/main/resources/templates/queryDTO.java.vm

@@ -1,94 +0,0 @@
-package ${package.Controller.replace(".controller", "")}.common.dto;
-
-#foreach($pkg in ${table.importPackages})
-#if(${pkg.indexOf("baomidou")}==-1)
-import ${pkg};
-#end
-#end
-#if(${entityLombokModel})
-import lombok.Data;
-import lombok.EqualsAndHashCode;
-#if(${chainModel})
-import lombok.experimental.Accessors;
-#end
-#end
-
-/**
-* <p>
-* $!{table.comment}
-* </p>
-*
-* @author ${author}
-* @since ${date}
-*/
-#if(${entityLombokModel})
-@Data
-#if(${chainModel})
-@Accessors(chain = true)
-#end
-#end
-public class ${entity}QueryDTO implements Serializable {
-
-#if(${entitySerialVersionUID})
-    private static final long serialVersionUID = 1L;
-#end
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-
-#if("$!field.comment" != "")
-    /**
-    * ${field.comment}
-    */
-#end
-    private ${field.propertyType} ${field.propertyName};
-#end
-## ----------END 字段循环遍历----------
-
-#if(!${entityLombokModel})
-#foreach($field in ${table.fields})
-#if(${field.propertyType.equals("boolean")})
-#set($getprefix="is")
-#else
-#set($getprefix="get")
-#end
-
-    public ${field.propertyType} ${getprefix}${field.capitalName}() {
-        return ${field.propertyName};
-    }
-
-#if(${chainModel})
-    public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#else
-    public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
-#end
-        this.${field.propertyName} = ${field.propertyName};
-#if(${chainModel})
-        return this;
-#end
-    }
-#end
-## --foreach end---
-#end
-## --end of #if(!${entityLombokModel})--
-
-#if(${entityColumnConstant})
-#foreach($field in ${table.fields})
-    public static final String ${field.name.toUpperCase()} = "${field.name}";
-
-#end
-#end
-#if(!${entityLombokModel})
-    @Override
-    public String toString() {
-        return "${entity}{" +
-#foreach($field in ${table.fields})
-#if($!{foreach.index}==0)
-                "${field.propertyName}=" + ${field.propertyName} +
-#else
-                ", ${field.propertyName}=" + ${field.propertyName} +
-#end
-#end
-        "}";
-    }
-#end
-}

+ 0 - 75
nb-codegen/src/main/resources/templates/service.java.vm

@@ -1,75 +0,0 @@
-package ${package.Service};
-
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import ${superServiceClassPackage};
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}AddDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}EditDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}QueryDTO;
-import ${package.Entity}.${entity};
-
-import java.util.List;
-
-/**
- * <p>
- * $!{table.comment} 服务类
- * </p>
- *
- * @author ${author}
- * @since ${date}
- */
-#if(${kotlin})
-interface ${table.serviceName} : ${superServiceClass}<${entity}>
-#else
-public interface ${table.serviceName} extends ${superServiceClass}<${entity}> {
-    
-    /**
-     * 分页查询
-     *
-     * @param reqPage
-     * @param req
-     * @return
-     */
-    IPage<${entity}> page(Page reqPage, ${entity}QueryDTO req);
-#if(${cfg.get("${table.name}exportExcel")})
-
-    /**
-     * 查询列表
-     *
-     * @param req
-     * @return
-     */
-    List<${entity}> list(${entity}QueryDTO req);
-#end
-
-    /**
-     * 新增
-     *
-     * @param req
-     */
-    void add(${entity}AddDTO req);
-    
-    /**
-     * 修改
-     *
-     * @param req
-     */
-    void edit(${entity}EditDTO req);
-    
-    /**
-     * 删除
-     *
-     * @param deviceIds
-     */
-    void remove(String ids);
-    
-    /**
-     * 查看
-     *
-     * @param id
-     * @return
-     */
-    ${entity} view(String id);
-
-}
-#end

+ 0 - 113
nb-codegen/src/main/resources/templates/serviceImpl.java.vm

@@ -1,113 +0,0 @@
-package ${package.ServiceImpl};
-
-import cn.hutool.core.bean.BeanUtil;
-import cn.hutool.core.util.StrUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}AddDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}EditDTO;
-import ${package.Controller.replace(".controller", "")}.common.dto.${entity}QueryDTO;
-import ${package.Entity}.${entity};
-import ${package.Mapper}.${table.mapperName};
-import ${package.Service}.${table.serviceName};
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.Arrays;
-import java.util.List;
-import java.util.Objects;
-
-/**
- * <p>
- * $!{table.comment} 服务实现类
- * </p>
- *
- * @author ${author}
- * @since ${date}
- */
-@Service
-#if(${kotlin})
-open class ${table.serviceImplName} : ${superServiceImplClass}<${table.mapperName}, ${entity}>(), ${table.serviceName} {
-
-}
-#else
-public class ${table.serviceImplName} extends ${superServiceImplClass}<${table.mapperName}, ${entity}> implements ${table.serviceName} {
-
-    @Override
-    public IPage<${entity}> page(Page reqPage, ${entity}QueryDTO req) {
-        LambdaQueryWrapper<${entity}> queryWrapper = Wrappers.lambdaQuery();
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-## String
-#if(${field.propertyType.equals("String")})
-        queryWrapper.like(StrUtil.isNotBlank(req.get${field.capitalName}()), ${entity}::get${field.capitalName}, req.get${field.capitalName}());
-#else
-        queryWrapper.eq(Objects.nonNull(req.get${field.capitalName}()), ${entity}::get${field.capitalName}, req.get${field.capitalName}());
-#end
-#end
-#end
-## ----------END 字段循环遍历----------
-        return this.page(reqPage, queryWrapper);
-    }
-#if(${cfg.get("${table.name}exportExcel")})
-    
-    @Override
-    public List<${entity}> list(${entity}QueryDTO req) {
-        LambdaQueryWrapper<${entity}> queryWrapper = Wrappers.lambdaQuery();
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-## String
-#if(${field.propertyType.equals("String")})
-        queryWrapper.like(StrUtil.isNotBlank(req.get${field.capitalName}()), ${entity}::get${field.capitalName}, req.get${field.capitalName}());
-#else
-        queryWrapper.eq(Objects.nonNull(req.get${field.capitalName}()), ${entity}::get${field.capitalName}, req.get${field.capitalName}());
-#end
-#end
-#end
-## ----------END 字段循环遍历----------
-        return this.list(queryWrapper);
-    }
-#end
-    
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void add(${entity}AddDTO req) {
-        ${entity} entity = BeanUtil.copyProperties(req, ${entity}.class);
-        this.save(entity);
-    }
-    
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void edit(${entity}EditDTO req) {
-        ${entity} entity = BeanUtil.copyProperties(req, ${entity}.class);
-        this.updateById(entity);
-    }
-    
-    @Override
-    @Transactional(rollbackFor = Exception.class)
-    public void remove(String ids) {
-        this.removeByIds(Arrays.asList(ids.split(",")));
-    }
-    
-    @Override
-    public ${entity} view(String id) {
-        return this.getById(id);
-    }
-
-}
-#end

+ 0 - 24
nb-codegen/src/main/resources/templates/sql.vm

@@ -1,24 +0,0 @@
--- 菜单 SQL
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}menuId")}', 'menu', '${table.comment}管理', '${cfg.get("${table.name}parentMenuId")}', '${table.entityPath}', '/modules/${package.ModuleName}/${table.entityPath}/index', null, '${cfg.get("${table.name}icon")}', '0', '1', '0', null, null, 1, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
--- 按钮 SQL
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}pageButtonId")}', 'button', '${table.comment}查询', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:page', null, null, null, null, null, null, 1, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}addButtonId")}', 'button', '${table.comment}新增', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:add', null, null, null, null, null, null, 2, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}editButtonId")}', 'button', '${table.comment}修改', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:edit', null, null, null, null, null, null, 3, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}removeButtonId")}', 'button', '${table.comment}删除', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:remove', null, null, null, null, null, null, 4, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}viewButtonId")}', 'button', '${table.comment}查看', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:view', null, null, null, null, null, null, 5, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-
-#if(${cfg.get("${table.name}exportExcel")})
-insert into sys_menu (id, menu_type, menu_name, parent_id, route_path, component, permission, icon, keepalive, link_external, visible, frame, link_url, sort, remarks, create_by, create_time, update_by, update_time)
-values('${cfg.get("${table.name}exportButtonId")}', 'button', '${table.comment}导出', '${cfg.get("${table.name}menuId")}', null, null, '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:export', null, null, null, null, null, null, 6, null, '${cfg.get("${table.name}createBy")}', sysdate(), '${cfg.get("${table.name}updateBy")}', sysdate());
-#end

+ 0 - 65
nb-codegen/src/main/resources/templates/vue/FormModal.vue.vm

@@ -1,65 +0,0 @@
-<template>
-  <BasicModal
-    v-bind="$attrs"
-    destroyOnClose
-    @register="registerModal"
-    :title="getTitle"
-    @ok="handleSubmit"
-  >
-    <BasicForm @register="registerForm" />
-  </BasicModal>
-</template>
-<script lang="ts" setup>
-  import { ref, computed, unref } from 'vue';
-  import { BasicModal, useModalInner } from '/@/components/Modal';
-  import { BasicForm, useForm } from '/@/components/Form';
-  import { useMessage } from '/@/hooks/web/useMessage';
-  import { dataFormSchema } from './data';
-
-  import { addObj, editObj, viewObj } from '/@/api/modules#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}Api';
-
-  const emit = defineEmits(['success', 'register']);
-
-  const getTitle = computed(() => (!unref(isUpdate) ? '新增#if("$!table.comment" != "")${table.comment}#end' : '编辑#if("$!table.comment" != "")${table.comment}#end'));
-  const isUpdate = ref(false);
-  const rowId = ref();
-
-  const { createMessage } = useMessage();
-  const [registerForm, { setFieldsValue, resetFields, validate }] = useForm({
-    labelWidth: 100,
-    schemas: dataFormSchema,
-    showActionButtonGroup: false,
-    actionColOptions: {
-      span: 23,
-    },
-  });
-  const [registerModal, { setModalProps, closeModal }] = useModalInner(async (data) => {
-    await resetFields();
-    setModalProps({ confirmLoading: false });
-    isUpdate.value = !!data?.isUpdate;
-
-    if (unref(isUpdate)) {
-      rowId.value = data.record.id;
-      const resData = await viewObj({ id: data.record.id });
-      await setFieldsValue({
-        ...resData,
-      });
-    }
-  });
-
-  // 提交按钮事件
-  async function handleSubmit() {
-    try {
-      const values = await validate();
-      setModalProps({ confirmLoading: true });
-      !unref(isUpdate)
-        ? await addObj({ ...values })
-        : await editObj({ ...values, id: rowId.value });
-      !unref(isUpdate) ? createMessage.success('新增成功!') : createMessage.success('编辑成功!');
-      closeModal();
-      emit('success', { isUpdate: unref(isUpdate), values: { ...values, id: rowId.value } });
-    } finally {
-      setModalProps({ confirmLoading: false });
-    }
-  }
-</script>

+ 0 - 37
nb-codegen/src/main/resources/templates/vue/api.ts.vm

@@ -1,37 +0,0 @@
-import { defHttp } from '/@/utils/http/axios';
-
-enum Api {
-    fetchList = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/page',
-    addObj = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/add',
-    editObj = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/edit',
-    removeObj = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/remove',
-    viewObj = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/view',
-#if(${cfg.get("${table.name}exportExcel")})
-    exportList = '#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}/export',
-#end
-}
-
-export function fetchList(params?: object) {
-    return defHttp.get({ url: Api.fetchList, params: params });
-}
-
-export function addObj(params?: object) {
-    return defHttp.post({ url: Api.addObj, params: params });
-}
-
-export function editObj(params?: object) {
-    return defHttp.post({ url: Api.editObj, params: params });
-}
-
-export function removeObj(params?: object) {
-    return defHttp.post({ url: Api.removeObj, params: params }, { joinParamsToUrl: true });
-}
-
-export function viewObj(params?: object) {
-    return defHttp.get({ url: Api.viewObj, params: params });
-}
-#if(${cfg.get("${table.name}exportExcel")})
-export function exportList(params?: object) {
-    return defHttp.get({ url: Api.exportList, params: params });
-}
-#end

+ 0 - 65
nb-codegen/src/main/resources/templates/vue/data.ts.vm

@@ -1,65 +0,0 @@
-import { BasicColumn, FormSchema } from '/@/components/Table';
-
-export const columns: BasicColumn[] = [
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-    {
-        title: '#if("$!field.comment" != "")${field.comment}#else${field.propertyName}#end',
-        dataIndex: '${field.propertyName}',
-        width: 120,
-    },
-#end
-#end
-## ----------END 字段循环遍历----------
-];
-
-export const searchFormSchema: FormSchema[] = [
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-    {
-        field: '${field.propertyName}',
-        label: '#if("$!field.comment" != "")${field.comment}#else${field.propertyName}#end',
-        component: 'Input',
-        componentProps: {
-            placeholder: '请输入#if("$!field.comment" != "")${field.comment}#else${field.propertyName}#end',
-        },
-    },
-#end
-#end
-## ----------END 字段循环遍历----------
-];
-
-export const dataFormSchema: FormSchema[] = [
-## ----------BEGIN 字段循环遍历----------
-#foreach($field in ${table.fields})
-#if(${field.keyFlag})
-## 主键
-#if(${field.keyIdentityFlag})
-#end
-## 普通字段
-#else
-    {
-        field: '${field.propertyName}',
-        label: '#if("$!field.comment" != "")${field.comment}#else${field.propertyName}#end',
-        component: 'Input',
-        required: true,
-        componentProps: {
-            placeholder: '请输入#if("$!field.comment" != "")${field.comment}#else${field.propertyName}#end',
-        },
-    },
-#end
-#end
-## ----------END 字段循环遍历----------
-];

+ 0 - 139
nb-codegen/src/main/resources/templates/vue/index.vue.vm

@@ -1,139 +0,0 @@
-<template>
-  <div>
-    <BasicTable @register="registerTable">
-      <template #toolbar>
-        <a-button
-          v-auth="['#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:add']"
-          type="primary"
-          @click="handleCreate"
-          preIcon="ant-design:plus-outlined"
-          >新增</a-button
-        >
-#if(${cfg.get("${table.name}exportExcel")})
-        <a-button
-          v-auth="['#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:export']"
-          color="warning"
-          @click="handleExport"
-          preIcon="ant-design:download-outlined"
-          >导出</a-button
-        >
-#end
-      </template>
-      <template #action="{ record }">
-        <TableAction
-          :actions="[
-            {
-              auth: '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:edit',
-              icon: 'clarity:note-edit-line',
-              tooltip: '编辑',
-              onClick: handleEdit.bind(null, record),
-            },
-            {
-              auth: ['#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:remove'],
-              icon: 'ant-design:delete-outlined',
-              tooltip: '删除',
-              color: 'error',
-              popConfirm: {
-                title: '是否确认删除',
-                confirm: handleDelete.bind(null, record),
-              },
-            },
-          ]"
-        />
-      </template>
-    </BasicTable>
-    <FormModal @register="registerModal" @success="handleSuccess" />
-  </div>
-</template>
-<script lang="ts" setup>
-  import { ref } from 'vue';
-  import { Tag } from 'ant-design-vue';
-  import { BasicTable, useTable, TableAction } from '/@/components/Table';
-  import { useModal } from '/@/components/Modal';
-  import { useMessage } from '/@/hooks/web/useMessage';
-  import FormModal from './FormModal.vue';
-  import { columns, searchFormSchema } from './data';
-
-  import { fetchList, removeObj#if(${cfg.get("${table.name}exportExcel")}), exportList#end } from '/@/api/modules#if(${package.ModuleName})/${package.ModuleName}#end/${table.entityPath}Api';
-#if(${cfg.get("${table.name}exportExcel")})
-  import { downloadFile } from '/@/api/common';
-#end
-
-  const { createMessage, createConfirm } = useMessage();
-  const [registerModal, { openModal }] = useModal();
-  const [registerTable, { reload, getForm }] = useTable({
-    title: '#if("$!table.comment" != "")${table.comment}列表#end',
-    api: fetchList,
-    rowKey: 'id',
-    columns,
-    formConfig: {
-      labelWidth: 120,
-      schemas: searchFormSchema,
-      autoSubmitOnEnter: true,
-      resetButtonOptions: {
-        preIcon: 'ant-design:delete-outlined',
-      },
-      submitButtonOptions: {
-        preIcon: 'ant-design:search-outlined',
-      },
-    },
-    showIndexColumn: false,
-    useSearchForm: true,
-    showTableSetting: true,
-    bordered: true,
-    actionColumn: {
-      auth: ['#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:edit', '#if(${package.ModuleName})${package.ModuleName}:#end${table.entityPath}:remove'],
-      width: 80,
-      title: '操作',
-      dataIndex: 'action',
-      slots: { customRender: 'action' },
-    },
-  });
-
-  // 新增按钮事件
-  function handleCreate() {
-    openModal(true, {
-      isUpdate: false,
-    });
-  }
-
-  // 编辑按钮事件
-  function handleEdit(record: Recordable) {
-    console.log(record);
-    openModal(true, {
-      record,
-      isUpdate: true,
-    });
-  }
-
-  // 删除按钮事件
-  async function handleDelete(record: Recordable) {
-    console.log(record);
-    await removeObj({ ids: record.id });
-    createMessage.success('删除成功!');
-    await reload();
-  }
-#if(${cfg.get("${table.name}exportExcel")})
-
-  // 导出按钮事件
-  async function handleExport() {
-    createConfirm({
-      iconType: 'warning',
-      title: '提示',
-      content: '确认导出?',
-      onOk: async () => {
-        const params = getForm().getFieldsValue();
-        const filepath = await exportList(params);
-        downloadFile(filepath);
-      },
-    });
-  }
-#end
-
-  // 弹窗回调事件
-  async function handleSuccess({ isUpdate, values }) {
-    console.log(isUpdate);
-    console.log(values);
-    await reload();
-  }
-</script>

+ 134 - 0
nb-common/all-common/pom.xml

@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+    <parent>
+        <artifactId>nb-common</artifactId>
+        <groupId>com.tuoren</groupId>
+        <version>1.0</version>
+    </parent>
+    <modelVersion>4.0.0</modelVersion>
+
+    <artifactId>all-common</artifactId>
+    <dependencies>
+        <!--<dependency>-->
+        <!--<groupId>com.tuoren</groupId>-->
+        <!--<artifactId>nb-auth</artifactId>-->
+        <!--</dependency>-->
+
+        <dependency>
+            <groupId>com.tuoren</groupId>
+            <artifactId>nb-auth</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.t-io</groupId>
+            <artifactId>tio-websocket-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.projectlombok</groupId>
+            <artifactId>lombok</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-aop</artifactId>
+            <optional>true</optional>
+            <scope>compile</scope>
+        </dependency>
+        <!-- web 模块 -->
+        <dependency>
+            <groupId>com.github.xiaoymin</groupId>
+            <artifactId>knife4j-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-web</artifactId>
+            <exclusions>
+                <exclusion>
+                    <artifactId>spring-boot-starter-tomcat</artifactId>
+                    <groupId>org.springframework.boot</groupId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <!-- sa-token -->
+        <dependency>
+            <groupId>cn.dev33</groupId>
+            <artifactId>sa-token-spring-boot-starter</artifactId>
+        </dependency>
+        <!-- sa-token redis -->
+        <dependency>
+            <groupId>cn.dev33</groupId>
+            <artifactId>sa-token-dao-redis-jackson</artifactId>
+        </dependency>
+        <!--redis依赖 -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-data-redis</artifactId>
+        </dependency>
+        <!-- pool 对象池 -->
+        <dependency>
+            <groupId>org.apache.commons</groupId>
+            <artifactId>commons-pool2</artifactId>
+        </dependency>
+        <!-- mybatis plus -->
+        <dependency>
+            <groupId>com.baomidou</groupId>
+            <artifactId>mybatis-plus-boot-starter</artifactId>
+        </dependency>
+        <!-- hutool -->
+        <dependency>
+            <groupId>cn.hutool</groupId>
+            <artifactId>hutool-all</artifactId>
+        </dependency>
+        <!-- guava -->
+        <dependency>
+            <groupId>com.google.guava</groupId>
+            <artifactId>guava</artifactId>
+        </dependency>
+        <!-- fastjson -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>fastjson</artifactId>
+        </dependency>
+        <!-- servlet -->
+        <dependency>
+            <groupId>javax.servlet</groupId>
+            <artifactId>javax.servlet-api</artifactId>
+        </dependency>
+        <!-- hibernate validator -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-validation</artifactId>
+        </dependency>
+        <!--  自动生成YML配置关联JSON文件  -->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-configuration-processor</artifactId>
+        </dependency>
+        <!-- easyexcel -->
+        <dependency>
+            <groupId>com.alibaba</groupId>
+            <artifactId>easyexcel</artifactId>
+        </dependency>
+        <!-- minio -->
+        <dependency>
+            <groupId>io.minio</groupId>
+            <artifactId>minio</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>jakarta.websocket</groupId>
+            <artifactId>jakarta.websocket-api</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.redisson</groupId>
+            <artifactId>redisson-spring-boot-starter</artifactId>
+            <optional>true</optional>
+            <scope>compile</scope>
+        </dependency>
+
+        <dependency>
+            <groupId>org.jboss.marshalling</groupId>
+            <artifactId>jboss-marshalling</artifactId>
+        </dependency>
+    </dependencies>
+
+</project>

+ 0 - 0
nb-common/src/main/java/com/nb/common/Constants.java → nb-common/all-common/src/main/java/com/nb/common/Constants.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/MenuConstants.java → nb-common/all-common/src/main/java/com/nb/common/MenuConstants.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/apply/ApplyManager.java → nb-common/all-common/src/main/java/com/nb/common/apply/ApplyManager.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/aspect/DataSourceAspect.java → nb-common/all-common/src/main/java/com/nb/common/aspect/DataSourceAspect.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/aspect/DemoModelAspect.java → nb-common/all-common/src/main/java/com/nb/common/aspect/DemoModelAspect.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/bo/DictModel.java → nb-common/all-common/src/main/java/com/nb/common/bo/DictModel.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/bo/SysRoleBO.java → nb-common/all-common/src/main/java/com/nb/common/bo/SysRoleBO.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/cache/CacheConfig.java → nb-common/all-common/src/main/java/com/nb/common/cache/CacheConfig.java


+ 1 - 1
nb-common/src/main/java/com/nb/common/cache/ClusterConfigStorage.java → nb-common/all-common/src/main/java/com/nb/common/cache/ClusterConfigStorage.java

@@ -2,7 +2,7 @@ package com.nb.common.cache;
 
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.annotation.IEnum;
-import com.nb.common.cache.value.Value;
+import com.nb.core.Value;
 import org.springframework.data.redis.core.BoundHashOperations;
 import org.springframework.data.redis.core.RedisTemplate;
 import org.springframework.util.CollectionUtils;

+ 1 - 1
nb-common/src/main/java/com/nb/common/cache/ConfigStorage.java → nb-common/all-common/src/main/java/com/nb/common/cache/ConfigStorage.java

@@ -1,7 +1,7 @@
 package com.nb.common.cache;
 
 
-import com.nb.common.cache.value.Value;
+import com.nb.core.Value;
 
 import java.util.Collection;
 import java.util.Map;

+ 0 - 0
nb-common/src/main/java/com/nb/common/cache/manager/ClusterConfigStorageManager.java → nb-common/all-common/src/main/java/com/nb/common/cache/manager/ClusterConfigStorageManager.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/cache/manager/ConfigStorageManager.java → nb-common/all-common/src/main/java/com/nb/common/cache/manager/ConfigStorageManager.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/cache/message/ClusterCache.java → nb-common/all-common/src/main/java/com/nb/common/cache/message/ClusterCache.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/cache/message/RedisClusterCache.java → nb-common/all-common/src/main/java/com/nb/common/cache/message/RedisClusterCache.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/AppConfig.java → nb-common/all-common/src/main/java/com/nb/common/config/AppConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/BooleanToIntegerSerializer.java → nb-common/all-common/src/main/java/com/nb/common/config/BooleanToIntegerSerializer.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/CacheHttpServletRequestWrapper.java → nb-common/all-common/src/main/java/com/nb/common/config/CacheHttpServletRequestWrapper.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/CachingContentFilter.java → nb-common/all-common/src/main/java/com/nb/common/config/CachingContentFilter.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/CorsConfig.java → nb-common/all-common/src/main/java/com/nb/common/config/CorsConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/MinioConfig.java → nb-common/all-common/src/main/java/com/nb/common/config/MinioConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/mybatis/DateToBigIntHandler.java → nb-common/all-common/src/main/java/com/nb/common/config/mybatis/DateToBigIntHandler.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/mybatis/GetNameInterface.java → nb-common/all-common/src/main/java/com/nb/common/config/mybatis/GetNameInterface.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/mybatis/TenantNameHandler.java → nb-common/all-common/src/main/java/com/nb/common/config/mybatis/TenantNameHandler.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/sa/SaConfig.java → nb-common/all-common/src/main/java/com/nb/common/config/sa/SaConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/sa/SaTokenActionDefaultImpl.java → nb-common/all-common/src/main/java/com/nb/common/config/sa/SaTokenActionDefaultImpl.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/sa/SaTokenConfig.java → nb-common/all-common/src/main/java/com/nb/common/config/sa/SaTokenConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/web/RequestCheckProperties.java → nb-common/all-common/src/main/java/com/nb/common/config/web/RequestCheckProperties.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/web/handler/CheckRequestHandler.java → nb-common/all-common/src/main/java/com/nb/common/config/web/handler/CheckRequestHandler.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/web/handler/TenantIdHandler.java → nb-common/all-common/src/main/java/com/nb/common/config/web/handler/TenantIdHandler.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/DefaultMessageListener.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/DefaultMessageListener.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/DefaultRedisCallBack.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/DefaultRedisCallBack.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/HospitalCodeCheck.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/HospitalCodeCheck.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/MessageResponse.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/MessageResponse.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/MessagingRequest.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/MessagingRequest.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/TopicMessage.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/TopicMessage.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/WebSocketConstant.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/WebSocketConstant.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/handler/Subscribe.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/Subscribe.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/handler/TopicWrapper.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/TopicWrapper.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/config/websocket/handler/WsHandler.java → nb-common/all-common/src/main/java/com/nb/common/config/websocket/handler/WsHandler.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/convert/ExcelDictConverter.java → nb-common/all-common/src/main/java/com/nb/common/convert/ExcelDictConverter.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/datasource/DynamicDataSource.java → nb-common/all-common/src/main/java/com/nb/common/datasource/DynamicDataSource.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/datasource/DynamicDataSourceContextHolder.java → nb-common/all-common/src/main/java/com/nb/common/datasource/DynamicDataSourceContextHolder.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/BizEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/BizEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/DataScopeEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/DataScopeEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/DelFlagEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/DelFlagEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/FileStorageStrategyEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/FileStorageStrategyEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/FrameEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/FrameEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/GrantTypeEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/GrantTypeEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/KeepaliveEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/KeepaliveEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/LinkExternalEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/LinkExternalEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/MenuTypeEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/MenuTypeEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/SexEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/SexEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/StatusEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/StatusEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/VisibleEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/VisibleEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/enums/YesNoEnum.java → nb-common/all-common/src/main/java/com/nb/common/enums/YesNoEnum.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/event/EventConfig.java → nb-common/all-common/src/main/java/com/nb/common/event/EventConfig.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/notice/NotifyEnums.java → nb-common/all-common/src/main/java/com/nb/common/notice/NotifyEnums.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/notice/SystemMonitor.java → nb-common/all-common/src/main/java/com/nb/common/notice/SystemMonitor.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/notice/msg/AbstractMsg.java → nb-common/all-common/src/main/java/com/nb/common/notice/msg/AbstractMsg.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/notice/msg/DeviceMsg.java → nb-common/all-common/src/main/java/com/nb/common/notice/msg/DeviceMsg.java


+ 0 - 0
nb-common/src/main/java/com/nb/common/notice/msg/DiskMsg.java → nb-common/all-common/src/main/java/com/nb/common/notice/msg/DiskMsg.java


部分文件因文件數量過多而無法顯示