From 1f07b59a3dc89342f1d33b6e2d728b4f1624e27d Mon Sep 17 00:00:00 2001
From: zds <2388969634@qq.com>
Date: Tue, 20 May 2025 16:50:35 +0800
Subject: [PATCH] =?UTF-8?q?del:=E5=88=A0=E9=99=A4=E4=B8=80=E6=9C=9F?=
=?UTF-8?q?=E5=AF=86=E9=9B=86=E5=BA=93=E7=9B=B8=E5=85=B3=E4=B8=9A=E5=8A=A1?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../org/nl/b_lms/sch/tasks/TwoInTask.java | 12 -
.../impl/StIvtIostorinvServiceImpl.java | 10 -
.../nl/config/CustomJsonConfiguration.java | 50 -
.../modules/generator/domain/ColumnInfo.java | 99 -
.../modules/generator/domain/GenConfig.java | 80 -
.../generator/domain/vo/TableInfo.java | 59 -
.../repository/ColumnInfoRepository.java | 36 -
.../repository/GenConfigRepository.java | 34 -
.../generator/rest/GenConfigController.java | 50 -
.../generator/rest/GeneratorController.java | 111 -
.../generator/service/GenConfigService.java | 42 -
.../generator/service/GeneratorService.java | 107 -
.../service/impl/GenConfigServiceImpl.java | 71 -
.../service/impl/GeneratorServiceImpl.java | 203 -
.../nl/modules/generator/utils/ColUtil.java | 56 -
.../nl/modules/generator/utils/GenUtil.java | 426 --
.../org/nl/modules/logging/domain/Log.java | 104 -
.../logging/repository/LogRepository.java | 40 -
.../modules/logging/rest/LogController.java | 89 -
.../modules/logging/service/LogService.java | 87 -
.../logging/service/impl/LogServiceImpl.java | 161 -
.../logicflow/rest/StageController.java | 88 -
.../logicflow/rest/StageImageController.java | 72 -
.../logicflow/service/StageImageService.java | 59 -
.../logicflow/service/StageService.java | 75 -
.../logicflow/service/dto/StageDto.java | 63 -
.../logicflow/service/dto/StageImageDto.java | 68 -
.../service/impl/StageImageServiceImpl.java | 112 -
.../service/impl/StageServiceImpl.java | 134 -
.../rest/MobileAuthorizationController.java | 90 -
.../system/rest/CodeDetailController.java | 57 -
.../system/rest/GenCodeController.java | 67 -
.../modules/system/rest/LimitController.java | 46 -
.../system/rest/MonitorController.java | 45 -
.../modules/system/rest/RedisController.java | 56 -
.../system/service/CodeDetailService.java | 23 -
.../modules/system/service/DataService.java | 37 -
.../system/service/GenCodeService.java | 50 -
.../system/service/MonitorService.java | 32 -
.../modules/system/service/ParamService.java | 81 -
.../modules/system/service/RedisService.java | 39 -
.../system/service/convert/RedisConvert.java | 36 -
.../modules/system/service/dto/ParamDto.java | 40 -
.../system/service/entity/RedisKeyDefine.java | 112 -
.../service/entity/RedisKeyRegistry.java | 28 -
.../service/impl/CodeDetailServiceImpl.java | 80 -
.../service/impl/GenCodeServiceImpl.java | 184 -
.../service/impl/MonitorServiceImpl.java | 194 -
.../system/service/impl/RedisServiceImpl.java | 83 -
.../service/vo/RedisKeyDefineRespVO.java | 38 -
.../system/service/vo/RedisMonitorRespVO.java | 46 -
.../nl/modules/system/service/vo/UserVo.java | 9 -
.../org/nl/modules/system/util/CodeUtil.java | 19 -
.../org/nl/modules/system/util/YamlUtil.java | 11 -
.../java/org/nl/modules/system/wql/sys.xls | Bin 220160 -> 95232 bytes
.../main/java/org/nl/sql/add_column0320.sql | 7 -
.../src/main/java/org/nl/ssosql-1228.sql | 1026 ---
.../master/rest/SupplierbaseController.java | 61 -
.../master/service/SupplierbaseService.java | 71 -
.../master/service/dto/SupplierbaseDto.java | 158 -
.../service/impl/SupplierbaseServiceImpl.java | 165 -
.../master/wql/QMD_PB_STORAGEVEHICLEEXT.wql | 114 -
.../org/nl/wms/basedata/master/wql/mdcs.xls | Bin 184320 -> 159232 bytes
.../wms/ext/acs/rest/AcsToWmsController.java | 15 -
.../wms/ext/acs/service/AcsToWmsService.java | 17 -
.../acs/service/impl/AcsToWmsServiceImpl.java | 655 --
.../mes/service/impl/MesToLmsServiceImpl.java | 55 -
.../sap/service/impl/SapToLmsServiceImpl.java | 203 -
.../mps/service/impl/FeedingServiceImpl.java | 57 -
.../impl/ProductInstorServiceImpl.java | 9 -
.../service/impl/VirtualOutServiceImpl.java | 5 -
.../org/nl/wms/pdm/wql/PDM_BI_DEVICE01.wql | 58 -
.../src/main/java/org/nl/wms/pdm/wql/em.xls | Bin 182272 -> 57344 bytes
.../src/main/java/org/nl/wms/pdm/wql/pdm.xls | Bin 254976 -> 247808 bytes
.../sch/service/impl/PointServiceImpl.java | 15 -
.../java/org/nl/wms/sch/tasks/InTask.java | 257 -
.../java/org/nl/wms/sch/tasks/OutTask.java | 188 -
.../inbill/rest/RawAssistIStorController.java | 299 -
.../inbill/service/CheckOutBillService.java | 331 -
.../inbill/service/RawAssistIStorService.java | 82 -
.../impl/RawAssistIStorServiceImpl.java | 2955 --------
.../instor/rest/HandMoveStorController.java | 7 -
.../instor/service/HandMoveStorService.java | 5 -
.../service/impl/HandMoveStorServiceImpl.java | 747 +-
.../service/impl/ProductScrapServiceImpl.java | 8 -
.../service/impl/RecutPlanServiceImpl.java | 11 -
.../outbill/rest/CheckOutBillController.java | 465 --
.../service/impl/CheckOutBillServiceImpl.java | 6391 -----------------
.../rest/InAndOutReturnlController.java | 4 +-
.../main/resources/config/application-dev.yml | 8 +-
.../src/main/resources/config/application.yml | 2 +-
91 files changed, 19 insertions(+), 18533 deletions(-)
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/config/CustomJsonConfiguration.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/ColumnInfo.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/GenConfig.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/vo/TableInfo.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/ColumnInfoRepository.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/GenConfigRepository.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GenConfigController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GeneratorController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GenConfigService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GeneratorService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GenConfigServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GeneratorServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/ColUtil.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/GenUtil.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logging/domain/Log.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logging/repository/LogRepository.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logging/rest/LogController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logging/service/LogService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LogServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageImageService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/security/rest/MobileAuthorizationController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/rest/CodeDetailController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/rest/GenCodeController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/rest/LimitController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/rest/MonitorController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/rest/RedisController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/CodeDetailService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/DataService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/GenCodeService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/MonitorService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/ParamService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/RedisService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/convert/RedisConvert.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/dto/ParamDto.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyDefine.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyRegistry.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/CodeDetailServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/GenCodeServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/RedisServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisKeyDefineRespVO.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisMonitorRespVO.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/UserVo.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/modules/system/util/YamlUtil.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/sql/add_column0320.sql
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/ssosql-1228.sql
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/rest/SupplierbaseController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/SupplierbaseService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/dto/SupplierbaseDto.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/service/impl/SupplierbaseServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/basedata/master/wql/QMD_PB_STORAGEVEHICLEEXT.wql
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/pdm/wql/PDM_BI_DEVICE01.wql
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/InTask.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/sch/tasks/OutTask.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/rest/RawAssistIStorController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/CheckOutBillService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/RawAssistIStorService.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/inbill/service/impl/RawAssistIStorServiceImpl.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/rest/CheckOutBillController.java
delete mode 100644 lms/nladmin-system/src/main/java/org/nl/wms/st/outbill/service/impl/CheckOutBillServiceImpl.java
diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoInTask.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoInTask.java
index f9930c5..a745cb7 100644
--- a/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoInTask.java
+++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/sch/tasks/TwoInTask.java
@@ -2,37 +2,25 @@ package org.nl.b_lms.sch.tasks;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
-import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import org.nl.b_lms.storage_manage.ios.enums.IOSEnum;
-import org.nl.b_lms.storage_manage.ios.service.iostorInv.IStIvtIostorinvdisService;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.dao.StIvtIostorinvdis;
-import org.nl.b_lms.storage_manage.ios.service.iostorInv.impl.StIvtIostorinvServiceImpl;
import org.nl.b_lms.storage_manage.ios.service.iostorInv.impl.StIvtIostorinvdisServiceImpl;
import org.nl.common.utils.SecurityUtils;
import org.nl.modules.common.exception.BadRequestException;
import org.nl.modules.wql.core.bean.WQLObject;
import org.nl.modules.wql.util.SpringContextHolder;
-import org.nl.wms.basedata.st.service.dto.StructattrDto;
-import org.nl.wms.basedata.st.service.impl.StructattrServiceImpl;
import org.nl.wms.sch.AcsTaskDto;
import org.nl.wms.sch.manage.AbstractAcsTask;
import org.nl.wms.sch.manage.TaskStatusEnum;
-import org.nl.wms.st.inbill.service.impl.InbillServiceImpl;
-import org.nl.wms.st.inbill.service.impl.RawAssistIStorServiceImpl;
-import org.nl.wms.st.inbill.service.impl.StorPublicServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
import static org.nl.wms.util.TaskUtil.getRoutePlanCode;
diff --git a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java
index 8a92a07..cd6da7a 100644
--- a/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java
+++ b/lms/nladmin-system/src/main/java/org/nl/b_lms/storage_manage/ios/service/iostorInv/impl/StIvtIostorinvServiceImpl.java
@@ -3,7 +3,6 @@ package org.nl.b_lms.storage_manage.ios.service.iostorInv.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
@@ -16,10 +15,7 @@ import com.github.pagehelper.PageHelper;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
-import org.nl.b_lms.pdm.bi.slittingproductionplan.service.IPdmBiSlittingproductionplanService;
-import org.nl.b_lms.pdm.bi.slittingproductionplan.service.dao.mapper.PdmBiSlittingproductionplanMapper;
import org.nl.b_lms.pdm.subpackagerelation.dao.PdmBiSubpackagerelation;
-import org.nl.b_lms.pdm.subpackagerelation.dao.mapper.PdmBiSubpackagerelationMapper;
import org.nl.b_lms.pdm.subpackagerelation.service.IpdmBiSubpackagerelationService;
import org.nl.b_lms.pdm_manage.enums.SUBEnum;
import org.nl.b_lms.sch.tasks.TwoInTask;
@@ -51,7 +47,6 @@ import org.nl.wms.sch.manage.AbstractAcsTask;
import org.nl.wms.sch.manage.TaskStatusEnum;
import org.nl.wms.sch.service.PointService;
import org.nl.wms.sch.service.dto.PointDto;
-import org.nl.wms.sch.tasks.InTask;
import org.nl.wms.st.inbill.service.StorPublicService;
import org.nl.wms.st.returns.service.impl.InAndOutRetrunServiceImpl;
import org.redisson.api.RLock;
@@ -60,12 +55,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Pageable;
import org.springframework.http.HttpStatus;
import org.springframework.stereotype.Service;
-import org.springframework.transaction.PlatformTransactionManager;
-import org.springframework.transaction.TransactionDefinition;
-import org.springframework.transaction.TransactionStatus;
-import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
-import org.springframework.transaction.support.DefaultTransactionDefinition;
import javax.annotation.Resource;
import java.math.BigDecimal;
diff --git a/lms/nladmin-system/src/main/java/org/nl/config/CustomJsonConfiguration.java b/lms/nladmin-system/src/main/java/org/nl/config/CustomJsonConfiguration.java
deleted file mode 100644
index 66c472f..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/config/CustomJsonConfiguration.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*
-package org.nl.config;
-
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.module.SimpleModule;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import org.springframework.context.annotation.Configuration;
-import org.springframework.http.converter.HttpMessageConverter;
-import org.springframework.http.converter.json.MappingJackson2HttpMessageConverter;
-import org.springframework.web.servlet.config.annotation.EnableWebMvc;
-import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
-
-import java.util.List;
-
-*/
-/**
- * 处理前端和后端Long类型失去精度问题.
- * https://blog.51cto.com/u_15127549/3519757
- *
- * 序列换成json时,将所有的long变成string
- * 因为js中得数字类型不能包含所有的java long值
- *
- * 序列换成json时,将所有的long变成string
- * 因为js中得数字类型不能包含所有的java long值
- *//*
-
-@Configuration
-@EnableWebMvc
-public class CustomJsonConfiguration implements WebMvcConfigurer {
- @Override
- public void configureMessageConverters(List> converters) {
- MappingJackson2HttpMessageConverter jackson2HttpMessageConverter = new MappingJackson2HttpMessageConverter();
-
- ObjectMapper objectMapper = new ObjectMapper();
- */
-/**
- * 序列换成json时,将所有的long变成string
- * 因为js中得数字类型不能包含所有的java long值
- *//*
-
- SimpleModule simpleModule = new SimpleModule();
- simpleModule.addSerializer(Long.class, ToStringSerializer.instance);
- simpleModule.addSerializer(Long.TYPE, ToStringSerializer.instance);
- objectMapper.registerModule(simpleModule);
-
- jackson2HttpMessageConverter.setObjectMapper(objectMapper);
- converters.add(jackson2HttpMessageConverter);
- }
-}
-*/
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/ColumnInfo.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/ColumnInfo.java
deleted file mode 100644
index 71f527e..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/ColumnInfo.java
+++ /dev/null
@@ -1,99 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.domain;
-//
-//
-//import lombok.Getter;
-//import lombok.NoArgsConstructor;
-//import lombok.Setter;
-//import org.nl.common.utils.GenUtil;
-//
-//import javax.persistence.*;
-//import java.io.Serializable;
-//
-///**
-// * 列的数据信息
-// *
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//@Getter
-//@Setter
-//@Entity
-//@NoArgsConstructor
-//@Table(name = "code_column_config")
-//public class ColumnInfo implements Serializable {
-//
-// @Id
-// @Column(name = "column_id")
-//
-// @GeneratedValue(strategy = GenerationType.IDENTITY)
-// private Long id;
-//
-//
-// private String tableName;
-//
-//
-// private String columnName;
-//
-//
-// private String columnType;
-//
-//
-// private String keyType;
-//
-//
-// private String extra;
-//
-//
-// private String remark;
-//
-//
-// private Boolean notNull;
-//
-//
-// private Boolean listShow;
-//
-//
-// private Boolean formShow;
-//
-//
-// private String formType;
-//
-//
-// private String queryType;
-//
-//
-// private String dictName;
-//
-//
-// private String dateAnnotation;
-//
-// public ColumnInfo(String tableName, String columnName, Boolean notNull, String columnType, String remark, String keyType, String extra) {
-// this.tableName = tableName;
-// this.columnName = columnName;
-// this.columnType = columnType;
-// this.keyType = keyType;
-// this.extra = extra;
-// this.notNull = notNull;
-// if (GenUtil.PK.equalsIgnoreCase(keyType) && GenUtil.EXTRA.equalsIgnoreCase(extra)) {
-// this.notNull = false;
-// }
-// this.remark = remark;
-// this.listShow = true;
-// this.formShow = true;
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/GenConfig.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/GenConfig.java
deleted file mode 100644
index b239ca2..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/GenConfig.java
+++ /dev/null
@@ -1,80 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.domain;
-//
-//
-//import lombok.Getter;
-//import lombok.NoArgsConstructor;
-//import lombok.Setter;
-//
-//import javax.persistence.*;
-//import javax.validation.constraints.NotBlank;
-//import java.io.Serializable;
-//
-///**
-// * 代码生成配置
-// *
-// * @author Zheng Jie
-// * @date 2019-01-03
-// */
-//@Getter
-//@Setter
-//@Entity
-//@NoArgsConstructor
-//@Table(name = "code_gen_config")
-//public class GenConfig implements Serializable {
-//
-// public GenConfig(String tableName) {
-// this.tableName = tableName;
-// }
-//
-// @Id
-// @Column(name = "config_id")
-//
-// @GeneratedValue(strategy = GenerationType.IDENTITY)
-// private Long id;
-//
-// @NotBlank
-//
-// private String tableName;
-//
-//
-// private String apiAlias;
-//
-// @NotBlank
-//
-// private String pack;
-//
-// @NotBlank
-//
-// private String moduleName;
-//
-// @NotBlank
-//
-// private String path;
-//
-//
-// private String apiPath;
-//
-//
-// private String author;
-//
-//
-// private String prefix;
-//
-//
-// private Boolean cover = false;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/vo/TableInfo.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/vo/TableInfo.java
deleted file mode 100644
index 29cffd3..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/domain/vo/TableInfo.java
+++ /dev/null
@@ -1,59 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.domain.vo;
-//
-//import lombok.AllArgsConstructor;
-//import lombok.Data;
-//import lombok.NoArgsConstructor;
-//
-///**
-// * 表的数据信息
-// *
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//@Data
-//@AllArgsConstructor
-//@NoArgsConstructor
-//public class TableInfo {
-//
-// /**
-// * 表名称
-// */
-// private Object tableName;
-//
-// /**
-// * 创建日期
-// */
-// private Object createTime;
-//
-// /**
-// * 数据库引擎
-// */
-// private Object engine;
-//
-// /**
-// * 编码集
-// */
-// private Object coding;
-//
-// /**
-// * 备注
-// */
-// private Object remark;
-//
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/ColumnInfoRepository.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/ColumnInfoRepository.java
deleted file mode 100644
index 2ff37d2..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/ColumnInfoRepository.java
+++ /dev/null
@@ -1,36 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.repository;
-//
-//import org.nl.modules.generator.domain.ColumnInfo;
-//import org.springframework.data.jpa.repository.JpaRepository;
-//
-//import java.util.List;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-14
-// */
-//public interface ColumnInfoRepository extends JpaRepository {
-//
-// /**
-// * 查询表信息
-// *
-// * @param tableName 表格名
-// * @return 表信息
-// */
-// List findByTableNameOrderByIdAsc(String tableName);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/GenConfigRepository.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/GenConfigRepository.java
deleted file mode 100644
index 35fee49..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/repository/GenConfigRepository.java
+++ /dev/null
@@ -1,34 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.repository;
-//
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.springframework.data.jpa.repository.JpaRepository;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-14
-// */
-//public interface GenConfigRepository extends JpaRepository {
-//
-// /**
-// * 查询表配置
-// *
-// * @param tableName 表名
-// * @return /
-// */
-// GenConfig findByTableName(String tableName);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GenConfigController.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GenConfigController.java
deleted file mode 100644
index 0f1b142..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GenConfigController.java
+++ /dev/null
@@ -1,50 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.nl.modules.generator.service.GenConfigService;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.*;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-14
-// */
-//@RestController
-//@RequiredArgsConstructor
-//@RequestMapping("/api/genConfig2")
-//
-//public class GenConfigController {
-//
-// private final GenConfigService genConfigService;
-//
-//
-// @GetMapping(value = "/{tableName}")
-// public ResponseEntity query(@PathVariable String tableName) {
-// return new ResponseEntity<>(genConfigService.find(tableName), HttpStatus.OK);
-// }
-//
-//
-// @PutMapping
-// public ResponseEntity update(@Validated @RequestBody GenConfig genConfig) {
-// return new ResponseEntity<>(genConfigService.update(genConfig.getTableName(), genConfig), HttpStatus.OK);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GeneratorController.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GeneratorController.java
deleted file mode 100644
index 0abe055..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/rest/GeneratorController.java
+++ /dev/null
@@ -1,111 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.common.utils.PageUtil;
-//import org.nl.modules.generator.domain.ColumnInfo;
-//import org.nl.modules.generator.service.GenConfigService;
-//import org.nl.modules.generator.service.GeneratorService;
-//import org.springframework.beans.factory.annotation.Value;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.web.bind.annotation.*;
-//
-//import javax.servlet.http.HttpServletRequest;
-//import javax.servlet.http.HttpServletResponse;
-//import java.util.List;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//@RestController
-//@RequiredArgsConstructor
-//@RequestMapping("/api/generator2")
-//
-//public class GeneratorController {
-//
-// private final GeneratorService generatorService;
-// private final GenConfigService genConfigService;
-//
-// @Value("${generator.enabled}")
-// private Boolean generatorEnabled;
-//
-//
-// @GetMapping(value = "/tables/all")
-// public ResponseEntity queryTables() {
-// return new ResponseEntity<>(generatorService.getTables(), HttpStatus.OK);
-// }
-//
-//
-// @GetMapping(value = "/tables")
-// public ResponseEntity queryTables(@RequestParam(defaultValue = "") String name,
-// @RequestParam(defaultValue = "0") Integer page,
-// @RequestParam(defaultValue = "10") Integer size) {
-// int[] startEnd = PageUtil.transToStartEnd(page, size);
-// return new ResponseEntity<>(generatorService.getTables(name, startEnd), HttpStatus.OK);
-// }
-//
-//
-// @GetMapping(value = "/columns")
-// public ResponseEntity queryColumns(@RequestParam String tableName) {
-// List columnInfos = generatorService.getColumns(tableName);
-// return new ResponseEntity<>(PageUtil.toPage(columnInfos, columnInfos.size()), HttpStatus.OK);
-// }
-//
-//
-// @PutMapping
-// public ResponseEntity save(@RequestBody List columnInfos) {
-// generatorService.save(columnInfos);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-//
-// @PostMapping(value = "sync")
-// public ResponseEntity sync(@RequestBody List tables) {
-// for (String table : tables) {
-// generatorService.sync(generatorService.getColumns(table), generatorService.query(table));
-// }
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-//
-// @PostMapping(value = "/{tableName}/{type}")
-// public ResponseEntity generator(@PathVariable String tableName, @PathVariable Integer type, HttpServletRequest request, HttpServletResponse response) {
-// if (!generatorEnabled && type == 0) {
-// throw new BadRequestException("此环境不允许生成代码,请选择预览或者下载查看!");
-// }
-// switch (type) {
-// // 生成代码
-// case 0:
-// generatorService.generator(genConfigService.find(tableName), generatorService.getColumns(tableName));
-// break;
-// // 预览
-// case 1:
-// return generatorService.preview(genConfigService.find(tableName), generatorService.getColumns(tableName));
-// // 打包
-// case 2:
-// generatorService.download(genConfigService.find(tableName), generatorService.getColumns(tableName), request, response);
-// break;
-// default:
-// throw new BadRequestException("没有这个选项");
-// }
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GenConfigService.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GenConfigService.java
deleted file mode 100644
index 009ba59..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GenConfigService.java
+++ /dev/null
@@ -1,42 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.service;
-//
-//import org.nl.modules.generator.domain.GenConfig;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-14
-// */
-//public interface GenConfigService {
-//
-// /**
-// * 查询表配置
-// *
-// * @param tableName 表名
-// * @return 表配置
-// */
-// GenConfig find(String tableName);
-//
-// /**
-// * 更新表配置
-// *
-// * @param tableName 表名
-// * @param genConfig 表配置
-// * @return 表配置
-// */
-// GenConfig update(String tableName, GenConfig genConfig);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GeneratorService.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GeneratorService.java
deleted file mode 100644
index d055154..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/GeneratorService.java
+++ /dev/null
@@ -1,107 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.service;
-//
-//import org.nl.modules.generator.domain.ColumnInfo;
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.scheduling.annotation.Async;
-//
-//import javax.servlet.http.HttpServletRequest;
-//import javax.servlet.http.HttpServletResponse;
-//import java.util.List;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//public interface GeneratorService {
-//
-// /**
-// * 查询数据库元数据
-// *
-// * @param name 表名
-// * @param startEnd 分页参数
-// * @return /
-// */
-// Object getTables(String name, int[] startEnd);
-//
-// /**
-// * 得到数据表的元数据
-// *
-// * @param name 表名
-// * @return /
-// */
-// List getColumns(String name);
-//
-// /**
-// * 同步表数据
-// *
-// * @param columnInfos /
-// * @param columnInfoList /
-// */
-// @Async
-// void sync(List columnInfos, List columnInfoList);
-//
-// /**
-// * 保持数据
-// *
-// * @param columnInfos /
-// */
-// void save(List columnInfos);
-//
-// /**
-// * 获取所有table
-// *
-// * @return /
-// */
-// Object getTables();
-//
-// /**
-// * 代码生成
-// *
-// * @param genConfig 配置信息
-// * @param columns 字段信息
-// */
-// void generator(GenConfig genConfig, List columns);
-//
-// /**
-// * 预览
-// *
-// * @param genConfig 配置信息
-// * @param columns 字段信息
-// * @return /
-// */
-// ResponseEntity preview(GenConfig genConfig, List columns);
-//
-// /**
-// * 打包下载
-// *
-// * @param genConfig 配置信息
-// * @param columns 字段信息
-// * @param request /
-// * @param response /
-// */
-// void download(GenConfig genConfig, List columns, HttpServletRequest request, HttpServletResponse response);
-//
-// /**
-// * 查询数据库的表字段数据数据
-// *
-// * @param table /
-// * @return /
-// */
-// List query(String table);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GenConfigServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GenConfigServiceImpl.java
deleted file mode 100644
index 0728b97..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GenConfigServiceImpl.java
+++ /dev/null
@@ -1,71 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.service.impl;
-//
-//import cn.hutool.core.util.StrUtil;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.nl.modules.generator.repository.GenConfigRepository;
-//import org.nl.modules.generator.service.GenConfigService;
-//import org.springframework.stereotype.Service;
-//
-//import java.io.File;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-14
-// */
-//@Service
-//@RequiredArgsConstructor
-//public class GenConfigServiceImpl implements GenConfigService {
-//
-// private final GenConfigRepository genConfigRepository;
-//
-// @Override
-// public GenConfig find(String tableName) {
-// GenConfig genConfig = genConfigRepository.findByTableName(tableName);
-// if (genConfig == null) {
-// return new GenConfig(tableName);
-// }
-// return genConfig;
-// }
-//
-// @Override
-// public GenConfig update(String tableName, GenConfig genConfig) {
-// // 如果 api 路径为空,则自动生成路径
-// if (StrUtil.isEmpty(genConfig.getApiPath())) {
-// String separator = File.separator;
-// String[] paths;
-// String symbol = "\\";
-// if (symbol.equals(separator)) {
-// paths = genConfig.getPath().split("\\\\");
-// } else {
-// paths = genConfig.getPath().split(File.separator);
-// }
-// StringBuilder api = new StringBuilder();
-// for (String path : paths) {
-// api.append(path);
-// api.append(separator);
-// if ("src".equals(path)) {
-// api.append("api");
-// break;
-// }
-// }
-// genConfig.setApiPath(api.toString());
-// }
-// return genConfigRepository.save(genConfig);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GeneratorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GeneratorServiceImpl.java
deleted file mode 100644
index 2ca2614..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/service/impl/GeneratorServiceImpl.java
+++ /dev/null
@@ -1,203 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.service.impl;
-//
-//import cn.hutool.core.collection.CollectionUtil;
-//import cn.hutool.core.util.ObjectUtil;
-//import cn.hutool.core.util.StrUtil;
-//import cn.hutool.core.util.ZipUtil;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.common.utils.FileUtil;
-//import org.nl.modules.common.utils.PageUtil;
-//import org.nl.modules.generator.domain.ColumnInfo;
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.nl.modules.generator.domain.vo.TableInfo;
-//import org.nl.modules.generator.repository.ColumnInfoRepository;
-//import org.nl.modules.generator.service.GeneratorService;
-//import org.nl.modules.generator.utils.GenUtil;
-//import org.slf4j.Logger;
-//import org.slf4j.LoggerFactory;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.stereotype.Service;
-//
-//import javax.persistence.EntityManager;
-//import javax.persistence.PersistenceContext;
-//import javax.persistence.Query;
-//import javax.servlet.http.HttpServletRequest;
-//import javax.servlet.http.HttpServletResponse;
-//import java.io.File;
-//import java.io.IOException;
-//import java.util.ArrayList;
-//import java.util.List;
-//import java.util.Map;
-//import java.util.stream.Collectors;
-//
-///**
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//@Service
-//@RequiredArgsConstructor
-//public class GeneratorServiceImpl implements GeneratorService {
-// private static final Logger log = LoggerFactory.getLogger(GeneratorServiceImpl.class);
-// @PersistenceContext
-// private EntityManager em;
-//
-// private final ColumnInfoRepository columnInfoRepository;
-//
-// @Override
-// public Object getTables() {
-// // 使用预编译防止sql注入
-// String sql = "select table_name ,create_time , engine, table_collation, table_comment from information_schema.tables " +
-// "where table_schema = (select database()) " +
-// "order by create_time desc";
-// Query query = em.createNativeQuery(sql);
-// return query.getResultList();
-// }
-//
-// @Override
-// public Object getTables(String name, int[] startEnd) {
-// // 使用预编译防止sql注入
-// String sql = "select table_name ,create_time , engine, table_collation, table_comment from information_schema.tables " +
-// "where table_schema = (select database()) " +
-// "and table_name like ? order by create_time desc";
-// Query query = em.createNativeQuery(sql);
-// query.setFirstResult(startEnd[0]);
-// query.setMaxResults(startEnd[1] - startEnd[0]);
-// query.setParameter(1, StrUtil.isNotEmpty(name) ? ("%" + name + "%") : "%%");
-// List result = query.getResultList();
-// List tableInfos = new ArrayList<>();
-// for (Object obj : result) {
-// Object[] arr = (Object[]) obj;
-// tableInfos.add(new TableInfo(arr[0], arr[1], arr[2], arr[3], ObjectUtil.isNotEmpty(arr[4]) ? arr[4] : "-"));
-// }
-// Query query1 = em.createNativeQuery("SELECT COUNT(*) from information_schema.tables where table_schema = (select database())");
-// Object totalElements = query1.getSingleResult();
-// return PageUtil.toPage(tableInfos, totalElements);
-// }
-//
-// @Override
-// public List getColumns(String tableName) {
-// List columnInfos = columnInfoRepository.findByTableNameOrderByIdAsc(tableName);
-// if (CollectionUtil.isNotEmpty(columnInfos)) {
-// return columnInfos;
-// } else {
-// columnInfos = query(tableName);
-// return columnInfoRepository.saveAll(columnInfos);
-// }
-// }
-//
-// @Override
-// public List query(String tableName) {
-// // 使用预编译防止sql注入
-// String sql = "select column_name, is_nullable, data_type, column_comment, column_key, extra from information_schema.columns " +
-// "where table_name = ? and table_schema = (select database()) order by ordinal_position";
-// Query query = em.createNativeQuery(sql);
-// query.setParameter(1, tableName);
-// List result = query.getResultList();
-// List columnInfos = new ArrayList<>();
-// for (Object obj : result) {
-// Object[] arr = (Object[]) obj;
-// columnInfos.add(
-// new ColumnInfo(
-// tableName,
-// arr[0].toString(),
-// "NO".equals(arr[1]),
-// arr[2].toString(),
-// ObjectUtil.isNotNull(arr[3]) ? arr[3].toString() : null,
-// ObjectUtil.isNotNull(arr[4]) ? arr[4].toString() : null,
-// ObjectUtil.isNotNull(arr[5]) ? arr[5].toString() : null)
-// );
-// }
-// return columnInfos;
-// }
-//
-// @Override
-// public void sync(List columnInfos, List columnInfoList) {
-// // 第一种情况,数据库类字段改变或者新增字段
-// for (ColumnInfo columnInfo : columnInfoList) {
-// // 根据字段名称查找
-// List columns = columnInfos.stream().filter(c -> c.getColumnName().equals(columnInfo.getColumnName())).collect(Collectors.toList());
-// // 如果能找到,就修改部分可能被字段
-// if (CollectionUtil.isNotEmpty(columns)) {
-// ColumnInfo column = columns.get(0);
-// column.setColumnType(columnInfo.getColumnType());
-// column.setExtra(columnInfo.getExtra());
-// column.setKeyType(columnInfo.getKeyType());
-// if (StrUtil.isEmpty(column.getRemark())) {
-// column.setRemark(columnInfo.getRemark());
-// }
-// columnInfoRepository.save(column);
-// } else {
-// // 如果找不到,则保存新字段信息
-// columnInfoRepository.save(columnInfo);
-// }
-// }
-// // 第二种情况,数据库字段删除了
-// for (ColumnInfo columnInfo : columnInfos) {
-// // 根据字段名称查找
-// List columns = columnInfoList.stream().filter(c -> c.getColumnName().equals(columnInfo.getColumnName())).collect(Collectors.toList());
-// // 如果找不到,就代表字段被删除了,则需要删除该字段
-// if (CollectionUtil.isEmpty(columns)) {
-// columnInfoRepository.delete(columnInfo);
-// }
-// }
-// }
-//
-// @Override
-// public void save(List columnInfos) {
-// columnInfoRepository.saveAll(columnInfos);
-// }
-//
-// @Override
-// public void generator(GenConfig genConfig, List columns) {
-// if (genConfig.getId() == null) {
-// throw new BadRequestException("请先配置生成器");
-// }
-// try {
-// GenUtil.generatorCode(columns, genConfig);
-// } catch (IOException e) {
-// log.error(e.getMessage(), e);
-// throw new BadRequestException("生成失败,请手动处理已生成的文件");
-// }
-// }
-//
-// @Override
-// public ResponseEntity preview(GenConfig genConfig, List columns) {
-// if (genConfig.getId() == null) {
-// throw new BadRequestException("请先配置生成器");
-// }
-// List> genList = GenUtil.preview(columns, genConfig);
-// return new ResponseEntity<>(genList, HttpStatus.OK);
-// }
-//
-// @Override
-// public void download(GenConfig genConfig, List columns, HttpServletRequest request, HttpServletResponse response) {
-// if (genConfig.getId() == null) {
-// throw new BadRequestException("请先配置生成器");
-// }
-// try {
-// File file = new File(GenUtil.download(columns, genConfig));
-// String zipPath = file.getPath() + ".zip";
-// ZipUtil.zip(file.getPath(), zipPath);
-// FileUtil.downloadFile(request, response, new File(zipPath), true);
-// } catch (IOException e) {
-// throw new BadRequestException("打包失败");
-// }
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/ColUtil.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/ColUtil.java
deleted file mode 100644
index 908decf..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/ColUtil.java
+++ /dev/null
@@ -1,56 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.utils;
-//
-//import org.apache.commons.configuration.Configuration;
-//import org.apache.commons.configuration.ConfigurationException;
-//import org.apache.commons.configuration.PropertiesConfiguration;
-//import org.slf4j.Logger;
-//import org.slf4j.LoggerFactory;
-//
-///**
-// * sql字段转java
-// *
-// * @author Zheng Jie
-// * @date 2019-01-03
-// */
-//public class ColUtil {
-// private static final Logger log = LoggerFactory.getLogger(ColUtil.class);
-//
-// /**
-// * 转换mysql数据类型为java数据类型
-// *
-// * @param type 数据库字段类型
-// * @return String
-// */
-// static String cloToJava(String type) {
-// Configuration config = getConfig();
-// assert config != null;
-// return config.getString(type, "unknowType");
-// }
-//
-// /**
-// * 获取配置信息
-// */
-// public static PropertiesConfiguration getConfig() {
-// try {
-// return new PropertiesConfiguration("generator.properties");
-// } catch (ConfigurationException e) {
-// log.error(e.getMessage(), e);
-// }
-// return null;
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/GenUtil.java b/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/GenUtil.java
deleted file mode 100644
index 6c2c285..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/generator/utils/GenUtil.java
+++ /dev/null
@@ -1,426 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.generator.utils;
-//
-//import cn.hutool.core.util.StrUtil;
-//import cn.hutool.extra.template.*;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.modules.common.utils.FileUtil;
-//import org.nl.modules.common.utils.StringUtils;
-//import org.nl.modules.generator.domain.ColumnInfo;
-//import org.nl.modules.generator.domain.GenConfig;
-//import org.springframework.util.ObjectUtils;
-//
-//import java.io.File;
-//import java.io.FileWriter;
-//import java.io.IOException;
-//import java.io.Writer;
-//import java.time.LocalDate;
-//import java.util.ArrayList;
-//import java.util.HashMap;
-//import java.util.List;
-//import java.util.Map;
-//
-//import static org.nl.modules.common.utils.FileUtil.SYS_TEM_DIR;
-//
-//
-///**
-// * 代码生成
-// *
-// * @author Zheng Jie
-// * @date 2019-01-02
-// */
-//@Slf4j
-//@SuppressWarnings({"unchecked", "all"})
-//public class GenUtil {
-//
-// private static final String TIMESTAMP = "Timestamp";
-//
-// private static final String BIGDECIMAL = "BigDecimal";
-//
-// public static final String PK = "PRI";
-//
-// public static final String EXTRA = "auto_increment";
-//
-// /**
-// * 获取后端代码模板名称
-// *
-// * @return List
-// */
-// private static List getAdminTemplateNames() {
-// List templateNames = new ArrayList<>();
-// // templateNames.add("Entity");
-// templateNames.add("Dto");
-// // templateNames.add("Mapper");
-// templateNames.add("Controller");
-// //templateNames.add("QueryCriteria");
-// templateNames.add("Service");
-// templateNames.add("ServiceImpl");
-// // templateNames.add("Repository");
-// return templateNames;
-// }
-//
-// /**
-// * 获取前端代码模板名称
-// *
-// * @return List
-// */
-// private static List getFrontTemplateNames() {
-// List templateNames = new ArrayList<>();
-// templateNames.add("index");
-// templateNames.add("api");
-// return templateNames;
-// }
-//
-// public static List> preview(List columns, GenConfig genConfig) {
-// Map genMap = getGenMap(columns, genConfig);
-// List> genList = new ArrayList<>();
-// // 获取后端模版
-// List templates = getAdminTemplateNames();
-// TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH));
-// for (String templateName : templates) {
-// Map map = new HashMap<>(1);
-// Template template = engine.getTemplate("generator/admin/" + templateName + ".ftl");
-// map.put("content", template.render(genMap));
-// map.put("name", templateName);
-// genList.add(map);
-// }
-// // 获取前端模版
-// templates = getFrontTemplateNames();
-// for (String templateName : templates) {
-// Map map = new HashMap<>(1);
-// Template template = engine.getTemplate("generator/front/" + templateName + ".ftl");
-// map.put(templateName, template.render(genMap));
-// map.put("content", template.render(genMap));
-// map.put("name", templateName);
-// genList.add(map);
-// }
-// return genList;
-// }
-//
-// public static String download(List columns, GenConfig genConfig) throws IOException {
-// // 拼接的路径:/tmpnladmin-gen-temp/,这个路径在Linux下需要root用户才有权限创建,非root用户会权限错误而失败,更改为: /tmp/nladmin-gen-temp/
-// // String tempPath =SYS_TEM_DIR + "nladmin-gen-temp" + File.separator + genConfig.getTableName() + File.separator;
-// String tempPath = SYS_TEM_DIR + "nladmin-gen-temp" + File.separator + genConfig.getTableName() + File.separator;
-// Map genMap = getGenMap(columns, genConfig);
-// TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH));
-// // 生成后端代码
-// List templates = getAdminTemplateNames();
-// for (String templateName : templates) {
-// Template template = engine.getTemplate("generator/admin/" + templateName + ".ftl");
-// String filePath = getAdminFilePath(templateName, genConfig, genMap.get("className").toString(), tempPath + "eladmin" + File.separator);
-// assert filePath != null;
-// File file = new File(filePath);
-// // 如果非覆盖生成
-// if (!genConfig.getCover() && FileUtil.exist(file)) {
-// continue;
-// }
-// // 生成代码
-// genFile(file, template, genMap);
-// }
-// // 生成前端代码
-// templates = getFrontTemplateNames();
-// for (String templateName : templates) {
-// Template template = engine.getTemplate("generator/front/" + templateName + ".ftl");
-// String path = tempPath + "nladmin-web" + File.separator;
-// String apiPath = path + "src" + File.separator + "api" + File.separator;
-// String srcPath = path + "src" + File.separator + "views" + File.separator + genMap.get("changeClassName").toString() + File.separator;
-// String filePath = getFrontFilePath(templateName, apiPath, srcPath, genMap.get("changeClassName").toString());
-// assert filePath != null;
-// File file = new File(filePath);
-// // 如果非覆盖生成
-// if (!genConfig.getCover() && FileUtil.exist(file)) {
-// continue;
-// }
-// // 生成代码
-// genFile(file, template, genMap);
-// }
-// return tempPath;
-// }
-//
-// public static void generatorCode(List columnInfos, GenConfig genConfig) throws IOException {
-// Map genMap = getGenMap(columnInfos, genConfig);
-// TemplateEngine engine = TemplateUtil.createEngine(new TemplateConfig("template", TemplateConfig.ResourceMode.CLASSPATH));
-// // 生成后端代码
-// List templates = getAdminTemplateNames();
-// for (String templateName : templates) {
-// Template template = engine.getTemplate("generator/admin/" + templateName + ".ftl");
-// String filePath = getAdminFilePath(templateName, genConfig, genMap.get("className").toString(), System.getProperty("user.dir"));
-//
-// assert filePath != null;
-// File file = new File(filePath);
-//
-// // 如果非覆盖生成
-// if (!genConfig.getCover() && FileUtil.exist(file)) {
-// continue;
-// }
-// // 生成代码
-// genFile(file, template, genMap);
-// }
-//
-// // 生成前端代码
-// templates = getFrontTemplateNames();
-// for (String templateName : templates) {
-// Template template = engine.getTemplate("generator/front/" + templateName + ".ftl");
-// String filePath = getFrontFilePath(templateName, genConfig.getApiPath(), genConfig.getPath(), genMap.get("changeClassName").toString());
-//
-// assert filePath != null;
-// File file = new File(filePath);
-//
-// // 如果非覆盖生成
-// if (!genConfig.getCover() && FileUtil.exist(file)) {
-// continue;
-// }
-// // 生成代码
-// genFile(file, template, genMap);
-// }
-// }
-//
-// // 获取模版数据
-// private static Map getGenMap(List columnInfos, GenConfig genConfig) {
-// // 存储模版字段数据
-// Map genMap = new HashMap<>(16);
-// // 接口别名
-// genMap.put("apiAlias", genConfig.getApiAlias());
-// // 包名称
-// genMap.put("package", genConfig.getPack());
-// // 模块名称
-// genMap.put("moduleName", genConfig.getModuleName());
-// // 作者
-// genMap.put("author", genConfig.getAuthor());
-// // 创建日期
-// genMap.put("date", LocalDate.now().toString());
-// // 表名
-// genMap.put("tableName", genConfig.getTableName());
-// // 大写开头的类名
-// String className = StringUtils.toCapitalizeCamelCase(genConfig.getTableName());
-// // 小写开头的类名
-// String changeClassName = StringUtils.toCamelCase(genConfig.getTableName());
-// // 判断是否去除表前缀
-// if (StrUtil.isNotEmpty(genConfig.getPrefix())) {
-// className = StringUtils.toCapitalizeCamelCase(StrUtil.removePrefix(genConfig.getTableName(), genConfig.getPrefix()));
-// changeClassName = StringUtils.toCamelCase(StrUtil.removePrefix(genConfig.getTableName(), genConfig.getPrefix()));
-// }
-// // 保存类名
-// genMap.put("className", className);
-// // 保存小写开头的类名
-// genMap.put("changeClassName", changeClassName);
-// // 存在 Timestamp 字段
-// genMap.put("hasTimestamp", false);
-// // 查询类中存在 Timestamp 字段
-// genMap.put("queryHasTimestamp", false);
-// // 存在 BigDecimal 字段
-// genMap.put("hasBigDecimal", false);
-// // 查询类中存在 BigDecimal 字段
-// genMap.put("queryHasBigDecimal", false);
-// // 是否需要创建查询
-// genMap.put("hasQuery", false);
-// // 自增主键
-// genMap.put("auto", false);
-// // 存在字典
-// genMap.put("hasDict", false);
-// // 存在日期注解
-// genMap.put("hasDateAnnotation", false);
-// // 保存字段信息
-// List> columns = new ArrayList<>();
-// // 保存查询字段的信息
-// List> queryColumns = new ArrayList<>();
-// // 存储字典信息
-// List dicts = new ArrayList<>();
-// // 存储 between 信息
-// List> betweens = new ArrayList<>();
-// // 存储不为空的字段信息
-// List> isNotNullColumns = new ArrayList<>();
-//
-// for (ColumnInfo column : columnInfos) {
-// Map listMap = new HashMap<>(16);
-// // 字段描述
-// listMap.put("remark", column.getRemark());
-// // 字段类型
-// listMap.put("columnKey", column.getKeyType());
-// // 主键类型
-// String colType = ColUtil.cloToJava(column.getColumnType());
-// // 小写开头的字段名
-// //String changeColumnName = StringUtils.toCamelCase(column.getColumnName());
-// String changeColumnName = column.getColumnName();
-// // 大写开头的字段名
-// String capitalColumnName = StringUtils.toCapitalizeCamelCase(column.getColumnName());
-// if (PK.equals(column.getKeyType())) {
-// // 存储主键类型
-// genMap.put("pkColumnType", colType);
-// // 存储小写开头的字段名
-// genMap.put("pkChangeColName", changeColumnName);
-// // 存储大写开头的字段名
-// genMap.put("pkCapitalColName", capitalColumnName);
-// }
-// // 是否存在 Timestamp 类型的字段
-// if (TIMESTAMP.equals(colType)) {
-// genMap.put("hasTimestamp", true);
-// }
-// // 是否存在 BigDecimal 类型的字段
-// if (BIGDECIMAL.equals(colType)) {
-// genMap.put("hasBigDecimal", true);
-// }
-// // 主键是否自增
-// if (EXTRA.equals(column.getExtra())) {
-// genMap.put("auto", true);
-// }
-// // 主键存在字典
-// if (StrUtil.isNotEmpty(column.getDictName())) {
-// genMap.put("hasDict", true);
-// dicts.add(column.getDictName());
-// }
-//
-// // 存储字段类型
-// listMap.put("columnType", colType);
-// // 存储字原始段名称
-// listMap.put("columnName", column.getColumnName());
-// // 不为空
-// listMap.put("istNotNull", column.getNotNull());
-// // 字段列表显示
-// listMap.put("columnShow", column.getListShow());
-// // 表单显示
-// listMap.put("formShow", column.getFormShow());
-// // 表单组件类型
-// listMap.put("formType", StrUtil.isNotEmpty(column.getFormType()) ? column.getFormType() : "Input");
-// // 小写开头的字段名称
-// listMap.put("changeColumnName", changeColumnName);
-// //大写开头的字段名称
-// listMap.put("capitalColumnName", capitalColumnName);
-// // 字典名称
-// listMap.put("dictName", column.getDictName());
-// // 日期注解
-// listMap.put("dateAnnotation", column.getDateAnnotation());
-// if (StrUtil.isNotEmpty(column.getDateAnnotation())) {
-// genMap.put("hasDateAnnotation", true);
-// }
-// // 添加非空字段信息
-// if (column.getNotNull()) {
-// isNotNullColumns.add(listMap);
-// }
-// // 判断是否有查询,如有则把查询的字段set进columnQuery
-// if (!StrUtil.isEmpty(column.getQueryType())) {
-// // 查询类型
-// listMap.put("queryType", column.getQueryType());
-// // 是否存在查询
-// genMap.put("hasQuery", true);
-// if (TIMESTAMP.equals(colType)) {
-// // 查询中存储 Timestamp 类型
-// genMap.put("queryHasTimestamp", true);
-// }
-// if (BIGDECIMAL.equals(colType)) {
-// // 查询中存储 BigDecimal 类型
-// genMap.put("queryHasBigDecimal", true);
-// }
-// if ("between".equalsIgnoreCase(column.getQueryType())) {
-// betweens.add(listMap);
-// } else {
-// // 添加到查询列表中
-// queryColumns.add(listMap);
-// }
-// }
-// // 添加到字段列表中
-// columns.add(listMap);
-// }
-// // 保存字段列表
-// genMap.put("columns", columns);
-// // 保存查询列表
-// genMap.put("queryColumns", queryColumns);
-// // 保存字段列表
-// genMap.put("dicts", dicts);
-// // 保存查询列表
-// genMap.put("betweens", betweens);
-// // 保存非空字段信息
-// genMap.put("isNotNullColumns", isNotNullColumns);
-// return genMap;
-// }
-//
-// /**
-// * 定义后端文件路径以及名称
-// */
-// private static String getAdminFilePath(String templateName, GenConfig genConfig, String className, String rootPath) {
-// String projectPath = rootPath + File.separator + genConfig.getModuleName();
-// String packagePath = projectPath + File.separator + "src" + File.separator + "main" + File.separator + "java" + File.separator;
-// if (!ObjectUtils.isEmpty(genConfig.getPack())) {
-// packagePath += genConfig.getPack().replace(".", File.separator) + File.separator;
-// }
-//
-// if ("Entity".equals(templateName)) {
-// return packagePath + "domain" + File.separator + className + ".java";
-// }
-//
-// if ("Controller".equals(templateName)) {
-// return packagePath + "rest" + File.separator + className + "Controller.java";
-// }
-//
-// if ("Service".equals(templateName)) {
-// return packagePath + "service" + File.separator + className + "Service.java";
-// }
-//
-// if ("ServiceImpl".equals(templateName)) {
-// return packagePath + "service" + File.separator + "impl" + File.separator + className + "ServiceImpl.java";
-// }
-//
-// if ("Dto".equals(templateName)) {
-// return packagePath + "service" + File.separator + "dto" + File.separator + className + "Dto.java";
-// }
-//
-// if ("QueryCriteria".equals(templateName)) {
-// return packagePath + "service" + File.separator + "dto" + File.separator + className + "QueryCriteria.java";
-// }
-//
-// if ("Mapper".equals(templateName)) {
-// return packagePath + "service" + File.separator + "mapstruct" + File.separator + className + "Mapper.java";
-// }
-//
-// if ("Repository".equals(templateName)) {
-// return packagePath + "repository" + File.separator + className + "Repository.java";
-// }
-//
-// return null;
-// }
-//
-// /**
-// * 定义前端文件路径以及名称
-// */
-// private static String getFrontFilePath(String templateName, String apiPath, String path, String apiName) {
-//
-// if ("api".equals(templateName)) {
-// return apiPath + File.separator + apiName + ".js";
-// }
-//
-// if ("index".equals(templateName)) {
-// return path + File.separator + "index.vue";
-// }
-//
-// return null;
-// }
-//
-// private static void genFile(File file, Template template, Map map) throws IOException {
-// // 生成目标文件
-// Writer writer = null;
-// try {
-// FileUtil.touch(file);
-// writer = new FileWriter(file);
-// template.render(map, writer);
-// } catch (TemplateException | IOException e) {
-// throw new RuntimeException(e);
-// } finally {
-// assert writer != null;
-// writer.close();
-// }
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/domain/Log.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/domain/Log.java
deleted file mode 100644
index 4cc7eb0..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/domain/Log.java
+++ /dev/null
@@ -1,104 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.logging.domain;
-//
-//import lombok.Getter;
-//import lombok.NoArgsConstructor;
-//import lombok.Setter;
-//import org.hibernate.annotations.CreationTimestamp;
-//
-//import javax.persistence.*;
-//import java.io.Serializable;
-//import java.sql.Timestamp;
-//
-///**
-// * @author Zheng Jie
-// * @date 2018-11-24
-// */
-//@Entity
-//@Getter
-//@Setter
-//@Table(name = "sys_log")
-//@NoArgsConstructor
-//public class Log implements Serializable {
-//
-// @Id
-// @Column(name = "log_id")
-// @GeneratedValue(strategy = GenerationType.IDENTITY)
-// private Long id;
-//
-// /**
-// * 操作用户
-// */
-// private String username;
-//
-// /**
-// * 描述
-// */
-// private String description;
-//
-// /**
-// * 方法名
-// */
-// private String method;
-//
-// /**
-// * 参数
-// */
-// private String params;
-//
-// /**
-// * 日志类型
-// */
-// private String logType;
-//
-// /**
-// * 请求ip
-// */
-// private String requestIp;
-//
-// /**
-// * 地址
-// */
-// private String address;
-//
-// /**
-// * 浏览器
-// */
-// private String browser;
-//
-// /**
-// * 请求耗时
-// */
-// private Long time;
-//
-// /**
-// * 异常详细
-// */
-// private byte[] exceptionDetail;
-//
-// /**
-// * 创建日期
-// */
-// @CreationTimestamp
-// private Timestamp createTime;
-//
-// public Log(String logType, Long time) {
-// this.logType = logType;
-// this.time = time;
-// }
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/repository/LogRepository.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/repository/LogRepository.java
deleted file mode 100644
index 7e2c9c8..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/repository/LogRepository.java
+++ /dev/null
@@ -1,40 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.logging.repository;
-//
-//import org.nl.modules.logging.domain.Log;
-//import org.springframework.data.jpa.repository.JpaRepository;
-//import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
-//import org.springframework.data.jpa.repository.Modifying;
-//import org.springframework.data.jpa.repository.Query;
-//import org.springframework.stereotype.Repository;
-//
-///**
-// * @author Zheng Jie
-// * @date 2018-11-24
-// */
-//@Repository
-//public interface LogRepository extends JpaRepository, JpaSpecificationExecutor {
-//
-// /**
-// * 根据日志类型删除信息
-// *
-// * @param logType 日志类型
-// */
-// @Modifying
-// @Query(value = "delete from sys_log where log_type = ?1", nativeQuery = true)
-// void deleteByLogType(String logType);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/rest/LogController.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/rest/LogController.java
deleted file mode 100644
index 42fc567..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/rest/LogController.java
+++ /dev/null
@@ -1,89 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.logging.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import org.nl.common.utils.SecurityUtils;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.logging.service.LogService;
-//import org.nl.modules.logging.service.dto.LogQueryCriteria;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.web.bind.annotation.*;
-//
-///**
-// * @author Zheng Jie
-// * @date 2018-11-24
-// */
-//@RestController
-//@RequiredArgsConstructor
-//@RequestMapping("/api/logs")
-//
-//public class LogController {
-//
-// private final LogService logService;
-//
-// @GetMapping
-//
-// //@SaCheckPermission("@el.check()")
-// public ResponseEntity query(LogQueryCriteria criteria, Pageable pageable) {
-// criteria.setLogType("INFO");
-// return new ResponseEntity<>(logService.queryAll(criteria, pageable), HttpStatus.OK);
-// }
-//
-// @GetMapping(value = "/user")
-// //
-// public ResponseEntity queryUserLog(LogQueryCriteria criteria, Pageable pageable) {
-// criteria.setLogType("INFO");
-// criteria.setBlurry(SecurityUtils.getCurrentUsername());
-// return new ResponseEntity<>(logService.queryAllByUser(criteria, pageable), HttpStatus.OK);
-// }
-//
-// @GetMapping(value = "/error")
-//
-// // @SaCheckPermission("@el.check()")
-// public ResponseEntity queryErrorLog(LogQueryCriteria criteria, Pageable pageable) {
-// criteria.setLogType("ERROR");
-// return new ResponseEntity<>(logService.queryAll(criteria, pageable), HttpStatus.OK);
-// }
-//
-// @GetMapping(value = "/error/{id}")
-//
-// // @SaCheckPermission("@el.check()")
-// public ResponseEntity queryErrorLogs(@PathVariable Long id) {
-// return new ResponseEntity<>(logService.findByErrDetail(id), HttpStatus.OK);
-// }
-//
-// @DeleteMapping(value = "/del/error")
-// @Log("删除所有ERROR日志")
-//
-// // @SaCheckPermission("@el.check()")
-// public ResponseEntity delAllErrorLog() {
-// logService.delAllByError();
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-// @DeleteMapping(value = "/del/info")
-// @Log("删除所有INFO日志")
-//
-// // @SaCheckPermission("@el.check()")
-// public ResponseEntity delAllInfoLog() {
-// logService.delAllByInfo();
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/LogService.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/LogService.java
deleted file mode 100644
index 84c81bb..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/LogService.java
+++ /dev/null
@@ -1,87 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.logging.service;
-//
-//import org.aspectj.lang.ProceedingJoinPoint;
-//import org.nl.modules.logging.domain.Log;
-//import org.nl.modules.logging.service.dto.LogQueryCriteria;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.scheduling.annotation.Async;
-//
-//import java.util.List;
-//
-///**
-// * @author Zheng Jie
-// * @date 2018-11-24
-// */
-//public interface LogService {
-//
-// /**
-// * 分页查询
-// *
-// * @param criteria 查询条件
-// * @param pageable 分页参数
-// * @return /
-// */
-// Object queryAll(LogQueryCriteria criteria, Pageable pageable);
-//
-// /**
-// * 查询全部数据
-// *
-// * @param criteria 查询条件
-// * @return /
-// */
-// List queryAll(LogQueryCriteria criteria);
-//
-// /**
-// * 查询用户日志
-// *
-// * @param criteria 查询条件
-// * @param pageable 分页参数
-// * @return -
-// */
-// Object queryAllByUser(LogQueryCriteria criteria, Pageable pageable);
-//
-// /**
-// * 保存日志数据
-// *
-// * @param username 用户
-// * @param browser 浏览器
-// * @param ip 请求IP
-// * @param joinPoint /
-// * @param log 日志实体
-// */
-// @Async
-// void save(String username, String browser, String ip, ProceedingJoinPoint joinPoint, Log log);
-//
-// /**
-// * 查询异常详情
-// *
-// * @param id 日志ID
-// * @return Object
-// */
-// Object findByErrDetail(Long id);
-//
-// /**
-// * 删除所有错误日志
-// */
-// void delAllByError();
-//
-// /**
-// * 删除所有INFO日志
-// */
-// void delAllByInfo();
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LogServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LogServiceImpl.java
deleted file mode 100644
index 5cf139e..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logging/service/impl/LogServiceImpl.java
+++ /dev/null
@@ -1,161 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.logging.service.impl;
-//
-//import cn.hutool.core.date.DateUtil;
-//import cn.hutool.core.lang.Dict;
-//import cn.hutool.core.util.ObjectUtil;
-//import cn.hutool.core.util.StrUtil;
-//import cn.hutool.json.JSONUtil;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.aspectj.lang.ProceedingJoinPoint;
-//import org.aspectj.lang.reflect.MethodSignature;
-//import org.nl.modules.common.utils.PageUtil;
-//import org.nl.modules.common.utils.QueryHelp;
-//import org.nl.modules.common.utils.StringUtils;
-//import org.nl.modules.common.utils.ValidationUtil;
-//import org.nl.modules.logging.domain.Log;
-//import org.nl.modules.logging.repository.LogRepository;
-//import org.nl.modules.logging.service.LogService;
-//import org.nl.modules.logging.service.dto.LogQueryCriteria;
-//import org.nl.modules.logging.service.mapstruct.LogErrorMapper;
-//import org.nl.modules.logging.service.mapstruct.LogSmallMapper;
-//import org.springframework.data.domain.Page;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.stereotype.Service;
-//import org.springframework.transaction.annotation.Transactional;
-//import org.springframework.web.bind.annotation.RequestBody;
-//import org.springframework.web.bind.annotation.RequestParam;
-//
-//import java.lang.reflect.Method;
-//import java.lang.reflect.Parameter;
-//import java.sql.Timestamp;
-//import java.util.ArrayList;
-//import java.util.HashMap;
-//import java.util.List;
-//import java.util.Map;
-//
-///**
-// * @author Zheng Jie
-// * @date 2018-11-24
-// */
-//@Service
-//@RequiredArgsConstructor
-//@Slf4j
-//public class LogServiceImpl implements LogService {
-// private final LogRepository logRepository;
-// private final LogErrorMapper logErrorMapper;
-// private final LogSmallMapper logSmallMapper;
-//
-// @Override
-// public Object queryAll(LogQueryCriteria criteria, Pageable pageable) {
-// Page page = logRepository.findAll(((root, criteriaQuery, cb) -> QueryHelp.getPredicate(root, criteria, cb)), pageable);
-// String status = "ERROR";
-// if (status.equals(criteria.getLogType())) {
-// return PageUtil.toPage(page.map(logErrorMapper::toDto));
-// }
-// return page;
-// }
-//
-// @Override
-// public List queryAll(LogQueryCriteria criteria) {
-// return logRepository.findAll(((root, criteriaQuery, cb) -> QueryHelp.getPredicate(root, criteria, cb)));
-// }
-//
-// @Override
-// public Object queryAllByUser(LogQueryCriteria criteria, Pageable pageable) {
-// Page page = logRepository.findAll(((root, criteriaQuery, cb) -> QueryHelp.getPredicate(root, criteria, cb)), pageable);
-// return PageUtil.toPage(page.map(logSmallMapper::toDto));
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void save(String username, String browser, String ip, ProceedingJoinPoint joinPoint, Log logDto) {
-//
-// MethodSignature signature = (MethodSignature) joinPoint.getSignature();
-// Method method = signature.getMethod();
-// org.nl.modules.logging.annotation.Log aopLog = method.getAnnotation(org.nl.modules.logging.annotation.Log.class);
-//
-// // 方法路径
-// String methodName = joinPoint.getTarget().getClass().getName() + "." + signature.getName() + "()";
-//
-// // 描述
-// if (logDto != null) {
-// logDto.setDescription(aopLog.value());
-// }
-// assert logDto != null;
-// logDto.setRequestIp(ip);
-//
-// logDto.setAddress(StringUtils.getCityInfo(logDto.getRequestIp()));
-// logDto.setMethod(methodName);
-// logDto.setUsername(username);
-// logDto.setParams(getParameter(method, joinPoint.getArgs()));
-// logDto.setBrowser(browser);
-// logDto.setCreateTime(Timestamp.valueOf(DateUtil.now()));
-// logRepository.save(logDto);
-// }
-//
-// /**
-// * 根据方法和传入的参数获取请求参数
-// */
-// private String getParameter(Method method, Object[] args) {
-// List argList = new ArrayList<>();
-// Parameter[] parameters = method.getParameters();
-// for (int i = 0; i < parameters.length; i++) {
-// //将RequestBody注解修饰的参数作为请求参数
-// RequestBody requestBody = parameters[i].getAnnotation(RequestBody.class);
-// if (requestBody != null) {
-// argList.add(args[i]);
-// }
-// //将RequestParam注解修饰的参数作为请求参数
-// RequestParam requestParam = parameters[i].getAnnotation(RequestParam.class);
-// if (requestParam != null) {
-// Map map = new HashMap<>();
-// String key = parameters[i].getName();
-// if (!StrUtil.isEmpty(requestParam.value())) {
-// key = requestParam.value();
-// }
-// map.put(key, args[i]);
-// argList.add(map);
-// }
-// }
-// if (argList.size() == 0) {
-// return "";
-// }
-// return argList.size() == 1 ? JSONUtil.toJsonStr(argList.get(0)) : JSONUtil.toJsonStr(argList);
-// }
-//
-// @Override
-// public Object findByErrDetail(Long id) {
-// Log log = logRepository.findById(id).orElseGet(Log::new);
-// ValidationUtil.isNull(log.getId(), "Log", "id", id);
-// byte[] details = log.getExceptionDetail();
-// return Dict.create().set("exception", new String(ObjectUtil.isNotNull(details) ? details : "".getBytes()));
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void delAllByError() {
-// logRepository.deleteByLogType("ERROR");
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void delAllByInfo() {
-// logRepository.deleteByLogType("INFO");
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageController.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageController.java
deleted file mode 100644
index cfdc00a..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageController.java
+++ /dev/null
@@ -1,88 +0,0 @@
-//package org.nl.modules.logicflow.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.logicflow.service.StageService;
-//import org.nl.modules.logicflow.service.dto.StageDto;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.*;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description: 舞台管理
-// * @Date: 2022-07-29 10:49
-// */
-//@RestController
-//@RequiredArgsConstructor
-//
-//@RequestMapping("/api/stage")
-//@Slf4j
-//public class StageController {
-// private final StageService stageService;
-//
-// @GetMapping
-// @Log("查询舞台")
-//
-// //@SaCheckPermission("stage:list")
-// public ResponseEntity query(@RequestParam Map whereJson, Pageable page) {
-// return new ResponseEntity<>(stageService.queryAll(whereJson, page), HttpStatus.OK);
-// }
-//
-// @PostMapping
-// @Log("新增舞台")
-//
-// //@SaCheckPermission("stage:add")
-// public ResponseEntity create(@Validated @RequestBody StageDto dto) {
-// stageService.create(dto);
-// return new ResponseEntity<>(HttpStatus.CREATED);
-// }
-//
-// @PutMapping
-// @Log("修改舞台")
-//
-// //@SaCheckPermission("stage:edit")
-// public ResponseEntity update(@Validated @RequestBody StageDto dto) {
-// stageService.update(dto);
-// return new ResponseEntity<>(HttpStatus.NO_CONTENT);
-// }
-//
-// @Log("删除舞台")
-//
-// //@SaCheckPermission("stage:del")
-// @DeleteMapping
-// public ResponseEntity delete(@RequestBody String[] ids) {
-// stageService.deleteAll(ids);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-// @GetMapping("/selectList")
-// @Log("下拉选舞台")
-//
-// //@SaCheckPermission("routePlan:list")
-// public ResponseEntity selectList() {
-// return new ResponseEntity<>(stageService.selectList(), HttpStatus.OK);
-// }
-//
-// @PostMapping("/addNewStage")
-// @Log("保存舞台数据")
-//
-// public ResponseEntity addNewStage(@Validated @RequestBody StageDto dto) {
-// log.info("dto{}", dto);
-// stageService.addNewStage(dto);
-// return new ResponseEntity<>(HttpStatus.CREATED);
-// }
-//
-// @PostMapping("/getNewStageDataByCode")
-// @Log("根据stage_code获取舞台数据")
-//
-// public ResponseEntity getNewStageDataByCode(@RequestBody String code) {
-// return new ResponseEntity<>(stageService.findByCode(code), HttpStatus.CREATED);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java
deleted file mode 100644
index 210efa0..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java
+++ /dev/null
@@ -1,72 +0,0 @@
-//package org.nl.modules.logicflow.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.logicflow.service.StageImageService;
-//import org.nl.modules.logicflow.service.dto.StageImageDto;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.*;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description: 舞台图标控制层
-// * @Date: 2022-07-29
-// */
-//@RestController
-//@RequiredArgsConstructor
-//
-//@RequestMapping("/api/stageImage")
-//@Slf4j
-//public class StageImageController {
-// private final StageImageService stageImageService;
-//
-// @GetMapping
-// @Log("查询舞台")
-//
-// //@SaCheckPermission("stageImage:list")
-// public ResponseEntity query(@RequestParam Map whereJson, Pageable page) {
-// return new ResponseEntity<>(stageImageService.queryAll(whereJson, page), HttpStatus.OK);
-// }
-//
-// @PostMapping
-// @Log("新增舞台")
-//
-// //@SaCheckPermission("stageImage:add")
-// public ResponseEntity create(@Validated @RequestBody StageImageDto dto) {
-// stageImageService.create(dto);
-// return new ResponseEntity<>(HttpStatus.CREATED);
-// }
-//
-// @PutMapping
-// @Log("修改舞台")
-//
-// //@SaCheckPermission("stageImage:edit")
-// public ResponseEntity update(@Validated @RequestBody StageImageDto dto) {
-// stageImageService.update(dto);
-// return new ResponseEntity<>(HttpStatus.NO_CONTENT);
-// }
-//
-// @Log("删除舞台")
-//
-// //@SaCheckPermission("stageImage:del")
-// @DeleteMapping
-// public ResponseEntity delete(@RequestBody String[] ids) {
-// stageImageService.deleteAll(ids);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-// @GetMapping("/selectList")
-// @Log("下拉选设备图标")
-//
-// //@SaCheckPermission("routePlan:list")
-// public ResponseEntity selectList() {
-// return new ResponseEntity<>(stageImageService.selectList(), HttpStatus.OK);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageImageService.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageImageService.java
deleted file mode 100644
index 6d72ad5..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageImageService.java
+++ /dev/null
@@ -1,59 +0,0 @@
-//package org.nl.modules.logicflow.service;
-//
-//import com.alibaba.fastjson.JSONArray;
-//import org.nl.modules.logicflow.service.dto.StageImageDto;
-//import org.springframework.data.domain.Pageable;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description: 舞台图标的服务层
-// * @Date: 2022-07-29
-// */
-//public interface StageImageService {
-// /**
-// * 查询数据分页
-// *
-// * @param whereJson 条件
-// * @param page 分页参数
-// * @return Map
-// */
-// Map queryAll(Map whereJson, Pageable page);
-//
-// /**
-// * 创建
-// *
-// * @param dto /
-// */
-// void create(StageImageDto dto);
-//
-// /**
-// * 编辑
-// *
-// * @param dto /
-// */
-// void update(StageImageDto dto);
-//
-// /**
-// * 根据ID查询
-// *
-// * @param image_uuid ID
-// * @return StageImage
-// */
-// StageImageDto findById(String image_uuid);
-//
-// /**
-// * 多选删除
-// *
-// * @param ids /
-// */
-// void deleteAll(String[] ids);
-//
-// /**
-// * 前端舞台编辑选择设备图标下拉选列表
-// *
-// * @return
-// */
-// JSONArray selectList();
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageService.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageService.java
deleted file mode 100644
index 06f1f6a..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/StageService.java
+++ /dev/null
@@ -1,75 +0,0 @@
-//package org.nl.modules.logicflow.service;
-//
-//import com.alibaba.fastjson.JSONArray;
-//import org.nl.modules.logicflow.service.dto.StageDto;
-//import org.springframework.data.domain.Pageable;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description:
-// * @Date: 2022-07-29 10:50
-// */
-//public interface StageService {
-// /**
-// * 查询数据分页
-// *
-// * @param whereJson 条件
-// * @param page 分页参数
-// * @return Map
-// */
-// Map queryAll(Map whereJson, Pageable page);
-//
-// /**
-// * 创建
-// *
-// * @param dto /
-// */
-// void create(StageDto dto);
-//
-// /**
-// * 编辑
-// *
-// * @param dto /
-// */
-// void update(StageDto dto);
-//
-// /**
-// * 根据ID查询
-// *
-// * @param stage_uuid ID
-// * @return Stage
-// */
-// StageDto findById(String stage_uuid);
-//
-// /**
-// * 多选删除
-// *
-// * @param ids /
-// */
-// void deleteAll(String[] ids);
-//
-// /**
-// * 前端舞台下拉选列表
-// *
-// * @return
-// */
-// JSONArray selectList();
-//
-// /**
-// * 新增舞台信息
-// * 将数据保存到remark---保存数据
-// *
-// * @param dto
-// */
-// void addNewStage(StageDto dto);
-//
-// /**
-// * 根据编码查询
-// *
-// * @param code code
-// * @return Stage
-// */
-// StageDto findByCode(String code);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java
deleted file mode 100644
index 8e1d72b..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java
+++ /dev/null
@@ -1,63 +0,0 @@
-//package org.nl.modules.logicflow.service.dto;
-//
-//import lombok.Data;
-//
-//import java.io.Serializable;
-//
-///**
-// * @Author: lyd
-// * @Description: 舞台数据的Dto
-// * @Date: 2022-07-29 13:28
-// */
-//@Data
-//public class StageDto implements Serializable {
-// /**
-// * 舞台标识
-// */
-// private String stage_uuid;
-//
-// /**
-// * 舞台编码
-// */
-// private String stage_code;
-//
-// /**
-// * 舞台名字
-// */
-// private String stage_name;
-//
-// /**
-// * 舞台数据
-// */
-// private String stage_data;
-//
-// /**
-// * 是否启用
-// */
-// private String is_active;
-//
-// /**
-// * 是否删除
-// */
-// private String is_delete;
-//
-// /**
-// * 创建者
-// */
-// private String create_by;
-//
-// /**
-// * 创建时间
-// */
-// private String create_time;
-//
-// /**
-// * 修改者
-// */
-// private String update_by;
-//
-// /**
-// * 修改时间
-// */
-// private String update_time;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java
deleted file mode 100644
index c43309d..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java
+++ /dev/null
@@ -1,68 +0,0 @@
-//package org.nl.modules.logicflow.service.dto;
-//
-//import lombok.Data;
-//
-//import java.io.Serializable;
-//
-///**
-// * @Author: lyd
-// * @Description: 设备图标dto
-// * @Date: 2022-07-29
-// */
-//@Data
-//public class StageImageDto implements Serializable {
-// /**
-// * 设备标识
-// */
-// private String image_uuid;
-//
-// /**
-// * 设备名字
-// */
-// private String image_name;
-//
-// /**
-// * 适用驱动
-// */
-// private String driver_code_json;
-//
-// /**
-// * 备注
-// */
-// private String remark;
-//
-// /**
-// * 是否启用
-// */
-// private String is_active;
-//
-// /**
-// * 是否删除
-// */
-// private String is_delete;
-//
-// /**
-// * 创建者
-// */
-// private String create_by;
-//
-// /**
-// * 创建时间
-// */
-// private String create_time;
-//
-// /**
-// * 修改者
-// */
-// private String update_by;
-//
-// /**
-// * 修改时间
-// */
-// private String update_time;
-//
-// /**
-// * 图标编码
-// */
-// private String image_code;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java
deleted file mode 100644
index 52b1e59..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java
+++ /dev/null
@@ -1,112 +0,0 @@
-//package org.nl.modules.logicflow.service.impl;
-//
-//import cn.hutool.core.date.DateUtil;
-//import cn.hutool.core.util.IdUtil;
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.common.utils.SecurityUtils;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.logicflow.service.StageImageService;
-//import org.nl.modules.logicflow.service.dto.StageImageDto;
-//import org.nl.modules.wql.core.bean.ResultBean;
-//import org.nl.modules.wql.core.bean.WQLObject;
-//import org.nl.modules.wql.util.WqlUtil;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.stereotype.Service;
-//import org.springframework.transaction.annotation.Transactional;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description: 舞台图标的服务实现
-// * @Date: 2022-07-29
-// */
-//@Service
-//@RequiredArgsConstructor
-//@Slf4j
-//public class StageImageServiceImpl implements StageImageService {
-// @Override
-// public Map queryAll(Map whereJson, Pageable page) {
-// String where = "1=1";
-// if (whereJson.get("device_type") != null) {
-// where = "driver_code_json like ('%" + whereJson.get("device_type") + "%')";
-// }
-// WQLObject wo = WQLObject.getWQLObject("stage_image");
-// ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), where, "update_time desc");
-// final JSONObject json = rb.pageResult();
-// return json;
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void create(StageImageDto dto) {
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// String now = DateUtil.now();
-//
-// dto.setImage_uuid(IdUtil.simpleUUID());
-// dto.setCreate_by(currentUsername);
-// dto.setUpdate_by(currentUsername);
-// dto.setUpdate_time(now);
-// dto.setCreate_time(now);
-//
-// WQLObject wo = WQLObject.getWQLObject("stage_image");
-// JSONObject json = (JSONObject) JSONObject.toJSON(dto);
-//
-// wo.insert(json);
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void update(StageImageDto dto) {
-// StageImageDto entity = this.findById(dto.getImage_uuid());
-// if (entity == null) {
-// throw new BadRequestException("被删除或无权限,操作失败!");
-// }
-//
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// String now = DateUtil.now();
-// dto.setUpdate_time(now);
-// dto.setUpdate_by(currentUsername);
-//
-// WQLObject wo = WQLObject.getWQLObject("stage_image");
-// JSONObject json = (JSONObject) JSONObject.toJSON(dto);
-//
-// wo.update(json);
-// }
-//
-// @Override
-// public StageImageDto findById(String image_uuid) {
-// WQLObject wo = WQLObject.getWQLObject("stage_image");
-// JSONObject json = wo.query("image_uuid ='" + image_uuid + "'").uniqueResult(0);
-// final StageImageDto obj = json.toJavaObject(StageImageDto.class);
-// return obj;
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void deleteAll(String[] ids) {
-// WQLObject wo = WQLObject.getWQLObject("stage_image");
-// for (String image_uuid : ids) {
-// wo.delete("image_uuid = '" + image_uuid + "'");
-// }
-// }
-//
-// @Override
-// public JSONArray selectList() {
-// //设备基础信息表【acs_stage_image】
-// JSONArray arr = WQLObject.getWQLObject("stage_image").query("is_delete= '0' AND is_active= '1'", "update_time desc").getResultJSONArray(0);
-// JSONArray result = new JSONArray();
-// for (int i = 0; i < arr.size(); i++) {
-// JSONObject obj = arr.getJSONObject(i);
-// JSONObject json = new JSONObject();
-// json.put("image_uuid", obj.getString("image_uuid"));
-// json.put("image_code", obj.getString("image_code"));
-// json.put("image_name", obj.getString("image_code").toString().split("-")[0]);
-// result.add(json);
-// }
-// return result;
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java
deleted file mode 100644
index c6dcd96..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java
+++ /dev/null
@@ -1,134 +0,0 @@
-//package org.nl.modules.logicflow.service.impl;
-//
-//import cn.hutool.core.date.DateUtil;
-//import cn.hutool.core.util.IdUtil;
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.common.utils.SecurityUtils;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.logicflow.service.StageService;
-//import org.nl.modules.logicflow.service.dto.StageDto;
-//import org.nl.modules.wql.core.bean.ResultBean;
-//import org.nl.modules.wql.core.bean.WQLObject;
-//import org.nl.modules.wql.util.WqlUtil;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.stereotype.Service;
-//import org.springframework.transaction.annotation.Transactional;
-//
-//import java.util.Map;
-//
-///**
-// * @Author: lyd
-// * @Description:
-// * @Date: 2022-07-29 10:51
-// */
-//@Service
-//@RequiredArgsConstructor
-//@Slf4j
-//public class StageServiceImpl implements StageService {
-// @Override
-// public Map queryAll(Map whereJson, Pageable page) {
-// log.info("分页查找");
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "", "update_time desc");
-// final JSONObject json = rb.pageResult();
-// return json;
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void create(StageDto dto) {
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// String now = DateUtil.now();
-//
-// dto.setStage_uuid(IdUtil.simpleUUID());
-// dto.setCreate_by(currentUsername);
-// dto.setUpdate_by(currentUsername);
-// dto.setUpdate_time(now);
-// dto.setCreate_time(now);
-//
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// JSONObject json = (JSONObject) JSONObject.toJSON(dto);
-//
-// wo.insert(json);
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void update(StageDto dto) {
-// StageDto entity = this.findById(dto.getStage_uuid());
-// if (entity == null) {
-// throw new BadRequestException("被删除或无权限,操作失败!");
-// }
-//
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// String now = DateUtil.now();
-// dto.setUpdate_time(now);
-// dto.setUpdate_by(currentUsername);
-//
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// JSONObject json = (JSONObject) JSONObject.toJSON(dto);
-//
-// wo.update(json);
-// }
-//
-// @Override
-// public StageDto findById(String stage_uuid) {
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// JSONObject json = wo.query("stage_uuid ='" + stage_uuid + "'").uniqueResult(0);
-// final StageDto obj = json.toJavaObject(StageDto.class);
-// return obj;
-// }
-//
-// @Override
-// @Transactional(rollbackFor = Exception.class)
-// public void deleteAll(String[] ids) {
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// for (String stage_uuid : ids) {
-// wo.delete("stage_uuid = '" + stage_uuid + "'");
-// }
-// }
-//
-// @Override
-// public JSONArray selectList() {
-// //设备基础信息表【stage】
-// JSONArray arr = WQLObject.getWQLObject("stage").query("is_delete= '0' AND is_active= '1'").getResultJSONArray(0);
-// JSONArray result = new JSONArray();
-// for (int i = 0; i < arr.size(); i++) {
-// JSONObject obj = arr.getJSONObject(i);
-// JSONObject json = new JSONObject();
-// json.put("stage_id", obj.getString("stage_id"));
-// json.put("stage_code", obj.getString("stage_code"));
-// json.put("stage_name", obj.getString("stage_name"));
-// result.add(json);
-// }
-// return result;
-// }
-//
-// @Override
-// public void addNewStage(StageDto dto) {
-// // 根据dto的code找到数据
-// StageDto stageDto = this.findByCode(dto.getStage_code());
-// // 设置内容
-// stageDto.setStage_data(dto.getStage_data());
-// // 获取当前用户与时间
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// String now = DateUtil.now();
-// stageDto.setUpdate_time(now);
-// stageDto.setUpdate_by(currentUsername);
-// System.out.println(stageDto);
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// JSONObject json = (JSONObject) JSONObject.toJSON(stageDto);
-// wo.update(json);
-// }
-//
-// @Override
-// public StageDto findByCode(String code) {
-// WQLObject wo = WQLObject.getWQLObject("stage");
-// JSONObject json = wo.query("stage_code ='" + code + "'").uniqueResult(0);
-// final StageDto obj = json.toJavaObject(StageDto.class);
-// return obj;
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/security/rest/MobileAuthorizationController.java b/lms/nladmin-system/src/main/java/org/nl/modules/security/rest/MobileAuthorizationController.java
deleted file mode 100644
index c30e91b..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/security/rest/MobileAuthorizationController.java
+++ /dev/null
@@ -1,90 +0,0 @@
-//package org.nl.modules.security.rest;
-//
-//import cn.dev33.satoken.annotation.SaIgnore;
-//import cn.dev33.satoken.secure.SaSecureUtil;
-//import cn.dev33.satoken.stp.SaLoginModel;
-//import cn.dev33.satoken.stp.StpUtil;
-//import com.alibaba.fastjson.JSON;
-//import com.alibaba.fastjson.JSONObject;
-//import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.common.utils.dto.CurrentUser;
-//import org.nl.modules.common.config.RsaProperties;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.common.utils.RedisUtils;
-//import org.nl.modules.common.utils.RsaUtils;
-//import org.nl.system.service.role.ISysRoleService;
-//import org.nl.system.service.secutiry.dto.AuthUserDto;
-//import org.nl.system.service.user.ISysUserService;
-//import org.nl.system.service.user.dao.SysUser;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.PostMapping;
-//import org.springframework.web.bind.annotation.RequestBody;
-//import org.springframework.web.bind.annotation.RequestMapping;
-//import org.springframework.web.bind.annotation.RestController;
-//
-//import javax.servlet.http.HttpServletRequest;
-//import java.util.HashMap;
-//import java.util.List;
-//import java.util.Map;
-//
-///**
-// * @author: lyd
-// * @description: 手持登录鉴权
-// * @Date: 2022/10/10
-// */
-//@Slf4j
-//@RestController
-//@RequestMapping("/mobile/auth")
-//@RequiredArgsConstructor
-//
-//public class MobileAuthorizationController {
-// private final RedisUtils redisUtils;
-// private final ISysUserService userService;
-// private final ISysRoleService roleService;
-//
-//
-// @PostMapping(value = "/login")
-// @SaIgnore
-// public ResponseEntity login(@Validated @RequestBody AuthUserDto authUser, HttpServletRequest request) throws Exception {
-// // 密码解密 - 前端的加密规则: encrypt(根据实际更改)
-//// String password = authUser.getPassword();
-// String password = RsaUtils.decryptByPrivateKey(RsaProperties.privateKey, authUser.getPassword());
-// // 校验数据库
-// // 根据用户名查询,在比对密码
-// SysUser userDto = userService.getOne(new QueryWrapper().eq("username", authUser.getUsername()));// 拿不到已经抛出异常
-// if (userDto == null || !userDto.getPassword().equals(SaSecureUtil.md5BySalt(password, "salt"))) { // 这里需要密码加密
-// throw new BadRequestException("账号或密码错误");
-// }
-// // 获取权限列表 - 登录查找权限
-// List permissionList = roleService.getPermissionList(JSONObject.parseObject(JSON.toJSONString(userDto)));
-//
-// // 登录输入,登出删除
-// CurrentUser user = new CurrentUser();
-// user.setId(userDto.getUser_id());
-// user.setUsername(userDto.getUsername());
-// user.setPresonName(userDto.getPerson_name());
-// user.setUser(userDto);
-// user.setPermissions(permissionList);
-//
-// // SaLoginModel 配置登录相关参数
-// StpUtil.login(userDto.getUser_id(), new SaLoginModel()
-// .setDevice("PE") // 此次登录的客户端设备类型, 用于[同端互斥登录]时指定此次登录的设备类型
-// .setExtra("loginInfo", user) // Token挂载的扩展参数 (此方法只有在集成jwt插件时才会生效)
-// );
-//
-// // 返回 token 与 用户信息
-// JSONObject jsonObject = new JSONObject();
-// jsonObject.put("user", userDto);
-// Map authInfo = new HashMap(2) {{
-// put("token", StpUtil.getTokenValue());
-// put("user", jsonObject);
-// }};
-//
-// redisUtils.set("pe-satoken", StpUtil.getTokenValue(), StpUtil.getTokenTimeout());
-//
-// return ResponseEntity.ok(authInfo);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/CodeDetailController.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/CodeDetailController.java
deleted file mode 100644
index 40da2ca..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/CodeDetailController.java
+++ /dev/null
@@ -1,57 +0,0 @@
-//package org.nl.modules.system.rest;
-//
-//import cn.dev33.satoken.annotation.SaCheckPermission;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.system.service.CodeDetailService;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.*;
-//
-//import java.util.Map;
-//
-//@RestController
-//
-//@RequiredArgsConstructor
-//@RequestMapping("/api/codeDetail")
-//public class CodeDetailController {
-//
-// private final CodeDetailService codeDetailService;
-//
-//
-// @GetMapping
-// @SaCheckPermission("genCode:list")
-// public ResponseEntity queryAll(@RequestParam Map form, Pageable pageable) {
-// return new ResponseEntity<>(codeDetailService.queryAll(form, pageable), HttpStatus.OK);
-// }
-//
-// @Log("新增编码")
-//
-// @PostMapping
-// @SaCheckPermission("genCode:add")
-// public ResponseEntity create(@Validated @RequestBody Map form) {
-// codeDetailService.create(form);
-// return new ResponseEntity<>(HttpStatus.CREATED);
-// }
-//
-// @Log("删除编码")
-//
-// @DeleteMapping(value = "/{id}")
-// @SaCheckPermission("genCode:del")
-// public ResponseEntity delete(@PathVariable String id) {
-// codeDetailService.delete(id);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-// @Log("修改字典")
-//
-// @PutMapping
-// @SaCheckPermission("dict:edit")
-// public ResponseEntity update(@RequestBody JSONObject json) {
-// codeDetailService.update(json);
-// return new ResponseEntity<>(HttpStatus.NO_CONTENT);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/GenCodeController.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/GenCodeController.java
deleted file mode 100644
index ef7a52a..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/GenCodeController.java
+++ /dev/null
@@ -1,67 +0,0 @@
-//package org.nl.modules.system.rest;
-//
-//import cn.dev33.satoken.annotation.SaCheckPermission;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.system.service.GenCodeService;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.validation.annotation.Validated;
-//import org.springframework.web.bind.annotation.*;
-//
-//import java.io.IOException;
-//import java.util.Map;
-//import java.util.Set;
-//
-//@RestController
-//
-//@RequiredArgsConstructor
-//@RequestMapping("/api/genCode")
-//public class GenCodeController {
-// private final GenCodeService genCodeService;
-//
-//
-// @GetMapping
-// @SaCheckPermission("genCode:list")
-// public ResponseEntity queryAll(@RequestParam Map form, Pageable pageable) {
-// return new ResponseEntity<>(genCodeService.queryAll(form, pageable), HttpStatus.OK);
-// }
-//
-// @Log("新增编码")
-//
-// @PostMapping
-// @SaCheckPermission("genCode:add")
-// public ResponseEntity create(@Validated @RequestBody Map form) {
-// genCodeService.create(form);
-//
-// return new ResponseEntity<>(HttpStatus.CREATED);
-// }
-//
-// @Log("删除编码")
-//
-// @DeleteMapping
-// @SaCheckPermission("genCode:del")
-// public ResponseEntity delete(@RequestBody Set ids) {
-// genCodeService.delete(ids);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-// @Log("修改字典")
-//
-// @PutMapping
-// @SaCheckPermission("genCode:edit")
-// public ResponseEntity update(@RequestBody JSONObject json) {
-// genCodeService.update(json);
-// return new ResponseEntity<>(HttpStatus.NO_CONTENT);
-// }
-//
-//
-// @GetMapping(value = "/codeDemo")
-// @SaCheckPermission("genCode:list")
-// public ResponseEntity CodeDemo(@RequestParam Map form) throws IOException {
-// return new ResponseEntity<>(genCodeService.codeDemo(form), HttpStatus.OK);
-// }
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/LimitController.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/LimitController.java
deleted file mode 100644
index 753479c..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/LimitController.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
- * Copyright 2019-2020 Zheng Jie
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.nl.modules.system.rest;
-
-
-import org.nl.modules.common.annotation.Limit;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import java.util.concurrent.atomic.AtomicInteger;
-
-/**
- * @author /
- * 接口限流测试类
- */
-@RestController
-@RequestMapping("/api/limit")
-
-public class LimitController {
-
- private static final AtomicInteger ATOMIC_INTEGER = new AtomicInteger();
-
- /**
- * 测试限流注解,下面配置说明该接口 60秒内最多只能访问 10次,保存到redis的键名为 limit_test,
- */
- @GetMapping
-
- @Limit(key = "test", period = 60, count = 10, name = "testLimit", prefix = "limit")
- public int test() {
- return ATOMIC_INTEGER.incrementAndGet();
- }
-}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/MonitorController.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/MonitorController.java
deleted file mode 100644
index 0923ece..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/MonitorController.java
+++ /dev/null
@@ -1,45 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.system.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import org.nl.modules.system.service.MonitorService;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.web.bind.annotation.GetMapping;
-//import org.springframework.web.bind.annotation.RequestMapping;
-//import org.springframework.web.bind.annotation.RestController;
-//
-///**
-// * @author Zheng Jie
-// * @date 2020-05-02
-// */
-//@RestController
-//@RequiredArgsConstructor
-//
-//@RequestMapping("/api/monitor")
-//public class MonitorController {
-//
-// private final MonitorService serverService;
-//
-// @GetMapping
-//
-//// @SaCheckPermission("monitor:list")
-// public ResponseEntity query() {
-// return new ResponseEntity<>(serverService.getServers(), HttpStatus.OK);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/RedisController.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/RedisController.java
deleted file mode 100644
index 4fd49bb..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/rest/RedisController.java
+++ /dev/null
@@ -1,56 +0,0 @@
-//package org.nl.modules.system.rest;
-//
-//
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.modules.logging.annotation.Log;
-//import org.nl.modules.system.service.RedisService;
-//import org.springframework.http.HttpStatus;
-//import org.springframework.http.ResponseEntity;
-//import org.springframework.web.bind.annotation.*;
-//
-///**
-// * @Author: lyd
-// * @Description: Redis监控管理
-// * @Date: 2022-08-04
-// */
-//@RestController
-//@RequiredArgsConstructor
-//
-//@RequestMapping("/api/redis")
-//@Slf4j
-//public class RedisController {
-//
-// private final RedisService redisService;
-//
-// @GetMapping("/get-monitor-info")
-// @Log("查询redis的信息")
-//
-// public ResponseEntity getRedisMonitorInfo() {
-// return new ResponseEntity<>(redisService.getRedisMonitorInfo(), HttpStatus.OK);
-// }
-//
-// @GetMapping("/get-key-define-list")
-// @Log("获得 Redis Key 模板列表")
-//
-// public ResponseEntity getKeyDefineList() {
-// return new ResponseEntity<>(redisService.getKeyDefineList(), HttpStatus.OK);
-// }
-//
-// @GetMapping("/get-key-value-list")
-// @Log("获得 Redis Key Value列表")
-//
-// public ResponseEntity getKeyValueList() {
-// return new ResponseEntity<>(redisService.getKeyValueList(), HttpStatus.OK);
-// }
-//
-// @Log("根据key删除Redis数据")
-//
-// @DeleteMapping
-// public ResponseEntity deleteByKey(@RequestBody String[] ids) {
-// redisService.deleteByKey(ids);
-// return new ResponseEntity<>(HttpStatus.OK);
-// }
-//
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/CodeDetailService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/CodeDetailService.java
deleted file mode 100644
index d9ea439..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/CodeDetailService.java
+++ /dev/null
@@ -1,23 +0,0 @@
-//package org.nl.modules.system.service;
-//
-//import com.alibaba.fastjson.JSONObject;
-//import org.springframework.data.domain.Pageable;
-//
-//import java.util.Map;
-//
-//public interface CodeDetailService {
-// /**
-// * 分页查询
-// *
-// * @param form 条件
-// * @param pageable 分页参数
-// * @return /
-// */
-// JSONObject queryAll(Map form, Pageable pageable);
-//
-// public void create(Map form);
-//
-// public void delete(String id);
-//
-// public void update(JSONObject json);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/DataService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/DataService.java
deleted file mode 100644
index 6b30861..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/DataService.java
+++ /dev/null
@@ -1,37 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.system.service;
-//
-//import org.nl.system.service.user.dto.UserDto;
-//
-//import java.util.List;
-//
-///**
-// * 数据权限服务类
-// *
-// * @author Zheng Jie
-// * @date 2020-05-07
-// */
-//public interface DataService {
-//
-// /**
-// * 获取数据权限
-// *
-// * @param user /
-// * @return /
-// */
-// List getDeptIds(UserDto user);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/GenCodeService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/GenCodeService.java
deleted file mode 100644
index 4dde92a..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/GenCodeService.java
+++ /dev/null
@@ -1,50 +0,0 @@
-//package org.nl.modules.system.service;
-//
-//import com.alibaba.fastjson.JSONObject;
-//import org.springframework.data.domain.Pageable;
-//
-//import java.util.Map;
-//import java.util.Set;
-//
-//public interface GenCodeService {
-// /**
-// * 分页查询
-// *
-// * @param form 条件
-// * @param pageable 分页参数
-// * @return /
-// */
-// JSONObject queryAll(Map form, Pageable pageable);
-//
-// /**
-// * 新增编码
-// *
-// * @param form
-// */
-// public void create(Map form);
-//
-// /**
-// * 删除编码
-// *
-// * @param ids
-// */
-// public void delete(Set ids);
-//
-// /**
-// * 更新编码
-// *
-// * @param json
-// */
-// public void update(JSONObject json);
-//
-// public String codeDemo(Map form);
-//
-// /**
-// * 根据编码获取id
-// *
-// * @param code
-// * @return
-// */
-// public String queryIdByCode(String code);
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/MonitorService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/MonitorService.java
deleted file mode 100644
index 8f4f536..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/MonitorService.java
+++ /dev/null
@@ -1,32 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.system.service;
-//
-//import java.util.Map;
-//
-///**
-// * @author Zheng Jie
-// * @date 2020-05-02
-// */
-//public interface MonitorService {
-//
-// /**
-// * 查询数据分页
-// *
-// * @return Map
-// */
-// Map getServers();
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/ParamService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/ParamService.java
deleted file mode 100644
index 9690620..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/ParamService.java
+++ /dev/null
@@ -1,81 +0,0 @@
-//package org.nl.modules.system.service;
-//
-//import org.nl.modules.system.service.dto.ParamDto;
-//import org.springframework.data.domain.Pageable;
-//
-//import javax.servlet.http.HttpServletResponse;
-//import java.io.IOException;
-//import java.util.List;
-//import java.util.Map;
-//
-///**
-// * @author ldjun
-// * @description 服务接口
-// * @date 2021-03-16
-// **/
-//public interface ParamService {
-//
-// /**
-// * 查询数据分页
-// *
-// * @param whereJson 条件
-// * @param page 分页参数
-// * @return Map
-// */
-// Map queryAll(Map whereJson, Pageable page);
-//
-// /**
-// * 查询所有数据不分页
-// *
-// * @param whereJson 条件参数
-// * @return List
-// */
-// List queryAll(Map whereJson);
-//
-// /**
-// * 根据ID查询
-// *
-// * @param id ID
-// * @return Param
-// */
-// ParamDto findById(String id);
-//
-// /**
-// * 根据编码查询
-// *
-// * @param code code
-// * @return Param
-// */
-// ParamDto findByCode(String code);
-//
-//
-// /**
-// * 创建
-// *
-// * @param dto /
-// */
-// void create(ParamDto dto);
-//
-// /**
-// * 编辑
-// *
-// * @param dto /
-// */
-// void update(ParamDto dto);
-//
-// /**
-// * 多选删除
-// *
-// * @param ids /
-// */
-// void deleteAll(String[] ids);
-//
-// /**
-// * 导出数据
-// *
-// * @param dtos 待导出的数据
-// * @param response /
-// * @throws IOException /
-// */
-// void download(List dtos, HttpServletResponse response) throws IOException;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/RedisService.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/RedisService.java
deleted file mode 100644
index 61b10aa..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/RedisService.java
+++ /dev/null
@@ -1,39 +0,0 @@
-//package org.nl.modules.system.service;
-//
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//
-///**
-// * @Author: lyd
-// * @Description: Redis监控的服务
-// * @Date: 2022-08-04
-// */
-//public interface RedisService {
-// /**
-// * 获取redis的信息
-// *
-// * @return
-// */
-// JSONObject getRedisMonitorInfo();
-//
-// /**
-// * 获得 Redis Key 模板列表
-// *
-// * @return
-// */
-// JSONObject getKeyDefineList();
-//
-// /**
-// * 获取所有的键值信息
-// *
-// * @return
-// */
-// JSONArray getKeyValueList();
-//
-// /**
-// * 删除redis缓存数据
-// *
-// * @param ids
-// */
-// void deleteByKey(String[] ids);
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/convert/RedisConvert.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/convert/RedisConvert.java
deleted file mode 100644
index d0e739b..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/convert/RedisConvert.java
+++ /dev/null
@@ -1,36 +0,0 @@
-//package org.nl.modules.system.service.convert;
-//
-//import cn.hutool.core.util.StrUtil;
-//import org.mapstruct.Mapper;
-//import org.mapstruct.factory.Mappers;
-//import org.nl.modules.system.service.vo.RedisMonitorRespVO;
-//
-//import java.util.ArrayList;
-//import java.util.Properties;
-//
-///**
-// * @Author: lyd
-// * @Description: redis---Spring Boot 对象转换 MapStruct
-// * @Date: 2022-08-04
-// */
-//@Mapper
-//public interface RedisConvert {
-//
-// RedisConvert INSTANCE = Mappers.getMapper(RedisConvert.class);
-//
-// default RedisMonitorRespVO build(Properties info, Long dbSize, Properties commandStats) {
-// RedisMonitorRespVO respVO = RedisMonitorRespVO.builder().info(info).dbSize(dbSize)
-// .commandStats(new ArrayList<>(commandStats.size())).build();
-// commandStats.forEach((key, value) -> {
-// respVO.getCommandStats().add(RedisMonitorRespVO.CommandStat.builder()
-// .command(StrUtil.subAfter((String) key, "cmdstat_", false))
-// .calls(Integer.valueOf(StrUtil.subBetween((String) value, "calls=", ",")))
-// .usec(Long.valueOf(StrUtil.subBetween((String) value, "usec=", ",")))
-// .build());
-// });
-// return respVO;
-// }
-//
-//// List convertList(List list);
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/dto/ParamDto.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/dto/ParamDto.java
deleted file mode 100644
index 646dcee..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/dto/ParamDto.java
+++ /dev/null
@@ -1,40 +0,0 @@
-//package org.nl.modules.system.service.dto;
-//
-//import lombok.Data;
-//
-//import java.io.Serializable;
-//
-///**
-// * @author ldjun
-// * @description /
-// * @date 2021-01-14
-// **/
-//@Data
-//public class ParamDto implements Serializable {
-//
-// private String id;
-//
-// private String code;
-//
-// private String name;
-//
-// private String value;
-//
-// private String remark;
-//
-// private String is_active;
-//
-// private String is_delete;
-//
-// private String create_id;
-//
-// private String update_optid;
-//
-// private String create_name;
-//
-// private String create_time;
-//
-// private String update_optname;
-//
-// private String update_time;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyDefine.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyDefine.java
deleted file mode 100644
index 63b69c7..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyDefine.java
+++ /dev/null
@@ -1,112 +0,0 @@
-//package org.nl.modules.system.service.entity;
-//
-//import com.fasterxml.jackson.annotation.JsonValue;
-//import lombok.AllArgsConstructor;
-//import lombok.Data;
-//import lombok.Getter;
-//
-//import java.time.Duration;
-//
-///**
-// * @Author: lyd
-// * @Description: Redis Key 定义类
-// * @Date: 2022-08-04
-// */
-//@Data
-//public class RedisKeyDefine {
-//
-// @Getter
-// @AllArgsConstructor
-// public enum KeyTypeEnum {
-//
-// STRING("String"),
-// LIST("List"),
-// HASH("Hash"),
-// SET("Set"),
-// ZSET("Sorted Set"),
-// STREAM("Stream"),
-// PUBSUB("Pub/Sub");
-//
-// /**
-// * 类型
-// */
-// @JsonValue
-// private final String type;
-//
-// }
-//
-// @Getter
-// @AllArgsConstructor
-// public enum TimeoutTypeEnum {
-//
-// FOREVER(1), // 永不超时
-// DYNAMIC(2), // 动态超时
-// FIXED(3); // 固定超时
-//
-// /**
-// * 类型
-// */
-// @JsonValue
-// private final Integer type;
-//
-// }
-//
-// /**
-// * Key 模板
-// */
-// private final String keyTemplate;
-// /**
-// * Key 类型的枚举
-// */
-// private final KeyTypeEnum keyType;
-// /**
-// * Value 类型
-// *
-// * 如果是使用分布式锁,设置为 {@link java.util.concurrent.locks.Lock} 类型
-// */
-// private final Class> valueType;
-// /**
-// * 超时类型
-// */
-// private final TimeoutTypeEnum timeoutType;
-// /**
-// * 过期时间
-// */
-// private final Duration timeout;
-// /**
-// * 备注
-// */
-// private final String memo;
-//
-// private RedisKeyDefine(String memo, String keyTemplate, KeyTypeEnum keyType, Class> valueType,
-// TimeoutTypeEnum timeoutType, Duration timeout) {
-// this.memo = memo;
-// this.keyTemplate = keyTemplate;
-// this.keyType = keyType;
-// this.valueType = valueType;
-// this.timeout = timeout;
-// this.timeoutType = timeoutType;
-// // 添加注册表
-// RedisKeyRegistry.add(this);
-// }
-//
-// public RedisKeyDefine(String memo, String keyTemplate, KeyTypeEnum keyType, Class> valueType, Duration timeout) {
-// this(memo, keyTemplate, keyType, valueType, TimeoutTypeEnum.FIXED, timeout);
-// }
-//
-// public RedisKeyDefine(String memo, String keyTemplate, KeyTypeEnum keyType, Class> valueType, TimeoutTypeEnum timeoutType) {
-// this(memo, keyTemplate, keyType, valueType, timeoutType, Duration.ZERO);
-// }
-//
-// /**
-// * 格式化 Key
-// *
-// * 注意,内部采用 {@link String#format(String, Object...)} 实现
-// *
-// * @param args 格式化的参数
-// * @return Key
-// */
-// public String formatKey(Object... args) {
-// return String.format(keyTemplate, args);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyRegistry.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyRegistry.java
deleted file mode 100644
index 6e5d0bc..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/entity/RedisKeyRegistry.java
+++ /dev/null
@@ -1,28 +0,0 @@
-//package org.nl.modules.system.service.entity;
-//
-//import java.util.ArrayList;
-//import java.util.List;
-//
-///**
-// * @Author: lyd
-// * @Description: {@link RedisKeyDefine} 注册表
-// * @Date: 2022-08-04
-// */
-//public class RedisKeyRegistry {
-// /**
-// * Redis RedisKeyDefine 数组
-// */
-// private static final List defines = new ArrayList<>();
-//
-// public static void add(RedisKeyDefine define) {
-// defines.add(define);
-// }
-//
-// public static List list() {
-// return defines;
-// }
-//
-// public static int size() {
-// return defines.size();
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/CodeDetailServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/CodeDetailServiceImpl.java
deleted file mode 100644
index f2c32bd..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/CodeDetailServiceImpl.java
+++ /dev/null
@@ -1,80 +0,0 @@
-//package org.nl.modules.system.service.impl;
-//
-//import cn.hutool.core.date.DateUtil;
-//import cn.hutool.core.util.IdUtil;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.common.utils.SecurityUtils;
-//import org.nl.modules.system.service.CodeDetailService;
-//import org.nl.modules.wql.core.bean.ResultBean;
-//import org.nl.modules.wql.core.bean.WQLObject;
-//import org.nl.modules.wql.util.WqlUtil;
-//import org.springframework.cache.annotation.CacheConfig;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.stereotype.Service;
-//
-//import java.util.Date;
-//import java.util.Map;
-//
-//@Service
-//@RequiredArgsConstructor
-//@CacheConfig(cacheNames = "codeDetail")
-//public class CodeDetailServiceImpl implements CodeDetailService {
-// @Override
-// public JSONObject queryAll(Map form, Pageable pageable) {
-// String where = "code_rule_id = '" + form.get("id") + "'";
-// ResultBean rb = WQLObject.getWQLObject("sys_code_rule_detail").pagequery(WqlUtil.getHttpContext(pageable), where, "sort_num desc ");
-// final JSONObject json = rb.pageResult();
-// return json;
-// }
-//
-// @Override
-// public void create(Map form) {
-// JSONObject json = new JSONObject();
-// String id = IdUtil.simpleUUID();
-// String now = DateUtil.now();
-// json.put("id", id);
-// json.put("type", form.get("type"));
-// json.put("init_value", form.get("init_value"));
-// json.put("current_value", form.get("init_value"));
-// json.put("max_value", form.get("max_value"));
-// json.put("step", form.get("step"));
-// json.put("fillchar", form.get("fillchar"));
-// json.put("format", form.get("format"));
-// json.put("length", form.get("length"));
-// json.put("sort_num", form.get("sort_num") + "");
-// json.put("remark", form.get("remark"));
-// Map dict = (Map) form.get("dict");
-// json.put("code_rule_id", dict.get("id"));
-// json.put("is_active", "1");
-// json.put("is_delete", "0");
-// json.put("create_id", SecurityUtils.getCurrentUserId());
-// json.put("create_name", SecurityUtils.getCurrentNickName());
-// json.put("create_time", now);
-// json.put("update_id", SecurityUtils.getCurrentUserId());
-// json.put("update_name", SecurityUtils.getCurrentNickName());
-// json.put("update_time", now);
-// if (form.get("type").equals("02")) {
-// Date date = DateUtil.date();
-// String format = (String) form.get("format");
-// String now_date = DateUtil.format(date, format);
-// json.put("init_value", now_date);
-// json.put("current_value", now_date);
-// }
-// WQLObject.getWQLObject("sys_code_rule_detail").insert(json);
-// }
-//
-// @Override
-// public void delete(String id) {
-// WQLObject.getWQLObject("sys_code_rule_detail").delete("id = '" + id + "'");
-// }
-//
-// @Override
-// public void update(JSONObject json) {
-// String now = DateUtil.now();
-// json.put("update_time", now);
-// json.put("update_id", SecurityUtils.getCurrentUserId());
-// json.put("update_name", SecurityUtils.getCurrentNickName());
-// WQLObject.getWQLObject("sys_code_rule_detail").update(json);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/GenCodeServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/GenCodeServiceImpl.java
deleted file mode 100644
index 17a82a6..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/GenCodeServiceImpl.java
+++ /dev/null
@@ -1,184 +0,0 @@
-//package org.nl.modules.system.service.impl;
-//
-//import cn.hutool.core.date.DateUtil;
-//import cn.hutool.core.util.IdUtil;
-//import cn.hutool.core.util.StrUtil;
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import org.nl.common.utils.SecurityUtils;
-//import org.nl.modules.common.exception.BadRequestException;
-//import org.nl.modules.system.service.GenCodeService;
-//import org.nl.modules.wql.core.bean.ResultBean;
-//import org.nl.modules.wql.core.bean.WQLObject;
-//import org.nl.modules.wql.util.WqlUtil;
-//import org.springframework.cache.annotation.CacheConfig;
-//import org.springframework.data.domain.Pageable;
-//import org.springframework.stereotype.Service;
-//
-//import javax.transaction.Transactional;
-//import java.util.Date;
-//import java.util.HashMap;
-//import java.util.Map;
-//import java.util.Set;
-//
-//@Service
-//@RequiredArgsConstructor
-//@CacheConfig(cacheNames = "genCode")
-//public class GenCodeServiceImpl implements GenCodeService {
-// @Override
-// public JSONObject queryAll(Map form, Pageable pageable) {
-// String where = "1=1";
-// if (form.get("blurry") != null) {
-// where = "code like '%" + (String) form.get("blurry") + "%' OR name = '%" + form.get("blurry") + "%'";
-// }
-// ResultBean rb = WQLObject.getWQLObject("sys_code_rule").pagequery(WqlUtil.getHttpContext(pageable), where, "code desc ");
-// final JSONObject json = rb.pageResult();
-// JSONArray ja = json.getJSONArray("content");
-// JSONArray new_ja = new JSONArray();
-// for (int i = 0; i < ja.size(); i++) {
-// JSONObject jo = ja.getJSONObject(i);
-// HashMap map = new HashMap();
-// map.put("code", jo.getString("code"));
-// map.put("flag", "0");
-// String demo = this.codeDemo(map);
-// jo.put("demo", demo);
-// new_ja.add(jo);
-// }
-// json.put("content", new_ja);
-// return json;
-// }
-//
-// @Override
-// public void create(Map form) {
-// String currentUserId = SecurityUtils.getCurrentUserId();
-// String currentUsername = SecurityUtils.getCurrentUsername();
-// WQLObject wql = WQLObject.getWQLObject("sys_code_rule");
-// JSONObject json = new JSONObject();
-// String id = IdUtil.simpleUUID();
-// String now = DateUtil.now();
-// String code = (String) form.get("code");
-// JSONObject jo = wql.query("code = '" + code + "'").uniqueResult(0);
-// if (jo != null) {
-// throw new BadRequestException("该编码code已存在,请校验!");
-// }
-// json.put("id", id);
-// json.put("code", form.get("code"));
-// json.put("name", form.get("name"));
-// json.put("create_id", currentUserId);
-// json.put("update_optid", currentUserId);
-// json.put("create_name", currentUsername);
-// json.put("update_optname", currentUsername);
-// json.put("create_time", now);
-// json.put("update_time", now);
-// WQLObject.getWQLObject("sys_code_rule").insert(json);
-// }
-//
-// @Override
-// public void delete(Set ids) {
-// for (String code : ids) {
-// WQLObject.getWQLObject("sys_code_rule").delete("id = '" + code + "'");
-// WQLObject.getWQLObject("sys_code_rule_detail").delete("code_rule_id = '" + code + "'");
-// }
-// }
-//
-// @Override
-// public void update(JSONObject json) {
-// WQLObject wql = WQLObject.getWQLObject("sys_code_rule");
-// String code = json.getString("code");
-// String id = json.getString("id");
-// JSONObject jo = wql.query("id<>'" + id + "code = '" + code + "'").uniqueResult(0);
-// if (jo != null) {
-// throw new BadRequestException("该编码code已存在,请校验!");
-// }
-// String now = DateUtil.now();
-// json.put("update_optid", SecurityUtils.getCurrentUserId());
-// json.put("update_time", now);
-// json.put("update_optname", SecurityUtils.getCurrentUsername());
-// WQLObject.getWQLObject("sys_code_rule").update(json);
-// }
-//
-// @Override
-// @Transactional(Transactional.TxType.`REQUIRES_NEW`)
-// public String codeDemo(Map form) {
-// String code = (String) form.get("code");
-// String id = this.queryIdByCode(code);
-// //如果flag=1就执行更新数据库的操作
-// String flag = (String) form.get("flag");
-// WQLObject wo = WQLObject.getWQLObject("sys_code_rule_detail");
-// JSONArray ja = wo.query("code_rule_id = '" + id + "' order by sort_num FOR UPDATE").getResultJSONArray(0);
-// String demo = "";
-// boolean is_same = true;
-// for (int i = 0; i < ja.size(); i++) {
-// String value = "";
-// JSONObject jo = ja.getJSONObject(i);
-// //固定直接取值
-// if (jo.getString("type").equals("01")) {
-// value = jo.getString("init_value");
-// }
-// //日期判断数据库的值与当前值是否相同来决定顺序的值
-// if (jo.getString("type").equals("02")) {
-// String current_value = jo.getString("current_value");
-// Date date = DateUtil.date();
-// String format = jo.getString("format");
-// String now_date = DateUtil.format(date, format);
-// if (!now_date.equals(current_value)) {
-// is_same = false;
-// }
-// if (flag.equals("1")) {
-// jo.put("init_value", now_date);
-// jo.put("current_value", now_date);
-// }
-// value = now_date;
-// }
-// //顺序的值:如果日期一样就+步长,等于最大值就归为初始值;日期不一样就归为初始值
-// if (jo.getString("type").equals("03")) {
-// String num_value = "";
-// int step = jo.getInteger("step");
-// Long max_value = jo.getLong("max_value");
-// if (!is_same || (jo.getLongValue("current_value") + step > max_value)) {
-// num_value = jo.getString("init_value");
-// } else {
-// num_value = (jo.getInteger("current_value") + step) + "";
-// }
-// int size = num_value.length();
-// int length = jo.getInteger("length");
-// String fillchar = jo.getString("fillchar");
-// for (int m = 0; m < (length - size); m++) {
-// value += fillchar;
-// }
-// value += num_value;
-// if (flag.equals("1")) {
-// if (!is_same) {
-// int init_value = jo.getInteger("init_value");
-// if (StrUtil.isEmpty((init_value + ""))) {
-// throw new BadRequestException("请完善编码数值的初始值!");
-// }
-// jo.put("current_value", init_value + "");
-// } else {
-// int num_curr = jo.getInteger("current_value");
-// if (num_curr >= max_value) {
-// num_curr = jo.getInteger("init_value");
-// jo.put("current_value", num_curr + "");
-// } else {
-// jo.put("current_value", (num_curr + step) + "");
-// }
-// }
-// }
-// }
-// demo += value;
-// if (flag.equals("1")) {
-// wo.update(jo);
-// }
-// }
-// return demo;
-// }
-//
-// @Override
-// public String queryIdByCode(String code) {
-// JSONObject jo = WQLObject.getWQLObject("sys_code_rule").query("code = '" + code + "'").uniqueResult(0);
-// String id = jo.getString("id");
-// return id;
-// }
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java
deleted file mode 100644
index a6fda68..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java
+++ /dev/null
@@ -1,194 +0,0 @@
-///*
-// * Copyright 2019-2020 Zheng Jie
-// *
-// * Licensed under the Apache License, Version 2.0 (the "License");
-// * you may not use this file except in compliance with the License.
-// * You may obtain a copy of the License at
-// *
-// * http://www.apache.org/licenses/LICENSE-2.0
-// *
-// * Unless required by applicable law or agreed to in writing, software
-// * distributed under the License is distributed on an "AS IS" BASIS,
-// * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-// * See the License for the specific language governing permissions and
-// * limitations under the License.
-// */
-//package org.nl.modules.system.service.impl;
-//
-//import cn.hutool.core.date.BetweenFormatter;
-//import cn.hutool.core.date.DateUtil;
-//import org.nl.modules.common.utils.ElAdminConstant;
-//import org.nl.modules.common.utils.FileUtil;
-//import org.nl.modules.common.utils.StringUtils;
-//import org.nl.modules.system.service.MonitorService;
-//import org.springframework.stereotype.Service;
-//import oshi.SystemInfo;
-//import oshi.hardware.CentralProcessor;
-//import oshi.hardware.GlobalMemory;
-//import oshi.hardware.HardwareAbstractionLayer;
-//import oshi.hardware.VirtualMemory;
-//import oshi.software.os.FileSystem;
-//import oshi.software.os.OSFileStore;
-//import oshi.software.os.OperatingSystem;
-//import oshi.util.FormatUtil;
-//import oshi.util.Util;
-//
-//import java.lang.management.ManagementFactory;
-//import java.text.DecimalFormat;
-//import java.util.Date;
-//import java.util.LinkedHashMap;
-//import java.util.List;
-//import java.util.Map;
-//
-///**
-// * @author Zheng Jie
-// * @date 2020-05-02
-// */
-//@Service
-//public class MonitorServiceImpl implements MonitorService {
-//
-// private final DecimalFormat df = new DecimalFormat("0.00");
-//
-// @Override
-// public Map getServers() {
-// Map resultMap = new LinkedHashMap<>(8);
-// try {
-// SystemInfo si = new SystemInfo();
-// OperatingSystem os = si.getOperatingSystem();
-// HardwareAbstractionLayer hal = si.getHardware();
-// // 系统信息
-// resultMap.put("sys", getSystemInfo(os));
-// // cpu 信息
-// resultMap.put("cpu", getCpuInfo(hal.getProcessor()));
-// // 内存信息
-// resultMap.put("memory", getMemoryInfo(hal.getMemory()));
-// // 交换区信息
-// resultMap.put("swap", getSwapInfo(hal.getMemory()));
-// // 磁盘
-// resultMap.put("disk", getDiskInfo(os));
-// resultMap.put("time", DateUtil.format(new Date(), "HH:mm:ss"));
-// } catch (Exception e) {
-// e.printStackTrace();
-// }
-// return resultMap;
-// }
-//
-// /**
-// * 获取磁盘信息
-// *
-// * @return /
-// */
-// private Map getDiskInfo(OperatingSystem os) {
-// Map diskInfo = new LinkedHashMap<>();
-// FileSystem fileSystem = os.getFileSystem();
-// List fsArray = fileSystem.getFileStores();
-// String osName = System.getProperty("os.name");
-// long available = 0, total = 0;
-// for (OSFileStore fs : fsArray) {
-// // windows 需要将所有磁盘分区累加,linux 和 mac 直接累加会出现磁盘重复的问题,待修复
-// if (osName.toLowerCase().startsWith(ElAdminConstant.WIN)) {
-// available += fs.getUsableSpace();
-// total += fs.getTotalSpace();
-// } else {
-// available = fs.getUsableSpace();
-// total = fs.getTotalSpace();
-// break;
-// }
-// }
-// long used = total - available;
-// diskInfo.put("total", total > 0 ? FileUtil.getSize(total) : "?");
-// diskInfo.put("available", FileUtil.getSize(available));
-// diskInfo.put("used", FileUtil.getSize(used));
-// diskInfo.put("usageRate", df.format(used / (double) total * 100));
-// return diskInfo;
-// }
-//
-// /**
-// * 获取交换区信息
-// *
-// * @param memory /
-// * @return /
-// */
-// private Map getSwapInfo(GlobalMemory memory) {
-// Map swapInfo = new LinkedHashMap<>();
-// VirtualMemory virtualMemory = memory.getVirtualMemory();
-// long total = virtualMemory.getSwapTotal();
-// long used = virtualMemory.getSwapUsed();
-// swapInfo.put("total", FormatUtil.formatBytes(total));
-// swapInfo.put("used", FormatUtil.formatBytes(used));
-// swapInfo.put("available", FormatUtil.formatBytes(total - used));
-// if (used == 0) {
-// swapInfo.put("usageRate", 0);
-// } else {
-// swapInfo.put("usageRate", df.format(used / (double) total * 100));
-// }
-// return swapInfo;
-// }
-//
-// /**
-// * 获取内存信息
-// *
-// * @param memory /
-// * @return /
-// */
-// private Map getMemoryInfo(GlobalMemory memory) {
-// Map memoryInfo = new LinkedHashMap<>();
-// memoryInfo.put("total", FormatUtil.formatBytes(memory.getTotal()));
-// memoryInfo.put("available", FormatUtil.formatBytes(memory.getAvailable()));
-// memoryInfo.put("used", FormatUtil.formatBytes(memory.getTotal() - memory.getAvailable()));
-// memoryInfo.put("usageRate", df.format((memory.getTotal() - memory.getAvailable()) / (double) memory.getTotal() * 100));
-// return memoryInfo;
-// }
-//
-// /**
-// * 获取Cpu相关信息
-// *
-// * @param processor /
-// * @return /
-// */
-// private Map getCpuInfo(CentralProcessor processor) {
-// Map cpuInfo = new LinkedHashMap<>();
-// cpuInfo.put("name", processor.getProcessorIdentifier().getName());
-// cpuInfo.put("package", processor.getPhysicalPackageCount() + "个物理CPU");
-// cpuInfo.put("core", processor.getPhysicalProcessorCount() + "个物理核心");
-// cpuInfo.put("coreNumber", processor.getPhysicalProcessorCount());
-// cpuInfo.put("logic", processor.getLogicalProcessorCount() + "个逻辑CPU");
-// // CPU信息
-// long[] prevTicks = processor.getSystemCpuLoadTicks();
-// // 等待1秒...
-// Util.sleep(1000);
-// long[] ticks = processor.getSystemCpuLoadTicks();
-// long user = ticks[CentralProcessor.TickType.USER.getIndex()] - prevTicks[CentralProcessor.TickType.USER.getIndex()];
-// long nice = ticks[CentralProcessor.TickType.NICE.getIndex()] - prevTicks[CentralProcessor.TickType.NICE.getIndex()];
-// long sys = ticks[CentralProcessor.TickType.SYSTEM.getIndex()] - prevTicks[CentralProcessor.TickType.SYSTEM.getIndex()];
-// long idle = ticks[CentralProcessor.TickType.IDLE.getIndex()] - prevTicks[CentralProcessor.TickType.IDLE.getIndex()];
-// long iowait = ticks[CentralProcessor.TickType.IOWAIT.getIndex()] - prevTicks[CentralProcessor.TickType.IOWAIT.getIndex()];
-// long irq = ticks[CentralProcessor.TickType.IRQ.getIndex()] - prevTicks[CentralProcessor.TickType.IRQ.getIndex()];
-// long softirq = ticks[CentralProcessor.TickType.SOFTIRQ.getIndex()] - prevTicks[CentralProcessor.TickType.SOFTIRQ.getIndex()];
-// long steal = ticks[CentralProcessor.TickType.STEAL.getIndex()] - prevTicks[CentralProcessor.TickType.STEAL.getIndex()];
-// long totalCpu = user + nice + sys + idle + iowait + irq + softirq + steal;
-// cpuInfo.put("used", df.format(100d * user / totalCpu + 100d * sys / totalCpu));
-// cpuInfo.put("idle", df.format(100d * idle / totalCpu));
-// return cpuInfo;
-// }
-//
-// /**
-// * 获取系统相关信息,系统、运行天数、系统IP
-// *
-// * @param os /
-// * @return /
-// */
-// private Map getSystemInfo(OperatingSystem os) {
-// Map systemInfo = new LinkedHashMap<>();
-// // jvm 运行时间
-// long time = ManagementFactory.getRuntimeMXBean().getStartTime();
-// Date date = new Date(time);
-// // 计算项目运行时间 5.4.3:BetweenFormater, 5.7.14改名为BetweenFormatter
-// String formatBetween = DateUtil.formatBetween(date, new Date(), BetweenFormatter.Level.HOUR);
-// // 系统信息
-// systemInfo.put("os", os.toString());
-// systemInfo.put("day", formatBetween);
-// systemInfo.put("ip", StringUtils.getLocalIp());
-// return systemInfo;
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/RedisServiceImpl.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/RedisServiceImpl.java
deleted file mode 100644
index 2e5df0a..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/impl/RedisServiceImpl.java
+++ /dev/null
@@ -1,83 +0,0 @@
-//package org.nl.modules.system.service.impl;
-//
-//import com.alibaba.fastjson.JSONArray;
-//import com.alibaba.fastjson.JSONObject;
-//import lombok.RequiredArgsConstructor;
-//import lombok.extern.slf4j.Slf4j;
-//import org.nl.modules.system.service.RedisService;
-//import org.nl.modules.system.service.convert.RedisConvert;
-//import org.nl.modules.system.service.entity.RedisKeyDefine;
-//import org.nl.modules.system.service.entity.RedisKeyRegistry;
-//import org.springframework.beans.factory.annotation.Autowired;
-//import org.springframework.data.redis.connection.DataType;
-//import org.springframework.data.redis.connection.RedisServerCommands;
-//import org.springframework.data.redis.core.RedisCallback;
-//import org.springframework.data.redis.core.StringRedisTemplate;
-//import org.springframework.stereotype.Service;
-//
-//import java.util.*;
-//
-///**
-// * @Author: lyd
-// * @Description: Redis监控的实现类
-// * @Date: 2022-08-04
-// */
-//@Service
-//@RequiredArgsConstructor
-//@Slf4j
-//public class RedisServiceImpl implements RedisService {
-//
-// @Autowired
-// private StringRedisTemplate stringRedisTemplate;
-//
-// @Override
-// public JSONObject getRedisMonitorInfo() {
-// // 获得 Redis 统计信息
-// Properties info = stringRedisTemplate.execute((RedisCallback) RedisServerCommands::info);
-// Long dbSize = stringRedisTemplate.execute(RedisServerCommands::dbSize);
-// Properties commandStats = stringRedisTemplate.execute((
-// RedisCallback) connection -> connection.info("commandstats"));
-// assert commandStats != null; // 断言,避免警告
-//// System.out.println("info:" + info + " dbsize:" + dbSize + " com:" + commandStats);
-// // 拼接结果返回
-// // 转成实体
-// JSONObject json = new JSONObject();
-// json.put("info", RedisConvert.INSTANCE.build(info, dbSize, commandStats));
-// return json;
-// }
-//
-// @Override
-// public JSONObject getKeyDefineList() {
-// List keyDefines = RedisKeyRegistry.list();
-// JSONObject json = new JSONObject();
-// System.out.println(keyDefines);
-//// json.put("info", RedisConvert.INSTANCE.convertList(keyDefines));
-// return json;
-// }
-//
-// @Override
-// public JSONArray getKeyValueList() {
-// JSONArray result = new JSONArray();
-// Set keys = stringRedisTemplate.keys("*");
-// // 迭代
-// Iterator it = keys.iterator();
-// while (it.hasNext()) {
-// String key = it.next();
-// JSONObject redis = new JSONObject();
-// DataType dataType = stringRedisTemplate.type(key); // 数据类型
-// String s = stringRedisTemplate.opsForValue().get(key); // 获取值
-// Long expire = stringRedisTemplate.getExpire(key); // 获取剩余时间
-// redis.put("dataType", dataType);
-// redis.put("key", key);
-// redis.put("value", s);
-// redis.put("expire", expire);
-// result.add(redis);
-// }
-// return result;
-// }
-//
-// @Override
-// public void deleteByKey(String[] ids) {
-// stringRedisTemplate.delete(Arrays.asList(ids));
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisKeyDefineRespVO.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisKeyDefineRespVO.java
deleted file mode 100644
index 7ecc842..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisKeyDefineRespVO.java
+++ /dev/null
@@ -1,38 +0,0 @@
-//package org.nl.modules.system.service.vo;
-//
-//
-//import lombok.AllArgsConstructor;
-//import lombok.Builder;
-//import lombok.Data;
-//import org.nl.modules.system.service.entity.RedisKeyDefine;
-//
-//import java.time.Duration;
-//
-///**
-// * @Author: lyd
-// * @Description: 管理后台 - Redis Key 信息 Response VO
-// * @Date: 2022-08-04
-// */
-//
-//@Data
-//@Builder
-//@AllArgsConstructor
-//public class RedisKeyDefineRespVO {
-//
-// private String keyTemplate;
-//
-//
-// private RedisKeyDefine.KeyTypeEnum keyType;
-//
-//
-// private Class> valueType;
-//
-//
-// private RedisKeyDefine.TimeoutTypeEnum timeoutType;
-//
-//
-// private Duration timeout;
-//
-//
-// private String memo;
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisMonitorRespVO.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisMonitorRespVO.java
deleted file mode 100644
index 4a585d8..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/RedisMonitorRespVO.java
+++ /dev/null
@@ -1,46 +0,0 @@
-//package org.nl.modules.system.service.vo;
-//
-//
-//import lombok.AllArgsConstructor;
-//import lombok.Builder;
-//import lombok.Data;
-//
-//import java.util.List;
-//import java.util.Properties;
-//
-///**
-// * @Author: lyd
-// * @Description: 管理后台 - Redis 监控信息 Response VO
-// * @Date: 2022-08-04
-// */
-//
-//@Data
-//@Builder
-//@AllArgsConstructor
-//public class RedisMonitorRespVO {
-//
-// private Properties info;
-//
-//
-// private Long dbSize;
-//
-//
-// private List commandStats;
-//
-//
-// @Data
-// @Builder
-// @AllArgsConstructor
-// public static class CommandStat {
-//
-//
-// private String command;
-//
-//
-// private Integer calls;
-//
-//
-// private Long usec;
-//
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/UserVo.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/UserVo.java
deleted file mode 100644
index 5dde888..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/service/vo/UserVo.java
+++ /dev/null
@@ -1,9 +0,0 @@
-//package org.nl.modules.system.service.vo;
-//
-///**
-// * @author: lyd
-// * @description:
-// * @Date: 2022/9/26
-// */
-//public class UserVo {
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java
deleted file mode 100644
index 84d44f3..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/util/CodeUtil.java
+++ /dev/null
@@ -1,19 +0,0 @@
-//package org.nl.modules.system.util;
-//
-//import org.nl.modules.system.service.GenCodeService;
-//import org.nl.modules.wql.util.SpringContextHolder;
-//
-//import java.util.HashMap;
-//
-//public class CodeUtil {
-//
-// public static String getNewCode(String ruleCode) {
-// GenCodeService bean = SpringContextHolder.getBean(GenCodeService.class);
-// String flag = "1";
-// HashMap map = new HashMap<>();
-// map.put("flag", flag);
-// map.put("code", ruleCode);
-// return bean.codeDemo(map);
-// }
-//
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/util/YamlUtil.java b/lms/nladmin-system/src/main/java/org/nl/modules/system/util/YamlUtil.java
deleted file mode 100644
index 19e55aa..0000000
--- a/lms/nladmin-system/src/main/java/org/nl/modules/system/util/YamlUtil.java
+++ /dev/null
@@ -1,11 +0,0 @@
-//package org.nl.modules.system.util;
-//
-//import java.util.Properties;
-//
-//public class YamlUtil {
-// public static Properties properties;
-//
-// public static String getValue(String key) {
-// return (String) properties.get(key);
-// }
-//}
diff --git a/lms/nladmin-system/src/main/java/org/nl/modules/system/wql/sys.xls b/lms/nladmin-system/src/main/java/org/nl/modules/system/wql/sys.xls
index 85261669e7747ab7c9fa80f05c5712ffa6600b83..4543abe382bca0723e8e44bd4eabbe6fc0b146d7 100644
GIT binary patch
delta 29914
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