diff --git a/nladmin-system/doc/sch2.xls b/nladmin-system/doc/sch2.xls deleted file mode 100644 index 4085eed..0000000 Binary files a/nladmin-system/doc/sch2.xls and /dev/null differ diff --git a/nladmin-system/doc/wms.xls b/nladmin-system/doc/wms.xls new file mode 100644 index 0000000..d78eb36 Binary files /dev/null and b/nladmin-system/doc/wms.xls differ diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java b/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java index bbb8639..f125113 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java @@ -5,7 +5,7 @@ import com.alicp.jetcache.anno.config.EnableCreateCacheAnnotation; import com.alicp.jetcache.anno.config.EnableMethodCache; import io.swagger.annotations.Api; import org.mybatis.spring.annotation.MapperScan; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.config.SpringContextHolder; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/DataPermission.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/DataPermission.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/DataPermission.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/DataPermission.java index 922bf5e..b8a693d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/DataPermission.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/DataPermission.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.annotation; +package org.nl.common.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Limit.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Limit.java similarity index 93% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Limit.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Limit.java index ae7e363..9f33b48 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Limit.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Limit.java @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.annotation; +package org.nl.common.annotation; -import org.nl.modules.common.aspect.LimitType; +import org.nl.common.aspect.LimitType; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Query.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Query.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Query.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Query.java index 9ff0ad1..2abca5a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/Query.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/Query.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.annotation; +package org.nl.common.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/RateLimiter.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/RateLimiter.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/RateLimiter.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/RateLimiter.java index 98cba38..f076f3b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/annotation/RateLimiter.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/annotation/RateLimiter.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.annotation; +package org.nl.common.annotation; import org.springframework.core.annotation.AliasFor; import org.springframework.core.annotation.AnnotationUtils; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitAspect.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitAspect.java similarity index 92% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitAspect.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitAspect.java index 7a8118f..a669c5e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitAspect.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitAspect.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.aspect; +package org.nl.common.aspect; import cn.hutool.core.util.StrUtil; import com.google.common.collect.ImmutableList; @@ -23,10 +23,10 @@ import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.reflect.MethodSignature; -import org.nl.modules.common.annotation.Limit; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.RequestHolder; -import org.nl.modules.common.utils.StringUtils; +import org.nl.common.annotation.Limit; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.RequestHolder; +import org.nl.common.utils.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.data.redis.core.RedisTemplate; @@ -52,7 +52,7 @@ public class LimitAspect { this.redisTemplate = redisTemplate; } - @Pointcut("@annotation(org.nl.modules.common.annotation.Limit)") + @Pointcut("@annotation(org.nl.common.annotation.Limit)") public void pointcut() { } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitType.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitType.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitType.java index 12ca6e0..7959f02 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/aspect/LimitType.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/aspect/LimitType.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.aspect; +package org.nl.common.aspect; /** * 限流枚举 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseDTO.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseDTO.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseDTO.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseDTO.java index d7e42c8..7920b7c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseDTO.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseDTO.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.base; +package org.nl.common.base; import com.alibaba.fastjson.annotation.JSONField; import com.fasterxml.jackson.annotation.JsonFormat; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseMapper.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseMapper.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseMapper.java index 95345ba..c1b43a0 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/base/BaseMapper.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/BaseMapper.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.base; +package org.nl.common.base; import java.util.List; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/common/TableDataInfo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/TableDataInfo.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/common/TableDataInfo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/base/TableDataInfo.java index b070572..a05a05a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/common/TableDataInfo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/base/TableDataInfo.java @@ -1,4 +1,4 @@ -package org.nl.common; +package org.nl.common.base; import cn.hutool.http.HttpStatus; import com.baomidou.mybatisplus.core.metadata.IPage; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/BaseQuery.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/BaseQuery.java index adf573a..71ccd84 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/BaseQuery.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/query/BaseQuery.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.core.toolkit.LambdaUtils; import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache; import lombok.Data; import org.nl.common.enums.QueryTEnum; -import org.nl.modules.tools.MapOf; +import org.nl.config.MapOf; import sun.reflect.generics.reflectiveObjects.ParameterizedTypeImpl; import java.lang.reflect.Type; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/DeptVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/DeptVo.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/DeptVo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/DeptVo.java index 3ebd264..62d400b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/DeptVo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/DeptVo.java @@ -13,12 +13,12 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.domain.vo; +package org.nl.common.domain.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; -import org.nl.modules.common.base.BaseDTO; +import org.nl.common.base.BaseDTO; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuMetaVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuMetaVo.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuMetaVo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuMetaVo.java index 72b475c..e5b22a0 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuMetaVo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuMetaVo.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.domain.vo; +package org.nl.common.domain.vo; import lombok.AllArgsConstructor; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuVo.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuVo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuVo.java index 2bb784f..07cb902 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/MenuVo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/MenuVo.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.domain.vo; +package org.nl.common.domain.vo; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/RoleVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/RoleVo.java similarity index 93% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/RoleVo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/RoleVo.java index c42ba42..88cb9d1 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/RoleVo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/RoleVo.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.domain.vo; +package org.nl.common.domain.vo; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; @@ -21,8 +21,6 @@ import lombok.Setter; import javax.validation.constraints.NotBlank; import java.io.Serializable; -import java.util.Objects; -import java.util.Set; /** * 角色 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/UserPassVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/UserPassVo.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/UserPassVo.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/UserPassVo.java index 3f4b467..6420b97 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/vo/UserPassVo.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/domain/vo/UserPassVo.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.domain.vo; +package org.nl.common.domain.vo; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeBiEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeBiEnum.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeBiEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeBiEnum.java index 5b735d8..9dcdd2b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeBiEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeBiEnum.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils.enums; +package org.nl.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeEnum.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeEnum.java index 2a56bb0..d5dc14e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/CodeEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/CodeEnum.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils.enums; +package org.nl.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/DataScopeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/DataScopeEnum.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/DataScopeEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/DataScopeEnum.java index eed5830..71213ba 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/DataScopeEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/DataScopeEnum.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils.enums; +package org.nl.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/RequestMethodEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/RequestMethodEnum.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/RequestMethodEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/RequestMethodEnum.java index dff3cb9..0ba462c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/enums/RequestMethodEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/enums/RequestMethodEnum.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils.enums; +package org.nl.common.enums; import lombok.AllArgsConstructor; import lombok.Getter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadConfigurationException.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadConfigurationException.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadConfigurationException.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadConfigurationException.java index ab0bf94..c8bda76 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadConfigurationException.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadConfigurationException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception; +package org.nl.common.exception; /** * 统一关于错误配置信息 异常 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadRequestException.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadRequestException.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadRequestException.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadRequestException.java index d5e7711..ce1a3f3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/BadRequestException.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/BadRequestException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception; +package org.nl.common.exception; import lombok.Getter; import org.springframework.http.HttpStatus; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityExistException.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityExistException.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityExistException.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityExistException.java index dbf2fb6..e73e764 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityExistException.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityExistException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception; +package org.nl.common.exception; import org.springframework.util.StringUtils; @@ -31,4 +31,4 @@ public class EntityExistException extends RuntimeException { return StringUtils.capitalize(entity) + " with " + field + " "+ val + " existed"; } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityNotFoundException.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityNotFoundException.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityNotFoundException.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityNotFoundException.java index 19034e6..3918eb9 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/EntityNotFoundException.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/EntityNotFoundException.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception; +package org.nl.common.exception; import org.springframework.util.StringUtils; @@ -31,4 +31,4 @@ public class EntityNotFoundException extends RuntimeException { return StringUtils.capitalize(entity) + " with " + field + " "+ val + " does not exist"; } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/ApiError.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/ApiError.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/ApiError.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/ApiError.java index 6bc04b2..c596d1d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/ApiError.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/ApiError.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception.handler; +package org.nl.common.exception.handler; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/GlobalExceptionHandler.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/GlobalExceptionHandler.java similarity index 93% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/GlobalExceptionHandler.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/GlobalExceptionHandler.java index 3528d94..9e3bbc5 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/exception/handler/GlobalExceptionHandler.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/exception/handler/GlobalExceptionHandler.java @@ -13,14 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.exception.handler; +package org.nl.common.exception.handler; import cn.dev33.satoken.exception.NotLoginException; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.exception.EntityExistException; -import org.nl.modules.common.exception.EntityNotFoundException; -import org.nl.modules.common.utils.ThrowableUtil; +import org.nl.common.exception.BadRequestException; +import org.nl.common.exception.EntityExistException; +import org.nl.common.exception.EntityNotFoundException; +import org.nl.common.utils.ThrowableUtil; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.MethodArgumentNotValidException; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/annotation/Log.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/annotation/Log.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/annotation/Log.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/annotation/Log.java index e14ae50..4d8105b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/annotation/Log.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/annotation/Log.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.logging.annotation; +package org.nl.common.logging.annotation; import java.lang.annotation.ElementType; import java.lang.annotation.Retention; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/aspect/LogAspect.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/aspect/LogAspect.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java index 0e45788..297b3dd 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/aspect/LogAspect.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/aspect/LogAspect.java @@ -14,7 +14,7 @@ * limitations under the License. *//* -package org.nl.modules.logging.aspect; +package org.nl.common.logging.aspect; import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONUtil; @@ -26,11 +26,11 @@ import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut; import org.aspectj.lang.reflect.MethodSignature; -import org.nl.modules.common.utils.RequestHolder; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.common.utils.StringUtils; -import org.nl.modules.common.utils.ThrowableUtil; -import org.nl.modules.logging.domain.Log; +import org.nl.common.utils.RequestHolder; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.StringUtils; +import org.nl.common.utils.ThrowableUtil; +import org.nl.common.logging.domain.Log; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestParam; @@ -70,7 +70,7 @@ public class LogAspect { * 配置切入点 *//* - @Pointcut("@annotation(org.nl.modules.logging.annotation.Log)") + @Pointcut("@annotation(org.nl.common.logging.annotation.Log)") public void logPointcut() { // 该方法无方法体,主要为了让同类中其他方法使用此切入点 } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/domain/Log.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/domain/Log.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/domain/Log.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/domain/Log.java index 4231138..2d9f1c6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logging/domain/Log.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/logging/domain/Log.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.logging.domain; +package org.nl.common.logging.domain; import lombok.Getter; import lombok.NoArgsConstructor; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/DataTypeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/DataTypeEnum.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/DataTypeEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/DataTypeEnum.java index 9e1adc7..99ab108 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/DataTypeEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/DataTypeEnum.java @@ -17,7 +17,7 @@ * */ -package org.nl.modules.mnt.util; +package org.nl.common.mnt.util; import lombok.extern.slf4j.Slf4j; /** diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ExecuteShellUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ExecuteShellUtil.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ExecuteShellUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ExecuteShellUtil.java index 5041711..cf5d26f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ExecuteShellUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ExecuteShellUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.util; +package org.nl.common.mnt.util; import cn.hutool.core.io.IoUtil; import com.jcraft.jsch.ChannelShell; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ScpClientUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ScpClientUtil.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ScpClientUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ScpClientUtil.java index f76191d..0df287d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ScpClientUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ScpClientUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.util; +package org.nl.common.mnt.util; import ch.ethz.ssh2.Connection; import ch.ethz.ssh2.SCPClient; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/SqlUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/SqlUtils.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/SqlUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/SqlUtils.java index 08269be..718f5b2 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/SqlUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/SqlUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.util; +package org.nl.common.mnt.util; import com.alibaba.druid.pool.DruidDataSource; import com.alibaba.druid.util.StringUtils; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ZipUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ZipUtils.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ZipUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ZipUtils.java index 8abee48..9ef08c7 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/util/ZipUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/util/ZipUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.util; +package org.nl.common.mnt.util; import java.io.*; import java.util.Enumeration; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/MsgType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/MsgType.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/MsgType.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/MsgType.java index 7ee6e83..513e8c6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/MsgType.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/MsgType.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.websocket; +package org.nl.common.mnt.websocket; /** * @author ZhangHouYing diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/SocketMsg.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/SocketMsg.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/SocketMsg.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/SocketMsg.java index 9b5345f..c9c470e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/SocketMsg.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/SocketMsg.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.websocket; +package org.nl.common.mnt.websocket; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/WebSocketServer.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/WebSocketServer.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/WebSocketServer.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/WebSocketServer.java index f6e9d0c..716657d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/mnt/websocket/WebSocketServer.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/mnt/websocket/WebSocketServer.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.mnt.websocket; +package org.nl.common.mnt.websocket; import com.alibaba.fastjson.JSONObject; import lombok.extern.slf4j.Slf4j; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/ConfigBeanConfiguration.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/ConfigBeanConfiguration.java similarity index 92% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/ConfigBeanConfiguration.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/ConfigBeanConfiguration.java index 141c6fc..71493c6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/ConfigBeanConfiguration.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/ConfigBeanConfiguration.java @@ -13,9 +13,9 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.security.config; +package org.nl.common.security.config; -import org.nl.modules.security.config.bean.LoginProperties; +import org.nl.common.security.config.bean.LoginProperties; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCode.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCode.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCode.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCode.java index 46abb67..489dfb7 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCode.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCode.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.security.config.bean; +package org.nl.common.security.config.bean; import lombok.Data; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCodeEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCodeEnum.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCodeEnum.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCodeEnum.java index b2185e7..29eae65 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginCodeEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginCodeEnum.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.security.config.bean; +package org.nl.common.security.config.bean; /** * 验证码配置枚举 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginProperties.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginProperties.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginProperties.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginProperties.java index e436eaa..2babbf2 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/config/bean/LoginProperties.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/config/bean/LoginProperties.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.security.config.bean; +package org.nl.common.security.config.bean; import cn.hutool.core.util.StrUtil; import com.wf.captcha.*; import com.wf.captcha.base.Captcha; import lombok.Data; -import org.nl.modules.common.exception.BadConfigurationException; +import org.nl.common.exception.BadConfigurationException; import java.awt.*; import java.util.Objects; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/RedisListenerConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/RedisListenerConfig.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/RedisListenerConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/RedisListenerConfig.java index ba5808c..b5b0448 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/RedisListenerConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/RedisListenerConfig.java @@ -1,4 +1,4 @@ -package org.nl.modules.security.satoken; +package org.nl.common.security.satoken; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SaTokenConfigure.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SaTokenConfigure.java index ca4c66d..ccb7d08 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SaTokenConfigure.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SaTokenConfigure.java @@ -1,4 +1,4 @@ -package org.nl.modules.security.satoken; +package org.nl.common.security.satoken; import cn.dev33.satoken.interceptor.SaInterceptor; import cn.dev33.satoken.jwt.StpLogicJwtForSimple; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SecurityProperties.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SecurityProperties.java similarity index 90% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SecurityProperties.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SecurityProperties.java index 9e2ac1b..443f1c6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/SecurityProperties.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/SecurityProperties.java @@ -1,4 +1,4 @@ -package org.nl.modules.security.satoken; +package org.nl.common.security.satoken; import lombok.Data; import org.springframework.boot.context.properties.ConfigurationProperties; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/StpInterfaceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/StpInterfaceImpl.java similarity index 90% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/StpInterfaceImpl.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/StpInterfaceImpl.java index 883256c..2bfd6aa 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/StpInterfaceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/StpInterfaceImpl.java @@ -1,7 +1,7 @@ -package org.nl.modules.security.satoken; +package org.nl.common.security.satoken; import cn.dev33.satoken.stp.StpInterface; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.utils.SecurityUtils; import org.springframework.stereotype.Component; import java.util.List; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/hint.md b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/hint.md similarity index 100% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/satoken/hint.md rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/satoken/hint.md diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/service/UserCacheClean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/service/UserCacheClean.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/service/UserCacheClean.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/security/service/UserCacheClean.java index 600b999..c16eed4 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/security/service/UserCacheClean.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/security/service/UserCacheClean.java @@ -1,4 +1,4 @@ -package org.nl.modules.security.service;///* +package org.nl.common.security.service;///* // * Copyright 2019-2020 the original author or authors. // * // * Licensed under the Apache License, Version 2.0 (the "License"); @@ -14,7 +14,7 @@ package org.nl.modules.security.service;///* // * limitations under the License. // */ // -//package org.nl.modules.security.service; +//package org.nl.common.security.service; // //import cn.hutool.core.util.StrUtil; //import org.springframework.stereotype.Component; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/CacheKey.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CacheKey.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/CacheKey.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CacheKey.java index abbb456..ba14cf0 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/CacheKey.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CacheKey.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; /** * @author: liaojinlong diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CodeUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CodeUtil.java similarity index 82% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CodeUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CodeUtil.java index 07aefda..313ab23 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CodeUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CodeUtil.java @@ -1,6 +1,6 @@ -package org.nl.modules.system.util; +package org.nl.common.utils; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.config.SpringContextHolder; import org.nl.system.service.coderule.ISysCodeRuleService; import java.util.*; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ColUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ColUtil.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ColUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ColUtil.java index e948b64..ad0aa1d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ColUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ColUtil.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.utils; +package org.nl.common.utils; import org.apache.commons.configuration.Configuration; import org.apache.commons.configuration.ConfigurationException; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CopyUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CopyUtil.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CopyUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CopyUtil.java index c67e7cc..69f3153 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/CopyUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/CopyUtil.java @@ -1,4 +1,4 @@ -package org.nl.modules.system.util; +package org.nl.common.utils; import org.springframework.beans.BeanUtils; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/DateUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/DateUtil.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/DateUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/DateUtil.java index f06d333..a80fd28 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/DateUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/DateUtil.java @@ -14,7 +14,7 @@ * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import java.time.*; import java.time.format.DateTimeFormatter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ElAdminConstant.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ElAdminConstant.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ElAdminConstant.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ElAdminConstant.java index de4970e..1a660fa 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ElAdminConstant.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ElAdminConstant.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; /** * 常用静态常量 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/EncryptUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/EncryptUtils.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/EncryptUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/EncryptUtils.java index b4df59c..6603817 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/EncryptUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/EncryptUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import javax.crypto.Cipher; import javax.crypto.SecretKey; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/FileUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/FileUtil.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/FileUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/FileUtil.java index f2cc72f..a3d9b0a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/FileUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/FileUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.hutool.core.io.IoUtil; import cn.hutool.core.util.IdUtil; @@ -21,7 +21,7 @@ import cn.hutool.poi.excel.BigExcelWriter; import cn.hutool.poi.excel.ExcelUtil; import org.apache.poi.util.IOUtils; import org.apache.poi.xssf.streaming.SXSSFSheet; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.common.exception.BadRequestException; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.multipart.MultipartFile; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/GenUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/GenUtil.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/GenUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/GenUtil.java index 3a53276..21796f2 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/GenUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/GenUtil.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.hutool.core.util.StrUtil; import cn.hutool.extra.template.*; @@ -17,7 +17,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import static org.nl.modules.common.utils.FileUtil.SYS_TEM_DIR; +import static org.nl.common.utils.FileUtil.SYS_TEM_DIR; /** * @author: lyd diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/PageUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/PageUtil.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/PageUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/PageUtil.java index 4b5973b..2949467 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/PageUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/PageUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import org.springframework.data.domain.Page; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RedisUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RedisUtils.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RedisUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RedisUtils.java index 5ead947..ec2d2bb 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RedisUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RedisUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import com.google.common.collect.Lists; import com.google.common.collect.Sets; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RequestHolder.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RequestHolder.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RequestHolder.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RequestHolder.java index 1196258..27352b9 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RequestHolder.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RequestHolder.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import org.springframework.web.context.request.RequestContextHolder; import org.springframework.web.context.request.ServletRequestAttributes; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RsaUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RsaUtils.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RsaUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RsaUtils.java index b1d5f1e..96a88f8 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/RsaUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/RsaUtils.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.utils; +package org.nl.common.utils; import org.apache.commons.codec.binary.Base64; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/SecurityUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/SecurityUtils.java similarity index 93% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/SecurityUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/SecurityUtils.java index d031dd1..b434369 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/SecurityUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/SecurityUtils.java @@ -1,12 +1,11 @@ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.dev33.satoken.stp.StpUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.json.JSONArray; import cn.hutool.json.JSONObject; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.system.service.dto.UserDto; +import org.nl.common.utils.dto.CurrentUser; import java.util.List; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/StringUtils.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/StringUtils.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/StringUtils.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/StringUtils.java index 269c7f5..f3f5e42 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/StringUtils.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/StringUtils.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.hutool.http.HttpUtil; import cn.hutool.json.JSONObject; @@ -23,8 +23,8 @@ import net.dreamlu.mica.ip2region.core.Ip2regionSearcher; import net.dreamlu.mica.ip2region.core.IpInfo; import nl.basjes.parse.useragent.UserAgent; import nl.basjes.parse.useragent.UserAgentAnalyzer; -import org.nl.modules.common.config.ElAdminProperties; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.config.ElAdminProperties; +import org.nl.config.SpringContextHolder; import javax.servlet.http.HttpServletRequest; import java.net.InetAddress; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ThrowableUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ThrowableUtil.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ThrowableUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ThrowableUtil.java index a206938..ff55d06 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ThrowableUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ThrowableUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import java.io.PrintWriter; import java.io.StringWriter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/TranslatorUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/TranslatorUtil.java similarity index 98% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/TranslatorUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/TranslatorUtil.java index e86f081..7947e5b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/TranslatorUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/TranslatorUtil.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.hutool.json.JSONArray; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ValidationUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ValidationUtil.java similarity index 92% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ValidationUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ValidationUtil.java index 4b0ae57..7b9d80a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/ValidationUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/ValidationUtil.java @@ -13,11 +13,11 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.utils; +package org.nl.common.utils; import cn.hutool.core.util.ObjectUtil; import org.hibernate.validator.internal.constraintvalidators.hv.EmailValidator; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.common.exception.BadRequestException; /** * 验证工具 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/YamlUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/YamlUtil.java similarity index 84% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/YamlUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/YamlUtil.java index 03d9896..b8e6c21 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/util/YamlUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/YamlUtil.java @@ -1,4 +1,4 @@ -package org.nl.modules.system.util; +package org.nl.common.utils; import java.util.Properties; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/dto/CurrentUser.java b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/dto/CurrentUser.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/dto/CurrentUser.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/dto/CurrentUser.java index decc97d..440752f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/utils/dto/CurrentUser.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/common/utils/dto/CurrentUser.java @@ -1,4 +1,4 @@ -package org.nl.modules.common.utils.dto; +package org.nl.common.utils.dto; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/AuditorConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/AuditorConfig.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/AuditorConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/AuditorConfig.java index e9d4558..7ce0e4a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/AuditorConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/AuditorConfig.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import org.springframework.data.domain.AuditorAware; import org.springframework.stereotype.Component; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/CallBack.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/CallBack.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/CallBack.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/CallBack.java index 1886472..c50349f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/CallBack.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/CallBack.java @@ -1,4 +1,4 @@ -/* +package org.nl.config;/* * Copyright 2019-2020 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -14,8 +14,6 @@ * limitations under the License. */ -package org.nl.modules.wql.util; - /** * @author: liaojinlong * @date: 2020/6/9 17:02 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElAdminProperties.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/ElAdminProperties.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElAdminProperties.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/ElAdminProperties.java index 546b074..b407c24 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElAdminProperties.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/ElAdminProperties.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import lombok.Data; import org.springframework.beans.factory.annotation.Value; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElPermissionConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/ElPermissionConfig.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElPermissionConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/ElPermissionConfig.java index 328630f..4abc37f 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/ElPermissionConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/ElPermissionConfig.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import org.springframework.stereotype.Service; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/FileProperties.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/FileProperties.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/FileProperties.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/FileProperties.java index 1d8cfdb..0d85a82 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/FileProperties.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/FileProperties.java @@ -13,10 +13,10 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import lombok.Data; -import org.nl.modules.common.utils.ElAdminConstant; +import org.nl.common.utils.ElAdminConstant; import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Configuration; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/IdUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/IdUtil.java similarity index 88% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/IdUtil.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/IdUtil.java index 0e8f842..5980d3a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/IdUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/IdUtil.java @@ -1,4 +1,4 @@ -package org.nl.modules.tools; +package org.nl.config; public class IdUtil { public static Long getLongId() { diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/MapOf.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/MapOf.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/MapOf.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/MapOf.java index 8966afe..7ecd4bf 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/MapOf.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/MapOf.java @@ -1,4 +1,4 @@ -package org.nl.modules.tools; +package org.nl.config; import org.checkerframework.checker.units.qual.K; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/config/MultipartConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/MultipartConfig.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/config/MultipartConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/MultipartConfig.java index dbfe213..1afed12 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/tools/config/MultipartConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/MultipartConfig.java @@ -1,4 +1,4 @@ -package org.nl.modules.tools.config; +package org.nl.config; import org.springframework.boot.web.servlet.MultipartConfigFactory; import org.springframework.context.annotation.Bean; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RedisConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/RedisConfig.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RedisConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/RedisConfig.java index cf09c55..e0785bb 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RedisConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/RedisConfig.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import cn.hutool.core.lang.Assert; import cn.hutool.core.util.StrUtil; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RsaProperties.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/RsaProperties.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RsaProperties.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/RsaProperties.java index bdffaf8..399a47a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/RsaProperties.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/RsaProperties.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import lombok.Data; import org.springframework.beans.factory.annotation.Value; @@ -35,4 +35,4 @@ public class RsaProperties { public void setPrivateKey(String privateKey) { RsaProperties.privateKey = privateKey; } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/SpringContextHolder.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/SpringContextHolder.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java index e451aa0..3a2ae32 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/SpringContextHolder.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/SpringContextHolder.java @@ -1,4 +1,4 @@ -/* +package org.nl.config;/* * Copyright 2019-2020 Zheng Jie * * Licensed under the Apache License, Version 2.0 (the "License"); @@ -13,7 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.wql.util; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeansException; @@ -21,7 +20,6 @@ import org.springframework.beans.factory.DisposableBean; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.core.env.Environment; - import java.util.ArrayList; import java.util.List; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/SwaggerConfig.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/SwaggerConfig.java similarity index 99% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/SwaggerConfig.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/config/SwaggerConfig.java index cfd1a92..fa7ae74 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/common/config/SwaggerConfig.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/SwaggerConfig.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.common.config; +package org.nl.config; import com.fasterxml.classmate.TypeResolver; import io.swagger.annotations.ApiModel; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/ThreadPoolExecutorUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/ThreadPoolExecutorUtil.java index 3f5880c..00c1bfe 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/ThreadPoolExecutorUtil.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/ThreadPoolExecutorUtil.java @@ -16,7 +16,7 @@ package org.nl.config.thread; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.config.SpringContextHolder; import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.ThreadPoolExecutor; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/StageImageService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/StageImageService.java deleted file mode 100644 index f282923..0000000 --- a/nladmin-system/nlsso-server/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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/StageService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/StageService.java deleted file mode 100644 index 857c476..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/StageService.java +++ /dev/null @@ -1,74 +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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java deleted file mode 100644 index 09ab23b..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageImageServiceImpl.java +++ /dev/null @@ -1,110 +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.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java deleted file mode 100644 index d37abd9..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/impl/StageServiceImpl.java +++ /dev/null @@ -1,132 +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.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/wql/device.xls b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/wql/device.xls deleted file mode 100644 index f15ea83..0000000 Binary files a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/wql/device.xls and /dev/null differ diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dept.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dept.java deleted file mode 100644 index 911aac3..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dept.java +++ /dev/null @@ -1,60 +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.domain; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import org.nl.modules.common.base.BaseDTO; - -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; -import java.io.Serializable; - -/** -* @author Zheng Jie -* @date 2019-03-25 -*/ -@Data -public class Dept extends BaseDTO implements Serializable { - - - private String dept_id; - - private String code; - - private String ext_id; - - @ApiModelProperty(value = "排序") - private Integer dept_sort; - - - @NotBlank - @ApiModelProperty(value = "部门名称") - private String name; - - - - @NotNull - @ApiModelProperty(value = "是否启用") - private String is_used; - - @ApiModelProperty(value = "上级部门") - private String pid; - - @ApiModelProperty(value = "子节点数目", hidden = true) - private Integer sub_count = 0; - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java deleted file mode 100644 index 98e920c..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Dict.java +++ /dev/null @@ -1,65 +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.domain; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.io.Serializable; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@Data -public class Dict implements Serializable { - - @ApiModelProperty(value = "ID", hidden = true) - private String id; - // 字典标识 - @JsonSerialize(using= ToStringSerializer.class) - private Long dict_id; - - // 编码 - private String code; - - // 名称 - private String name; - - // 字典标签 - private String label; - - // 字典值 - private String value; - - // 排序号 - private String dict_sort; - - // 字典类型 - private String dict_type; - - /** - * 参数123 - */ - private String para1; - - private String para2; - - private String para3; - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java deleted file mode 100644 index 0422296..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/DictDetail.java +++ /dev/null @@ -1,58 +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.domain; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -import java.io.Serializable; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@Getter -@Setter -public class DictDetail implements Serializable { - - - @ApiModelProperty(value = "ID", hidden = true) - private String id; - - private Dict dict; - - @ApiModelProperty(value = "字典标签") - private String label; - - @ApiModelProperty(value = "字典名称") - private String name; - - @ApiModelProperty(value = "字典值") - private String value; - - @ApiModelProperty(value = "参数1") - private String para1; - @ApiModelProperty(value = "参数2") - private String para2; - @ApiModelProperty(value = "参数3") - private String para3; - - @ApiModelProperty(value = "排序") - private Integer dictSort = 999; - - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Menu.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Menu.java deleted file mode 100644 index 1b5d34c..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Menu.java +++ /dev/null @@ -1,100 +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.domain; - -import com.fasterxml.jackson.annotation.JsonIgnore; -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; - -import java.io.Serializable; -import java.util.Objects; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-12-17 - */ -@Getter -@Setter -public class Menu implements Serializable { - - - @ApiModelProperty(value = "ID", hidden = true) - private String id; - - @JsonIgnore - @ApiModelProperty(value = "菜单角色") - private Set roles; - - @ApiModelProperty(value = "菜单标题") - private String title; - - @ApiModelProperty(value = "菜单组件名称") - private String componentName; - - @ApiModelProperty(value = "排序") - private Integer menuSort = 999; - - @ApiModelProperty(value = "组件路径") - private String component; - - @ApiModelProperty(value = "路由地址") - private String path; - - @ApiModelProperty(value = "菜单类型,目录、菜单、按钮") - private Integer type; - - @ApiModelProperty(value = "权限标识") - private String permission; - - @ApiModelProperty(value = "菜单图标") - private String icon; - - @ApiModelProperty(value = "缓存") - private Boolean cache; - - - - @ApiModelProperty(value = "是否隐藏") - private Boolean hidden; - - @ApiModelProperty(value = "上级菜单") - private Long pid; - - @ApiModelProperty(value = "子节点数目", hidden = true) - private Integer subCount = 0; - - @ApiModelProperty(value = "外链菜单") - private Boolean iFrame; - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Menu menu = (Menu) o; - return Objects.equals(id, menu.id); - } - - @Override - public int hashCode() { - return Objects.hash(id); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Role.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Role.java deleted file mode 100644 index eea8ba8..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/domain/Role.java +++ /dev/null @@ -1,73 +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.domain; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; -import org.nl.system.service.user.dao.SysUser; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; -import java.util.Objects; -import java.util.Set; - -/** - * 角色 - * @author Zheng Jie - * @date 2018-11-22 - */ -@Getter -@Setter -public class Role implements Serializable { - - - @ApiModelProperty(value = "ID", hidden = true) - private String id; - - private Set users; - - @ApiModelProperty(value = "菜单", hidden = true) - private Set menus; - - - @NotBlank - @ApiModelProperty(value = "名称", hidden = true) - private String name; - - @ApiModelProperty(value = "级别,数值越小,级别越大") - private Integer level = 3; - - @ApiModelProperty(value = "描述") - private String remark; - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - Role role = (Role) o; - return Objects.equals(id, role.id); - } - - @Override - public int hashCode() { - return Objects.hash(id); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController2.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController2.java deleted file mode 100644 index 7badfae..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictController2.java +++ /dev/null @@ -1,95 +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 io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.DictService2; -import org.nl.modules.system.service.dto.DictDto; -import org.nl.modules.system.service.dto.DictQueryCriteria; -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 javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Set; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统:字典管理") -//@RequestMapping("/api/dict") -public class DictController2 { - - private final DictService2 dictService2; - - @ApiOperation("导出字典数据") - @GetMapping(value = "/download") -// @SaCheckPermission("dict:list") - public void download(HttpServletResponse response, DictQueryCriteria criteria) throws IOException { - dictService2.download(dictService2.queryAll(criteria), response); - } - - @ApiOperation("查询字典") - @GetMapping(value = "/all") -// @SaCheckPermission("dict:list") - public ResponseEntity queryAll(){ - return new ResponseEntity<>(dictService2.queryAll(new DictQueryCriteria()),HttpStatus.OK); - } - - @ApiOperation("查询字典") - @GetMapping -// @SaCheckPermission("dict:list") - public ResponseEntity query(DictQueryCriteria resources, Pageable pageable){ - return new ResponseEntity<>(dictService2.queryAll(resources,pageable),HttpStatus.OK); - } - - @Log("新增字典") - @ApiOperation("新增字典") - @PostMapping -// @SaCheckPermission("dict:add") - public ResponseEntity create(@RequestBody DictDto resources){ - dictService2.create(resources); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改字典") - @ApiOperation("修改字典") - //@SaCheckPermission("@el.check('dict:edit')") - public ResponseEntity update(@Validated @RequestBody DictDto dto){ - dictService2.update(dto); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除字典") - @ApiOperation("删除字典") - @DeleteMapping -// @SaCheckPermission("dict:del") - public ResponseEntity delete(@RequestBody Set ids){ - dictService2.delete(ids); - return new ResponseEntity<>(HttpStatus.OK); - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java deleted file mode 100644 index 624d97e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/DictDetailController.java +++ /dev/null @@ -1,91 +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 io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.DictDetailService; -import org.nl.modules.system.service.dto.DictDetailQueryCriteria; -import org.nl.modules.system.service.dto.DictDto; -import org.springframework.data.domain.Pageable; -import org.springframework.data.domain.Sort; -import org.springframework.data.web.PageableDefault; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -/** - * @author Zheng Jie - * @date 2019-04-10 - */ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统:字典详情管理") -@RequestMapping("/api/dictDetail2") -public class DictDetailController { - private final DictDetailService dictDetailService; - - @ApiOperation("查询字典详情") - @GetMapping - public ResponseEntity query(DictDetailQueryCriteria criteria, - @PageableDefault(sort = {"dictSort"}, direction = Sort.Direction.ASC) Pageable pageable){ - return new ResponseEntity<>(dictDetailService.queryAll(criteria,pageable),HttpStatus.OK); - } - - @ApiOperation("查询多个字典详情") - @GetMapping(value = "/map") - public ResponseEntity getDictDetailMaps(@RequestParam String dictName){ - String[] names = dictName.split("[,,]"); - Map> dictMap = new HashMap<>(16); - for (String name : names) { - dictMap.put(name, dictDetailService.getDictByName(name)); - } - return new ResponseEntity<>(dictMap, HttpStatus.OK); - } - - @Log("新增字典详情") - @ApiOperation("新增字典详情") - @PostMapping -// @SaCheckPermission("dict:add") - public ResponseEntity create( @RequestBody DictDto resources){ - dictDetailService.create(resources); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @Log("修改字典详情") - @ApiOperation("修改字典详情") - @PutMapping -// @SaCheckPermission("dict:edit") - public ResponseEntity update(@RequestBody DictDto resources){ - dictDetailService.update(resources); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除字典详情") - @ApiOperation("删除字典详情") - @DeleteMapping(value = "/{id}") -// @SaCheckPermission("dict:del") - public ResponseEntity delete(@PathVariable String id){ - dictDetailService.delete(id); - return new ResponseEntity<>(HttpStatus.OK); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridController.java deleted file mode 100644 index 121bcc8..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridController.java +++ /dev/null @@ -1,68 +0,0 @@ -package org.nl.modules.system.rest; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.GridService; -import org.nl.modules.system.service.dto.GridDto; -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-08-01 - */ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统表格管理") -@RequestMapping("/api/grid") -@Slf4j -public class GridController { - private final GridService gridService; - - @GetMapping - @Log("查询系统表格") - @ApiOperation("查询系统表格") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page){ - return new ResponseEntity<>(gridService.queryAll(whereJson,page),HttpStatus.OK); - } - - @PostMapping - @Log("新增系统表格") - @ApiOperation("新增系统表格") - public ResponseEntity create(@Validated @RequestBody GridDto dto){ - gridService.create(dto); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改系统表格") - @ApiOperation("修改系统表格") - public ResponseEntity update(@Validated @RequestBody GridDto dto){ - gridService.update(dto); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除系统表格") - @ApiOperation("删除系统表格") - @DeleteMapping - public ResponseEntity delete(@RequestBody String[] ids) { - gridService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } - - @GetMapping("/selectList") - @Log("下拉框获取表格数据") - @ApiOperation("下拉框获取表格数据") - public ResponseEntity getGridList(){ - return new ResponseEntity<>(gridService.getGridList(),HttpStatus.OK); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridFieldController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridFieldController.java deleted file mode 100644 index bc6bb25..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/GridFieldController.java +++ /dev/null @@ -1,87 +0,0 @@ -package org.nl.modules.system.rest; - -import com.alibaba.fastjson.JSONObject; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.GridFieldService; -import org.nl.modules.system.service.dto.GridFieldDto; -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-08-01 - */ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统表格字段管理") -@RequestMapping("/api/gridField") -@Slf4j -public class GridFieldController { - private final GridFieldService gridFieldService; - - @GetMapping - @Log("查询系统表格") - @ApiOperation("查询系统表格") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page){ - return new ResponseEntity<>(gridFieldService.queryAll(whereJson,page),HttpStatus.OK); - } - - @PostMapping - @Log("单个新增表格字段") - @ApiOperation("单个新增表格字段") - public ResponseEntity create(@Validated @RequestBody GridFieldDto dto){ - gridFieldService.create(dto); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改表格字段") - @ApiOperation("修改表格字段") - public ResponseEntity update(@Validated @RequestBody GridFieldDto dto){ - gridFieldService.update(dto); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除表格字段") - @ApiOperation("删除表格字段") - @DeleteMapping - public ResponseEntity delete(@RequestBody String[] ids) { - gridFieldService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } - - @PostMapping("/batchAdd") - @Log("批量新增表格字段") - @ApiOperation("批量新增表格字段") - public ResponseEntity batchAdd(@RequestBody JSONObject json){ -// log.info("json{}",json); - gridFieldService.batchAdd(json); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PostMapping("/getGridFields") - @Log("根据gridId获取所有字段") - @ApiOperation("根据gridId获取所有字段") - public ResponseEntity getGridFieldsById(@RequestBody String id){ - log.info("dto:{}",id); - return new ResponseEntity<>(gridFieldService.getGridFieldsById(id),HttpStatus.CREATED); - } - - @PostMapping("/getGridFieldsByCode") - @Log("根据gridCode获取所有字段") - @ApiOperation("根据gridCode获取所有字段") - public ResponseEntity getGridFieldsByCode(@RequestBody String grid_code){ - log.info("dto:{}",grid_code); - return new ResponseEntity<>(gridFieldService.getGridFieldsByCode(grid_code),HttpStatus.CREATED); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/LimitController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/LimitController.java deleted file mode 100644 index da7daff..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/LimitController.java +++ /dev/null @@ -1,47 +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 io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -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") -@Api(tags = "系统:限流测试管理") -public class LimitController { - - private static final AtomicInteger ATOMIC_INTEGER = new AtomicInteger(); - - /** - * 测试限流注解,下面配置说明该接口 60秒内最多只能访问 10次,保存到redis的键名为 limit_test, - */ - @GetMapping - @ApiOperation("测试") - @Limit(key = "test", period = 60, count = 10, name = "testLimit", prefix = "limit") - public int test() { - return ATOMIC_INTEGER.incrementAndGet(); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MenuController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MenuController.java deleted file mode 100644 index 160b72d..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MenuController.java +++ /dev/null @@ -1,142 +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 cn.dev33.satoken.annotation.SaCheckPermission; -import cn.dev33.satoken.annotation.SaMode; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.MenuService; -import org.nl.system.service.menu.dto.MenuDto; -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.*; - -/** - * @author ludj - * @date 2022-12-30 - */ - -@RestController -@RequiredArgsConstructor -@Api(tags = "系统:菜单管理") -@RequestMapping("/api/menus2") -public class MenuController { - - private final MenuService menuService; - - @GetMapping(value = "/build") - @ApiOperation("根据用户获取菜单") - public ResponseEntity buildMenus() { - List menuDtoList = menuService.findByUser(String.valueOf(SecurityUtils.getCurrentUserId())); - List menuDtos = menuService.buildTree(menuDtoList); - return new ResponseEntity<>(menuService.buildMenus(menuDtos),HttpStatus.OK); - } - - @ApiOperation("返回全部的菜单") - @GetMapping(value = "/lazy") - @SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND) - public ResponseEntity query(@RequestParam String pid) { - return new ResponseEntity<>(menuService.getMenus(pid), HttpStatus.OK); - } - @ApiOperation("获取菜单列表") - @PostMapping(value = "/getMenusByRole") - @SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND) - public ResponseEntity getMenusByRole(@RequestBody JSONObject json) { - String role_id = json.getString("role_id"); - String system_type = json.getString("system_type"); - String category = json.getString("category"); - return new ResponseEntity<>(menuService.getMenusByRole(role_id, system_type, category), HttpStatus.OK); - } - - @ApiOperation("根据菜单ID返回所有子节点ID,包含自身ID") - @GetMapping(value = "/child") - @SaCheckPermission(value = {"menu:list", "roles:list"}, mode = SaMode.AND) - public ResponseEntity child(@RequestParam String id) { - Set menuSet = new HashSet<>(); - List menuList = menuService.getMenus(id); - menuSet.add(menuService.findById(id)); - menuSet = menuService.getChildMenus(menuList, menuSet); -// Set ids = menuSet.stream().map(MenuDto::getMenuId).collect(Collectors.toSet()); - return new ResponseEntity<>(null, HttpStatus.OK); - } - - @GetMapping - @ApiOperation("查询菜单") - @SaCheckPermission("menu:list") - public ResponseEntity pageQuery(@RequestParam Map whereJson, Pageable page) throws Exception { - JSONObject param = JSONObject.parseObject(JSON.toJSONString(whereJson)); - JSONObject menuDtoList = menuService.queryAll(param, page); - return new ResponseEntity<>(menuDtoList, HttpStatus.OK); - } - - @ApiOperation("查询菜单:根据ID获取同级与上级数据") - @PostMapping("/superior") - @SaCheckPermission("menu:list") - public ResponseEntity getSuperior(@RequestBody JSONObject param) { - Set menuDtos = new LinkedHashSet<>(); - String id=param.getString("ids"); - if (StrUtil.isNotEmpty(id)) { - MenuDto menuDto = menuService.findById(id); - menuDtos.addAll(menuService.getSuperior(menuDto, new ArrayList<>())); - return new ResponseEntity<>(menuService.buildTree(new ArrayList<>(menuDtos)), HttpStatus.OK); - } - return new ResponseEntity<>(menuService.getMenus(null), HttpStatus.OK); - } - - @Log("新增菜单") - @ApiOperation("新增菜单") - @PostMapping - @SaCheckPermission("menu:add") - public ResponseEntity create(@Validated @RequestBody JSONObject form) { - menuService.create(form); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @Log("修改菜单") - @ApiOperation("修改菜单") - @PutMapping - @SaCheckPermission("menu:edit") - public ResponseEntity update( @RequestBody JSONObject form) { - menuService.update(form); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除菜单") - @ApiOperation("删除菜单") - @DeleteMapping - @SaCheckPermission("menu:del") - public ResponseEntity delete(@RequestBody Set ids) { - Set menuSet = new HashSet<>(); - for (String id : ids) { - List menuList = menuService.getMenus(id); - menuSet.add(menuService.findById(id)); - menuSet = menuService.getChildMenus(menuList, menuSet); - } - menuService.delete(menuSet); - return new ResponseEntity<>(HttpStatus.OK); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/ParamController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/ParamController.java deleted file mode 100644 index 318f291..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/ParamController.java +++ /dev/null @@ -1,82 +0,0 @@ -package org.nl.modules.system.rest; - - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.ParamService; -import org.nl.modules.system.service.dto.ParamDto; -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 javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Map; - -/** - * @author ldjun - * @date 2021-01-14 - **/ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统参数管理") -@RequestMapping("/ssss") -@Slf4j -public class ParamController { - - private final ParamService paramService; - - @GetMapping - @Log("查询系统参数") - @ApiOperation("查询系统参数") - //@SaCheckPermission("param:list") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page){ - return new ResponseEntity<>(paramService.queryAll(whereJson,page),HttpStatus.OK); - } - @PostMapping - @Log("新增系统参数") - @ApiOperation("新增系统参数") - //@SaCheckPermission("param:add") - public ResponseEntity create(@Validated @RequestBody ParamDto dto){ - paramService.create(dto); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改系统参数") - @ApiOperation("修改系统参数") - //@SaCheckPermission("param:edit") - public ResponseEntity update(@Validated @RequestBody ParamDto dto){ - paramService.update(dto); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除系统参数") - @ApiOperation("删除系统参数") - //@SaCheckPermission("param:del") - @DeleteMapping - public ResponseEntity delete(@RequestBody String[] ids) { - paramService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } - - @Log("导出系统参数") - @ApiOperation("导出系统参数") - @GetMapping(value = "/download") - //@SaCheckPermission("param:list") - public void download(HttpServletResponse response, Map whereJson) throws IOException { - paramService.download(paramService.queryAll(whereJson), response); - } - - @PostMapping("/getValueByCode") - @Log("根据编码获取值") - @ApiOperation("根据编码获取值") - public ResponseEntity getValueByCode(@RequestBody String code) { - return new ResponseEntity<>(paramService.findByCode(code), HttpStatus.CREATED); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/RoleController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/RoleController.java deleted file mode 100644 index 997558f..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/RoleController.java +++ /dev/null @@ -1,87 +0,0 @@ -package org.nl.modules.system.rest; - -import cn.dev33.satoken.annotation.SaCheckPermission; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.modules.logging.annotation.Log; -import org.nl.modules.system.service.RoleService; -import org.nl.modules.wql.core.bean.WQLObject; -import org.springframework.data.domain.Pageable; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.web.bind.annotation.*; - -import java.util.Map; -import java.util.Set; - -/** - * @author ludj - * @date 2022-12-05 - */ -@RestController -@RequiredArgsConstructor -@Api(tags = "系统:角色管理") -@RequestMapping("/api/roles") -public class RoleController { - - private final RoleService roleService; - - - @ApiOperation("查询角色") - @GetMapping - @SaCheckPermission("roles:list") - public ResponseEntity query(Map criteria, Pageable pageable) { - return new ResponseEntity<>(roleService.queryAll(criteria, pageable), HttpStatus.OK); - } - - - @Log("新增角色") - @ApiOperation("新增角色") - @PostMapping -// @SaCheckPermission("roles:add") - public ResponseEntity create(@RequestBody JSONObject param) { - roleService.create(param); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @Log("修改角色") - @ApiOperation("修改角色") - @PutMapping -// @SaCheckPermission("roles:edit") - public ResponseEntity update(@RequestBody JSONObject param) { - roleService.update(param); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("修改角色菜单") - @ApiOperation("修改角色菜单") - @PutMapping(value = "/menu") -// @SaCheckPermission("roles:edit") - public ResponseEntity updateMenu(@RequestBody JSONObject form) { - String role_id = form.getString("role_id"); - JSONArray menus = form.getJSONArray("menus"); - WQLObject rmTab = WQLObject.getWQLObject("sys_roles_menus"); - rmTab.delete("role_id = " + role_id + ""); - - for (int i = 0; i < menus.size(); i++) { - JSONObject json = menus.getJSONObject(i); - JSONObject param = new JSONObject(); - param.put("role_id", role_id); - param.put("menu_id", json.getString("menu_id")); - rmTab.insert(param); - } - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除角色") - @ApiOperation("删除角色") - @DeleteMapping - @SaCheckPermission("roles:del") - public ResponseEntity delete(@RequestBody Set ids) { - roleService.delete(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DataService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DataService.java deleted file mode 100644 index 45fa6ab..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DataService.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.system.service; - -import org.nl.modules.system.service.dto.UserDto; -import org.nl.system.service.user.dao.SysUser; - -import java.util.List; - -/** - * 数据权限服务类 - * @author Zheng Jie - * @date 2020-05-07 - */ -public interface DataService { - - /** - * 获取数据权限 - * @param user / - * @return / - */ - List getDeptIds(SysUser user); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DeptService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DeptService.java deleted file mode 100644 index 0fc161a..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DeptService.java +++ /dev/null @@ -1,159 +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.modules.system.domain.Dept; -import org.nl.modules.system.service.dto.DeptQueryCriteria; -import org.nl.modules.system.service.dto.DeptTree; - -import java.util.List; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2019-03-25 - */ -public interface DeptService { - - /** - * 查询所有数据 - * - * @param criteria 条件 - * @param isQuery / - * @return / - * @throws Exception / - */ - List queryAll(DeptQueryCriteria criteria, Boolean isQuery) throws Exception; - - /** - * 获取 - * - * @param deptList - * @return - */ - List getDeptChildren(List deptList); - - /** - * 根据ID查询 - * - * @param id / - * @return / - */ - Dept findById(String id); - - List findByPid(String pid); - - /** - * 创建 - * - * @param resources / - */ - void create(Dept resources); - - /** - * 编辑 - * - * @param resources / - */ - void update(Dept resources); - - /** - * 查询pid所有子集 - * - */ - Set findPidChild(String pid); - - /** - * 删除 - * - * @param deptDtos / - */ - void delete(Set deptDtos); - - /** - * 根据PID查询 - * - * @return / - */ - T findById(String id, Class tagert); - - - - /** - * 获取待删除的部门 - * - * @param deptList / - * @return / - */ - Set getDeleteDepts(List deptList, Set depts); - - /** - * 根据ID获取同级与上级数据 - * - * @param deptDto / - * @param depts / - * @return / - */ - List getSuperior(DeptTree deptDto, List depts); - - /** - * 构建树形数据 - * - * @param deptDtos / - * @return / - */ - Object buildTree(List deptDtos); - - - /** - * 验证是否被角色或用户关联 - * - * @param deptDtos / - */ - void verification(Set deptDtos); - - /** - * 获取当前节点的所有子类节点集合数据 - * - * @param dept_id - * @return - */ - Set getChildIdSet(String dept_id); - - /** - * 获取查询条件的所有子节点集合 - * - * @param dept_idStr - * @return - */ - Set getAllChildIdSet(String dept_idStr); - - /** - * 获取当前节点的所有子类节点集合串,用于拼接SQL(in) - * - * @param dept_id - * @return - */ - String getChildIdStr(String dept_id); - - /** - * 获取所有节点的子节点的ID串 - * - * @param dept_idStr - * @return - */ - String getAllChildIdStr(String dept_idStr); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictDetailService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictDetailService.java deleted file mode 100644 index 0cdc8bc..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictDetailService.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.system.service; - -import org.nl.modules.system.service.dto.DictDetailQueryCriteria; -import org.nl.modules.system.service.dto.DictDto; -import org.springframework.data.domain.Pageable; - -import java.util.List; -import java.util.Map; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -public interface DictDetailService { - - /** - * 创建 - * @param resources / - */ - void create(DictDto resources); - - /** - * 编辑 - * @param resources / - */ - void update(DictDto resources); - - /** - * 删除 - * @param id / - */ - void delete(String id); - - /** - * 分页查询 - * @param criteria 条件 - * @param pageable 分页参数 - * @return / - */ - Map queryAll(DictDetailQueryCriteria criteria, Pageable pageable); - - /** - * 根据字典名称获取字典详情 - * @param name 字典名称 - * @return / - */ - List getDictByName(String name); - - /** - * 根据ID查询 - * @param dict_id ID - * @return Point - */ - DictDto findById(String dict_id); - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService2.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService2.java deleted file mode 100644 index b796dc5..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/DictService2.java +++ /dev/null @@ -1,83 +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.modules.system.service.dto.DictDto; -import org.nl.modules.system.service.dto.DictQueryCriteria; -import org.springframework.data.domain.Pageable; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -public interface DictService2 { - - /** - * 分页查询 - * @param criteria 条件 - * @param pageable 分页参数 - * @return / - */ - Map queryAll(DictQueryCriteria criteria, Pageable pageable); - - /** - * 查询全部数据 - * @param dict / - * @return / - */ - List queryAll(DictQueryCriteria dict); - - /** - * 根据ID查询 - * @param dict_id ID - * @return Point - */ - DictDto findById(String dict_id); - - - /** - * 创建 - * @param resources / - * @return / - */ - void create(DictDto resources); - - /** - * 编辑 - * @param dto / - */ - void update(DictDto dto); - - /** - * 删除 - * @param ids / - */ - void delete(Set ids); - - /** - * 导出数据 - * @param queryAll 待导出的数据 - * @param response / - * @throws IOException / - */ - void download(List queryAll, HttpServletResponse response) throws IOException; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridFieldService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridFieldService.java deleted file mode 100644 index 8977317..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridFieldService.java +++ /dev/null @@ -1,68 +0,0 @@ -package org.nl.modules.system.service; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.nl.modules.system.service.dto.GridFieldDto; -import org.springframework.data.domain.Pageable; - -import java.util.Map; - -/** - * @Author: lyd - * @Description: 表格字段服务 - * @Date: 2022-08-01 - */ -public interface GridFieldService { - /** - * 查询数据分页 - * @param whereJson 条件 - * @param page 分页参数 - * @return Map - */ - Map queryAll(Map whereJson, Pageable page); - - /** - * 创建 - * @param dto - */ - void create(GridFieldDto dto); - - /** - * 根据ID查询 - * @param id ID - * @return Param - */ - GridFieldDto findById(String id); - - /** - * 编辑 - * @param dto - */ - void update(GridFieldDto dto); - - /** - * 批量删除 - * @param ids - */ - void deleteAll(String[] ids); - - /** - * 批量添加数据 - * @param json - */ - void batchAdd(JSONObject json); - - /** - * 根据grid_id获取所有字段信息 - * @param id - * @return - */ - JSONArray getGridFieldsById(String id); - - /** - * 根据grid_code获取所有字段信息 - * @param grid_code - * @return - */ - JSONArray getGridFieldsByCode(String grid_code); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridService.java deleted file mode 100644 index 312457b..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/GridService.java +++ /dev/null @@ -1,53 +0,0 @@ -package org.nl.modules.system.service; - -import com.alibaba.fastjson.JSONArray; -import org.nl.modules.system.service.dto.GridDto; -import org.springframework.data.domain.Pageable; - -import java.util.Map; - -/** - * @Author: lyd - * @Description: 表格服务接口 - * @Date: 2022-08-01 - */ -public interface GridService { - /** - * 查询数据分页 - * @param whereJson 条件 - * @param page 分页参数 - * @return Map - */ - Map queryAll(Map whereJson, Pageable page); - - /** - * 创建 - * @param dto - */ - void create(GridDto dto); - - /** - * 根据ID查询 - * @param id ID - * @return Param - */ - GridDto findById(String id); - - /** - * 编辑 - * @param dto - */ - void update(GridDto dto); - - /** - * 批量删除 - * @param ids - */ - void deleteAll(String[] ids); - - /** - * 下拉选择表格 - * @return - */ - JSONArray getGridList(); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MenuService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MenuService.java deleted file mode 100644 index 611abad..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MenuService.java +++ /dev/null @@ -1,138 +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 com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.nl.system.service.menu.dto.MenuDto; -import org.springframework.data.domain.Pageable; - -import java.util.List; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-12-17 - */ -public interface MenuService { - - /** - * 查询参数 - * - * @param param - * @return - * @throws Exception - */ - JSONObject queryAll(JSONObject param, Pageable page) throws Exception; - - - /** - * 1、根据子系统、菜单类别获取菜单列表,并判断对应的角色ID是否拥有该菜单 - * - * @param role_id 角色ID - * @param system_type 子系统 - * @param category 菜单类别 - * @return - */ - JSONArray getMenusByRole(String role_id, String system_type, String category); - - - /** - * 菜单json对象转实体对象 - * @param menuJson - */ - MenuDto menuJsonToMenuDto(JSONObject menuJson); - - /** - * 根据ID查询 - * - * @param id / - * @return / - */ - MenuDto findById(String id); - - /** - * 创建 - * - * @param form / - */ - void create(JSONObject form); - - /** - * 编辑 - * - * @param resources / - */ - void update(JSONObject form); - - /** - * 获取所有子节点,包含自身ID - * - * @param menuList / - * @param menuSet / - * @return / - */ - Set getChildMenus(List menuList, Set menuSet); - - /** - * 构建菜单树 - * - * @param menuDtos 原始数据 - * @return / - */ - List buildTree(List menuDtos); - - /** - * 构建菜单树 - * - * @param menuDtos / - * @return / - */ - Object buildMenus(List menuDtos); - - - /** - * 删除 - * - * @param menuSet / - */ - void delete(Set menuSet); - - /** - * 懒加载菜单数据 - * - * @param pid / - * @return / - */ - List getMenus(String pid); - - /** - * 根据ID获取同级与上级数据 - * - * @param menuDto / - * @param objects / - * @return / - */ - List getSuperior(MenuDto menuDto, List objects); - - /** - * 根据当前用户获取菜单 - * - * @param currentUserId / - * @return / - */ - List findByUser(String currentUserId); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/ParamService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/ParamService.java deleted file mode 100644 index 657e3d8..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/ParamService.java +++ /dev/null @@ -1,74 +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; - -/** - * @description 服务接口 - * @author ldjun - * @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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/RoleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/RoleService.java deleted file mode 100644 index 10b895a..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/RoleService.java +++ /dev/null @@ -1,65 +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 com.alibaba.fastjson.JSONObject; -import org.springframework.data.domain.Pageable; - -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-12-03 - */ -public interface RoleService { - - /** - * 查询数据分页 - * @param whereJson 条件 - * @param page 分页参数 - * @return Map - */ - JSONObject queryAll(Map whereJson, Pageable page); - - /** - * 创建 - * @param form / - */ - void create(JSONObject form); - - /** - * 编辑 - * @param form / - */ - void update(JSONObject form); - - /** - * 删除 - * @param ids / - */ - void delete(Set ids); - - - /** - * 通过id获取用户的权限 - * @param userDto - * @return - */ - List getPermissionList(JSONObject userDto); - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/UserRelateService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/UserRelateService.java deleted file mode 100644 index 4860790..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/UserRelateService.java +++ /dev/null @@ -1,38 +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.modules.system.service.dto.UserQueryCriteria; -import org.springframework.data.domain.Pageable; -import org.springframework.web.multipart.MultipartFile; - -import java.util.List; -import java.util.Map; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-11-23 - */ -public interface UserRelateService { - - void inserDeptRelate(Long user,Set deptIds); - void inserRoleRelate(Long user,Set RoleIds); - void deleteDeptRelate(Set deptIds); - void deleteRoleRelate(Set RoleIds); - void updateDeptRelate(Long user,Set deptIds); - void updateRoleRelate(Long user,Set RoleIds); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptDto.java deleted file mode 100644 index 38e5483..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptDto.java +++ /dev/null @@ -1,81 +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.dto; - -import com.fasterxml.jackson.annotation.JsonInclude; -import lombok.Getter; -import lombok.Setter; -import org.nl.modules.common.base.BaseDTO; - -import java.io.Serializable; -import java.util.List; -import java.util.Objects; - -/** -* @author Zheng Jie -* @date 2019-03-25 -*/ -@Getter -@Setter -public class DeptDto extends BaseDTO implements Serializable { - - private String id; - - private String name; - - private Boolean enabled; - - private Integer deptSort; - - @JsonInclude(JsonInclude.Include.NON_EMPTY) - private List children; - - private Long pid; - - private Integer subCount; - - private String versionId; - - public Boolean getHasChildren() { - return subCount > 0; - } - - public Boolean getLeaf() { - return subCount <= 0; - } - - public String getLabel() { - return name; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - DeptDto deptDto = (DeptDto) o; - return Objects.equals(id, deptDto.id) && - Objects.equals(name, deptDto.name); - } - - @Override - public int hashCode() { - return Objects.hash(id, name); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptQueryCriteria.java deleted file mode 100644 index 39fdcfc..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptQueryCriteria.java +++ /dev/null @@ -1,51 +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.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.DataPermission; -import org.nl.modules.common.annotation.Query; - -import java.util.Date; - -/** -* @author Zheng Jie -* @date 2019-03-25 -*/ -@Data -@DataPermission(fieldName = "id") -public class DeptQueryCriteria{ - - @Query(type = Query.Type.INNER_LIKE) - private String name; - - @Query - private String code; - - @Query - private String is_used; - - @Query - private Long pid; - - @Query(type = Query.Type.IS_NULL, propName = "pid") - private Boolean pidIsNull; - - @Query(type = Query.Type.BETWEEN) - private Date startTime; - - private Date endTime; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptSmallDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptSmallDto.java deleted file mode 100644 index 7989875..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptSmallDto.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.system.service.dto; - -import lombok.Data; - -import java.io.Serializable; - -/** -* @author Zheng Jie -* @date 2019-6-10 16:32:18 -*/ -@Data -public class DeptSmallDto implements Serializable { - - private String id; - - private String code; - - private String name; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailDto.java deleted file mode 100644 index c10dd75..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailDto.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.service.dto; - -import lombok.Getter; -import lombok.Setter; -import org.nl.modules.common.base.BaseDTO; - -import java.io.Serializable; - -/** - * @author Zheng Jie - * @date 2019-04-10 - */ -@Getter -@Setter -public class DictDetailDto extends BaseDTO implements Serializable { - - private String id; - - private DictSmallDto dict; - - private String label; - - private String value; - private String para1; - private String para2; - private String name; - - private String para3; - - private Integer dictSort; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailQueryCriteria.java deleted file mode 100644 index f261b74..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDetailQueryCriteria.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.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.Query; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@Data -public class DictDetailQueryCriteria { - - private String code; - - private String dictName; - private String dict_id; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java deleted file mode 100644 index eb0d8aa..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictDto.java +++ /dev/null @@ -1,69 +0,0 @@ -package org.nl.modules.system.service.dto; - -import com.fasterxml.jackson.databind.annotation.JsonSerialize; -import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; -import lombok.Data; - -import java.io.Serializable; -import java.math.BigDecimal; - -/** - * @description / - * @author lyd - * @date 2022-11-30 - **/ -@Data -public class DictDto implements Serializable { - - /** 字典标识 */ - /** 防止精度丢失 */ - @JsonSerialize(using= ToStringSerializer.class) - private String dict_id; - - private String dictCode; // 区分使用 - - /** 编码 */ - private String code; - - /** 名称 */ - private String name; - - /** 字典标签 */ - private String label; - - /** 字典值 */ - private String value; - - /** 排序号 */ - private BigDecimal dict_sort; - - /** 字典类型 */ - private String dict_type; - - /** 参数1 */ - private String para1; - - /** 参数2 */ - private String para2; - - /** 参数3 */ - private String para3; - - /** 创建人 */ - private Long create_id; - - /** 创建人 */ - private String create_name; - - /** 创建时间 */ - private String create_time; - - /** 修改人 */ - private Long update_id; - - /** 修改人 */ - private String update_optname; - - /** 修改时间 */ - private String update_time; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java deleted file mode 100644 index 30d15f2..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictQueryCriteria.java +++ /dev/null @@ -1,29 +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.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.Query; - -/** - * @author Zheng Jie - * 公共查询类 - */ -@Data -public class DictQueryCriteria { - - private String blurry; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictSmallDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictSmallDto.java deleted file mode 100644 index 73621f1..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DictSmallDto.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.dto; - -import lombok.Getter; -import lombok.Setter; - -import java.io.Serializable; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@Getter -@Setter -public class DictSmallDto implements Serializable { - - private String id; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridDto.java deleted file mode 100644 index d626c95..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridDto.java +++ /dev/null @@ -1,61 +0,0 @@ -package org.nl.modules.system.service.dto; - -import lombok.Data; - -/** - * @Author: lyd - * @Description: 系统表格dto - * @Date: 2022-08-01 - */ -@Data -public class GridDto { - /** - * 标识id - */ - private String id; - - /** - * 编码 - */ - private String code; - - /** - * 名称 - */ - private String name; - - /** - * 备注 - */ - private String remark; - - /** - * 创建人id - */ - private String create_id; - - /** - * 创建人 - */ - private String create_name; - - /** - * 创建时间 - */ - private String create_time; - - /** - * 更新人id - */ - private String update_id; - - /** - * 更新人 - */ - private String update_optname; - - /** - * 更新时间 - */ - private String update_time; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridFieldDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridFieldDto.java deleted file mode 100644 index 09b50b5..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/GridFieldDto.java +++ /dev/null @@ -1,96 +0,0 @@ -package org.nl.modules.system.service.dto; - -import lombok.Data; - -/** - * @Author: lyd - * @Description: 表格字段dto - * @Date: 2022-08-01 - */ -@Data -public class GridFieldDto { - /** - * 标识id - */ - private String id; - - /** - * 编码 - */ - private String code; - - /** - * 名称 - */ - private String name; - - /** - * 宽度 - */ - private Integer width; - - /** - * 对齐 - */ - private String align; - - /** - * 格式 - */ - private String format; - - /** - * 备注 - */ - private String remark; - - /** - * 排序 - */ - private Integer sort_num; - - /** - * 是否隐藏 - */ - private String is_hidden; - - /** - * 创建人id - */ - private String create_id; - - /** - * 创建人 - */ - private String create_name; - - /** - * 创建时间 - */ - private String create_time; - - /** - * 更新人id - */ - private String update_id; - - /** - * 更新人 - */ - private String update_optname; - - /** - * 更新时间 - */ - private String update_time; - - /** - * 表格id - */ - private String grid_id; - - /** - * 表格名称 - */ - private String grid_name; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/MenuQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/MenuQueryCriteria.java deleted file mode 100644 index 34cdfad..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/MenuQueryCriteria.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.system.service.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.Query; - -import java.util.Date; -import java.util.List; - -/** - * @author Zheng Jie - * 公共查询类 - */ -@Data -public class MenuQueryCriteria { - - @Query(blurry = "title,component,permission") - private String blurry; - - @Query(type = Query.Type.BETWEEN) - private List createTime; - - @Query(type = Query.Type.IS_NULL, propName = "pid") - private Boolean pidIsNull; - - @Query - private Long pid; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/ParamDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/ParamDto.java deleted file mode 100644 index bd3b99c..0000000 --- a/nladmin-system/nlsso-server/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; - -/** - * @description / - * @author ldjun - * @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 Long create_id; - - private Long update_id; - - private String create_name; - - private String create_time; - - private String update_optname; - - private String update_time; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleDto.java deleted file mode 100644 index 2547288..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleDto.java +++ /dev/null @@ -1,65 +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.dto; - -import lombok.Getter; -import lombok.Setter; -import org.nl.modules.common.base.BaseDTO; -import org.nl.system.service.menu.dto.MenuDto; - -import java.io.Serializable; -import java.util.Objects; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-11-23 - */ -@Getter -@Setter -public class RoleDto extends BaseDTO implements Serializable { - - private String id; - - private Set menus; - - private Set depts; - - private String name; - - private String dataScope; - - private Integer level; - - private String description; - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - RoleDto roleDto = (RoleDto) o; - return Objects.equals(id, roleDto.id); - } - - @Override - public int hashCode() { - return Objects.hash(id); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleQueryCriteria.java deleted file mode 100644 index 8321d2e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleQueryCriteria.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.system.service.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.Query; - -import java.util.Date; -import java.util.List; - -/** - * @author Zheng Jie - * 公共查询类 - */ -@Data -public class RoleQueryCriteria { - - @Query(blurry = "name,description") - private String blurry; - - @Query(type = Query.Type.BETWEEN) - private List createTime; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleSmallDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleSmallDto.java deleted file mode 100644 index 9575f72..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/RoleSmallDto.java +++ /dev/null @@ -1,35 +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.dto; - -import lombok.Data; - -import java.io.Serializable; - -/** - * @author Zheng Jie - * @date 2018-11-23 - */ -@Data -public class RoleSmallDto implements Serializable { - - private String id; - - private String name; - - private Integer level; - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDeptRelation.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDeptRelation.java deleted file mode 100644 index 49876a9..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDeptRelation.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.nl.modules.system.service.dto; - -import lombok.Data; - -/* - * @author ZZQ - * @Date 2022/11/29 6:28 下午 - */ -@Data -public class UserDeptRelation { - private Long user_id; - private Long dept_id; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDetail.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDetail.java deleted file mode 100644 index c66032b..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDetail.java +++ /dev/null @@ -1,84 +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.dto; - -import io.swagger.annotations.ApiModelProperty; -import lombok.Getter; -import lombok.Setter; -import org.nl.modules.system.domain.Dept; -import org.nl.modules.system.domain.Role; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; -import java.util.Date; -import java.util.List; - -/** - * @author Zheng Jie - * @date 2018-11-22 - */ -@Getter -@Setter -public class UserDetail implements Serializable { - - - private Long user_id; - - private List dept; - - private List role; - - @ApiModelProperty(value = "用户名称") - private String username; - - @NotBlank - @ApiModelProperty(value = "用户昵称") - private String nickName; - - @ApiModelProperty(value = "邮箱") - private String email; - - @ApiModelProperty(value = "电话号码") - private String phone; - - @ApiModelProperty(value = "用户性别") - private String gender; - - @ApiModelProperty(value = "头像真实名称",hidden = true) - private String avatar_name; - - @ApiModelProperty(value = "头像存储的路径", hidden = true) - private String avatar_path; - - @ApiModelProperty(value = "密码") - private String password; - - @ApiModelProperty(value = "是否为admin账号", hidden = true) - private Boolean isAdmin = false; - - @ApiModelProperty(value = "最后修改密码的时间", hidden = true) - private Date pwd_reset_time; - @ApiModelProperty(value = "最后修改密码的时间", hidden = true) - private Long pwd_reset_user_id; - - private String extperson_id; - - private String extuser_id; - - private String is_used; - - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserQueryCriteria.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserQueryCriteria.java deleted file mode 100644 index 592a880..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserQueryCriteria.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.service.dto; - -import lombok.Data; -import org.nl.modules.common.annotation.Query; - -import java.io.Serializable; -import java.util.Date; -import java.util.HashSet; -import java.util.Set; - -/** - * @author Zheng Jie - * @date 2018-11-23 - */ -@Data -public class UserQueryCriteria implements Serializable { - - @Query(blurry = "email,username,nickName") - private String blurry; - - private Boolean needAll; - - private String is_used; - - - - private Date startTime; - - private Date endTime; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DataServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DataServiceImpl.java deleted file mode 100644 index d3a0d15..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DataServiceImpl.java +++ /dev/null @@ -1,94 +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 lombok.RequiredArgsConstructor; -import org.nl.modules.system.service.DataService; -import org.nl.modules.system.service.DeptService; -import org.nl.modules.system.service.RoleService; -import org.nl.modules.system.service.dto.RoleSmallDto; -import org.nl.system.service.user.dao.SysUser; -import org.springframework.cache.annotation.CacheConfig; -import org.springframework.stereotype.Service; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Set; - -/** - * @author Zheng Jie - * @website https://el-admin.vip - * @description 数据权限服务实现 - * @date 2020-05-07 - **/ -@Service -@RequiredArgsConstructor -public class DataServiceImpl implements DataService { - - private final RoleService roleService; - private final DeptService deptService; - - /** - * 用户角色改变时需清理缓存 - * @param user / - * @return / - */ - @Override - public List getDeptIds(SysUser user) { - // 用于存储部门id - Set deptIds = new HashSet<>(); - // 查询用户角色 -// List roleSet = roleService.findByUsersId(user.getUser_id()); - // 获取对应的部门ID -// for (RoleSmallDto role : roleSet) { -// DataScopeEnum dataScopeEnum = DataScopeEnum. -// switch (Objects.requireNonNull(dataScopeEnum)) { -// case THIS_LEVEL: -// /*if (ObjectUtil.isNotEmpty(user.getDept())){ -// deptIds.add(user.getDept().getId()); -// }*/ -// break; -// case CUSTOMIZE: -// deptIds.addAll(getCustomize(deptIds, role)); -// break; -// default: -// return new ArrayList<>(deptIds); -// } -// } - return new ArrayList<>(deptIds); - } - - /** - * 获取自定义的数据权限 - * @param deptIds 部门ID - * @param role 角色 - * @return 数据权限ID - */ - @Deprecated - public Set getCustomize(Set deptIds, RoleSmallDto role){ - //角色跟部门不挂钩 -// Set depts = deptService.findByRoleId(role.getId()); -// for (Dept dept : depts) { -// deptIds.add(dept.getDept_id()); -// List deptChildren = deptService.findByPid(dept.getPid()); -// if (deptChildren != null && deptChildren.size() != 0) { -// deptIds.addAll(deptService.getDeptChildren(deptChildren)); -// } -// } - return null; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DeptServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DeptServiceImpl.java deleted file mode 100644 index 24632f8..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DeptServiceImpl.java +++ /dev/null @@ -1,364 +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.collection.CollectionUtil; -import cn.hutool.core.map.MapUtil; -import cn.hutool.core.util.StrUtil; -import cn.hutool.db.Db; -import cn.hutool.db.Entity; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.RequiredArgsConstructor; -import lombok.SneakyThrows; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.CacheKey; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.system.domain.Dept; -import org.nl.modules.system.service.DeptService; -import org.nl.modules.system.service.dto.DeptDto; -import org.nl.modules.system.service.dto.DeptQueryCriteria; -import org.nl.modules.system.service.dto.DeptTree; -import org.nl.modules.tools.MapOf; -import org.nl.modules.wql.WQL; -import org.nl.modules.wql.core.bean.ResultBean; -import org.nl.modules.wql.core.bean.WQLObject; -import org.nl.modules.wql.util.SpringContextHolder; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; - -import javax.sql.DataSource; -import java.sql.SQLException; -import java.util.*; -import java.util.stream.Collectors; - -/** - * @author Zheng Jie - * @date 2019-03-25 - */ -@Service -@RequiredArgsConstructor -public class DeptServiceImpl implements DeptService { - - private final RedisUtils redisUtils; - - @Override - public List queryAll(DeptQueryCriteria criteria, Boolean isQuery) throws Exception { - JSONObject o = (JSONObject) JSON.toJSON(criteria); - HashMap map = MapOf.of("name", MapUtil.getStr(o, "name") - , "code", MapUtil.getStr(o, "code") - , "is_used", MapUtil.getStr(o, "is_used") - , "startTime", MapUtil.getStr(o, "startTime") - , "endTime", MapUtil.getStr(o, "endTime") - , "pid", MapUtil.getStr(o, "pid") - , "pidIsNull", MapUtil.getStr(o, "pidIsNull") - ,"flag","1" - ); - JSONArray array = WQL.getWO("SYS_DEPT").addParamMap(map).process().getResultJSONArray(0); - return array.toJavaList(Dept.class); - } - - @Override - public T findById(String id,Class tagert) { - if (id==null){ - return null; - } - JSONObject result = WQLObject.getWQLObject("SYS_DEPT").query("dept_id ='" + id + "'").uniqueResult(0); - return result.toJavaObject(tagert); - } - - @Override - public Dept findById(String id) { - JSONObject result = WQLObject.getWQLObject("sys_dept").query("dept_id ='" + id + "'").uniqueResult(0); - return result.toJavaObject(Dept.class); - } - - @Override - public List findByPid(String pid) { - JSONArray result = WQLObject.getWQLObject("sys_dept").query("pid ='" + pid + "'").getResultJSONArray(0); - return result.toJavaList(Dept.class); - } - @Override - @SneakyThrows - public Set findPidChild(String pid) { - if (pid!=null) { - String sql = "SELECT\n" + - " max(t3.childId) as deptIds \n" + - " from\n" + - " (\n" + - " select *,\n" + - " if( find_in_set(t1.pid, @p) > 0,@p := concat(@p,',',id),0 ) as childId\n" + - " from\n" + - " (select dept_id as id, pid from sys_dept t order by id) t1,\n" + - " (select @p := '" + pid + "') t2\n" + - " ) t3\n" + - " where childId != '0'"; - List list = Db.use((DataSource) SpringContextHolder.getBean("dataSource")).query(sql); - System.out.println(list); - Object deptIds = list.get(0).get("deptIds"); - if (deptIds != null && (deptIds instanceof String)) { - String[] split = ((String) deptIds).split(","); - return Arrays.stream(split).map(a -> String.valueOf(a)).collect(Collectors.toSet()); - } - } - return new HashSet(); - } - - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(Dept dept) { - CurrentUser user = SecurityUtils.getCurrentUser(); - dept.setSub_count(0); - dept.setCode(UUID.randomUUID().toString()); - dept.setCreate_time(new Date()); - dept.setUpdate_time(new Date()); - dept.setCreate_id(user.getId()); - dept.setCreate_name(user.getUsername()); - WQLObject.getWQLObject("sys_dept").insert(JSONObject.parseObject(JSON.toJSONString(dept))); - - // 清理缓存 - updateSubCnt(dept.getPid()); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(Dept resources) { - // 旧的部门 - String oldPid = findById(resources.getDept_id()).getPid(); - String newPid = resources.getPid(); - if (resources.getPid() != null && resources.getDept_id().equals(resources.getPid())) { - throw new BadRequestException("上级不能为自己"); - } - Dept dept = findById(resources.getDept_id()); - resources.setDept_id(dept.getDept_id()); - -// WQLObject.getWQLObject("sys_dept").update((JSONObject)JSON.toJSON(resources),"dept_id = '"+resources.getDept_id()+"'"); - WQLObject.getWQLObject("sys_dept").update(JSONObject.parseObject(JSON.toJSONString(resources)),"dept_id = '"+resources.getDept_id()+"'"); - // 更新父节点中子节点数目 - updateSubCnt(oldPid); - updateSubCnt(newPid); - // 清理缓存 - delCaches(resources.getDept_id()); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(Set deptDtos) { - if (!CollectionUtils.isEmpty(deptDtos)){ - Set depts = new HashSet<>(); - for (String id : deptDtos) { - depts.addAll(this.findPidChild(id)); - } - // 验证是否被角色或用户关联 - this.verification(depts); - - String collectSql = deptDtos.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - WQLObject.getWQLObject("sys_dept").delete("dept_id in ('" + collectSql + "')"); - for (String deptDto : deptDtos) { - // 清理缓存 -// delCaches(deptDto); -// updateSubCnt(deptDto); - } - } - } - - @Override - public Set getDeleteDepts(List menuList, Set deptDtos) { - for (Dept dept : menuList) { - deptDtos.add(dept); - List depts = findByPid(dept.getDept_id()); - if (depts != null && depts.size() != 0) { - getDeleteDepts(depts, deptDtos); - } - } - return deptDtos; - } - - @Override - public List getSuperior(DeptTree deptDto, List depts) { - depts.add(deptDto); - if (deptDto.getPid() == null) { - return depts; - } - return getSuperior(findById(deptDto.getPid(),DeptTree.class), depts); - } - - @Override - public Object buildTree(List deptDtos) { - List trees= new ArrayList<>(); - Set depts = new LinkedHashSet<>(); - List deptNames = deptDtos.stream().map(DeptTree::getName).collect(Collectors.toList()); - boolean isChild; - for (DeptTree deptDTO : deptDtos) { - isChild = false; - if (deptDTO.getPid() == null) { - trees.add(deptDTO); - } - for (DeptTree it : deptDtos) { - if (it.getPid() != null && deptDTO.getDept_id().equals(it.getPid())) { - isChild = true; - if (deptDTO.getChildren() == null) { - deptDTO.setChildren(new ArrayList<>()); - } - deptDTO.getChildren().add(it); - } - } - if (isChild) { - depts.add(deptDTO); - } else if (deptDTO.getPid() != null && !deptNames.contains(findById(deptDTO.getPid()).getName())) { - depts.add(deptDTO); - } - } - - Map map = new HashMap<>(2); - map.put("totalElements", deptDtos.size()); - map.put("content", CollectionUtil.isEmpty(trees) ? deptDtos : trees); - return map; - } - - @Override - public void verification(Set deptDtos) { - if (!CollectionUtils.isEmpty(deptDtos)){ - String collectSql = deptDtos.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - ResultBean result = WQLObject.getWQLObject("sys_user_dept").query("dept_id in ('" + collectSql + "')"); - if (result.getResultCount()>0){ - throw new BadRequestException("部门存在绑定的人员,请先解绑人员对应部门"); - } - } - } - - - private void updateSubCnt(String deptId) { - if (deptId != null) { - List byPid = findByPid(deptId); - WQLObject.getWQLObject("sys_dept").update(MapOf.of("sub_count",byPid.size()),"dept_id = '"+deptId+"'"); - } - } - - private List deduplication(List list) { - List deptDtos = new ArrayList<>(); - for (DeptDto deptDto : list) { - boolean flag = true; - for (DeptDto dto : list) { - if (dto.getId().equals(deptDto.getPid())) { - flag = false; - break; - } - } - if (flag) { - deptDtos.add(deptDto); - } - } - return deptDtos; - } - - /** - * 清理缓存 - * - * @param id / - */ - public void delCaches(String id) { - JSONArray array = WQLObject.getWQLObject("sys_user_dept").query("dept_id ='" + id + "'").getResultJSONArray(0); - Set users = array.stream().map(a -> ((JSONObject) a).getLong("user_id")).collect(Collectors.toSet()); - // 删除数据权限 - redisUtils.delByKeys(CacheKey.DATA_USER, users); - redisUtils.del(CacheKey.DEPT_ID + id); - } - - @Override - public List getDeptChildren(List deptList) { - List list = new ArrayList<>(); - deptList.forEach(dept -> { - if (dept != null && "1".equals(dept.getIs_used())) { - List depts = findByPid(dept.getDept_id()); - if (deptList.size() != 0) { - list.addAll(getDeptChildren(depts)); - } - list.add(dept.getDept_id()); - } - } - ); - return list; - } - - @Override - public Set getChildIdSet(String pid) { - String sql = "select dept_id from (\n" + - " select t1.dept_id,\n" + - " if(find_in_set(pid, @pids) > 0, @pids := concat(@pids, ',', dept_id), 0) as ischild\n" + - " from (\n" + - " select dept_id,pid from sys_dept t where t.enabled = 1\n" + - " ) t1,\n" + - " (select @pids :=" + pid + ") t2\n" + - " ) t3 where ischild != 0"; - Set set = new HashSet<>(); - //添加本级 - set.add(pid); - //添加子节点 - try { - List list = Db.use((DataSource) SpringContextHolder.getBean("dataSource")).query(sql); - list.forEach(item -> { - set.add(item.getStr("dept_id")); - }); - } catch (SQLException e) { - e.printStackTrace(); - } - return set; - } - - @Override - public Set getAllChildIdSet(String dept_idStr) { - JSONArray arr = WQLObject.getWQLObject("sys_dept").query("dept_id IN " + dept_idStr).getResultJSONArray(0); - Set set = new HashSet<>(); - for (int i = 0; i < arr.size(); i++) { - set.addAll(this.getChildIdSet(arr.getJSONObject(i).getString("dept_id"))); - } - return set; - } - - @Override - public String getChildIdStr(String dept_id) { - Set set = this.getChildIdSet(dept_id); - StringBuilder sb = new StringBuilder(); - set.forEach(item -> { - sb.append(",'" + item + "'"); - }); - String str = sb.toString(); - if (StrUtil.isNotEmpty(str)) { - str = "(" + str.substring(1) + ")"; - } - return str; - } - - @Override - public String getAllChildIdStr(String dept_idStr) { - Set set = this.getAllChildIdSet(dept_idStr); - StringBuilder sb = new StringBuilder(); - set.forEach(item -> { - sb.append(",'" + item + "'"); - }); - String str = sb.toString(); - if (StrUtil.isNotEmpty(str)) { - str = "(" + str.substring(1) + ")"; - } - return str; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java deleted file mode 100644 index e4a5d6d..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictDetailServiceImpl.java +++ /dev/null @@ -1,157 +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.DateUtil; -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.service.DictDetailService; -import org.nl.modules.system.service.dto.DictDetailQueryCriteria; -import org.nl.modules.system.service.dto.DictDto; -import org.nl.modules.tools.IdUtil; -import org.nl.modules.wql.WQL; -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.List; -import java.util.Map; - -/** - * @author Zheng Jie - * @date 2019-04-10 - */ -@Service -@RequiredArgsConstructor -public class DictDetailServiceImpl implements DictDetailService { - - private final RedisUtils redisUtils; - - @Override - public Map queryAll(DictDetailQueryCriteria criteria, Pageable pageable) { - JSONObject map = new JSONObject(); - map.put("flag", "2"); - map.put("code", criteria.getCode()); - map.put("dictName", criteria.getDictName()); - JSONObject json = WQL.getWO("SYS_DICT").addParamMap(map).pageQuery(WqlUtil.getHttpContext(pageable), "dict_sort asc"); - return json; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(DictDto resources) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - // 校验是否已经有标签 - JSONObject object = wo.query("label = '" + resources.getLabel() + "' " + - "AND code = '" + resources.getDictCode() + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(object)) throw new BadRequestException("标签[" + resources.getLabel() + "]已存在"); - JSONObject dictObj = wo.query("code = '" + resources.getDictCode() + "'").uniqueResult(0); - if (ObjectUtil.isEmpty(dictObj.getString("label"))) { - // 空就赋值 - dictObj.put("label", resources.getLabel()); - dictObj.put("value", resources.getValue()); - dictObj.put("dict_sort", resources.getDict_sort()); - dictObj.put("dict_type", resources.getDict_type()); - dictObj.put("para1", resources.getPara1()); - dictObj.put("para2", resources.getPara2()); - dictObj.put("para3", resources.getPara3()); - dictObj.put("update_id", SecurityUtils.getCurrentUserId()); - dictObj.put("update_optname", SecurityUtils.getCurrentNickName()); - dictObj.put("update_time", DateUtil.now()); - wo.update(dictObj); - return; - } - // 插入新的数据 - resources.setDict_id(IdUtil.getStringId()); - resources.setCode(dictObj.getString("code")); - resources.setName(dictObj.getString("name")); - resources.setCreate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); - resources.setCreate_name(SecurityUtils.getCurrentNickName()); - resources.setCreate_time(DateUtil.now()); - resources.setUpdate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); - resources.setUpdate_optname(SecurityUtils.getCurrentNickName()); - resources.setUpdate_time(DateUtil.now()); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(resources)); - wo.insert(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(DictDto dto) { - WQLObject dictTab = WQLObject.getWQLObject("sys_dict"); - DictDto entity = this.findById(dto.getDict_id()); - if (entity == null) { - throw new BadRequestException("被删除或无权限,操作失败!"); - } - dto.setUpdate_time(DateUtil.now()); - dto.setUpdate_optname(SecurityUtils.getCurrentNickName()); - dto.setUpdate_id(Long.valueOf(SecurityUtils.getCurrentUserId())); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); - dictTab.update(json); - // 清理缓存 - delCaches(dto); - } - - @Override - public List getDictByName(String name) { - List dictDtos = this.findByDictName(name); - return dictDtos; - } - - private List findByDictName(String name) { // 前端的name就是code - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - JSONArray jsonArray = wo.query("code = '" + name + "' AND " + - "label IS NOT NULL AND label != '' ").getResultJSONArray(0); - return jsonArray.toJavaList(DictDto.class); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(String id) { - DictDto dictDto = this.findById(id); - if (dictDto == null) { - throw new BadRequestException("被删除或无权限,操作失败!"); - } -// // 清理缓存 - delCaches(dictDto); - WQLObject dictTab = WQLObject.getWQLObject("sys_dict"); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(dictDto)); - dictTab.delete(json); - } - - public void delCaches(DictDto dict) { - redisUtils.del("dict::name:" + dict.getName()); - } - - @Override - public DictDto findById(String dict_id) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - JSONObject json = wo.query("dict_id =" + dict_id + "").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) { - return json.toJavaObject(DictDto.class); - } - final DictDto obj = json.toJavaObject(DictDto.class); - return obj; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictService2Impl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictService2Impl.java deleted file mode 100644 index 0632be7..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/DictService2Impl.java +++ /dev/null @@ -1,162 +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.DateUtil; -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.service.DictService2; -import org.nl.modules.system.service.dto.DictDto; -import org.nl.modules.system.service.dto.DictQueryCriteria; -import org.nl.modules.tools.IdUtil; -import org.nl.modules.wql.WQL; -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 javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.*; - -/** -* @author Zheng Jie -* @date 2019-04-10 -*/ -@Service -@RequiredArgsConstructor -public class DictService2Impl implements DictService2 { - - private final RedisUtils redisUtils; - - @Override - public Map queryAll(DictQueryCriteria dict, Pageable pageable){ - JSONObject map = new JSONObject(); - map.put("flag", "1"); - map.put("blurry", dict.getBlurry()); - JSONObject json = WQL.getWO("SYS_DICT").addParamMap(map).pageQuery(WqlUtil.getHttpContext(pageable), "dict.code asc"); - return json; - } - - @Override - public List queryAll(DictQueryCriteria dict) { - JSONObject map = new JSONObject(); - map.put("flag", "1"); - map.put("blurry", dict.getBlurry()); - JSONArray dicts = WQL.getWO("SYS_DICT").addParamMap(map).process().getResultJSONArray(0); - List dictDtos = dicts.toJavaList(DictDto.class); - return dictDtos; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(DictDto dto) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - JSONObject object = wo.query("code = '" + dto.getCode() + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(object)) throw new BadRequestException("字典[" + dto.getCode() + "]已存在"); - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - String date = DateUtil.now(); - dto.setDict_id(IdUtil.getStringId()); - dto.setCreate_id(Long.valueOf(currentUserId)); - dto.setCreate_name(nickName); - dto.setUpdate_id(Long.valueOf(currentUserId)); - dto.setUpdate_optname(nickName); - dto.setUpdate_time(date); - dto.setCreate_time(date); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); - wo.insert(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(DictDto dto) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - JSONObject otherObj = wo.query("dict_id = '" + dto.getDict_id() + "'").uniqueResult(0); - JSONArray dictArray = wo.query("code = '" + otherObj.getString("code") + "'").getResultJSONArray(0); - for (int i = 0; i < dictArray.size(); i++) { - JSONObject dictObj = dictArray.getJSONObject(i); - dictObj.put("code", dto.getCode()); - dictObj.put("name", dto.getName()); - dictObj.put("update_time", DateUtil.now()); - dictObj.put("update_id", currentUserId); - dictObj.put("update_optname", nickName); - wo.update(dictObj); - } - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(Set ids) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - for (String id : ids) { - JSONObject object = wo.query("dict_id = '" + id + "'").uniqueResult(0); - // 删除数据 - wo.delete("code = '" + object.getString("code") + "'"); - } - } - - @Override - public void download(List dictDtos, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - for (DictDto dictDTO : dictDtos) { - JSONArray jsonArray = wo.query("code = '" + dictDTO.getDictCode() + "'").getResultJSONArray(0); - for (int i = 0; i < jsonArray.size(); i++) { - JSONObject jsonObject = jsonArray.getJSONObject(i); - Map map = new LinkedHashMap<>(); - map.put("字典名称", jsonObject.getString("name")); - map.put("字典描述", jsonObject.getString("code")); - map.put("字典标签", jsonObject.getString("label")); - map.put("字典值", jsonObject.getString("value")); - map.put("排序", jsonObject.getString("dict_sort")); - map.put("类型", jsonObject.getString("dict_type")); - map.put("参数1", jsonObject.getString("para1")); - map.put("参数2", jsonObject.getString("para2")); - map.put("参数3", jsonObject.getString("para3")); - map.put("创建日期", jsonObject.getString("create_time")); - list.add(map); - } - } - FileUtil.downloadExcel(list, response); - } - - public void delCaches(DictDto dict){ - redisUtils.del("dict::name:" + dict.getName()); - } - - @Override - public DictDto findById(String dict_id) { - WQLObject wo = WQLObject.getWQLObject("sys_dict"); - JSONObject json = wo.query("dict_id =" + dict_id + "").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) { - return json.toJavaObject(DictDto.class); - } - final DictDto obj = json.toJavaObject(DictDto.class); - return obj; - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/GridFieldServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/GridFieldServiceImpl.java deleted file mode 100644 index 5ce2b94..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/GridFieldServiceImpl.java +++ /dev/null @@ -1,145 +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 lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.service.GridFieldService; -import org.nl.modules.system.service.dto.GridFieldDto; -import org.nl.modules.wql.WQL; -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.HashMap; -import java.util.Map; - -/** - * @Author: lyd - * @Description: 表格字段实现类 - * @Date: 2022-08-01 - */ -@Service -@RequiredArgsConstructor -@Slf4j -public class GridFieldServiceImpl implements GridFieldService { - - @Override - public Map queryAll(Map whereJson, Pageable page) { - HashMap map = new HashMap<>(); - String grid_name = (String) whereJson.get("name"); - map.put("flag","1"); - if (StrUtil.isNotEmpty(grid_name)){ - map.put("grid_name","%" + grid_name + "%"); - } - JSONObject json = WQL.getWO("GRIDFIELD").addParamMap(map).pageQuery(WqlUtil.getHttpContext(page), "sys_grid_field.sort_num"); - return json; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(GridFieldDto dto) { - String currentUsername = SecurityUtils.getCurrentUsername(); - String uid = SecurityUtils.getCurrentUserId(); - String now = DateUtil.now(); - - dto.setId(IdUtil.simpleUUID()); - dto.setCreate_id(uid.toString()); - dto.setUpdate_id(uid.toString()); - dto.setCreate_name(currentUsername); - dto.setUpdate_optname(currentUsername); - dto.setUpdate_time(now); - dto.setCreate_time(now); - - WQLObject wo = WQLObject.getWQLObject("sys_grid_field"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.insert(json); - } - - @Override - public GridFieldDto findById(String id) { - WQLObject wo = WQLObject.getWQLObject("sys_grid_field"); - JSONObject json = wo.query("id ='" + id + "' AND is_delete = '0'").uniqueResult(0); - final GridFieldDto obj = json.toJavaObject(GridFieldDto.class);; - return obj; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(GridFieldDto dto) { - GridFieldDto entity = this.findById(dto.getId()); - if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); - - String currentUsername = SecurityUtils.getCurrentUsername(); - String now = DateUtil.now(); - dto.setUpdate_time(now); - dto.setUpdate_id(SecurityUtils.getCurrentUserId().toString()); - dto.setUpdate_optname(currentUsername); - - WQLObject wo = WQLObject.getWQLObject("sys_grid_field"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.update(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAll(String[] ids) { - WQLObject wo = WQLObject.getWQLObject("sys_grid_field"); - for (String id : ids) { -// GridFieldDto gridFieldDto = this.findById(id); -// gridFieldDto.setIs_delete("1"); -// JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(gridFieldDto)); -// wo.update(json); - wo.delete("grid_id = '" + id + "'"); - } - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void batchAdd(JSONObject json) { - String grid_id = json.getString("grid_id"); - JSONArray fieldDatas = json.getJSONArray("gridFieldData"); - WQLObject wo = WQLObject.getWQLObject("sys_grid_field"); - String currentUsername = SecurityUtils.getCurrentUsername(); - String currentUserId = SecurityUtils.getCurrentUserId(); - // 先删除原先所有的数据 - wo.delete("grid_id = '" + grid_id + "'"); - // 然后添加 - for (int i=0; i queryAll(Map whereJson, Pageable page) { - WQLObject wo = WQLObject.getWQLObject("sys_grid"); - String where = "1=1"; - if (whereJson.get("name") != null) { - where = "name like ('%" + whereJson.get("name") + "%')"; - } - 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(GridDto dto) { - String currentUsername = SecurityUtils.getCurrentUsername(); - String uid = SecurityUtils.getCurrentUserId(); - String now = DateUtil.now(); - - dto.setId(IdUtil.simpleUUID()); - dto.setCreate_id(uid.toString()); - dto.setUpdate_id(uid.toString()); - dto.setCreate_name(currentUsername); - dto.setUpdate_optname(currentUsername); - dto.setUpdate_time(now); - dto.setCreate_time(now); - - WQLObject wo = WQLObject.getWQLObject("sys_grid"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.insert(json); - } - - @Override - public GridDto findById(String id) { - WQLObject wo = WQLObject.getWQLObject("sys_grid"); - JSONObject json = wo.query("id = '" + id + "'").uniqueResult(0); - final GridDto obj = json.toJavaObject(GridDto.class);; - return obj; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(GridDto dto) { - GridDto entity = this.findById(dto.getId()); - if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); - - String currentUsername = SecurityUtils.getCurrentUsername(); - String now = DateUtil.now(); - dto.setUpdate_id(SecurityUtils.getCurrentUserId().toString()); - dto.setUpdate_time(now); - dto.setUpdate_optname(currentUsername); - - WQLObject wo = WQLObject.getWQLObject("sys_grid"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.update(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAll(String[] ids) { - WQLObject wo = WQLObject.getWQLObject("sys_grid"); - WQLObject wqlObject = WQLObject.getWQLObject("sys_grid_field"); - // 删除明细 - for (String grid_id : ids) { - wqlObject.delete("grid_id = '" + grid_id + "'"); - wo.delete("id = '" + grid_id + "'"); - } - } - - @Override - public JSONArray getGridList() { - JSONArray arr = WQLObject.getWQLObject("sys_grid").query().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("grid_id", obj.getString("id")); - json.put("grid_code", obj.getString("code")); - json.put("grid_name", obj.getString("name")); - result.add(json); - } - return result; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MenuServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MenuServiceImpl.java deleted file mode 100644 index d40c9b0..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MenuServiceImpl.java +++ /dev/null @@ -1,395 +0,0 @@ -package org.nl.modules.system.service.impl; - -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.domain.vo.MenuMetaVo; -import org.nl.modules.system.domain.vo.MenuVo; -import org.nl.modules.system.service.MenuService; -import org.nl.modules.tools.IdUtil; -import org.nl.modules.wql.WQL; -import org.nl.modules.wql.core.bean.WQLObject; -import org.nl.modules.wql.util.WqlUtil; -import org.nl.system.service.menu.dto.MenuDto; -import org.springframework.data.domain.Pageable; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import java.util.*; -import java.util.stream.Collectors; - -/** - * @author Zheng Jie - */ -@Service -@RequiredArgsConstructor -public class MenuServiceImpl implements MenuService { - - - @Override - public JSONObject queryAll(JSONObject param, Pageable page) throws Exception { - JSONObject json = WQL.getWO("QSYS_MENU01").addParam("flag", "1").addParam("pid", param.getString("pid")).pageQuery(WqlUtil.getHttpContext(page), ""); - - JSONArray content = json.getJSONArray("content"); - JSONArray res = new JSONArray(); - for (int i = 0; i < content.size(); i++) { - JSONObject obj = content.getJSONObject(i); - obj.put("menu_id", obj.getString("menu_id")); - obj.put("pid", obj.getString("pid")); - - //构建前端需要的数据结构树 - Integer sub_count = obj.getInteger("sub_count"); - if (sub_count <= 0) { - obj.put("leaf", true); - obj.put("hasChildren", false); - } else { - obj.put("leaf", false); - obj.put("hasChildren", true); - } - - res.add(obj); - } - json.put("content", res); - return json; - } - - - @Override - public JSONArray getMenusByRole(String role_id, String system_type, String category) { - JSONArray arr = WQL.getWO("QSYS_MENU01").addParam("flag", "3").addParam("system_type", system_type).addParam("category", category).process().getResultJSONArray(0); - return arr; - } - - @Override - public MenuDto menuJsonToMenuDto(JSONObject json) { - MenuDto menuDto = new MenuDto(); - menuDto.setMenu_id(json.getString("menu_id")); - menuDto.setType(json.getString("type")); - menuDto.setPermission(json.getString("permission")); - menuDto.setTitle(json.getString("title")); - menuDto.setMenu_sort(json.getInteger("menu_sort")); - menuDto.setPath(json.getString("path")); - menuDto.setComponent(json.getString("component")); - menuDto.setPid(json.getString("pid")); - menuDto.setIcon(json.getString("icon")); - - menuDto.setSub_count(json.getInteger("sub_count")); - menuDto.setIframe("1".equals(json.getString("i_frame"))); - menuDto.setCache("1".equals(json.getString("cache"))); - menuDto.setHidden("1".equals(json.getString("hidden"))); - menuDto.setComponent_name(json.getString("component_name")); - - //构建前端需要的数据结构树 - Integer sub_count = json.getInteger("sub_count"); - if (sub_count <= 0) { - menuDto.setLeaf(true); - menuDto.setHas_children(false); - } else { - menuDto.setLeaf(false); - menuDto.setHas_children(true); - } - return menuDto; - - } - - - @Override - public MenuDto findById(String id) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - JSONObject json = menuTab.query("menu_id = '" + id + "'").uniqueResult(0); - return this.menuJsonToMenuDto(json); - } - - /** - * 用户角色改变时需清理缓存 - * - * @param currentUserId / - * @return / - */ - @Override - public List findByUser(String currentUserId) { - JSONArray arr = WQL.getWO("QSYS_MENU01").addParam("flag", "4").addParam("user_id", String.valueOf(currentUserId)).process().getResultJSONArray(0); - List list = new ArrayList<>(); - for (int i = 0; i < arr.size(); i++) { - JSONObject json = arr.getJSONObject(i); - list.add(this.menuJsonToMenuDto(json)); - } - return list; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(JSONObject form) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - String menu_id = IdUtil.getStringId(); - form.put("menu_id", menu_id); - form.put("create_id", SecurityUtils.getCurrentUserId()); - form.put("create_name", SecurityUtils.getCurrentNickName()); - form.put("create_time", DateUtil.now()); - form.put("update_id", SecurityUtils.getCurrentUserId()); - form.put("update_name", SecurityUtils.getCurrentNickName()); - form.put("update_time", DateUtil.now()); - - //根节点数据库存为null - if ("0".equals(form.getString("pid"))) { - form.remove("pid"); - } - //外链外联菜单 - if ("1".equals(form.getString("i_frame"))) { - String http = "http://", https = "https://"; - if (!(form.getString("path").toLowerCase().startsWith(http) || form.getString("path").toLowerCase().startsWith(https))) { - throw new BadRequestException("外链必须以http://或者https://开头"); - } - } - - menuTab.insert(form); - updateSubCnt(form.getString("pid")); - //更新所属系统system_type字段 - updateSystemType(menu_id); - } - - /** - * 更新某个菜单属于某个系统 - * - * @param menu_id 菜单标识 - */ - void updateSystemType(String menu_id) { - String rootMenuId = this.findRootMenuId(menu_id); - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - JSONObject rootMenuObj = menuTab.query("menu_id = '" + rootMenuId + "'").uniqueResult(0); - JSONObject param = new JSONObject(); - param.put("system_type", rootMenuObj.getString("title")); - param.put("menu_id", menu_id); - menuTab.update(param); - } - - /** - * 查找菜单顶级菜单标识 - * - * @param menu_id - * @return - */ - private String findRootMenuId(String menu_id) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - JSONObject menuObj = menuTab.query("menu_id = '" + menu_id + "'").uniqueResult(0); - String pid = menuObj.getString("pid"); - if (StrUtil.isEmpty(pid)) { - return menu_id; - } else { - return findRootMenuId(pid); - } - - - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(JSONObject form) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - - MenuDto newMenu = this.menuJsonToMenuDto(form); - if (newMenu.getMenu_id().equals(newMenu.getPid())) { - throw new BadRequestException("上级不能为自己"); - } - - if (newMenu.getIframe()) { - String http = "http://", https = "https://"; - if (!(newMenu.getPath().toLowerCase().startsWith(http) || newMenu.getPath().toLowerCase().startsWith(https))) { - throw new BadRequestException("外链必须以http://或者https://开头"); - } - } - //根节点数据库存为null - if ("0".equals(form.getString("pid"))) { - form.remove("pid"); - } - - JSONObject oldMenuJson = menuTab.query("menu_id = '" + form.getString("menu_id") + "'").uniqueResult(0); - MenuDto oldMenu = this.menuJsonToMenuDto(oldMenuJson); - // 记录的父节点ID -// String oldPid = oldMenu.getPid(); -// String newPid = newMenu.getPid(); -// menuTab.update(form); -// -// // 计算父级菜单节点数目 -// updateSubCnt(oldPid); -// updateSubCnt(newPid); - -// updateSystemType(newMenu.getMenuId()); - // 清理缓存 -// delCaches(resources.getId()); - } - - @Override - public Set getChildMenus(List menuList, Set menuSet) { - for (MenuDto menu : menuList) { - menuSet.add(menu); - List menus = new ArrayList<>(); - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - menuTab.query("pid = '" + menu.getPid() + "'"); - if (menus != null && menus.size() != 0) { - getChildMenus(menus, menuSet); - } - } - return menuSet; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(Set menuSet) { - /* for (MenuDto menu : menuSet) { - // 清理缓存 - delCaches(menu.getMenu_id()); -// roleService.untiedMenu(menu.getMenu_id()); - WQLObject.getWQLObject("sys_menu").delete("menu_id = '" + menu.getMenu_id() + "'"); - updateSubCnt(menu.getPid()); - }*/ - } - - @Override - public List getMenus(String pid) { - // 菜单表【sys_menu】 - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - JSONArray menus; - if (pid != null && !pid.equals("0")) { - menus = menuTab.query("pid = '" + pid + "'").getResultJSONArray(0); - } else { - menus = menuTab.query("(pid =0 or pid is null)").getResultJSONArray(0); - } - List list = new ArrayList<>(); - //判断是否叶子节点,用于前端构建树 - for (int i = 0; i < menus.size(); i++) { - JSONObject json = menus.getJSONObject(i); - list.add(this.menuJsonToMenuDto(json)); - - } - return list; - } - - @Override - public List getSuperior(MenuDto menuDto, List menus) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - if (ObjectUtil.isEmpty(menuDto.getPid())) { - JSONArray arr = menuTab.query("pid is null").getResultJSONArray(0); - for (int i = 0; i < arr.size(); i++) { - JSONObject json = arr.getJSONObject(i); - menus.add(this.menuJsonToMenuDto(json)); - } - return menus; - } - //pid 不为null - JSONArray arr = menuTab.query("pid = '" + menuDto.getPid() + "'").getResultJSONArray(0); - for (int i = 0; i < arr.size(); i++) { - JSONObject json = arr.getJSONObject(i); - menus.add(this.menuJsonToMenuDto(json)); - } - return getSuperior(findById(String.valueOf(menuDto.getPid())), menus); - } - - @Override - public List buildTree(List menuDtos) { - List trees = new ArrayList<>(); - Set ids = new HashSet<>(); - for (MenuDto menuDTO : menuDtos) { - if (ObjectUtil.isEmpty(menuDTO.getPid())) { - trees.add(menuDTO); - } - for (MenuDto it : menuDtos) { - if (menuDTO.getMenu_id().equals(it.getPid())) { - if (menuDTO.getChildren() == null) { - menuDTO.setChildren(new ArrayList<>()); - } - menuDTO.getChildren().add(it); -// ids.add(it.getMenuId()); - } - } - } - if (trees.size() == 0) { - trees = menuDtos.stream().filter(s -> !ids.contains(s.getMenu_id())).collect(Collectors.toList()); - } - return trees; - } - - @Override - public List buildMenus(List menuDtos) { - List list = new LinkedList<>(); - menuDtos.forEach(menuDTO -> { - if (menuDTO != null) { - List menuDtoList = menuDTO.getChildren(); - MenuVo menuVo = new MenuVo(); - menuVo.setName(ObjectUtil.isNotEmpty(menuDTO.getComponent_name()) ? menuDTO.getComponent_name() : menuDTO.getTitle()); - // 一级目录需要加斜杠,不然会报警告 - menuVo.setPath(ObjectUtil.isEmpty(menuDTO.getPid()) ? "/" + menuDTO.getPath() : menuDTO.getPath()); - menuVo.setHidden(menuDTO.getHidden()); - // 如果不是外链 - if (!menuDTO.getIframe()) { - if (ObjectUtil.isEmpty(menuDTO.getPid())) { - menuVo.setComponent(StrUtil.isEmpty(menuDTO.getComponent()) ? "Layout" : menuDTO.getComponent()); - } else if (!ObjectUtil.isEmpty(menuDTO.getPid()) && "0".equals(menuDTO.getType())) { - menuVo.setComponent(StrUtil.isEmpty(menuDTO.getComponent()) ? "ParentView" : menuDTO.getComponent()); - - } else if (!StrUtil.isEmpty(menuDTO.getComponent())) { - menuVo.setComponent(menuDTO.getComponent()); - } - } - menuVo.setMeta(new MenuMetaVo(menuDTO.getTitle(), menuDTO.getIcon(), !menuDTO.getCache())); - if (menuDtoList != null && menuDtoList.size() != 0) { - menuVo.setAlwaysShow(true); - menuVo.setRedirect("noredirect"); - menuVo.setChildren(buildMenus(menuDtoList)); - // 处理是一级菜单并且没有子菜单的情况 - } else if (ObjectUtil.isEmpty(menuDTO.getPid())) { - MenuVo menuVo1 = new MenuVo(); - menuVo1.setMeta(menuVo.getMeta()); - // 非外链 - if (!menuDTO.getIframe()) { - menuVo1.setPath("index"); - menuVo1.setName(menuVo.getName()); - menuVo1.setComponent(menuVo.getComponent()); - } else { - menuVo1.setPath(menuDTO.getPath()); - } - menuVo.setName(null); - menuVo.setMeta(null); - menuVo.setComponent("Layout"); - List list1 = new ArrayList<>(); - list1.add(menuVo1); - menuVo.setChildren(list1); - } - list.add(menuVo); - } - } - ); - return list; - } - - private void updateSubCnt(String pid) { - if (pid != null) { - WQLObject menuTab = WQLObject.getWQLObject("sys_menu"); - JSONArray arr = menuTab.query("pid = '" + pid + "'").getResultJSONArray(0); - JSONObject param = new JSONObject(); - param.put("sub_count", arr.size()); - menuTab.update(param, "menu_id = '" + pid + "'"); - } - } - - /** - * 清理缓存 - * - * @param id 菜单ID - */ - public void delCaches(String id) { - /* List users = userRepository.findByMenuId(id); - redisUtils.del("menu::id:" + id); - redisUtils.delByKeys("menu::user:", users.stream().map(User::getId).collect(Collectors.toSet())); - // 清除 Role 缓存 - List roles = roleService.findInMenuId(new ArrayList() {{ - add(id); - }}); - redisUtils.delByKeys("role::id:", roles.stream().map(Role::getId).collect(Collectors.toSet()));*/ - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/ParamServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/ParamServiceImpl.java deleted file mode 100644 index 8b55cf9..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/ParamServiceImpl.java +++ /dev/null @@ -1,140 +0,0 @@ - -package org.nl.modules.system.service.impl; - - -import cn.dev33.satoken.stp.StpUtil; -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.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.system.service.ParamService; -import org.nl.modules.system.service.dto.ParamDto; -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 javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.ArrayList; -import java.util.LinkedHashMap; -import java.util.List; -import java.util.Map; - -/** - * @author ldjun - * @description 服务实现 - * @date 2021-03-16 - **/ -@Service -@RequiredArgsConstructor -@Slf4j -public class ParamServiceImpl implements ParamService { - - @Override - public Map queryAll(Map whereJson, Pageable page) { - WQLObject wo = WQLObject.getWQLObject("sys_param"); - ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "", "update_time desc"); - final JSONObject json = rb.pageResult(); - return json; - } - - @Override - public List queryAll(Map whereJson) { - WQLObject wo = WQLObject.getWQLObject("sys_param"); - JSONArray arr = wo.query().getResultJSONArray(0); - List list = arr.toJavaList(ParamDto.class); - return list; - } - - @Override - public ParamDto findById(String id) { - WQLObject wo = WQLObject.getWQLObject("sys_param"); - JSONObject json = wo.query("id ='" + id + "'").uniqueResult(0); - final ParamDto obj = json.toJavaObject(ParamDto.class);; - return obj; - } - - @Override - public ParamDto findByCode(String code) { - WQLObject wo = WQLObject.getWQLObject("sys_param"); - JSONObject json = wo.query("code ='" + code + "'").uniqueResult(0); - final ParamDto obj = json.toJavaObject(ParamDto.class);; - return obj; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(ParamDto dto) { - CurrentUser currentUsername = SecurityUtils.getCurrentUser(); - Long currentId = StpUtil.getLoginIdAsLong(); - - String now = DateUtil.now(); - - dto.setId(IdUtil.simpleUUID()); - dto.setCreate_id(currentId); - dto.setUpdate_id(currentId); - dto.setCreate_name(currentUsername.getPresonName()); - dto.setUpdate_optname(currentUsername.getPresonName()); - dto.setUpdate_time(now); - dto.setCreate_time(now); - - WQLObject wo = WQLObject.getWQLObject("sys_param"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.insert(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(ParamDto dto) { - ParamDto entity = this.findById(dto.getId()); - if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); - - String now = DateUtil.now(); - - dto.setUpdate_id(StpUtil.getLoginIdAsLong()); - dto.setUpdate_time(now); - dto.setUpdate_optname(SecurityUtils.getCurrentNickName()); - - WQLObject wo = WQLObject.getWQLObject("sys_param"); - JSONObject json = JSONObject.parseObject( JSONObject.toJSONString(dto)); - wo.update(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAll(String[] ids) { - WQLObject wo = WQLObject.getWQLObject("sys_param"); - for (String id : ids) { - wo.delete("id = '" + id + "'"); - } - } - - @Override - public void download(List all, HttpServletResponse response) throws IOException { - List> list = new ArrayList<>(); - for (ParamDto param : all) { - Map map = new LinkedHashMap<>(); - map.put("编码", param.getCode()); - map.put("名称", param.getName()); - map.put("值", param.getValue()); - map.put("备注", param.getRemark()); - map.put("是否启用", param.getIs_active()); - map.put("是否删除", param.getIs_delete()); - map.put("创建者", param.getCreate_name()); - map.put("创建时间", param.getCreate_time()); - map.put("修改者", param.getUpdate_optname()); - map.put("修改时间", param.getUpdate_time()); - list.add(map); - } - FileUtil.downloadExcel(list, response); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/RoleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/RoleServiceImpl.java deleted file mode 100644 index b1db699..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/RoleServiceImpl.java +++ /dev/null @@ -1,134 +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.dev33.satoken.stp.StpUtil; -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.ObjectUtil; -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.service.RoleService; -import org.nl.modules.tools.IdUtil; -import org.nl.modules.wql.WQL; -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.*; - -/** - * @author ludj - * @date 2022-12-05 - */ -@Service -@RequiredArgsConstructor -public class RoleServiceImpl implements RoleService { - - @Override - public JSONObject queryAll(Map whereJson, Pageable page) { - WQLObject wo = WQLObject.getWQLObject("sys_role"); - WQLObject rmTab = WQLObject.getWQLObject("sys_roles_menus"); - ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "", "update_time desc"); - final JSONObject json = rb.pageResult(); - - JSONArray arr = json.getJSONArray("content"); - for (int i = 0; i < arr.size(); i++) { - JSONObject roleObj = arr.getJSONObject(i); - JSONArray menus = rmTab.query("role_id = '" + roleObj.getString("role_id") + "'").getResultJSONArray(0); - roleObj.put("menus", menus); - } - return json; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(JSONObject form) { - //判断角色名字是否存在 - String name = form.getString("name"); - if (StrUtil.isEmpty(name)) throw new BadRequestException("角色名字不能为空!"); - WQLObject roleTab = WQLObject.getWQLObject("sys_role"); - - //判断角色名字是否存在 - JSONObject json = roleTab.query("name = '" + name + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) throw new BadRequestException("角色【" + name + "】已存在!"); - - - String role_id = IdUtil.getStringId(); - form.put("role_id", role_id); - form.put("create_id", SecurityUtils.getCurrentUserId()); - form.put("create_name", SecurityUtils.getCurrentNickName()); - form.put("create_time", cn.hutool.core.date.DateUtil.now()); - form.put("update_id", SecurityUtils.getCurrentUserId()); - form.put("update_name", SecurityUtils.getCurrentNickName()); - form.put("update_time", DateUtil.now()); - roleTab.insert(form); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(JSONObject form) { - WQLObject roleTab = WQLObject.getWQLObject("sys_role"); - //判断角色名字是否存在 - String name = form.getString("name"); - if (StrUtil.isEmpty(name)) throw new BadRequestException("角色名字不能为空!"); - - JSONObject json = roleTab.query("name = '" + name + "' and role_id <> '" + form.getString("role_id") + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) throw new BadRequestException("角色【" + name + "】已存在!"); - - String now = DateUtil.now(); - form.put("update_id", StpUtil.getLoginIdAsLong()); - form.put("update_time", now); - form.put("update_optname", SecurityUtils.getCurrentNickName()); - - - roleTab.update(form); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void delete(Set ids) { - WQLObject wo = WQLObject.getWQLObject("sys_role"); - WQLObject rmTab = WQLObject.getWQLObject("sys_roles_menus"); - for (String id : ids) { - wo.delete("role_id =" + id); - rmTab.delete("role_id =" + id); - } - } - - @Override - public List getPermissionList(JSONObject userDto) { - List permission = new LinkedList<>(); - // 查看是否为管理员 - permission.add("admin"); - HashMap map = new HashMap<>(); - map.put("flag", "1"); - map.put("user_id", userDto.getString("user_id")); - JSONArray rows = WQL.getWO("SYS_MENU").addParamMap(map).process().getResultJSONArray(0); - for (int i = 0; i < rows.size(); i++) { - JSONObject jsonObject = rows.getJSONObject(i); - permission.add(jsonObject.getString("permission")); - } - return permission; - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/UserRelateServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/UserRelateServiceImpl.java deleted file mode 100644 index c701a20..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/UserRelateServiceImpl.java +++ /dev/null @@ -1,75 +0,0 @@ -package org.nl.modules.system.service.impl; - -import org.nl.modules.system.service.UserRelateService; -import org.nl.modules.tools.MapOf; -import org.nl.modules.wql.core.bean.WQLObject; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; -import org.springframework.util.CollectionUtils; - -import java.util.Set; -import java.util.stream.Collectors; - -/* - * @author ZZQ - * @Date 2022/12/2 2:47 下午 - */ -@Service -public class UserRelateServiceImpl implements UserRelateService { - - @Override - @Transactional - public void inserDeptRelate(Long user, Set deptIds) { - if (user !=null && !CollectionUtils.isEmpty(deptIds)){ - for (Long deptId : deptIds) { - WQLObject.getWQLObject("sys_user_dept").insert(MapOf.of("user_id",user,"dept_id",deptId)); - } - } - } - - @Override - @Transactional - public void inserRoleRelate(Long user, Set RoleIds) { - if (user !=null && !CollectionUtils.isEmpty(RoleIds)){ - for (Long roleid : RoleIds) { - WQLObject.getWQLObject("sys_users_roles").insert(MapOf.of("user_id",user,"role_id",roleid)); - } - } - } - - @Override - public void deleteDeptRelate(Set deptIds) { - if (!CollectionUtils.isEmpty(deptIds)){ - String collect = deptIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - String sql="dept_id in ('"+collect+"')"; - WQLObject.getWQLObject("sys_user_dept").delete(sql); - } - } - - @Override - public void deleteRoleRelate(Set RoleIds) { - if (!CollectionUtils.isEmpty(RoleIds)){ - String collect = RoleIds.stream().map(a -> String.valueOf(a)).collect(Collectors.joining("','")); - String sql="dept_id in ('"+collect+"')"; - WQLObject.getWQLObject("sys_user_dept").delete(sql); - } - } - - @Override - @Transactional - public void updateDeptRelate(Long user, Set deptIds) { - if (user !=null){ - this.deleteDeptRelate(deptIds); - this.inserDeptRelate(user,deptIds); - } - } - - @Override - @Transactional - public void updateRoleRelate(Long user, Set RoleIds) { - if (user !=null){ - this.deleteRoleRelate(RoleIds); - this.inserRoleRelate(user,RoleIds); - } - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/vo/UserVo.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/vo/UserVo.java deleted file mode 100644 index 39d2e62..0000000 --- a/nladmin-system/nlsso-server/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/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql deleted file mode 100644 index 0f4abca..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_DICT.wql +++ /dev/null @@ -1,82 +0,0 @@ -[交易说明] - 交易名: 字典分页查询 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.blurry TYPEAS s_string - 输入.code TYPEAS s_string - 输入.dictName TYPEAS s_string - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - - IF 输入.flag = "1" - PAGEQUERY - SELECT - max(dict_id) as dict_id, - code, - name - FROM - sys_dict dict - WHERE - 1 = 1 - OPTION 输入.blurry <> "" - (dict.code like "%" 输入.blurry "%" or dict.name like "%" 输入.blurry "%") - ENDOPTION - GROUP BY code, name - ENDSELECT - ENDPAGEQUERY - ENDIF - - IF 输入.flag = "2" - PAGEQUERY - SELECT - dict.* - FROM - sys_dict dict - WHERE - dict.label IS NOT NULL - AND dict.label != "" - OPTION 输入.code <> "" - dict.code = 输入.code - ENDOPTION - OPTION 输入.dictName <> "" - dict.code = 输入.dictName - ENDOPTION - ENDSELECT - ENDPAGEQUERY - ENDIF - - - diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_MENU.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_MENU.wql deleted file mode 100644 index 3c2758e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_MENU.wql +++ /dev/null @@ -1,71 +0,0 @@ -[交易说明] - 交易名: 获取用户权限 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.user_id TYPEAS s_string - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - IF 输入.flag = "1" - QUERY - SELECT DISTINCT - permission - FROM - sys_menu - WHERE - menu_id IN - ( - SELECT - menu_id - FROM - sys_roles_menus - WHERE - role_id IN - ( - SELECT - role_id - FROM - sys_users_roles - WHERE - 1=1 - OPTION 输入.user_id <> "" - user_id = 输入.user_id - ENDOPTION - ) - ) - AND permission IS NOT NULL - AND permission != '' - ENDSELECT - ENDQUERY - ENDIF \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_ROLE.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/wql/SYS_ROLE.wql deleted file mode 100644 index e69de29..0000000 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/GRIDFIELD.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/GRIDFIELD.wql deleted file mode 100644 index 3de1a3f..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/GRIDFIELD.wql +++ /dev/null @@ -1,56 +0,0 @@ -[交易说明] - 交易名: 表格数据 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.grid_name TYPEAS s_string - - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - IF 输入.flag = "1" - PAGEQUERY - SELECT - sys_grid_field.*, sys_grid.name as grid_name - FROM - sys_grid_field - LEFT JOIN sys_grid ON sys_grid_field.grid_id = sys_grid.id - WHERE - sys_grid_field.is_delete = '0' AND sys_grid.is_delete = '0' - OPTION 输入.grid_name <> "" - sys_grid.name LIKE 输入.grid_name - ENDOPTION - ENDSELECT - ENDPAGEQUERY - ENDIF \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/QSYS_MENU01.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/QSYS_MENU01.wql deleted file mode 100644 index 557242d..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/QSYS_MENU01.wql +++ /dev/null @@ -1,123 +0,0 @@ -[交易说明] - 交易名: 菜单数据 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.system_type TYPEAS s_string - 输入.category TYPEAS s_string - 输入.user_id TYPEAS s_string - 输入.pid TYPEAS s_string - - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - - IF 输入.flag = "1" - PAGEQUERY - SELECT - * , - (CASE WHEN sub_count<=0 THEN 0 ELSE 1 END ) AS hasChildren - FROM - sys_menu - where 1=1 - OPTION 输入.pid <> "" - pid = 输入.pid - ENDOPTION - OPTION 输入.pid = "" - pid is null - ENDOPTION - ENDSELECT - ENDPAGEQUERY - ENDIF - - - IF 输入.flag = "2" - QUERY - SELECT category from sys_menu - WHERE - 1=1 - OPTION 输入.system_type <> "" - system_type = 输入.system_type - ENDOPTION - GROUP BY category - ENDSELECT - ENDQUERY - ENDIF - - - IF 输入.flag = "3" - QUERY - SELECT - m.* , - (CASE WHEN rm.menu_id IS NULL THEN '0' ELSE '1' END ) AS is_checked , - (CASE WHEN sub_count<=0 THEN true ELSE false END ) AS leaf - FROM - sys_menu m - LEFT JOIN sys_roles_menus rm ON m.menu_id = rm.menu_id - where (pid is null or pid=0) - OPTION 输入.system_type <> "" - system_type = 输入.system_type - ENDOPTION - OPTION 输入.category <> "" - category = 输入.category - ENDOPTION - ENDSELECT - ENDQUERY - ENDIF - - - IF 输入.flag = "4" - QUERY - SELECT - * - FROM - sys_menu - WHERE - type <> '2' - and - menu_id IN ( - SELECT - menu_id - FROM - sys_roles_menus - WHERE - role_id IN ( SELECT role_id FROM sys_users_roles where 1=1 - - OPTION 输入.user_id <> "" - user_id = 输入.user_id - ENDOPTION - )) - ENDSELECT - ENDQUERY - ENDIF diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys.xls b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys.xls deleted file mode 100644 index fc5e9c5..0000000 Binary files a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys.xls and /dev/null differ diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys_dept.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys_dept.wql deleted file mode 100644 index 06d9388..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/wql/sys_dept.wql +++ /dev/null @@ -1,56 +0,0 @@ -[交易说明] - 交易名: 部门数据 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.grid_name TYPEAS s_string - - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - IF 输入.flag = "1" - PAGEQUERY - SELECT - sys_grid_field.*, sys_grid.name as grid_name - FROM - sys_grid_field - LEFT JOIN sys_grid ON sys_grid_field.grid_id = sys_grid.id - WHERE - sys_grid_field.is_delete = '0' AND sys_grid.is_delete = '0' - OPTION 输入.grid_name <> "" - sys_grid.name LIKE 输入.grid_name - ENDOPTION - ENDSELECT - ENDPAGEQUERY - ENDIF diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQL.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQL.java deleted file mode 100644 index f7502ea..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQL.java +++ /dev/null @@ -1,307 +0,0 @@ -package org.nl.modules.wql; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import org.nl.modules.wql.core.bean.ResultBean; -import org.nl.modules.wql.core.engine.object.WO; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Set; - -public class WQL { - /** - * 根据WQL的文件名获取WQL的运行对象 - * - * @param code - * @return - */ - public static WO getWO(String code) { - if (null == code || "".equals(code.trim())) { - return null; - } - code = code.toUpperCase(); -// WO wo = WQLCore.WO_MAP.get(code); - WO wo = WQLCore.newWO(code); - //1、执行初始化 - wo.init(); - return wo; - } - - public static ResultBean process(String woName, HashMap map) { - WO wo = WQL.getWO(woName); - if (null == wo) { - return null; - } - - int PAGE_PAGESTART = -99; - int PAGE_PAGERECORDNUM = -99; - String SORT_ORDERBYFIELD = ""; - Set keySet = map.keySet(); - for (Iterator it = keySet.iterator(); it.hasNext(); ) { - String key = (String) it.next(); - Object value = map.get(key); - wo.setParam(key, value); -// if("PAGE_PAGESTART".toLowerCase().equals(key.toLowerCase())){ - if (StrUtil.equalsIgnoreCase("PAGE_PAGESTART", key)) { - PAGE_PAGESTART = (Integer) value; -// }else if("PAGE_PAGERECORDNUM".toLowerCase().equals(key.toLowerCase())){ - } else if (StrUtil.equalsIgnoreCase("PAGE_PAGERECORDNUM", key)) { - PAGE_PAGERECORDNUM = (Integer) value; -// }else if("SORT_ORDERBYFIELD".toLowerCase().equals(key.toLowerCase())){ - } else if (StrUtil.equalsIgnoreCase("SORT_ORDERBYFIELD", key)) { - SORT_ORDERBYFIELD = (String) value; - } - } - - wo.setPage_PageStart(PAGE_PAGESTART); - wo.setPage_PageRecordNum(PAGE_PAGERECORDNUM); - wo.setPage_OrderByField(SORT_ORDERBYFIELD); - - ResultBean rb = wo.MainProcess(); - return rb; - } - - - public static void main(String[] args) throws Exception { - //uLogger.initLogger("2", "d://wdk.log", "3", "0.0"); - - WQLCore.init(); - JSONArray jrows = WQL.getWO("QOMREV0004") - .addParam("department", "103301010499") -// .addParam("parentdpt", "10330101") -// .addParam("department", "22222") -// .addParam("param1", "3333") - .process() - .getResultJSONArray(0); - System.out.println(jrows.toString()); - -// WQL.doSelect(); -//// WQL.doInsert(); -//// WQL.doTest(); -//// WQL.doTest11(); -//// WQL.doCALLWO(); -//// WQL.doCALLJAVA(); - } -// -// public static void doSelect(){ -// WQLCore wc = new WQLCore(); -// wc.init(); -// -// WO wo = WQL.getWO("select002"); -// if(null==wo){ -// return; -// } -//// wo.setParam("createdt","'personid003'"); -//// wo.setPage_PageStart(2); -//// wo.setPage_PageRecordNum(30); -//// wo.setPage_OrderByField("pagename desc"); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("查询成功!"); -//// System.out.print("结果集为:"+rb.getResultCount()); -//// if(rb.getResultCount()>0){ -//// System.out.println(" 记录数:"+rb.getResultSet(1).size()); -//// } -// }else{ -// System.out.println("查询失败。。"); -// } -// } -// -// public static void doTest11(){ -// WQLCore.init(); -// -// WO wo = WQL.getWO("QSYSCODE0001"); -// if(null==wo){ -// return; -// } -// -// wo.setParam("codemodel", "APPLICATIONCODE"); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("doTest11成功!"); -// }else{ -// System.out.println("doTest11失败。。"); -// } -// } -// public static void doCALLPROC(){ -// WQLCore.init(); -// -// WO wo = WQL.getWO("callproc001"); -// if(null==wo){ -// return; -// } -// wo.setParam("id", "1111"); -// wo.setParam("name","22233"); -// wo.setParam("age","'age22331'"); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("CALLPROC成功!"); -// }else{ -// System.out.println("CALLPROC失败。。"); -// } -// } -// public static void doTest(){ -// WQLCore.init(); -// -// WO wo = WQL.getWO("QWDKSD0001"); -// if(null==wo){ -// return; -// } -// String v = "9"; -// wo.setParam("flag", v); -// wo.setParam("ptype","console_admin"); -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("doTest成功!"); -// }else{ -// System.out.println("doTest失败。。"); -// } -// } -// public static void doCALLJAVA(){ -// WQLCore.init(); -// -// WO wo = WQL.getWO("calljava001"); -// if(null==wo){ -// return; -// } -// wo.setParam("name", "1111"); -// String[] detailArr = {"aa","bb","cc","dd","ee","ff","gg"}; -// wo.setParam("detail",detailArr); -// wo.setParam("createdt","'personid003'"); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("CALLJAVA成功!"); -// }else{ -// System.out.println("CALLJAVA失败。。"); -// } -// } -// public static void doCALLWO(){ -// WQLCore wc = new WQLCore(); -// wc.init(); -// -// WO wo = WQL.getWO("callwo001"); -// if(null==wo){ -// return; -// } -// wo.setParam("name", "1111"); -// String[] detailArr = {"aa","bb","cc","dd","ee","ff","gg"}; -// wo.setParam("detail",detailArr); -// wo.setParam("createdt","'personid003'"); -// -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("CALLWO成功!"); -// }else{ -// System.out.println("CALLWO失败。。"); -// } -// } -// -// public static void doDelete(){ -// WQLCore.init(); -// -// WO wo = WQL.getWO("delete001"); -// if(null==wo){ -// return; -// } -// wo.setParam("id", "'481020C6300040ACA27999FE2D62ECCE'"); -// wo.setParam("pagename", "'adfaf1111'"); -// wo.setParam("personid", "'1111'"); -// wo.setParam("createdt", "'1111'"); -// wo.setParam("appdesc", "'1111'"); -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("delete成功"); -// }else{ -// System.out.println("delete失败。。"); -// } -// } -// public static void doUpdate(){ -// WQLCore wc = new WQLCore(); -// wc.init(); -// -// WO wo = WQL.getWO("update001"); -// if(null==wo){ -// return; -// } -// WP wp = wo.wp; -// wo.setParam("id", "'481020C6300040ACA27999FE2D62ECCE'"); -// wo.setParam("pagename", "'adfaf1111'"); -// wo.setParam("personid", "'1111'"); -// wo.setParam("createdt", "'1111'"); -// wo.setParam("appdesc", "'1111'"); -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("UPDATE成功,更新了"+wo.wp.IRowsCount+"条记录"); -// }else{ -// System.out.println("UPDATE失败。。"); -// } -// } -// public static void doInsert(){ -// WQLCore wc = new WQLCore(); -// wc.init(); -// -// WO wo = WQL.getWO("insert001"); -// if(null==wo){ -// return; -// } -// -// String[] idArr = new String[5]; -// idArr[0] = "'"+WDK.getUUID()+"'"; -// idArr[1] = "'"+WDK.getUUID()+"'"; -// idArr[2] = "'"+WDK.getUUID()+"'"; -// idArr[3] = "'"+WDK.getUUID()+"'"; -// idArr[4] = "'"+WDK.getUUID()+"'"; -// String[] pagenameArr = {"'pn001'","'pn002'","'pn003'","'pn004'","'pn005'"}; -// String[] personidArr = {"'personid001'","'personid002'","'personid003'","'personid004'","'personid005'"}; -// String[] createdtArr = {"'createdt001'","'createdt002'","'createdt003'","'createdt004'","'createdt005'"}; -// String[] appdescArr = {"'appdesc001'","'appdesc002'","'appdesc003'","'appdesc004'","'appdesc005'"}; -// wo.setParam("count","3"); -// wo.setParam("id", idArr); -// wo.setParam("pagename", pagenameArr); -// wo.setParam("personid", personidArr); -// wo.setParam("createdt", createdtArr); -// wo.setParam("appdesc", appdescArr); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("INSERT成功"); -// }else{ -// System.out.println("INSERT失败。。"); -// } -// } -// -// public static void doSelect1(){ -// WQLCore wc = new WQLCore(); -// wc.init(); -// -// WO wo = WQL.getWO("select001"); -// if(null==wo){ -// return; -// } -// wo.setParam("name", "1111"); -// String[] detailArr = {"aa","bb","cc","dd","ee","ff","gg"}; -// wo.setParam("detail",detailArr); -// wo.setParam("createdt","'personid003'"); -// -// wo.setPage_PageStart(2); -// wo.setPage_PageRecordNum(30); -// wo.setPage_OrderByField("pagename desc"); -// -// ResultBean rb = wo.MainProcess(); -// if(1==rb.getSucess()){ -// System.out.println("查询成功!"); -// System.out.print("结果集为:"+rb.getResultCount()); -// if(rb.getResultCount()>0){ -// System.out.println(" 记录数:"+rb.getResultSet(1).size()); -// } -// }else{ -// System.out.println("查询失败。。"); -// } -// } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLCore.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLCore.java deleted file mode 100644 index 22e50fc..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLCore.java +++ /dev/null @@ -1,528 +0,0 @@ -package org.nl.modules.wql; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import jxl.Sheet; -import jxl.Workbook; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.bean.*; -import org.nl.modules.wql.core.db.DBConnBean; -import org.nl.modules.wql.core.engine.WQLEngine; -import org.nl.modules.wql.core.engine.object.WO; -import org.nl.modules.wql.util.SpringContextHolder; -import org.nl.modules.wql.util.WqlUtil; -import org.springframework.core.io.Resource; -import org.springframework.core.io.support.ResourcePatternResolver; -import org.springframework.util.ClassUtils; - -import java.io.*; -import java.net.URISyntaxException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.regex.Pattern; - -@Slf4j -public class WQLCore { - - //解析wql文件的根目录 - public static String ROOT = "wql"; - //数据库默认名 - public static String defalutDBName = "dataSource"; - //wql源文件 - public static HashMap> wqlMap = new HashMap>(); - - //wqlobject清单 - public static HashMap wqlobjectMap = new HashMap(); - - //主表 - public static HashMap> tableMap = new HashMap>(); - - //wql表名替换正则表达式 - public static String tableReg = ""; - public static Pattern tableRegPattern; - - //临时表 - public static HashMap> tempTableMap = new HashMap>(); - - //代码模型 - public static HashMap moduleMap = new HashMap(); - - //表说明 - public static ArrayList tableIndex = new ArrayList(); - - //缓存数据,String-表名 JSONArray-对应的数据结果集 - public static HashMap bufferData = new HashMap(); - - //缓存数据,String-代码模型名 JSONArray-对应的数据结果集 - public static HashMap> bufferModuleData = new HashMap>(); - - //db.properties中本地连接配置,如果数据源失败,则会连接本地连接 - public static HashMap dbMap = new HashMap(); - - //解析后的交易对象 - private static HashMap WO_MAP = new HashMap(); - - public static WO newWO(String code) { - - WO _wo = WQLCore.WO_MAP.get(code); - WO wo = null; - try { - wo = (WO) WqlUtil.cloneObject(_wo); - } catch (Exception e) { - e.printStackTrace(); - } - return wo; - } - - public static void addWO(String code, WO wo) { - WQLCore.WO_MAP.put(code, wo); - } - - /** - * @throws Exception - * @类名: init - * @职责说明: 初始化加载 - * @创建者: yumeng - * @创建时间: 2014-06-23 11:25:35 - * @版权 Copyright(c)2014 - */ - public static boolean init() throws Exception { -// WQLCore.runtype = runtype; - boolean isSuccess = false; - - //1、初始化所有变量 - if (null != WQLCore.wqlMap) { - WQLCore.wqlMap.clear(); - } else { - WQLCore.wqlMap = new HashMap>(); - } - if (null != WQLCore.tableMap) { - WQLCore.tableMap.clear(); - } else { - WQLCore.tableMap = new HashMap>(); - } - if (null != WQLCore.wqlobjectMap) { - WQLCore.wqlobjectMap.clear(); - } else { - WQLCore.wqlobjectMap = new HashMap(); - } - if (null != WQLCore.tempTableMap) { - WQLCore.tempTableMap.clear(); - } else { - WQLCore.tempTableMap = new HashMap>(); - } - if (null != WQLCore.tableIndex) { - WQLCore.tableIndex.clear(); - } else { - WQLCore.tableIndex = new ArrayList(); - } - - if (null != WQLCore.moduleMap) { - WQLCore.moduleMap.clear(); - } else { - WQLCore.moduleMap = new HashMap(); - } - - if (null != WQLCore.bufferData) { - WQLCore.bufferData.clear(); - } else { - WQLCore.bufferData = new HashMap(); - } - - if (null != WQLCore.bufferModuleData) { - WQLCore.bufferModuleData.clear(); - } else { - WQLCore.bufferModuleData = new HashMap>(); - } - - //6、读取wql.properties - isSuccess = WQLEngine.loadWQLProperties(); - - - //开始加载系统默认wql根目录 - isSuccess = loadWQL(WQLCore.ROOT); - - return isSuccess; - - } - - - public static boolean loadWQL(String wqlRoot) throws Exception { - log.debug("loadWQL path:" + wqlRoot); - boolean isSuccess = false; - //根据wql路径构建不同的搜索pattern - String xlsEncodePattern = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + ClassUtils.convertClassNameToResourcePath(wqlRoot) + "/**/*.x"; - String xlsPattern = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + ClassUtils.convertClassNameToResourcePath(wqlRoot) + "/**/*.xls"; - String wqlPattern = ResourcePatternResolver.CLASSPATH_ALL_URL_PREFIX + ClassUtils.convertClassNameToResourcePath(wqlRoot) + "/**/*.*"; - - //读取指定目录下的excel文件 - - JSONArray jxls_1 = loadXLS_Encoded(xlsEncodePattern); - JSONArray jxls_2 = loadXLS_Original(xlsPattern); - - JSONArray jxls = WQLCore.loadXLS(jxls_1, jxls_2); - - isSuccess = true; - if (null == jxls) { - isSuccess = false; - log.error("【WQLCore】:开发模式table定义文件读取错误... WQLCore.loadXLS Failure"); - return isSuccess; - } - //读取指定目录下的wql文件,包含.q和.wql - if (isSuccess) { - isSuccess = WQLCore.loadWQL_Iterator(wqlPattern); - if (!isSuccess) { - log.error("【WQLCore】:开发模式WQL文件读取错误... WQLCore.loadWQL Failure"); - return isSuccess; - } - } - - //加载wql文件 - isSuccess = WQLCore.initLoad(jxls); - return isSuccess; - } - - private static boolean reload_Iterator(File dir, String code) throws Exception { - File[] fs = dir.listFiles(); - for (int i = 0; i < fs.length; i++) { - File f = fs[i]; - String filename = f.getName(); - if (f.isDirectory()) { - boolean isok = reload_Iterator(f, code); - if (isok) { - return isok; - } - } else { - String fname = filename; - if (-1 != filename.indexOf("[.]")) { - fname = filename.substring(0, filename.indexOf(".")); - } -// if(fname.toUpperCase().equals(code.toUpperCase()) - if (StrUtil.equalsIgnoreCase(fname, code) - && filename.endsWith(".wql")) { - ArrayList cls = new ArrayList(); - InputStreamReader read = null; - try { - read = new InputStreamReader(new FileInputStream(f), "UTF-8");//考虑到编码格式 - BufferedReader bufferedReader = new BufferedReader(read); - String lineTxt = null; - while ((lineTxt = bufferedReader.readLine()) != null) { - cls.add(lineTxt); - } - WQLCore.wqlMap.put(fname, cls); - //log.debug("-->WQLCore.wqlMap.put("+fname+")"); - WQLEngine.readWQL(fname, cls); - return true; - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } finally { - if (null != read) { - try { - read.close(); - } catch (IOException e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - } - - } - } - return false; - } - - - /** - * 读取指定目录下excel文件,包括.xls和.x两种文件并合并,合并规则如下: - * 1、首先加载.x文件,然后加载.xls文件 - * 2、如果出现重复表结构,则以.xls为准 - * - * @param jxlss - * @return - * @throws URISyntaxException - */ - private static JSONArray loadXLS(JSONArray jxlss, JSONArray jxlss2) throws URISyntaxException { - //对原始的文件进行循环 - for (int i = 0; i < jxlss2.size(); i++) { - JSONObject jxls2 = jxlss2.getJSONObject(i); - String name2 = jxls2.getString("name"); - //如果已加密内容中存在相同xls,则剔除后加入新的xls - for (int j = 0; j < jxlss.size(); j++) { - JSONObject jxls = jxlss.getJSONObject(j); - String name = jxls.getString("name"); - if (StrUtil.equalsIgnoreCase(name, name2)) { - jxlss.remove(j); - break; - } - } - jxlss.add(jxls2); - } - - return jxlss; - } - - /** - * 以生产模式读取表定义 - * 1、直接读取加密后的表格信息 - * 2、包含框架的表文件和业务表文件 - * - * @return - * @throws Exception - */ - private static JSONArray loadXLS_Encoded(String path) { - JSONArray jxlss = new JSONArray(); - try { - Resource[] rss = SpringContextHolder.getApplicationContext().getResources(path); - - for (int i = 0; i < rss.length; i++) { - Resource rs = rss[i]; - String fname = rs.getFilename(); - if (fname.endsWith(".x")) { - byte[] bytes = WqlUtil.getFileBytes(rs.getInputStream(), rs.contentLength()); - String content = WqlUtil.decode2String(bytes); - if (!"".equals(content)) { - jxlss = JSONArray.parseArray(content); - return jxlss; - } - } - } - } catch (Exception e) { - log.error("【WQLCore】:loadXLS_Encoded error:" + e.getMessage()); - e.printStackTrace(); - } - return jxlss; - } - - - /** - * 以调试模式读取表定义 - * 1、框架表和业务表均读取xls格式的文件 - * - * @return - * @throws URISyntaxException - * @throws IOException - */ - public static JSONArray loadXLS_Original(String path) throws URISyntaxException, IOException { - JSONArray jxlss = new JSONArray(); - try { - Resource[] rss = SpringContextHolder.getApplicationContext().getResources(path); - for (int i = 0; i < rss.length; i++) { - Resource rs = rss[i]; - String fname = rs.getFilename(); - if (-1 != fname.indexOf(".svn") || -1 == fname.indexOf(".xls")) { - continue; - } - JSONObject jxls = WQLCore.loadXLS2Json(fname, rs.getInputStream()); - jxlss.add(jxls); - } - } catch (Exception e) { - log.error("【WQLCore】:loadXLS_Original error:" + e.getMessage()); - e.printStackTrace(); - } - return jxlss; - } - - private static JSONObject loadXLS2Json(String filename, InputStream is) { - JSONObject jxls = new JSONObject(); - Workbook book = null; - try { - jxls.put("name", filename); - book = Workbook.getWorkbook(is); - //1、对sheets循环 - Sheet[] sheets = book.getSheets(); - JSONArray jsheets = new JSONArray(); - - - for (int i = 0; i < sheets.length; i++) { - Sheet sheet = sheets[i]; - JSONObject jsheet = new JSONObject(); - jsheet.put("name", sheet.getName()); - int lenCols = sheet.getColumns(); - int lenRows = sheet.getRows(); - - //对行循环 - JSONArray jrows = new JSONArray(); - for (int nRow = 0; nRow < lenRows; nRow++) { - //对列循环 - JSONObject jrow = new JSONObject(); - for (int nCol = 0; nCol < lenCols; nCol++) { - String row_col = sheet.getCell(nCol, nRow).getContents().trim().toUpperCase(); - jrow.put("col" + nCol, row_col); - } - jrows.add(jrow); - } - jsheet.put("rows", jrows); - jsheets.add(jsheet); - } - jxls.put("sheets", jsheets); - } catch (Exception e) { - e.printStackTrace(); - } finally { - if (null != book) { - book.close(); - } - } - return jxls; - } - - - private static boolean loadWQL_Iterator(String path) throws Exception { - Resource[] rss = SpringContextHolder.getApplicationContext().getResources(path); - for (int i = 0; i < rss.length; i++) { - Resource rs = rss[i]; - String filename = rs.getFilename(); - if (filename.endsWith(".wql")) { - String fname = filename.substring(0, filename.indexOf(".")); - log.debug("【WQL】-【WQLCore】:加载WQL文件:" + fname + ".wql"); - ArrayList cls = new ArrayList(); - InputStreamReader read = null; - try { - read = new InputStreamReader(rs.getInputStream(), "UTF-8");//考虑到编码格式 - BufferedReader bufferedReader = new BufferedReader(read); - String lineTxt = null; - while ((lineTxt = bufferedReader.readLine()) != null) { - cls.add(lineTxt); - } - - readWQLFile(fname, cls); - //log.debug("-->WQLCore.wqlMap.put("+fname+")"); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } finally { - if (null != read) { - try { - read.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - } - if (filename.endsWith(".q")) { - String fname = filename.substring(0, filename.length() - 2); - log.debug("【WQL】-【WQLCore】:加载WQL文件:" + fname + ".q"); - ArrayList cls = new ArrayList(); - byte[] bytes = WqlUtil.getFileBytes(rs.getInputStream(), rs.contentLength()); - String content = WqlUtil.decode2String(bytes); - StringReader sr = new StringReader(content); - InputStreamReader read = null; - try { - BufferedReader bufferedReader = new BufferedReader(sr); - String lineTxt = null; - while ((lineTxt = bufferedReader.readLine()) != null) { - cls.add(lineTxt); - } - readWQLFile(fname, cls); - - } catch (Exception e) { - e.printStackTrace(); - } finally { - if (null != read) { - try { - read.close(); - } catch (IOException e) { - e.printStackTrace(); - } - } - } - } - } - return true; - } - - /** - * 根据加载的excel内容进行解析 - * - * @return - * @throws Exception - */ - private static boolean initLoad(JSONArray jxlss) throws Exception { - log.debug("-----------------------WQL引擎启动 开发模式 --------------"); - JSONObject jwdk = null; - for (int i = 0; i < jxlss.size(); i++) { - JSONObject jxls = jxlss.getJSONObject(i); - String xlsname = jxls.get("name").toString().toUpperCase(); - //读取框架默认excel内容,其中的数据类型作为基础数据类型 - if (StrUtil.equalsIgnoreCase("WDK", xlsname)) { - jwdk = jxls; - break; - } - } - - //0、加载代码模型 - boolean isLoadSuccess = WQLEngine.loadModule(jxlss, 3); - if (!isLoadSuccess) { - log.error("【WQLCore】:代码模型加载错误... WQLEngine.loadModule Failure"); - return isLoadSuccess; - } else { - log.info("【WQLCore】:代码模型加载成功... WQLEngine.loadModule Success"); - } - - //1、加载表索引 - isLoadSuccess = WQLEngine.loadTableIndex(jxlss, 4); - if (!isLoadSuccess) { - log.error("【WQLCore】:表索引加载错误... WQLEngine.loadTableIndex Failure"); - return isLoadSuccess; - } else { - log.info("【WQLCore】:表索引加载成功... WQLEngine.loadTableIndex Success"); - } - - //2、加载数据类型,如果没有jwdk则不处理 - isLoadSuccess = WQLEngine.loadDBType(jwdk, 2); - if (!isLoadSuccess) { - log.error("【WQLCore】:数据类型加载错误... WQLEngine.loadDBType Failure"); - return isLoadSuccess; - } else { - log.info("【WQLCore】:数据类型加载成功... WQLEngine.loadDBType Success"); - } - - //3、加载所有表 - ArrayList tbnames = WQLEngine.loadTables(jxlss, 5); - if (null == tbnames) { - log.error("【WQLCore】:WDK基础表文件加载错误... WQLEngine.loadTables Failure"); - return isLoadSuccess; - } else { - log.info("【WQLCore】:WDK基础表文件加载成功... WQLEngine.loadTables Success"); - } - - //预加载WQLObject - isLoadSuccess = WQLEngine.loadWQLObject(tbnames); - if (!isLoadSuccess) { - log.error("【WQLCore】:错误编码加载错误... WQLEngine.loadErrorCode Failure"); - return isLoadSuccess; - } else { - log.info("【WQLCore】:编码加载成功... WQLEngine.loadErrorCode Success"); - } - - if (!isLoadSuccess) { - log.error("-----------------------WQL引擎启动 启动失败 --------------"); - } else { - log.debug("-----------------------WQL引擎启动 开发模式启动成功 --------------"); - } - return isLoadSuccess; - } - - /** - * 刷新缓存 - */ - public static void bufferRefresh() { - WQLEngine.loadBufferData(); - } - - /** - * 解析并注册WQL文件 - * - * @param wqlcode - * @param contents - * @throws Exception - */ - private static void readWQLFile(String wqlcode, ArrayList contents) throws Exception { - WQLCore.wqlMap.put(wqlcode, contents); - WQLEngine.readWQL(wqlcode, contents); - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLInit.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLInit.java deleted file mode 100644 index 81f3d58..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/WQLInit.java +++ /dev/null @@ -1,19 +0,0 @@ -package org.nl.modules.wql; - -import lombok.extern.slf4j.Slf4j; -import org.springframework.boot.ApplicationArguments; -import org.springframework.boot.ApplicationRunner; -import org.springframework.core.annotation.Order; -import org.springframework.stereotype.Component; - -@Order(0) -@Component -@Slf4j -public class WQLInit implements ApplicationRunner { - @Override - public void run(ApplicationArguments args) throws Exception { - WQLCore.ROOT = "org.nl"; - WQLCore.init(); - log.info("WQL初始化成功!"); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/DataType.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/DataType.java deleted file mode 100644 index e97497b..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/DataType.java +++ /dev/null @@ -1,107 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: DBFileType.java - * 包名: com.crea.wdk.core.db.core - * 版权: - * 职责:wql数据库数据类型 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-06-23 11:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core; - -import org.nl.modules.wql.core.bean.DataTypeBean; - -import java.util.HashMap; - - -public class DataType { - public static String ORACLE = "ORACLE"; - public static String DB2 = "DB2"; - public static String MYSQL = "MYSQL"; - public static String MSSQL = "MSSQL"; - - public static String _STRING = "STRING"; - public static String _INTEGER = "INTEGER"; - public static String _NUMBER = "NUMBER"; - public static String _CLOB = "CLOB"; - public static String _BLOB = "BLOB"; - - public static HashMap dataMap = new HashMap(); - - - public static String getFieldType(String fieldName){ - fieldName = fieldName.toUpperCase(); - DataTypeBean dtb = DataType.dataMap.get(fieldName); - String fieldType = dtb.getFieldType(); - return fieldType; - } - - public static String getFieldValue(String dbtype,String fieldName){ - fieldName = fieldName.toUpperCase(); - dbtype = dbtype.toUpperCase(); - - DataTypeBean dtb = DataType.dataMap.get(fieldName); - String fieldValue = dtb.getFieldValue(dbtype); - return fieldValue; - } - -// -// /** -// * -// * @param type 数据约定格式 -// * @param dbtype 数据库类型 -// * @return -// */ -// public static String find(String type,String dbtype){ -// if(ORACLE.equals(dbtype)){ -// if("u_string".equals(type)){ -// return u_string_oracle; -// }else if("u_bool".equals(type)){ -// return u_bool_oracle; -// }else if("u_color".equals(type)){ -// return u_color_oracle; -// } -// -// }else if(DB2.equals(dbtype)){ -// -// }else{ -// if("u_string".equals(type)){ -// return u_string; -// }else if("u_bool".equals(type)){ -// return u_bool; -// }else if("u_color".equals(type)){ -// return u_color; -// } -// } -// -// return ""; -// } -// -// public static final String u_string = "varchar(500)"; -// public static final String u_string_mssql = "varchar(500)"; -// public static final String u_string_oracle = "varchar2(500)"; -// public static final String u_string_db2 = "varchar(500)"; -// public static final String u_string_mysql = "varchar(500)"; -// -// public static final String u_bool = "char(1)"; -// public static final String u_bool_mssql = "char(1)"; -// public static final String u_bool_oracle = "char(1)"; -// public static final String u_bool_db2 = "char(1)"; -// public static final String u_bool_mysql = "char(1)"; -// -// -// public static final String u_color = "char(7)"; -// public static final String u_color_mssql = "char(7)"; -// public static final String u_color_oracle = "char(7)"; -// public static final String u_color_db2 = "char(7)"; -// public static final String u_color_mysql = "char(7)"; -// -// public static final String u_datetime = "char(19)"; -// public static final String u_datetime_mssql = "char(19)"; -// public static final String u_datetime_oracle = "char(19)"; -// public static final String u_datetime_db2 = "char(19)"; -// public static final String u_datetime_mysql = "char(19)"; -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/ERROR.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/ERROR.java deleted file mode 100644 index f72f6cd..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/ERROR.java +++ /dev/null @@ -1,49 +0,0 @@ -package org.nl.modules.wql.core; - -import org.nl.modules.wql.core.engine.Syntax; - -import java.util.HashMap; - - -public class ERROR { - public static HashMap ERR = new HashMap(); - public static String DEFAULT = "DEFAULT"; - - /** - * 获取日志错误 - * @param codeStr - * @return - */ - public static String getCode(String codeStr){ - String strCode = new String(); - if(ERR.keySet().contains(codeStr)){ - strCode = codeStr; - }else{ - strCode = ERROR.DEFAULT; - } - return strCode; - - } - - /** - * 获取错误描述 - * @param codeStr - * @return - */ - public static String getDesc(String codeStr){ - String strDesc = new String(); - if(ERR.keySet().contains(codeStr)){ - strDesc = ERR.get(codeStr); - }else{ - if(Syntax.UNIONSTR.equals(codeStr)){ - strDesc = ""; - }else if(codeStr.startsWith("\"")&&codeStr.endsWith("\"")){ - strDesc = codeStr.substring(1,codeStr.length()-1); - }else{ - strDesc = codeStr; - } - } - return strDesc; - } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ConnectBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ConnectBean.java deleted file mode 100644 index ae38d60..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ConnectBean.java +++ /dev/null @@ -1,137 +0,0 @@ -package org.nl.modules.wql.core.bean;//package org.nl.module.wql.core.bean; -// -//import java.sql.Connection; -// -//import javax.transaction.UserTransaction; -// -//import org.hibernate.Session; -//import org.jbpm.api.cmd.Environment; -//import org.jbpm.pvm.internal.env.EnvironmentImpl; -//import org.jbpm.pvm.internal.hibernate.DbSessionImpl; -//import org.jbpm.pvm.internal.session.DbSession; -//import org.nl.module.wql.WQLCore; -//import org.nl.module.wql.core.db.DBConnection; -// -// -//public class ConnectBean { -// private String dbname = ""; -// private Connection conn = null; -// private UserTransaction utx = null; -// -// private ConnectBean() { -// // TODO Auto-generated constructor stub -// } -//// public ConnectBean(Connection conn) { -//// this.conn = conn; -//// } -// public static ConnectBean getConnectBean(){ -// ConnectBean conb = new ConnectBean(); -// conb.conn = DBConnection.getConnection(WQLCore.defalutDBName); -// conb.dbname = WQLCore.defalutDBName; -// return conb; -// } -// public static ConnectBean getConnectBean(Environment environment){ -// return getConnectBean((EnvironmentImpl)environment); -// } -// public static ConnectBean getConnectBean(EnvironmentImpl environmentImpl){ -// DbSessionImpl dbSession = (DbSessionImpl) environmentImpl.getFromCurrent(DbSession.class); -// Session session = dbSession.getSession(); -// ConnectBean conb = ConnectBean.getConnectBean(session.connection(),WQLCore.defalutDBName); -// return conb; -// } -// -// public static ConnectBean getConnectBean(Connection conn,String dbname){ -// if(null==dbname||"".equals(dbname)){ -// dbname = WQLCore.defalutDBName; -// } -// ConnectBean conb = new ConnectBean(); -// conb.conn = conn; -// conb.dbname = dbname; -// return conb; -// } -// public boolean beginTransation(){ -// boolean isSuccess = false; -// if(null!=this.conn){ -// DBConnection.openTransation(this.conn); -// this.utx = DBConnection.getTransaction(this.dbname); -// if(null!=this.utx){ -// try { -// this.utx.begin(); -// isSuccess = true; -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// } -// } -// return isSuccess; -// } -// -// public boolean commitTransation(){ -// boolean isSuccess = false; -// if(null!=this.utx){ -// try { -// this.utx.commit(); -// isSuccess = true; -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// try { -// this.utx.rollback(); -// } catch (Exception e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// } -// }finally{ -// DBConnection.freeConnection(this.conn); -// this.conn = null; -// this.utx=null; -// } -// }else{ -// DBConnection.freeConnection(this.conn); -// } -// -// return isSuccess; -// } -// public boolean rollbackTransation(){ -// boolean isSuccess = false; -// if(null!=this.utx){ -// try { -// this.utx.rollback(); -// isSuccess = true; -// } catch (Exception e1) { -// // TODO Auto-generated catch block -// e1.printStackTrace(); -// }finally{ -// DBConnection.freeConnection(this.conn); -// this.conn = null; -// this.utx=null; -// } -// }else{ -// DBConnection.freeConnection(this.conn); -// } -// -// return isSuccess; -// } -// -// public String getDbname() { -// return dbname; -// } -// public void setDbname(String dbname) { -// this.dbname = dbname; -// } -// public Connection getConn() { -// return conn; -// } -// public void setConn(Connection conn) { -// this.conn = conn; -// } -// public UserTransaction getUtx() { -// return utx; -// } -// public void setUtx(UserTransaction utx) { -// this.utx = utx; -// } -// -// -//} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/DataTypeBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/DataTypeBean.java deleted file mode 100644 index 6a3f8cb..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/DataTypeBean.java +++ /dev/null @@ -1,60 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import org.nl.modules.wql.core.DataType; - - -public class DataTypeBean { - private String fieldName; //字段名 - private String fieldType; //string、integer、number、clob、blob - private String fieldValue_oracle; //oracle下的表现形式 - private String fieldValue_db2; //DB2下的表现形式 - private String fieldValue_mssql; //mssql下的表现形式 - private String fieldValue_mysql; //mysql下的表现形式 - private String desc; //字段说明 - - public String getFieldName() { - return fieldName; - } - public void setFieldName(String fieldName) { - this.fieldName = fieldName; - } - public String getFieldType() { - return fieldType; - } - public void setFieldType(String fieldType) { - this.fieldType = fieldType; - } - - public String getDesc() { - return desc; - } - public void setDesc(String desc) { - this.desc = desc; - } - public String getFieldValue(String dbtype) { - String value = new String(); - if(DataType.ORACLE.equals(dbtype)){ - value = this.fieldValue_oracle; - }else if(DataType.DB2.equals(dbtype)){ - value = this.fieldValue_db2; - }else if(DataType.MSSQL.equals(dbtype)){ - value = this.fieldValue_mssql; - }else if(DataType.MYSQL.equals(dbtype)){ - value = this.fieldValue_mysql; - } - return value; - } - public void setFieldValue(String dbtype,String value) { - if(DataType.ORACLE.equals(dbtype)){ - this.fieldValue_oracle = value; - }else if(DataType.DB2.equals(dbtype)){ - this.fieldValue_db2 = value; - }else if(DataType.MSSQL.equals(dbtype)){ - this.fieldValue_mssql = value; - }else if(DataType.MYSQL.equals(dbtype)){ - this.fieldValue_mysql = value; - } - } - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ErrorBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ErrorBean.java deleted file mode 100644 index 6f42037..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ErrorBean.java +++ /dev/null @@ -1,47 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: ErrorBean.java - * 包名: com.crea.wdk.core.wql.core.bean - * 版权: - * 职责:WQL执行错误描述类 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-07-01 14:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.bean; - -public class ErrorBean { - - private String Code = ""; - - private String Description = ""; - - public ErrorBean() { - } - - public String getCode() { - return Code; - } - - public void setCode(String value) { - this.Code = value; - } - - public String getDescription() { - return Description; - } - - public void setDescription(String value) { - this.Description = value; - } - - public String toString() { - StringBuffer sStr = new StringBuffer(); - sStr.append("错误编号:" + Code); - sStr.append(" 描述:" + Description); - return sStr.toString(); - } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ParameterBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ParameterBean.java deleted file mode 100644 index 07cc0d5..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ParameterBean.java +++ /dev/null @@ -1,33 +0,0 @@ -package org.nl.modules.wql.core.bean; - -/** - * SQL参数 - * @author stiffen_peng - * - */ -public class ParameterBean { - private String type = ""; - private String value = ""; - - public String getType() { - return type; - } - public void setType(String type) { - this.type = type; - } - public String getValue() { - return value; - } - public void setValue(String value) { - this.value = value; - } - - public boolean isNull(){ - if(this.type.startsWith("n")||this.type.startsWith("N")){ - if(value==null || "".equals(value)){ - return true; - } - } - return false; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ResultBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ResultBean.java deleted file mode 100644 index a02c841..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/ResultBean.java +++ /dev/null @@ -1,515 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: ResultBean.java - * 包名: com.crea.wdk.core.wql.core.bean - * 版权: - * 职责:WQL执行结果存储,包含查询类结果和交易类结果 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-07-01 14:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.bean; - -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.beanutils.BasicDynaBean; -import org.apache.commons.beanutils.BasicDynaClass; -import org.apache.commons.beanutils.DynaProperty; -import org.apache.commons.beanutils.RowSetDynaClass; -import org.nl.modules.wql.util.WqlUtil; - -import java.beans.IntrospectionException; -import java.beans.PropertyDescriptor; -import java.io.Serializable; -import java.lang.reflect.Field; -import java.lang.reflect.Method; -import java.sql.*; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.List; - -@Slf4j -public class ResultBean implements Serializable, Cloneable { - private static final long serialVersionUID = -7486919713117296262L; - private ArrayList rslist = null; - - // 返回的结果集的个数 - private int ResultCount = 0; - - //如果是删除、更新类操作,返回受影响的记录数 - private int RowsCount = 0; - - private int sucess; - - private ArrayList InfoDump = null; - - private ArrayList InfoError = null; - - private ArrayList InfoTrace = null; - - - public int getRowsCount() { - return RowsCount; - } - - public void setRowsCount(int rowsCount) { - RowsCount = rowsCount; - } - - /** - * 返回是否执行成功 - * - * @return - */ - public boolean isSuccess() { - if (1 == this.sucess) { - return true; - } else { - return false; - } - } - - public int getSucess() { - return sucess; - } - - public void setSucess(int value) { - this.sucess = value; - } - - /** - * 取得结果集 - * - * @param value - * @return - */ - public ArrayList getResultSet(int value) { - // value = value - 1; - if (null == rslist) { - return null; - } - if (value < rslist.size()) { - if (rslist.get(value) instanceof RowSetDynaClass) { - return (ArrayList) ((RowSetDynaClass) rslist.get(value)).getRows(); - } else { - return (ArrayList) rslist.get(value); - } - } - return null; - } - -// /** -// * 返回按bc定义的dataset -// * @param bc -// * @param value -// * @return -// */ -// public WQLData getWQLData(WQLObject wo,int value){ -// if (value < rslist.size()) { -// -// ArrayList list = getResultSet(value); -// try{ -// WQLData wd = null; -// if(null!=wo){ -// wd = new WQLData(wo); -// wd.populate(list); -// }else{ -// wd = new WQLData(list); -// } -// return wd; -// }catch(Exception ex){ -// ex.printStackTrace(); -// } -// } -// return null; -// } -// -// /** -// * 返回普通dataset -// * @param value -// * @return -// */ -// public WQLData getWQLData(int value){ -// return getWQLData(null,value); -// } - - /** - * 泛型 - * - * @param resultSet - * @param c - * @return - * @throws IllegalAccessException - * @throws InstantiationException - * @throws IntrospectionException - */ - public ArrayList getObjects(int resultSet, Class c) throws Exception { - JSONArray jrows = this.getResultJSONArray(resultSet); - ArrayList rows = new ArrayList(); - for (int i = 0; i < jrows.size(); i++) { - JSONObject jrow = jrows.getJSONObject(i); - Object o = c.newInstance(); - Field[] fields = c.getDeclaredFields(); - //反射读取其中属性,从jrow中取值并调用o中的set方法设置 - for (Field f : fields) { - String fieldName = f.getName(); - if (-1 != fieldName.toLowerCase().indexOf("serialversion") - || -1 != fieldName.toLowerCase().indexOf("param_")) { - continue; - } - PropertyDescriptor pd = new PropertyDescriptor(f.getName(), c); - String jvalue = jrow.getString(fieldName); - Method m = pd.getWriteMethod(); - m.invoke(o, jvalue); - } - rows.add(o); - } - return rows; - } - - /** - * 获取单一的对象 - * - * @param resultSet - * @param c - * @return - * @throws Exception - */ - public Object getObject(int resultSet, Class c) throws Exception { - JSONObject jrow = this.uniqueResult(resultSet); - if (null == jrow) { - return null; - } - Object o = c.newInstance(); - Field[] fields = c.getDeclaredFields(); - //反射读取其中属性,从jrow中取值并调用o中的set方法设置 - for (Field f : fields) { - String fieldName = f.getName(); - if (-1 != fieldName.toLowerCase().indexOf("serialversion") - || -1 != fieldName.toLowerCase().indexOf("param_")) { - continue; - } - PropertyDescriptor pd = new PropertyDescriptor(f.getName(), c); - String jvalue = jrow.getString(fieldName); - Method m = pd.getWriteMethod(); - if (null != m) { - m.invoke(o, jvalue); - } - } - return o; - } - - /** - * 取得jsonarray格式的结果集 - * - * @param resultSet - * @return - */ - public JSONArray getResultJSONArray(int resultSet) { - ArrayList rows = this.getResultSet(resultSet); - if (null == rows) { - rows = new ArrayList(); - } - JSONArray jrows = this.rows2jsonarray(rows); - return jrows; - } - - /** - * 获取唯一一条记录 - * - * @param resultSet 结果集序号 - * @return - */ - public JSONObject uniqueResult(int resultSet) { - ArrayList rows = this.getResultSet(resultSet); - if (null == rows) { - rows = new ArrayList(); - } - JSONArray jrows = this.rows2jsonarray(rows); - JSONObject jrow = null; - if (jrows.size() > 0) { - jrow = jrows.getJSONObject(0); - } -// log.warn("===========uniqueResult速度 解析结果集="+(t2-t1)+" 转换成JSON="+(t3-t2)); - return jrow; - } - - /** - * 获取适合grid的分页结果集 - * - * @return - */ - public JSONObject pageResult() { - JSONObject jres = new JSONObject(); - ArrayList rows = this.getResultSet(0); - if (null == rows) { - rows = new ArrayList(); - } - JSONArray jrows = this.rows2jsonarray(rows); - jres.put("content", jrows); - - ArrayList rows2 = this.getResultSet(1); - int nTotalSize = 0; - if (null != rows2 && rows2.size() > 0) { - JSONObject jrow2 = this.row2jsonobject((BasicDynaBean) rows2.get(0)); - nTotalSize = jrow2.getInteger("page_totalrecordnum"); - } - jres.put("totalElements", nTotalSize); - return jres; - } - - /** - * 结果集转换方法 - * - * @param rows - * @return - */ - private JSONArray rows2jsonarray(ArrayList rows) { - JSONArray jrows = new JSONArray(); - for (Iterator it = rows.iterator(); it.hasNext(); ) { - BasicDynaBean row = (BasicDynaBean) it.next(); - jrows.add(row2jsonobject(row)); - } - return jrows; - } - - - private JSONObject row2jsonobject(BasicDynaBean row) { - JSONObject jrow = new JSONObject(); - DynaProperty[] props = row.getDynaClass().getDynaProperties(); - for (int j = 0; j < props.length; j++) { - DynaProperty prop = props[j]; - String key = prop.getName(); - Object value = row.get(key); - String strValue = WqlUtil.getSQLFieldValue(value).trim(); - - if (value instanceof Date) - //时间处理 - if (ObjectUtil.isEmpty(strValue) && ObjectUtil.isNotEmpty(value)) { - if (value instanceof Date) { - strValue = value.toString(); - } - } - jrow.put(key, strValue); - } - return jrow; - } - - public void addSplitPageResultSet(ResultSet value, int start, int end) throws SQLException { - if (start < 0) { - addResultSet(value); - return; - } - - value.absolute(start); - ArrayList rs = new ArrayList(); - ResultSetMetaData rsmd = value.getMetaData(); - DynaProperty[] dps = new DynaProperty[rsmd.getColumnCount()]; - for (int i = 0; i < dps.length; i++) { - dps[i] = new DynaProperty(rsmd.getColumnName(i + 1).toLowerCase()); - } - - for (int i = start; i < end; i++) { - BasicDynaClass bdc = new BasicDynaClass("", BasicDynaBean.class, dps); - BasicDynaBean bdb = new BasicDynaBean(bdc); - if (value.next()) { - for (int j = 0; j < dps.length; j++) { - bdb.set(dps[j].getName(), value.getString(dps[j].getName())); - } - - rs.add(bdb); - } else - break; - } - if (rslist == null) { - rslist = new ArrayList(); - } - rslist.add(rs); - } - - /** - * 查询结束后添加结果集 - * - * @param sqlResultSet jdbc的resultSet - */ - public void addResultSet(ResultSet sqlResultSet) { - if (rslist == null) { - rslist = new ArrayList(); - } - try { - //支持别名的设置 - WQLRowSetDynaClass rs = new WQLRowSetDynaClass(sqlResultSet, true, -1); - rslist.add(rs); - ResultCount = rslist.size(); - } catch (Exception e) { - e.printStackTrace(); - } - } - - /** - * 查询结束后添加结果集 - * - * @param list - */ - public void addResultSet(ArrayList list) { - if (rslist == null) { - rslist = new ArrayList(); - } - - rslist.add(list); - ResultCount = rslist.size(); - } - - /** - * 开始新的查询前清空之前的结果集记录 - */ - public void clearResultSet() { - rslist = null; - ResultCount = 0; - RowsCount = 0; - } - - public ArrayList getInfoDump() { - return InfoDump; - } - - public void setInfoDump(ArrayList details) { - this.InfoDump = details; - } - - public ArrayList getInfoError() { - return InfoError; - } - - public void setInfoError(ArrayList details) { - this.InfoError = details; - } - - public ArrayList getInfoTrace() { - return InfoTrace; - } - - public void setInfoTrace(ArrayList details) { - this.InfoTrace = details; - } - - /** - * Returns the ResultCount. - * - * @return int - */ - public int getResultCount() { - if (rslist != null) { - ResultCount = rslist.size(); - } - return ResultCount; - } - - public void setResultSets(ArrayList details) { - if (details != null) { - this.rslist = details; - ResultCount = rslist.size(); - } - } - - public ArrayList getResultSets() { - if (rslist == null) { - rslist = new ArrayList(); - } - return rslist; - } - - public String toString() { - StringBuffer sStr = new StringBuffer(); - if (InfoTrace != null) { - sStr.append("\n InfoTrace Size =" + InfoTrace.size()); - } - if (InfoError != null) { - sStr.append(sStr + "\n InfoError Size =" + InfoError.size()); - } - if (InfoDump != null) { - sStr.append(sStr + "\n InfoDump Size =" + InfoDump.size()); - } - if (rslist != null) { - sStr.append("\n 结果集总数为(" + rslist.size() + ")个"); - for (int i = 1; i <= rslist.size(); i++) { - RowSetDynaClass rs = (RowSetDynaClass) rslist.get(i - 1); - List rows = rs.getRows(); - sStr.append("\n 第(" + i + ")个结果集有(" + rows.size() + ")条记录"); - // DynaProperty - DynaProperty properties[] = rs.getDynaProperties(); - for (int j = 0; j < properties.length; j++) { - sStr.append("\n 字段(" + j + ") " + properties[j].getName()); - if (rows.size() > 0) { - BasicDynaBean rowBean = (BasicDynaBean) rows.get(0); - sStr.append(" |" - + rowBean.get(properties[j].getName() - .toString())); - } - } - - } - } - return sStr.toString(); - } - - /** - * 测试用 - * - * @param args - */ - public static void main2s(String[] args) { - - ResultBean ii = new ResultBean(); - // ii.setResultSets(null); - // System.exit(0); - try { - Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); - Connection conn = DriverManager - .getConnection("jdbc:sqlserver://192.168.1.4:1433;User=tc;Password=business;DatabaseName=test"); - conn.setAutoCommit(false); - String sqlStr = ""; - CallableStatement st; - - // sqlStr = - // BF.ScriptSwitch("SELECT DISTINCT A.IOSTORINVSID AS IOSTORINVSID , B.CORPSID AS CORPSID , B.BUSINESSCORPNAME AS SIMPLENAME , C.STORSID AS STORSID , C.STORNAME AS STORNAME , E.BIZINVTYPE AS BIZINVTYPE , E.TYPENAME AS TYPENAME , A.INVSID AS INVSID , CASE WHEN ? = '1' THEN A.TOTALDEFQTY / 250 WHEN ? = '2' THEN A.TOTALDEFQTY / 50 WHEN ? = '3' THEN A.TOTALDEFQTY WHEN ? = '4' THEN A.TOTALDEFQTY * 10 WHEN ? = '5' THEN A.TOTALDEFQTY * 200 ELSE A.TOTALDEFQTY END AS TOTALDEFQTY , A.FIRSTDTLCOUNT AS FIRSTDTLCOUNT , D.PERSONSID AS PERSONSID , D.PERSONNAME AS PERSONNAME , A.CREATEDATE AS CREATEDATE , A.REMARK AS REMARK , A.STATUS AS STATUS , CASE WHEN A.STATUS = '01' THEN '待分配' WHEN A.STATUS = '02' THEN '分配中' WHEN A.STATUS = '03' THEN '待确认' WHEN A.STATUS = '04' THEN '确认中' ELSE '确认完毕' END AS STATUSNAME FROM DBO.B_ST_BZIOSTORINVMST AS A LEFT OUTER JOIN DBO.G_OG_CORPINFO AS B ON A.CORPSID = B.CORPSID LEFT OUTER JOIN DBO.B_ST_BSREALSTORATTR AS C ON A.STORSID = C.STORSID LEFT OUTER JOIN DBO.G_OG_PERSONINFO AS D ON A.CREATERSID = D.PERSONSID LEFT OUTER JOIN DBO.G_PB_BIZINVTYPE AS E ON A.INVTYPE = E.BIZINVTYPE LEFT OUTER JOIN DBO.B_ST_BZIOSTORINVDIVDTL AS F ON A.IOSTORINVSID = F.IOSTORINVSID WHERE A.IOSTORINVSID = A.IOSTORINVSID AND A.ISOUTINV = '0' AND A.STORSID = '001000001' AND A.CORPSID = '001000000' AND A.STATUS IN ( '01' , '02' , '03' ) AND A.ISACTIVE = '1' ORDER BY A.IOSTORINVSID DESC ", - // 1); - st = conn.prepareCall(sqlStr, ResultSet.TYPE_SCROLL_INSENSITIVE, - ResultSet.CONCUR_READ_ONLY); - st.setString(1, ""); - st.setString(2, ""); - st.setString(3, ""); - st.setString(4, ""); - st.setString(5, ""); - st.execute(); - ResultBean ior = new ResultBean(); - ResultSet rs = st.getResultSet(); - ior.addSplitPageResultSet(rs, 1, 5); - - st.close(); - st = null; - conn.close(); - conn = null; - - ArrayList al = ior.getResultSets(); - System.out.println(al.size()); - ArrayList temp = ior.getResultSet(1); - System.out.println(temp.size()); - System.out.println(temp.get(0).getClass().getName()); - BasicDynaBean bdb = (BasicDynaBean) temp.get(0); - BasicDynaClass bdc = (BasicDynaClass) bdb.getDynaClass(); - DynaProperty[] dp = bdc.getDynaProperties(); - for (int i = 0; i < dp.length; i++) { - System.out.println(dp[i] + "=" + bdb.get(dp[i].getName())); - } - - } catch (Exception e) { - e.printStackTrace(); - } - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/TableBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/TableBean.java deleted file mode 100644 index ff3b8a8..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/TableBean.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.nl.modules.wql.core.bean; -/** - * excel中读取的表的说明 - * @author Administrator - * - */ -public class TableBean { - private String tablename; //表名 - private String modulename; //所属模板名 - private String cnname; //表中文描述 - private boolean isbuffer; //是否缓存 - private boolean istemplate; //是否临时表 - private String remark; //备注说明 - public TableBean() { - this.tablename = new String(); - this.modulename = new String(); - this.cnname = new String(); - this.isbuffer = false; - this.istemplate = false; - this.remark = new String(); - } - public String getTablename() { - return tablename; - } - public void setTablename(String tablename) { - this.tablename = tablename; - } - public String getModulename() { - return modulename; - } - public void setModulename(String modulename) { - this.modulename = modulename; - } - public String getCnname() { - return cnname; - } - public void setCnname(String cnname) { - this.cnname = cnname; - } - public boolean isBuffer() { - return isbuffer; - } - public void setBuffer(boolean isbuffer) { - this.isbuffer = isbuffer; - } - public boolean isTemplate() { - return istemplate; - } - public void setTemplate(boolean istemplate) { - this.istemplate = istemplate; - } - public String getRemark() { - return remark; - } - public void setRemark(String remark) { - this.remark = remark; - } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLData.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLData.java deleted file mode 100644 index 6ce499f..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLData.java +++ /dev/null @@ -1,737 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.apache.commons.beanutils.BasicDynaBean; -import org.apache.commons.beanutils.DynaProperty; -import org.nl.modules.wql.exception.WDKException; -import org.nl.modules.wql.util.WqlUtil; - -import java.util.ArrayList; -import java.util.Collections; -import java.util.HashMap; -import java.util.List; - - -public class WQLData { - - public static final String _ORIGINAL = "0"; - public static final String _INSERT = "1"; - public static final String _DELETE = "2"; - public static final String _UPDATE = "3"; - private static final String SYSCOL = "SYSCOL"; //系统预留列 - - private WQLObject wo; - - private String tbname; //表名(wqlobject名) - private HashMap> coldata; //按列存储的数据 - private ArrayList cols; //表定义字段列表 - - - - private int currentPage = 1; //当前页 - private int currentPos; //当前记录号 - private int totalCount; //总记录数 - private int rowCount; //当前数据集记录数 - private int colCount; //字段数 - - private int MAX_SIZE = 1000000; //数据集最大记录数 - - private void init(){ - this.tbname = ""; - this.coldata = new HashMap>(); - this.cols = new ArrayList(); - } - /** - * 默认构造函数 - */ - public WQLData() { - this.init(); - this.coldata.put(SYSCOL, new ArrayList()); - } - - /** - * 通过WQL结果集构造WQLData对象 - * @param list - * @throws Exception - */ - public WQLData(ArrayList list) throws Exception { - this.init(); - - if(list.size()>0){ - BasicDynaBean row = list.get(0); - DynaProperty[] props = row.getDynaClass().getDynaProperties(); - - this.colCount = props.length; - ArrayList[] values = new ArrayList[this.colCount + 1]; - for (int i = 0; i <= this.colCount; i++) { - values[i] = new ArrayList(); - } - //添加系统默认字段 - this.cols.add(new WQLDataField(SYSCOL)); - this.coldata.put(SYSCOL, values[0]); - //添加结果集字段 - for (int i = 1; i <= props.length; i++) { - DynaProperty prop = props[i-1]; - - String name = prop.getName().toUpperCase(); - this.cols.add(new WQLDataField(name)); - this.coldata.put(name, values[i]); - } - - } - - populate(list); - } - - - - /** - * 通过WQLObject构造对象 - * @param wo - * @throws Exception - */ - public WQLData(WQLObject wo){ - this.init(); - - this.wo = wo; - this.colCount = this.wo.getFields().size(); - ArrayList[] values = new ArrayList[this.colCount + 1]; - this.tbname = this.wo.getTbname(); - - for (int i = 0; i <= this.colCount; i++) { - values[i] = new ArrayList(); - } - - this.cols.add(new WQLDataField(SYSCOL)); - this.coldata.put(SYSCOL, values[0]); - for (int i = 1; i <= this.colCount; i++) { - WQLDataField xlsr = this.wo.getFields().get(i-1); - String name = xlsr.getEnname().toUpperCase(); - this.cols.add(xlsr); - this.coldata.put(name,values[i]); - } - - this.rowCount = 0; - this.currentPos = -1; - } - - public void populate(ArrayList list) throws Exception{ - String name = ""; - try { - int size = 0; - for(int j=0;j this.MAX_SIZE) { - break;//超过dataset最大记录数则终止 - } - } - - this.rowCount = size; - - if (this.totalCount == 0) - this.totalCount = size; - }catch (Exception e) { - throw new Exception(e.getMessage()); - } - } - - - public String getTbname() { - return tbname; - } - - public void setTbname(String tbname) { - this.tbname = tbname; - } - - public HashMap> getColdata() { - return coldata; - } - - public void setColdata(HashMap> coldata) { - this.coldata = coldata; - } - public ArrayList getCols() { - return cols; - } - public void setCols(ArrayList cols) { - this.cols = cols; - } - public int getCurrentPage() { - return currentPage; - } - public void setCurrentPage(int currentPage) { - this.currentPage = currentPage; - } - public int getCurrentPos() { - return currentPos; - } - public void setCurrentPos(int currentPos) { - this.currentPos = currentPos; - } - - - /** - * 清空数据集记录 - */ - public void clear(){ - if (this.rowCount> 0) { - //按字段循环清空字段值 - for (int i = 0; i <= this.colCount; i++){ - String columnName = this.cols.get(i).getEnname(); - ArrayList currentCol = (ArrayList)this.coldata.get(columnName); - currentCol.clear(); - } - } - this.rowCount = 0; - this.currentPos = -1; - } - - /** - * - */ - public void first(){ - this.currentPos = -1; - } - - /** - * 上一个行记录 - * @return - */ - public boolean previous(){ - if (this.currentPos > 0){ - this.currentPos -= 1; - return true; - } - return false; - } - - /** - * 下一个行记录 - * @return - */ - public boolean next(){ - if (this.currentPos < this.rowCount - 1){ - this.currentPos += 1; - return true; - } - return false; - } - - /** - * 最后一个行记录 - */ - public void last(){ - this.currentPos = this.rowCount; - } - - /** - * 按字段号设置当前记录字段值 - * @param columnNumber - * @param value - * @throws Exception - */ - public void setValue(int columnNumber, String value) { - if (existColumnValue(columnNumber)) - setValue(getColumnName(columnNumber), value); - } - - /** - * 按字段名设置当前记录字段值 - * @param columnName - * @param value - * @throws Exception - */ - public void setValue(String columnName, String value) { - //System.out.println("DataSet.setValue("+columnName+","+value+")"); - columnName = columnName.toUpperCase(); - if (existColumnValue(columnName)){ -// setColumnEdited(columnName); - - ArrayList currentrow = (ArrayList)this.coldata.get(columnName); - currentrow.set(this.currentPos, value); - - //当dataset已经关联了bc,则触发字段值变化事件 - } - } - /** - * 按字段名取当前记录字段值 - * @param columnName - * @return - * @throws Exception - */ - public String getValue(String columnName) { - String result = ""; - columnName = columnName.toUpperCase(); - if (existColumnValue(columnName)) { - ArrayList currentrow = (ArrayList)this.coldata.get(columnName); - result = (String)currentrow.get(this.currentPos); - if ((result == null) || (result.equalsIgnoreCase("NULL"))){ - result = ""; - } - } - return result; - } - - /** - * 按字段号取当前记录字段值 - * @param columnNumber - * @return - * @throws Exception - */ - public String getValue(int columnNumber) throws Exception{ - String result = null; - if (existColumnValue(columnNumber)) { - result = getValue(getColumnName(columnNumber)); - } - return result; - } - - /** - * 取指定列所有数据 - * @param columnName - * @return - */ - public ArrayList getValues(String columnName) { - columnName = columnName.toUpperCase(); - return this.coldata.get(columnName); - } - - /** - * 取指定列新增标志数据 - * @param columnName - * @return - */ - public ArrayList getInsertMarkValues(String columnName) { - columnName = columnName.toUpperCase(); - ArrayList data = new ArrayList(); - ArrayList valdata = this.coldata.get(columnName); - ArrayList sysdata = this.coldata.get(SYSCOL); - if(valdata!=null){ - for(int i=0;i data = new ArrayList(); - ArrayList valdata = this.coldata.get(columnName); - ArrayList sysdata = this.coldata.get(SYSCOL); - if(valdata!=null){ - for(int i=0;i data = new ArrayList(); - ArrayList valdata = this.coldata.get(columnName); - ArrayList sysdata = this.coldata.get(SYSCOL); - if(valdata!=null){ - for(int i=0;i this.rowCount - 1)){ - throw new WDKException("当前行" + this.currentPos + "超过最大值" + (this.rowCount - 1) + "或小于0"); - } - result = true; - - return result; - } - - private boolean existColumnValue(int columnNumber) { - boolean result = false; - if ((columnNumber < 1) || (columnNumber > this.colCount)) - { - throw new WDKException("列序号" + columnNumber + "超过最大值" + this.colCount); - } - - result = true; - - return result; - } - - - /** - * 根据字段号取字段名 - * @param columnNumber - * @return - */ - public String getColumnName(int columnNumber){ - String result = null; - result = this.cols.get(columnNumber).getEnname(); - return result; - } - - /** - * 取数据集中的字段名列表 - * @return - */ - public List getColumnNames(){ - List keyList = new ArrayList(); - for(int i=0;i sysdata = this.coldata.get(SYSCOL); - if(sysdata!=null){ - for(int i=0;i sysdata = this.coldata.get(SYSCOL); - if(sysdata!=null){ - for(int i=0;i sysdata = this.coldata.get(SYSCOL); - if(sysdata!=null){ - for(int i=0;i= this.rowCount)) { - throw new Exception("当前行" + this.currentPos + "超过最大值" + (this.rowCount - 1) + "或小于0"); - } - ArrayList markInfos = (ArrayList)this.coldata.get(SYSCOL); - markInfos.remove(this.currentPos); - markInfos.add(this.currentPos, _INSERT); - } - - /** - * 设置当前行更新标记 - * @throws Exception - */ - public void setUpdateMark() throws Exception{ - if ((this.currentPos < 0) && (this.currentPos >= this.rowCount)) { - throw new Exception("当前行" + this.currentPos + "超过最大值" + (this.rowCount - 1) + "或小于0"); - } - ArrayList markInfos = (ArrayList)this.coldata.get(SYSCOL); - markInfos.remove(this.currentPos); - markInfos.add(this.currentPos, _UPDATE); - } - - /** - * 设置当前行删除标记 - * @throws Exception - */ - public void setDeleteMark() throws Exception{ - if ((this.currentPos < 0) && (this.currentPos >= this.rowCount)) { - throw new Exception("当前行" + this.currentPos + "超过最大值" + (this.rowCount - 1) + "或小于0"); - } - ArrayList markInfos = (ArrayList)this.coldata.get(SYSCOL); - markInfos.remove(this.currentPos); - markInfos.add(this.currentPos, _DELETE); - } - - - /** - * 取当前记录的维护标记 - * @return - */ - public String getMark(){ - String result = null; - ArrayList markInfos = (ArrayList)this.coldata.get(SYSCOL); - result = (String) markInfos.get(this.currentPos); - return result; - } - - public ArrayList getPrimaryKeys(){ - ArrayList keys = new ArrayList(); - for(int i=0;i-1){ - keys.add(xstr.getEnname().toLowerCase()); - } - } - return keys; - } - - public boolean locate(WQLData wd) throws Exception { - boolean result = false; - first(); - ArrayList keys = this.getPrimaryKeys(); - int keySize = keys.size(); - while (next()) { - if (_INSERT.equalsIgnoreCase(getMark())) - continue; - boolean flag = true; - for (int i = 0; i < keySize; i++) { - String keyName = (String)keys.get(i); - String value = getValue(keyName); - - if ((value == null) || (!value.equalsIgnoreCase(wd.getValue(keyName)))) { - flag = false; - } - } - - if (flag) { - result = true; - break; - } - } - return result; - } - - /** - * 编辑记录 - * 设置当前记录为更新标志 - * @throws Exception - */ - public void edit() throws Exception{ - setUpdateMark(); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLDataField.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLDataField.java deleted file mode 100644 index 9881b69..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLDataField.java +++ /dev/null @@ -1,134 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import java.io.Serializable; - -public class WQLDataField implements Serializable,Cloneable{ - /** - * - */ - private static final long serialVersionUID = 5982206188215872714L; - private String cnname; //字段中文名称 - private String enname; //字段英文名称 - private String param; //字段属性 - private String type; //字段类型 - private String len; //字段长度 - private String isnull; //允许空 - private String defaultvalue; //默认值 - private String desc; //字段描述 - private String module; //代码模型 - private boolean expand = false; //是否通过代码模型扩展的字段 - private String sourcefield; //被转换的源字段 - private String namefield; //代码模型对应转换字段 - private String tablealias; //字段所属表别名 - - public WQLDataField() { - // TODO Auto-generated constructor stub - } - public WQLDataField(XLSTableRow col) { - if(col!=null){ - this.cnname = col.getCnname(); - this.enname = col.getEnname(); - this.param = col.getParam(); - this.type = col.getType(); - this.len = col.getLen(); - this.isnull = col.getIsnull(); - this.defaultvalue = col.getDefaultvalue(); - this.desc = col.getDesc(); - this.expand = false; - } - } - - public WQLDataField(String enname) { - this.enname = enname; - } - public String getCnname() { - return cnname; - } - public void setCnname(String cnname) { - this.cnname = cnname; - } - public String getEnname() { - return enname; - } - public void setEnname(String enname) { - this.enname = enname; - } - public String getParam() { - return param; - } - public void setParam(String param) { - this.param = param; - } - public String getType() { - return type; - } - public void setType(String type) { - this.type = type; - } - public String getLen() { - return len; - } - public void setLen(String len) { - this.len = len; - } - public String getIsnull() { - return isnull; - } - public void setIsnull(String isnull) { - this.isnull = isnull; - } - public String getDefaultvalue() { - return defaultvalue; - } - public void setDefaultvalue(String defaultvalue) { - this.defaultvalue = defaultvalue; - } - public String getDesc() { - return desc; - } - public void setDesc(String desc) { - this.desc = desc; - } - - public String getModule() { - return module; - } - public void setModule(String module) { - this.module = module; - } - public boolean isExpand() { - return expand; - } - public void setExpand(boolean expand) { - this.expand = expand; - } - public String getSourcefield() { - return sourcefield; - } - public void setSourcefield(String sourcefield) { - this.sourcefield = sourcefield; - } - public String getNamefield() { - return namefield; - } - public void setNamefield(String namefield) { - this.namefield = namefield; - } - - public String getTablealias() { - return tablealias; - } - public void setTablealias(String tablealias) { - this.tablealias = tablealias; - } - /* - * 是否使用join关联查询字段(为false时在中间层做key-value转换) - */ - public boolean isJoinfield() { - WQLModule mb = WQLModule.getWQLModule(this.getModule()); - return mb.canJoin(); - } - - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLJava.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLJava.java deleted file mode 100644 index 63a111a..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLJava.java +++ /dev/null @@ -1,10 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import org.nl.modules.wql.core.engine.object.WO; - -import java.util.HashMap; - - -public abstract class WQLJava { - abstract public HashMap process(WO wo, HashMap inMap); -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModule.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModule.java deleted file mode 100644 index 5b279c3..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModule.java +++ /dev/null @@ -1,709 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQL; -import org.nl.modules.wql.WQLCore; - -import java.io.Serializable; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; - -/** - * 代码模型配置 - * @author Administrator - * - */ -@Slf4j -public class WQLModule implements Serializable,Cloneable{ - /** - * - */ - private static final long serialVersionUID = 4010592182384786616L; - - - private String modulecode; //模型编码 - private String modulename; //模型名称 - private String datatype; //数据类型 table-表 wql-动态查询 - private String datasource; //数据源 - private String valuefield; //value字段 - private String namefield; //name字段 - private String filter; //过滤条件 - private String orderby; //排序条件 - private String usecache; //是否使用缓存 0-不使用 1-使用 - - /** - * 读取指定的WQLModule - * @param modulecode - * @return - */ - public static WQLModule getWQLModule(String modulecode){ - modulecode = modulecode.toUpperCase(); - if(WQLCore.moduleMap.containsKey(modulecode)){ - return WQLCore.moduleMap.get(modulecode); - }else{ - log.error("【WQL】-【WQLModule】:代码模型["+modulecode+"]不存在!"); - return null; - } - } - - /** - * - * @return - */ - public static HashMap getWQLModuleMap(){ - return WQLCore.moduleMap; - } - - /** - * 代码模型缓存刷新 - */ - public void reload() throws Exception{ - try{ - if("1".equals(usecache)){ - //使用缓存才需要刷新数据 - WQLCore.bufferModuleData.remove(modulecode.toUpperCase()); - query(""); - } - }catch (Exception e) { - throw e; - } - } - /** - * 执行代码模型查询 - * @param condition - * @return - */ - public ArrayList query(String condition){ - ArrayList list = new ArrayList(); - if("table".equalsIgnoreCase(this.datatype)){ - list = new TableProvider(this).query(condition); - }else if("wql".equalsIgnoreCase(this.datatype)){ - list = new WQLProvider(this).query(condition); - } - return list; - } - - /** - * id值转name值 - * @param id - * @return - */ - public String id2name(String id){ - return id2name(id, this.namefield); - } - - /** - * id值转指定字段值 - * @param id - * @param namefield - * @return - */ - public String id2name(String id,String namefield){ - String result = id; - if("table".equalsIgnoreCase(this.datatype)){ - result = new TableProvider(this).getName(id,namefield); - }else if("wql".equalsIgnoreCase(this.datatype)){ - result = new WQLProvider(this).getName(id,namefield); - } - return result; - } - - /** - * name值转id值 - * @param value - * @return - */ - public List name2id(String value){ - List result = new ArrayList(); - if("table".equalsIgnoreCase(this.datatype)){ - result = new TableProvider(this).getID(value); - }else if("wql".equalsIgnoreCase(this.datatype)){ - result = new WQLProvider(this).getID(value); - } - return result; - } - - /** - * 扩展按代码模型扩展JSONArray字段 - * @param jrows 要扩展的JSONArray - * @param keyColname JSONArray中id值所在列名称 - * @param namefield 代码模型对应值列名称,为空时按代码模型namefield值扩展 - * @param showColname 扩展出的列名称,当为空时默认为namefield - * @return - */ - public JSONArray filter(JSONArray jrows,String keyColname,String namefield,String showColname){ - //ArrayList jbuffers = query("",conb); - //if(null==jbuffers||0==jbuffers.size()||jrows==null){ - // return jrows; - //} - - if(null==namefield||"".equals(namefield)){ - namefield = this.namefield; - } - - for(int i=0;i data = jbuffer.getRow(); -// String tbKey = jbuffer.getValue();//代码模型中的值 -// if(key.equals(tbKey)){ -// tbValue = data.containsKey(namefield.toLowerCase())?data.get(namefield.toLowerCase()):""; -// break; -// } -// } - if(null!=showColname&&!"".equals(showColname)){ - jrow.put(showColname, tbValue); - }else{ - jrow.put(namefield, tbValue); - } - } - return jrows; - } - - /** - * 代码模式是否可用join关联查询处理 - * @return - */ - public boolean canJoin(){ - if("0".equals(this.usecache) && !"wql".equalsIgnoreCase(this.datatype)){ - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - return true; - }else{ - return false; - } - } - - - /** - * 基于表的查询 - * @author Administrator - * - */ - class TableProvider{ - private WQLModule wm; - - public TableProvider(WQLModule wm) { - this.wm = wm; - } - - /** - * 查询代码数据 - * @return 成功返回ArrayList,失败返回null - */ - private ArrayList loadData(String condition){ - ArrayList ls = null; - try{ - WQLObject wqlObject = WQLObject.getWQLObject(wm.getDatasource()); - if(wqlObject!=null){ - //模型查询条件 - StringBuffer sb = new StringBuffer(); - if(!"".equals(wm.getFilter().trim())){ - sb.append(wm.getFilter()); - } - //外传的查询条件 - if(condition==null) condition = ""; - if(!"".equals(condition.trim())){ - if(sb.length() > 0) sb.append(" AND "); - sb.append(condition); - } - ResultBean resultBean = wqlObject.query(sb.toString(), wm.getOrderby()); - if(resultBean.isSuccess()){ - JSONArray jrows =resultBean.getResultJSONArray(0); - ls = new ArrayList(); - for(int i=0;i query(String condition){ - ArrayList ls = new ArrayList(); - - try{ - ArrayList data = null; - if("1".equals(wm.getUsecache())){ - //使用缓存 - if(!"".equals(condition.trim())){ - //带条件时不使用缓存中的数据,直接查询 - data = loadData(condition); - }else{ - //不带条件,使用缓存中的数据,如果没数据,则直接查询 - if(WQLCore.bufferModuleData.containsKey(wm.getModulecode().toUpperCase())){ - data = WQLCore.bufferModuleData.get(wm.getModulecode().toUpperCase()); - }else{ - data = loadData(condition); - //保存到缓存 - if(data!=null){ - //使用缓存 - WQLCore.bufferModuleData.put(wm.getModulecode().toUpperCase(), data); - } - } - } - }else{ - //不使用缓存 - data = loadData(condition); - } - - if(data!=null){ - ls= data; - } - - }catch (Exception e) { - log.error("代码模型["+wm.getModulecode()+"]数据查询错误:"+e.getMessage()); - e.printStackTrace(); - } - -// //1、拼sql -// ArrayList cols = WQLCore.tableMap.get(wm.getDatasource()); -// StringBuffer sql = new StringBuffer(); -// sql.append("select "); -// for(int i=0;i 0)){ - //处理id值串 - String[] ids = id.split(","); - ArrayList data = null; - StringBuffer condition = new StringBuffer(); - if(ids.length==1){ - condition.append(wm.getValuefield()).append("='").append(id).append("'"); - }else{ - StringBuffer idstr = new StringBuffer(); - for(int i=0;i0) idstr.append(","); - idstr.append("'").append(ids[i]).append("'"); - } - condition.append(wm.getValuefield()).append(" in (").append(idstr).append(")"); - } - - if("1".equals(wm.getUsecache())){ - //使用缓存 - data = query(""); - }else{ - //不使用缓存 - data = query(condition.toString()); - } - if(data!=null){ - StringBuffer namestr = new StringBuffer(); - for(int i=0;i jrow = data.get(j).getRow(); - if(name.equals(jrow.get(wm.getValuefield().toLowerCase()))){ - name = jrow.get(namefield.toLowerCase()); - break; - } - } - if(i>0) namestr.append(","); - namestr.append(name); - } - result = namestr.toString(); - }else{ - log.debug("代码模型["+wm.getModulecode()+"]内容为NULL"); - } - } -// log.debug("代码模型["+wm.getModulecode()+"]id("+wm.getValuefield()+")转name("+namefield+"):"+id+"->"+result); - }catch (Exception e) { - log.error("代码模型["+wm.getModulecode()+"]id("+wm.getValuefield()+")转name("+namefield+")错误:"+e.getMessage()); - e.printStackTrace(); - } - return result; - } - - public List getID(String value){ - List result = new ArrayList(); - try{ - if ((value != null) && (value.length() > 0)){ - //处理value值串 - String[] values = value.split(","); - - ArrayList data = null; - StringBuffer condition = new StringBuffer(); - if(values.length==1){ - condition.append(wm.getNamefield()).append("='").append(value).append("'"); - }else{ - StringBuffer idstr = new StringBuffer(); - for(int i=0;i0) idstr.append(","); - idstr.append("'").append(values[i]).append("'"); - } - condition.append(wm.getNamefield()).append(" in (").append(idstr).append(")"); - } - - if("1".equals(wm.getUsecache())){ - //使用缓存 - data = query(""); - }else{ - //不使用缓存 - data = query(condition.toString()); - } - - if(data!=null){ - for(int i=0;i jrow = data.get(j).getRow(); - if(name.equals(jrow.get(wm.getNamefield().toLowerCase()))){ - result.add(jrow.get(wm.getValuefield().toLowerCase())); - } - } - } - }else{ - log.debug("代码模型["+wm.getModulecode()+"]内容为NULL"); - } - } - }catch (Exception e) { - log.error(e.getMessage()); - e.printStackTrace(); - } - return result; - } - } - /** - * WQL的代码模型查询 - * @author Administrator - * - */ - class WQLProvider{ - private WQLModule wm; - - public WQLProvider(WQLModule wm) { - this.wm = wm; - - } - - /** - * 查询代码数据 - * @return 成功返回ArrayList,失败返回null - */ - private ArrayList loadData(String condition){ - ArrayList ls = null; - try{ - ResultBean resultBean = WQL.getWO(this.wm.getDatasource()) - .addParam("whereclause", this.wm.getFilter()) - .addParam("orderby", this.wm.getOrderby()) - .addParam("condition", condition) - .process(); - - if(resultBean.isSuccess()){ - JSONArray jrows = resultBean.getResultJSONArray(0); - ls = new ArrayList(); - for(int i=0;i query(String condition){ - ArrayList ls = new ArrayList(); - - try{ - ArrayList data = null; - if("1".equals(wm.getUsecache())){ - //使用缓存 - if(!"".equals(condition.trim())){ - //带条件时不使用缓存中的数据,直接查询 - data = loadData(condition); - }else{ - //不带条件,使用缓存中的数据,如果没数据,则直接查询 - if(WQLCore.bufferModuleData.containsKey(wm.getModulecode().toUpperCase())){ - data = WQLCore.bufferModuleData.get(wm.getModulecode().toUpperCase()); - }else{ - data = loadData(condition); - //保存到缓存 - if(data!=null){ - //使用缓存 - WQLCore.bufferModuleData.put(wm.getModulecode().toUpperCase(), data); - } - } - } - }else{ - //不使用缓存 - data = loadData(condition); - } - - if(data!=null){ - ls= data; - } - - }catch (Exception e) { - log.error("代码模型["+wm.getModulecode()+"]数据查询错误:"+e.getMessage()); - e.printStackTrace(); - } - - return ls; - } - - public String getName(String id,String namefield){ - String result = id;//默认值直接取id - try{ - if("".equals(namefield.trim())){ - namefield = wm.getNamefield(); - } - if ((id != null) && (id.length() > 0)){ - //处理id值串 - String[] ids = id.split(","); - ArrayList data = null; - StringBuffer condition = new StringBuffer(); - if(ids.length==1){ - condition.append(wm.getValuefield()).append("='").append(id).append("'"); - }else{ - StringBuffer idstr = new StringBuffer(); - for(int i=0;i0) idstr.append(","); - idstr.append("'").append(ids[i]).append("'"); - } - condition.append(wm.getValuefield()).append(" in (").append(idstr).append(")"); - } - - if("1".equals(wm.getUsecache())){ - //使用缓存 - data = query(""); - }else{ - //不使用缓存 - data = query(condition.toString()); - } - if(data!=null){ - StringBuffer namestr = new StringBuffer(); - for(int i=0;i jrow = data.get(j).getRow(); - if(name.equals(jrow.get(wm.getValuefield().toLowerCase()))){ - name = jrow.get(namefield.toLowerCase()); - break; - } - } - if(i>0) namestr.append(","); - namestr.append(name); - } - result = namestr.toString(); - }else{ - log.debug("代码模型["+wm.getModulecode()+"]内容为NULL"); - } - } -// log.debug("代码模型["+wm.getModulecode()+"]id("+wm.getValuefield()+")转name("+namefield+"):"+id+"->"+result); - }catch (Exception e) { - log.error("代码模型["+wm.getModulecode()+"]id("+wm.getValuefield()+")转name("+namefield+")错误:"+e.getMessage()); - e.printStackTrace(); - } - return result; - } - - public List getID(String value){ - List result = new ArrayList(); - try{ - if ((value != null) && (value.length() > 0)){ - //处理value值串 - String[] values = value.split(","); - - ArrayList data = null; - StringBuffer condition = new StringBuffer(); - if(values.length==1){ - condition.append(wm.getNamefield()).append("='").append(value).append("'"); - }else{ - StringBuffer idstr = new StringBuffer(); - for(int i=0;i0) idstr.append(","); - idstr.append("'").append(values[i]).append("'"); - } - condition.append(wm.getNamefield()).append(" in (").append(idstr).append(")"); - } - - if("1".equals(wm.getUsecache())){ - //使用缓存 - data = query(""); - }else{ - //不使用缓存 - data = query(condition.toString()); - } - - if(data!=null){ - for(int i=0;i jrow = data.get(j).getRow(); - if(name.equals(jrow.get(wm.getNamefield().toLowerCase()))){ - result.add(jrow.get(wm.getValuefield().toLowerCase())); - } - } - } - }else{ - log.debug("代码模型["+wm.getModulecode()+"]内容为NULL"); - } - } - }catch (Exception e) { - log.error(e.getMessage()); - e.printStackTrace(); - } - return result; - } - } - /////////////////////////// - /// 属性设置方法 - /////////////////////////// - public String getModulecode() { - return modulecode; - } - public void setModulecode(String modulecode) { - this.modulecode = modulecode; - } - public String getModulename() { - return modulename; - } - public void setModulename(String modulename) { - this.modulename = modulename; - } - public String getDatatype() { - return datatype; - } - public void setDatatype(String datatype) { - this.datatype = datatype; - } - public String getDatasource() { - return datasource; - } - public void setDatasource(String datasource) { - this.datasource = datasource; - } - public String getValuefield() { - return valuefield; - } - public void setValuefield(String valuefield) { - this.valuefield = valuefield.toLowerCase(); - } - public String getNamefield() { - return namefield; - } - public void setNamefield(String namefield) { - this.namefield = namefield.toLowerCase(); - } - public String getFilter() { - return filter; - } - public void setFilter(String filter) { - this.filter = filter; - } - public String getOrderby() { - return orderby; - } - public void setOrderby(String orderby) { - this.orderby = orderby; - } - public String getUsecache() { - return usecache; - } - public void setUsecache(String usecache) { - this.usecache = usecache; - } - - public JSONObject toJSON(){ - JSONObject obj = new JSONObject(); - obj.put("modulecode", modulecode); - obj.put("modulename", modulename); - obj.put("datatype", datatype); - obj.put("datasource", datasource); - obj.put("valuefield", valuefield); - obj.put("namefield", namefield); - obj.put("filter", filter); - obj.put("orderby", orderby); - obj.put("usecache", usecache); - return obj; - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModuleBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModuleBean.java deleted file mode 100644 index df36fab..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLModuleBean.java +++ /dev/null @@ -1,73 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import com.alibaba.fastjson.JSONObject; - -import java.io.Serializable; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Set; - -public class WQLModuleBean implements Serializable,Cloneable{ - private static final long serialVersionUID = -4904971925227083952L; - private String name; - private String value; - private HashMap data; - - public WQLModuleBean() { - this.data = new HashMap(); - } - public void setRow(JSONObject jrow){ - Set keyset = jrow.keySet(); - for(Iterator it = keyset.iterator();it.hasNext();){ - String key = it.next(); - String value = jrow.getString(key); - this.data.put(key, value); - } - } - public HashMap getRow(){ - return data; - } - - public HashMap toMap() { - // TODO Auto-generated method stub - return null; - } - - public JSONObject toJSON() { - // TODO Auto-generated method stub - JSONObject jo = new JSONObject(); - for(Iterator it = data.keySet().iterator();it.hasNext();){ - String key = it.next(); - String value = data.get(key); - jo.put(key, value); - } - return jo; - } - - public void parseMap(HashMap map) { - // TODO Auto-generated method stub - - } - - public void parseJSON(JSONObject jo) { - // TODO Auto-generated method stub - - } - - ///////////////////// - // set and get - ///////////////// - public String getName() { - return name; - } - public void setName(String name) { - this.name = name; - } - public String getValue() { - return value; - } - public void setValue(String value) { - this.value = value; - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObject.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObject.java deleted file mode 100644 index 32a23d9..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObject.java +++ /dev/null @@ -1,2089 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.beanutils.BasicDynaBean; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.content.BaseContext; -import org.nl.modules.wql.core.engine.WQLFun; -import org.nl.modules.wql.core.engine.object.WO; -import org.nl.modules.wql.exception.WDKException; -import org.nl.modules.wql.util.WqlUtil; - -import java.io.Serializable; -import java.util.*; -import java.util.Map.Entry; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -@Slf4j -public class WQLObject implements Serializable, Cloneable { - /** - * - */ - private static final long serialVersionUID = 3512111887957792224L; - - - private String dbname = "dataSource"; //指定使用的数据库 - - public WQLObject setDbname(String dbname) { - this.dbname = dbname; - return this; - } - - private static String tbalias = "T0"; //表别名 - private String tbname; //表名 - private List cols; //所有xls字段定义 - private List fields = new ArrayList(); //所有输出字段定义Map - private Map fieldMap = new HashMap(); //所有输出字段定义 - private Map> joinMap = new HashMap>(); //使用到JOIN表Map - private Set activeFieldSet = new HashSet(); //查询结果输出时激活的字段,即输出的字段 - private String idx_name = ""; - private String hint_type = ""; //hint类型: 空-无hint master-主表 slave-从表 - private WO wo; - - public WQLObject(String tbname, ArrayList cols) { - this.tbname = tbname; - this.cols = cols; - this.fields.clear(); - this.fieldMap.clear(); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow col = this.cols.get(i); - WQLDataField row = new WQLDataField(col); - row.setTablealias(tbalias); - this.fieldMap.put(col.getEnname().toUpperCase(), row); - this.fields.add(row); - - //设置了解析代码 - if (!"".equals(col.getModule().trim())) { - //解析“代码解析”字段 - //====== 格式 ==== - // 代码模型名[字段 as 别名,字段 as 别名];代码模型名[字段 as 别名,字段 as 别名] - // - // - List> extFields = expandField(col); - for (int j = 0; j < extFields.size(); j++) { - HashMap map = extFields.get(j); - - WQLDataField extrow = new WQLDataField(); - extrow.setExpand(true); //扩展字段 - extrow.setEnname(map.get("enname").toString()); //扩展字段英文名 - extrow.setCnname(map.get("cnname").toString()); //扩展字段中文名 - extrow.setModule(map.get("module").toString()); //代码模型 - extrow.setSourcefield(col.getEnname()); //源字段名 - extrow.setNamefield(map.get("namefield").toString()); //代码模型解析字段名 - extrow.setTablealias(map.get("tablealias").toString()); //字段所属表别名 - - this.fieldMap.put(extrow.getEnname().toUpperCase(), extrow); - this.fields.add(extrow); - } - } - } - } - - /** - * 扩展字段 - * - * @param col - * @return - */ - private List> expandField(XLSTableRow col) { - int extcount = 0; - String jointablealias = ""; - ArrayList> list = new ArrayList>(); - String regEx = "\\[.*\\]"; - String[] Modules = col.getModule().toUpperCase().split(";"); - for (int j = 0; j < Modules.length; j++) { - String Module = Modules[j].trim(); - //取[]内的内容 - String ext = ""; - Pattern p = Pattern.compile(regEx); - Matcher m = p.matcher(Module); - if (m.find()) { - //代码模型后带了字段名内容 - ext = m.group(0).replaceAll("\\[", "").replaceAll("\\]", "").trim(); - Module = Module.replaceAll(regEx, "").trim(); - WQLModule mb = WQLModule.getWQLModule(Module); - if (mb != null) { - if ("".equals(ext)) { - //未设置字段,默认 - jointablealias = "T" + (joinMap.size() + 1); - - Map mbMap = new HashMap(); - mbMap.put("sourcefield", col.getEnname()); //源字段 - mbMap.put("mb", mb); //代码模型 - joinMap.put(jointablealias, mbMap); - - HashMap map = new HashMap(); - map.put("mb", mb); - map.put("module", Module);//代码模型 - map.put("namefield", mb.getNamefield()); - map.put("enname", col.getEnname() + "NAME"); - map.put("cnname", col.getCnname() + "值"); - map.put("tablealias", jointablealias); - - list.add(map); - } else { - //分析字段名 - jointablealias = "T" + (joinMap.size() + 1); - - Map mbMap = new HashMap(); - mbMap.put("sourcefield", col.getEnname()); //源字段 - mbMap.put("mb", mb); //代码模型 - joinMap.put(jointablealias, mbMap); - - String[] fields = ext.split(","); - for (int k = 0; k < fields.length; k++) { - String field = fields[k].trim(); - if (!"".equals(field)) { - String[] names = field.split("\\s+AS\\s+");//按" as "分割 - if (names.length == 1) { - //未设置别名 - extcount++; - HashMap map = new HashMap(); - map.put("mb", mb); - map.put("module", Module);//代码模型 - map.put("namefield", mb.getNamefield()); - map.put("enname", names[0].trim()); - map.put("cnname", col.getCnname() + "_扩展" + extcount); - map.put("tablealias", jointablealias); - - list.add(map); - } else { - //设置别名 - HashMap map = new HashMap(); - map.put("mb", mb); - map.put("module", Module);//代码模型 - map.put("namefield", names[0].trim()); - map.put("enname", names[1].trim()); - map.put("cnname", col.getCnname() + "_扩展" + extcount); - map.put("tablealias", jointablealias); - - list.add(map); - } - } - } - } - } else { - log.error("数据表【" + tbname + "】字段【" + col.getEnname() + "】设置的解析代码【" + Module + "】不存在!"); - } - } else { - //代码模型后没有带字段名内容 - WQLModule mb = WQLModule.getWQLModule(Module); - if (mb != null) { - jointablealias = "T" + (joinMap.size() + 1); - - Map mbMap = new HashMap(); - mbMap.put("sourcefield", col.getEnname()); //源字段 - mbMap.put("mb", mb); //代码模型 - joinMap.put(jointablealias, mbMap); - - HashMap map = new HashMap(); - map.put("mb", mb); - map.put("module", Module);//代码模型 - map.put("namefield", mb.getNamefield()); - map.put("enname", col.getEnname() + "NAME"); - map.put("cnname", col.getCnname() + "值"); - map.put("tablealias", jointablealias); - - list.add(map); - } else { - log.error("数据表【" + tbname + "】字段【" + col.getEnname() + "】设置的解析代码【" + Module + "】不存在!"); - } - } - } - return list; - } - - - public ArrayList makeQuery(String whereClause, String[] whereArgs, String orderby, ArrayList whereArgNames) throws WDKException { - //处理查询条件 - if (whereArgNames == null) whereArgNames = new ArrayList(); - String transwhereClause = transWhereclauseSQL(whereClause, true, whereArgNames); - if (whereArgNames.size() > (whereArgs == null ? 0 : whereArgs.length)) { - log.error("查询条件参数值不足!"); - log.error("查询条件:" + whereClause); - throw new WDKException("查询条件参数值不足,查询条件:" + whereClause + ",条件值:" + (whereArgs == null ? "[]" : whereArgs.toString())); - } - //构造查询WQL - return this.makeQuery(transwhereClause, whereArgNames, transOrderbySQL(orderby, true)); - } - - /** - * 构造查询 - * 输入参数: - * 输入.whereclause - * 输入.orderby - * - * @return - */ - private ArrayList makeQuery(String whereClause, ArrayList whereArgNames, String orderby) { - ArrayList ls = new ArrayList(); - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - //ls.add(" 输入.whereclause TYPEAS f_string"); - //ls.add(" 输入.orderby TYPEAS f_string"); - for (int i = 0; i < whereArgNames.size(); i++) { - ls.add(" 输入." + whereArgNames.get(i) + " TYPEAS s_string"); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" QUERY"); - ls.add(" SELECT"); - //字段 - if (this.activeFieldSet != null && this.activeFieldSet.size() > 0) { - int i = 0; - Iterator it = this.activeFieldSet.iterator(); - while (it.hasNext()) { - String fieldname = it.next().toUpperCase(); - if (this.fieldMap.containsKey(fieldname)) { - WQLDataField field = this.fieldMap.get(fieldname); - - //if(i>0) ls.add(","); - if (field.isExpand()) { - //扩展字段 - if (field.isJoinfield()) { - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - ls.add((i > 0 ? "," : "") + field.getTablealias() + "." + field.getNamefield() + " as " + field.getEnname()); - } else { - //使用缓存或代码模型数据源为wql - //默认查询源字段值,之后在中间层做值转换 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getSourcefield() + " as " + field.getEnname()); - } - } else { - //非扩展字段 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getEnname());//字段名 - } - - i++; - } - } - } else { - for (int i = 0; i < this.fields.size(); i++) { - WQLDataField field = this.fields.get(i); - - //if(i>0) ls.add(","); - if (field.isExpand()) { - //扩展字段 - if (field.isJoinfield()) { - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - ls.add((i > 0 ? "," : "") + field.getTablealias() + "." + field.getNamefield() + " as " + field.getEnname()); - } else { - //使用缓存或代码模型数据源为wql - //默认查询源字段值,之后在中间层做值转换 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getSourcefield() + " as " + field.getEnname()); - } - } else { - //非扩展字段 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getEnname());//字段名 - } - } - } - - //基表 - ls.add(" FROM " + this.tbname + " " + tbalias); - if (this.hasIdx()) { - ls.add(this.getIdx()); - } - - //关联表 - Iterator>> it = joinMap.entrySet().iterator(); - while (it.hasNext()) { - Entry> entry = it.next(); - String alias = entry.getKey(); - Map mbMap = entry.getValue(); - String sourcefield = (String) mbMap.get("sourcefield"); - WQLModule mb = (WQLModule) mbMap.get("mb"); - if (mb.canJoin()) { - ls.add(" LEFT JOIN " + mb.getDatasource() + " " + alias + " ON " + tbalias + "." + sourcefield + "=" + alias + "." + mb.getValuefield());//关联语句 - //代码模型本身的过滤条件 - if (!"".equals(mb.getFilter().trim())) { - WQLObject mbWO = WQLObject.getWQLObject(mb.getDatasource()); - //ls.add(" AND "); - ls.add(" AND " + mbWO.transWhereclauseSQL(mb.getFilter(), alias)); - } - } - } - //where条件 - if (!"".equals(whereClause)) { - ls.add(" WHERE " + whereClause); - } - //ls.add(" WHERE 1=1"); - //ls.add(" OPTION 输入.whereclause <> \"\""); - //ls.add(" 输入.whereclause"); - //ls.add(" ENDOPTION"); - //排序条件 - if (!"".equals(orderby)) { - ls.add(" ORDER BY " + orderby); - } - //ls.add(" ORDERBY 输入.orderby <> \"\""); - //ls.add(" 输入.orderby"); - //ls.add(" ENDORDERBY"); - - ls.add(" ENDSELECT"); - ls.add(" ENDQUERY"); - return ls; - } - - - public ArrayList makePageQuery(String whereClause, String[] whereArgs, String orderby, ArrayList whereArgNames) throws WDKException { - //处理查询条件 - if (whereArgNames == null) whereArgNames = new ArrayList(); - String transwhereClause = transWhereclauseSQL(whereClause, true, whereArgNames); - if (whereArgNames.size() > (whereArgs == null ? 0 : whereArgs.length)) { - log.error("查询条件参数值不足!"); - log.error("查询条件:" + whereClause); - throw new WDKException("查询条件参数值不足,查询条件:" + whereClause + ",条件值:" + (whereArgs == null ? "[]" : whereArgs.toString())); - } - //构造查询WQL - return this.makePageQuery(transwhereClause, whereArgNames); - } - - /** - * 构造分页查询 - * 输入参数: - * 输入.whereclause - * - * @return - */ - private ArrayList makePageQuery(String whereClause, ArrayList whereArgNames) { - ArrayList ls = new ArrayList(); - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - //ls.add(" 输入.whereclause TYPEAS f_string"); - for (int i = 0; i < whereArgNames.size(); i++) { - ls.add(" 输入." + whereArgNames.get(i) + " TYPEAS s_string"); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" PAGEQUERY"); - ls.add(" SELECT"); - //字段 - if (this.activeFieldSet != null && this.activeFieldSet.size() > 0) { - int i = 0; - Iterator it = this.activeFieldSet.iterator(); - while (it.hasNext()) { - String fieldname = it.next().toUpperCase(); - if (this.fieldMap.containsKey(fieldname)) { - WQLDataField field = this.fieldMap.get(fieldname); - - //if(i>0) ls.add(","); - if (field.isExpand()) { - //扩展字段 - if (field.isJoinfield()) { - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - ls.add((i > 0 ? "," : "") + field.getTablealias() + "." + field.getNamefield() + " as " + field.getEnname()); - } else { - //使用缓存或代码模型数据源为wql - //默认查询源字段值,之后在中间层做值转换 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getSourcefield() + " as " + field.getEnname()); - } - } else { - //非扩展字段 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getEnname());//字段名 - } - - i++; - } - } - } else { - for (int i = 0; i < this.fields.size(); i++) { - WQLDataField field = this.fields.get(i); - - //if(i>0) ls.add(","); - if (field.isExpand()) { - //扩展字段 - if (field.isJoinfield()) { - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - ls.add((i > 0 ? "," : "") + field.getTablealias() + "." + field.getNamefield() + " as " + field.getEnname()); - } else { - //使用缓存或代码模型数据源为wql - //默认查询源字段值,之后在中间层做值转换 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getSourcefield() + " as " + field.getEnname()); - } - } else { - //非扩展字段 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getEnname());//字段名 - } - } - } - //基表 - ls.add(" FROM " + this.tbname + " " + tbalias); - if (this.hasIdx()) { - ls.add(this.getIdx()); - } - //关联表 - Iterator>> it = joinMap.entrySet().iterator(); - while (it.hasNext()) { - Entry> entry = it.next(); - String alias = entry.getKey(); - Map mbMap = entry.getValue(); - String sourcefield = (String) mbMap.get("sourcefield"); - WQLModule mb = (WQLModule) mbMap.get("mb"); - if (mb.canJoin()) { - ls.add(" LEFT JOIN " + mb.getDatasource() + " " + alias + " ON " + tbalias + "." + sourcefield + "=" + alias + "." + mb.getValuefield());//关联语句 - //代码模型本身的过滤条件 - if (!"".equals(mb.getFilter().trim())) { - WQLObject mbWO = WQLObject.getWQLObject(mb.getDatasource()); - //ls.add(" AND "); - ls.add(" AND " + mbWO.transWhereclauseSQL(mb.getFilter(), alias)); - } - } - } - //where条件 - if (!"".equals(whereClause)) { - ls.add(" WHERE " + whereClause); - } - //ls.add(" WHERE 1=1"); - //ls.add(" OPTION 输入.whereclause <> \"\""); - //ls.add(" 输入.whereclause"); - //ls.add(" ENDOPTION"); - //排序条件 - //ls.add(" ORDERBY 输入.orderby <> \"\""); - //ls.add(" 输入.orderby"); - //ls.add(" ENDORDERBY"); - ls.add(" ENDSELECT"); - ls.add(" ENDPAGEQUERY"); - return ls; - } - - /** - * 构造取回查询 - * 输入参数: - * 输入.主键1 - * …… - * 输入.主键n - * - * @return - */ - private ArrayList makeRetrieve() { - - ArrayList ls = new ArrayList(); - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - ls.add(" 输入." + xstr.getEnname().toUpperCase() + " TYPEAS " + xstr.getType()); - } - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" QUERY"); - ls.add(" SELECT"); - //字段 - for (int i = 0; i < this.fields.size(); i++) { - WQLDataField field = this.fields.get(i); - - //if(i>0) ls.add(","); - if (field.isExpand()) { - //扩展字段 - if (field.isJoinfield()) { - //不使用缓存且代码模型数据源为table,直接拼接关联查询 - ls.add((i > 0 ? "," : "") + field.getTablealias() + "." + field.getNamefield() + " as " + field.getEnname()); - } else { - //使用缓存或代码模型数据源为wql - //默认查询源字段值,之后在中间层做值转换 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getSourcefield() + " as " + field.getEnname()); - } - } else { - //非扩展字段 - ls.add((i > 0 ? "," : "") + tbalias + "." + field.getEnname());//字段名 - } - } - - //基表 - ls.add(" FROM " + this.tbname + " " + tbalias); - //关联表 - Iterator>> it = joinMap.entrySet().iterator(); - while (it.hasNext()) { - Entry> entry = it.next(); - String alias = entry.getKey(); - Map mbMap = entry.getValue(); - String sourcefield = (String) mbMap.get("sourcefield"); - WQLModule mb = (WQLModule) mbMap.get("mb"); - if (mb.canJoin()) { - ls.add(" LEFT JOIN " + mb.getDatasource() + " " + alias + " ON " + tbalias + "." + sourcefield + "=" + alias + "." + mb.getValuefield());//关联语句 - //代码模型本身的过滤条件 - if (!"".equals(mb.getFilter().trim())) { - WQLObject mbWO = WQLObject.getWQLObject(mb.getDatasource()); - //ls.add(" AND "); - ls.add(" AND " + mbWO.transWhereclauseSQL(mb.getFilter(), alias)); - } - } - } - //where条件 - ls.add(" WHERE 1=1"); - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - //ls.add(" AND "+tbalias+"."); - ls.add(" AND " + tbalias + "." + xstr.getEnname() + " = 输入." + xstr.getEnname() + " "); - } - } - ls.add(" ENDSELECT"); - ls.add(" ENDQUERY"); - return ls; - } - - /** - * 构造WQLData插入 - * 输入参数: - * 输入.count - * 输入明细.字段1_ARR - * …… - * 输入明细.字段n_ARR - * - * @return - */ - private ArrayList makeWQLDataInsert() { - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - ls.add(" 输入.count TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - ls.add(" 输入明细." + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" LOOP 输入.count"); - ls.add(" INSERT INTO " + this.tbname + " ( "); - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = cols.get(i); - ls.add((i > 0 ? " ," : " ") + xstr.getEnname()); - //if(i 0 ? " ," : " ") + "输入明细." + xstr.getEnname() + "_ARR "); - //if(i makeValueMapInsert(Map values) { - int count = 0; - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - Set keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - XLSTableRow col = getCol(colname); - if (col != null) { - ls.add(" 输入." + col.getEnname().toUpperCase() + " TYPEAS " + col.getType()); - } - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" INSERT INTO " + this.tbname + " ( "); - - count = 0; - //keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - XLSTableRow col = getCol(colname); - if (col != null) { - //if(count>0) ls.add(","); - ls.add((count > 0 ? " ," : " ") + col.getEnname()); - count++; - } - } - -// for(int i=0;i it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - XLSTableRow col = getCol(colname); - if (col != null) { - //if(count>0) ls.add(","); - ls.add((count > 0 ? " ," : " ") + "输入." + col.getEnname().toUpperCase()); - count++; - } - } -// for(int i=0;i makeDelete(String whereClause, String[] whereArgs, ArrayList whereArgNames) throws WDKException { - //处理删除条件 - if (whereArgNames == null) whereArgNames = new ArrayList(); - String transwhereClause = transWhereclauseSQL(whereClause, false, whereArgNames); - if (whereArgNames.size() > (whereArgs == null ? 0 : whereArgs.length)) { - throw new WDKException("删除条件参数值不足,删除条件:" + whereClause + ",条件值:" + (whereArgs == null ? "[]" : whereArgs.toString())); - } - //构造查询WQL,并执行 - return this.makeDelete(transwhereClause, whereArgNames); - } - - /** - * 构造删除 - * 输入参数: - * 输入.whereclause - * - * @return - */ - private ArrayList makeDelete(String whereClause, ArrayList whereArgNames) { - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - //ls.add(" 输入.whereclause TYPEAS f_string"); - for (int i = 0; i < whereArgNames.size(); i++) { - ls.add(" 输入." + whereArgNames.get(i) + " TYPEAS s_string"); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" DELETE FROM " + this.tbname); - //where条件 - ls.add(" WHERE " + whereClause); - //ls.add(" WHERE 1=1"); - //ls.add(" AND 输入.whereclause"); - ls.add(" ENDDELETE"); - - return ls; - } - - /** - * 构造WQLData删除 - * 输入参数: - * 输入.count - * 输入明细.主键字段1_ARR - * …… - * 输入明细.主键字段n_ARR - * - * @return - */ - private ArrayList makeWQLDataDelete() { - int count = 0; - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - ls.add(" 输入.count TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - ls.add(" 输入明细." + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - - ls.add(" LOOP 输入.count"); - ls.add(" DELETE FROM " + this.tbname); - ls.add(" WHERE "); - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - //if(count>0) ls.add(" AND "); - ls.add((count > 0 ? " AND " : "") + xstr.getEnname() + " = 输入明细." + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" ENDDELETE"); - ls.add(" ENDLOOP"); - - return ls; - } - - - /** - * 构造WQLData更新 - * 输入参数: - * 输入.count - * 输入明细.字段1_ARR - * …… - * 输入明细.字段n_ARR - * - * @return - */ - private ArrayList makeWQLDataUpdate() { - int count = 0; - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - ls.add(" 输入.count TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - ls.add(" 输入明细." + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" LOOP 输入.count"); - ls.add(" UPDATE " + this.tbname + " SET"); - count = 0; - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (!xstr.isPrimaryKey()) { - //if(count>0) ls.add(","); - ls.add((count > 0 ? "," : "") + xstr.getEnname() + " = 输入明细." + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" WHERE "); - count = 0; - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - //if(count>0) ls.add(" AND "); - ls.add((count > 0 ? " AND " : "") + xstr.getEnname() + " = 输入明细." + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" ENDUPDATE"); - ls.add(" ENDLOOP"); - - return ls; - } - - - public ArrayList makeValueMapUpdate(Map values, String whereClause, String[] whereArgs, ArrayList whereArgNames) throws WDKException { - //处理条件 - if (whereArgNames == null) whereArgNames = new ArrayList(); - String transwhereClause = transWhereclauseSQL(whereClause, false, whereArgNames); - if (whereArgNames.size() > (whereArgs == null ? 0 : whereArgs.length)) { - throw new WDKException("更新条件参数值不足,更新条件:" + whereClause + ",条件值:" + (whereArgs == null ? "[]" : whereArgs.toString())); - } - //构造WQL,并执行 - return this.makeValueMapUpdate(values, transwhereClause, whereArgNames); - } - - /** - * 构造ValueMap更新 - * 输入参数: - * 输入.字段1 - * …… - * 输入.字段n - * 输入.whereclause - * - * @return - */ - private ArrayList makeValueMapUpdate(Map values, String whereClause, ArrayList whereArgNames) { - int count = 0; - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - Set keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - XLSTableRow col = getCol(colname); - if (col != null) { - ls.add(" 输入." + col.getEnname().toUpperCase() + " TYPEAS " + col.getType()); - } - } - //ls.add(" 输入.whereclause TYPEAS f_string"); - for (int i = 0; i < whereArgNames.size(); i++) { - ls.add(" 输入." + whereArgNames.get(i) + " TYPEAS s_string"); - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - ls.add(" UPDATE " + this.tbname + " SET"); - - count = 0; - //keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - XLSTableRow col = getCol(colname); - if (col != null) { - ls.add((count > 0 ? "," : "") + col.getEnname() + " = 输入." + col.getEnname().toUpperCase());//将逗号加载更新字段的前面,避免当字段名以SQL关键字(如UPDATE)开头时,wql解析有问题 - count++; - } - } - //where条件 - ls.add(" WHERE " + whereClause); - //ls.add(" WHERE 1=1"); - //ls.add(" AND 输入.whereclause"); - ls.add(" ENDUPDATE"); - return ls; - } - - /** - * 构造按标志位更新 - * - * @return - */ - private ArrayList makeUpdateAll() { - int count = 0; - ArrayList ls = new ArrayList(); - - ls.add("[交易说明]"); - ls.add("[数据库]"); - ls.add("[IO定义]"); - ls.add(" 输入.insertcount TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - ls.add(" 输入明细.INSERT_" + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - ls.add(" 输入.updatecount TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - ls.add(" 输入明细.UPDATE_" + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - ls.add(" 输入.deletecount TYPEAS n_int"); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - ls.add(" 输入明细.DELETE_" + xstr.getEnname().toUpperCase() + "_ARR TYPEAS " + xstr.getType()); - } - } - ls.add("[临时表]"); - ls.add("[临时变量]"); - ls.add("[业务过程]"); - //====插入==== - ls.add(" LOOP 输入.insertcount"); - ls.add(" INSERT INTO " + this.tbname + " ( "); - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = cols.get(i); - ls.add((i > 0 ? " ," : " ") + xstr.getEnname()); - //if(i 0 ? " ," : " ") + "输入明细.INSERT_" + xstr.getEnname() + "_ARR "); - //if(i0) ls.add(","); - ls.add((count > 0 ? "," : "") + xstr.getEnname() + " = 输入明细.UPDATE_" + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" WHERE "); - count = 0; - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - //if(count>0) ls.add(" AND "); - ls.add((count > 0 ? " AND " : "") + xstr.getEnname() + " = 输入明细.UPDATE_" + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" ENDUPDATE"); - ls.add(" ENDLOOP"); - //====删除==== - ls.add(" LOOP 输入.deletecount"); - ls.add(" DELETE FROM " + this.tbname); - ls.add(" WHERE "); - count = 0; - for (int i = 0; i < cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - //if(count>0) ls.add(" AND "); - ls.add((count > 0 ? " AND " : "") + xstr.getEnname() + " = 输入明细.DELETE_" + xstr.getEnname() + "_ARR "); - count++; - } - } - ls.add(" ENDDELETE"); - ls.add(" ENDLOOP"); - - return ls; - } - - public static boolean containWQLObject(String tbname) throws WDKException { - tbname = tbname.toUpperCase(); - if (WQLCore.wqlobjectMap.containsKey(tbname)) { - return true; - } - return false; - } - - //根据实体类获取表名 - /* public static WQLObject getWQLObject(Class clazz) throws WDKException { - String tableNameByInstance = WqlUtil.getTableNameByInstance(clazz); - return getWQLObject(tableNameByInstance); - }*/ - - /** - * 获取wql对象 - * - * @param tbname - * @return - */ - public static WQLObject getWQLObject(String tbname) throws WDKException { - WQLObject wo = null; - try { - tbname = tbname.toUpperCase(); - if (WQLCore.wqlobjectMap.containsKey(tbname)) { - WQLObject _wo = WQLCore.wqlobjectMap.get(tbname); - - try { - wo = (WQLObject) WqlUtil.cloneObject(_wo); - } catch (Exception e) { - e.printStackTrace(); - } - - } else { - log.info("WQLObject[" + tbname + "]不存在!"); - throw new WDKException("create WQLObject exception, table " + tbname + " does not exist"); - } - } catch (Exception e) { - log.error(e.getMessage()); - e.printStackTrace(); - throw new WDKException("create WQLObject exception", e); - } - return wo; - } - - - public boolean existCol(String colname) { - XLSTableRow row = getCol(colname); - if (row == null) { - return false; - } else { - return true; - } - } - - public XLSTableRow getCol(String colname) { - colname = colname.toUpperCase(); - if (colname.startsWith("[") && colname.endsWith("]")) { - //带[]的字段 - colname = colname.substring(1, colname.lastIndexOf("]")); - } - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow row = this.cols.get(i); - if (colname.equals(row.getEnname())) { - return row; - } - } - return null; - } - - /** - * 根据字段名判断字段是否存在 - * - * @param fieldname 字段名,可以用是带[]的,也可以不带 - * @return - */ - public boolean existField(String fieldname) { - WQLDataField field = getField(fieldname); - if (field == null) { - return false; - } else { - return true; - } - } - - /** - * 根据字段名取字段对象,不存在则返回null - * - * @param fieldname 字段名,可以用是带[]的,也可以不带 - * @return - */ - public WQLDataField getField(String fieldname) { - if (fieldname == null) fieldname = ""; - fieldname = fieldname.toUpperCase(); - if (fieldname.startsWith("[") && fieldname.endsWith("]")) { - //带[]的字段 - fieldname = fieldname.substring(1, fieldname.lastIndexOf("]")); - } - return this.fieldMap.get(fieldname); - } - - ///////////////////////////// - // 常用操作方法 - //////////////////////////////// - - - /** - * 查询 - * - * @param whereClause 查询条件,可以使用?作为参数 - * @param whereArgs 查询条件参数值 - * @param orderby 排序条件 - * @return - */ - public ResultBean query(String whereClause, String[] whereArgs, String orderby) throws WDKException { - ResultBean resultBean = new ResultBean(); - try { - //处理查询条件 - ArrayList whereArgNames = new ArrayList(); - //构造查询WQL,并执行 - ArrayList ls = this.makeQuery(whereClause, whereArgs, orderby, whereArgNames); - this.wo = new WO("Q" + tbname.toUpperCase(), ls); - wo.setDbname(this.dbname); - this.setWOHint(); - this.wo.wp.init(); - //this.wo.addParam("whereclause", whereClause); - //this.wo.addParam("orderby", transOrderbySQL(orderby,true)); - for (int i = 0; i < whereArgNames.size(); i++) { - this.wo.addParam(whereArgNames.get(i), whereArgs[i]); - } - ResultBean rb = this.wo.process(); - - //处理key-value转换 - if (rb.isSuccess() == true) { - ArrayList list = rb.getResultSet(0); - for (int i = 0; i < list.size(); i++) { - BasicDynaBean row = (BasicDynaBean) list.get(i); - - if (this.activeFieldSet != null && this.activeFieldSet.size() > 0) { - Iterator it = this.activeFieldSet.iterator(); - while (it.hasNext()) { - String fieldname = it.next().toUpperCase(); - if (this.fieldMap.containsKey(fieldname)) { - WQLDataField field = this.fieldMap.get(fieldname); - if (field.isExpand() == true) { - String sourcefield = field.getSourcefield().toLowerCase(); - WQLModule wm = WQLModule.getWQLModule(field.getModule()); - String sourcefieldvalue = WqlUtil.getSQLFieldValue(row.get(sourcefield)).trim();//源值 - //key-value转换 - if (field.isJoinfield() == false) { - //启用缓存代码模型 - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } else { - //非启用缓存代码模型 - //如果源值包含逗号,则重新解析 - if (sourcefieldvalue.indexOf(",") > -1) { - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } - } - } - } - } - } else { - for (int j = 0; j < this.fields.size(); j++) {//按计算字段循环 - WQLDataField field = this.fields.get(j); - if (field.isExpand() == true) { - String sourcefield = field.getSourcefield().toLowerCase(); - WQLModule wm = WQLModule.getWQLModule(field.getModule()); - String sourcefieldvalue = WqlUtil.getSQLFieldValue(row.get(sourcefield)).trim();//源值 - //key-value转换 - if (field.isJoinfield() == false) { - //启用缓存代码模型 - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } else { - //非启用缓存代码模型 - //如果源值包含逗号,则重新解析 - if (sourcefieldvalue.indexOf(",") > -1) { - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } - } - } - } - } - } - resultBean.addResultSet(list); - } - - resultBean.setInfoDump(rb.getInfoDump()); - resultBean.setInfoError(rb.getInfoError()); - resultBean.setInfoTrace(rb.getInfoTrace()); - resultBean.setSucess(rb.getSucess()); - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject query exception", e); - } - return resultBean; - } - - - /** - * 查询 - * - * @return - */ - public ResultBean query() throws WDKException { - return query(null, null, null); - } - - public ResultBean query(String whereClause) throws WDKException { - return query(whereClause, null, null); - } - - public ResultBean query(String whereClause, String orderby) throws WDKException { - return query(whereClause, null, orderby); - } - - /** - * 分页查询 - * - * @param whereClause - * @param whereArgs - * @param orderby - * @return - */ - public ResultBean pagequery(BaseContext ctx, String whereClause, String[] whereArgs, String orderby) throws WDKException { - ResultBean resultBean = new ResultBean(); - try { - - int nPageRecordNum = -1; - int nPageStart = -1; - // 分页参数 - String strRows = ctx.getRows();//request.getParameter("rows"); - String strPage = ctx.getPage();//request.getParameter("page"); - if (null != strRows && !"".equals(strRows.trim())) { - nPageRecordNum = Integer.parseInt(strRows); - } - if (null != strPage && !"".equals(strPage.trim())) { - nPageStart = Integer.parseInt(strPage) - 1; - } - //排序参数 - String orderbyfield = ctx.getOrderbyfield();//request.getParameter("orderbyfield"); - if (null != orderbyfield && !"".equals(orderbyfield.trim())) { - orderby = orderbyfield; - } - - resultBean = pagequery(whereClause, whereArgs, orderby, nPageStart * nPageRecordNum, nPageRecordNum); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject pagequery exception", e); - } - - return resultBean; - } - - /** - * 分页查询 - * - * @param whereClause - * @param orderby - * @return - */ - public ResultBean pagequery(BaseContext ctx, String whereClause, String orderby) { - return pagequery(ctx, whereClause, null, orderby); - } - - /** - * 分页查询 - * - * @param whereClause - * @param whereArgs - * @param orderby - * @param startrecord - * @param pagerecord - * @return - */ - public ResultBean pagequery(String whereClause, String[] whereArgs, String orderby, int startrecord, int pagerecord) throws WDKException { - ResultBean resultBean = new ResultBean(); - try { - //处理查询条件 - ArrayList whereArgNames = new ArrayList(); - //构造查询WQL,并执行 - ArrayList ls = this.makePageQuery(whereClause, whereArgs, orderby, whereArgNames); - this.wo = new WO("Q" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - -// int nPageRecordNum = -1; -// int nPageStart = -1; -// // 分页参数 -// String strRows = request.getParameter("rows"); -// String strPage = request.getParameter("page"); -// if (null != strRows && !"".equals(strRows.trim())) { -// nPageRecordNum = Integer.parseInt(strRows); -// } -// if (null != strPage && !"".equals(strPage.trim())) { -// nPageStart = Integer.parseInt(strPage) - 1; -// } - this.wo.setPage_PageStart(startrecord); - this.wo.setPage_PageRecordNum(pagerecord); - this.wo.setPage_OrderByField(transOrderbySQL(orderby, false)); - //this.wo.addParam("whereclause", transWhereclauseSQL(whereClause,true)); - for (int i = 0; i < whereArgNames.size(); i++) { - this.wo.addParam(whereArgNames.get(i), whereArgs[i]); - } - - ResultBean rb = this.wo.process(); - - - //处理key-value转换 - if (rb.isSuccess() == true) { - ArrayList list = rb.getResultSet(0); - for (int i = 0; i < list.size(); i++) { - BasicDynaBean row = (BasicDynaBean) list.get(i); - - if (this.activeFieldSet != null && this.activeFieldSet.size() > 0) { - Iterator it = this.activeFieldSet.iterator(); - while (it.hasNext()) { - String fieldname = it.next().toUpperCase(); - if (this.fieldMap.containsKey(fieldname)) { - WQLDataField field = this.fieldMap.get(fieldname); - if (field.isExpand() == true) { - String sourcefield = field.getSourcefield().toLowerCase(); - WQLModule wm = WQLModule.getWQLModule(field.getModule()); - String sourcefieldvalue = WqlUtil.getSQLFieldValue(row.get(sourcefield)).trim();//源值 - //key-value转换 - if (field.isJoinfield() == false) { - //启用缓存代码模型 - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } else { - //非启用缓存代码模型 - //如果源值包含逗号,则重新解析 - if (sourcefieldvalue.indexOf(",") > -1) { - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } - } - } - } - } - } else { - for (int j = 0; j < this.fields.size(); j++) {//按计算字段循环 - WQLDataField field = this.fields.get(j); - if (field.isExpand() == true) { - String sourcefield = field.getSourcefield().toLowerCase(); - WQLModule wm = WQLModule.getWQLModule(field.getModule()); - String sourcefieldvalue = WqlUtil.getSQLFieldValue(row.get(sourcefield)).trim();//源值 - //key-value转换 - if (field.isJoinfield() == false) { - //启用缓存代码模型 - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } else { - //非启用缓存代码模型 - //如果源值包含逗号,则重新解析 - if (sourcefieldvalue.indexOf(",") > -1) { - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } - } - } - } - } - } - resultBean.addResultSet(list); - if (rb.getResultCount() > 1) { - resultBean.addResultSet(rb.getResultSet(1)); - } - } - - resultBean.setInfoDump(rb.getInfoDump()); - resultBean.setInfoError(rb.getInfoError()); - resultBean.setInfoTrace(rb.getInfoTrace()); - resultBean.setSucess(rb.getSucess()); - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject pagequery exception", e); - } - - return resultBean; - } - - /** - * 分页查询 - * - * @param whereClause 查询条件 - * @param orderby 排序条件 - * @param startrecord 起始记录号 从0开始 - * @param pagerecord 每页记录数 - * @return - */ - public ResultBean pagequery(String whereClause, String orderby, int startrecord, int pagerecord) throws WDKException { - return pagequery(whereClause, null, orderby, startrecord, pagerecord); - } - - /** - * 按数据取回 - * - * @param wd - * @return - */ - public ResultBean retrieve(WQLData wd) throws WDKException { - ResultBean resultBean = new ResultBean(); - try { - ArrayList ls = this.makeRetrieve(); - this.wo = new WO("Q" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - String colname = xstr.getEnname(); - String value = wd.getValue(colname); - this.wo.addParam(colname, value); - } - } - ResultBean rb = this.wo.process(); - - //处理key-value转换 - if (rb.isSuccess() == true) { - ArrayList list = rb.getResultSet(0); - for (int i = 0; i < list.size(); i++) { - BasicDynaBean row = (BasicDynaBean) list.get(i); - for (int j = 0; j < this.fields.size(); j++) {//按计算字段循环 - WQLDataField field = this.fields.get(j); - if (field.isExpand() == true) { - String sourcefield = field.getSourcefield().toLowerCase(); - WQLModule wm = WQLModule.getWQLModule(field.getModule()); - String sourcefieldvalue = WqlUtil.getSQLFieldValue(row.get(sourcefield)).trim();//源值 - //key-value转换 - if (field.isJoinfield() == false) { - //启用缓存代码模型 - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } else { - //非启用缓存代码模型 - //如果源值包含逗号,则重新解析 - if (sourcefieldvalue.indexOf(",") > -1) { - String value = wm.id2name(sourcefieldvalue, field.getNamefield()); - row.set(field.getEnname().toLowerCase(), value); - } - } - } - } - } - resultBean.addResultSet(list); - } - - resultBean.setInfoDump(rb.getInfoDump()); - resultBean.setInfoError(rb.getInfoError()); - resultBean.setInfoTrace(rb.getInfoTrace()); - resultBean.setSucess(rb.getSucess()); - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject retrieve exception", e); - } - - return resultBean; - } - - /** - * 插入 - * - * @param wd - * @return - */ - public ResultBean insert(WQLData wd) throws WDKException { - ResultBean rb; - try { - ArrayList ls = this.makeWQLDataInsert(); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - this.wo.addParam("count", Integer.toString(wd.getRowCount())); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - String colname = xstr.getEnname(); - ArrayList datas = wd.getValues(colname);//从WQLData中取指定列的数据 - if (datas != null) { - String[] dataarr = new String[datas.size()]; - for (int j = 0; j < datas.size(); j++) { - String str = (String) datas.get(j); - str = transValue(xstr, str);//处理值 - dataarr[j] = str; - } - this.wo.addParam(colname + "_ARR", dataarr); - } - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject insert exception", e); - } - - return rb; - } - - /* public ResultBean insert(Object instance) throws WDKException { - Map values = WqlUtil.getDeclaredFieldsInfo(instance); - return insert(values); - }*/ - - /** - * 插入 - * - * @param values - * @return - */ - public ResultBean insert(Map values) throws WDKException { - ResultBean rb; - try { - ArrayList ls = this.makeValueMapInsert(values); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - Set keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - // String value = (String) values.get(colname); - String value = String.valueOf(values.get(colname)); - if ("null".equals(value) || value == null) { - value = ""; - } - XLSTableRow col = getCol(colname); - if (col != null) { - value = transValue(col, value);//处理值 - this.wo.addParam(col.getEnname().toUpperCase(), value); - } - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject insert exception", e); - } - - return rb; - } - - /** - * 删除 - * - * @param whereClause - * @param whereArgs - * @return - */ - public ResultBean delete(String whereClause, String[] whereArgs) throws WDKException { - ResultBean rb; - try { - //处理删除条件 - ArrayList whereArgNames = new ArrayList(); - //构造查询WQL,并执行 - ArrayList ls = this.makeDelete(whereClause, whereArgs, whereArgNames); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - //this.wo.addParam("whereclause", transWhereclauseSQL(whereClause,false)); - for (int i = 0; i < whereArgNames.size(); i++) { - this.wo.addParam(whereArgNames.get(i), whereArgs[i]); - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject delete exception", e); - } - - return rb; - } - - /** - * 删除 - * - * @param whereClause - * @return - */ - public ResultBean delete(String whereClause) throws WDKException { - return delete(whereClause, null); - } - - /** - * 根据记录自动删除对应记录,其中,根据主键自动拼SQL语句 - * - * @return - * @throws WDKException - */ - /* public ResultBean delete(Object instance) throws WDKException { - Map jrow = WqlUtil.getDeclaredFieldsInfo(instance); - String whereClause = getWhereClause(jrow); - return delete(whereClause); - }*/ - public ResultBean delete(Map values) throws WDKException { - String whereClause = getWhereClause(values); - return delete(whereClause); - } - - /** - * 根据结果集记录自动生成whyere语句 - * - * @param jrow - * @return - */ - private String getWhereClause(Map jrow) { - String whereClause = ""; - for (Iterator it = this.cols.iterator(); it.hasNext(); ) { - XLSTableRow row = it.next(); - if (row.isPrimaryKey()) { - if (!"".equals(whereClause)) { - whereClause += " and "; - } - whereClause += row.getEnname() + " = '" + jrow.get(row.getEnname().toLowerCase()) + "'"; - } - } - return whereClause; - } - - /** - * 删除 - * - * @param wd - * @return - */ - public ResultBean delete(WQLData wd) throws WDKException { - ResultBean rb; - try { - ArrayList ls = this.makeWQLDataDelete(); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - this.wo.addParam("count", Integer.toString(wd.getRowCount())); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - if (xstr.isPrimaryKey()) { - String colname = xstr.getEnname(); - ArrayList datas = wd.getValues(colname);//从WQLData中取指定列的数据 - if (datas != null) { - String[] dataarr = new String[datas.size()]; - for (int j = 0; j < datas.size(); j++) { - String str = (String) datas.get(j); - dataarr[j] = str; - } - this.wo.addParam(colname + "_ARR", dataarr); - } - } - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject delete exception", e); - } - - return rb; - } - - /** - * 更新 - * - * @param wd - * @return - */ - public ResultBean update(WQLData wd) throws WDKException { - ResultBean rb; - try { - ArrayList ls = this.makeWQLDataUpdate(); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - this.wo.addParam("count", Integer.toString(wd.getRowCount())); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - String colname = xstr.getEnname(); - ArrayList datas = wd.getValues(colname);//从WQLData中取指定列的数据 - if (datas != null) { - String[] dataarr = new String[datas.size()]; - for (int j = 0; j < datas.size(); j++) { - String str = (String) datas.get(j); - str = transValue(xstr, str);//处理值 - dataarr[j] = str; - } - this.wo.addParam(colname + "_ARR", dataarr); - } - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject update exception", e); - } - - return rb; - } - - /* public ResultBean update(Object instance, String whereClause, String[] whereArgs) throws WDKException { - Map values = WqlUtil.getDeclaredFieldsInfo(instance); - return update(values, whereClause, whereArgs); - }*/ - - /** - * 更新 Json传入的所有值,不一定是Exce定义的 - * - * @param whereClause - * @param whereArgs - * @return - */ - public ResultBean update(Map values, String whereClause, String[] whereArgs) throws WDKException { - ResultBean rb; - try { - //处理条件 - ArrayList whereArgNames = new ArrayList(); - //构造WQL,并执行 - ArrayList ls = this.makeValueMapUpdate(values, whereClause, whereArgs, whereArgNames); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - Set keyset = values.keySet(); - for (Iterator it = keyset.iterator(); it.hasNext(); ) { - String colname = it.next(); - String value = ""; - Object ov = values.get(colname); - - if (null != ov) { - if (ov.getClass().getName().equalsIgnoreCase("com.alibaba.fastjson.JSONObject")) { - value = ((JSONObject) values.get(colname)).toString(); - } else if (ov.getClass().getName().equalsIgnoreCase("com.alibaba.fastjson.JSONArray")) { - value = ((JSONArray) values.get(colname)).toString(); - } else { - if (getCol(colname) != null) { - //value = (String) values.get(colname); - value = StrUtil.toString(values.get(colname)); - - } - - } - } - XLSTableRow col = getCol(colname); - if (col != null) { - value = transValue(col, value);//处理值 - this.wo.addParam(col.getEnname().toUpperCase(), value); - } - } - //this.wo.addParam("whereclause", transWhereclauseSQL(whereClause,false)); - for (int i = 0; i < whereArgNames.size(); i++) { - this.wo.addParam(whereArgNames.get(i), whereArgs[i]); - } - rb = this.wo.process(); - - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("WqlObject update exception", e); - } - - return rb; - } - - /** - * 更新 - * - * @param whereClause - * @return - */ - public ResultBean update(Map values, String whereClause) throws WDKException { - return update(values, whereClause, null); - } - - /** - * 根据实体类更新表对象 - * - * @param instance - * @param whereClause - * @return - * @throws WDKException - */ - /* public ResultBean update(Object instance, String whereClause) throws WDKException { - Map values = WqlUtil.getDeclaredFieldsInfo(instance); - return update(values, whereClause, null); - }*/ - - /** - * 更新记录 - * - * @return - * @throws WDKException - */ - public ResultBean update(Map values) throws WDKException { - String whereClause = getWhereClause(values); - return update(values, whereClause); - } - - /** - * 根据实体类更新表 - * - * @param instance 实体类对象 - * @return - * @throws WDKException - */ - /* public ResultBean update(Object instance) throws WDKException { - Map values = WqlUtil.getDeclaredFieldsInfo(instance); - String whereClause = getWhereClause(values); - return update(values, whereClause); - } -*/ - - /** - * 按标志位更新 - * - * @param wd - * @return - */ - public ResultBean updateAll(WQLData wd) throws WDKException { - ResultBean rb; - try { - ArrayList ls = this.makeUpdateAll(); - this.wo = new WO("U" + tbname.toUpperCase(), ls); - this.setWOHint(); - this.wo.wp.init(); - this.wo.addParam("insertcount", Integer.toString(wd.getInsertMarkRowCount())); - this.wo.addParam("updatecount", Integer.toString(wd.getUpdateMarkRowCount())); - this.wo.addParam("deletecount", Integer.toString(wd.getDeleteMarkRowCount())); - - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - String colname = xstr.getEnname(); - ArrayList insertdatas = wd.getInsertMarkValues(colname);//从WQLData中取指定列的数据 - ArrayList updatedatas = wd.getUpdateMarkValues(colname);//从WQLData中取指定列的数据 - ArrayList deletedatas = wd.getDeleteMarkValues(colname);//从WQLData中取指定列的数据 - - if (insertdatas != null) { - String[] dataarr = new String[insertdatas.size()]; - - for (int j = 0; j < insertdatas.size(); j++) { - String str = (String) insertdatas.get(j); - str = transValue(xstr, str);//处理值 - dataarr[j] = str; - } - - this.wo.addParam("INSERT_" + colname + "_ARR", dataarr); - } - - if (updatedatas != null) { - String[] dataarr = new String[updatedatas.size()]; - - for (int j = 0; j < updatedatas.size(); j++) { - String str = (String) updatedatas.get(j); - str = transValue(xstr, str);//处理值 - dataarr[j] = str; - } - - this.wo.addParam("UPDATE_" + colname + "_ARR", dataarr); - } - - if (xstr.isPrimaryKey()) { - if (deletedatas != null) { - String[] dataarr = new String[deletedatas.size()]; - - for (int j = 0; j < deletedatas.size(); j++) { - String str = (String) deletedatas.get(j); - str = transValue(xstr, str);//处理值 - dataarr[j] = str; - } - - this.wo.addParam("DELETE_" + colname + "_ARR", dataarr); - } - } - } - rb = this.wo.process(); - } catch (WDKException e) { - throw e; - } catch (Exception e) { - throw new WDKException("wqlobject updateall exception", e); - } - - return rb; - } - - - public ArrayList getPrimaryKeys() { - ArrayList keys = new ArrayList(); - for (int i = 0; i < this.cols.size(); i++) { - XLSTableRow xstr = this.cols.get(i); - String param = xstr.getParam() == null ? "" : xstr.getParam().toUpperCase(); - if (param.indexOf("PK") > -1) { - keys.add(xstr.getEnname().toLowerCase()); - } - } - return keys; - } - - /////////////////////////////////////// - // 属性设置方法 - /////////////////////////////////////// - - public List getCols() { - return Collections.unmodifiableList(cols); - } - - public List getFields() { - return Collections.unmodifiableList(fields); - } - - public Map getFieldMap() { - return fieldMap; - } - - public Set getActiveFieldSet() { - return activeFieldSet; - } - - public void setActiveFieldSet(Set activeFieldSet) { - this.activeFieldSet = activeFieldSet; - } - - public String getTbname() { - return tbname; - } - - public void setTbname(String tbname) { - this.tbname = tbname; - } - - /** - * SQL语句添加指定表别名 - * - * @param specification - * @param alias - * @return - */ - protected String transWhereclauseSQL(String specification, String alias) { - StringBuffer sql = new StringBuffer(); - if (specification != null && specification.length() > 0) { - String[] arr = WQLFun.splitSQL2Array(specification); - for (int i = 0; i < arr.length; i++) { - String str = arr[i]; - if (existField(str)) { - //是字段 - WQLDataField field = getField(str); - sql.append(alias).append(".").append(field.getEnname()); - } else { - //不是字段 - sql.append(str); - } - sql.append(" "); - } - } - - return sql.toString(); - } - - /** - * 翻译条件sql语句 - * 将字段名替换成符合表别名的sql - * - * @param isfullname - * @return - */ - protected String transWhereclauseSQL(String sql, boolean isfullname) { - return transWhereclauseSQL(sql, isfullname, null); - } - - /** - * 翻译条件sql语句 - * 将字段名替换成符合表别名的sql - * - * @param sql - * @param isfullname - * @param whereArgNames where条件中?对应的wql参数名 - * @return - */ - private String transWhereclauseSQL(String sql, boolean isfullname, ArrayList whereArgNames) { - if (whereArgNames == null) { - whereArgNames = new ArrayList(); - } else { - whereArgNames.clear(); - } - StringBuffer transsql = new StringBuffer(); - if (sql != null && sql.length() > 0) { - String[] arr = WQLFun.splitSQL2Array(sql); - for (int i = 0; i < arr.length; i++) { - String str = arr[i]; - if (existField(str)) { - //是字段 - transsql.append(transFieldName(str, isfullname)); - } else { - //不是字段 - if ("?".equals(str)) { - //是否为?,则用输入参数替换 - String whereargname = "wherearg" + whereArgNames.size(); - str = "输入." + whereargname; - whereArgNames.add(whereargname); - } - transsql.append(str); - } - transsql.append(" "); - } - } - - return transsql.toString(); - } - - /** - * 翻译排序sql语句 - * 将字段名替换成符合表别名的sql - * 如果排序字段为代码模型解析后字段,则转换成按对应ID字段排序 - * - * @param sql - * @param isfullname - * @return - */ - protected String transOrderbySQL(String sql, boolean isfullname) { - StringBuffer transsql = new StringBuffer(); - if (sql != null && sql.length() > 0) { - String[] arr = WQLFun.splitSQL2Array(sql); - for (int i = 0; i < arr.length; i++) { - String str = arr[i]; - if (existField(str)) { - //是字段 - //判断是否为扩展字段 - WQLDataField field = getField(str); - if (field.isExpand()) { - //扩展字段,则取对应的ID字段 - str = field.getSourcefield(); - } - transsql.append(transFieldName(str, isfullname)); - } else { - //不是字段 - transsql.append(str); - } - transsql.append(" "); - } - } - return transsql.toString(); - } - - - /** - * 转换字段名称 - * - * @param fieldname - * @param isfullname 是否带表别名 - * @return - */ - private String transFieldName(String fieldname, boolean isfullname) { - WQLDataField field = getField(fieldname); - if (field != null) { - if (isfullname) { - //表字段 - return field.getTablealias() + "." + field.getEnname(); - } else { - return field.getEnname(); - } - } else { - log.error("数据表【" + tbname + "】字段【" + fieldname + "】不存在!"); - return ""; - } - } - - /** - * 处理字段值为空时的情况 - * - * @param xstr - * @param value - * @return - */ - private String transValue(XLSTableRow xstr, String value) { - if (null == value || "".equals(value)) { - //字段不允许为空时,取默认值 - String defaultvalue = ""; - if ("N".equalsIgnoreCase(xstr.getIsnull())) { - defaultvalue = xstr.getDefaultvalue(); - } - if (xstr.isString()) { - value = defaultvalue; - } else if (xstr.isNumber()) { - value = defaultvalue; - } else { - value = defaultvalue; - } - } - return value; - } - - public String getIdx() { - return " FORCE INDEX (" + this.idx_name + ") "; - - } - - //设置强制索引 - public void setIdx(String idx_name) { - this.idx_name = idx_name; - } - - public boolean hasIdx() { - if (null == this.idx_name || "".equals(idx_name)) { - return false; - } - return true; - } - - public void setHintMaster() { - this.hint_type = "0"; - } - - public void setHintSlave() { - this.hint_type = "1"; - } - - public void setWOHint() { - if (null == this.wo) { - return; - } - if ("0".equals(this.hint_type)) { - this.wo.setHintMaster(); - } else if ("1".equals(this.hint_type)) { - this.wo.setHintSlave(); - } - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObjectField.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObjectField.java deleted file mode 100644 index 6afa8e7..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLObjectField.java +++ /dev/null @@ -1,128 +0,0 @@ -package org.nl.modules.wql.core.bean;//package org.nl.wql.core.bean; -// -//public class WQLObjectField { -// private String cnname; //字段中文名称 -// private String enname; //字段英文名称 -// private String param; //字段属性 -// private String type; //字段类型 -// private String len; //字段长度 -// private String isnull; //允许空 -// private String defaultvalue; //默认值 -// private String desc; //字段描述 -// private String module; //代码模型 -// private boolean expand = false; //是否通过代码模型扩展的字段 -// private String sourcefield; //被转换的源字段 -// private String namefield; //代码模型对应转换字段 -// private String tablealias; //字段所属表别名 -// -// public WQLObjectField() { -// // TODO Auto-generated constructor stub -// } -// public WQLObjectField(XLSTableRow col) { -// if(col!=null){ -// this.cnname = col.getCnname(); -// this.enname = col.getEnname(); -// this.param = col.getParam(); -// this.type = col.getType(); -// this.len = col.getLen(); -// this.isnull = col.getIsnull(); -// this.defaultvalue = col.getDefaultvalue(); -// this.desc = col.getDesc(); -// this.expand = false; -// } -// } -// -// public WQLObjectField(String enname) { -// this.enname = enname; -// } -// public String getCnname() { -// return cnname; -// } -// public void setCnname(String cnname) { -// this.cnname = cnname; -// } -// public String getEnname() { -// return enname; -// } -// public void setEnname(String enname) { -// this.enname = enname; -// } -// public String getParam() { -// return param; -// } -// public void setParam(String param) { -// this.param = param; -// } -// public String getType() { -// return type; -// } -// public void setType(String type) { -// this.type = type; -// } -// public String getLen() { -// return len; -// } -// public void setLen(String len) { -// this.len = len; -// } -// public String getIsnull() { -// return isnull; -// } -// public void setIsnull(String isnull) { -// this.isnull = isnull; -// } -// public String getDefaultvalue() { -// return defaultvalue; -// } -// public void setDefaultvalue(String defaultvalue) { -// this.defaultvalue = defaultvalue; -// } -// public String getDesc() { -// return desc; -// } -// public void setDesc(String desc) { -// this.desc = desc; -// } -// -// public String getModule() { -// return module; -// } -// public void setModule(String module) { -// this.module = module; -// } -// public boolean isExpand() { -// return expand; -// } -// public void setExpand(boolean expand) { -// this.expand = expand; -// } -// public String getSourcefield() { -// return sourcefield; -// } -// public void setSourcefield(String sourcefield) { -// this.sourcefield = sourcefield; -// } -// public String getNamefield() { -// return namefield; -// } -// public void setNamefield(String namefield) { -// this.namefield = namefield; -// } -// -// public String getTablealias() { -// return tablealias; -// } -// public void setTablealias(String tablealias) { -// this.tablealias = tablealias; -// } -// /* -// * 是否使用join关联查询字段(为false时在中间层做key-value转换) -// */ -// public boolean isJoinfield() { -// WQLModule mb = WQLModule.getWQLModule(this.getModule()); -// return mb.canJoin(); -// } -// -// -// -//} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLRowSetDynaClass.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLRowSetDynaClass.java deleted file mode 100644 index 94376de..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/WQLRowSetDynaClass.java +++ /dev/null @@ -1,71 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import org.apache.commons.beanutils.DynaBean; -import org.apache.commons.beanutils.RowSetDynaClass; - -import java.lang.reflect.Method; -import java.sql.ResultSet; -import java.sql.SQLException; - -public class WQLRowSetDynaClass extends RowSetDynaClass { - - /** - * - */ - private static final long serialVersionUID = 493505458209270267L; - - public WQLRowSetDynaClass(ResultSet resultSet) throws SQLException { - super(resultSet); - } - - - public WQLRowSetDynaClass(ResultSet resultSet, boolean lowerCase, int limit) - throws SQLException { - super(resultSet, lowerCase, limit); - // TODO Auto-generated constructor stub - } - - - public WQLRowSetDynaClass(ResultSet resultSet, boolean lowerCase) - throws SQLException { - super(resultSet, lowerCase); - // TODO Auto-generated constructor stub - } - - - public WQLRowSetDynaClass(ResultSet resultSet, int limit) - throws SQLException { - super(resultSet, limit); - // TODO Auto-generated constructor stub - } - - - protected void copy(ResultSet resultSet) throws SQLException { - int cnt = 0; - while (resultSet.next() && (limit < 0 || cnt++ < limit)) { - DynaBean bean = createDynaBean(); - for (int i = 0; i < properties.length; i++) { - String name = properties[i].getName(); - Object value = getObject(resultSet, name); - - if (value != null) { - String classStr = value.getClass().getName(); - if (classStr.startsWith("weblogic.jdbc.wrapper.Clob")) { - - try { - Method method = value.getClass().getMethod("getVendorObj", new Class[]{}); - value = (Object) method.invoke(value); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - } - } - //if (value==null && value instanceof String)value=""; - bean.set(name, value); - - } - rows.add(bean); - } - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/XLSTableRow.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/XLSTableRow.java deleted file mode 100644 index bc43a63..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/bean/XLSTableRow.java +++ /dev/null @@ -1,136 +0,0 @@ -package org.nl.modules.wql.core.bean; - -import java.io.Serializable; - -/** - * 读取的临时表的xls属性 - * @author Administrator - * - */ -public class XLSTableRow implements Serializable,Cloneable{ - /** - * - */ - private static final long serialVersionUID = -7036364549436536761L; - private String no; //序号 - private String cnname; //字段中文名称 - private String enname; //字段英文名称 - private String param; //字段属性 - private String type; //字段类型 - private String len; //字段长度 - private String isnull; //允许空 - private String defaultvalue;//默认值 - private String desc; //字段描述 - private String status; //编辑状态 - private String module; //模型 - - /** - * 是否是主键 - * @return - */ - public boolean isPrimaryKey(){ - if("PK".equalsIgnoreCase(this.param)){ - return true; - } - return false; - } - - public boolean isString(){ - if(this.type.startsWith("s")||this.type.startsWith("S")){ - return true; - } - return false; - } - - public boolean isNumber(){ - if(this.type.startsWith("n")||this.type.startsWith("N")){ - return true; - } - return false; - } - - public XLSTableRow() { - // TODO Auto-generated constructor stub - } - public XLSTableRow(String enname) { - this.enname = enname; - } - public String getNo() { - return no; - } - public void setNo(String no) { - this.no = no; - } - public String getCnname() { - return cnname; - } - public void setCnname(String cnname) { - this.cnname = cnname; - } - public String getEnname() { - return enname; - } - public void setEnname(String enname) { - this.enname = enname; - } - public String getParam() { - return param; - } - public void setParam(String param) { - this.param = param; - } - public String getType() { - return type; - } - public void setType(String type) { - this.type = type; - } - public String getLen() { - return len; - } - public void setLen(String len) { - this.len = len; - } - public String getIsnull() { - return isnull; - } - public void setIsnull(String isnull) { - this.isnull = isnull; - } - public String getDefaultvalue() { - if(null==defaultvalue){ - return ""; - } - if(defaultvalue.startsWith("'")){ - defaultvalue = defaultvalue.substring(1,defaultvalue.length()); - } - if(defaultvalue.endsWith("'")){ - defaultvalue = defaultvalue.substring(0,defaultvalue.length()-1); - } - return defaultvalue; - } - public void setDefaultvalue(String defaultvalue) { - this.defaultvalue = defaultvalue; - } - public String getDesc() { - return desc; - } - public void setDesc(String desc) { - this.desc = desc; - } - public String getStatus() { - return status; - } - public void setStatus(String status) { - this.status = status; - } - public String getModule() { - return module; - } - public void setModule(String module) { - this.module = module; - } - - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/BaseContext.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/BaseContext.java deleted file mode 100644 index a5641a0..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/BaseContext.java +++ /dev/null @@ -1,63 +0,0 @@ -package org.nl.modules.wql.core.content; - -public abstract class BaseContext { - public static final String CONTEXTNAME_HTTP = "http"; - public static final String CONTEXTNAME_Service = "service"; - public static final String CONTEXTNAME_Runnable = "runnable"; - public static final String CONTEXTNAME_Job = "job"; - protected String type; - protected String traceid; - protected String spanid = "0"; - protected int childspancount = 0; - protected String rows; - protected String page; - protected String orderbyfield; - - public String getRows() { - return this.rows; - } - - public void setRows(String rows) { - this.rows = rows; - } - - public String getPage() { - return this.page; - } - - public void setPage(String page) { - this.page = page; - } - - public String getOrderbyfield() { - return this.orderbyfield; - } - - public void setOrderbyfield(String orderbyfield) { - this.orderbyfield = orderbyfield; - } - - public String getType() { - return this.type; - } - - public String getTraceid() { - return this.traceid; - } - - public String getSpanid() { - return this.spanid; - } - - public void setSpanid(String spanid) { - this.spanid = spanid; - } - - public int getChildspancount() { - return this.childspancount; - } - - public void setChildspancount(int childspancount) { - this.childspancount = childspancount; - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/HttpContext.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/HttpContext.java deleted file mode 100644 index 94b73a3..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/HttpContext.java +++ /dev/null @@ -1,175 +0,0 @@ -package org.nl.modules.wql.core.content; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.util.Enumeration; -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map.Entry; - -public class HttpContext extends BaseContext { - private HashMap parameters = new HashMap(); - private HashMap attributes = new HashMap(); - private HttpServletRequest request; - private HttpServletResponse response; - private String target; - private String method; - private boolean disPrintOut = false; - private String printOut; - private boolean success; - - public HttpContext(String traceid) { - super.type = "http"; - super.traceid = traceid; - } - - public void setRequest(HttpServletRequest request) { - this.request = request; - if (this.request != null) { - this.rows = request.getParameter("rows"); - this.page = request.getParameter("page"); - this.orderbyfield = request.getParameter("orderbyfield"); - } - - } - - public boolean isPageQuery() { - return this.rows != null && !"".equals(this.rows) && !"-1".equals(this.rows); - } - - public void setResponse(HttpServletResponse response) { - this.response = response; - } - - public HttpServletRequest getRequest() { - return this.request; - } - - public HttpServletResponse getResponse() { - return this.response; - } - - public boolean containsKey(String name) { - return this.parameters.containsKey(name); - } - - public void addParamter(String key, Object value) { - this.parameters.put(key, value); - } - - public void addParamterMap(HashMap map) { - if (map != null) { - Iterator it = map.entrySet().iterator(); - - while (it.hasNext()) { - Entry entry = (Entry) it.next(); - this.parameters.put((String) entry.getKey(), entry.getValue()); - } - - } - } - - public String getString(String name) { - Object param = this.get(name); - if (param == null) { - param = ""; - } - - return param.toString(); - } - - public Object get(String name) { - return this.parameters.get(name); - } - - public String getParameter(String name) { - return this.getRequest().getParameter(name); - } - - public HashMap getParameterMap() { - HashMap param = new HashMap(); - Enumeration names = this.getRequest().getParameterNames(); - - while (names.hasMoreElements()) { - String pname = (String) names.nextElement(); - String pvalue = this.getRequest().getParameter(pname); - param.put(pname, pvalue); - } - - return param; - } - - public HashMap getParameterMapObject() { - HashMap param = new HashMap(); - Enumeration names = this.getRequest().getParameterNames(); - - while (names.hasMoreElements()) { - String pname = (String) names.nextElement(); - String pvalue = this.getRequest().getParameter(pname); - param.put(pname, pvalue); - } - - return param; - } - - public ServiceContext getServiceContext() { - ServiceContext serviceContext = new ServiceContext(this.traceid); - serviceContext.setOrderbyfield(this.orderbyfield); - serviceContext.setPage(this.page); - serviceContext.setRows(this.rows); - serviceContext.addParams(this.getParameterMapObject()); - return serviceContext; - } - - public void setAttribute(String name, Object object) { - this.attributes.put(name, object); - } - - public Object getAttribute(String name) { - return this.attributes.get(name); - } - - public void removeAttribute(String name) { - this.attributes.remove(name); - } - - public String getTarget() { - return this.target; - } - - public void setTarget(String target) { - this.target = target; - } - - public String getMethod() { - return this.method; - } - - public void setMethod(String method) { - this.method = method; - } - - public String getPrintOut() { - return this.printOut; - } - - public void setPrintOut(String printOut) { - this.printOut = printOut; - } - - public boolean isSuccess() { - return this.success; - } - - public void setSuccess(boolean success) { - this.success = success; - } - - public boolean isPrintOut() { - return !this.disPrintOut; - } - - public void disPrintOut() { - this.disPrintOut = true; - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/ServiceContext.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/ServiceContext.java deleted file mode 100644 index c9dc82f..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/content/ServiceContext.java +++ /dev/null @@ -1,67 +0,0 @@ -package org.nl.modules.wql.core.content; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map.Entry; - -public class ServiceContext extends BaseContext { - private HashMap params = new HashMap(); - private String app_key; - private String app_secret; - - public ServiceContext(String traceid) { - super.type = "service"; - super.traceid = traceid; - //uLogger.setTraceId(traceid); - this.params = new HashMap(); - } - - public String getApp_key() { - return this.app_key; - } - - public void setApp_key(String app_key) { - this.app_key = app_key; - } - - public String getApp_secret() { - return this.app_secret; - } - - public void setApp_secret(String app_secret) { - this.app_secret = app_secret; - } - - public boolean containsKey(String name) { - return this.params.containsKey(name); - } - - public void addParam(String key, Object value) { - this.params.put(key, value); - } - - public void addParams(HashMap map) { - if (map != null) { - Iterator it = map.entrySet().iterator(); - - while (it.hasNext()) { - Entry entry = (Entry) it.next(); - this.params.put((String) entry.getKey(), entry.getValue()); - } - - } - } - - public String getString(String name) { - Object param = this.get(name); - if (param == null) { - param = ""; - } - - return param.toString(); - } - - public Object get(String name) { - return this.params.get(name); - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnBean.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnBean.java deleted file mode 100644 index 9b3b357..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnBean.java +++ /dev/null @@ -1,48 +0,0 @@ -package org.nl.modules.wql.core.db; - -public class DBConnBean { - private String drivers; - private String url; - private String user; - private String password; - private String maxconn; - private String dbtype; - public String getDrivers() { - return drivers; - } - public void setDrivers(String drivers) { - this.drivers = drivers; - } - public String getUrl() { - return url; - } - public void setUrl(String url) { - this.url = url; - } - public String getUser() { - return user; - } - public void setUser(String user) { - this.user = user; - } - public String getPassword() { - return password; - } - public void setPassword(String password) { - this.password = password; - } - public String getMaxconn() { - return maxconn; - } - public void setMaxconn(String maxconn) { - this.maxconn = maxconn; - } - public String getDbtype() { - return dbtype; - } - public void setDbtype(String dbtype) { - this.dbtype = dbtype; - } - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnection.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnection.java deleted file mode 100644 index 392c21a..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBConnection.java +++ /dev/null @@ -1,222 +0,0 @@ -package org.nl.modules.wql.core.db; - -import cn.hutool.db.Db; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.util.SpringContextHolder; - -import javax.sql.DataSource; -import java.sql.Connection; - -@Slf4j -public class DBConnection { - private static DBConnection instance; // 唯一实例 - public static int currpooltype = -1;//当前连接池类型 - - public static final int DBPOOLTYPE_SPRING = 1; - public static final int DBPOOLTYPE_WEBLOGIC = 2; - public static final int DBPOOLTYPE_WEBSPHERE = 3; - public static final int DBPOOLTYPE_TOMCAT = 4; - public static final int DBPOOLTYPE_LOCAL = 5; - - static synchronized public DBConnection getInstance() { - if (instance == null) { - instance = new DBConnection(); - } - return instance; - } - - private DBConnection() { - - } - // boolean isTransation - public static Connection getConnection() { - Connection conn = getConnection(WQLCore.defalutDBName); -// if(isTransation){ -// openTransation(conn); -// } - return conn; - } - /** - * - * @param name - * @return - */ - public static Connection getConnection(String name) { - Connection conn = null; - - DBPoolSpring dbPoolSpring = DBPoolSpring.getInstance(name); - if(dbPoolSpring.isUseful()){ - currpooltype = DBPOOLTYPE_SPRING; - conn = dbPoolSpring.getConnection(name); - }else{ - DBPoolWeblogic dbPoolweblogic = DBPoolWeblogic.getInstance(); - if (dbPoolweblogic.isUseful()) { - currpooltype = DBPOOLTYPE_WEBLOGIC; - conn = dbPoolweblogic.getConnection(name); - } else { - DBPoolWebsphere dbPollwebsphere = DBPoolWebsphere.getInstance(); - if (dbPollwebsphere.isUseful()) { - currpooltype = DBPOOLTYPE_WEBSPHERE; - conn = dbPollwebsphere.getConnection(name); - } else { - DBPoolTomcat dbPooltomcat = DBPoolTomcat.getInstance(); - if (dbPooltomcat.isUseful()) { - currpooltype = DBPOOLTYPE_TOMCAT; - conn = dbPooltomcat.getConnection(name); - } else { - DBPool dbpool = DBPool.getInstance(); - if (dbpool.isUseful()) { - currpooltype = DBPOOLTYPE_LOCAL; - conn = dbpool.getConnection(name); - } else { - log.error("DBConnection无法获得数据库连接资源."); - } - } - } - } - log.error("DBConnection无法获得数据库连接资源."); - } - try { -// if(null!=conn){ - //conn.setAutoCommit(true); - - //不启用事务 -// conn.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); -// } - } catch (Exception e) { - //e.printStackTrace(); - } - return conn; - } - -// /** -// * 开启事务 -// * @param conn -// */ -// public static void openTransation(Connection conn){ -// if(currpooltype==DBPOOLTYPE_SPRING) return; -// if(null!=conn){ -// try { -// if(isTransation){ -// //提交事务 -// conn.setTransactionIsolation(Connection.TRANSACTION_READ_COMMITTED); -// }else{ -// conn.setTransactionIsolation(Connection.TRANSACTION_READ_UNCOMMITTED); -// } -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// } -// } -// -// public static UserTransaction getTransaction() { -// return getTransaction(WQLCore.defalutDBName); -// } - -// public static UserTransaction getTransaction(String name) { -// UserTransaction utx = null; -// -// DBPoolSpring dbPoolSpring = DBPoolSpring.getInstance(); -// if(dbPoolSpring.isUseful()){ -// utx = dbPoolSpring.getTransaction(name); -// }else{ -// DBPoolWeblogic dbPoolweblogic = DBPoolWeblogic.getInstance(); -// if (dbPoolweblogic.isUseful()) { -// utx = dbPoolweblogic.getTransaction(name); -// } else { -// DBPoolWebsphere dbPollwebsphere = DBPoolWebsphere.getInstance(); -// if (dbPollwebsphere.isUseful()) { -// utx = dbPollwebsphere.getTransaction(name); -// } else { -// DBPoolTomcat dbPooltomcat = DBPoolTomcat.getInstance(); -// if (dbPooltomcat.isUseful()) { -// utx = dbPooltomcat.getTransaction(name); -// } else { -// DBPool dbpool = DBPool.getInstance(); -// if (dbpool.isUseful()) { -// utx = dbpool.getTransaction(name); -// } else { -// log.error("DBConnection无法获得事务管理资源."); -// } -// } -// } -// } -// -// log.error("DBConnection无法获得事务管理资源."); -// } -// return utx; -// } - - /** - * 释放数据库连接 - * @param conn - */ - public static void freeConnection(Connection conn) { - freeConnection(conn,null); - } - - /** - * 释放数据库连接 - * @param conn - * @param name - */ - public static void freeConnection(Connection conn, String name) { - if(currpooltype==DBPOOLTYPE_SPRING){ - //if(null==name) throw new IllegalArgumentException("spring数据源释放连接时必须传递连接池名称"); - if(null==name||"".equals(name)){ - name = WQLCore.defalutDBName; - } - DataSource dataSource = (DataSource) SpringContextHolder.getApplicationContext().getBean(name); -// DataSourceUtils.releaseConnection(conn, dataSource); - - Db.use(dataSource).closeConnection(conn); - return; - } - try { - if (conn != null) { - //conn.setAutoCommit(true); - conn.close(); - conn = null; - } - } catch (Exception e) { - //e.printStackTrace(); - } - } - - - public static void main(String[] args) { - /* - * UserTransaction utx = jotm.getUserTransaction(); PreparedStatement - * stat = null; Connection conn = null; try { utx.begin(); - * System.out.println("Transaction Begin"); conn = getConnection(); - * System.out.println("连接"+conn) ; System.out.println("Insert Operation - * With Transaction Begin"); stat = conn.prepareStatement( "insert into - * transactiontest values(4,'With Transaction')"); stat.executeUpdate(); - * stat.close(); PreparedStatement stat1 = conn.prepareStatement( - * "insert into transactiontest values(3,'With Transaction')"); - * stat1.executeUpdate(); stat1.close(); conn.close(); - * System.out.println("Insert Operation With Transaction Finish"); - * //Thread.sleep(20000); System.out.println("Transaction Commit"); - * //utx.rollback(); utx.commit(); } catch (Exception e) { - * e.printStackTrace(); try { utx.rollback(); } catch (Exception exp) { - * exp.printStackTrace(); } } finally { try { - * System.out.println("OOOO"); jotm.stop() ; jotm=null; // stat.close(); } - * catch (Exception e) { e.printStackTrace();} try { conn.close(); } - * catch (Exception e) {e.printStackTrace();} } - */ - - DBConnection cnn = DBConnection.getInstance(); -// System.out.println(cnn.getTransaction("QC")); -// System.out.println(cnn.getTransaction("TC")); -// System.out.println(cnn.getConnection("QC")); -// System.out.println(cnn.getConnection("TC")); -// System.out.println(cnn.getConnection("QC")); -// System.out.println(cnn.getConnection("TC")); -// cnn.freeConnection(cnn.getConnection("QC")); - System.exit(1); - - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPool.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPool.java deleted file mode 100644 index 9456b84..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPool.java +++ /dev/null @@ -1,121 +0,0 @@ -package org.nl.modules.wql.core.db; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; - -import javax.transaction.UserTransaction; -import java.sql.Connection; -import java.sql.Driver; -import java.sql.DriverManager; -import java.sql.SQLException; -import java.util.Hashtable; -import java.util.Vector; - -@Slf4j -public class DBPool { - private static DBPool instance; //唯一实例 - private static boolean Useful; //联结池是否可用 - - - private static int clients = 0; //当前实例使用客户端计数 - private static Vector drivers = new Vector(); //所有模式的驱动 - private static Hashtable pools = new Hashtable(); //自建连接池 - - /** - * @return Returns the useful. - */ - public static boolean isUseful() { - return Useful; - } - /** - * @param useful The useful to set. - */ - private static void setUseful(boolean useful) { - if (useful){ - log.debug("Local连接池启用 \n"); - }else{ - log.debug("Local连接池不启用 \n"); - } - Useful = useful; - } - - /** - * 返回唯一实例.如果是第一次调用此方法,则创建实例 - * - * @return DBPoolTomcat 唯一实例 - */ - static synchronized public DBPool getInstance() { - if (instance == null) { - instance = new DBPool(); - Connection conn = getConnection(); - UserTransaction ut = getTransaction(); - if (conn !=null){ - setUseful (true); - }else{ - setUseful(false); - } - freeConnection(conn); - conn=null; - ut=null; - } - clients++; - return instance; - } - - /** - * 建构函数私有以防止其它对象创建本类实例 - */ - private DBPool() { - - } - - /** - * 获得一个可用的(空闲的)连接 - * - * @param name 在属性文件中定义的连接池名字 - * @return Connection 可用连接或null - */ - public static Connection getConnection(String name) { - Connection conn = null; - DBConnBean dbb = WQLCore.dbMap.get(name); - try{ - Driver driver = (Driver)Class.forName(dbb.getDrivers()).newInstance(); - DriverManager.registerDriver(driver); - conn = DriverManager.getConnection(dbb.getUrl(), dbb.getUser(),dbb.getPassword()); - log.debug("LOCAL创建一个新的连接"); - }catch(Exception e){ - log.error("无法创建下列URL的连接:: " + dbb.getUrl() + ", 错误: " + e); - } - return conn; - } - - - public static Connection getConnection() { - return getConnection(WQLCore.defalutDBName); - } - - - public static UserTransaction getTransaction(String name) { - UserTransaction ut = null; - log.error("不能获得Local事务管理:local方式不支持事务管理"); - return ut; - } - - - public static UserTransaction getTransaction() { - return getTransaction(WQLCore.defalutDBName); - } - - - public static void freeConnection(Connection conn) { - try { - if (conn != null) { - //conn.setAutoCommit(true); - conn.close(); - } - } catch (SQLException e) { - //e.printStackTrace(); - } - } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolJBoss.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolJBoss.java deleted file mode 100644 index 975fac2..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolJBoss.java +++ /dev/null @@ -1,5 +0,0 @@ -package org.nl.modules.wql.core.db; - -public class DBPoolJBoss { - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolSpring.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolSpring.java deleted file mode 100644 index fb82a90..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolSpring.java +++ /dev/null @@ -1,158 +0,0 @@ -package org.nl.modules.wql.core.db; - -import cn.hutool.db.Db; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.util.SpringContextHolder; -import org.springframework.jdbc.datasource.DataSourceUtils; - -import javax.naming.Context; -import javax.naming.InitialContext; -import javax.naming.NamingException; -import javax.sql.DataSource; -import javax.transaction.UserTransaction; -import java.sql.Connection; -import java.util.Hashtable; - -/** - * Spring连接池 - * - * @author stiffen_peng - */ -@Slf4j -public class DBPoolSpring { - private static DBPoolSpring instance; //唯一实例 - private static boolean Useful = true; //连接池是否可用 - - /** - * @return Returns the useful. - */ - public static boolean isUseful() { - return Useful; - } - - /** - * @param useful The useful to set. - */ - private static void setUseful(boolean useful) { - if (useful) { - log.debug("Spring连接池启用 \n"); - } else { - log.debug("Spring连接池不启用 \n"); - } - Useful = useful; - } - - /** - * 返回唯一实例.如果是第一次调用此方法,则创建实例 - * - * @return DBPoolSpring 唯一实例 - */ - static synchronized public DBPoolSpring getInstance(String name) { - if (instance == null) { - instance = new DBPoolSpring(); -// Connection conn = getConnection(); -// if (conn !=null ){//&& ut !=null -// setUseful (true); -// }else{ -// setUseful(false); -// } -// freeConnection(conn,name); -// conn=null; - //ut=null; - } - return instance; - } - - /** - * 建构函数私有以防止其它对象创建本类实例 - */ - private DBPoolSpring() { - } - - /** - * 获得一个可用的(空闲的)连接 - * - * @param name 在属性文件中定义的连接池名字 - * @return Connection 可用连接或null - */ - public static Connection getConnection(String name) { - Connection conn = null; - try { - DataSource dataSource = SpringContextHolder.getBean(name); -// conn=Db.use(dataSource).getConnection(); - conn = DataSourceUtils.getConnection(dataSource); - } catch (Exception e) { - log.error("不能获得Spring连接池中的数据库连接:" + e.toString()); - } - return conn; - } - - - public static Connection getConnection() { - return getConnection(WQLCore.defalutDBName); - - } - - - public static UserTransaction getTransaction(String name) { - return getTransaction(); - } - - - public static UserTransaction getTransaction() { - UserTransaction ut = null; - try { - //JtaTransactionManager txManager = (JtaTransactionManager)SpringContext.getBean("UdataSource"); - //ut = txManager.getUserTransaction(); - } catch (Exception e) { - log.error("不能获得Spring事务管理:Spring方式不支持事务管理"); - } - return ut; - } - - /** - * 将连接对象返回给由名字指定的连接池 - * - * @param conn 连接对象 - */ - public static void freeConnection(Connection conn, String name) { -// try { -// if (conn != null) { -// conn.close(); -// } - DataSource dataSource = (DataSource) SpringContextHolder.getBean(name); - DataSourceUtils.releaseConnection(conn, dataSource); - - - /* Db.use(dataSource).closeConnection(conn);*/ -// } catch (SQLException e) { -// log.error("数据库连接关闭:"+e.toString() ); -// } - } - - private static InitialContext getInitialContext() throws NamingException { - Hashtable env = new Hashtable(); - env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); - //env.put(Context.PROVIDER_URL, PROVIDER_URL); - //ht.put(Context.SECURITY_PRINCIPAL, "weblogic"); - //ht.put(Context.SECURITY_CREDENTIALS, "weblogic"); - InitialContext Context = new InitialContext(env); - return Context; - } - - private static void freeContext(InitialContext ctx) { - try { - ctx.close(); - } catch (NamingException e) { - log.error("Spring上下文关闭出错:" + e.toString()); - } - ctx = null; - } - -// public static void main(String[] args) { -// -// DBPoolSpring cnn = DBPoolSpring.getInstance(); -// -// } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolTomcat.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolTomcat.java deleted file mode 100644 index 4a53d87..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolTomcat.java +++ /dev/null @@ -1,139 +0,0 @@ -/********************** 版权声明 ************************* - * 类名: DBPoolTomcat - * 包名: com.crea.wdk.core.db.core.db - * 版权: - * 职责:Tomcat数据库连接池管理 - * 版本:v1.0 - ******************************************************** - * History:
- * 1、2014-06-24 10:50:08 yumeng 创建v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.db; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; - -import javax.naming.Context; -import javax.naming.InitialContext; -import javax.transaction.UserTransaction; -import java.sql.Connection; -import java.sql.SQLException; - -@Slf4j -public class DBPoolTomcat { - private static DBPoolTomcat instance; // 唯一实例 - private static boolean Useful; //联结池是否可用 - - /** - * @return Returns the useful. - */ - public static boolean isUseful() { - return Useful; - } - /** - * @param useful The useful to set. - */ - private static void setUseful(boolean useful) { - if (useful){ - log.debug("Tomcat连接池启用 \n"); - }else{ - log.debug("Tomcat连接池不启用 \n"); - } - Useful = useful; - } - - /** - * 返回唯一实例.如果是第一次调用此方法,则创建实例 - * - * @return DBPoolTomcat 唯一实例 - */ - static synchronized public DBPoolTomcat getInstance() { - if (instance == null) { - instance = new DBPoolTomcat(); - Connection conn = getConnection(); - UserTransaction ut = getTransaction(); - if (conn !=null && ut !=null){ - setUseful (true); - }else{ - setUseful(false); - } - freeConnection(conn); - conn=null; - ut=null; - } - return instance; - } - - /** - * 建构函数私有以防止其它对象创建本类实例 - */ - private DBPoolTomcat() { - } - - /** - * 获得一个可用的(空闲的)连接 - * - * @param name 在属性文件中定义的连接池名字 - * @return Connection 可用连接或null - */ - public static Connection getConnection(String name) { - Connection conn = null; - try { - Context initCtx = new InitialContext(); - Context ctx = (Context) initCtx.lookup("java:comp/env"); - - //获取连接池对象 - Object obj = (Object) ctx.lookup(name); - - javax.sql.DataSource ds = (javax.sql.DataSource) obj; - conn = ds.getConnection(); - } catch (Exception e) { - log.error("不能获得Tomcat连接池中的数据库连接:"+e.toString() ); - } - return conn; - } - - - public static Connection getConnection() { - return getConnection(WQLCore.defalutDBName); - } - - - public static UserTransaction getTransaction(String name) { - UserTransaction ut = null; - try { - Context initCtx = new InitialContext(); - Context ctx = (Context) initCtx.lookup("java:comp/env"); - //获取连接池对象 - Object obj = (Object) ctx.lookup("U"+name); - ut = (UserTransaction) obj; - //setUseful (true); - } catch (Exception e) { - log.error("不能获得Tomcat事务管理:"+e.toString() ); - //System.out.print("DBPool:"+e.toString()); - //e.printStackTrace(); - } - return ut; - } - - - public static UserTransaction getTransaction() { - return getTransaction(WQLCore.defalutDBName); - } - - /** - * 将连接对象返回给由名字指定的连接池 - * - * @param conn 连接对象 - */ - public static void freeConnection(Connection conn) { - try { - if (conn != null) { - conn.close(); - } - } catch (SQLException e) { - e.printStackTrace(); - } - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWeblogic.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWeblogic.java deleted file mode 100644 index 0df37c2..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWeblogic.java +++ /dev/null @@ -1,155 +0,0 @@ -package org.nl.modules.wql.core.db; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; - -import javax.naming.Context; -import javax.naming.InitialContext; -import javax.naming.NamingException; -import javax.transaction.UserTransaction; -import java.sql.Connection; -import java.sql.SQLException; -import java.util.Hashtable; - - -@Slf4j -public class DBPoolWeblogic { - private static DBPoolWeblogic instance; // 唯一实例 - private static boolean Useful; //联结池是否可用 - private static String PROVIDER_URL = "t3://127.0.0.1:7001"; - - /** - * @return Returns the useful. - */ - public static boolean isUseful() { - return Useful; - } - /** - * @param useful The useful to set. - */ - private static void setUseful(boolean useful) { - if (useful){ - log.debug("Weblogic连接池启用 \n"); - }else{ - log.debug("Weblogic连接池不启用 \n"); - } - Useful = useful; - } - - /** - * 返回唯一实例.如果是第一次调用此方法,则创建实例 - * - * @return DBPoolWeblogic 唯一实例 - */ - static synchronized public DBPoolWeblogic getInstance() { - if (instance == null) { - instance = new DBPoolWeblogic(); - Connection conn = getConnection(); - UserTransaction ut = getTransaction(); - if (conn !=null && ut !=null){ - setUseful (true); - }else{ - setUseful(false); - } - freeConnection(conn); - conn=null; - ut=null; - } - return instance; - } - - /** - * 建构函数私有以防止其它对象创建本类实例 - */ - private DBPoolWeblogic() { - } - - /** - * 获得一个可用的(空闲的)连接 - * - * @param name 在属性文件中定义的连接池名字 - * @return Connection 可用连接或null - */ - public static Connection getConnection(String name) { - Connection conn = null; - try { - InitialContext ctx = getInitialContext(); - //获取连接池对象 - javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup (name); - conn = ds.getConnection(); - freeContext(ctx); - } catch (Exception e) { - log.error("不能获得Weblogic连接池中的数据库连接:"+e.toString() ); - } - return conn; - } - - - public static Connection getConnection() { - return getConnection(WQLCore.defalutDBName); - - } - - - public static UserTransaction getTransaction(String name) { - return getTransaction(); - } - - - public static UserTransaction getTransaction() { - UserTransaction ut = null; - try { - InitialContext ctx = getInitialContext(); - //获取事务管理 - ut=(UserTransaction)ctx.lookup("javax.transaction.UserTransaction"); - //setUseful (true); - freeContext(ctx); - } catch (Exception e) { - log.error("不能获得Weblogic事务管理:"+e.toString() ); - } - return ut; - } - - /** - * 将连接对象返回给由名字指定的连接池 - * - * @param conn 连接对象 - */ - public static void freeConnection(Connection conn) { - try { - if (conn != null) { - conn.close(); - } - } catch (SQLException e) { - log.error("数据库连接关闭:"+e.toString() ); - } - } - - private static InitialContext getInitialContext() throws NamingException - { - Hashtable env = new Hashtable(); - env.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory"); - //env.put(Context.PROVIDER_URL, PROVIDER_URL); - //ht.put(Context.SECURITY_PRINCIPAL, "weblogic"); - //ht.put(Context.SECURITY_CREDENTIALS, "weblogic"); - InitialContext Context = new InitialContext(env); - return Context; - } - - private static void freeContext(InitialContext ctx){ - try { - ctx.close(); - } catch (NamingException e) { - log.error("Weblogic上下文关闭出错:"+e.toString() ); - } - ctx=null; - } - - public static void main(String[] args) { - - DBPoolWeblogic cnn = DBPoolWeblogic.getInstance(); - - - - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWebsphere.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWebsphere.java deleted file mode 100644 index 17aadd4..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/db/DBPoolWebsphere.java +++ /dev/null @@ -1,153 +0,0 @@ -package org.nl.modules.wql.core.db; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; - -import javax.naming.InitialContext; -import javax.naming.NamingException; -import javax.transaction.UserTransaction; -import java.sql.Connection; -import java.sql.SQLException; - -@Slf4j -public class DBPoolWebsphere { - private static DBPoolWebsphere instance; // 唯一实例 - private static boolean Useful; //联结池是否可用 - private static String PROVIDER_URL = "iiop://localhost:2809/"; - - /** - * @return Returns the useful. - */ - public static boolean isUseful() { - return Useful; - } - /** - * @param useful The useful to set. - */ - private static void setUseful(boolean useful) { - if (useful){ - log.debug("WebShpere连接池启用 \n"); - }else{ - log.debug("WebSphere连接池不启用 \n"); - } - Useful = useful; - } - - /** - * 返回唯一实例.如果是第一次调用此方法,则创建实例 - * - * @return DBPoolWebSphere 唯一实例 - */ - static synchronized public DBPoolWebsphere getInstance() { - if (instance == null) { - instance = new DBPoolWebsphere(); - Connection conn = getConnection(); - UserTransaction ut = getTransaction(); - if (conn !=null && ut !=null){ - setUseful (true); - }else{ - setUseful(false); - } - freeConnection(conn); - conn=null; - ut=null; - } - return instance; - } - - /** - * 建构函数私有以防止其它对象创建本类实例 - */ - private DBPoolWebsphere() { - } - - /** - * 获得一个可用的(空闲的)连接 - * - * @param name 在属性文件中定义的连接池名字 - * @return Connection 可用连接或null - */ - public static Connection getConnection(String name) { - Connection conn = null; - try { - InitialContext ctx = getInitialContext(); - //获取连接池对象 - javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup (name); - conn = ds.getConnection(); - freeContext(ctx); - } catch (Exception e) { - log.error("不能获得WebSphere连接池中的数据库连接:"+e.toString() ); - } - return conn; - } - - - public static Connection getConnection() { - return getConnection(WQLCore.defalutDBName); - - } - - - public static UserTransaction getTransaction(String name) { - return getTransaction(); - } - - - public static UserTransaction getTransaction() { - UserTransaction ut = null; - try { - InitialContext ctx = getInitialContext(); - //获取事务管理 - ut=(UserTransaction)ctx.lookup("java:comp/UserTransaction"); - //setUseful (true); - freeContext(ctx); - } catch (Exception e) { - log.error("不能获得WebSphere事务管理:"+e.toString() ); - } - return ut; - } - - /** - * 将连接对象返回给由名字指定的连接池 - * - * @param conn 连接对象 - */ - public static void freeConnection(Connection conn) { - try { - if (conn != null) { - conn.close(); - } - } catch (SQLException e) { - log.error("数据库连接关闭:"+e.toString() ); - } - } - - private static InitialContext getInitialContext() throws NamingException - { - /*Hashtable env = new Hashtable(); - env.put(Context.INITIAL_CONTEXT_FACTORY,"com.ibm.websphere.naming.WsnInitialContextFactory"); - env.put(Context.PROVIDER_URL, PROVIDER_URL); - InitialContext Context = new InitialContext(env); - return Context;*/ - return new InitialContext(); - } - - private static void freeContext(InitialContext ctx){ - try { - ctx.close(); - } catch (NamingException e) { - log.error("WebSphere上下文关闭出错:"+e.toString() ); - } - ctx=null; - } - - public static void setPROVIDERURL(String PROVIDERURL){ - PROVIDER_URL = PROVIDERURL; - } - - public static void main(String[] args) { - - DBPoolWebsphere cnn = DBPoolWebsphere.getInstance(); - - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/Syntax.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/Syntax.java deleted file mode 100644 index b0e4e8c..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/Syntax.java +++ /dev/null @@ -1,260 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: Syntax.java - * 包名: com.crea.wdk.core.wql.core - * 版权: - * 职责:wql指令处理核心类 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-06-25 14:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.engine; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.engine.object.WO; -import org.nl.modules.wql.core.engine.syntax.IWQL; -import org.nl.modules.wql.core.engine.syntax.wqlAssign; -import org.nl.modules.wql.core.engine.syntax.wqlDUMP; -import org.nl.modules.wql.core.engine.syntax.wqlERROR; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Stack; - - -/** - * 语法解析核心类 - * @author Administrator - * - */ -@Slf4j -public class Syntax { - private WO wo; - Stack stack = new Stack(); //指令栈 - Stack cmdstack = new Stack(); //指令作用域栈 - - public static ArrayList KEYWORD = new ArrayList(); //关键运算符 - public static ArrayList SINGWORD = new ArrayList(); //单个运算符 - - - public static final String UNIONSTR = "UNIONSTR"; //关键字:unionstr - static{ - /*********************************** - * 下面所列的指令均需成对出现,均需要 - * 通过指令栈暂存,以支持指令嵌套 - */ - /*********************************** - * sql运算符 - *********************************/ - KEYWORD.add("SELECT"); //查询 - KEYWORD.add("ENDSELECT"); //查询结束 - - KEYWORD.add("INSERT"); //插入 - KEYWORD.add("ENDINSERT"); //插入结束 - - KEYWORD.add("UPDATE"); //更新 - KEYWORD.add("ENDUPDATE"); //更新结束 - - KEYWORD.add("DELETE"); //删除 - KEYWORD.add("ENDDELETE"); //删除结束 - - KEYWORD.add("EXECSQL"); //执行 - KEYWORD.add("ENDEXECSQL"); //执行结束 - - /*********************************** - * 逻辑运算符 - *********************************/ - KEYWORD.add("IF"); //判断 - KEYWORD.add("ENDIF"); //判断结束 - - KEYWORD.add("CALLWQL"); //调用其他WQL - KEYWORD.add("ENDCALLWQL"); //调用其他WQL结束 - - KEYWORD.add("CALLJAVA"); //调用JAVA - KEYWORD.add("ENDCALLJAVA"); //调用JAVA结束 - - KEYWORD.add("CALLPROC"); //调用存储过程 - KEYWORD.add("ENDCALLPROC"); //调用存储过程结束 - - KEYWORD.add("QUERY"); //普通查询 - KEYWORD.add("ENDQUERY"); //普通查询结束 - - KEYWORD.add("PAGEQUERY"); //分页查询 - KEYWORD.add("ENDPAGEQUERY"); //分页查询结束 - - KEYWORD.add("LOOP"); //按次数循环 - KEYWORD.add("ENDLOOP"); //按次数循环结束 - - KEYWORD.add("WHILE"); //按条件循环 - KEYWORD.add("ENDWHILE"); //按条件循环结束 - -// KEYWORD.add("OPTION"); //条件过滤 -// KEYWORD.add("ENDOPTION"); //条件过滤结束 - - /*********************************** - * 特殊指令 单独在指令中判断 - *********************************/ - - SINGWORD.add("DUMP"); //输出提示信息 - SINGWORD.add("ERROR"); //输出错误信息 - } - - /////////////////////考虑运算符的对象化 - public boolean exec(WO wo, ArrayList list){ - boolean isSuccess = false; - this.wo = wo; - String cmd = ""; //当前命令域,如果遇到endxxx,则该命令域置空 - for(Iterator it = list.iterator();it.hasNext();){ - String wql = (String) it.next(); - String[] wqlarr = wql.split(" "); - String cmdname = wqlarr[0].toUpperCase(); - if(KEYWORD.contains(cmdname)){ //1、如果遇到运算符 - //判断是不是select,select支持嵌套查询 - if("SELECT".equals(cmdname)){ - //如果是在select里出现的select,则不予处理 - if("SELECT".equals(cmd) - ||"DELETE".equals(cmd) - ||"INSERT".equals(cmd) - ||"UPDATE".equals(cmd)){ - //添加子查询标志 - stack.push("SUB"+wql); - continue; - } - } - - //如果是结尾符,则出栈该任务域并交付执行 - if(cmdname.startsWith("END")){ - stack.push(wql); - - //如果命令栈中还存在前一个命令域 - if(cmdstack.size()>0){ - //将当前作用域构建为运行对象 - IWQL iwql = getWQLObject(wql); - stack.push(iwql); - - //则用前一命令域替换当前命令域 - cmd = cmdstack.pop(); - }else{ - //当前命令域为独立作用域,需要整体执行 - cmd = ""; - isSuccess = exec(wql); - if(!isSuccess){ - return false; - } - } - }else{ - //遇到新的指令域 - if(!"".equals(cmd)){ - //如果当前仍处于命令域中,则前一命令域入栈 - cmdstack.push(cmd); - } - cmd = cmdname; - stack.push(wql); - } - }else if(SINGWORD.contains(cmdname)){ //2、如果遇到单个运算符 - - ArrayList ls = new ArrayList(); - ls.add(wql); - IWQL iwql = null; - if("ERROR".equals(cmdname)){ - iwql = new wqlERROR(); - }else if("DUMP".equals(cmdname)){ - iwql = new wqlDUMP(); - } - iwql.setWQL(wo, wql, ls); - stack.push(iwql); - }else if(wqlarr.length>1&&"=".equals(wqlarr[1])){ //3、如果遇到赋值运算符 - //如果是处于可执行区域,则为运算对象 - if("".equals(cmd)){ - //如果处于立即执行区域,则立即执行 - IWQL iwql = new wqlAssign(); - iwql.setWQL(wo, wql, null); - iwql.exec(-1); - - }else if("IF".equals(cmd) - ||"LOOP".equals(cmd) - ||"WHILE".equals(cmd)){ - //处于嵌套区域,调用交由父级指令域执行 - IWQL iwql = new wqlAssign(); - iwql.setWQL(wo, wql, null); - stack.push(iwql); - }else{ - stack.push(wql); - } - }else{ - if(!"".equals(wql)){ - stack.push(wql); - } - } - } - - log.debug("cmdstack size:"+cmdstack.size()); - log.debug("stack size:"+stack.size()); - if(stack.size()>0){ - log.error("wql代码中存在关键字未封闭,请检查!"); - log.debug(stack.toString()); - return false; - }else{ - return true; - } - } - - /** - * 按命令域执行指令 - * @param endCmd - * @return - */ - private IWQL getWQLObject(String endCmd){ - ArrayList ls = new ArrayList(); - String startCmd = endCmd.substring(3,endCmd.length()); - String cmdLine = ""; - while(stack.size()>0){ - Object o = stack.pop(); - ls.add(0,o); - if("java.lang.String".equals(o.getClass().getName())){ - cmdLine = (String) o; - if(cmdLine.startsWith(startCmd)){ - break; - } - } - } - //根据指令构建指令对象 - IWQL iwql = IWQL.newInstance(startCmd); - //赋值 - iwql.setWQL(this.wo,cmdLine, ls); - return iwql; - } - - /** - * 执行完整指令,包含嵌套 - */ - private boolean exec(String endCmd){ - boolean isSuccess = false; - ArrayList ls = new ArrayList(); - String startCmd = endCmd.substring(3,endCmd.length()); - String cmdLine = ""; - while(stack.size()>0){ - Object o = stack.pop(); - ls.add(0,o); - if("java.lang.String".equals(o.getClass().getName())){ - cmdLine = (String) o; - if(cmdLine.startsWith(startCmd)){ - if(cmdLine.split(" ")[0].equalsIgnoreCase(startCmd)){ - break; - } - } - } - } - - IWQL iwql = IWQL.newInstance(startCmd); - //赋值 - iwql.setWQL(this.wo,cmdLine, ls); - isSuccess = iwql.exec(-1); - return isSuccess; - } - - - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/WQLEngine.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/WQLEngine.java deleted file mode 100644 index 11a1263..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/WQLEngine.java +++ /dev/null @@ -1,583 +0,0 @@ -package org.nl.modules.wql.core.engine; - -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQL; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.*; -import org.nl.modules.wql.core.db.DBConnBean; -import org.nl.modules.wql.core.engine.object.WO; -import org.nl.modules.wql.util.WqlUtil; - -import java.util.ArrayList; -import java.util.Iterator; -import java.util.regex.Pattern; - -@Slf4j -public class WQLEngine { - - - public static boolean loadWQLObject(ArrayList tbnames) { - for (Iterator it = tbnames.iterator(); it.hasNext(); ) { - String tbname = it.next(); - ArrayList cols = WQLCore.tableMap.get(tbname); - WQLObject wo = new WQLObject(tbname, cols); - WQLCore.wqlobjectMap.put(tbname, wo); - log.info("【WQL】-【WQLObject】:生成数据模型:" + tbname); - } - - return true; - - } - - /** - * 加载代码模型 - * - * @return - */ - public static boolean loadModule(JSONArray jxlss, int nSheet) { - boolean isSuccess = true; - String name = ""; - String line = ""; - try { - for (int i = 0; i < jxlss.size(); i++) { - JSONObject jxls = jxlss.getJSONObject(i); - JSONArray jsheets = jxls.getJSONArray("sheets"); - - name = jxls.getString("name"); - - //读取第4个页签:代码模型 - JSONObject jsheet = jsheets.getJSONObject(nSheet); - JSONArray jrows = jsheet.getJSONArray("rows"); - //按行循环 - for (int nRow = 3; nRow < jrows.size(); nRow++) { - JSONObject jrow = jrows.getJSONObject(nRow); - line = jrow.toString(); - - // 序号 模型编码 模型名称 数据类型 数据源 value字段 name字段 过滤条件 排序条件 使用缓存 - - // String col0 = sheet.getCell(0,nRow).getContents().trim().toUpperCase(); //序号 - String col1 = jrow.getString("col1"); //模型编码 - String col2 = jrow.getString("col2"); //模型名称 - String col3 = jrow.getString("col3"); //数据类型 - String col4 = jrow.getString("col4"); //数据源 - String col5 = jrow.getString("col5"); //value字段 - String col6 = jrow.getString("col6"); //name字段 - String col7 = jrow.getString("col7"); //过滤条件 - String col8 = jrow.getString("col8"); //排序条件 - String col9 = jrow.getString("col9"); //使用缓存 - - - if (!"".equals(col1)) { - //如果是需要进行缓存的,则记录缓存表名 - WQLModule mb = new WQLModule(); - mb.setModulecode(col1); - mb.setModulename(col2); - mb.setDatatype(col3); - mb.setDatasource(col4); - mb.setValuefield(col5); - mb.setNamefield(col6); - mb.setFilter(col7); - mb.setOrderby(col8); - mb.setUsecache(col9); - - WQLCore.moduleMap.put(col1.toUpperCase(), mb); - log.info("【WQL】-【WQLEngine】:加载代码模型:" + col1 + ",数据源类型:" + col3); - } - } - } - log.debug("【WQL】-【WQLEngine】:代码模型数据加载成功"); - } catch (Exception e) { - log.debug("文件名:" + name); - log.debug("行内容:" + line); -// log.debug(jxlss.toString()); - e.printStackTrace(); - isSuccess = false; - } - return isSuccess; - } - - /** - * 加载表索引 - * - * @return - */ - public static boolean loadTableIndex(JSONArray jxlss, int nSheet) { - boolean isSuccess = true; - for (int i = 0; i < jxlss.size(); i++) { - JSONObject jxls = jxlss.getJSONObject(i); - JSONArray jsheets = jxls.getJSONArray("sheets"); - - //读取第5个页签:表索引 - JSONObject jsheet = jsheets.getJSONObject(nSheet); - JSONArray jrows = jsheet.getJSONArray("rows"); - //按行循环 - for (int nRow = 3; nRow < jrows.size(); nRow++) { - JSONObject jrow = jrows.getJSONObject(nRow); -// String col0 = sheet.getCell(0,nRow).getContents().trim().toUpperCase(); //序号 - String col1 = jrow.getString("col1"); //页签 - String col2 = jrow.getString("col2"); //表名 - String col3 = jrow.getString("col3"); //表中文名 - String col4 = jrow.getString("col4"); //是否缓存 - String col5 = jrow.getString("col5"); //是否临时表 - String col6 = jrow.getString("col6"); //说明 - - //如果是需要进行缓存的,则记录缓存表名 - TableBean tb = new TableBean(); - tb.setModulename(col1); - tb.setTablename(col2); - tb.setCnname(col3); - if ("1".equals(col4)) { - tb.setBuffer(true); - } else { - tb.setBuffer(false); - } - if ("1".equals(col5)) { - tb.setTemplate(true); - } else { - tb.setTemplate(false); - } - tb.setRemark(col6); - - WQLCore.tableIndex.add(tb); - } - } - log.debug("【WQL】-【WQLEngine】:表索引加载成功"); - - return isSuccess; - } - - - /** - * 加载数据类型 - * - * @return - */ - public static boolean loadDBType(JSONObject jxls, int nSheet) { - if (null == jxls || jxls.size() == 0) { - return true; - } - JSONArray jsheets = jxls.getJSONArray("sheets"); - //读取第3页签 - JSONObject jsheet = jsheets.getJSONObject(nSheet); - JSONArray jrows = jsheet.getJSONArray("rows"); - //按行循环 - for (int nRow = 3; nRow < jrows.size(); nRow++) { - JSONObject jrow = jrows.getJSONObject(nRow); -// String col0 = sheet.getCell(0,nRow).getContents().trim().toUpperCase(); //序号 - String col1 = jrow.getString("col1"); //字段名 - String col2 = jrow.getString("col2"); //mssql - String col3 = jrow.getString("col3"); //oracle - String col4 = jrow.getString("col4"); //db2 - String col5 = jrow.getString("col5"); //mysql - String col6 = jrow.getString("col6"); //说明 - - DataTypeBean dtb = new DataTypeBean(); - dtb.setDesc(col6); - dtb.setFieldName(col1); - if (col2.startsWith("VARCHAR") - || col2.startsWith("CHAR")) { - dtb.setFieldType(DataType._STRING); - } else if (col2.startsWith("NUMBER") - || col2.startsWith("NUMERIC")) { - if (col2.endsWith(",0)")) { - dtb.setFieldType(DataType._INTEGER); - } else { - dtb.setFieldType(DataType._NUMBER); - } - } else if (col2.startsWith("TEXT")) { - dtb.setFieldType(DataType._CLOB); - } else if (col2.startsWith("IMAGE")) { - dtb.setFieldType(DataType._BLOB); - } - dtb.setFieldValue(DataType.MSSQL, col2.toUpperCase()); - dtb.setFieldValue(DataType.ORACLE, col3.toUpperCase()); - dtb.setFieldValue(DataType.DB2, col4.toUpperCase()); - dtb.setFieldValue(DataType.MYSQL, col5.toUpperCase()); - - DataType.dataMap.put(col1.toUpperCase(), dtb); - } - - log.debug("【WQL】-【WQLEngine】:加载统一约定的数据类型"); - - return true; - } - - /** - * 读取所有表结构 - * - * @param jxlss - */ - public static ArrayList loadTables(JSONArray jxlss, int nSheet) { - boolean isSuccess = true; - String name = ""; - String line = ""; - ArrayList tbnames = new ArrayList(); - try { - for (int i = 0; i < jxlss.size(); i++) { - JSONObject jxls = jxlss.getJSONObject(i); - JSONArray jsheets = jxls.getJSONArray("sheets"); - boolean isNew = false; - - name = jxls.getString("name"); - - //从第5个页签开始读取表结构 - for (int j = nSheet; j < jsheets.size(); j++) { - JSONObject jsheet = jsheets.getJSONObject(j); - JSONArray jrows = jsheet.getJSONArray("rows"); - String tbname = ""; - ArrayList rows = new ArrayList(); - //按行循环 - for (int nRow = 0; nRow < jrows.size(); nRow++) { - JSONObject jrow = jrows.getJSONObject(nRow); - line = jrow.toString(); - - String col0 = jrow.getString("col0"); - String col1 = jrow.getString("col1"); - String col2 = jrow.getString("col2"); - String col3 = jrow.getString("col3"); - String col4 = jrow.getString("col4"); - String col5 = jrow.getString("col5"); - String col6 = jrow.getString("col6"); - String col7 = jrow.getString("col7"); - String col8 = jrow.getString("col8"); - String col9 = jrow.getString("col9"); - String col10 = jrow.getString("col10"); - String col11 = jrow.getString("col11"); - //如果是第一行,则肯定为新的表格 - if (0 == nRow) { - isNew = true; - } - //如果是新的表格,则初始化相关参数 - if (isNew) { - isNew = false; - nRow += 1; - rows = new ArrayList(); - tbname = WqlUtil.between(col0, "【", "】").toUpperCase(); - continue; - } - - //遇到最后一行,将当前的存入表 - if ("".equals(col0) && "".equals(col1)) { - isNew = true; - TableBean tb = WQLEngine.getTableBean(tbname); - - if (null != tb && null != tbname && !"".equals(tbname.trim()) && rows.size() > 0) { - if (!tb.isTemplate()) { -// WQLCore.tableMap.put(tbname, rows); - addTableToMap(tbname, rows); - tbnames.add(tbname); - log.info("【WQL】-【WQLEngine】:加载表:" + name + "(Sheet" + j + ") " + tbname + " len=" + rows.size()); - } else { - WQLCore.tempTableMap.put(tbname, rows); - log.info("【WQL】-【WQLEngine】:加载临时表:" + name + "(Sheet" + j + ") " + tbname + " len=" + rows.size()); - } - } - continue; - } - //禁止加载属性不为1时,认为是有效的字段 - if (!("1".equals(col11) || "Y".equalsIgnoreCase(col11))) { - XLSTableRow xtr = new XLSTableRow(); - xtr.setNo(col0); - xtr.setCnname(col1); - xtr.setEnname(col2); - xtr.setParam(col3); - xtr.setType(col4); - xtr.setLen(col5); - xtr.setIsnull(col6); - xtr.setDefaultvalue(col7); - xtr.setDesc(col8); - xtr.setStatus(col9); - xtr.setModule(col10); - rows.add(xtr); - } - } - - //添加最后一个表格 - TableBean tb = WQLEngine.getTableBean(tbname); - if (null != tb && null != tbname && !"".equals(tbname.trim()) && rows.size() > 0) { - if (!tb.isTemplate()) { -// WQLCore.tableMap.put(tbname, rows); - addTableToMap(tbname, rows); - tbnames.add(tbname); - log.info("【WQL】-【WQLEngine】:加载表:" + name + "(Sheet" + j + ") " + tbname + " len=" + rows.size()); - } else { - WQLCore.tempTableMap.put(tbname, rows); - log.info("【WQL】-【WQLEngine】:加载临时表:" + name + "(Sheet" + j + ") " + tbname + " len=" + rows.size()); - } - } - } - } - } catch (Exception e) { - log.debug("读取table定义出错:" + e.getMessage()); - log.debug("文件名:" + name); - log.debug("行内容:" + line); - tbnames = null; - } - return tbnames; - } - - - private static void addTableToMap(String tbname, ArrayList cols) { - //添加表到缓存 - WQLCore.tableMap.put(tbname, cols); - - //添加索引 - String tableReg = WQLCore.tableReg; - if (null != tableReg && !"".equals(tableReg)) { - tableReg += "|(?i)" + tbname; - } else { - tableReg = "(?i)" + tbname; - } - WQLCore.tableReg = tableReg; - WQLCore.tableRegPattern = Pattern.compile(WQLCore.tableReg); - } - - /** - * 查找指定名称的表索引 - * - * @param tbname - * @return - */ - private static TableBean getTableBean(String tbname) { - TableBean tb = null; - for (Iterator it = WQLCore.tableIndex.iterator(); it.hasNext(); ) { - TableBean tbtmp = it.next(); - if (tbtmp.getTablename().equals(tbname)) { - tb = tbtmp; - break; - } - } - if (null == tb) { - tb = new TableBean(); - tb.setTablename(tbname); - } - return tb; - } - - /** - * 读取db.properties - * - * @return - */ - public static boolean loadWQLProperties() { - DBConnBean dbb = new DBConnBean(); - dbb.setDbtype("mysql"); - dbb.setDrivers(""); - WQLCore.dbMap.put(WQLCore.defalutDBName, dbb); - return true; - } - - /** - * 读取db.properties - * - * @return - */ - /*public static boolean loadWQLProperties() { - //读取默认的数据库连接库 -// WQLCore.defalutDBName = uPropeReader.read("wql","dbname"); -// WQLCore.ROOT = uPropeReader.read("wql","root"); - - WQLCore.defalutDBName = WDK.getProperties("db.defalut"); - WQLCore.ROOT = WDK.getProperties("db.wqlroot"); - - if (null == WQLCore.ROOT || "".equals(WQLCore.ROOT.trim())) { - return false; - } else { - WQLCore.ROOT = WQLCore.ROOT.replaceAll("[.]", "/"); - } - - //读取所有数据库连接库 -// HashMap map = uPropeReader.readAll("wql");aa - - for (Iterator it = WDKCore.Prop_WDK.keySet().iterator(); it.hasNext(); ) { - String key = it.next(); - String value = WDKCore.Prop_WDK.get(key); - if ("".equals(key) || -1 == key.indexOf(".")) { - continue; - } - String[] arr = key.split("[.]"); - if (arr.length < 3 || !key.toLowerCase().startsWith("db.")) { - continue; - } - String sname = key.split("[.]")[1]; - String satt = key.split("[.]")[2]; -// System.out.println(sname+"="+satt); - //如果遇到错误定义,则跳过 - if ("err".equals(sname.toLowerCase())) { - continue; - } - DBConnBean dbb = (DBConnBean) WQLCore.dbMap.get(sname); - if (null == dbb) { - dbb = new DBConnBean(); - } - if ("driver".equals(satt)) { - dbb.setDrivers(value); - } else if ("url".equals(satt)) { - dbb.setUrl(value); - } else if ("user".equals(satt)) { - dbb.setUser(value); - } else if ("password".equals(satt)) { - dbb.setPassword(value); - } else if ("maxconn".equals(satt)) { - dbb.setMaxconn(value); - } else if ("dbtype".equals(satt)) { - dbb.setDbtype(value.toUpperCase()); - } - WQLCore.dbMap.put(sname, dbb); - } - return true; - }*/ - /** - * 初始化读取错误列表 - * @return - */ -// public static boolean loadErrorCode(){ -// HashMap map = uPropeReader.readAll("wql"); -// Set keyset = map.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String key = (String) it.next(); -// String value = (String) map.get(key); -// try { -// -// if("".equals(key)||-1==key.indexOf(".")){ -// continue; -// } -// String sname = key.split("[.]")[0]; -// String satt = key.split("[.]")[1]; -// -// //如果遇到错误定义,则跳过 -// if("err".equals(sname.toLowerCase())){ -// value = new String(value.getBytes("ISO-8859-1"),"UTF-8"); -// ERROR.ERR.put(satt, value); -// }else{ -// continue; -// } -// } catch (UnsupportedEncodingException e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// } -// -// } -// return true; -// } - - /** - * @类名: loadAll - * @职责说明: 加载所有wql文件,按目录迭代查找所有wql文件 - * @创建者: yumeng - * @创建时间: 2014-06-23 11:25:35 - * @版权 Copyright(c)2014 - */ - - /** - * 解析所有wql文件 - * @return - */ -// public static boolean readWQL(){ -// Set keyset = WQLCore.wqlMap.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String wqlcode = (String) it.next(); -// ArrayList wqlcontent = WQLCore.wqlMap.get(wqlcode); -// try { -// WQLEngine.readWQL(wqlcode, wqlcontent); -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// return false; -// } -// } -// -// return true; -// } - - /** - * 针对一个独立的wql文件进行解析 - * - * @param wqlcode - * @param wqlcontent - * @throws Exception - */ - public static void readWQL(String wqlcode, ArrayList wqlcontent) throws Exception { - wqlcode = wqlcode.toUpperCase(); - WO wo = new WO(wqlcode, wqlcontent); - WQLCore.addWO(wqlcode, wo); - } - - - /** - * 加载中间层缓存数据 - * - * @return - */ - public static boolean loadBufferData() { - boolean isSuccess = true; - WQLCore.bufferData.clear(); - for (Iterator it = WQLCore.tableIndex.iterator(); it.hasNext(); ) { - TableBean tb = it.next(); - if (tb.isBuffer()) { - String tbname = tb.getTablename(); - String sql = "SELECT * FROM " + tbname; - JSONArray jrows = WQL.getWO("QWDKSY9999") - .addParam("flag", "1") - .addParam("sql", sql) - .process() - .getResultJSONArray(0); - WQLCore.bufferData.put(tbname.toLowerCase(), jrows); - } - } - - return isSuccess; - } -// -// /** -// * 为每一个表生成WO对象 -// * @return -// * @throws Exception -// */ -// public static boolean makeTableWQL() throws Exception{ -// boolean isSuccess = true; -// -// //对所有表进行循环 -// Set keyset = WQLCore.tableMap.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String tbname = it.next(); -// ArrayList rows = WQLCore.tableMap.get(tbname); -// -// //生成wqlobject并保存到内存中 -// ArrayList wqlContents = makeWQLContent(tbname, rows); -// WO wo = new WO(tbname,wqlContents); -// WQLCore.addWO(tbname, wo); -// } -// return isSuccess; -// } -// -// private static ArrayList makeWQLContent(String tbname,ArrayList rows){ -// ArrayList ls = new ArrayList(); -// -// ls.add("[交易说明]"); -// ls.add("[数据库]"); -// ls.add("[IO定义]"); -// //ls.add(" 输入.whereclause TYPEAS f_string"); -// for(int i=0;i=1 ){ - if (!StringUtils.equalsIgnoreCase(StringUtils.trim(A[0]),"") ){ - sContent=A[0]; - } - } - for (int k = 1; k < A.length; k++) { - if (APPCompare(A[k],"=",A[k-1])){} - else{ - if (!StringUtils.equalsIgnoreCase(sContent,"")){sContent = sContent+splitstr;} - sContent = sContent + A[k]; - } - } - return sContent; - } - - /** - * 返回将数组Array用character_exp1间隔后组成的字串 - */ - public static String APPARRAY2STR(String[] sArray, String splitstr) { - String sContent = ""; - for (int i = 0; i < sArray.length; i++) { - if (!StringUtils.equalsIgnoreCase(sContent,"")){sContent = sContent+splitstr;} - sContent = sContent + sArray[i]; - } - return sContent; - } - - /** - * 返回将数组Array用character_exp1间隔后组成的字串 - */ - public static String APPARRAY2STR(String[] sArray) { - String sContent = ""; - for (int i = 0; i < sArray.length; i++) { - sContent = sContent + sArray[i]+ MultiRecodeSplit; - } - return sContent; - } - - /** - * 返回由若干个指定字符的字符串。即APPDUP(“A”,”3”)返回”AAA” - */ - public static String APPDUP(String Value, String num) { - String sContent = ""; - Value = APPISNULL(Value, ""); - num = APPISNULL(num, ""); - int iNum = Integer.parseInt(num); - for (int i = 0; i < iNum; i++) { - sContent = sContent + Value; - } - return sContent; - } - - /** - * 返回给定字符串表达式的字符(而不是字节)个数,其中不包含尾随空格。 - */ - public static String APPLEN(String Value) { - String sContent = ""; - if (StrUtil.isNotEmpty(Value)) { - sContent = Integer.toString(Value.trim().length()); - } else { - sContent = "0"; - } - return sContent; - } - - /** - * 返回字符串的一部分。 - */ - public static String APPSUBSTR(String Value, String start, String length) { - String sContent = ""; - if (StrUtil.isNotEmpty(Value)) { - int iStart = Integer.parseInt(start) - 1; - int iLength = iStart + Integer.parseInt(length); - sContent = StringUtils.substring(Value, iStart, iLength); - } - return sContent; - } - - /** - * 返回删除前后空格的字符表达式。 - */ - public static String APPTRIM(String Value) { - String sContent = ""; - if (StrUtil.isNotEmpty(Value)) { - sContent = Value.trim(); - } - return sContent; - } - - /** - * 将数组通过分隔符的拼接成为一个字符串 - * @param arr - * @param splitStr - * @return - */ - public static String APPJOIN(String[] arr,String splitStr){ - String sContent = new String(); - for(int i=0;i= 0) { - sContent = sContent + A[i - 1]; - } - } - return sContent; - } - - /** - * 返回星期几。 范围:1-7 - */ - public static String APPWEEK(String DateValue) { - Calendar calendar = StringToTime(DateValue); - int i = calendar.get(Calendar.DAY_OF_WEEK) - 1; - if (i==0) i = 7; - return String.valueOf(i); - } - - /** - * 返回日期类型。 如果不合法则返回1900-01-01 00:00:00 - */ - private static Calendar StringToTime(String DateValue) { - DateValue = StringUtils.replace(DateValue, "-", ""); - DateValue = StringUtils.replace(DateValue, "/", ""); - DateValue = StringUtils.replace(DateValue, ":", ""); - DateValue = StringUtils.replace(DateValue, " ", ""); - String YYYY = "1999"; - if (StringUtils.substring(DateValue, 0, 4).length() == 4) { - YYYY = StringUtils.substring(DateValue, 0, 4); - } - - String MM = "01"; - if (StringUtils.substring(DateValue, 4, 6).length() == 2) { - MM = StringUtils.substring(DateValue, 4, 6); - } - String dd = "01"; - if (StringUtils.substring(DateValue, 6, 8).length() == 2) { - dd = StringUtils.substring(DateValue, 6, 8); - } - String hh = "00"; - if (StringUtils.substring(DateValue, 8, 10).length() == 2) { - hh = StringUtils.substring(DateValue, 8, 10); - } - String mm = "00"; - if (StringUtils.substring(DateValue, 10, 12).length() == 2) { - mm = StringUtils.substring(DateValue, 10, 12); - } - String ss = "00"; - if (StringUtils.substring(DateValue, 12, 14).length() == 2) { - ss = StringUtils.substring(DateValue, 12, 14); - } - - Calendar cTmp = Calendar.getInstance(); - cTmp.set(Integer.parseInt(YYYY), Integer.parseInt(MM)-1, Integer.parseInt(dd), Integer.parseInt(hh), Integer.parseInt(mm), Integer.parseInt(ss)); - return cTmp; - } - - /** - * 返回日期加减天数后的日期。 - */ - public static String APPGETSHIFTDATE(String DateValue, String pos) { - String sContent = ""; - Calendar calendar = StringToTime(DateValue); - calendar.add(Calendar.DATE, Integer.parseInt(pos)); - SimpleDateFormat formatter1 = new SimpleDateFormat("yyyyMMdd"); - return formatter1.format(calendar.getTime()); - } - - /** - * 返回给定数字表达式的绝对值。 - */ - - public static String APPABS(String Vaule) { - String sContent = ""; - return sContent; - } - - /** - * 返回大于或等于所给数字表达式的最小整数。 - */ - /* - public static String APPCEIL(String Vaule) { - String sContent = ""; - if (Vaule.startsWith(".")){ - Vaule = "0" + Vaule; - } - String A[] = StringUtils.split(Vaule, "."); - int decimal = 0; - if (A.length == 2) { - sContent = A[0]; - decimal = Integer.parseInt(A[1]); - } else { - sContent = Vaule; - } - int iVaule = Integer.parseInt(sContent); - if (sContent.indexOf("-") < 0 && A.length == 2 && (decimal > 0)) { - iVaule = iVaule + 1; - } - sContent = Integer.toString(iVaule); - return sContent; - } -*/ - - /** - * 返回大于或等于所给数字表达式的最小整数。 - */ - public static String APPCEIL(String Vaule) { - String sContent = ""; - if (Vaule.startsWith(".")){ - Vaule = "0" + Vaule; - } - String A[] = StringUtils.split(Vaule, "."); - BigInteger zero = new BigInteger("0"); - int iVaule = 0; - if (A.length == 2) { - sContent = A[0]; - iVaule = Integer.parseInt(sContent); - BigInteger decimal = new BigInteger(A[1]); - if (sContent.indexOf("-") < 0 && (decimal.compareTo(zero) > 0)) { - iVaule++; - } - } else { - sContent = Vaule; - iVaule = Integer.parseInt(sContent); - } - - sContent = Integer.toString(iVaule); - return sContent; - } - - - /** - * 返回小于或等于所给数字表达式的最大整数。 - */ - - public static String APPFLOOR(String Vaule) { - String sContent = ""; - if (Vaule.startsWith(".")){ - Vaule = "0" + Vaule; - } - String A[] = StringUtils.split(Vaule, "."); - if (A.length == 2) { - sContent = A[0]; - } else { - sContent = Vaule; - } - int iVaule = Integer.parseInt(sContent); - if (sContent.indexOf("-") >= 0 && A.length == 2) { - iVaule = iVaule - 1; - } - sContent = Integer.toString(iVaule); - return sContent; - } - - /** - * 返回数字表达式并四舍五入为指定的长度或精度。 - */ - public static String APPROUND(String Vaule, String length) { - Vaule = Vaule.trim(); - try{ - String sContent = ""; - if (Integer.parseInt(length) < 0) { - throw new IllegalArgumentException( - "The scale must be a positive integer or zero"); - } - BigDecimal b = new BigDecimal(Vaule); - BigDecimal one = new BigDecimal("1"); - double A = b.divide(one, Integer.parseInt(length), - BigDecimal.ROUND_HALF_UP).doubleValue(); - - return Double.toString(A); - }catch(Exception e){ - log.error(String.valueOf(e)); - StackTraceElement[] ste = e.getStackTrace(); - for(int i=0; i - */ - public static boolean APPBIG(String Value1, String Value2) { - Value1 = APPISNULL(Value1, "0"); - Value2 = APPISNULL(Value2, "0"); - if (!NumberUtils.isNumber(Value1)) { - Value1 = "0"; - } - if (!NumberUtils.isNumber(Value2)) { - Value2 = "0"; - } - double v1 = NumberUtils.createDouble(Value1).doubleValue(); - double v2 = NumberUtils.createDouble(Value2).doubleValue(); - if (v1 > v2) { - return true; - } else { - return false; - } - - } - - /** - * < - */ - public static boolean APPLESS(String Value1, String Value2) { - Value1 = APPISNULL(Value1, "0"); - Value2 = APPISNULL(Value2, "0"); - /*if (!NumberUtils.isNumber(Value1)) { - Value1 = "0"; - } - if (!NumberUtils.isNumber(Value2)) { - Value2 = "0"; - } - double v1 = NumberUtils.createDouble(Value1).doubleValue(); - double v2 = NumberUtils.createDouble(Value2).doubleValue(); - if (v1 < v2) { - return true; - } else { - return false; - }*/ - if (NumberUtils.isNumber(Value1) || NumberUtils.isNumber(Value2)){ - return (Double.valueOf(Value1).doubleValue() < Double.valueOf(Value2).doubleValue()); - }else{ - byte[] v1 = Value1.getBytes(); - byte[] v2 = Value2.getBytes(); - int length = v1.length; - if (length < v2.length) length = v2.length; - - for(int i=0; i length) - return false; - else - return true; - } - - } - - /** - * >= - */ - public static boolean APPBIGEQUAL(String Value1, String Value2) { - return !APPLESS(Value1, Value2); - } - - /** - * <= - */ - public static boolean APPLESSEQUAL(String Value1, String Value2) { - return !APPBIG(Value1, Value2); - } - - /** - * = - */ - public static boolean APPEQUAL(String Value1, String Value2) { - boolean bool = false; - Value1 = APPISNULL(Value1, ""); - Value2 = APPISNULL(Value2, ""); - if (StringUtils.equalsIgnoreCase(StringUtils.trim(Value1), StringUtils - .trim(Value2))) { - bool = true; - } - return bool; - } - - /** - * !=<> - */ - public static boolean APPNOTEQUAL(String Value1, String Value2) { - return !APPEQUAL(Value1, Value2); - } - - public static boolean APPCompare(String Value1, String Type, String Value2) { - boolean bool = false; - boolean isString =false; - try { - double v1 = NumberUtils.createDouble(Value1).doubleValue(); - double v2 = NumberUtils.createDouble(Value2).doubleValue(); - bool = APPCompare(v1, Type, v2); - } - catch (Exception ex) { - isString=true; - } - - if (isString) { - if (StringUtils.equalsIgnoreCase(Type, "=")) { - bool = APPEQUAL(Value1, Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<>") - || StringUtils.equalsIgnoreCase(Type, "!=")) { - bool = APPNOTEQUAL(Value1, Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">=")) { - bool = APPBIGEQUAL(Value1, Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">")) { - bool = APPBIG(Value1, Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<=")) { - bool = APPLESSEQUAL(Value1, Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<")) { - bool = APPLESS(Value1, Value2); - } - } - return bool; - } - - private static Random random = new Random(); - public static String APPRANDOM(String s){ - return String.valueOf(random.nextInt(Integer.parseInt(s))); - } - - public static boolean APPCompare(int Value1, String Type, int Value2) { - boolean bool = false; - if (StringUtils.equalsIgnoreCase(Type, "=")) { - bool = (Value1 == Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<>") - || StringUtils.equalsIgnoreCase(Type, "!=")) { - bool = (Value1 != Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">=")) { - bool = (Value1 >= Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">")) { - bool = (Value1 > Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<=")) { - bool = (Value1 <= Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<")) { - bool = (Value1 < Value2); - } - return bool; - } - - public static boolean APPCompare(float Value1, String Type, float Value2) { - String sV1 = Float.toString(Value1); - String sV2 = Float.toString(Value2); - double V1 = NumberUtils.createDouble(sV1).doubleValue(); - double V2 = NumberUtils.createDouble(sV2).doubleValue(); - return APPCompare(V1, Type, V2); - } - - public static boolean APPCompare(double Value1, String Type, double Value2) { - boolean bool = false; - Type = Type.trim(); - Value1 = APPROUND(Value1, 9); - Value2 = APPROUND(Value2, 9); - if (StringUtils.equalsIgnoreCase(Type, "=")) { - bool = (Value1 == Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<>") - || StringUtils.equalsIgnoreCase(Type, "!=")) { - bool = (Value1 != Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">=")) { - bool = (Value1 >= Value2); - } - if (StringUtils.equalsIgnoreCase(Type, ">")) { - bool = (Value1 > Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<=")) { - bool = (Value1 <= Value2); - } - if (StringUtils.equalsIgnoreCase(Type, "<")) { - bool = (Value1 < Value2); - } - return bool; - } - - public static boolean APPCompare(int Value1, String Type, String Value2) { - String sValue1 = Integer.toString(Value1); - return APPCompare(sValue1, Type, Value2); - } - - public static boolean APPCompare(String Value1, String Type, int Value2) { - String sValue2 = Integer.toString(Value2); - return APPCompare(Value1, Type, sValue2); - } - - public static boolean APPCompare(String Value1, String Type, float Value2) { - String sValue2 = Float.toString(Value2); - return APPCompare(Value1, Type, sValue2); - } - - public static boolean APPCompare(float Value1, String Type, String Value2) { - String sValue1 = Float.toString(Value1); - return APPCompare(sValue1, Type, Value2); - } - - public static boolean APPCompare(double Value1, String Type, String Value2) { - String sValue1 = Double.toString(Value1); - return APPCompare(sValue1, Type, Value2); - } - - public static boolean APPCompare(String Value1, String Type, double Value2) { - String sValue2 = Double.toString(Value2); - return APPCompare(Value1, Type, sValue2); - } - - /** - * = - */ - public static String APPCalculate(String expression) { - String sContent = ""; - if (StrUtil.isEmpty(expression)) { - expression = ""; - } - boolean bool = true; - - if (!IsNumber(expression)){ - return expression; - }else{ - expression = StringUtils.replace(expression, "--", "+"); - if (expression.indexOf("-") < 0 && expression.indexOf("/") < 0 - && expression.indexOf("*") < 0) { - String A[] = MethodFactory.split(expression, "+"); - for (int i = 0; i < A.length; i++) { - sContent = sContent + A[i]; - bool = bool && NumberUtils.isNumber(A[i].trim()); - } - if (!bool) { - return sContent; - } - } - expression = StringUtils.replace(expression, " ", ""); - expression = Replaceminus(expression); - /* - * String B[] = StringUtils.split(expression,"-" ); expression =""; for - * (int i =0 ;i 15){ - BigDecimal b = new BigDecimal(Double.parseDouble(sContent)); - double d = b.setScale(15,BigDecimal.ROUND_HALF_UP).doubleValue(); - return String.valueOf(d); - } - - return sContent; - } - } - - //将Str转换成ASCII码 函数返回字符的ASCII 码值 - public static String APPASCII(String Str) { - String sContent = ""; - byte[] bytes = (String.valueOf(Str)).getBytes(); - if (bytes == null || bytes.length > 2 || bytes.length <= 0) { //错误 - sContent = "0"; - } - if (bytes.length == 1) { //英文字符 - sContent = Integer.toString(bytes[0]); - } - if (bytes.length == 2) { //中文字符 - int hightByte = 256 + bytes[0]; - int lowByte = 256 + bytes[1]; - - int ascii = (256 * hightByte + lowByte) - 256 * 256; - sContent = Integer.toString(ascii); - } - return sContent; - } - - - - //将ASCII码转换字符 函数用于将ASCII 码转换为字符 - public static String APPCHAR(String ASCII) { - String sContent = ""; - int i = Integer.parseInt(ASCII); - char s = (char) i; - sContent = String.valueOf(s); - return sContent; - } - - private static boolean IsNumber(String expression) { - boolean bool = true; - String sContent = ""; - sContent = StringUtils.replace(expression,"+"," "); - sContent = StringUtils.replace(sContent," "," "); - sContent = StringUtils.replace(sContent,"-"," "); - sContent = StringUtils.replace(sContent,"*"," "); - sContent = StringUtils.replace(sContent,"/"," "); - sContent = StringUtils.replace(sContent,"("," "); - sContent = StringUtils.replace(sContent,")"," "); -// sContent = StringUtils.replace(sContent,".",""); - String A[] = StringUtils.split(sContent," " ); - double v1=0; - for (int i=0 ;i 0) { - int iP = expression.indexOf(OP); - String exLeft = expression.substring(0, iP); - String exRight = expression.substring(iP + 2, expression.length()); - String exNoNumRight = ""; - String exNum = exRight; - for (int i = 0; i < exRight.length(); i++) { - if (exRight.substring(i, i + 1).equals("+") - || exRight.substring(i, i + 1).equals("-") - || exRight.substring(i, i + 1).equals("*") - || exRight.substring(i, i + 1).equals("/") - || exRight.substring(i, i + 1).equals("(") - || exRight.substring(i, i + 1).equals(")")) { - exNum = exRight.substring(0, i); - exNoNumRight = exRight.substring(i, exRight.length()); - break; - } - } - expression = exLeft + OP.substring(0, 1) + "(0-" + exNum + ")" - + exNoNumRight; - } - return expression; - } - - private static String ReplaceTemporaryTable(String expression, int dbType) { - String sContent = ""; - sContent = expression; - //sContent = StringUtils.replace(expression,"#T_","T_" ); - //sContent = StringUtils.replace(sContent,"T_","#T_" ); - switch (dbType) { - case 1: //MS SQLServer 处理方式 - sContent = StringUtils.replace(sContent,"\"%\"","'%'" ); - sContent = StringUtils.replace(sContent,"UNIONSTR"," +" ); - sContent = StringUtils.replace(sContent,SINGLEQUOTES,"'");//单引号 - break; - case 2: //Oracle 处理方式 - // sContent = StringUtils.replace(sContent,"#T_","T_" ); - // sContent = StringUtils.replace(sContent," dbo."," TC." ); - //转换like的相关属性 - sContent = StringUtils.replace(sContent,"\"%\"","'%'" ); - sContent = StringUtils.replace(sContent,"UNIONSTR"," ||" ); - - sContent = StringUtils.replace(sContent," AS INTEGER"," as INTEGER" ); - sContent = StringUtils.replace(sContent," AS CHAR"," as CHAR" ); - sContent = StringUtils.replace(sContent," AS VARCHAR"," as VARCHAR" ); - sContent = StringUtils.replace(sContent," AS NUMBER"," as NUMBER" ); - sContent = StringUtils.replace(sContent," AS NUMERIC"," as NUMERIC" ); - sContent = StringUtils.replace(sContent," AS "," " ); - sContent = StringUtils.replace(sContent,"''","' '" ); - sContent = StringUtils.replace(sContent,SINGLEQUOTES,"'");//单引号 - break; - case 3: //DB2 处理方式 - //sContent = StringUtils.replace(sContent,"#T_","session.T_" ); - //sContent = StringUtils.replace(sContent," AS "," " ); - - sContent = StringUtils.replace(sContent,"\"%\"","'%'" ); - sContent = StringUtils.replace(sContent,"UNIONSTR"," ||" ); - sContent = StringUtils.replace(sContent,SINGLEQUOTES,"'");//单引号 - break; - case 4://mysql处理方式 - - sContent = StringUtils.replace(sContent,"\"%\"","'%'" ); - //sContent = StringUtils.replace(sContent,"UNIONSTR"," ||" ); - sContent = StringUtils.replace(sContent,SINGLEQUOTES,"'");//单引号 - //处理UNIONSTR -// Pattern p = Pattern.compile("\\s+UNIONSTR\\s+"); -// Matcher m = p.matcher(sContent); -// if(m.find()){ -// //如果sql语句中有UNIONSTR语法则进行相应处理 -// -// } - - break; - default: - break; - } - - return sContent; - } - - /* - SQL Server: Select top n * from xtable - Oracle: Select * from xtable where rownum <=n - DB2: Select * from xtable fetch first n rows only - */ - - private static String ReplaceTop(String expression, int dbType) { - String sContent = ""; - sContent = expression; - String sContentOracle =""; - String sContentDB2 =""; - boolean Oracle =true; - int iP = expression.indexOf(" TOP "); - if(iP>0){ - iP=0; - String[] A = StringUtils.split(expression," "); - for (int i =0;i =" ,">=" ); - sContent = StringUtils.replace(sContent,"< =" ,"<=" ); - sContent = updateTrans(sContent, dbType); - sContent = deleteTrans(sContent, dbType); -// if ((dbType == 1) && (sContent.toUpperCase().indexOf("col_numBER")>0)){ -// sContent = rowNumberTrans(sContent, dbType); -// } - //处理APP函数 - if (sContent.toUpperCase().indexOf("WQL.APPUUID")>=0){ - sContent = changeAPPUUID(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPDUP")>=0){ - sContent = changeAPPDUP(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPLEN")>=0){ - sContent = changeAPPLEN(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPSUBSTR")>=0){ - sContent = changeAPPSUBSTR(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPTRIM")>=0){ - sContent = changeAPPTRIM(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPABS")>=0){ - sContent = changeAPPABS(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPCEIL")>=0){ - sContent = changeAPPCEIL(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPFLOOR")>=0){ - sContent = changeAPPFLOOR(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPROUND")>=0){ - sContent = changeAPPROUND(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPSIGN")>=0){ - sContent = changeAPPSIGN(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPCAST")>=0){ - sContent = changeAPPCAST(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPISNULL")>=0){ - sContent = changeAPPISNULL(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPSTR")>=0){ - sContent = changeAPPSTR(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPINSTR")>=0){ - sContent = changeAPPINSTR(sContent, dbType); - } - if (sContent.toUpperCase().indexOf("WQL.APPFLOATTOCHAR")>=0){ - sContent = changeAPPFLOATTOCHAR(sContent, dbType); - } - -// log.info("转化后SQL语句: " + "\n"+sContent ); - return sContent; - } - - public static String ScriptSwitch(String expression){ - String sContent = ""; -// int dbType= IOConnection.getDBType(); -// sContent=ReplaceTemporaryTable(expression,dbType); -// sContent = ReplaceTop(sContent,dbType); - log.info("转化后SQL语句:" + "\n"+sContent ); - return sContent; - } - - - public static String ValueSwitch(String expression, int dbType){ - String sContent = ""; - sContent = expression; - switch (dbType) { - case 1: //MS SQLServer 处理方式 - break; - case 2: //Oracle 处理方式 - if (StringUtils.equalsIgnoreCase(sContent,"")){ - sContent=" "; - } - break; - case 3: //DB2 处理方式 - - break; - default: - break; - } - return sContent; - } - - public static String Uni2GB(String InputString){ - if (InputString != null) { - try{ - return new String(InputString.getBytes("GBK"), "ISO8859_1"); - }catch(Exception e){ - //e.printStackTrace(); - return InputString; - } - }else{ - return null; - } - } - - public static String GB2Uni(String InputString){ - if (InputString != null) { - try{ - return new String(InputString.getBytes("ISO8859_1"), "GBK"); - }catch(Exception e){ - //e.printStackTrace(); - return InputString; - } - }else{ - return null; - } - } - - public static String addSession4DB2(String sqlString, ArrayList tempTable){ - for (int i=0; i\n"; -// data = data + "\n"; -// data = data + " \n"; -// data = data + " \n"; -// data = data + tools.node2str(trans.object2xmlUi(doc, obj, obj.getClass(),ui), false); -// data = data + " \n"; -// data = data + " \n"; -// data = data + ""; -// -// byte[] packLen = String.valueOf(data.getBytes().length).getBytes(); -// byte[] bHead = " ".getBytes(); -// for(int i=0; i-1){ - bean.set(columnName, (String)bean.get(columnName) + (String)changerRow.get(columnName)); - }else{ - bean.set(columnName, new Double(Double.parseDouble((String)bean.get(columnName))+Double.parseDouble((String)changerRow.get(columnName)))); - } - } - } - - return base; - } - - public static String updateTrans(String sql, int dbType){ - if (!sql.trim().toLowerCase().startsWith("update")) - return sql; - - if ((sql.indexOf("(")<0) || (sql.indexOf("select")<0) || (sql.indexOf("from")<0)) - return sql; - - switch(dbType){ - case 1: - sql = sql.toLowerCase(); - String update = sql.substring(0, sql.indexOf("update ")+6); - sql = sql.substring(sql.indexOf("update ")+7); - String primaryTable = sql.substring(0, sql.indexOf("set ")); - sql = sql.substring(sql.indexOf("set ")); - String set = sql.substring(0, sql.indexOf("set ")+3); - sql = sql.substring(sql.indexOf("set ")+4); - String updateCols = sql.substring(0, sql.indexOf("=")); - updateCols = updateCols.substring(updateCols.indexOf("(")+1); - updateCols = updateCols.substring(0, updateCols.lastIndexOf(")")); - sql = sql.substring(sql.indexOf("=")+1); - char[] chars = sql.toCharArray(); - int begin = 0; - int end = 0; - int count = 0; - for(int i=0; i=0){ - sql = sql.substring(0, point) + " " + tableword[0] + "." + sql.substring(point + (" "+tableword[1]+".").length()); - point = sql.indexOf(" "+tableword[1]+"."); - } - } - return deletefrom + tableword[0] + sql; - case 2: - return sql; - case 3: - return sql; - case 4: - return sql; - default: - return sql; - } - } - - private static String rowNumberTrans(String sql, int dbType){ - switch(dbType){ - case 1: - /*截取rownumber子句*/ - int point = sql.toUpperCase().indexOf("col_numBER"); - String aft = sql.substring(sql.toUpperCase().indexOf("col_numBER")+10); - String rn = "col_numBER"; - char[] temp = aft.toCharArray(); - int flag = 0; - int num = 0; - for(int i=0; i=0; i--){ - if (preChars[i]!=' '){ - //第一个非空格字符非前括号 - if (preChars[i]!='('){ - aft = aft.substring(0, aft.lastIndexOf("ORDER ")); - }else{ - //第一个非空格字符为前括号 - char[] aftChars = aft.toCharArray(); - flag = 0; - for(int j=0; j0) - aft = aft.substring(0, aft.lastIndexOf("ORDER ")); - temp = new char[aftChars.length-flag]; - System.arraycopy(aftChars, flag, temp, 0, temp.length); - aft = aft + new String(temp); - } - break; - } - } - - /*将后一段整理后,如果后一段中依然存在rownumber,则递归调用本函数。*/ - if (aft.indexOf("col_numBER")>0) return rowNumberTrans(aft, dbType); - return pre + rn + aft; - case 2: - return sql; - case 3: - return sql; - case 4: - return sql; - default: - return sql; - } - } - - /** - add by yumeng - 2011-4-26 - 获取某一周的第一天 - */ - public static String getWeekDayStartwithSunday(String format,int theyear,int theweek,int theday){ - if(theweek<1||theweek>53){ - return null; - } - if(theday<1||theday>7){ - return null; - } - SimpleDateFormat sdf = new SimpleDateFormat(format); - Calendar c = Calendar.getInstance(); - c.set(Calendar.YEAR,theyear); - c.set(Calendar.WEEK_OF_YEAR,theweek); - c.set(Calendar.DAY_OF_WEEK,theday); - String strdate = sdf.format(c.getTime()); - return strdate; - } - - - /** - * 拆分sql语句成数组 - * @param sql - * @return - */ - public static String[] splitSQL2Array(String sql){ - if(sql==null) sql = ""; - - ArrayList list = new ArrayList(); - //首先记录单引号内的内容 - String s = "\'(.*?)\'"; - Pattern p=Pattern.compile(s); - Matcher m=p.matcher(sql); - while(m.find()){ - list.add(m.group(0)); - } - - //转义单引号的内容 - for(int i=0;i =", " >= "); - sql = sql.replaceAll("< =", " <= "); - sql = sql.replaceAll("! =", " != "); - - //还原单引号的内容 - for(int i=0;i tableset = new HashSet(); - if(!"".equals(WQLCore.tableReg)){ - //Pattern p = Pattern.compile(WQLCore.tableReg); - Matcher m = WQLCore.tableRegPattern.matcher(sql); - while (m.find()) { - String tbname = m.group(); - tbname = tbname.toUpperCase(); - if(!tableset.contains(tbname)){ - log.debug("sql使用了表:"+tbname); - //if(-1!=sql.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ - sql = sql.replaceAll("\\b((?i)"+tbname+")\\b", schema+"."+tbname); - //}else{ - // sql = sql.replaceAll("\\b"+tbname.toLowerCase()+"\\b", schema+"."+tbname.toUpperCase()); - //} - tableset.add(tbname); - } - } - } - return sql; - } - - /** - * 测试用 - * - * @param args - */ - public static void main(String[] args) { - - /** - * System.out.println(APPCompare("20030103"," <=","20040103")); - * System.out.println(APPCompare("1",">=","2")); - * System.out.println(APPCompare("1"," <","2")); - * System.out.println(APPCompare("1"," <=","2")); - * System.out.println(APPCompare("1","!=","2")); - * System.out.println(APPCompare("1"," <>","2")); - * System.out.println(APPCompare("1","=","2")); String - * A[]=StringUtils.split("1,,2,3,4,5",",",1000); A=" 1 ,3,4, 5".split(" - * "); //String A[]=StringUtils.(" ,d, ","," ); - * System.out.println(A.length ); for (int i=0; i = '20070518' AND A.CREATEDATE <= '20070518' AND A.STORSID = '001000001' AND A.ISACTIVE = '1' ORDER BY A.CREATEDATE DESC ", 1)); - //System.exit(0); - - //String delete = "delete from dbo.g_sy_personmenu as A where A.personsid='' and A.menucode in(\"\")"; - //System.out.println(delete); - //System.out.println("------------------------------"); - //System.out.println(deleteTrans(delete, 1)); - - //System.out.println(APPROUND("0.99999990", "3")); - //String sql = "SELECT B.DYNAMICINFOLID , B.TITLE , B.AUDITDATE , B.AUTHORNAME , B.AUTHORDEPTNAME , B.ATTACHSID , B.KEYWORD , B.YISSUE FROM ( SELECT col_numBER ( ) OVER ( ORDER BY A.AUDITDATE DESC , A.DYNAMICINFOLID DESC ) AS LINENUM , A.DYNAMICINFOLID AS DYNAMICINFOLID , A.TITLE AS TITLE , A.AUDITDATE AS AUDITDATE , A.AUTHORNAME AS AUTHORNAME , A.AUTHORDEPTNAME AS AUTHORDEPTNAME , A.ATTACHSID AS ATTACHSID , A.KEYWORD AS KEYWORD , A.DYNAMICINFOYEAR + '年第' + A.YEARISSUE + '期(总第' + A.ISSUE + '期)' AS YISSUE FROM dbo.G_CM_DynamicInfo AS A WHERE A.STATUS = '8' AND ( ? = '0' OR A.CORPTYPE = ? ) AND A.RECORDFLAG = ? ORDER BY A.AUDITDATE DESC , A.DYNAMICINFOLID DESC ) AS B WHERE B.LINENUM <= 10 "; - //String sql = "SELECT col_numBER ( ) OVER ( ORDER BY A.AUDITDATE DESC , A.DYNAMICINFOLID DESC )"; - //String sql = "SELECT col_numBER ( ) OVER ( ORDER BY A.AUDITDATE DESC , A.DYNAMICINFOLID DESC ) FROM A ORDER BY ABC"; - //String sql = "INSERT INTO dbo.T_TX_FIN101004 ( dbo.T_TX_FIN101004.SEQNO , dbo.T_TX_FIN101004.PRODUCTID , dbo.T_TX_FIN101004.BILLTYPEID , dbo.T_TX_FIN101004.FINANCEBILLNO , dbo.T_TX_FIN101004.FINANCEDATE , dbo.T_TX_FIN101004.BRIEFNAME , dbo.T_TX_FIN101004.QUANTITY , dbo.T_TX_FIN101004.NOTAXAMOUNT , dbo.T_TX_FIN101004.AMOUNT , dbo.T_TX_FIN101004.COSTAMOUNT , dbo.T_TX_FIN101004.RESTQUANTITY , dbo.T_TX_FIN101004.RESTAMOUNT ) SELECT col_numBER ( ) OVER ( ORDER BY A.PRODUCTID , A.FINANCEDATE , A.BILLTYPEID ) , A.PRODUCTID , A.BILLTYPEID , A.FINANCEBILLNO , A.FINANCEDATE , A.BRIEFNAME , A.QUANTITY , A.NOTAXAMOUNT , A.AMOUNT , A.COSTAMOUNT , A.RESTQUANTITY , A.RESTAMOUNT FROM dbo.B_FI_FinanceAccount AS A WHERE A.STORSID = ? AND A.BIZMONTH = ? AND A.CORPSID = ? ORDER BY A.PRODUCTID , A.FINANCEDATE , A.BILLTYPEID "; - //String sql = "select * from (select PAGE_SRCRESULTSET_1.*, col_number() over(order by sectmovesid) as SORT_INDEXFIELDALIAS from ( SELECT A.SECTMOVESID AS SECTMOVESID , E.CORPSID AS CORPSID , E.BUSINESSCORPNAME AS SIMPLENAME , D.STORSID AS STORSID , D.STORNAME AS STORNAME , C.SECTSID AS OUTSECTSID , C.SECTNAME AS OUTSECTNAME , B.SECTSID AS INSECTSID , B.SECTNAME AS INSECTNAME , ( CASE WHEN ? = '1' THEN A.TOTALDEFQTY / 250 WHEN ? = '2' THEN A.TOTALDEFQTY / 50 WHEN ? = '3' THEN A.TOTALDEFQTY WHEN ? = '4' THEN A.TOTALDEFQTY * 10 WHEN ? = '5' THEN A.TOTALDEFQTY * 200 ELSE A.TOTALDEFQTY END ) AS TOTALDEFQTY , A.DETAILCOUNT AS DETAILCOUNT , A.MOVEOUTCOUNT AS MOVEOUTCOUNT , F.PERSONSID AS OPERPERSONSID , F.PERSONNAME AS OPERPERSONNAME , A.CREATEDATE AS CREATEDATE , G.PERSONSID AS OUTCFMPERSONSID , G.PERSONNAME AS OUTCFMPERSONNAME , A.MOVEOUTDATE AS MOVEOUTDATE , H.PERSONSID AS INCFMPERSONSID , H.PERSONNAME AS INCFMPERSONNAME , A.MOVEINDATE AS MOVEINDATE , A.REMARK AS REMARK , A.STATUS AS STATUS , ( CASE WHEN A.STATUS = '01' THEN '待移出分配' WHEN A.STATUS = '02' THEN '移出分配中' WHEN A.STATUS = '03' THEN '待移出确认' WHEN A.STATUS = '04' THEN '待移入分配' WHEN A.STATUS = '05' THEN '移入分配中' WHEN A.STATUS = '06' THEN '待移入确认' ELSE '移入确认完毕' END ) AS STATUSNAME FROM dbo.B_ST_BZSectMoveMst AS A LEFT OUTER JOIN dbo.B_ST_BSSectAttr AS B ON A.MOVEINSECTSID = B.SECTSID LEFT OUTER JOIN dbo.B_ST_BSSectAttr AS C ON A.MOVEOUTSECTSID = C.SECTSID LEFT OUTER JOIN dbo.B_ST_BSRealStorAttr AS D ON A.STORSID = D.STORSID LEFT OUTER JOIN dbo.G_OG_CorpInfo AS E ON A.CORPSID = E.CORPSID LEFT OUTER JOIN dbo.G_OG_PersonInfo AS F ON A.CREATERSID = F.PERSONSID LEFT OUTER JOIN dbo.G_OG_PersonInfo AS G ON A.MVOUTAUDITORSID = G.PERSONSID LEFT OUTER JOIN dbo.G_OG_PersonInfo AS H ON A.MVINAUDITORSID = H.PERSONSID WHERE 1 = 1 AND A.CREATEDATE >= '20070518' AND A.CREATEDATE <= '20070518' AND A.STORSID = '001000001' AND A.ISACTIVE = '1' ORDER BY A.CREATEDATE DESC ) PAGE_SRCRESULTSET_1 ) PAGE_SRCRESULTSET_2 where PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS <= 50 and PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS > 0"; - //String sql = " SELECT B.DYNAMICINFOLID , B.TITLE , B.AUDITDATE , B.AUTHORNAME , B.AUTHORDEPTNAME , B.ATTACHSID , B.KEYWORD , B.YISSUE FROM ( SELECT A.DYNAMICINFOLID AS DYNAMICINFOLID , A.TITLE AS TITLE , A.AUDITDATE AS AUDITDATE , A.AUTHORNAME AS AUTHORNAME , A.AUTHORDEPTNAME AS AUTHORDEPTNAME , A.ATTACHSID AS ATTACHSID , A.KEYWORD AS KEYWORD , A.DYNAMICINFOYEAR || '年第' || A.YEARISSUE || '期(总第' || A.ISSUE || '期)' AS YISSUE , col_numBER ( ) OVER ( ORDER BY A.AUDITDATE DESC , A.DYNAMICINFOLID DESC ) AS ROWN FROM TC.G_CM_DynamicInfo AS A WHERE A.STATUS = '8' AND ( ? = '0' OR A.CORPTYPE = '0' OR A.CORPTYPE = ? ) AND A.RECORDFLAG = ? ) AS B WHERE B.ROWN <= 10 ORDER BY B.AUDITDATE DESC , B.DYNAMICINFOLID DESC "; - //System.out.println(rowNumberTrans(sql.toUpperCase(), 1)); - //String sSQL = BF.ScriptSwitch("INSERT INTO #T_QU_BS201011_1 ( #T_QU_BS201011_1.INVID , #T_QU_BS201011_1.OLDTYPECODE , #T_QU_BS201011_1.OLDTYPENAME , #T_QU_BS201011_1.TYPECODE , #T_QU_BS201011_1.TYPENAME , #T_QU_BS201011_1.CORPNAME , #T_QU_BS201011_1.STORNAME , #T_QU_BS201011_1.TOTALDEFQTY , #T_QU_BS201011_1.DETAILCOUNT , #T_QU_BS201011_1.PERSONNAME , #T_QU_BS201011_1.INPUTTIME , #T_QU_BS201011_1.REMARK , #T_QU_BS201011_1.SOURCENAME ) SELECT A.SUMRETURNINVSID AS INVID , E.BIZINVTYPE AS OLDTYPECODE , E.TYPENAME AS OLDTYPENAME , E.BIZINVTYPE AS TYPECODE , E.TYPENAME , B.SIMPLENAME AS CORPNAME , C.STORNAME , CASE WHEN CAST ( ? as VARCHAR ( 5 ) ) = '1' THEN A.TOTALDEFQTY / 250 WHEN CAST ( ? as VARCHAR ( 5 ) ) = '2' THEN A.TOTALDEFQTY / 50 WHEN CAST ( ? as VARCHAR ( 5 ) ) = '3' THEN A.TOTALDEFQTY WHEN CAST ( ? as VARCHAR ( 5 ) ) = '4' THEN A.TOTALDEFQTY * 10 WHEN CAST ( ? as VARCHAR ( 5 ) ) = '5' THEN A.TOTALDEFQTY * 200 ELSE A.TOTALDEFQTY END AS TOTALDEFQTY , A.DETAILCOUNT , D.PERSONNAME , A.CREATEDATE AS INPUTTIME , A.REMARK , F.DEPARTNAME AS SOURCENAME FROM dbo.B_SH_BZSumCGDInvMst AS A INNER JOIN dbo.G_OG_CorpInfo AS B ON A.CORPSID = B.CORPSID INNER JOIN dbo.B_ST_BSRealStorAttr AS C ON A.REALSTORSID = C.STORSID INNER JOIN dbo.G_OG_PersonInfo AS D ON D.PERSONSID = A.CREATERSID INNER JOIN dbo.G_PB_BizInvType AS E ON E.BIZINVTYPE = '23' LEFT OUTER JOIN dbo.G_OG_DepartInfo AS F ON A.DLVDEPARTSID = F.DEPARTSID WHERE A.ISACTIVE = '1' AND A.STATUS = '01' AND A.CREATEDATE >= CAST ( ? as VARCHAR ( 8 ) ) AND A.CREATEDATE <= CAST ( ? as VARCHAR ( 8 ) ) AND A.CORPSID = ( CASE WHEN CAST ( ? as VARCHAR ( 9 ) ) = '' OR CAST ( ? as VARCHAR ( 9 ) ) IS null THEN A.CORPSID ELSE CAST ( ? as VARCHAR ( 9 ) ) END ) AND A.REALSTORSID = ( CASE WHEN CAST ( ? as VARCHAR ( 9 ) ) = '' OR CAST ( ? as VARCHAR ( 9 ) ) IS null THEN A.REALSTORSID ELSE CAST ( ? as VARCHAR ( 9 ) ) END ) AND E.ISINSTOR = ( CASE WHEN CAST ( ? as VARCHAR ( 1 ) ) = '1' THEN '1' ELSE E.ISINSTOR END ) AND E.ISOUTSTOR = ( CASE WHEN CAST ( ? as VARCHAR ( 1 ) ) = '2' THEN '1' ELSE E.ISOUTSTOR END ) ",1); - //ArrayList tempTableList = new ArrayList(); - //tempTableList.add("T_QU_BS201011_1"); - //System.out.println(BF.addSession4MSSQL(sSQL, tempTableList)); - //System.out.println(ScriptSwitch(" SELECT TC.F_GetSysParameter ( 'isControlMenuPermission' ) AS B from dual ", 2)); -// for(int i=0; i<100; i++){ -// System.out.println(BF.APPRANDOM("10")); -// } - System.out.println(WQLFun.APPCalculate("17880001"+"+"+"1")); - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WO.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WO.java deleted file mode 100644 index be36758..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WO.java +++ /dev/null @@ -1,711 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: WO.java - * 包名: com.crea.wdk.core.wql.core.engine.object - * 版权: - * 职责:WO对象(WQL Object)是相应WQL文件对应的对象载体 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-07-01 14:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.engine.object; - -import cn.hutool.core.util.StrUtil; -import com.alibaba.druid.pool.DruidDataSource; -import com.alibaba.fastjson.JSONObject; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.ErrorBean; -import org.nl.modules.wql.core.bean.ResultBean; -import org.nl.modules.wql.core.bean.XLSTableRow; -import org.nl.modules.wql.core.content.BaseContext; -import org.nl.modules.wql.core.content.HttpContext; -import org.nl.modules.wql.core.db.DBConnBean; -import org.nl.modules.wql.core.db.DBConnection; -import org.nl.modules.wql.core.engine.Syntax; -import org.nl.modules.wql.exception.WDKException; -import org.nl.modules.wql.util.SpringContextHolder; -import org.nl.modules.wql.util.WqlUtil; - -import javax.servlet.http.HttpServletRequest; -import java.io.Serializable; -import java.sql.Connection; -import java.sql.SQLException; -import java.sql.Statement; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Map; -import java.util.Set; - -@Slf4j -public class WO implements Serializable, Cloneable { - - private static final long serialVersionUID = -4831486954013002791L; - public WP wp; - - private String code = ""; //当前交易编号 - private String dbname = "dataSource"; //指定使用的数据库 - - public WO setDbname(String dbname) { - this.dbname = dbname; - Object bean = SpringContextHolder.getBean(dbname); - if (bean instanceof DruidDataSource){ - DruidDataSource druidDataSource=(DruidDataSource )bean; - String rawJdbcUrl = druidDataSource.getRawJdbcUrl(); - DBConnBean dbb = new DBConnBean(); - dbb.setDrivers(""); - - if (StrUtil.containsAnyIgnoreCase(rawJdbcUrl, DataType.MYSQL)){ - dbb.setDbtype("mysql"); - } - if (StrUtil.containsAnyIgnoreCase(rawJdbcUrl, DataType.ORACLE)){ - dbb.setDbtype("oracle"); - } - if (StrUtil.containsAnyIgnoreCase(rawJdbcUrl, DataType.MSSQL) || StrUtil.containsAnyIgnoreCase(rawJdbcUrl,"sqlserver")){ - dbb.setDbtype("mssql"); - } - if (StrUtil.isNotEmpty(dbb.getDbtype()))this.dbtype=dbb.getDbtype(); - WQLCore.dbMap.put(dbname, dbb); - } - return this; - } - - private String dbtype = ""; //指定使用的数据库类型 - // private boolean isTransation = false; //是否开启事务 -// private boolean isSelfConn = false; //当前数据库连接是否是自身的连接 - private String hint_type = ""; //hint类型: 空-无hint master-主表 slave-从表 - - - private ArrayList tempTableList = new ArrayList(); //临时表列表 - private ArrayList processlist = new ArrayList(); //处理语句 - - - /////////////////////////// - //// 动态替换执行语句 - /////////////////////////// - public ArrayList getProcesslist() { - return processlist; - } - - public void setProcesslist(ArrayList processlist) { - this.processlist = processlist; - } - - - /** - * 按个数添加参数 - */ - public WO addParam(String key, Object value) { -// if("PAGE_PAGESTART".toLowerCase().equals(key.toLowerCase())){ - if (StrUtil.equalsIgnoreCase("PAGE_PAGESTART", key)) { - int PAGE_PAGESTART = (Integer) value; - this.setPage_PageStart(PAGE_PAGESTART); -// }else if("PAGE_PAGERECORDNUM".toLowerCase().equals(key.toLowerCase())){ - } else if (StrUtil.equalsIgnoreCase("PAGE_PAGERECORDNUM", key)) { - int PAGE_PAGERECORDNUM = (Integer) value; - this.setPage_PageRecordNum(PAGE_PAGERECORDNUM); -// }else if("SORT_ORDERBYFIELD".toLowerCase().equals(key.toLowerCase())){ - } else if (StrUtil.equalsIgnoreCase("SORT_ORDERBYFIELD", key)) { - String SORT_ORDERBYFIELD = (String) value; - this.setPage_OrderByField(SORT_ORDERBYFIELD); -// }else if("ORDERBY".toLowerCase().equals(key.toLowerCase())){ - } else if (StrUtil.equalsIgnoreCase("ORDERBY", key)) { - String SORT_ORDERBYFIELD = (String) value; - this.setPage_OrderByField(SORT_ORDERBYFIELD); - } - this.setParam(key, value); - return this; - } - - /** - * 按集合添加参数 - * - * @param map - * @return - */ - public WO addParamMap(Map map) { - Set keySet = map.keySet(); - for (Iterator it = keySet.iterator(); it.hasNext(); ) { - String key = (String) it.next(); - Object value = map.get(key); - this.addParam(key, value); - } - return this; - } - - /** - * 执行WQL - * - * @return - */ - public ResultBean process() { - ResultBean rb = this.MainProcess(); - if (rb.isSuccess() == false) { - StringBuffer sbuff = new StringBuffer(); - ArrayList errlist = rb.getInfoError(); - for (int i = 0; i < errlist.size(); i++) { - ErrorBean errBean = (ErrorBean) errlist.get(i); - sbuff.append(errBean.toString()); - sbuff.append("\n"); - } - throw new WDKException(sbuff.toString()); - } - return rb; - } - - /** - * 以分页查询的方式执行wql - * - * @param request - * @return - */ - public JSONObject pageQuery(HttpServletRequest request, String orderby) { - HttpContext hctx = new HttpContext(WqlUtil.getUUID()); - hctx.setRequest(request); - return pageQuery(hctx, orderby); - - } - - public JSONObject pageQuery(BaseContext ctx, String orderby) { - int nPageRecordNum = -1; - int nPageStart = -1; - // 分页参数 - String strRows = ctx.getRows();//ctx.getParameter("rows"); - String strPage = ctx.getPage();//ctx.getParameter("page"); - if (null != strRows && !"".equals(strRows.trim())) { - nPageRecordNum = Integer.parseInt(strRows); - } - if (null != strPage && !"".equals(strPage.trim())) { - nPageStart = Integer.parseInt(strPage) - 1; - } - //排序参数 - String orderbyfield = ctx.getOrderbyfield();//ctx.getParameter("orderbyfield"); - if (null != orderbyfield && !"".equals(orderbyfield.trim())) { - orderby = orderbyfield; - } - - return this.pageQuery2(nPageStart * nPageRecordNum, nPageRecordNum, orderby); - } - - private JSONObject pageQuery2(int startrecord, int pagerecord, String orderby) { - this.setPage_PageStart(startrecord); - this.setPage_PageRecordNum(pagerecord); - this.setPage_OrderByField(orderby); - ResultBean rb = this.process(); - return rb.pageResult(); - } - - /** - * 分页查询 - * - * @param pageStart 开始的记录数 > pageStart 从0开始 - * @param pageEnd 结束的记录数 <= pageEnd - * @param orderby 排序字段 - * @return - */ - public JSONObject pageQuery(int pageStart, int pageEnd, String orderby) { - // 分页参数 - this.setPage_PageStart(pageStart); - this.setPage_PageRecordNum(pageEnd - pageStart); - this.setPage_OrderByField(orderby); - ResultBean rb = this.process(); - return rb.pageResult(); - } - - public void init() { - this.wp.init(); - } - - public WO(String code, ArrayList wqlcontent) throws Exception { - -// this.isSelfConn = false; - this.code = code; - //this.dbname = WQLCore.defalutDBName; - this.dbname = this.getDbname(); -// if(this.code.toUpperCase().startsWith("U")){ -// this.isTransation = true; -// } - this.wp = new WP(); - - try { - - DBConnBean dbb = WQLCore.dbMap.get(dbname); - if (dbb == null) throw new Exception("无效的数据库名:" + dbname); - this.dbtype = dbb.getDbtype(); - - //当前指令作用域 - String cmd = ""; - - for (Iterator it = wqlcontent.iterator(); it.hasNext(); ) { - String wql = (String) it.next(); - //log.debug("wql:"+wql); - //删除空格和\t等制表符 - wql = WqlUtil.ltrim(wql); - wql = WqlUtil.rtrim(wql); - - //过滤整行的空行、注解和注释 - if ("".equals(wql) - || wql.startsWith("--") - || wql.startsWith("#") - || wql.startsWith("//")) { - continue; - } - - //分析当前命令域 - if (wql.startsWith("[")) { - //1、结束上一个指令域 - - - //2、开启下一个新的指令域 - cmd = wql.substring(wql.indexOf("[") + 1, wql.indexOf("]")); - continue; - } - - if ("数据库".equals(cmd)) { - this.dbname = wql; - dbb = WQLCore.dbMap.get(this.dbname); - if (dbb == null) throw new Exception("无效的数据库名:" + dbname); - this.dbtype = dbb.getDbtype(); - - } else if ("IO定义".equals(cmd) - || "临时变量".equals(cmd)) { - wql = WqlUtil.ctrim(wql); - this.wp.initIOParam(wql); - - } else if ("临时表".equals(cmd)) { - this.tempTableList.add(wql); - - } else if ("业务过程".equals(cmd)) { - this.processlist.add(WqlUtil.ctrim(wql)); - - } - } - } catch (Exception e) { - e.printStackTrace(); - log.error("WQL加载失败:" + e.toString()); - throw new Exception("请检查WQL文件【" + code + ".wql】的语法规范!", e); - } - } - - /** - * 有QU自身建立连接,则QU内部负责对该链接的事务处理 - * - * @return - */ - public ResultBean MainProcess() { - Connection conn = DBConnection.getConnection(this.dbname); -// this.isSelfConn = true; - log.debug(this.code + "执行开始"); - log.debug(this.wp.toString()); - - //2、获取数据库连接并处理事务 - this.wp.conn = conn; - synchronized (this.wp.conn) { - try { - //如果是更新类的操作,则开启事务 -// if(this.code.toUpperCase().startsWith("U")){ -// if(this.isSelfConn){ -// this.wp.utx = DBConnection.getTransaction(this.dbname); -// try { -// if(this.wp.utx!=null){ -// this.wp.utx.begin(); -// } -// }catch (Exception ex) { -// this.wp._success = false; -// } -// } -// } - - //3、创建临时表 - this.wp._success = CreateTempTable(); - - //4、正式处理 - if (this.wp._success) { - this.wp._success = Process(); - } - } catch (Exception ex) { - // TODO Auto-generated catch block - ex.printStackTrace(); - this.wp.InfoError = new ErrorBean(); - this.wp.InfoError.setCode("QUERROR"); - this.wp.InfoError.setDescription(ex.toString()); - this.wp.ALInfoError.add(this.wp.InfoError); - this.wp._success = false; - } finally { - //8、结果处理,事务处理 - //如果是更新类的操作,则关闭事务 -// if(this.code.toUpperCase().startsWith("U")){ -// //如果自身控制事务 -// if(this.isSelfConn){ -// if (this.wp._success) { -// try { -//// if(this.wp.utx!=null){ -//// this.wp.utx.commit(); -//// } -// log.debug(this.code+"执行成功"); -// this.wp.rb.setSucess(1); -// } catch (Exception e) { -// // TODO Auto-generated catch block -// e.printStackTrace(); -// try { -//// if(this.wp.utx!=null){ -//// this.wp.utx.rollback(); -//// } -// log.warn(this.code+"执行失败"); -// this.wp.rb.setSucess(0); -// }catch (Exception e1) { -// this.wp.InfoError = new ErrorBean(); -// this.wp.InfoError.setCode("TXERROR"); -// this.wp.InfoError.setDescription(e1.toString()); -// this.wp.ALInfoError.add(this.wp.InfoError); -// e1.printStackTrace(); -// } -// }finally{ -// DBConnection.freeConnection(this.wp.conn,this.dbname); -// //this.wp.conn = null; -//// this.wp.utx=null; -// } -// -// } else { -// try { -//// if(this.wp.utx!=null){ -//// this.wp.utx.rollback(); -//// } -// }catch (Exception ex) { -// }finally{ -// DBConnection.freeConnection(this.wp.conn,this.dbname); -// //this.wp.conn = null; -//// this.wp.utx=null; -// } -// log.warn(this.code+"执行失败"); -// this.wp.rb.setSucess(0); -// } -// }else{ -// if(this.wp._success){ -// log.debug(this.code+"执行成功"); -// this.wp.rb.setSucess(1); -// }else{ -// log.warn(this.code+"执行失败"); -// this.wp.rb.setSucess(0); -// } -// } -// }else{ -// //查询类 -// if(this.isSelfConn){ -// //如果是自身控制事务,则需要对conn进行释放等处理 -// try { -// if(!this.wp.conn.getAutoCommit() && DBConnection.currpooltype != DBConnection.DBPOOLTYPE_SPRING){ -// this.wp.conn.commit(); -// this.wp.rb.setSucess(1); -// this.wp._success = true; -// } -// } catch (SQLException e) { -// e.printStackTrace(); -// this.wp.rb.setSucess(0); -// this.wp._success = false; -// }finally{ -// DBConnection.freeConnection(this.wp.conn,this.dbname); -// } -// } -// -// if(this.wp._success){ -// log.debug(this.code+"执行成功"); -// this.wp.rb.setSucess(1); -// }else{ -// log.warn(this.code+"执行失败"); -// this.wp.rb.setSucess(0); -// } -// } - - if (this.wp._success) { - log.debug(this.code + "执行成功"); - this.wp.rb.setSucess(1); - } else { - log.warn(this.code + "执行失败"); - this.wp.rb.setSucess(0); - } - DBConnection.freeConnection(this.wp.conn, this.dbname); - this.wp.rb.setInfoDump(this.wp.ALInfoDump); - this.wp.rb.setInfoError(this.wp.ALInfoError); - this.wp.rb.setInfoTrace(this.wp.ALInfoTrace); - return this.wp.rb; - } - } - } - - /** - * 创建临时表 - * - * @return - */ - private boolean CreateTempTable() { - this.wp._state = true; - this.wp.sSQL = ""; - log.debug("------------开始执行 创建临时表 ------------"); - for (Iterator it = this.tempTableList.iterator(); it.hasNext(); ) { - String tempTableName = (String) it.next(); - ArrayList rows = (ArrayList) WQLCore.tempTableMap.get(tempTableName.toUpperCase()); - if (rows == null) { - log.error("临时表[" + tempTableName.toUpperCase() + "]未找到数据字典定义"); - } - if (DataType.MYSQL.equals(dbtype)) { //mysql处理方式 - String pkstr = new String(); - this.wp.sSQL = "CREATE TEMPORARY TABLE IF NOT EXISTS " + tempTableName + " ("; - for (int i = 0; i < rows.size(); i++) { - XLSTableRow xtr = (XLSTableRow) rows.get(i); - - //如果是主键,则增加主键标识 - if ("pk".equalsIgnoreCase(xtr.getParam())) { - pkstr += xtr.getEnname() + ","; - } - - //字段名 - this.wp.sSQL += xtr.getEnname() + " "; - - //字段属性 - if (-1 != xtr.getType().indexOf("U_")) { - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } else { -// if(null!=xtr.getLen()&&!"".equals(xtr.getLen().trim())){ -// this.wp.sSQL += xtr.getType()+"("+xtr.getLen()+")"; -// }else{ -// this.wp.sSQL += xtr.getType(); //clob或blob没有长度 -// } - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } - this.wp.sSQL += ","; - } - this.wp.sSQL = this.wp.sSQL.substring(0, this.wp.sSQL.length() - 1); - //增加主键 - if (pkstr.length() > 0) { - pkstr = pkstr.substring(0, pkstr.length() - 1); - this.wp.sSQL += ",PRIMARY KEY (" + pkstr + ")"; - } - this.wp.sSQL += " )"; - } else if (DataType.ORACLE.equals(dbtype)) { //oracle处理方式 - String pkstr = new String(); - this.wp.sSQL = "CREATE GLOBAL TEMPORARY TABLE " + tempTableName + " ("; - for (int i = 0; i < rows.size(); i++) { - XLSTableRow xtr = (XLSTableRow) rows.get(i); - - //如果是主键,则增加主键标识 - if ("pk".equalsIgnoreCase(xtr.getParam())) { - pkstr += xtr.getEnname() + ","; - } - - //字段名 - this.wp.sSQL += xtr.getEnname() + " "; - - //字段属性 - if (-1 != xtr.getType().indexOf("U_")) { - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } else { -// if(null!=xtr.getLen()&&!"".equals(xtr.getLen().trim())){ -// this.wp.sSQL += xtr.getType()+"("+xtr.getLen()+")"; -// }else{ -// this.wp.sSQL += xtr.getType(); //clob或blob没有长度 -// } - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } - this.wp.sSQL += ","; - } - this.wp.sSQL = this.wp.sSQL.substring(0, this.wp.sSQL.length() - 1); - //增加主键 - if (pkstr.length() > 0) { - pkstr = pkstr.substring(0, pkstr.length() - 1); - this.wp.sSQL += ",PRIMARY KEY (" + pkstr + ")"; - } - this.wp.sSQL += " ) ON COMMIT PRESERVE ROWS"; - } else if (DataType.DB2.equals(dbtype)) { //db2处理方式 - String pkstr = new String(); - this.wp.sSQL = "DECLARE GLOBAL TEMPORARY TABLE " + tempTableName + " ("; - for (int i = 0; i < rows.size(); i++) { - XLSTableRow xtr = (XLSTableRow) rows.get(i); - - //如果是主键,则增加主键标识 - if ("pk".equalsIgnoreCase(xtr.getParam())) { - pkstr += xtr.getEnname() + ","; - } - - //字段名 - this.wp.sSQL += xtr.getEnname() + " "; - - //字段属性 - if (-1 != xtr.getType().indexOf("U_")) { - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } else { -// if(null!=xtr.getLen()&&!"".equals(xtr.getLen().trim())){ -// this.wp.sSQL += xtr.getType()+"("+xtr.getLen()+")"; -// }else{ -// this.wp.sSQL += xtr.getType(); //clob或blob没有长度 -// } - this.wp.sSQL += DataType.getFieldValue(this.dbtype, xtr.getType()); - } - this.wp.sSQL += ","; - } - this.wp.sSQL = this.wp.sSQL.substring(0, this.wp.sSQL.length() - 1); - //增加主键 - if (pkstr.length() > 0) { - pkstr = pkstr.substring(0, pkstr.length() - 1); - this.wp.sSQL += ",PRIMARY KEY (" + pkstr + ")"; - } - this.wp.sSQL += " ) on commit preserve rows WITH REPLACE"; - } else if (DataType.MSSQL.equals(dbtype)) { //mssql处理方式 - - } - - log.debug("数据库创建临时表:\n" + this.wp.sSQL); - try { - if (null == this.wp.sSQL || "".equals(this.wp.sSQL)) { - - } else { - if (DataType.MSSQL.equals(dbtype)) { //MS SQLServer 处理方式 - Statement st = this.wp.conn.createStatement(); - st.execute(this.wp.sSQL); - } else { - this.wp.st = this.wp.conn.prepareStatement(this.wp.sSQL); - this.wp.st.execute(); - } - } - } catch (Exception ex) { - // ex.printStackTrace(); - // log.error("创建临时表出错:\n" + wp.sSQL + "\n" + ex.toString()); - // wp.InfoError = new ErrorBean(); - // wp.InfoError.setCode("E0022"); - // wp.InfoError.setDescription("创建临时表出错:\n" + wp.sSQL + "\n" + ex.toString()); - // wp.ALInfoError.add(wp.InfoError); - this.wp._state = false; - } finally { - try { - if (DBConnection.currpooltype != DBConnection.DBPOOLTYPE_SPRING) { - if (this.wp.st != null) this.wp.st.close(); - this.wp.st = null; - } - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - } - } - log.debug("------------结束执行 创建临时表 ------------"); -// return this.wp._state; - return true; - } - - /** - * 处理 - * - * @return - */ - private boolean Process() { - this.wp._state = true; - log.debug("------------开始执行 业务主过程 ------------"); - this.wp._state = new Syntax().exec(this, this.processlist); - log.debug("------------结束执行 业务主过程 ------------"); - return this.wp._state; - } - - - /*******************************88 - * 基础方法 - * @return - */ - - public String getDbtype() { - return dbtype; - } - - public String getDbname() { - return dbname; - } - - public String getCode() { - return code; - } - - /** - * 获取更新所影响到的记录数 - * - * @return - */ - public int getRowCount() { - return this.wp.IRowsCount; - } - - /** - * 获取处理后的结果集对象 - * - * @return - */ - public ResultBean getResultBean() { - return this.wp.rb; - } - - /** - * 设置WP输出参数 - * - * @param name - * @param value - */ - public WO setParam(String name, Object value) { - this.wp.setParam(name, value); - return this; - } - - /** - * 设置分页信息:开始页数 - * - * @param nPageStart - */ - public WO setPage_PageStart(int nPageStart) { - this.wp.PAGE_PAGESTART = nPageStart; - return this; - } - - /** - * 设置分页信息:每页记录数 - * - * @param nPageRecordNum - */ - public WO setPage_PageRecordNum(int nPageRecordNum) { - this.wp.PAGE_PAGERECORDNUM = nPageRecordNum; - return this; - } - - /** - * 设置分页信息:排序字段 - * - * @param sOrderByField - */ - public WO setPage_OrderByField(String sOrderByField) { - this.wp.SORT_ORDERBYFIELD = sOrderByField; - return this; - } - - /** - * 获取hint方式 - * - * @return - */ - public void setHintMaster() { - this.hint_type = "/!TDDL:MASTER*/"; - } - - public void setHintSlave() { - this.hint_type = "/!TDDL:SLAVE*/"; - } - - public String getHint() { - return this.hint_type; - } - - public boolean isHint() { - if (null == this.hint_type || "".equals(this.hint_type)) { - return false; - } - return true; - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WP.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WP.java deleted file mode 100644 index 91c73ea..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/object/WP.java +++ /dev/null @@ -1,1109 +0,0 @@ -/********************** 版权声明 ************************* - * 文件: WP.java - * 包名: com.crea.wdk.core.wql.core.engine.object - * 版权: - * 职责:WP对象(WQL Param)是存储WO执行的参数和结果的载体 - ******************************************************** - * - * 创 建 者 :yumeng - * 创建时间:2014-07-01 14:25:35 - * 文件版本:v1.0 - * - *******************************************************/ -package org.nl.modules.wql.core.engine.object; - -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.beanutils.BasicDynaBean; -import org.apache.commons.beanutils.DynaProperty; -import org.apache.commons.beanutils.RowSetDynaClass; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.ErrorBean; -import org.nl.modules.wql.core.bean.ParameterBean; -import org.nl.modules.wql.core.bean.ResultBean; -import org.nl.modules.wql.core.bean.WQLRowSetDynaClass; -import org.nl.modules.wql.core.engine.Syntax; -import org.nl.modules.wql.core.engine.WQLFun; -import org.nl.modules.wql.util.WqlUtil; - -import java.io.Serializable; -import java.sql.*; -import java.util.*; -import java.util.regex.Matcher; -import java.util.regex.Pattern; - -/** - * 关于WP对象的设计说明: - * 1、WP的参数包含输入参数、输出参数和临时变量 - * 2、输出参数仅需要赋值即可,用来做为中间结果的输出 - * 3、 - * @author Administrator - * - */ -@Slf4j -public class WP implements Serializable,Cloneable{ - - private static final long serialVersionUID = -3298593250568558161L; - - - protected List INDEF = new ArrayList();//输入定义 - protected List OUTDEF = new ArrayList();//输出定义 - protected List TEMPDEF = new ArrayList();//临时定义 - protected HashMap IN = new HashMap(); //输入参数 - protected HashMap OUT = new HashMap(); //输出参数 - protected HashMap TEMP = new HashMap(); //临时变量 - - protected HashMap IOType = new HashMap(); //IO参数的类型 - - //以下参数主要是给赋值语句使用 - protected HashMap QUERY = new HashMap(); //查询结果参数 - protected HashMap CALL = new HashMap(); //调用外部对象的输出结果,包含CALLWQL、CALLJAVA - - //sql语句 - public String sSQL = ""; - public String sCalculate = ""; - - //提示信息 - public ArrayList ALInfoDump = null; - public ArrayList ALInfoError = null; - public ArrayList ALInfoTrace = null; - public ErrorBean InfoDump; - public ErrorBean InfoError; - public ErrorBean InfoTrace; - - //执行结果 - public int IRowsCount = 0; - public ResultBean rb = new ResultBean(); - - //数据库连接 - public Connection conn = null; -// public UserTransaction utx = null; - public CallableStatement cst = null; - public PreparedStatement st = null; - public ResultSet rs = null; - - //处理状态 - public boolean _hasResultSet = false; - public int _SpSuccess; - public boolean _success = false; - public boolean _state; - - //分页参数 - public int PAGE_PAGESTART = -99; //开始的页数 - public int PAGE_PAGERECORDNUM = -99; //每页记录数 - public String SORT_ORDERBYFIELD = ""; - -// @Override -// protected Object clone() throws CloneNotSupportedException { -// WP o = null; -// try{ -// o = (WP)super.clone(); -// }catch(CloneNotSupportedException e){ -// e.printStackTrace(); -// } -// o.IN = (HashMap) IN.clone(); -// o.OUT = (HashMap) OUT.clone(); -// o.TEMP = (HashMap) TEMP.clone(); -// o.IOType = (HashMap) IOType.clone(); -// o.QUERY = (HashMap) QUERY.clone(); -// o.CALL = (HashMap) CALL.clone(); -// o.rb = new ResultBean(); -// return o; -// } - - - - /** - * 初始化运行参数 - */ - public void init(){ - this.ALInfoDump = new ArrayList(); - this.ALInfoError = new ArrayList(); - this.ALInfoTrace = new ArrayList(); - this.sSQL = ""; - this.sCalculate = ""; - this.rb = new ResultBean(); - - Set keyIN = this.IN.keySet(); - for(Iterator it = keyIN.iterator();it.hasNext();){ - Object key = it.next(); - Object value = this.IN.get(key); - if(WqlUtil.isString(value)){ - this.IN.put(key, new String()); - }else{ - this.IN.put(key, new String[10000]); - } - } - Set keyOUT = this.OUT.keySet(); - for(Iterator it = keyOUT.iterator();it.hasNext();){ - Object key = it.next(); - Object value = this.OUT.get(key); - if(WqlUtil.isString(value)){ - this.OUT.put(key, new String()); - }else{ - this.OUT.put(key, new String[10000]); - } - } - Set keyTEMP = this.TEMP.keySet(); - for(Iterator it = keyTEMP.iterator();it.hasNext();){ - Object key = it.next(); - Object value = this.TEMP.get(key); - if(WqlUtil.isString(value)){ - this.TEMP.put(key, new String()); - }else{ - this.TEMP.put(key, new String[10000]); - } - } - Set keyQUERY = this.QUERY.keySet(); - for(Iterator it = keyQUERY.iterator();it.hasNext();){ - Object key = it.next(); - Object value = this.QUERY.get(key); - if(WqlUtil.isString(value)){ - this.QUERY.put(key, new String()); - }else{ - this.QUERY.put(key, new String[10000]); - } - } - Set keyCALL = this.CALL.keySet(); - for(Iterator it = keyCALL.iterator();it.hasNext();){ - Object key = it.next(); - Object value = this.CALL.get(key); - if(WqlUtil.isString(value)){ - this.CALL.put(key, new String()); - }else{ - this.CALL.put(key, new String[10000]); - } - } - } - - - @Override - public String toString() { - StringBuffer sStr = new StringBuffer(); - sStr.append("\n IO值:"); - //Set keyset = this.IN.keySet(); - //for(Iterator it = keyset.iterator();it.hasNext();){ - for(Iterator it = this.INDEF.iterator();it.hasNext();){ - String key = (String) it.next(); - Object value = this.IN.get(key); - if(WqlUtil.isString(value)){ - sStr.append("\n "+key+" = " + value); - }else if("[Ljava.lang.String;".equals(value.getClass().getName())){ - String[] strarr = (String[]) value; - if(null!=strarr){ - for (int i = 0; i < strarr.length; i++) { - if ( strarr[i] != null ) { - sStr.append("\n "+key+"[" + i + "] = " + strarr[i]); - } - } - } - }else{ - sStr.append("\n "+key+" = " + value.toString()); - } - } - return sStr.toString(); - } - - protected void setIN(String name,Object param){ - this.IN.put(name, param); - } - protected Object getIN(String name){ - return this.IN.get(name); - } - protected void setOUT(String name,Object param){ - this.OUT.put(name, param); - } - protected Object getOUT(String name){ - return this.OUT.get(name); - } - protected void setTEMP(String name,Object param){ - this.TEMP.put(name, param); - } - protected Object getTEMP(String name){ - return this.TEMP.get(name); - } - - protected void setCALL(String name,Object param){ - this.CALL.put(name, param); - } - protected Object getCALL(String name){ - return this.CALL.get(name); - } - /** - * 运行前初始化运行参数,被外部调用 - * @param name - * @param value - */ - protected void setParam(String name,Object value){ - Object o = this.IN.get("输入."+name); - if(null==value){ - value = ""; - } - if(null!=o){ - if(WqlUtil.isString(value)){ - this.IN.put("输入."+name, value); - }else{ - log.warn("IO输入参数类型错误,"+name+"应为String"); - } - }else{ - o = this.IN.get("输入明细."+name); - if(null!=o){ - if("[Ljava.lang.String;".equals(value.getClass().getName())){ -// if(!WqlUtil.isString(value)){ - this.IN.put("输入明细."+name, value); - }else{ - log.warn("IO输入参数类型错误,"+name+"应为StringArray"); - } - }else{ - o = this.IN.get("输入对象."+name); - if(null!=o){ - this.IN.put("输入对象."+name, value); - }else{ - log.error("IO输入参数没有找到对应的属性对象:IO no Param "+name); - } - } - } - } -// /** -// * 对setParam的补充,输入的是string类型 -// * @param name -// * @param value -// */ -// public void setParamString(String name,String value){ -// Object o = this.IN.get("输入."+name); -// if(null!=o){ -// this.IN.put("输入."+name, "'"+value+"'"); -// }else{ -// log.error("IO输入参数不存在:"+name); -// } -// } -// public void setParamInt(String name,int value){ -// Object o = this.IN.get("输入."+name); -// if(null!=o){ -// this.IN.put("输入."+name, Integer.toString(value)); -// }else{ -// log.error("IO输入参数不存在:"+name); -// } -// } -// public void setParamDouble(String name,double value){ -// Object o = this.IN.get("输入."+name); -// if(null!=o){ -// this.IN.put("输入."+name, Double.toString(value)); -// }else{ -// log.error("IO输入参数不存在:"+name); -// } -// } - /** - * 初始化io输入输出参数 - * @param cmdstr - */ - protected void initIOParam(String cmdstr){ - String[] arr = cmdstr.split(" "); - String ioname = arr[0]; - String iotype = arr[2]; - - //将当前io参数的类型保存,iotype形如u_string - this.IOType.put(ioname, iotype.toUpperCase()); - - if(ioname.startsWith("输入对象")){ - this.setIN(ioname,new String()); - this.INDEF.add(ioname); - }else if(ioname.startsWith("输入明细")){ - this.setIN(ioname, new String[10000]); - this.INDEF.add(ioname); - }else if(ioname.startsWith("输入")){ - this.setIN(ioname, new String()); - this.INDEF.add(ioname); - }else if(ioname.startsWith("输出明细")){ - this.setOUT(ioname, new String[10000]); - this.OUTDEF.add(ioname); - }else if(ioname.startsWith("输出")){ - this.setOUT(ioname, new String()); - this.OUTDEF.add(ioname); - }else if(ioname.startsWith("临时明细")){ - this.setTEMP(ioname, new String[10000]); - this.TEMPDEF.add(ioname); - }else if(ioname.startsWith("临时")){ - this.setTEMP(ioname, new String()); - this.TEMPDEF.add(ioname); - } - - - } - - /** - * 获取IO参数里的值 - * @param name - * @param nLoop - * @return - */ - public Object getIOParam(String name,int nLoop){ - Object value = name; - if(name.startsWith("输入对象.")){ - value = this.getIN(name); - }else if(name.startsWith("输入.")){ - value = (String) this.getIN(name); - }else if(name.startsWith("输入明细.")){ - if(-1==nLoop){ - value = (String[])this.getIN(name); - }else{ - String[] arr = (String[])this.getIN(name); - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])this.getIN(name))[nLoop]; - } - }else if(name.startsWith("输出.")){ - value = (String) this.getOUT(name); - }else if(name.startsWith("输出明细.")){ - if(-1==nLoop){ - value = (String[])this.getOUT(name); - }else{ - String[] arr = (String[])this.getOUT(name); - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])this.getOUT(name))[nLoop]; - } - }else if(name.startsWith("临时.")){ - value = (String) this.getTEMP(name); - }else if(name.startsWith("临时明细.")){ - if(-1==nLoop){ - value = (String[])this.getTEMP(name); - }else{ - String[] arr = (String[])this.getTEMP(name); - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])this.getTEMP(name))[nLoop]; - } - }else if(name.startsWith("\"")&&name.endsWith("\"")){ - if(!"\"".equals(name)){ - value = name.substring(1,name.length()-1); - } - }else if(name.equals(Syntax.UNIONSTR)){ - value = ""; - } - return value; - } - - /** - * 根据类型判断并返回sql中的值 - * @param name - * @param nLoop - * @return - */ - public String getIOParamSQL(String name,int nLoop){ - String value = ""; - Object o = getIOParam(name, nLoop); - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - if(-1==nLoop){ - nLoop = 0; - } - String[] arr = (String[])o; - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - String typeName = (String) this.IOType.get(name); - if(null==typeName){ - value = name; - }else{ - String type = DataType.getFieldType(typeName); - if(DataType._STRING.equals(type)){ - value = "'" + value + "'"; - } - } - return value; - } - - public void setIOParam(String name,Object value,int nLoop){ - if(name.startsWith("输入对象.")){ - this.setIN(name, value); - }else if(name.startsWith("输入明细.")){ - String[] strarr = (String[]) this.getIN(name); - if(-1==nLoop){ - nLoop = 0; - } - if(WqlUtil.isString(value)){ - strarr[nLoop] = (String)value; - }else{ - String[] arrtmp = (String[]) value; - for(int i=0;i1){ - for(int i=0;i findClobs(String sql,int nLoop) throws Exception{ - ArrayList clobs = new ArrayList(); - if(-1==nLoop){ - nLoop = 0; - } - //Set keyset = this.IN.keySet(); - //for(Iterator it = keyset.iterator();it.hasNext();){ - for(Iterator it = this.INDEF.iterator();it.hasNext();){ - String key = (String) it.next(); - Object o = this.IN.get(key); - - String value = ""; - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - String[] arr = (String[])o; - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - - //判断当前iotype是否为字符串形,如果是的话则加上两个单引号 - String iotype = (String) this.IOType.get(key); - if(iotype==null){ - throw new Exception("输入参数["+key+"]未定义数据类型"); - } - if(iotype.toUpperCase().startsWith("C_")){ - value = " '"+value+"' "; - - //判断当前字段在sql中是否出现 - boolean isshow = false; - Pattern pattern = Pattern.compile(key+"[ \n\b\r\t]+"); - Matcher matcher = pattern.matcher(sql); - if(matcher.find()){ - isshow = true; - } - //如果上面没替换成功,则替换后面紧跟,号的 - if(!isshow){ - pattern = Pattern.compile(key+"[,]+"); - matcher = pattern.matcher(sql); - if(matcher.find()){ - isshow = true; - } - } - //如果当前字段在sql中出现过,则保存当前值 - if(isshow){ - //ParameterBean para = new ParameterBean(); - //para.setType(iotype); - //para.setValue(value); - clobs.add(value); - } - }else{ - continue; - } - - } - - //keyset = this.TEMP.keySet(); - //for(Iterator it = keyset.iterator();it.hasNext();){ - for(Iterator it = this.TEMPDEF.iterator();it.hasNext();){ - String key = (String) it.next(); - Object o = this.TEMP.get(key); - String value = ""; - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - String[] arr = (String[])o; - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - //判断当前iotype是否为字符串形,如果是的话则加上两个单引号 - String iotype = (String) this.IOType.get(key); - if(iotype==null){ - throw new Exception("临时变量["+key+"]未定义数据类型"); - } - if(iotype.toUpperCase().startsWith("C_")){ -// value = " '"+value+"' "; - - //判断当前字段在sql中是否出现 - boolean isshow = false; - Pattern pattern = Pattern.compile(key+"[ \n\b\r\t]+"); - Matcher matcher = pattern.matcher(sql); - if(matcher.find()){ - isshow = true; - } - //如果上面没替换成功,则替换后面紧跟,号的 - if(!isshow){ - pattern = Pattern.compile(key+"[,]+"); - matcher = pattern.matcher(sql); - if(matcher.find()){ - isshow = true; - } - } - //如果当前字段在sql中出现过,则保存当前值 - if(isshow){ - clobs.add(value); - } - }else{ - continue; - } - - } - return clobs; - } - - /** - * 对除了赋值语句之外的sql语句进行变量替换 - * 用?替换变量 - * 替换内容有:输入参数、输出参数、临时变量 - * @param sql - * @param nLoop - * @return - * @throws Exception - */ - public String replaceParam4SQL(String sql,int nLoop) throws Exception{ - return replaceParam4SQL(sql,nLoop,null); - } - - /** - * 对除了赋值语句之外的sql语句进行变量替换 - * 用?替换变量 - * 替换内容有:输入参数、输出参数、临时变量 - * @param sql - * @param nLoop - * @return - * @throws Exception - */ - public String replaceParam4SQL(String sql,int nLoop,ArrayList paras) throws Exception{ -// private HashMap IN = new HashMap(); //输入参数 -// private HashMap OUT = new HashMap(); //输出参数 -// private HashMap TEMP = new HashMap(); //临时变量 - if(-1==nLoop){ - nLoop = 0; - } - - if(paras==null){ - paras = new ArrayList(); - }else{ - paras.clear(); - } - StringBuffer bfSQL = new StringBuffer(); - String[] arrSQL = WQLFun.splitSQL2Array(sql);//对sql语句进行拆分 - // - int arrlength = arrSQL.length; - for(int i=0;inLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - - String iotype = (String) this.IOType.get(str); - if(iotype==null){ - throw new Exception("输入参数["+str+"]未定义数据类型"); - } - if(!iotype.toUpperCase().startsWith("F_")){ - //当参数类型为f_string时不处理 - ParameterBean para = new ParameterBean(); - para.setType(iotype); - para.setValue(sqlEscape(value)); - paras.add(para); - - str = "?"; - }else{ - str = value; - } - }else if(this.OUT.containsKey(str)){ - //输出参数 - Object o = this.OUT.get(str); - String value = ""; - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - String[] arr = (String[])o; - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - - String iotype = (String) this.IOType.get(str); - if(iotype==null){ - throw new Exception("输出参数["+str+"]未定义数据类型"); - } - if(!iotype.toUpperCase().startsWith("F_")){ - //当参数类型为f_string时不处理 - ParameterBean para = new ParameterBean(); - para.setType(iotype); - para.setValue(sqlEscape(value)); - paras.add(para); - - str = "?"; - }else{ - str = value; - } - }else if(this.TEMP.containsKey(str)){ - //临时变量 - Object o = this.TEMP.get(str); - String value = ""; - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - String[] arr = (String[])o; - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])o)[nLoop]; - } - - String iotype = (String) this.IOType.get(str); - if(iotype==null){ - throw new Exception("临时变量["+str+"]未定义数据类型"); - } - if(!iotype.toUpperCase().startsWith("F_")){ - //当参数类型为f_string时不处理 - ParameterBean para = new ParameterBean(); - para.setType(iotype); - para.setValue(sqlEscape(value)); - paras.add(para); - - str = "?"; - }else{ - str = value; - } - } - bfSQL.append(str); - if(i < arrlength-1){ //sql后面还有内容 - if(!"(".equals(arrSQL[i+1])){//如果是函数的话,函数名和左括号直接不留空格,留空格在mysql下会报函数错误 - bfSQL.append(" "); - } - } - } - - //log.debug("=============================="); - //log.debug(bfSQL.toString()); - return bfSQL.toString(); - - -// Set keyset = this.IN.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String key = (String) it.next(); -// Object o = this.IN.get(key); -// -// String value = ""; -// if(WqlUtil.isString(o)){ -// value = (String)o; -// }else{ -// String[] arr = (String[])o; -// if(null!=arr&&arr.length>nLoop){ -// value = arr[nLoop]; -// }else{ -// value = ""; -// } -//// value = ((String[])o)[nLoop]; -// } -// //判断当前iotype是否为字符串形,如果是的话则加上两个单引号 -// String iotype = (String) this.IOType.get(key); -// if(iotype==null){ -// throw new Exception("输入参数["+key+"]未定义数据类型"); -// } -// if(iotype.toUpperCase().startsWith("S_")){ -// value = " '"+sqlEscape(value)+"' "; -// } -// if(iotype.toUpperCase().startsWith("C_")){ -// value = " ? "; -// } -// value = matcherEscape(value); -//// sql = sql.replaceAll(key, value); -// //考虑到同名、同前缀的情况 -//// sql = sql.replaceAll(key+"[ \n\b\r\t]+", value).replaceAll(key+"[,]+", value+",").replaceAll(key, value); -// -// //替换,同时忽略之后的所有换行、分隔、空格等符号 -// //如果后面紧跟换行符号,则替换 -// boolean isrep = false; -// Pattern pattern = Pattern.compile(key+"[ \n\b\r\t]+"); -// Matcher matcher = pattern.matcher(sql); -// if(matcher.find()){ -// sql = matcher.replaceAll(value+" "); -// isrep = true; -// } -// //如果上面没替换成功,则替换后面紧跟,号的 -// if(!isrep){ -// pattern = Pattern.compile(key+"[,]+"); -// matcher = pattern.matcher(sql); -// if(matcher.find()){ -// sql = matcher.replaceAll(value); -// isrep = true; -// } -// } -// if(!isrep){ -// pattern = Pattern.compile(key+"[a-zA-Z0-9]+"); -// matcher = pattern.matcher(sql); -// if(!matcher.find()){ -// sql = sql.replaceAll(key,value); -// } -// -//// sql = sql.replaceAll(key,value); -// } -// } -// -// keyset = this.OUT.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String key = (String) it.next(); -// Object o = this.OUT.get(key); -// String value = ""; -// if(WqlUtil.isString(o)){ -// value = (String)o; -// }else{ -// String[] arr = (String[])o; -// if(null!=arr&&arr.length>nLoop){ -// value = arr[nLoop]; -// }else{ -// value = ""; -// } -//// value = ((String[])o)[nLoop]; -// } -// //判断当前iotype是否为字符串形,如果是的话则加上两个单引号 -// String iotype = (String) this.IOType.get(key); -// if(iotype==null){ -// throw new Exception("输出参数["+key+"]未定义数据类型"); -// } -// if(iotype.toUpperCase().startsWith("S_")){ -// value = " '"+sqlEscape(value)+"' "; -// } -// if(iotype.toUpperCase().startsWith("C_")){ -// value = " ? "; -// } -// value = matcherEscape(value); -// sql = sql.replaceAll(key, value); -// } -// -// keyset = this.TEMP.keySet(); -// for(Iterator it = keyset.iterator();it.hasNext();){ -// String key = (String) it.next(); -// Object o = this.TEMP.get(key); -// String value = ""; -// if(WqlUtil.isString(o)){ -// value = (String)o; -// }else{ -// String[] arr = (String[])o; -// if(null!=arr&&arr.length>nLoop){ -// value = arr[nLoop]; -// }else{ -// value = ""; -// } -//// value = ((String[])o)[nLoop]; -// } -// //判断当前iotype是否为字符串形,如果是的话则加上两个单引号 -// String iotype = (String) this.IOType.get(key); -// if(iotype==null){ -// throw new Exception("临时变量["+key+"]未定义数据类型"); -// } -// if(iotype.toUpperCase().startsWith("S_")){ -// value = " '"+sqlEscape(value)+"' "; -// } -// if(iotype.toUpperCase().startsWith("C_")){ -// value = " ? "; -// } -// value = matcherEscape(value); -// sql = sql.replaceAll(key, value); -// } -// return sql; - } - - /** - * - * @param value - * @return - */ - private String sqlEscape(String value){ - if(value==null) return ""; - //value = value.replaceAll("'", WQLFun.SINGLEQUOTES+WQLFun.SINGLEQUOTES);//拼sql语句时,如果value值中存在“'”,则替换成“''”,避免value值中的“'”引起sql语法错误,如果语句中的“'”不想被替换成“''”,请使用关键字SINGLEQUOTES代替“'” - return value; - } - - /** - * 替换正则表达式相关关键字,避免做replaceAll时错误 - * @param value - * @return - */ - private String matcherEscape(String value){ - if(value==null) return ""; - value = WqlUtil._replaceStr(value, "\\", "\\\\"); - value = WqlUtil._replaceStr(value, "$", "\\$"); - return value; - } - - /** - * 设置调用的结果参数 - * @param name - * @param value - */ - public void setCALLParam(String name,Object value){ - this.CALL.put(name, value); - } - - public Object getCALLParam(String name,int nLoop){ - Object value = name; - Object ocall = this.getCALL(name); - if(null==ocall){ - return null; - }else{ - if(-1!=name.indexOf("明细")){ - if(-1==nLoop){ - value = (String[])this.getCALL(name); - }else{ - String[] arr = (String[])this.getCALL(name); - if(null!=arr&&arr.length>nLoop){ - value = arr[nLoop]; - }else{ - value = ""; - } -// value = ((String[])this.getCALL(name))[nLoop]; - } - }else{ - value = (String) this.getCALL(name); - } - } - return value; - } - - - public HashMap getOUT() { - return OUT; - } - - public HashMap getIN() { - return IN; - } - - - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/IWQL.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/IWQL.java deleted file mode 100644 index b77640f..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/IWQL.java +++ /dev/null @@ -1,151 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - -import org.nl.modules.wql.core.engine.WQLFun; -import org.nl.modules.wql.core.engine.object.WO; -import org.nl.modules.wql.util.WqlUtil; - -import java.util.ArrayList; -import java.util.Stack; - - -public abstract class IWQL { - protected WO wo; - protected String cmdLine; - protected ArrayList list; - - public static IWQL newInstance(String name){ - name = name.toUpperCase(); - IWQL iwql = null; - if("IF".equals(name)){ - iwql = new wqlIF(); - }else if("LOOP".equals(name)){ - iwql = new wqlLOOP(); - }else if("SELECT".equals(name)){ - iwql = new wqlSELECT(); - }else if("DUMP".equals(name)){ - iwql = new wqlDUMP(); - }else if("ERROR".equals(name)){ - iwql = new wqlERROR(); - }else if("QUERY".equals(name)){ - iwql = new wqlQUERY(); - }else if("PAGEQUERY".equals(name)){ - iwql = new wqlPAGEQUERY(); - }else if("INSERT".equals(name)){ - iwql = new wqlINSERT(); - }else if("UPDATE".equals(name)){ - iwql = new wqlUPDATE(); - }else if("DELETE".equals(name)){ - iwql = new wqlDELETE(); - }else if("EXECSQL".equals(name)){ - iwql = new wqlEXECSQL(); - }else if("CALLWQL".equals(name)){ - iwql = new wqlCALLWQL(); - }else if("CALLJAVA".equals(name)){ - iwql = new wqlCALLJAVA(); - }else if("CALLPROC".equals(name)){ - iwql = new wqlCALLPROC(); - } - return iwql; - } - /** - * 对指令对象进行赋值 - * @param qu 执行的QU对象 - * @param cmdLine 指令参数 - * @param wqllist 所有指令的内容,字符串或指令对象 - */ - public void setWQL(WO wo, String cmdLine, ArrayList wqllist){ - this.wo = wo; - this.cmdLine = cmdLine; - this.list = wqllist; - } - - /** - * 执行 - * @param nLoop 如果处在循环体内,外界将传入循环顺序,以便在引用明细时使用 - * @return - */ - public abstract boolean exec(int nLoop); - - - /** - * 是否通过OPTIONS的判断 - * @param cmd_option - * @param nLoop - * @return - */ - protected boolean OPTION_Process(String cmd_option,int nLoop){ - boolean isOption = false; - String[] arr = cmd_option.split(" "); - Stack ostack = new Stack(); - String param1 = ""; - String param2 = ""; //比较符 - String param3 = ""; - for(int i=0;i".equals(str) - ||">".equals(str) - ||"<".equals(str) - ||">=".equals(str) - ||"<=".equals(str)){ - param2 = str; - }else{ - //如果比较符号为空,则说明当前遇到比较符的第一个 - if("".equals(param2)){ - param1 = (String) wo.wp.getIOParam(str, nLoop); - }else{ - //如果已经有比较符号了,则进行比较 - param3 = (String) wo.wp.getIOParam(str, nLoop); - //进行比较 - boolean istrue = WQLFun.APPCompare(param1, param2, param3); - ostack.push(istrue); - - param1 = ""; - param2 = ""; - param3 = ""; - } - } - } - - //如果通过option - isOption = OPTION_Check(ostack); - return isOption; - } - - private boolean OPTION_Check(Stack stack){ - boolean istrue = true; - String cmd = ""; - while(stack.size()>0){ - Object o = stack.pop(); - if(WqlUtil.isString(o)){ - String so = (String) o; - if("(".equals(so)){ - break; - }else{ - cmd = so; - } - }else{ - Boolean bo = (Boolean) o; - if("".equals(cmd)){ - istrue = bo.booleanValue(); - }else{ - if("AND".equals(cmd)){ - istrue = istrue&&bo.booleanValue(); - }else if("OR".equals(cmd)){ - istrue = istrue||bo.booleanValue(); - } - } - } - } - - return istrue; - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlAssign.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlAssign.java deleted file mode 100644 index 85babae..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlAssign.java +++ /dev/null @@ -1,136 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.engine.Syntax; -import org.nl.modules.wql.util.WQLCalculator; -import org.nl.modules.wql.util.WqlUtil; - - -/** - * 关于赋值的语法规则说明 - * 1、赋值语句类似如下形式: - * 输入明细.明细信息_收货数量 = 0 - * 临时变量.明细序号 = 1 - * 2、能够被赋值的对象仅为[IO定义]中的输入参数(包括明细)和[临时变量]中的参数(包括明细): - * 输入.name - * 输入明细.name - * 输出.name - * 输出明细.name - * 临时.name - * 临时明细.name - * 3、赋值语句如果为字符串形式,支持UNIONSTR拼接字符串 - *

- * 4、支持四则运算 - * 5、四则运算和UNIONSTR不支持嵌套使用,即一次只能使用一种方式 - * 6、如果是数组之间的赋值,则不支持任何运算 - * - * @author Administrator - */ -@Slf4j -public class wqlAssign extends IWQL { - -// private WO wo; -// private String cmdLine; -// private ArrayList list; - - - @Override - public boolean exec(int nLoop) { - String[] arr = cmdLine.split(" "); - String param1 = arr[0]; - String param2 = cmdLine.substring(param1.length() + 3, cmdLine.length()); - - //1、获取需要赋值的值 - - //判断是否需要四则运算或字符串 - boolean iscal = false; - boolean isunionstr = false; - if (WqlUtil.contains(param2, "+") - || WqlUtil.contains(param2, "-") - || WqlUtil.contains(param2, "*") - || WqlUtil.contains(param2, "/")) { - iscal = true; - } - if (-1 != param2.indexOf(Syntax.UNIONSTR)) { - isunionstr = true; - } - - if (iscal && isunionstr) { - log.error("--------wql语法错误,运算符和UNIONSTR不能连用\n" + cmdLine); - return false; - } - - //变量替换,将输入、输入明细、临时、临时明细开头的全部换为真实的值 - - Object param3; //定义被赋值对象 - String[] arrtmp = param2.split(" "); - - //a、判断当前被赋值的是否是数组 - if (-1 != param1.indexOf("明细")) { - //a.1、如果是数组,则按照数组的方式进行赋值 - - //一、首先从IO对象中查找 - param3 = wo.wp.getIOParam(arrtmp[0], nLoop); - //二、然后从select结果集中查找 - Object otmp = wo.wp.getQueryParam(arrtmp[0], param1); - if (null != otmp) { - param3 = otmp; - } - //三、从CALL结果集中查找 - otmp = wo.wp.getCALLParam(arrtmp[0], nLoop); - if (null != otmp) { - param3 = otmp; - } - } else { - //b、如果当前被赋值对象是字符串 - String strtmp = new String(); - for (int i = 0; i < arrtmp.length; i++) { - String str = arrtmp[i]; - //一、首先从IO对象中查找 - Object o = wo.wp.getIOParam(str, nLoop); - //二、然后从select结果集中查找 - Object otmp = wo.wp.getQueryParam(str, param1); - if (null != otmp) { - o = otmp; - } - //三、从CALL结果集中查找 - otmp = wo.wp.getCALLParam(str, nLoop); - if (null != otmp) { - o = otmp; - } - - if (WqlUtil.isString(o)) { - if (i > 0) { - strtmp += (iscal ? " " : "") + (String) o; - } else { - strtmp += (String) o; - } - } else { - strtmp += ((String[]) o)[0]; - } - } - strtmp = WqlUtil.rtrim(strtmp); - if (iscal) { - strtmp = WQLCalculator.exec(strtmp); - } - param3 = strtmp; - } - - - log.debug("【赋值运算】:[nLoop=" + nLoop + "] " + param1 + " = " + param3); - - //写回IO中 - wo.wp.setIOParam(param1, param3, nLoop); - - return true; - } - -// @Override -// public void setWQL(WO wo, String cmdLine, ArrayList list) { -// this.wo = wo; -// this.cmdLine = cmdLine; -// this.list = list; -// } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLJAVA.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLJAVA.java deleted file mode 100644 index 77e4bd5..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLJAVA.java +++ /dev/null @@ -1,90 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.bean.WQLJava; -import org.nl.modules.wql.util.WqlUtil; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Set; - -/** - * 关于calljava的说明 - * 1、被调用的java文件必须放在wql_root的java文件夹中 - * 2、被调用的java必须实现WQLJava虚类并实现其中方法 - * - * @author Administrator - * - */ -@Slf4j -public class wqlCALLJAVA extends IWQL { -// private WO wo; -// private String cmdLine; -// private ArrayList wqllist; - - @Override - public boolean exec(int nLoop) { - // TODO Auto-generated method stub -// System.out.println("调用了wqlCALLJAVA"); - String[] arr = this.cmdLine.split(" "); - String javaname = arr[1]; - boolean isSuccess = false; - //1、初始化 - WQLJava wj = null; - try { - String path = WQLCore.ROOT.replaceAll("[/]", "."); - wj = (WQLJava) Class.forName(path+".java."+javaname).newInstance(); - isSuccess = true; - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - if(!isSuccess){ - log.error("wqlCALLJAVA文件不存在:"+javaname); - return false; - } - - //2、获取输入参数 - HashMap inMap = new HashMap(); - for(Iterator it = this.list.iterator();it.hasNext();){ - String wql = (String) it.next(); - String[] arrtmp = wql.split(" "); - String pname1 = arrtmp[0]; - if("CALLJAVA".equals(pname1.toString()) - ||"ENDCALLJAVA".equals(pname1.toString())){ - - }else{ - String pname2 = arrtmp[2]; - Object param2 = wo.wp.getIOParam(pname2, nLoop); - inMap.put(pname1, param2); - } - } - - //3、调用结束后输出参数 - HashMap outmap = wj.process(wo, inMap); - - Set keyset = outmap.keySet(); - for(Iterator it = keyset.iterator();it.hasNext();){ - String key = (String) it.next(); - Object value = outmap.get(key); - if(WqlUtil.isString(value)){ - wo.wp.setCALLParam(javaname+".输出."+key, value); - }else{ - wo.wp.setCALLParam(javaname+".输出明细."+key, value); - } - } - //log.debug("calljava【"+javaname+"】执行情况:"+wo.wp._state); - return wo.wp._state; - } - -// @Override -// public void setWQL(WO wo, String cmdLine, ArrayList wqllist) { -// // TODO Auto-generated method stub -// this.wo = wo; -// this.cmdLine = cmdLine; -// this.wqllist = wqllist; -// } - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLPROC.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLPROC.java deleted file mode 100644 index e4c2597..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlCALLPROC.java +++ /dev/null @@ -1,183 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.ErrorBean; -import org.nl.modules.wql.core.engine.WQLFun; -import org.nl.modules.wql.util.WqlUtil; - -import java.sql.ResultSet; -import java.sql.SQLException; -import java.sql.Types; -import java.util.ArrayList; -import java.util.Iterator; - -/** - * 关于CALLPROC的语法说明 - * 1、存储过程的输入输出参数均为varchar类型,如需其他类型请在各自存储过程中转换 - * 2、 - * @author Administrator - * - */ -@Slf4j -public class wqlCALLPROC extends IWQL { -// private WO wo; -// private String cmdLine; -// private ArrayList wqllist; - @Override - public boolean exec(int nLoop) { - // TODO Auto-generated method stub - String[] arr = this.cmdLine.split(" "); - String procname = arr[1]; - - ArrayList inlist = new ArrayList(); //输入参数 - ArrayList outlist = new ArrayList(); //输出参数 - for(Iterator it = this.list.iterator();it.hasNext();){ - String wql = (String) it.next(); - if(wql.startsWith("CALLPROC") - ||wql.startsWith("ENDCALLPROC")){ - - }else{ - if(-1!=wql.indexOf("输入")){ - Object o = wo.wp.getIOParam(wql, nLoop); - String value = ""; - if(WqlUtil.isString(o)){ - value = (String)o; - }else{ - value = ((String[])o)[-1==nLoop?0:nLoop]; - } - inlist.add(value); - }else if(-1!=wql.indexOf("输出")){ -// String pname = wql.split("[.]")[1]; -// outlist.add(pname); - outlist.add(wql); - - } - } - } - - int nSize = inlist.size() + outlist.size(); - try { - if(!DataType.ORACLE.equals(wo.getDbtype())){ //非oracle的情况下 - wo.wp.sSQL = "{ call "+procname+"("; - for(int i=0;i0){ - String s = (String) stack.pop(); - if(s.startsWith("OPTION")){ - ispass = OPTION_Process(s, nLoop); - break; - }else{ - sql_options = s+" " + sql_options; - } - } - if(ispass){ - sql.append(" AND " + sql_options + " "); - } - cmd = ""; - }else if("ENDDELETE".equals(cmdStr)){ //如果是ENDINSERT,则开始执行 - - }else{ - if(!"".equals(cmd)){ //如果处在上一个指令域中,则当前命令入栈 - stack.push(wql); - continue; - }else{ - sql.append(wql+" "); - } - } - } - - //参数列表 - ArrayList paraList = new ArrayList(); - try { - //对参数进行统一的替换 - wo.wp.sSQL = sql.toString(); - log.debug("解析后SQL:\n"+wo.wp.sSQL); - wo.wp.sSQL = wo.wp.replaceParam4SQL(sql.toString(), nLoop, paraList); - wo.wp.sSQL = wo.wp.sSQL.replaceAll("SUBSELECT", "SELECT"); - - - //2、对sql进行数据库本地化转换 - - if(DataType.MSSQL.equals(wo.getDbtype())){ //MSSQL数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// wo.wp.sSQL = wo.wp.sSQL.replaceAll(tbname, "dbo."+tbname); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", "dbo."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", "dbo."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,"dbo"); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.ORACLE.equals(wo.getDbtype())){ //ORACLE数据库 - - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.DB2.equals(wo.getDbtype())){ //DB2数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.MYSQL.equals(wo.getDbtype())){ //MYSQL数据库 - //2.1、对表名前加上前缀 - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - } - - //2.3、执行sql - wo.wp.IRowsCount = 0; - wo.wp.st = wo.wp.conn.prepareStatement(wo.wp.sSQL); - for(int i=0;i paraList = new ArrayList(); - try { - //对参数进行统一的替换 - wo.wp.sSQL = sql.toString(); - log.debug("解析后SQL:\n"+wo.wp.sSQL); - wo.wp.sSQL = wo.wp.replaceParam4SQL(sql.toString(), nLoop, paraList); - wo.wp.sSQL = wo.wp.sSQL.replaceAll("SUBSELECT", "SELECT"); - - //2、对sql进行数据库本地化转换 - if(DataType.MSSQL.equals(wo.getDbtype())){ //MSSQL数据库 - //2.1、对表名前加上前缀 - Set keySetTable = WQLCore.tableMap.keySet(); - for(Iterator it = keySetTable.iterator();it.hasNext();){ - String tbname = (String) it.next(); - wo.wp.sSQL = wo.wp.sSQL.replaceAll(tbname, "dbo."+tbname); - if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", "dbo."+tbname.toUpperCase()); - }else{ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", "dbo."+tbname.toUpperCase()); - } - } - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.ORACLE.equals(wo.getDbtype())){ //ORACLE数据库 - - //2.1、对表名前加上前缀 - Set keySetTable = WQLCore.tableMap.keySet(); - for(Iterator it = keySetTable.iterator();it.hasNext();){ - String tbname = (String) it.next(); - if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); - }else{ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); - } - } - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.DB2.equals(wo.getDbtype())){ //DB2数据库 - //2.1、对表名前加上前缀 - Set keySetTable = WQLCore.tableMap.keySet(); - for(Iterator it = keySetTable.iterator();it.hasNext();){ - String tbname = (String) it.next(); - if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); - }else{ - wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); - } - } - - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.MYSQL.equals(wo.getDbtype())){ //MYSQL数据库 - //2.1、对表名前加上前缀 - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - } - - //2.3、执行sql - wo.wp.IRowsCount = 0; - wo.wp.st = wo.wp.conn.prepareStatement(wo.wp.sSQL); - for(int i=0;i)、大于(>)、小于(<),其中大于、小于只支持数字类型比较,否则始终为false - * 4、IF支持ELSE、ELSEIF的连需判断 - * 5、IF支持嵌套 - * 6、IF里不支持运算,如果有需要运算判断的情况请先使用赋值方法将运算结果赋值到临时变量,然后通过临时变量进行赋值 - * - * @author Administrator - * - */ -@Slf4j -public class wqlIF extends IWQL { -// private WO wo; -// private String cmdLine; -// private ArrayList list; - - - //当前IF的状态 - boolean isok = false; - //嵌套栈 - Stack stack = new Stack(); - - @Override - public boolean exec(int nLoop) { - // TODO Auto-generated method stub - isok = false; - stack = new Stack(); - - String cmdstr = cmdLine.substring(3,this.cmdLine.length()); - String[] arr = cmdstr.split(" "); - - //1、进行参数替换和判断 - String param1 = ""; - String param2 = ""; //比较符 - String param3 = ""; - for(int i=0;i".equals(str) - ||">".equals(str) - ||"<".equals(str) - ||">=".equals(str) - ||"<=".equals(str)){ - param2 = str; - }else{ - //如果比较符号为空,则说明当前遇到比较符的第一个 - if("".equals(param2)){ - param1 = (String) wo.wp.getIOParam(str, nLoop); - }else{ - //如果已经有比较符号了,则进行比较 - param3 = (String) wo.wp.getIOParam(str, nLoop); - //进行比较 - boolean istrue = WQLFun.APPCompare(param1, param2, param3); - stack.push(istrue); - - param1 = ""; - param2 = ""; - param3 = ""; - } - } - } - - //2、最后进行完整的判断 - this.isok = process(); - - log.debug("【IF运算】:IF "+cmdstr+",判断结果:"+this.isok); - - boolean isSuccess = false; - - //3、从第二行开始往下走,判断else、elseif和endif - String cmdarea = "IF"; - for(int i=0;i0){ - Object o = stack.pop(); - if(WqlUtil.isString(o)){ - String so = (String) o; - if("(".equals(so)){ - break; - }else{ - cmd = so; - } - }else{ - Boolean bo = (Boolean) o; - if("".equals(cmd)){ - istrue = bo.booleanValue(); - }else{ - if("AND".equals(cmd)){ - istrue = istrue&&bo.booleanValue(); - }else if("OR".equals(cmd)){ - istrue = istrue||bo.booleanValue(); - } - } - } - } - - return istrue; - } - - - - - -// @Override -// public void setWQL(WO wo,String cmdLine,ArrayList list) { -// // TODO Auto-generated method stub -// this.wo = wo; -// this.cmdLine = cmdLine; -// this.list = list; -// } - - -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlINSERT.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlINSERT.java deleted file mode 100644 index 38118fc..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlINSERT.java +++ /dev/null @@ -1,203 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.ErrorBean; -import org.nl.modules.wql.core.bean.ParameterBean; -import org.nl.modules.wql.core.engine.WQLFun; - -import java.io.StringReader; -import java.sql.SQLException; -import java.sql.Types; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Set; -import java.util.Stack; - -@Slf4j -public class wqlINSERT extends IWQL { -// private WO wo; -// private String cmdLine; -// private ArrayList wqllist; - @Override - public boolean exec(int nLoop) { - StringBuffer sql = new StringBuffer(); - Stack stack = new Stack(); - String cmd = ""; - - //1、对标准SQL进行解析 - for(Iterator it = this.list.iterator();it.hasNext();){ - String wql = (String) it.next(); - String[] arr = wql.split(" "); - String cmdStr = arr[0].toUpperCase(); - if("OPTION".equals(cmdStr)){ //如果是option,则判断 - stack.push(wql); - cmd = "OPTION"; - }else if("ENDOPTION".equals(cmdStr)){ - String sql_options = ""; - boolean ispass = false; - //出栈并进行计算 - while(stack.size()>0){ - String s = (String) stack.pop(); - if(s.startsWith("OPTION")){ - ispass = OPTION_Process(s, nLoop); - break; - }else{ - sql_options = s+" " + sql_options; - } - } - if(ispass){ - sql.append(" AND " + sql_options + " "); - } - cmd = ""; - }else if("ENDINSERT".equals(cmdStr)){ //如果是ENDINSERT,则开始执行 - - }else{ - if(!"".equals(cmd)){ //如果处在上一个指令域中,则当前命令入栈 - stack.push(wql); - continue; - }else{ - sql.append(wql+" "); - } - } - } - - //参数列表 - ArrayList paraList = new ArrayList(); - try { - //对参数进行统一的替换 - wo.wp.sSQL = sql.toString(); - //查找clob字段的值 - //ArrayList clob_values = wo.wp.findClobs(sql.toString(), nLoop); - - log.debug("解析前SQL:\n "+wo.wp.sSQL); - wo.wp.sSQL = wo.wp.replaceParam4SQL(sql.toString(), nLoop , paraList); - wo.wp.sSQL = wo.wp.sSQL.replaceAll("(?i)SUBSELECT", "SELECT"); - log.debug("替换后SQL:\n "+wo.wp.sSQL); - - //2、对sql进行数据库本地化转换 - if(DataType.MSSQL.equals(wo.getDbtype())){ //MSSQL数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// wo.wp.sSQL = wo.wp.sSQL.replaceAll(tbname, "dbo."+tbname); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", "dbo."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", "dbo."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,"dbo"); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.ORACLE.equals(wo.getDbtype())){ //ORACLE数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.DB2.equals(wo.getDbtype())){ //DB2数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.MYSQL.equals(wo.getDbtype())){ //MYSQL数据库 - //2.1、对表名前加上前缀 - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 -// wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - } - - //2.3、执行sql - wo.wp.IRowsCount = 0; - wo.wp.st = wo.wp.conn.prepareStatement(wo.wp.sSQL); - - //处理clob字段,主要是用于解决oracle的ORA-01704:文本字符串太长的错误 - for(int i=0;i 0) { - String s = (String) stack.pop(); - if (s.startsWith("OPTION")) { - ispass = OPTION_Process(s, nLoop); - break; - } else { - sql_options = s + " " + sql_options; - } - } - if (ispass) { - sql.append(" AND " + sql_options + " "); - } - cmd = ""; - } else if ("ORDERBY".equals(cmdStr)) { //如果是orderby - stack.push(wql); - cmd = "ORDERBY"; - } else if ("ENDORDERBY".equals(cmdStr)) { - String sql_orderby = ""; - boolean ispass = false; - while (stack.size() > 0) { - String s = (String) stack.pop(); - if (s.startsWith("ORDERBY")) { - ispass = OPTION_Process(s, nLoop); - break; - } else { - sql_orderby = s + sql_orderby; - } - } - if (ispass) { - sql_orderby = " order by " + sql_orderby; - sql.append(sql_orderby); - } - cmd = ""; - } else if ("ENDSELECT".equals(cmdStr)) { - - } else { - if (!"".equals(cmd)) { //如果处在上一个指令域中,则当前命令入栈 - stack.push(wql); - continue; - } else { - sql.append(wql + " "); - } - } - } - //参数列表 - ArrayList paraList = new ArrayList(); - try { - log.debug("解析前SQL:\n" + sql.toString()); - wo.wp.sSQL = wo.wp.replaceParam4SQL(sql.toString(), nLoop, paraList); - wo.wp.sSQL = wo.wp.sSQL.replaceAll("(?i)SUBSELECT", "SELECT"); - log.debug("解析后SQL:\n" + wo.wp.sSQL); - - - //2、对sql进行数据库本地化转换 - if (DataType.MSSQL.equalsIgnoreCase(wo.getDbtype())) { //MSSQL数据库 -// //2.1、对表名前加上前缀 -// WQLFun.addTableSchema(wo.wp.sSQL,"dbo"); -// //2.2、对分页进行处理 -// Set keySettTempTable = WQLCore.tempTableMap.keySet(); -// if(this.isInQuery&&this.isPageQuery){ -// if ((wo.wp.PAGE_PAGESTART!=-99 && wo.wp.PAGE_PAGERECORDNUM!=-99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { -// wo.wp.st = wo.wp.conn.prepareStatement( WQLFun.ScriptSwitch(WQLFun.addSession4MSSQL(wo.wp.sSQL + " ORDER BY " + wo.wp.SORT_ORDERBYFIELD, keySettTempTable) ,wo.getDbtype()), ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); -// for(int i=0;i 0)) { -// String sqlTmp = "select * from("+wo.wp.sSQL+") TOTALRECORDVIEW order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; -// String sqlTmp = wo.wp.sSQL+" order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; -// String sqlTmp = "select top "+wo.wp.PAGE_PAGERECORDNUM+"* FROM () WHERE ID NOT IN(SELECT TOP 45000 ID FROM ARTICLE ORDER BY YEAR DESC, ID DESC) ORDER BY YEAR DESC,ID DESC - - String sqlTmp = "select * from (select col_number() over( order by " + wo.wp.SORT_ORDERBYFIELD + ") rownumber,* from (" + wo.wp.sSQL + ") b ) a1 where rownumber between " + (wo.wp.PAGE_PAGESTART + 1) + " and " + (wo.wp.PAGE_PAGESTART + wo.wp.PAGE_PAGERECORDNUM); - - -// String sqlTmp = "select * from (select PAGE_SRCRESULTSET_1.*, col_number() over(order by " + wo.wp.SORT_ORDERBYFIELD + ")" -// + " as SORT_INDEXFIELDALIAS from ( " -// + wo.wp.sSQL -// + " ) PAGE_SRCRESULTSET_1 ) PAGE_SRCRESULTSET_2 " -// + "where PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS <= "+(wo.wp.PAGE_PAGESTART+wo.wp.PAGE_PAGERECORDNUM) -// + " and PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS > "+wo.wp.PAGE_PAGESTART; - - sqlTmp = WQLFun.ScriptSwitch(WQLFun.addSession4MSSQL(sqlTmp, keySettTempTable), wo.getDbtype()); - sqlTmp = WQLFun.ScriptSwitch(sqlTmp, wo.getDbtype()); - wo.wp.st = wo.wp.conn.prepareStatement(sqlTmp); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - } - - log.debug("SQL语句:\n " + sqlTmp); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - wo.wp.rb.addResultSet(wo.wp.rs); - log.debug(wo.wp.rb.toString()); - //主动关闭游标,防止游标未释放,超最大游标数 - try { - if (wo.wp.st != null) wo.wp.st.close(); - if (wo.wp.rs != null) wo.wp.rs.close(); - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - } - if (wo.wp.SORT_ORDERBYFIELD.length() > 0) { - //对sql进行特殊处理,找出和第一个select配对的from,并把中间全部换为1 - wo.wp.sSQL = "select count(1) PAGE_TOTALRECORDNUM from ( " + wo.wp.sSQL + ") TOTALRECORDVIEW"; - } - } - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()); - log.debug("SQL语句:\n " + wo.wp.sSQL); - } else if ("hahaha".equals(wo.getDbtype())) { //MSSQL数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// wo.wp.sSQL = wo.wp.sSQL.replaceAll(tbname, "dbo."+tbname); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", "dbo."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", "dbo."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL, "dbo"); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - if (this.isInQuery && this.isPageQuery) { - if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { - wo.wp.st = wo.wp.conn.prepareStatement(WQLFun.ScriptSwitch(WQLFun.addSession4MSSQL(wo.wp.sSQL + " ORDER BY " + wo.wp.SORT_ORDERBYFIELD, keySettTempTable), wo.getDbtype()), ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - } - log.debug("SQL语句:\n " + wo.wp.sSQL + " ORDER BY " + wo.wp.SORT_ORDERBYFIELD); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - wo.wp.rb.addSplitPageResultSet(wo.wp.rs, wo.wp.PAGE_PAGESTART, wo.wp.PAGE_PAGESTART + wo.wp.PAGE_PAGERECORDNUM); - //主动关闭游标,防止游标未释放,超最大游标数 - try { - if (wo.wp.st != null) wo.wp.st.close(); - if (wo.wp.rs != null) wo.wp.rs.close(); - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - wo.wp.sSQL = "select count(1) PAGE_TOTALRECORDNUM from ( " + wo.wp.sSQL + ") TOTALRECORDVIEW"; - } - } - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()); - log.debug("SQL语句:\n " + wo.wp.sSQL); - - } else if (DataType.ORACLE.equals(wo.getDbtype())) { //ORACLE数据库 - - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL, wo.getDbname()); - //2.2、对分页进行处理 - if (this.isInQuery && this.isPageQuery) { - if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { - String sqlTmp = "select * from (select PAGE_SRCRESULTSET_1.*, col_number() over(order by " + wo.wp.SORT_ORDERBYFIELD + ")" - + " as SORT_INDEXFIELDALIAS from ( " - + wo.wp.sSQL - + " ) PAGE_SRCRESULTSET_1 ) PAGE_SRCRESULTSET_2 " - + "where PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS <= " + (wo.wp.PAGE_PAGESTART + wo.wp.PAGE_PAGERECORDNUM) - + " and PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS > " + wo.wp.PAGE_PAGESTART; - - sqlTmp = WQLFun.ScriptSwitch(sqlTmp, wo.getDbtype()); - wo.wp.st = wo.wp.conn.prepareStatement(sqlTmp); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - } - - log.debug("SQL语句:\n " + sqlTmp); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - wo.wp.rb.addResultSet(wo.wp.rs); - log.debug(wo.wp.rb.toString()); - //主动关闭游标,防止游标未释放,超最大游标数 - try { - if (wo.wp.st != null) wo.wp.st.close(); - if (wo.wp.rs != null) wo.wp.rs.close(); - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - } - if (wo.wp.SORT_ORDERBYFIELD.length() > 0) { - wo.wp.sSQL = "select count(1) PAGE_TOTALRECORDNUM from ( " + wo.wp.sSQL + ") TOTALRECORDVIEW"; - } - } - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()); - log.debug("SQL语句:\n " + wo.wp.sSQL); - - } else if (DataType.DB2.equals(wo.getDbtype())) { //DB2数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL, wo.getDbname()); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - if (this.isInQuery && this.isPageQuery) { - if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { - String sqlTmp = "select * from (select PAGE_SRCRESULTSET_1.*, col_number() over(order by " + wo.wp.SORT_ORDERBYFIELD + ")" - + " as SORT_INDEXFIELDALIAS from ( " - + wo.wp.sSQL - + " ) PAGE_SRCRESULTSET_1 ) PAGE_SRCRESULTSET_2 " - + "where PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS <= " + (wo.wp.PAGE_PAGESTART + wo.wp.PAGE_PAGERECORDNUM) - + " and PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS > " + wo.wp.PAGE_PAGESTART; - - sqlTmp = WQLFun.ScriptSwitch(WQLFun.addSession4DB2(sqlTmp, keySettTempTable), wo.getDbtype()); - wo.wp.st = wo.wp.conn.prepareStatement(sqlTmp); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - } - - log.debug("SQL语句:\n " + sqlTmp); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - wo.wp.rb.addResultSet(wo.wp.rs); - log.debug(wo.wp.rb.toString()); - //主动关闭游标,防止游标未释放,超最大游标数 - try { - if (wo.wp.st != null) wo.wp.st.close(); - if (wo.wp.rs != null) wo.wp.rs.close(); - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - } - if (wo.wp.SORT_ORDERBYFIELD.length() > 0) { - wo.wp.sSQL = "select count(1) PAGE_TOTALRECORDNUM from ( " + wo.wp.sSQL + ") TOTALRECORDVIEW"; - } - } - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()); - log.debug("SQL语句:\n " + wo.wp.sSQL); - - } else if (DataType.MYSQL.equalsIgnoreCase(wo.getDbtype())) { //MYSQL数据库 - //2.1、对表名前加上前缀 - if (wo.isHint()) { - wo.wp.sSQL = wo.getHint() + wo.wp.sSQL; - } - - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - if (this.isInQuery && this.isPageQuery) { - if ((wo.wp.PAGE_PAGESTART != -99 && wo.wp.PAGE_PAGERECORDNUM != -99) && (wo.wp.SORT_ORDERBYFIELD.length() > 0)) { -// String sqlTmp = "select * from("+wo.wp.sSQL+") TOTALRECORDVIEW order by " + wo.wp.SORT_ORDERBYFIELD + " limit "+wo.wp.PAGE_PAGESTART+","+wo.wp.PAGE_PAGERECORDNUM; - String sqlTmp = wo.wp.sSQL + " order by " + wo.wp.SORT_ORDERBYFIELD + " limit " + wo.wp.PAGE_PAGESTART + "," + wo.wp.PAGE_PAGERECORDNUM; - -// String sqlTmp = "select * from (select PAGE_SRCRESULTSET_1.*, col_number() over(order by " + wo.wp.SORT_ORDERBYFIELD + ")" -// + " as SORT_INDEXFIELDALIAS from ( " -// + wo.wp.sSQL -// + " ) PAGE_SRCRESULTSET_1 ) PAGE_SRCRESULTSET_2 " -// + "where PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS <= "+(wo.wp.PAGE_PAGESTART+wo.wp.PAGE_PAGERECORDNUM) -// + " and PAGE_SRCRESULTSET_2.SORT_INDEXFIELDALIAS > "+wo.wp.PAGE_PAGESTART; - -// sqlTmp = WQLFun.ScriptSwitch(WQLFun.addSession4DB2(sqlTmp, keySettTempTable) ,wo.getDbtype()); - sqlTmp = WQLFun.ScriptSwitch(sqlTmp, wo.getDbtype()); - wo.wp.st = wo.wp.conn.prepareStatement(sqlTmp); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - } - - log.debug("SQL语句:\n " + sqlTmp); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - wo.wp.rb.addResultSet(wo.wp.rs); - log.debug(wo.wp.rb.toString()); - //主动关闭游标,防止游标未释放,超最大游标数 - try { - if (wo.wp.st != null) wo.wp.st.close(); - if (wo.wp.rs != null) wo.wp.rs.close(); - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - } - } - if (wo.wp.SORT_ORDERBYFIELD.length() > 0) { - //对sql进行特殊处理,找出和第一个select配对的from,并把中间全部换为1 -// String page_sql = change_1(wo.wp.sSQL); - String page_sql = wo.wp.sSQL; - wo.wp.sSQL = "select count(*) PAGE_TOTALRECORDNUM from ( " + page_sql + ") TOTALRECORDVIEW"; - } - } - //2.3、加session并执行 -// wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()); - log.debug("SQL语句:\n " + wo.wp.sSQL); - } - - //2.3、执行sql - long lstep1 = System.currentTimeMillis(); - wo.wp.st = wo.wp.conn.prepareStatement(wo.wp.sSQL); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - if (paraBean.getType().toUpperCase().startsWith("C_")) { - wo.wp.st.setCharacterStream(i + 1, new StringReader(paraBean.getValue()), paraBean.getValue().length()); - } else { - wo.wp.st.setString(i + 1, paraBean.getValue()); - } - log.debug("[" + i + "][" + paraBean.getValue() + "]"); - } - -// boolean isclosed = wo.wp.conn.isClosed(); -// System.out.println("isclosed="+isclosed); - wo.wp.st.execute(); - wo.wp.rs = wo.wp.st.getResultSet(); - //3、进行结果集处理 - long lstep2 = System.currentTimeMillis(); - //3.1、如果不是被query或pagequery包围的查询,则查询结果将保存到IO的过程变量中 - if (!this.isInQuery) { - wo.wp.setQueryParam(wo.wp.rs); - } else { - //3.2、如果select是被query或pagequery包围,则查询的结果将记录到结果变量中 - //首先清空原纪录 - wo.wp.rb.addResultSet(wo.wp.rs); - log.debug(wo.wp.rb.toString()); - } - long lstep3 = System.currentTimeMillis(); - log.debug("【" + wo.getCode() + "】,SQL执行时间: " + (lstep3 - lstep1) + "毫秒,其中,数据库查询耗时=" + (lstep2 - lstep1) + ",中间层数据处理耗时=" + (lstep3 - lstep2)); - - wo.wp._state = true; - } catch (Exception ex) { - ex.printStackTrace(); - log.error("数据库SELECT出错:\n " + WQLFun.ScriptSwitch(wo.wp.sSQL, wo.getDbtype()) + " \n" + ex.toString()); - for (int i = 0; i < paraList.size(); i++) { - ParameterBean paraBean = paraList.get(i); - log.error("[" + i + "][" + paraBean.getValue() + "]"); - } - wo.wp.InfoError = new ErrorBean(); - wo.wp.InfoError.setCode("E0018"); - wo.wp.InfoError.setDescription("数据库SELECT出错:\n " + wo.wp.sSQL + " \n" + ex.toString()); - wo.wp.ALInfoError.add(wo.wp.InfoError); - wo.wp._state = false; - } finally { - try { - if (wo.wp.st != null) wo.wp.st.close(); - wo.wp.st = null; - if (wo.wp.rs != null) wo.wp.rs.close(); - wo.wp.rs = null; -// wo.wp._state = true; - } catch (SQLException e) { - log.error("关闭st,rs出错" + e.toString()); - wo.wp._state = false; - } - } - - return wo.wp._state; - } - - public static String change_1(String sql) { - String instr = sql.toLowerCase(); - - String str_res = ""; - //预处理,处理union all和union - String reg = "union[^\\w]+all"; - Pattern pattern = Pattern.compile(reg); - Matcher matcher = pattern.matcher(instr); - if (matcher.find()) { -// String str = matcher.replaceAll("!!!!!!"); -// // System.out.println(str); -// String[] arr = str.split("!!!!!!"); -// // System.out.println("len="+arr.length); -// ArrayList list = new ArrayList(); -// for(int i=0;i it = list.iterator();it.hasNext();) { -// str_res += it.next(); -// str_res += " union all "; -// } -// if(str_res.length()>0) { -// str_res = str_res.substring(0, str_res.length()-11); -// } -// -// instr = str_res; - return instr; - } else { - - //继续处理单独的union - reg = "\\bunion\\b"; - pattern = Pattern.compile(reg); - matcher = pattern.matcher(instr); - if (matcher.find()) { -// String str = matcher.replaceAll("!!!!!!"); -// // System.out.println(str); -// String[] arr = str.split("!!!!!!"); -// // System.out.println("len="+arr.length); -// ArrayList list = new ArrayList(); -// for(int i=0;i it = list.iterator();it.hasNext();) { -// str_res += it.next(); -// str_res += " union "; -// } -// if(str_res.length()>0) { -// str_res = str_res.substring(0, str_res.length()-7); -// } -// instr = str_res; - return instr; - } - } - - return change_2(instr); - } - - public static String change_2(String sql) { - int nEnd = 0; - String instr = sql; - instr = instr.toLowerCase(); - instr = WqlUtil.ltrim(instr); - instr = WqlUtil.rtrim(instr); - instr = instr.replaceAll(" ", " ^"); - //System.out.println(instr); - String[] arr = instr.split(" ", -1); - int nQuit = 0; - for (int i = 0; i < arr.length; i++) { - String str = arr[i]; - - // System.out.println(str.length()+"="+str); - nEnd += str.length(); - if (1 == str.length()) { - if ("^".equals(str)) { - str = " "; - } - } else { - if (str.startsWith("^")) { - str = str.substring(1); - } else { - str = str.substring(0); - } - } - - if (str.startsWith("select") || str.startsWith("(select")) { - // System.out.println("zhaodao select"); - nQuit++; - } - if ("from".equals(str) || "from(".equals(str)) { - nQuit--; - if (0 == nQuit) { - //找到了,退出 - // System.out.println("quit====================="); - break; - } - } - } - instr = instr.replaceAll("[\\^]", ""); - - //System.out.println("nEnd="+nEnd+" 原始字符串总长度:"+sql.length()); - //System.out.println(sql); - //System.out.println(instr); - String res = " SELECT 1 FROM " + sql.substring(nEnd + 1) + " "; - - return res; - - } - - private String change222(String sql) { - String fromStr = ""; - int nEnd = 0; - String instr = sql; - instr = instr.toLowerCase(); - instr = WqlUtil.ltrim(instr); - instr = WqlUtil.rtrim(instr); - instr = instr.replaceAll(" ", " ^"); - //System.out.println(instr); - String[] arr = instr.split(" ", -1); - int nQuit = 0; - for (int i = 0; i < arr.length; i++) { - String str = arr[i]; - - //System.out.println(str.length()+"="+str); - nEnd += str.length(); - if (1 == str.length()) { - if ("^".equals(str)) { - str = " "; - } - } else { - if (str.startsWith("^")) { - str = str.substring(1); - } else { - str = str.substring(0); - } - } - - if (str.startsWith("select") || str.startsWith("(select")) { - //System.out.println("zhaodao select"); - nQuit++; - } - if ("from".equals(str)) { - nQuit--; - if (0 == nQuit) { - - fromStr = " FROM "; - //找到了,退出 - //System.out.println("quit====================="); - break; - } - } else if ("from(".equals(str)) { - nQuit--; - if (0 == nQuit) { - fromStr = " FROM ( "; - //找到了,退出 - //System.out.println("quit====================="); - break; - } - } - } - instr = instr.replaceAll("[\\^]", ""); - - //System.out.println("nEnd="+nEnd+" 原始字符串总长度:"+sql.length()); - //System.out.println(sql); - //System.out.println(instr); - String res = " SELECT 1 " + fromStr + sql.substring(nEnd + 1) + " "; - - return res; - - } - - -// @Override -// public void setWQL(WO wo, String cmdLine, ArrayList list) { -// // TODO Auto-generated method stub -// this.wo = wo; -// this.cmdLine = cmdLine; -// this.list = list; -// -// } - - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlUPDATE.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlUPDATE.java deleted file mode 100644 index 8a7860e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/core/engine/syntax/wqlUPDATE.java +++ /dev/null @@ -1,216 +0,0 @@ -package org.nl.modules.wql.core.engine.syntax; - -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.WQLCore; -import org.nl.modules.wql.core.DataType; -import org.nl.modules.wql.core.bean.ErrorBean; -import org.nl.modules.wql.core.bean.ParameterBean; -import org.nl.modules.wql.core.db.DBConnection; -import org.nl.modules.wql.core.engine.WQLFun; - -import java.io.StringReader; -import java.sql.SQLException; -import java.sql.Types; -import java.util.ArrayList; -import java.util.Iterator; -import java.util.Set; -import java.util.Stack; - -/** - * 关于UPDATE的说明: - * - * @author Administrator - * - */ -@Slf4j -public class wqlUPDATE extends IWQL { -// private WO wo; -// private String cmdLine; -// private ArrayList wqllist; - @Override - public boolean exec(int nLoop) { - StringBuffer sql = new StringBuffer(); - Stack stack = new Stack(); - String cmd = ""; - - //1、对标准SQL进行解析 - for(Iterator it = this.list.iterator();it.hasNext();){ - String wql = (String) it.next(); - String[] arr = wql.split(" "); - String cmdStr = arr[0].toUpperCase(); - if("OPTION".equals(cmdStr)){ //如果是option,则判断 - stack.push(wql); - cmd = "OPTION"; - }else if("ENDOPTION".equals(cmdStr)){ - String sql_options = ""; - boolean ispass = false; - //出栈并进行计算 - while(stack.size()>0){ - String s = (String) stack.pop(); - if(s.startsWith("OPTION")){ - ispass = OPTION_Process(s, nLoop); - break; - }else{ - sql_options = s+" " + sql_options; - } - } - if(ispass){ - sql.append(" AND " + sql_options + " "); - } - cmd = ""; - }else if("ENDUPDATE".equals(cmdStr)){ //如果是ENDINSERT,则开始执行 - - }else{ - if(!"".equals(cmd)){ //如果处在上一个指令域中,则当前命令入栈 - stack.push(wql); - continue; - }else{ - sql.append(wql+" "); - } - } - } - - //参数列表 - ArrayList paraList = new ArrayList(); - try { - //对参数进行统一的替换 - wo.wp.sSQL = sql.toString(); - //查找clob字段的值 - //ArrayList clob_values = wo.wp.findClobs(sql.toString(), nLoop); - - log.debug("解析前SQL:\n"+wo.wp.sSQL); - wo.wp.sSQL = wo.wp.replaceParam4SQL(sql.toString(), nLoop, paraList); - wo.wp.sSQL = wo.wp.sSQL.replaceAll("(?i)SUBSELECT", "SELECT"); - - //2、对sql进行数据库本地化转换 - if(DataType.MSSQL.equals(wo.getDbtype())){ //MSSQL数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// wo.wp.sSQL = wo.wp.sSQL.replaceAll(tbname, "dbo."+tbname); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", "dbo."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", "dbo."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,"dbo"); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4MSSQL(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.ORACLE.equals(wo.getDbtype())){ //ORACLE数据库 - - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.DB2.equals(wo.getDbtype())){ //DB2数据库 - //2.1、对表名前加上前缀 -// Set keySetTable = WQLCore.tableMap.keySet(); -// for(Iterator it = keySetTable.iterator();it.hasNext();){ -// String tbname = (String) it.next(); -// if(-1!=wo.wp.sSQL.indexOf("\\b"+tbname.toUpperCase()+"\\b")){ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toUpperCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// }else{ -// wo.wp.sSQL = wo.wp.sSQL.replaceAll("\\b"+tbname.toLowerCase()+"\\b", wo.getDbname()+"."+tbname.toUpperCase()); -// } -// } - WQLFun.addTableSchema(wo.wp.sSQL,wo.getDbname()); - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - }else if(DataType.MYSQL.equals(wo.getDbtype())){ //MYSQL数据库 - //2.1、对表名前加上前缀 - - //2.2、对分页进行处理 - Set keySettTempTable = WQLCore.tempTableMap.keySet(); - //2.3、加session并执行 - wo.wp.sSQL = WQLFun.addSession4DB2(wo.wp.sSQL, keySettTempTable); - wo.wp.sSQL = WQLFun.ScriptSwitch( wo.wp.sSQL,wo.getDbtype()); - log.debug("转化后SQL语句:\n " + wo.wp.sSQL); - - - } - - //2.3、执行sql - wo.wp.IRowsCount = 0; - wo.wp.st = wo.wp.conn.prepareStatement(wo.wp.sSQL); - - //处理clob字段,主要是用于解决oracle的ORA-01704:文本字符串太长的错误 - for(int i=0;i stack_compare((String) Operator - .peek())) { - Operator.push(s); - } else { - do { - post.add(Operator.pop()); - } while (!Operator.empty() - && fix_compare(s) < stack_compare((String) Operator - .peek())); - Operator.push(s); - } - } - } - } - } - while (!Operator.empty()) { - post.add(Operator.pop()); - } - } - - public void evaluating() { - double tmp = 0; - Stack buffer = new Stack(); - - for (int i = 0; i < post.size(); i++) { - try { - Double f1 = new Double((String) (post.get(i))); - buffer.push(post.get(i)); - } catch (NumberFormatException e) { - tmp = operating(NumberUtils.createDouble((String) buffer.pop()).doubleValue(), - NumberUtils.createDouble((String) buffer.pop()).doubleValue(), (String) post - .get(i)); - - buffer.push(Double.toString(tmp)); - } - } - - - result = Double.parseDouble((String) buffer.pop()); - - } - - public double operating(double tmp2, double tmp1, String op) { - double tmp = 0; - switch (stack_compare(op)) { - case 3: - tmp = (op.equals("+")) ? tmp1 + tmp2 : tmp1 - tmp2; - break; - case 5: - tmp = (op.equals("*")) ? tmp1 * tmp2 : tmp1 / tmp2; - break; - case 7: - tmp = (double) Math.pow(tmp1, tmp2); - break; - default: - errReport(); - } - return tmp; - } - - void errReport() { - log.error("算数表达式不合法!"); - } - - int stack_compare(String s2) { - int i = s2.equals("(") ? 1 : s2.equals("sqrt(") ? 1 - : s2.equals("sin(") ? 1 : s2.equals("cos(") ? 1 : s2 - .equals("pow(") ? 1 : s2.equals("+") ? 3 : s2 - .equals("-") ? 3 : s2.equals("*") ? 5 - : s2.equals("/") ? 5 : s2.equals("^") ? 7 : s2 - .equals(")") ? 11 : '0'; - return i; - } - - int fix_compare(String s2) { - int i = s2.equals("(") ? 9 : s2.equals("sqrt(") ? 9 - : s2.equals("sin(") ? 9 : s2.equals("cos(") ? 9 : s2 - .equals("pow(") ? 9 : s2.equals("+") ? 2 : s2 - .equals("-") ? 2 : s2.equals("*") ? 5 - : s2.equals("/") ? 5 : s2.equals("^") ? 8 : s2 - .equals(")") ? 1 : '0'; - return i; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/MethodFactory.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/MethodFactory.java deleted file mode 100644 index e0379b6..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/MethodFactory.java +++ /dev/null @@ -1,1386 +0,0 @@ -package org.nl.modules.wql.util; - - -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.beanutils.BeanUtils; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpSession; -import java.beans.PropertyDescriptor; -import java.lang.reflect.Method; -import java.util.Date; -import java.text.DateFormat; -import java.text.SimpleDateFormat; -import java.util.*; - -@Slf4j -public class MethodFactory { - - private final static String PROPERTITY_PREFIX = "form"; - - /** - * 取得当前日期 - * - * @return - */ - public static String getDate() { - return (getDate(0)); - } - - /** - * 取得与当前日期间隔一段的日期 - */ - - public static String getDate(int pos) { - Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.DATE, pos); - return (formatDate(calendar.getTime())); - } - - /** - * 格式化日期 - * - * @return - */ - public static String formatDate(Date date) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM/dd"); - try { - return formatter.format(date); - } catch (Exception e) { - //throw new Exception(e.getMessage()); - return null; - } - } - - public static String formatDate(String date) { - return date; - } - - /** - * Method 格式化要传到数据库的日期. - * - * @param date - * @return String - */ - public static String formatDBDate(String date) { - return formatDBDate(date, "yyyyy-MM-dd hh:mm:ss"); - } - - /** - * Method 格式化要传到数据库的日期. - * - * @param date - * @return String - */ - public static String formatDBDate(String date, String pattern) { - String parsePatterns[] = {"yyyy-MM-dd hh:mm:ss", "yyyy/MM/dd"}; - SimpleDateFormat formatter = new SimpleDateFormat(); - Date temp = null; - String ret = null; - if (!(date == null || date.trim().equals(""))) { - try { - for (int i = 0; i < parsePatterns.length; i++) { - temp = parseDate(date, parsePatterns[i]); - if (temp != null) { - break; - } - } - formatter.applyPattern(pattern); - ret = formatter.format(temp); - } catch (Exception e) { - } - } - return ret; - } - - /** - * Method 解析时间. - * - * @param date - * @param pattern - * @return Date - */ - private static Date parseDate(String date, String pattern) { - SimpleDateFormat formatter = new SimpleDateFormat(pattern); - Date ret = null; - try { - formatter.setLenient(true); - ret = formatter.parse(date); - } catch (Exception e) { - } - return ret; - } - - /** - * Method 取得当前月份. - * - * @return String - */ - public static String getMonth() { - return getMonth(0); - } - - /** - * Method 取得与当前月份间隔一段时间的月份. - * - * @param pos - * @return String - */ - public static String getMonth(int pos) { - Calendar calendar = Calendar.getInstance(); - return (getMonth(calendar.getTime(), pos)); - } - - /** - * Method 取得指定日期的月份. - * - * @param date - * @return String - */ - public static String getMonth(String date) { - return getMonth(date, 0); - } - - public static String getMonth(String date, int pos) { - DateFormat formatter = DateFormat.getDateTimeInstance(); - Date temp = null; - try { - formatter.setLenient(true); - temp = formatter.parse(date); - } catch (Exception e) { - } - return getMonth(temp, pos); - } - - /** - * Method 取得指定日期的月份. - * - * @param date - * @return String - */ - public static String getMonth(Date date) { - return getMonth(date, 0); - } - - /** - * Method 取得指定日期和间隔的月份. - * - * @param date - * @param pos - * @return String - */ - public static String getMonth(Date date, int pos) { - SimpleDateFormat formatter = new SimpleDateFormat("yyyyMM"); - Calendar calendar = Calendar.getInstance(); - calendar.setTime(date); - calendar.add(Calendar.MONTH, pos); - try { - return formatter.format(calendar.getTime()); - } catch (Exception e) { - //throw new Exception(e.getMessage()); - return null; - } - } - - /** - * Method 取得本月一日. - * - * @param - * @return String - */ - public static String getCurrentMonthFirst() { - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy/MM"); - String CurrentMonthFirst = formatter.format(calendar.getTime()) + "/01"; - return CurrentMonthFirst; - } - - /** - * Method 取得上月一日. - * - * @param - * @return String - */ - public static String getPreviousMonthFirst() { - String PreviousMonthFirst = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - int iMonth = Integer.parseInt(sMonth); - if (iMonth == 1) { - PreviousMonthFirst = Integer.toString(Integer.parseInt(sYear) - 1) - + "/12/01"; - } else { - if (iMonth < 11) { - PreviousMonthFirst = sYear + "/0" - + Integer.toString(iMonth - 1) + "/01"; - } else { - PreviousMonthFirst = sYear + "/" + Integer.toString(iMonth - 1) - + "/01"; - } - } - return PreviousMonthFirst; - } - - /** - * Method 取得上月当日. - * - * @param - * @return String - */ - public static String getPreviousMonthCurrent() { - String PreviousMonthCurrent = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("dd"); - String sDay = formatter.format(calendar.getTime()); - int iMonth = Integer.parseInt(sMonth); - if (iMonth == 1) { - PreviousMonthCurrent = Integer - .toString(Integer.parseInt(sYear) - 1) - + "/12/" + sDay; - } else { - if (iMonth < 11) { - PreviousMonthCurrent = sYear + "/0" - + Integer.toString(iMonth - 1) + "/" + sDay; - } else { - PreviousMonthCurrent = sYear + "/" - + Integer.toString(iMonth - 1) + "/" + sDay; - } - - } - return PreviousMonthCurrent; - } - - /** - * Method 取得上年当日. - * - * @param - * @return String - */ - public static String getPreviousYearCurrent() { - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String CurrentYear = formatter.format(calendar.getTime()); - String PreviousYearCurrent = Integer.toString(Integer - .parseInt(CurrentYear) - 1) - + "/"; - formatter = new SimpleDateFormat("MM/dd"); - PreviousYearCurrent = PreviousYearCurrent - + formatter.format(calendar.getTime()); - return PreviousYearCurrent; - } - - /** - * Method 取得上年本月一日. - * - * @param - * @return String - */ - public static String getPreviousYearCurrentMonthFirst() { - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String PreviousYear = formatter.format(calendar.getTime()); - PreviousYear = Integer.toString(Integer.parseInt(PreviousYear) - 1) - + "/"; - formatter = new SimpleDateFormat("MM"); - String CurrentMonth = formatter.format(calendar.getTime()); - String PreviousYearCurrentMonthFirst = PreviousYear + CurrentMonth - + "/01"; - return PreviousYearCurrentMonthFirst; - } - - /** - * Method 取得下年当日. - * - * @param - * @return String - */ - public static String getNextYearCurrent() { - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String CurrentYear = formatter.format(calendar.getTime()); - String NextYearCurrent = Integer - .toString(Integer.parseInt(CurrentYear) + 1) - + "/"; - formatter = new SimpleDateFormat("MM/dd"); - NextYearCurrent = NextYearCurrent - + formatter.format(calendar.getTime()); - return NextYearCurrent; - } - - /** - * Method 取对象的ToString值. - * - * @param obj obj - * @param - * @return String - */ - public static String getThisString(Object obj) { - String sobjString = ""; - if (obj != null) { - sobjString = obj.toString();//.trim(); - } - return sobjString; - } - - /** - * Method 取对象的ToString值. - * - * @param obj obj - * @param - * @return String - */ - public static String getThisString(int obj) { - String sobjString = ""; - sobjString = Integer.toString(obj); - sobjString.trim(); - return sobjString; - } - - /** - * 静态函数。扩展Math对象的方法,将浮点数格式化为定点数字符串 - * - * @param x x=浮点数 - * @return String 返回x的格式化定点字符串 - * @parma double digits=小数点后尾数的位数 - */ - public static String digitsToStr(double x, int digits) { - //分解整数和小数 - double xAbs = Math.abs(x); - double intpart = Math.floor(xAbs); - double decpart = xAbs - intpart; - - //转换正负符号和整数为字符串 - String fixedStr = ""; - if (x < 0) - fixedStr = fixedStr + "-"; - fixedStr = fixedStr + Math.round(intpart) + "."; - - //转换小数为字符串 - for (int i = 0; i < digits; i++) { - decpart = (decpart - Math.floor(decpart)) * 10 + 1.0e-10; - long num0 = (long) Math.floor(decpart); - fixedStr = fixedStr + num0; - } - return fixedStr; - } - - /** - * Method 取对象的ToString值. - * - * @param obj obj - * @param - * @return String - */ - public static String getThisString(char obj) { - Character c = new Character(obj); - return c.toString(); - } - - /** - * 把一个字符串分解成数组 - * - * @return - */ - public static ArrayList splitString(String str, String splitStr, - boolean needLast) { - - ArrayList list = new ArrayList(); - if (str != null) { - str = str.trim(); - - int oldIndex = 0; - int newIndex = 0; - do { - newIndex = str.indexOf(splitStr, oldIndex); - if (newIndex >= 0) { - list.add((String) str.substring(oldIndex, newIndex)); - } else { - if (needLast) { - list.add((String) str.substring(oldIndex)); - } - } - oldIndex = newIndex + 1; - } while (newIndex >= 0); - } - return list; - } - - public static ArrayList splitString(String str, String splitStr) { - return splitString(str, splitStr, false); - } - - /** - * 设置数据库的数值 - * - * @param str - * @return - */ - public static String dbSet(String str) { - if (str != null) { - if (str.trim().length() == 0) { - return null; - } else { - return str.trim(); - } - } else { - return null; - } - } - - /** - * 字符串替换 - * - * @param toReplace - */ - public static String replace(String toReplace, String find, String replace, - int time) throws Exception { - String temp = null; - int pos = 0; - int replaceTime = 0; - - try { - temp = new String(toReplace); - pos = temp.indexOf(find); - while (pos >= 0 && (time == 0 || time > replaceTime)) { - temp = temp.substring(0, pos) + replace - + temp.substring(pos + find.length()); - pos = pos + replace.length(); - pos = temp.indexOf(find, pos); - replaceTime = replaceTime + 1; - } - return temp; - } catch (Exception e) { - throw e; - } - } - - public static String replace(String toReplace, String find, String replace) - throws Exception { - return replace(toReplace, find, replace, 0); - } - - - /** - * Method copy一个Bean对象的属性到另一个对象的属性 - * - * @param dest - * @param orig - */ - public static void copyProperties(Object dest, Object orig, - boolean isDestForm) throws Exception { - Map props = null; - Set propsKey = null; - Iterator keyIterator = null; - String key = null; - Map newProps = new HashMap(); - - try { - props = BeanUtils.describe(orig); - propsKey = props.keySet(); - keyIterator = propsKey.iterator(); - - while (keyIterator.hasNext()) { - key = (String) keyIterator.next(); - if (isDestForm) { - - newProps.put(PROPERTITY_PREFIX + key, props.get(key)); - //BeanUtils.copyProperty(dest, PROPERTITY_PREFIX + key, props.get(key)); - } else { - if (key.startsWith(PROPERTITY_PREFIX)) { - key = key.substring(PROPERTITY_PREFIX.length()); - newProps.put(key, props.get(PROPERTITY_PREFIX + key)); - } else { - newProps.put(key, props.get(key)); - } - //BeanUtils.copyProperty(dest, key, props.get(key)); - } - } - BeanUtils.populate(dest, newProps); - } catch (Exception e) { - throw e; - } - } - - /** - * 从一个对象到只包含一个对象的ArrayList - * - * @param single - * @return - */ - public static ArrayList objectToArrayList(Object single) { - - ArrayList ret = new ArrayList(); - ret.add(single); - - return ret; - } - - /** - * 在Session中初始化一个Grid的Collection - * - * @param request - * @param key - * @param value - */ - public static void initSessionGrid(HttpServletRequest request, String key, - ArrayList value) { - - HttpSession session = request.getSession(); - - try { - if (session.getAttribute(key) != null) { - session.removeAttribute(key); - } - session.setAttribute(key, value); - } catch (Exception e) { - e.printStackTrace(); - } - - } - - /** - * 是否是新增的一条记录 - * - * @param identity - * @return - */ - public static boolean isAddNew(Integer identity) { - boolean ret = true; - - try { - if (identity != null && identity.intValue() > 0) { - ret = false; - } - } catch (Exception e) { - e.printStackTrace(); - } - return ret; - } - -// /** -// * 从一个Map的DATA中取出一个对象,用于ApplyUpdate2返回 -// * @param result -// * @return -// */ -// public static Object getApplyUpdate2(Map result) { -// Object ret = null; -// try { -// if (result != null) { -// ArrayList list = new ArrayList(); -// if (result.containsKey(Constants.RESULT_MAP_DATA)) { -// list = (ArrayList) result.get(Constants.RESULT_MAP_DATA); -// if (list.size() > 0) { -// ret = list.get(0); -// } -// } -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return ret; -// } -// -// /** -// * 从一个Map的Detail中取出一个对象,一般用于search查找 -// * @param result -// * @return -// */ -// public static Object getSingleObject(Map result) { -// Object ret = null; -// try { -// if (result != null) { -// ArrayList list = new ArrayList(); -// if (result.containsKey(Constants.RESULT_MAP_DETAIL)) { -// list = (ArrayList) result.get(Constants.RESULT_MAP_DETAIL); -// if (list.size() > 0) { -// ret = list.get(0); -// } -// -// } -// if (result.containsKey(Constants.RESULT_MAP_DATA)) { -// ret = result.get(Constants.RESULT_MAP_DATA); -// -// } -// -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return ret; -// } -// -// /** -// * 对数据传输对象的预处理 -// * @param dto -// */ -// public static void preProcessDTO(BaseDataTransferObject dto) { -// Class clazz = null; -// -// try { -// if (dto != null) { -// clazz = dto.getClass(); -// PropertyDescriptor[] props = java.beans.Introspector -// .getBeanInfo(clazz).getPropertyDescriptors(); -// for (int i = 0; i < props.length; i++) { -// PropertyDescriptor prop = props[i]; -// if (prop.getPropertyType().getName().indexOf("Integer") >= 0) { -// -// Method method = prop.getReadMethod(); -// if (method != null) { -// -// Integer number = (Integer) (method -// .invoke(dto, null)); -// if ((number != null) -// && (number.intValue() == Constants.NULL_INT)) { -// -// method = prop.getWriteMethod(); -// if (method != null) { -// method.invoke(dto, new Object[] { null }); -// } -// } -// } -// } -// -// if (prop.getPropertyType().getName().indexOf("Date") >= 0) { -// -// Method method = prop.getReadMethod(); -// if (method != null) { -// -// Date date = (Date) (method.invoke(dto, -// null)); -// -// if ((date != null) -// && (date.before(Date -// .valueOf("1900-01-02 00:00:00.0")))) { -// -// method = prop.getWriteMethod(); -// if (method != null) { -// method.invoke(dto, new Object[] { null }); -// } -// } -// } -// } -// -// if (prop.getPropertyType().getName().indexOf("String") >= 0) { -// -// Method method = prop.getReadMethod(); -// if (method != null) { -// -// String value = (String) (method.invoke(dto, null)); -// -// if ((value != null) && (value.equals("-999999999"))) { -// -// method = prop.getWriteMethod(); -// if (method != null) { -// method.invoke(dto, new Object[] { null }); -// } -// } -// } -// } -// -// /* if (prop.getPropertyType().getName().indexOf("id") >=0 ) { -// Method method = prop.getReadMethod(); -// if (method != null) { -// -// Integer number = (Integer)(method.invoke(dto, null)); -// if ((number != null) && (number.intValue() == 0)) { -// -// method = prop.getWriteMethod(); -// if (method != null) { -// method.invoke(dto, new Object[] {null}); -// } -// } -// } -// }*/ -// -// } -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// } -// -// /** -// * 添加已删除的记录到后台 -// * @param deleteIDs -// * @param clazz -// * @param keyName -// * @return -// */ -// public static ArrayList addDeleteDetail(String deleteIDs, Class clazz, -// String keyName) { -// ArrayList list = new ArrayList(); -// try { -// if (deleteIDs != null && deleteIDs.trim().length() > 0) { -// ArrayList listIDs = splitString(deleteIDs, ";", true); -// for (int i = 0; i < listIDs.size(); i++) { -// String deleteID = (String) listIDs.get(i); -// if (deleteID.trim().length() > 0) { -// Object detail = clazz.newInstance(); -// BeanUtils.setProperty(detail, "ustcStatus", -// RowStatus.STATUS_DELETE); -// BeanUtils.setProperty(detail, keyName, deleteID); -// list.add(detail); -// } -// } -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return list; -// } -// -// /** -// * 对数据对象集合预处理 -// * @param dtoList -// * @param clazz -// * @param keyName -// * @param deleteIDs -// * @return -// */ -// public static ArrayList preProcessDTODetail(ArrayList dtoList, Class clazz, -// String keyName, String deleteIDs) { -// ArrayList list = new ArrayList(); -// -// try { -// if (dtoList != null && clazz != null) { -// for (int i = 0; i < dtoList.size(); i++) { -// Object detail = dtoList.get(i); -// if (detail != null) { -// boolean hasKey = (BeanUtils -// .getProperty(detail, keyName) != null) -// && (Integer.parseInt(BeanUtils.getProperty( -// detail, keyName)) > 0); -// if (hasKey) { -// BeanUtils.setProperty(detail, "ustcStatus", -// RowStatus.STATUS_MODIFY); -// } else { -// BeanUtils.setProperty(detail, "ustcStatus", -// RowStatus.STATUS_ADD); -// } -// list.add(detail); -// } -// } -// } -// list.addAll(addDeleteDetail(deleteIDs, clazz, keyName)); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return list; -// } -// -// /** -// * 添加已删除的记录到后台(组合主键) -// * @param deleteIDs -// * @param clazz -// * @param keyNames -// * @return -// */ -// public static ArrayList addDeleteDetail(String deleteIDs, Class clazz, -// String[] keyNames) { -// ArrayList list = new ArrayList(); -// try { -// if (deleteIDs != null && deleteIDs.trim().length() > 0) { -// ArrayList listIDs = splitString(deleteIDs, ";", true); -// for (int i = 0; i < listIDs.size(); i++) { -// String deleteID = (String) listIDs.get(i); -// ArrayList multiKeyValue = splitString(deleteID, ",", true); -// -// if (((String) multiKeyValue.get(0)).trim().length() > 0) { -// Object detail = clazz.newInstance(); -// BeanUtils.setProperty(detail, "ustcStatus", -// RowStatus.STATUS_DELETE); -// for (int j = 0; j < keyNames.length; j++) { -// BeanUtils.setProperty(detail, keyNames[j], -// multiKeyValue.get(j)); -// } -// list.add(detail); -// } -// -// } -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return list; -// } -// -// /** -// * 对数据对象集合预处理(组合主键) -// * @param dtoList -// * @param clazz -// * @param keyNames -// * @param deleteIDs -// * @return -// */ -// public static ArrayList preProcessDTODetail(ArrayList dtoList, Class clazz, -// String[] keyNames, String deleteIDs) { -// ArrayList list = new ArrayList(); -// -// try { -// if (dtoList != null && clazz != null) { -// for (int i = 0; i < dtoList.size(); i++) { -// Object detail = dtoList.get(i); -// if (detail != null) { -// BeanUtils.setProperty(detail, "ustcStatus", -// RowStatus.STATUS_ADD); -// list.add(detail); -// } -// } -// } -// list.addAll(addDeleteDetail(deleteIDs, clazz, keyNames)); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// return list; -// } -// -// /** -// * 根据request,产生对应的查询条件 -// * @param condition -// * @param request -// */ -// public static void initQueryCondition(Condition condition, -// HttpServletRequest request) throws IllegalArgumentException { -// -// if (condition == null) { -// throw new IllegalArgumentException("查询条件对象不能为空!"); -// } -// -// int currentPage = getCurrentPage(request); -// -// log.debug("Current PageNO:" + currentPage); -// condition.setStart((currentPage - 1) * PageControl.PAGESIZE + 1); -// condition.setEnd((currentPage) * PageControl.PAGESIZE); -// -// } -// -// /** -// * 根据查询结果,产生一个PageControl -// * @param queryResult -// * @param request -// * @return -// */ -// public static PageControl initQueryResult(Map queryResult, -// HttpServletRequest request) { -// PageControl page = null; -// -// try { -// ArrayList list = (ArrayList) queryResult -// .get(Constants.RESULT_MAP_DETAIL); -// int maxRowCount = ((Integer) queryResult -// .get(Constants.RESULT_MAP_MAXROWCOUNT)).intValue(); -// -// int currentPage = getCurrentPage(request); -// -// page = new PageControl(maxRowCount, list, currentPage, -// PageControl.PAGESIZE); -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// return page; -// } -// -// /** -// * 从Request中取得当前页 -// * @param request -// * @return -// */ -// private static int getCurrentPage(HttpServletRequest request) { -// -// String pageNO = request.getParameter(Constants.CURRENTPAGE); -// String totalPageCount = request.getParameter(Constants.TOTALPAGECOUNT); -// //log.info("totalPageCount" + totalPageCount); -// -// int currentPage = 1; -// -// String isNewQuery = request.getParameter(Constants.ISNEWQUERY); -// if (isNewQuery == null) { -// if (pageNO != null) { -// currentPage = Integer.parseInt(pageNO); -// } -// if ((totalPageCount != null) -// && (Integer.parseInt(pageNO) > Integer -// .parseInt(totalPageCount))) { -// currentPage = Integer.parseInt(totalPageCount); -// } -// } -// -// return currentPage; -// } -// -// /** -// * 清空session中的Grid对象 -// * @param request -// */ -// public static void clearSessionGrid(HttpServletRequest request) { -// -// HttpSession session = request.getSession(); -// -// try { -// if (session.getAttribute(Constants.SESSION_GRID_FIRST) != null) { -// session.removeAttribute(Constants.SESSION_GRID_FIRST); -// } -// if (session.getAttribute(Constants.SESSION_GRID_SECOND) != null) { -// session.removeAttribute(Constants.SESSION_GRID_SECOND); -// } -// if (session.getAttribute(Constants.SESSION_GRID_THIRD) != null) { -// session.removeAttribute(Constants.SESSION_GRID_THIRD); -// } -// } catch (Exception e) { -// e.printStackTrace(); -// } -// -// } - - /** - * 根据一个类产生一组变量 - * - * @param clazz - */ - public static void generateVariable(String clazz) { - Class inClass = null; - - try { - inClass = Class.forName(clazz); - PropertyDescriptor[] props = java.beans.Introspector.getBeanInfo( - inClass).getPropertyDescriptors(); - for (int i = 0; i < props.length; i++) { - StringBuffer prop = new StringBuffer(); - String propValue = ""; - prop.append("private "); - if (props[i].getPropertyType().getName().indexOf("String") >= 0) { - prop.append("String"); - propValue = "\"\""; - } else if (props[i].getPropertyType().getName().indexOf( - "Integer") >= 0) { - prop.append("int"); - propValue = "Constants.NULL_INT"; - } else if (props[i].getPropertyType().getName().indexOf( - "Double") >= 0) { - prop.append("double"); - propValue = "0.0"; - } else if (props[i].getPropertyType().getName().indexOf( - "Date") >= 0) { - prop.append("String"); - propValue = "\"\""; - } else { - continue; - } - prop.append(" form" + props[i].getName()); - prop.append(" = " + propValue + ";"); - System.out.println(prop); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - /** - * 根据一个类产生一组Digester所用的BeanPropertySet - * - * @param clazz - */ - public static void generateBeanPropertySet(String clazz) { - Class inClass = null; - - try { - inClass = Class.forName(clazz); - PropertyDescriptor[] props = java.beans.Introspector.getBeanInfo( - inClass).getPropertyDescriptors(); - for (int i = 0; i < props.length; i++) { - StringBuffer prop = new StringBuffer(); - //digester.addBeanPropertySetter( "details/detail/contractsn", "contractsn" ); - prop.append("digester.addBeanPropertySetter(\"details/detail/"); - prop.append(props[i].getName()); - prop.append("\", \"" + props[i].getName() + "\");"); - System.out.println(prop); - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - /** - * 根据一个类产生一组Form所用的校验时间字段的代码 - * - * @param clazz - */ - public static void generateFormValidate(String clazz) { - Class inClass = null; - - try { - inClass = Class.forName(clazz); - PropertyDescriptor[] props = java.beans.Introspector.getBeanInfo( - inClass).getPropertyDescriptors(); - for (int i = 0; i < props.length; i++) { - if (props[i].getPropertyType().getName().indexOf("Date") >= 0) { - StringBuffer prop = new StringBuffer(); - //formreceivedate = MethodFactory.formatDBDate(formreceivedate); - prop.append("form" + props[i].getName()); - prop.append(" = MethodFactory.formatDBDate(form" - + props[i].getName() + ");"); - System.out.println(prop); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - public static void generateNewMethod(String clazz) { - Class inClass = null; - - try { - inClass = Class.forName(clazz); - Method[] methods = inClass.getMethods(); - - for (int i = 0; i < methods.length; i++) { - if (methods[i].getName().indexOf("get") >= 0) { - StringBuffer method = new StringBuffer(); - - method.append("public static ArrayList " - + methods[i].getName() + "("); - Class[] params = methods[i].getParameterTypes(); - for (int j = 0; j < params.length; j++) { - method.append(params[j].getName() + " param" + j + ","); - } - if (params.length > 0) { - method.deleteCharAt(method.length() - 1); - } - method.append(") {\n\t"); - - method.append("\treturn " + methods[i].getName() + "("); - for (int j = 0; j < params.length; j++) { - method.append("param" + j + ","); - } - method.append("false);\n"); - - method.append("}"); - System.out.println(method); - } - } - } catch (Exception e) { - e.printStackTrace(); - } - } - - public static String getCurrentMonthFirstByYesterday() {//根据当前日期取得月份的第一天 - String CurrentMonthFirst = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("dd"); - String sDay = formatter.format(calendar.getTime()); - - int iMonth = Integer.parseInt(sMonth); - int iDay = Integer.parseInt(sDay); - if (iDay == 1) { - if (iMonth == 1) { - CurrentMonthFirst = Integer - .toString(Integer.parseInt(sYear) - 1) - + "/" + "12/01"; - } else if (iMonth < 11) { - CurrentMonthFirst = sYear + "/0" + Integer.toString(iMonth - 1) - + "/01"; - } else { - CurrentMonthFirst = sYear + "/" + Integer.toString(iMonth - 1) - + "/01"; - } - } else { - CurrentMonthFirst = sYear + "/" + sMonth + "/" + "01"; - } - - return CurrentMonthFirst; - } - - public static String getPreviousMonthYesterday() {//取得上月的昨天 - String PreviousMonthYesterday = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("dd"); - String sDay = formatter.format(calendar.getTime()); - - int iMonth = Integer.parseInt(sMonth); - int iDay = Integer.parseInt(sDay); - - if (iDay == 1) { - if (iMonth == 2) { - PreviousMonthYesterday = Integer.toString(Integer - .parseInt(sYear) - 1) - + "/12/31"; - } else if (iMonth == 1) { - PreviousMonthYesterday = Integer.toString(Integer - .parseInt(sYear) - 1) - + "/11/30"; - } else if (iMonth < 12) { - PreviousMonthYesterday = sYear + "/0" - + Integer.toString(iMonth - 2) + "/" - + getMonthLastDay(iMonth - 2); - } else { - PreviousMonthYesterday = sYear + "/" - + Integer.toString(iMonth - 2) + "/" - + getMonthLastDay(iMonth - 2); - } - } else { - if (iMonth == 1) { - PreviousMonthYesterday = Integer.toString(Integer - .parseInt(sYear) - 1) - + "/12/" + Integer.toString(iDay - 1); - } else if (iMonth < 11) { - PreviousMonthYesterday = sYear + "/0" - + Integer.toString(iMonth - 1) + "/" - + Integer.toString(iDay - 1); - } else { - PreviousMonthYesterday = sYear + "/" - + Integer.toString(iMonth - 1) + "/" - + Integer.toString(iDay - 1); - } - } - - return PreviousMonthYesterday; - } - - public static String getPreviousMonthFirstByYesterday() {//根据当前日期取得上月的第一天 - String PreviousMonthFirst = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("dd"); - String sDay = formatter.format(calendar.getTime()); - - int iMonth = Integer.parseInt(sMonth); - int iDay = Integer.parseInt(sDay); - if (iDay == 1) { - if (iMonth == 2) { - PreviousMonthFirst = Integer - .toString(Integer.parseInt(sYear) - 1) - + "/12/01"; - } else if (iMonth == 1) { - PreviousMonthFirst = Integer - .toString(Integer.parseInt(sYear) - 1) - + "/11/01"; - } else if (iMonth < 12) { - PreviousMonthFirst = sYear + "/0" - + Integer.toString(iMonth - 2) + "/01"; - } else { - PreviousMonthFirst = sYear + "/" + Integer.toString(iMonth - 2) - + "/01"; - } - } else { - if (iMonth == 1) { - PreviousMonthFirst = Integer - .toString(Integer.parseInt(sYear) - 1) - + "/12/01"; - } else if (iMonth < 11) { - PreviousMonthFirst = sYear + "/0" - + Integer.toString(iMonth - 1) + "/01"; - } else { - PreviousMonthFirst = sYear + "/" + Integer.toString(iMonth - 1) - + "/01"; - } - } - - return PreviousMonthFirst; - } - - public static String getPreviousYearCurrentMonthLastDay() {//获得去年本月最后一天 - String PreviousYearCurrentMonthLastDay = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - int iMonth = Integer.parseInt(sMonth); - PreviousYearCurrentMonthLastDay = Integer.toString(Integer - .parseInt(sYear) - 1) - + "/" + sMonth + "/" + getMonthLastDay(iMonth); - - return PreviousYearCurrentMonthLastDay; - } - - public static String getCurrentYearCurrentMonthLastDay() {//获得本年本月最后一天 - String CurrentYearCurrentMonthLastDay = ""; - Calendar calendar = Calendar.getInstance(); - SimpleDateFormat formatter = new SimpleDateFormat("yyyy"); - String sYear = formatter.format(calendar.getTime()); - formatter = new SimpleDateFormat("MM"); - String sMonth = formatter.format(calendar.getTime()); - int iMonth = Integer.parseInt(sMonth); - CurrentYearCurrentMonthLastDay = sYear + "/" + sMonth + "/" - + getMonthLastDay(iMonth); - return CurrentYearCurrentMonthLastDay; - } - - public static String getMonthLastDay(int bMonth) {//枚举每月最后一天 - String MonthLastDay = ""; - if (bMonth == 1 || bMonth == 3 || bMonth == 5 || bMonth == 7 - || bMonth == 8 || bMonth == 10 || bMonth == 12) { - MonthLastDay = "31"; - } else if (bMonth == 2) { - MonthLastDay = "28"; - } else { - MonthLastDay = "30"; - } - - return MonthLastDay; - } - - public static String[] split(String source, String splitstr) { - ArrayList temp = new ArrayList(); - int pos = 0; - int len = 0; - String source1 = source; - pos = source1.indexOf(splitstr); - - while (pos >= 0) { - len++; - if (pos > 0) - temp.add(source1.substring(0, pos)); - else - temp.add(""); - - source1 = source1.substring(pos + splitstr.length()); - pos = source1.indexOf(splitstr); - } - temp.add(source1); - - String[] retVal = new String[temp.size()]; - for (int i = 0; i < temp.size(); i++) { - retVal[i] = (String) temp.get(i); - retVal[i] = retVal[i].trim(); - } - return retVal; - } - - public static String[] split(String source, String splitstr, boolean needblank) { - ArrayList temp = new ArrayList(); - int pos = 0; - int len = 0; - String source1 = source; - pos = source1.indexOf(splitstr); - - while (pos >= 0) { - len++; - if (pos > 0) - temp.add(source1.substring(0, pos)); - else - temp.add(""); - - source1 = source1.substring(pos + splitstr.length()); - pos = source1.indexOf(splitstr); - } - temp.add(source1); - - String[] retVal = new String[temp.size()]; - for (int i = 0; i < temp.size(); i++) { - retVal[i] = (String) temp.get(i); - if (needblank) { - retVal[i] = retVal[i].trim(); - } - } - return retVal; - } - - /** - * 用getBytes(encoding):返回字符串的一个byte数组 - * 当b[0]为 63时,应该是转码错误 - * A、不乱码的汉字字符串: - * 1、encoding用GB2312时,每byte是负数; - * 2、encoding用ISO8859_1时,b[i]全是63。 - * B、乱码的汉字字符串: - * 1、encoding用ISO8859_1时,每byte也是负数; - * 2、encoding用GB2312时,b[i]大部分是63。 - * C、英文字符串 - * 1、encoding用ISO8859_1和GB2312时,每byte都大于0; - *

- * 总结:给定一个字符串,用getBytes("iso8859_1") - * 1、如果b[i]有63,不用转码; A-2 - * 2、如果b[i]全大于0,那么为英文字符串,不用转码; B-1 - * 3、如果b[i]有小于0的,那么已经乱码,要转码。 C-1 - */ - public static String toGb2312(String str) { - if (str == null) - return null; - String retStr = str; - byte b[]; - try { - b = str.getBytes("ISO8859_1"); - - for (int i = 0; i < b.length; i++) { - byte b1 = b[i]; - if (b1 == 63) - break; //1 - else if (b1 > 0) - continue;//2 - else if (b1 < 0) { //不可能为0,0为字符串结束符 - retStr = new String(b, "GB2312"); - break; - } - } - } catch (Exception e) { - //catch (UnsupportedEncodingException e) { - e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates. - } - return retStr; - } - - /** - * 测试用 - * - * @param args - */ - public static void main(String[] args) { - - try { - //System.out.println(getCurrentMonthFirst()); - //System.out.println(getPreviousYearCurrent()); - //System.out.println(getPreviousMonthCurrent()); - //System.out.println(getPreviousMonthFirst()); - System.out.println(getPreviousYearCurrentMonthFirst()); - //System.out.println(getobjString1(new Integer(1))); - //System.out.println(splitString("@test2@test3asdf@","@",true)); - //System.out.println(replace("1purchasesale_2purchasesale_3purchasesale_4purchasesale_","purchasesale_","")); - //System.out.println(getMonth("2003-01-01 00:00:00.0")); - //System.out.println(formatDBDate("2003-01-01 00:00:00.0")); - //System.out.println(checkXMLElement("h>ello<")); - - // DepotForm aForm = new DepotForm(); - // stcmDepot depot = new stcmDepot(); - // depot.setDepartid(new Integer(Constants.NULL_INT)); - // depot.setAddress("test"); - // depot.setDepotid(new Integer(89097)); - // depot.setustcStatus(new Integer(8)); - // depot.setostcInputerid(new Integer(Constants.NULL_INT)); - // aForm.setForminputdate(formatDBDate(null)); - //System.out.println(formatDBDate(null)); - // copyProperties(depot, aForm, false); - //generateVariable("com.crea.curmedi.biz.struct.stcbBizkeep"); - //generateBeanPropertySet("com.crea.curmedi.manager.struct.stcmSaledeputy"); - //generateFormValidate("com.crea.curmedi.manager.struct.stcmSaledeputy"); - //generateNewMethod("com.crea.curmedi.web.pub.BaseCURMEDIFactory"); - //System.out.println(formatDBDate("")); - //System.out.println(isAddNew(new Integer(-1))); - // preProcessDTO(depot); - // System.out.println(depot); - } catch (Exception e) { - e.printStackTrace(); - } - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLCalculator.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLCalculator.java deleted file mode 100644 index a123025..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLCalculator.java +++ /dev/null @@ -1,134 +0,0 @@ -package org.nl.modules.wql.util; - -import java.util.ArrayList; -import java.util.LinkedList; - -public class WQLCalculator { - public static void main(String[] args) { - String str = "10*(22+232)/3"; - String dl = WQLCalculator.exec(str); - System.out.println(dl); - } - - private static boolean isRightFormat = true; - synchronized public static String exec(String formula) { - isRightFormat = true; - double returnValue = 0; - String ret = ""; - - try { - returnValue = doAnalysis(formula); - int a = (int)returnValue; - if(returnValue==a){ - ret = Integer.toString(a); - }else{ - ret = Double.toString(returnValue); - } - - } catch (NumberFormatException nfe) { - System.out.println("公式格式有误,请检查:" + formula); - } catch (Exception e) { - e.printStackTrace(); - } - if (!isRightFormat) { - System.out.println("公式格式有误,请检查:" + formula); - } - return ret; - } - - private static double doAnalysis(String formula) { - double returnValue = 0; - LinkedList stack = new LinkedList(); - - int curPos = 0; - String beforePart = ""; - String afterPart = ""; - String calculator = ""; - isRightFormat = true; - while (isRightFormat - && (formula.indexOf('(') >= 0 || formula.indexOf(')') >= 0)) { - curPos = 0; - for (char s : formula.toCharArray()) { - if (s == '(') { - stack.add(curPos); - } else if (s == ')') { - if (stack.size() > 0) { - beforePart = formula.substring(0, stack.getLast()); - afterPart = formula.substring(curPos + 1); - calculator = formula.substring(stack.getLast() + 1, - curPos); - formula = beforePart + doCalculation(calculator) - + afterPart; - stack.clear(); - break; - } else { - System.out.println("有未关闭的右括号!"); - isRightFormat = false; - } - } - curPos++; - } - if (stack.size() > 0) { - System.out.println("有未关闭的左括号!"); - break; - } - } - if (isRightFormat) { - returnValue = doCalculation(formula); - } - return returnValue; - } - - private static double doCalculation(String formula) { - ArrayList values = new ArrayList(); - ArrayList operators = new ArrayList(); - int curPos = 0; - int prePos = 0; - for (char s : formula.toCharArray()) { - if (s == '+' || s == '-' || s == '*' || s == '/') { - values.add(Double.parseDouble(formula.substring(prePos, curPos) - .trim())); - operators.add("" + s); - prePos = curPos + 1; - } - curPos++; - } - values.add(Double.parseDouble(formula.substring(prePos).trim())); - char op; - for (curPos = operators.size() - 1; curPos >= 0; curPos--) { - op = operators.get(curPos).charAt(0); - switch (op) { - case '*': - values.add(curPos, values.get(curPos) * values.get(curPos + 1)); - values.remove(curPos + 1); - values.remove(curPos + 1); - operators.remove(curPos); - break; - case '/': - values.add(curPos, values.get(curPos) / values.get(curPos + 1)); - values.remove(curPos + 1); - values.remove(curPos + 1); - operators.remove(curPos); - break; - } - } - for (curPos = operators.size() - 1; curPos >= 0; curPos--) { - op = operators.get(curPos).charAt(0); - switch (op) { - case '+': - values.add(curPos, values.get(curPos) + values.get(curPos + 1)); - values.remove(curPos + 1); - values.remove(curPos + 1); - operators.remove(curPos); - break; - case '-': - values.add(curPos, values.get(curPos) - values.get(curPos + 1)); - values.remove(curPos + 1); - values.remove(curPos + 1); - operators.remove(curPos); - break; - } - } - return values.get(0).doubleValue(); - } -} \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterGroup.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterGroup.java deleted file mode 100644 index bf6c26b..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterGroup.java +++ /dev/null @@ -1,219 +0,0 @@ -package org.nl.modules.wql.util; - -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; - -import java.util.ArrayList; -import java.util.List; - -public class WQLFilterGroup { - - private List groups; - private String op; - private List roles; - - public List getGroups() { - return groups; - } - public void setGroups(List groups) { - this.groups = groups; - } - public String getOp() { - return op; - } - public void setOp(String op) { - this.op = op; - } - public List getRoles() { - return roles; - } - public void setRoles(List roles) { - this.roles = roles; - } - - public WQLFilterGroup(){ - this.groups = new ArrayList(); - this.roles = new ArrayList(); - - } - - public static WQLFilterGroup fromObject(JSONObject obj){ - WQLFilterGroup filterGroup = new WQLFilterGroup(); - - if(obj.containsKey("op")){ - filterGroup.setOp(obj.getString("op")); - } - - if(obj.containsKey("rules")){ - JSONArray jrules = obj.getJSONArray("rules"); - List roles = new ArrayList(); - for(int i=0;i groups = new ArrayList(); - for(int i=0;i0){ - sb.append(" ").append(op==null?"and":op).append(" "); - } - - sb.append(rulesql); - } - } - } - - if(groups!=null){ - for(int i=0;i0){ - sb.append(" ").append(op==null?"and":op).append(" "); - } - - sb.append("("); - sb.append(groupsql); - sb.append(")"); - } - } - } - - return sb.toString(); - } - - - public String Translate(List whereArgsList){ - StringBuffer sb = new StringBuffer(); - - if(roles!=null){ - for(int i=0;i0){ - sb.append(" ").append(op==null?"and":op).append(" "); - } - - sb.append(rulesql); - } - } - } - - if(groups!=null){ - for(int i=0;i0){ - sb.append(" ").append(op==null?"and":op).append(" "); - } - - sb.append("("); - sb.append(groupsql); - sb.append(")"); - } - } - } - - return sb.toString(); - } - - public JSONObject toJSON(){ - JSONObject jObj = new JSONObject(); - JSONArray ruleRows = new JSONArray(); - JSONArray groupRows = new JSONArray(); - - if(roles!=null){ - - for(int i=0;i0) - jObj.put("rules", ruleRows); - if(groupRows.size()>0) - jObj.put("groups", groupRows); - if(ruleRows.size()>0 || groupRows.size()>0) - jObj.put("op", op); - - return jObj; - } - - private boolean isBlank(String str) { - int length; - - if ((str == null) || ((length = str.length()) == 0)) { - return true; - } - - for (int i = 0; i < length; i++) { - if (!Character.isWhitespace(str.charAt(i))) { - return false; - } - } - - return true; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterRule.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterRule.java deleted file mode 100644 index 178f0dd..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WQLFilterRule.java +++ /dev/null @@ -1,159 +0,0 @@ -package org.nl.modules.wql.util; - -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSONObject; - -import java.util.List; - - -public class WQLFilterRule { - private String field; - private String op; - private String type = "0"; //数据类型 0-string 1-num - private String value; - - public String getField() { - return field; - } - - public void setField(String field) { - this.field = field; - } - - public String getOp() { - return op; - } - - public void setOp(String op) { - this.op = op; - } - - public String getType() { - return type; - } - - public void setType(String type) { - this.type = type; - } - - public String getValue() { - return value; - } - - public void setValue(String value) { - this.value = value; - } - - - public static WQLFilterRule fromObject(JSONObject obj) { - String field = ""; - String op = ""; - String value = ""; - if (ObjectUtil.isNotEmpty(obj)) { - if (obj.containsKey("field")) field = obj.getString("field"); - if (obj.containsKey("op")) op = obj.getString("op"); - if (obj.containsKey("value")) value = obj.getString("value"); - } - - WQLFilterRule filterRule = new WQLFilterRule(field, op, value); - return filterRule; - } - - public WQLFilterRule(String field, String op, String value) { - this.field = field; - this.op = op; - this.value = value; - } - - public String Translate(String tableAlias) { - if (WqlUtil.isNotBlank(tableAlias)) { - tableAlias = tableAlias.trim() + "."; - } else { - tableAlias = ""; - } - StringBuffer sb = new StringBuffer(); - - if (!isBlank(field) && !isBlank(op)) { - sb.append(tableAlias).append(field).append(" ").append(op).append(" "); - if ("in".equalsIgnoreCase(this.op)) { - String[] inParaArr = this.value.split(","); - sb.append("("); - for (int j = 0; j < inParaArr.length; j++) { - if (j != 0) - sb.append(","); - if ("1".equals(type)) { - //数值类型 - sb.append(inParaArr[j]); - } else { - //文本类型 - sb.append("'" + inParaArr[j] + "'"); - } - } - sb.append(")"); - } else { - if ("1".equals(type)) { - //数值类型 - sb.append(this.value); - } else { - //文本类型 - sb.append("'" + this.value + "'"); - } - } - } - - return sb.toString(); - } - - public String Translate(List whereArgsList) { - StringBuffer sb = new StringBuffer(); - - if (!isBlank(field) && !isBlank(op)) { - sb.append(field).append(" ").append(op).append(" "); - if ("in".equalsIgnoreCase(this.op)) { - String[] inParaArr = this.value.split(","); - sb.append("("); - for (int j = 0; j < inParaArr.length; j++) { - if (j != 0) - sb.append(","); - sb.append("?"); - whereArgsList.add(inParaArr[j]); - } - sb.append(")"); - } else { - sb.append("?"); - whereArgsList.add(this.value); - } - } - - return sb.toString(); - } - - public JSONObject toJSON() { - if (!isBlank(field) && !isBlank(op)) { - JSONObject jObj = new JSONObject(); - jObj.put("field", field); - jObj.put("op", op); - jObj.put("value", value); - jObj.put("type", type); - return jObj; - } else { - return null; - } - } - - private boolean isBlank(String str) { - int length; - - if ((str == null) || ((length = str.length()) == 0)) { - return true; - } - - for (int i = 0; i < length; i++) { - if (!Character.isWhitespace(str.charAt(i))) { - return false; - } - } - - return true; - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WqlUtil.java b/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WqlUtil.java deleted file mode 100644 index 2143ab4..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/wql/util/WqlUtil.java +++ /dev/null @@ -1,401 +0,0 @@ -package org.nl.modules.wql.util; - -import cn.hutool.core.util.StrUtil; -import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.content.HttpContext; -import org.springframework.data.domain.Pageable; - - -import java.io.*; -import java.lang.reflect.Field; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.math.BigDecimal; -import java.net.URI; -import java.util.HashMap; -import java.util.Map; -import java.util.regex.Matcher; -import java.util.regex.Pattern; -import javax.persistence.Column; -import javax.persistence.Table; - -@Slf4j -public class WqlUtil { - private static final int[] IA = new int[256]; - - public static HttpContext getHttpContext(Pageable pageable) { - HttpContext ctx = new HttpContext(WqlUtil.getUUID()); - ctx.setPage((pageable.getPageNumber() + 1) + ""); - ctx.setRows(pageable.getPageSize() + ""); - return ctx; - } - - - public static String getSQLFieldValue(Object o) { - String str = new String(); - if (o == null) { - return ""; - } else { - String classStr = o.getClass().getName(); - if ("java.lang.String".equals(classStr)) { - str = (String) o; - } else if ("java.lang.Long".equals(classStr)) { - Long e = (Long) o; - str = e.toString(); - } else if ("java.lang.Double".equals(classStr)) { - str = String.valueOf(o); - } else if ("java.math.BigInteger".equals(classStr)) { - str = String.valueOf(o); - } else if ("oracle.sql.CLOB".equals(classStr)) { - /* CLOB e2 = (CLOB) o; - - try { - if (e2 != null && e2.length() != 0L) { - str = e2.getSubString(1L, (int) e2.length()); - } - } catch (SQLException arg16) { - arg16.printStackTrace(); - }*/ - } else if ("java.lang.Integer".equals(classStr)) { - Integer e3 = (Integer) o; - str = e3.toString(); - } else if ("java.lang.Short".equals(classStr)) { - Short e4 = (Short) o; - str = e4.toString(); - } else if ("java.math.BigDecimal".equals(classStr)) { - BigDecimal e5 = (BigDecimal) o; - str = e5.toString(); - } else { - Method e6; - if (classStr.startsWith("com.ibm.db2.jcc")) { - try { - if (o != null) { - e6 = o.getClass().getMethod("getSubString", new Class[]{Long.TYPE, Integer.TYPE}); - Method subo = o.getClass().getMethod("length", new Class[0]); - int subclass = ((Long) subo.invoke(o, new Object[0])).intValue(); - if (subclass > 0) { - str = (String) e6.invoke(o, new Object[]{Long.valueOf(1L), Integer.valueOf(subclass)}); - } - } - } catch (Exception arg15) { - log.error( - "getSQLFieldValue error, class=com.ibm.db2.jcc :" + arg15.getMessage()); - arg15.printStackTrace(); - } - } else if (classStr.startsWith("weblogic.jdbc.wrapper.Clob")) { - try { - e6 = o.getClass().getMethod("getVendorObj", new Class[0]); - Object subo1 = e6.invoke(o, new Object[0]); - String subclass1 = subo1.getClass().getName(); - if (subclass1.startsWith("com.ibm.db2.jcc")) { - try { - if (subo1 != null) { - Method clob = subo1.getClass().getMethod("getSubString", - new Class[]{Long.TYPE, Integer.TYPE}); - Method e1 = subo1.getClass().getMethod("length", new Class[0]); - int length = ((Long) e1.invoke(subo1, new Object[0])).intValue(); - if (length > 0) { - str = (String) clob.invoke(subo1, - new Object[]{Long.valueOf(1L), Integer.valueOf(length)}); - } - } - } catch (Exception arg9) { - log.error( - "getSQLFieldValue error, class=weblogic.jdbc.wrapper.Clob_com.ibm.db2.jcc.* :" - + arg9.getMessage()); - arg9.printStackTrace(); - } - } else if ("oracle.sql.CLOB".equals(subclass1)) { - /* CLOB clob1 = (CLOB) subo1; - - try { - if (clob1 != null && clob1.length() != 0L) { - str = clob1.getSubString(1L, (int) clob1.length()); - } - } catch (Exception arg8) { - arg8.printStackTrace(); - }*/ - } - } catch (SecurityException arg10) { - arg10.printStackTrace(); - } catch (IllegalArgumentException arg11) { - arg11.printStackTrace(); - } catch (NoSuchMethodException arg12) { - arg12.printStackTrace(); - } catch (IllegalAccessException arg13) { - arg13.printStackTrace(); - } catch (InvocationTargetException arg14) { - arg14.printStackTrace(); - } - } - } - - return str; - } - } - - public static Object cloneObject(Object obj) throws Exception { - ByteArrayOutputStream byteOut = new ByteArrayOutputStream(); - ObjectOutputStream out = new ObjectOutputStream(byteOut); - out.writeObject(obj); - ByteArrayInputStream byteIn = new ByteArrayInputStream(byteOut.toByteArray()); - ObjectInputStream in = new ObjectInputStream(byteIn); - return in.readObject(); - } - - public static boolean isString(Object o) { - return "java.lang.String".equals(o.getClass().getName()); - } - - public static String between(String str, String beginStr, String endStr) { - try { - if (str == null || "".equals(str.trim())) { - return ""; - } - - str = str.substring(str.indexOf(beginStr) + 1, str.indexOf(endStr)); - } catch (Exception arg3) { - arg3.printStackTrace(); - } - - return str; - } - - public static String _replaceStr(String source, String oldString, String newString) { - StringBuffer output = new StringBuffer(); - int lengthOfSource = source.length(); - int lengthOfOld = oldString.length(); - - int posStart; - int pos; - for (posStart = 0; (pos = source.indexOf(oldString, posStart)) >= 0; posStart = pos + lengthOfOld) { - output.append(source.substring(posStart, pos)); - output.append(newString); - } - - if (posStart < lengthOfSource) { - output.append(source.substring(posStart)); - } - - return output.toString(); - } - - public static boolean isNotBlank(String str) { - int length; - if (str != null && (length = str.length()) != 0) { - for (int i = 0; i < length; ++i) { - if (!Character.isWhitespace(str.charAt(i))) { - return true; - } - } - - return false; - } else { - return false; - } - } - - public static boolean contains(String s1, String s2) { - boolean ishas = false; - if (-1 != s1.indexOf(s2)) { - ishas = true; - } - - return ishas; - } - - public static String rtrim(String str) { - Pattern pat = Pattern.compile("[\t\n ]$"); - - for (Matcher mat = pat.matcher(str); mat.find(); mat = pat.matcher(str)) { - str = mat.replaceAll(""); - } - - return str; - } - - public static String getUUID() { - /*String primaryKey = UUIDGenerator.getInstance().generateRandomBasedUUID().toString(); - primaryKey = primaryKey.replaceAll("-", ""); - primaryKey = primaryKey.toUpperCase(); - return primaryKey;*/ - return "11"; - } - - public static String ctrim(String str) { - Pattern pat = Pattern.compile("[\t]"); - - Matcher mat; - for (mat = pat.matcher(str); mat.find(); mat = pat.matcher(str)) { - str = mat.replaceAll(" "); - } - - pat = Pattern.compile("[ ]{2,}"); - - for (mat = pat.matcher(str); mat.find(); mat = pat.matcher(str)) { - str = mat.replaceAll(" "); - } - - return str; - } - - /** - * 获取实体类和表的映射关系 - * - * @param instance - * @return - */ - public static Map getDeclaredFieldsInfo(Object instance) { - Map map = new HashMap(); - Class clazz = instance.getClass(); - Field[] fields = clazz.getDeclaredFields(); - boolean b = false; - for (int i = 0; i < fields.length; i++) { - fields[i].setAccessible(true); - boolean annotationPresent = fields[i].isAnnotationPresent(Column.class); - if (annotationPresent) { - // 获取注解值 - String name = fields[i].getAnnotation(Column.class).name(); - // map.put(name, fields[i].getName()); - try { - //实例值 - String value = StrUtil.toString(fields[i].get(instance)); - if (!"null".equals(value)) { - map.put(name, value); - } - - } catch (IllegalAccessException e) { - e.printStackTrace(); - } - } - } - return map; - } - public static String getTableNameByInstance(Class clazz){ - Table anno = (Table) clazz.getAnnotation(Table.class); - //返回实体类表名 - return anno.name(); - - } - - - public static String ltrim(String str) { - Pattern pat = Pattern.compile("^[\t\n ]"); - - for (Matcher mat = pat.matcher(str); mat.find(); mat = pat.matcher(str)) { - str = mat.replaceAll(""); - } - - return str; - } - - - public static byte[] getFileBytes(String strFileNameAndPath) throws Exception { - File file = new File(strFileNameAndPath); - return getFileBytes(file); - } - - public static byte[] getFileBytes(File file) throws Exception { - FileInputStream fileStream = new FileInputStream(file); - byte[] bfile = new byte[(int) file.length()]; - fileStream.read(bfile, 0, (int) file.length()); - fileStream.close(); - return bfile; - } - - public static byte[] getFileBytes(InputStream is, long l) throws Exception { - byte[] bfile = new byte[(int) l]; - is.read(bfile, 0, bfile.length); - is.close(); - return bfile; - } - - public static byte[] getFileBytes(URI uri) throws Exception { - File file = new File(uri); - FileInputStream fileStream = new FileInputStream(file); - byte[] bfile = new byte[(int) file.length()]; - fileStream.read(bfile, 0, (int) file.length()); - fileStream.close(); - return bfile; - } - - public static final String decode2String(byte[] sArr) throws UnsupportedEncodingException { - byte[] bytes = decode(sArr); - String str = new String(bytes, "UTF-8"); - return str; - } - - public static final byte[] decode(byte[] sArr) { - int sLen = sArr.length; - int sepCnt = 0; - - int pad; - for (pad = 0; pad < sLen; ++pad) { - if (IA[sArr[pad] & 255] < 0) { - ++sepCnt; - } - } - - if ((sLen - sepCnt) % 4 != 0) { - return null; - } else { - pad = 0; - int len = sLen; - - while (len > 1) { - --len; - if (IA[sArr[len] & 255] > 0) { - break; - } - - if (sArr[len] == 126) { - ++pad; - } - } - - len = ((sLen - sepCnt) * 6 >> 3) - pad; - byte[] dArr = new byte[len]; - int s = 0; - int d = 0; - - while (d < len) { - int i = 0; - - for (int j = 0; j < 4; ++j) { - int c = IA[sArr[s++] & 255]; - if (c >= 0) { - i |= c << 18 - j * 6; - } else { - --j; - } - } - - dArr[d++] = (byte) (i >> 16); - if (d < len) { - dArr[d++] = (byte) (i >> 8); - if (d < len) { - dArr[d++] = (byte) i; - } - } - } - - return dArr; - } - } - - public static boolean isBlank(String str) { - int length; - if (str != null && (length = str.length()) != 0) { - for (int i = 0; i < length; ++i) { - if (!Character.isWhitespace(str.charAt(i))) { - return false; - } - } - - return true; - } else { - return true; - } - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/NlssoServerApplication.java b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/NlssoServerApplication.java deleted file mode 100644 index aa6115a..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/NlssoServerApplication.java +++ /dev/null @@ -1,13 +0,0 @@ -package org.nl.sso; - -import org.springframework.boot.SpringApplication; -import org.springframework.boot.autoconfigure.SpringBootApplication; - -@SpringBootApplication -public class NlssoServerApplication { - - public static void main(String[] args) { - SpringApplication.run(NlssoServerApplication.class, args); - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/rest/DataPermissionController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/rest/DataPermissionController.java deleted file mode 100644 index 9fa950e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/rest/DataPermissionController.java +++ /dev/null @@ -1,66 +0,0 @@ -package org.nl.sso.rest; - - -import org.nl.sso.service.DataPermissionService; -import org.nl.sso.service.dto.DataPermissionDto; -import org.springframework.data.domain.Pageable; -import lombok.RequiredArgsConstructor; -import org.nl.modules.logging.annotation.Log; -import org.springframework.http.HttpStatus; -import org.springframework.http.ResponseEntity; -import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.*; -import io.swagger.annotations.*; - -import java.util.Map; - -import lombok.extern.slf4j.Slf4j; - -/** - * @author 数据权限 - * @date 数据权限0数据权限数据权限-11-数据权限8 - **/ -@RestController -@RequiredArgsConstructor -@Api(tags = "数据管理") -@RequestMapping("/api/dataPermission2") -@Slf4j -public class DataPermissionController { - - private final DataPermissionService dataPermissionService; - - @GetMapping - @Log("查询数据权限") - @ApiOperation("查询数据权限") - //@SaCheckPermission("@el.check('dataPermission:list')") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page) { - return new ResponseEntity<>(dataPermissionService.queryAll(whereJson, page), HttpStatus.OK); - } - - @PostMapping - @Log("新增数据权限") - @ApiOperation("新增数据权限") - //@SaCheckPermission("@el.check('dataPermission:add')") - public ResponseEntity create(@Validated @RequestBody DataPermissionDto dto) { - dataPermissionService.create(dto); - return new ResponseEntity<>(HttpStatus.CREATED); - } - - @PutMapping - @Log("修改数据权限") - @ApiOperation("修改数据权限") - //@SaCheckPermission("@el.check('dataPermission:edit')") - public ResponseEntity update(@Validated @RequestBody DataPermissionDto dto) { - dataPermissionService.update(dto); - return new ResponseEntity<>(HttpStatus.NO_CONTENT); - } - - @Log("删除数据权限") - @ApiOperation("删除数据权限") - //@SaCheckPermission("@el.check('dataPermission:del')") - @DeleteMapping - public ResponseEntity delete(@RequestBody Long[] ids) { - dataPermissionService.deleteAll(ids); - return new ResponseEntity<>(HttpStatus.OK); - } -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/DataPermissionService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/DataPermissionService.java deleted file mode 100644 index 6bb3bca..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/DataPermissionService.java +++ /dev/null @@ -1,71 +0,0 @@ -package org.nl.sso.service; - - -import org.nl.sso.service.dto.DataPermissionDto; -import org.springframework.data.domain.Pageable; - -import java.util.Map; -import java.util.List; - -/** - * @author 2 - * @description 服务接口 - * @date 2022-11-28 - **/ -public interface DataPermissionService { - - /** - * 查询数据分页 - * - * @param whereJson 条件 - * @param page 分页参数 - * @return Map - */ - Map queryAll(Map whereJson, Pageable page); - - /** - * 查询所有数据不分页 - * - * @param whereJson 条件参数 - * @return List - */ - List queryAll(Map whereJson); - - /** - * 根据ID查询 - * - * @param permission_id ID - * @return DataPermission - */ - DataPermissionDto findById(Long permission_id); - - /** - * 根据编码查询 - * - * @param code code - * @return DataPermission - */ - DataPermissionDto findByCode(String code); - - - /** - * 创建 - * - * @param dto / - */ - void create(DataPermissionDto dto); - - /** - * 编辑 - * - * @param dto / - */ - void update(DataPermissionDto dto); - - /** - * 多选删除 - * - * @param ids / - */ - void deleteAll(Long[] ids); -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/dto/DataPermissionDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/dto/DataPermissionDto.java deleted file mode 100644 index a5db199..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/dto/DataPermissionDto.java +++ /dev/null @@ -1,81 +0,0 @@ -package org.nl.sso.service.dto; - - -import lombok.Data; - -import java.math.BigDecimal; -import java.io.Serializable; - -/** - * @author 2 - * @description / - * @date 2022-11-28 - **/ -@Data -public class DataPermissionDto implements Serializable { - - /** - * permission_id - */ - private Long permission_id; - - /** - * 编码 - */ - private String code; - - /** - * 名称 - */ - private String name; - - /** - * 排序 - */ - private BigDecimal order_sort; - - /** - * 备注 - */ - private String remark; - - /** - * 是否启用 - */ - private String is_used; - - /** - * 是否删除 - */ - private String is_delete; - - /** - * 创建人标识 - */ - private Long create_id; - - /** - * 创建人 - */ - private String create_name; - - /** - * 创建时间 - */ - private String create_time; - - /** - * 修改人标识 - */ - private Long update_id; - - /** - * 修改人 - */ - private String update_optname; - - /** - * 修改时间 - */ - private String update_time; -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/impl/DataPermissionServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/impl/DataPermissionServiceImpl.java deleted file mode 100644 index 2e85d90..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/service/impl/DataPermissionServiceImpl.java +++ /dev/null @@ -1,132 +0,0 @@ -package org.nl.sso.service.impl; - - -import com.alibaba.fastjson.JSON; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.sso.service.DataPermissionService; -import org.nl.sso.service.dto.DataPermissionDto; -import org.springframework.stereotype.Service; -import org.springframework.transaction.annotation.Transactional; - -import org.springframework.data.domain.Pageable; - -import java.util.List; -import java.util.Map; - -import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.IdUtil; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.wql.core.bean.ResultBean; -import org.nl.modules.wql.core.bean.WQLObject; -import org.nl.modules.wql.util.WqlUtil; -import lombok.extern.slf4j.Slf4j; -import cn.hutool.core.util.ObjectUtil; - -/** - * @author 2 - * @description 服务实现 - * @date 2022-11-28 - **/ -@Service -@RequiredArgsConstructor -@Slf4j -public class DataPermissionServiceImpl implements DataPermissionService { - - @Override - public Map queryAll(Map whereJson, Pageable page) { - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - ResultBean rb = wo.pagequery(WqlUtil.getHttpContext(page), "1=1", "update_time desc"); - final JSONObject json = rb.pageResult(); - return json; - } - - @Override - public List queryAll(Map whereJson) { - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - JSONArray arr = wo.query().getResultJSONArray(0); - if (ObjectUtil.isNotEmpty(arr)) return arr.toJavaList(DataPermissionDto.class); - return null; - } - - @Override - public DataPermissionDto findById(Long permission_id) { - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - JSONObject json = wo.query("permission_id = '" + permission_id + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) { - return json.toJavaObject(DataPermissionDto.class); - } - return null; - } - - @Override - public DataPermissionDto findByCode(String code) { - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - JSONObject json = wo.query("code ='" + code + "'").uniqueResult(0); - if (ObjectUtil.isNotEmpty(json)) { - return json.toJavaObject(DataPermissionDto.class); - } - return null; - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void create(DataPermissionDto dto) { - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - String now = DateUtil.now(); - - dto.setPermission_id(IdUtil.getSnowflake(1, 1).nextId()); - dto.setCreate_id(Long.valueOf(currentUserId)); - dto.setCreate_name(nickName); - dto.setUpdate_id(Long.valueOf(currentUserId)); - dto.setUpdate_optname(nickName); - dto.setUpdate_time(now); - dto.setCreate_time(now); - - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); - wo.insert(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void update(DataPermissionDto dto) { - DataPermissionDto entity = this.findById(dto.getPermission_id()); - if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); - - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - - String now = DateUtil.now(); - dto.setUpdate_time(now); - dto.setUpdate_id(Long.valueOf(currentUserId)); - dto.setUpdate_optname(nickName); - - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - JSONObject json = JSONObject.parseObject(JSON.toJSONString(dto)); - wo.update(json); - } - - @Override - @Transactional(rollbackFor = Exception.class) - public void deleteAll(Long[] ids) { - String currentUserId = SecurityUtils.getCurrentUserId(); - String nickName = SecurityUtils.getCurrentNickName(); - String now = DateUtil.now(); - - WQLObject wo = WQLObject.getWQLObject("sys_data_permission"); - for (Long permission_id : ids) { - JSONObject param = new JSONObject(); - param.put("permission_id", String.valueOf(permission_id)); - param.put("is_delete", "1"); - param.put("update_id", currentUserId); - param.put("update_optname", nickName); - param.put("update_time", now); - wo.update(param); - } - } - -} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_DEPT.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_DEPT.wql deleted file mode 100644 index ded4766..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_DEPT.wql +++ /dev/null @@ -1,114 +0,0 @@ -[交易说明] - 交易名: 部门模块 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.name TYPEAS s_string - 输入.code TYPEAS s_string - 输入.pid TYPEAS s_string - 输入.pidIsNull TYPEAS s_string - 输入.is_used TYPEAS s_string - 输入.startTime TYPEAS s_string - 输入.endTime TYPEAS s_string - - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - - IF 输入.flag = "1" - PAGEQUERY - SELECT - * - FROM - sys_dept - WHERE 1=1 - OPTION 输入.pid <> "" - pid = 输入.pid - ENDOPTION - OPTION 输入.name <> "" - name = 输入.name - ENDOPTION - OPTION 输入.code <> "" - code = 输入.code - ENDOPTION - OPTION 输入.is_used <> "" - is_used = 输入.is_used - ENDOPTION - OPTION 输入.pidIsNull <> "" - pid is null - ENDOPTION - OPTION 输入.startTime <> "" - sys_user.create_time >= 输入.startTime - ENDOPTION - OPTION 输入.endTime <> "" - sys_user.create_time <= 输入.endTime - ENDOPTION - order by dept_sort asc - ENDSELECT - ENDPAGEQUERY - ENDIF - - IF 输入.flag = "2" - PAGEQUERY - SELECT - max(t3.childId) - from - ( - select *, - if( find_in_set(t1.pid, @p) > 0,@p := concat(@p,',',id),0 ) as childId - from - (select dept_id as id, pid from sys_dept t order by id) t1, - (select @p := '输入.pid') t2 - ) t3 - where childId != '0' - ENDSELECT - ENDPAGEQUERY - ENDIF - - IF 输入.flag = "2" - PAGEQUERY - SELECT - max(t3.childId) - from - ( - select *, - if( find_in_set(t1.pid, @p) > 0,@p := concat(@p,',',id),0 ) as childId - from - (select dept_id as id, pid from sys_dept t order by id) t1, - (select @p := '输入.pid') t2 - ) t3 - where childId != '0' - ENDSELECT - ENDPAGEQUERY - ENDIF diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_MENU.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_MENU.wql deleted file mode 100644 index 3c2758e..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_MENU.wql +++ /dev/null @@ -1,71 +0,0 @@ -[交易说明] - 交易名: 获取用户权限 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.user_id TYPEAS s_string - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - IF 输入.flag = "1" - QUERY - SELECT DISTINCT - permission - FROM - sys_menu - WHERE - menu_id IN - ( - SELECT - menu_id - FROM - sys_roles_menus - WHERE - role_id IN - ( - SELECT - role_id - FROM - sys_users_roles - WHERE - 1=1 - OPTION 输入.user_id <> "" - user_id = 输入.user_id - ENDOPTION - ) - ) - AND permission IS NOT NULL - AND permission != '' - ENDSELECT - ENDQUERY - ENDIF \ No newline at end of file diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_USER.wql b/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_USER.wql deleted file mode 100644 index fe217a1..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/sso/wql/SYS_USER.wql +++ /dev/null @@ -1,83 +0,0 @@ -[交易说明] - 交易名: 用户模块 - 所属模块: - 功能简述: - 版权所有: - 表引用: - 版本经历: - -[数据库] - --指定数据库,为空采用默认值,默认为db.properties中列出的第一个库 - -[IO定义] - ################################################# - ## 表字段对应输入参数 - ################################################# - 输入.flag TYPEAS s_string - 输入.deptIds TYPEAS f_string - 输入.deptId TYPEAS f_string - 输入.id TYPEAS s_string - 输入.blurry TYPEAS f_string - 输入.is_used TYPEAS s_string - 输入.startTime TYPEAS s_string - 输入.endTime TYPEAS s_string - - - -[临时表] - --这边列出来的临时表就会在运行期动态创建 - -[临时变量] - --所有中间过程变量均可在此处定义 - -[业务过程] - - ########################################## - # 1、输入输出检查 # - ########################################## - - - ########################################## - # 2、主过程前处理 # - ########################################## - - - ########################################## - # 3、业务主过程 # - ########################################## - - IF 输入.flag = "1" - PAGEQUERY - SELECT - sys_user.*,GROUP_CONCAT(DISTINCT sys_dept.dept_id) as depts,GROUP_CONCAT(DISTINCT sys_dept.name) as deptnames,GROUP_CONCAT(DISTINCT role_id) as roles - FROM - sys_user - left join sys_user_dept on sys_user.user_id = sys_user_dept.user_id - left join sys_users_roles on sys_users_roles.user_id = sys_user.user_id - left join sys_dept on sys_user_dept.dept_id = sys_dept.dept_id - WHERE 1=1 - OPTION 输入.id <> "" - sys_user.id = 输入.id - ENDOPTION - OPTION 输入.deptIds <> "" - sys_user_dept.dept_id in 输入.deptIds - ENDOPTION - OPTION 输入.blurry <> "" - (email like 输入.blurry or username like 输入.blurry or person_name like 输入.blurry) - ENDOPTION - OPTION 输入.is_used <> "" - sys_user.is_used = 输入.is_used - ENDOPTION - OPTION 输入.deptId <> "" - sys_user_dept.dept_id = 输入.deptId - ENDOPTION - OPTION 输入.startTime <> "" - sys_user.create_time >= 输入.startTime - ENDOPTION - OPTION 输入.endTime <> "" - sys_user.create_time <= 输入.endTime - ENDOPTION - GROUP BY sys_user.user_id - ENDSELECT - ENDPAGEQUERY - ENDIF diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/start/Init.java b/nladmin-system/nlsso-server/src/main/java/org/nl/start/Init.java index 8e92879..c98e6cc 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/start/Init.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/start/Init.java @@ -1,10 +1,7 @@ package org.nl.start; -import com.alibaba.fastjson.JSONArray; -import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.core.bean.WQLObject; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.stereotype.Component; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleController.java index bebb695..bdfe2db 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleController.java @@ -4,12 +4,11 @@ package org.nl.system.controller.coderule; import cn.dev33.satoken.annotation.SaCheckPermission; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.coderule.ISysCodeRuleService; import org.nl.system.service.coderule.dao.SysCodeRule; -import org.nl.system.service.coderule.dto.CodeRuleQuery; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; @@ -38,7 +37,7 @@ public class SysCodeRuleController { @ApiOperation("查询编码") @GetMapping @SaCheckPermission("genCode:list") - public ResponseEntity queryAll(CodeRuleQuery form, PageQuery pageable) { + public ResponseEntity queryAll(@RequestParam Map form, PageQuery pageable) { return new ResponseEntity<>(TableDataInfo.build(codeRuleService.queryAll(form, pageable)), HttpStatus.OK); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleDetailController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleDetailController.java index e19e3d8..c0268dc 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleDetailController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/coderule/SysCodeRuleDetailController.java @@ -4,9 +4,9 @@ package org.nl.system.controller.coderule; import cn.dev33.satoken.annotation.SaCheckPermission; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.coderule.ISysCodeRuleDetailService; import org.nl.system.service.coderule.dao.SysCodeRuleDetail; import org.nl.system.service.coderule.dto.CodeRuleDetailQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dept/DeptController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dept/DeptController.java index e5503f6..a576223 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dept/DeptController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dept/DeptController.java @@ -20,11 +20,11 @@ import cn.dev33.satoken.annotation.SaMode; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.PageUtil; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.PageUtil; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.dept.ISysDeptService; import org.nl.system.service.dept.dao.SysDept; import org.nl.system.service.dept.dto.DeptQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dict/SysDictController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dict/SysDictController.java index e9809e8..66b7adb 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dict/SysDictController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/dict/SysDictController.java @@ -2,10 +2,9 @@ package org.nl.system.controller.dict; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.dict.ISysDictService; import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.dict.dto.DictQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/generator/CodeGeneratorController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/generator/CodeGeneratorController.java index 964d0ff..cc48b9d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/generator/CodeGeneratorController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/generator/CodeGeneratorController.java @@ -3,9 +3,9 @@ package org.nl.system.controller.generator; import cn.dev33.satoken.annotation.SaIgnore; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.common.exception.BadRequestException; import org.nl.system.service.generator.ICodeGenConfigService; import org.nl.system.service.generator.ICodeGeneratorService; import org.nl.system.service.generator.dao.CodeColumnConfig; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logging/SysLogController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logging/SysLogController.java index c06f4a2..8880b79 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logging/SysLogController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logging/SysLogController.java @@ -3,9 +3,9 @@ package org.nl.system.controller.logging; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.logging.ISysLogService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageController.java similarity index 68% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageController.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageController.java index ebd4d90..65e23de 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageController.java @@ -1,45 +1,53 @@ -package org.nl.modules.logicflow.rest; +package org.nl.system.controller.logicflow; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -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.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.system.service.logicflow.IStageService; +import org.nl.system.service.logicflow.dao.Stage; +import org.springframework.beans.factory.annotation.Autowired; 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; +import java.util.Set; /** - * @Author: lyd - * @Description: 舞台管理 - * @Date: 2022-07-29 10:49 + *

+ * 舞台主表 前端控制器 + *

+ * + * @author generator + * @since 2023-05-08 */ +@Slf4j @RestController -@RequiredArgsConstructor @Api(tags = "舞台管理") @RequestMapping("/api/stage") -@Slf4j public class StageController { - private final StageService stageService; + + @Autowired + private IStageService stageService; + @GetMapping @Log("查询舞台") @ApiOperation("查询舞台") //@SaCheckPermission("stage:list") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page) { - return new ResponseEntity<>(stageService.queryAll(whereJson, page), HttpStatus.OK); + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stageService.queryAll(whereJson, page)), HttpStatus.OK); } @PostMapping @Log("新增舞台") @ApiOperation("新增舞台") //@SaCheckPermission("stage:add") - public ResponseEntity create(@Validated @RequestBody StageDto dto) { + public ResponseEntity create(@Validated @RequestBody Stage dto) { stageService.create(dto); return new ResponseEntity<>(HttpStatus.CREATED); } @@ -48,7 +56,7 @@ public class StageController { @Log("修改舞台") @ApiOperation("修改舞台") //@SaCheckPermission("stage:edit") - public ResponseEntity update(@Validated @RequestBody StageDto dto) { + public ResponseEntity update(@Validated @RequestBody Stage dto) { stageService.update(dto); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } @@ -57,7 +65,7 @@ public class StageController { @ApiOperation("删除舞台") //@SaCheckPermission("stage:del") @DeleteMapping - public ResponseEntity delete(@RequestBody String[] ids) { + public ResponseEntity delete(@RequestBody Set ids) { stageService.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK); } @@ -73,7 +81,7 @@ public class StageController { @PostMapping("/addNewStage") @Log("保存舞台数据") @ApiOperation("保存舞台数据") - public ResponseEntity addNewStage(@Validated @RequestBody StageDto dto) { + public ResponseEntity addNewStage(@Validated @RequestBody Stage dto) { log.info("dto{}",dto); stageService.addNewStage(dto); return new ResponseEntity<>(HttpStatus.CREATED); @@ -83,6 +91,9 @@ public class StageController { @Log("根据stage_code获取舞台数据") @ApiOperation("根据stage_code获取舞台数据") public ResponseEntity getNewStageDataByCode(@RequestBody String code) { - return new ResponseEntity<>(stageService.findByCode(code), HttpStatus.CREATED); + Stage one = stageService.getOne(new LambdaQueryWrapper().eq(Stage::getStage_code, code)); + return new ResponseEntity<>(one, HttpStatus.CREATED); } + } + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageImageController.java similarity index 67% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageImageController.java index cb193cf..c8e5f2d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/rest/StageImageController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/logicflow/StageImageController.java @@ -1,19 +1,24 @@ -package org.nl.modules.logicflow.rest; +package org.nl.system.controller.logicflow; + import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; 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.nl.common.base.TableDataInfo; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.logging.annotation.Log; +import org.nl.system.service.logicflow.IStageImageService; +import org.nl.system.service.logicflow.dao.StageImage; +import org.springframework.beans.factory.annotation.Autowired; 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; +import java.util.Set; + /** * @Author: lyd @@ -26,22 +31,23 @@ import java.util.Map; @RequestMapping("/api/stageImage") @Slf4j public class StageImageController { - private final StageImageService stageImageService; + @Autowired + private IStageImageService stageImageService; @GetMapping @Log("查询舞台") @ApiOperation("查询舞台") //@SaCheckPermission("stageImage:list") - public ResponseEntity query(@RequestParam Map whereJson, Pageable page) { - return new ResponseEntity<>(stageImageService.queryAll(whereJson, page), HttpStatus.OK); + public ResponseEntity query(@RequestParam Map whereJson, PageQuery page) { + return new ResponseEntity<>(TableDataInfo.build(stageImageService.queryAll(whereJson, page)), HttpStatus.OK); } @PostMapping - @Log("新增舞台") - @ApiOperation("新增舞台") + @Log("新增舞台图片") + @ApiOperation("新增舞台图片") //@SaCheckPermission("stageImage:add") - public ResponseEntity create(@Validated @RequestBody StageImageDto dto) { - stageImageService.create(dto); + public ResponseEntity create(@Validated @RequestBody StageImage entity) { + stageImageService.create(entity); return new ResponseEntity<>(HttpStatus.CREATED); } @@ -49,8 +55,8 @@ public class StageImageController { @Log("修改舞台") @ApiOperation("修改舞台") //@SaCheckPermission("stageImage:edit") - public ResponseEntity update(@Validated @RequestBody StageImageDto dto) { - stageImageService.update(dto); + public ResponseEntity update(@Validated @RequestBody StageImage entity) { + stageImageService.update(entity); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } @@ -58,7 +64,7 @@ public class StageImageController { @ApiOperation("删除舞台") //@SaCheckPermission("stageImage:del") @DeleteMapping - public ResponseEntity delete(@RequestBody String[] ids) { + public ResponseEntity delete(@RequestBody Set ids) { stageImageService.deleteAll(ids); return new ResponseEntity<>(HttpStatus.OK); } @@ -71,3 +77,4 @@ public class StageImageController { return new ResponseEntity<>(stageImageService.selectList(), HttpStatus.OK); } } + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/lucence/LuceneController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/lucence/LuceneController.java index 609c992..1ee76d9 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/lucence/LuceneController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/lucence/LuceneController.java @@ -4,7 +4,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.lucene.LuceneService; import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/menu/SysMenuController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/menu/SysMenuController.java index ed233ca..71e5679 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/menu/SysMenuController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/menu/SysMenuController.java @@ -7,10 +7,9 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.menu.ISysMenuService; import org.nl.system.service.menu.dao.SysMenu; import org.nl.system.service.menu.dto.MenuDto; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MonitorController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/monitor/MonitorController.java similarity index 94% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MonitorController.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/monitor/MonitorController.java index 3852b66..092e749 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/rest/MonitorController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/monitor/MonitorController.java @@ -13,13 +13,13 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.rest; +package org.nl.system.controller.monitor; import cn.dev33.satoken.annotation.SaCheckPermission; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; -import org.nl.modules.system.service.MonitorService; +import org.nl.system.service.monitor.MonitorService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java index 6700fc4..b78ffb0 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java @@ -4,9 +4,9 @@ import cn.dev33.satoken.annotation.SaIgnore; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.param.ISysParamService; import org.nl.system.service.param.dao.Param; import org.springframework.beans.factory.annotation.Autowired; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/permission/SysDataPermissionController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/permission/SysDataPermissionController.java index 359094a..4a94366 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/permission/SysDataPermissionController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/permission/SysDataPermissionController.java @@ -4,12 +4,10 @@ package org.nl.system.controller.permission; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; -import org.nl.sso.service.dto.DataPermissionDto; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.permission.ISysDataPermissionService; import org.nl.system.service.permission.dao.SysDataPermission; import org.nl.system.service.permission.dto.SysDataPermissionQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/quartz/SysQuartzJobController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/quartz/SysQuartzJobController.java index a0f1d6d..1b6bdf2 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/quartz/SysQuartzJobController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/quartz/SysQuartzJobController.java @@ -5,10 +5,10 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.exception.BadRequestException; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.quartz.ISysQuartzJobService; import org.nl.system.service.quartz.dao.SysQuartzJob; import org.nl.system.service.quartz.dto.JobQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/redis/RedisController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/redis/RedisController.java index 458526d..ec89c86 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/redis/RedisController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/redis/RedisController.java @@ -4,7 +4,7 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.redis.RedisService; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java index ceee3a8..2eacfa3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/role/SysRoleController.java @@ -3,9 +3,9 @@ package org.nl.system.controller.role; import cn.dev33.satoken.annotation.SaCheckPermission; import com.alibaba.fastjson.JSONObject; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.role.ISysRoleService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpStatus; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/AuthorizationController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/AuthorizationController.java index a90f557..321bfa3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/AuthorizationController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/secutiry/AuthorizationController.java @@ -10,13 +10,11 @@ import com.wf.captcha.base.Captcha; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.security.config.bean.LoginCodeEnum; -import org.nl.modules.security.config.bean.LoginProperties; -import org.nl.modules.system.service.RoleService; -import org.nl.modules.wql.core.bean.WQLObject; +import org.nl.common.utils.RedisUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.dto.CurrentUser; +import org.nl.common.security.config.bean.LoginCodeEnum; +import org.nl.common.security.config.bean.LoginProperties; import org.nl.system.service.secutiry.impl.OnlineUserService; import org.nl.system.service.user.ISysUserService; import org.nl.system.service.user.dao.SysUser; @@ -46,9 +44,6 @@ public class AuthorizationController { private OnlineUserService onlineUserService; @Autowired private ISysUserService userService; - @Autowired - private RoleService roleService; - @Autowired private LoginProperties loginProperties; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/tools/ToolLocalStorageController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/tools/ToolLocalStorageController.java index ce58347..e042e03 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/tools/ToolLocalStorageController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/tools/ToolLocalStorageController.java @@ -5,11 +5,11 @@ import cn.dev33.satoken.annotation.SaCheckPermission; import cn.dev33.satoken.annotation.SaIgnore; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.FileUtil; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.tools.IToolLocalStorageService; import org.nl.system.service.tools.dao.ToolLocalStorage; import org.nl.system.service.tools.dto.ToolLocalStorageQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/OnlineController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/OnlineController.java index 55e67b8..567898e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/OnlineController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/OnlineController.java @@ -17,8 +17,7 @@ package org.nl.system.controller.user; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import lombok.RequiredArgsConstructor; -import org.nl.modules.common.utils.EncryptUtils; +import org.nl.common.utils.EncryptUtils; import org.nl.system.service.secutiry.impl.OnlineUserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.Pageable; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java index c1b6bfd..b942497 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java @@ -22,13 +22,13 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.config.RsaProperties; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.RsaUtils; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.logging.annotation.Log; +import org.nl.config.RsaProperties; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.RsaUtils; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.logging.annotation.Log; import org.nl.system.service.user.ISysUserService; import org.nl.system.service.user.dao.SysUser; import org.nl.system.service.user.dto.UserQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/ISysCodeRuleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/ISysCodeRuleService.java index 4f227a2..49d63fb 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/ISysCodeRuleService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/ISysCodeRuleService.java @@ -25,7 +25,7 @@ public interface ISysCodeRuleService extends IService { * @param pageable * @return */ - IPage queryAll(CodeRuleQuery form, PageQuery pageable); + IPage queryAll(Map form, PageQuery pageable); /** * 创建编码 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/dao/SysCodeRule.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/dao/SysCodeRule.java index 3f2d00a..8563b74 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/dao/SysCodeRule.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/dao/SysCodeRule.java @@ -41,7 +41,7 @@ public class SysCodeRule implements Serializable { /** * 当前值 */ - private String currentValue; + private String current_value; /** * 备注 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleDetailServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleDetailServiceImpl.java index 6a839eb..778f3f4 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleDetailServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleDetailServiceImpl.java @@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.coderule.ISysCodeRuleDetailService; import org.nl.system.service.coderule.dao.SysCodeRuleDetail; import org.nl.system.service.coderule.dao.mapper.SysCodeRuleDetailMapper; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleServiceImpl.java index 669914c..51ba327 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/coderule/impl/SysCodeRuleServiceImpl.java @@ -6,17 +6,17 @@ import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.tools.MapOf; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.MapOf; import org.nl.system.service.coderule.ISysCodeRuleService; import org.nl.system.service.coderule.dao.SysCodeRule; import org.nl.system.service.coderule.dao.SysCodeRuleDetail; import org.nl.system.service.coderule.dao.mapper.SysCodeRuleDetailMapper; import org.nl.system.service.coderule.dao.mapper.SysCodeRuleMapper; -import org.nl.system.service.coderule.dto.CodeRuleQuery; import org.nl.system.service.coderule.utils.CodeRuleTypeEnum; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -43,8 +43,14 @@ public class SysCodeRuleServiceImpl extends ServiceImpl queryAll(CodeRuleQuery form, PageQuery pageable) { - IPage page = this.page(pageable.build(SysCodeRule.class), form.build()); + public IPage queryAll(Map form, PageQuery pageable) { + String blurry = ObjectUtil.isNotEmpty(form.get("blurry"))?form.get("blurry").toString():null; + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + lam.like(ObjectUtil.isNotEmpty(blurry), SysCodeRule::getCode, blurry) + .or(ObjectUtil.isNotEmpty(blurry)) + .like(ObjectUtil.isNotEmpty(blurry), SysCodeRule::getName, blurry); + IPage page = new Page<>(pageable.getPage() + 1, pageable.getSize()); + codeRuleMapper.selectPage(page, lam); page.getRecords().forEach(sysCodeRule -> sysCodeRule.setDemo(codeDemo(MapOf.of("flag", "0", "code", sysCodeRule.getCode())))); return page; } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptTree.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dto/DeptTree.java similarity index 96% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptTree.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dto/DeptTree.java index 4772b35..0aaf8b8 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/DeptTree.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dto/DeptTree.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.service.dto; +package org.nl.system.service.dept.dto; import com.fasterxml.jackson.annotation.JsonInclude; import lombok.Getter; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java index 6dde2f6..93ea266 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java @@ -6,13 +6,13 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.system.domain.vo.DeptVo; -import org.nl.modules.system.service.dto.DeptTree; -import org.nl.modules.system.util.CopyUtil; -import org.nl.modules.tools.IdUtil; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.utils.dto.CurrentUser; +import org.nl.common.domain.vo.DeptVo; +import org.nl.system.service.dept.dto.DeptTree; +import org.nl.common.utils.CopyUtil; +import org.nl.config.IdUtil; import org.nl.system.service.dept.ISysDeptService; import org.nl.system.service.dept.dao.SysDept; import org.nl.system.service.dept.dao.mapper.SysDeptMapper; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java index 8a90e43..ae50dfb 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dict/impl/SysDictServiceImpl.java @@ -8,10 +8,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import lombok.RequiredArgsConstructor; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.dict.ISysDictService; import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.dict.dao.mapper.SysDictMapper; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/generator/impl/CodeGeneratorServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/generator/impl/CodeGeneratorServiceImpl.java index ae860f9..d3c7ced 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/generator/impl/CodeGeneratorServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/generator/impl/CodeGeneratorServiceImpl.java @@ -10,9 +10,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.common.utils.GenUtil; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.FileUtil; +import org.nl.common.utils.GenUtil; import org.nl.system.service.generator.ICodeGeneratorService; import org.nl.system.service.generator.dao.CodeColumnConfig; import org.nl.system.service.generator.dao.CodeGenConfig; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logging/impl/SysLogServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logging/impl/SysLogServiceImpl.java index 34c55cb..7d50887 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logging/impl/SysLogServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logging/impl/SysLogServiceImpl.java @@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.utils.ValidationUtil; +import org.nl.common.utils.ValidationUtil; import org.nl.system.service.logging.ISysLogService; import org.nl.system.service.logging.dao.SysLog; import org.nl.system.service.logging.dao.mapper.SysLogMapper; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageImageService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageImageService.java new file mode 100644 index 0000000..037907a --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageImageService.java @@ -0,0 +1,56 @@ +package org.nl.system.service.logicflow; + +import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.system.service.logicflow.dao.StageImage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.data.domain.Pageable; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + *

+ * 设备舞台图标表 服务类 + *

+ * + * @author generator + * @since 2023-05-08 + */ +public interface IStageImageService extends IService { + + /** + * 分页 + * @param whereJson + * @param page + * @return + */ + IPage queryAll(Map whereJson, PageQuery page); + + /** + * 创建 + * @param entity + */ + void create(StageImage entity); + + /** + * 更新 + * @param entity + */ + void update(StageImage entity); + + /** + * 删除 + * @param ids + */ + void deleteAll(Set ids); + + /** + * 前端舞台编辑选择设备图标下拉选列表 + * + * @return + */ + List selectList(); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageService.java new file mode 100644 index 0000000..3e54179 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/IStageService.java @@ -0,0 +1,62 @@ +package org.nl.system.service.logicflow; + +import com.alibaba.fastjson.JSONArray; +import com.baomidou.mybatisplus.core.metadata.IPage; +import org.nl.common.domain.query.PageQuery; +import org.nl.system.service.logicflow.dao.Stage; +import com.baomidou.mybatisplus.extension.service.IService; +import org.springframework.data.domain.Pageable; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + *

+ * 舞台主表 服务类 + *

+ * + * @author generator + * @since 2023-05-08 + */ +public interface IStageService extends IService { + + /** + * 分页查询 + * @param whereJson + * @param page + * @return + */ + IPage queryAll(Map whereJson, PageQuery page); + + /** + * 新增 + * @param dto + */ + void create(Stage dto); + + /** + * 修改 + * @param dto + */ + void update(Stage dto); + + /** + * 删除 + * @param ids + */ + void deleteAll(Set ids); + + /** + * 前端舞台下拉选列表 + * + * @return + */ + List selectList(); + + /** + * 添加舞台数据 + * @param dto + */ + void addNewStage(Stage dto); +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/Stage.java similarity index 54% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/Stage.java index ed74203..33f9a3e 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/Stage.java @@ -1,19 +1,30 @@ -package org.nl.modules.logicflow.service.dto; - -import lombok.Data; +package org.nl.system.service.logicflow.dao; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; /** - * @Author: lyd - * @Description: 舞台数据的Dto - * @Date: 2022-07-29 13:28 + *

+ * 舞台主表 + *

+ * + * @author generator + * @since 2023-05-08 */ @Data -public class StageDto implements Serializable { +@EqualsAndHashCode(callSuper = false) +@TableName("stage") +public class Stage implements Serializable { + + private static final long serialVersionUID = 1L; + /** * 舞台标识 */ + @TableId private String stage_uuid; /** @@ -44,7 +55,8 @@ public class StageDto implements Serializable { /** * 创建者 */ - private String create_by; + private String create_id; + private String create_name; /** * 创建时间 @@ -54,10 +66,13 @@ public class StageDto implements Serializable { /** * 修改者 */ - private String update_by; + private String update_id; + private String update_name; /** * 修改时间 */ private String update_time; + + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/StageImage.java similarity index 53% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/StageImage.java index 2d6cf49..a96dd0d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/logicflow/service/dto/StageImageDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/StageImage.java @@ -1,23 +1,39 @@ -package org.nl.modules.logicflow.service.dto; - -import lombok.Data; +package org.nl.system.service.logicflow.dao; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; +import lombok.Data; +import lombok.EqualsAndHashCode; /** - * @Author: lyd - * @Description: 设备图标dto - * @Date: 2022-07-29 + *

+ * 设备舞台图标表 + *

+ * + * @author generator + * @since 2023-05-08 */ @Data -public class StageImageDto implements Serializable { +@EqualsAndHashCode(callSuper = false) +@TableName("stage_image") +public class StageImage implements Serializable { + + private static final long serialVersionUID = 1L; + /** - * 设备标识 + * 图标标识 */ + @TableId private String image_uuid; /** - * 设备名字 + * 图标编码 + */ + private String image_code; + + /** + * 图标名字 */ private String image_name; @@ -44,7 +60,8 @@ public class StageImageDto implements Serializable { /** * 创建者 */ - private String create_by; + private String create_id; + private String create_name; /** * 创建时间 @@ -54,15 +71,13 @@ public class StageImageDto implements Serializable { /** * 修改者 */ - private String update_by; + private String update_id; + private String update_name; /** * 修改时间 */ private String update_time; - /** - * 图标编码 - */ - private String image_code; + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.java new file mode 100644 index 0000000..9d6eeb8 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.java @@ -0,0 +1,16 @@ +package org.nl.system.service.logicflow.dao.mapper; + +import org.nl.system.service.logicflow.dao.StageImage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 设备舞台图标表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-05-08 + */ +public interface StageImageMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.xml new file mode 100644 index 0000000..93e3cac --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageImageMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.java new file mode 100644 index 0000000..abf68d1 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.java @@ -0,0 +1,16 @@ +package org.nl.system.service.logicflow.dao.mapper; + +import org.nl.system.service.logicflow.dao.Stage; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; + +/** + *

+ * 舞台主表 Mapper 接口 + *

+ * + * @author generator + * @since 2023-05-08 + */ +public interface StageMapper extends BaseMapper { + +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.xml new file mode 100644 index 0000000..10c03e4 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/dao/mapper/StageMapper.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageImageServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageImageServiceImpl.java new file mode 100644 index 0000000..14b40a6 --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageImageServiceImpl.java @@ -0,0 +1,89 @@ +package org.nl.system.service.logicflow.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.system.service.logicflow.IStageImageService; +import org.nl.system.service.logicflow.dao.StageImage; +import org.nl.system.service.logicflow.dao.mapper.StageImageMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + *

+ * 设备舞台图标表 服务实现类 + *

+ * + * @author generator + * @since 2023-05-08 + */ +@Service +public class StageImageServiceImpl extends ServiceImpl implements IStageImageService { + + @Autowired + private StageImageMapper stageImageMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + stageImageMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(StageImage entity) { + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setImage_uuid(IdUtil.simpleUUID()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + stageImageMapper.insert(entity); + } + + @Override + public void update(StageImage entity) { + StageImage dto = stageImageMapper.selectOne(new LambdaQueryWrapper() + .eq(StageImage::getImage_uuid, entity.getImage_uuid())); + if (dto == null) throw new BadRequestException("被删除或无权限,操作失败!"); + + String currentUsername = SecurityUtils.getCurrentUsername(); + String currentUserId = SecurityUtils.getCurrentUserId(); + String now = DateUtil.now(); + entity.setUpdate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(currentUsername); + stageImageMapper.updateById(entity); + } + + @Override + public void deleteAll(Set ids) { + stageImageMapper.deleteBatchIds(ids); + } + + @Override + public List selectList() { + List stageImages = stageImageMapper.selectList(new LambdaQueryWrapper() + .eq(StageImage::getIs_delete, "0") + .eq(StageImage::getIs_active, "1") + .orderByDesc(StageImage::getUpdate_time)); + stageImages.forEach(stageImage -> stageImage.setImage_name(stageImage.getImage_code().split("-")[0])); + return stageImages; + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageServiceImpl.java new file mode 100644 index 0000000..0f3b62b --- /dev/null +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/logicflow/impl/StageServiceImpl.java @@ -0,0 +1,109 @@ +package org.nl.system.service.logicflow.impl; + +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.IdUtil; +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.nl.common.domain.query.PageQuery; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.system.service.logicflow.IStageService; +import org.nl.system.service.logicflow.dao.Stage; +import org.nl.system.service.logicflow.dao.mapper.StageMapper; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Map; +import java.util.Set; + +/** + *

+ * 舞台主表 服务实现类 + *

+ * + * @author generator + * @since 2023-05-08 + */ +@Service +public class StageServiceImpl extends ServiceImpl implements IStageService { + + @Autowired + private StageMapper stageMapper; + + @Override + public IPage queryAll(Map whereJson, PageQuery page) { + LambdaQueryWrapper lam = new LambdaQueryWrapper<>(); + IPage pages = new Page<>(page.getPage() + 1, page.getSize()); + stageMapper.selectPage(pages, lam); + return pages; + } + + @Override + public void create(Stage entity) { + Stage stage = stageMapper.selectOne(new LambdaQueryWrapper().eq(Stage::getStage_code, entity.getStage_code())); + if (ObjectUtil.isNotEmpty(stage)) { + throw new BadRequestException("舞台编码[" + entity.getStage_code() + "]已存在"); + } + String currentUserId = SecurityUtils.getCurrentUserId(); + String nickName = SecurityUtils.getCurrentNickName(); + String now = DateUtil.now(); + + entity.setStage_uuid(IdUtil.simpleUUID()); + entity.setCreate_id(currentUserId); + entity.setCreate_name(nickName); + entity.setCreate_time(now); + entity.setUpdate_id(currentUserId); + entity.setUpdate_name(nickName); + entity.setUpdate_time(now); + stageMapper.insert(entity); + } + + @Override + public void update(Stage dto) { + Stage entity = stageMapper.selectOne(new LambdaQueryWrapper().eq(Stage::getStage_uuid, dto.getStage_uuid())); + if (entity == null) throw new BadRequestException("被删除或无权限,操作失败!"); + + String currentUsername = SecurityUtils.getCurrentUsername(); + String currentUserId = SecurityUtils.getCurrentUserId(); + String now = DateUtil.now(); + dto.setUpdate_time(now); + dto.setUpdate_id(currentUserId); + dto.setUpdate_name(currentUsername); + stageMapper.updateById(dto); + } + + @Override + public void deleteAll(Set ids) { + stageMapper.deleteBatchIds(ids); + } + + @Override + public List selectList() { + List stages = stageMapper.selectList(new LambdaQueryWrapper() + .eq(Stage::getIs_delete, "0") + .eq(Stage::getIs_active, "1")); + return stages; + } + + @Override + public void addNewStage(Stage dto) { + Stage stage = stageMapper.selectOne(new LambdaQueryWrapper().eq(Stage::getStage_code, dto.getStage_code())); + if (ObjectUtil.isEmpty(stage)) { + throw new BadRequestException("舞台不存在"); + } + // 设置内容 + stage.setStage_data(dto.getStage_data()); + // 获取当前用户与时间 + String currentUsername = SecurityUtils.getCurrentUsername(); + String currentUserId = SecurityUtils.getCurrentUserId(); + String now = DateUtil.now(); + stage.setUpdate_time(now); + stage.setUpdate_name(currentUsername); + stage.setUpdate_id(currentUserId); + stageMapper.updateById(stage); + } +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/ISysMenuService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/ISysMenuService.java index cb3e286..b672ea4 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/ISysMenuService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/ISysMenuService.java @@ -2,7 +2,7 @@ package org.nl.system.service.menu; import com.baomidou.mybatisplus.extension.service.IService; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.system.domain.vo.MenuVo; +import org.nl.common.domain.vo.MenuVo; import org.nl.system.service.menu.dao.SysMenu; import org.nl.system.service.menu.dto.MenuDto; import org.nl.system.service.menu.dto.MenuQuery; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/dto/MenuDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/dto/MenuDto.java index faecb45..4484d60 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/dto/MenuDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/dto/MenuDto.java @@ -16,7 +16,7 @@ package org.nl.system.service.menu.dto; import lombok.Data; -import org.nl.modules.common.base.BaseDTO; +import org.nl.common.base.BaseDTO; import java.io.Serializable; import java.util.List; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/impl/SysMenuServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/impl/SysMenuServiceImpl.java index 0f45bf8..26040c6 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/impl/SysMenuServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/menu/impl/SysMenuServiceImpl.java @@ -8,21 +8,19 @@ import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.google.common.collect.Lists; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.nl.common.domain.constant.DictConstantPool; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.system.domain.vo.MenuMetaVo; -import org.nl.modules.system.domain.vo.MenuVo; -import org.nl.modules.system.util.CopyUtil; -import org.nl.modules.tools.IdUtil; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.common.domain.vo.MenuMetaVo; +import org.nl.common.domain.vo.MenuVo; +import org.nl.common.utils.CopyUtil; +import org.nl.config.IdUtil; import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.dict.dao.mapper.SysDictMapper; import org.nl.system.service.lucene.LuceneExecuteLogService; -import org.nl.system.service.lucene.dto.LuceneLogDto; import org.nl.system.service.menu.dto.MenuDto; import org.nl.system.service.menu.ISysMenuService; import org.nl.system.service.menu.dao.SysMenu; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MonitorService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/MonitorService.java similarity index 95% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MonitorService.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/MonitorService.java index 829151a..d0573f9 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/MonitorService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/MonitorService.java @@ -13,7 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.service; +package org.nl.system.service.monitor; import java.util.Map; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/impl/MonitorServiceImpl.java similarity index 97% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/impl/MonitorServiceImpl.java index 1ab7a9f..b721ec8 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/impl/MonitorServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/monitor/impl/MonitorServiceImpl.java @@ -13,14 +13,14 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.service.impl; +package org.nl.system.service.monitor.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.nl.common.utils.ElAdminConstant; +import org.nl.common.utils.FileUtil; +import org.nl.common.utils.StringUtils; +import org.nl.system.service.monitor.MonitorService; import org.springframework.stereotype.Service; import oshi.SystemInfo; import oshi.hardware.CentralProcessor; @@ -186,4 +186,4 @@ public class MonitorServiceImpl implements MonitorService { systemInfo.put("ip", StringUtils.getLocalIp()); return systemInfo; } -} \ No newline at end of file +} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java index 63f70e5..a1578c3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/param/impl/SysParamServiceImpl.java @@ -9,9 +9,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.tools.MapOf; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.MapOf; import org.nl.system.service.param.ISysParamService; import org.nl.system.service.param.dao.Param; import org.nl.system.service.param.dao.mapper.SysParamMapper; @@ -21,7 +21,6 @@ import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; -import java.util.function.Consumer; /** *

diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/permission/impl/SysDataPermissionServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/permission/impl/SysDataPermissionServiceImpl.java index f39a6a8..cdee996 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/permission/impl/SysDataPermissionServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/permission/impl/SysDataPermissionServiceImpl.java @@ -9,8 +9,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.dict.dao.Dict; import org.nl.system.service.dict.dao.mapper.SysDictMapper; import org.nl.system.service.permission.ISysDataPermissionService; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/impl/SysQuartzJobServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/impl/SysQuartzJobServiceImpl.java index f563e57..375463d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/impl/SysQuartzJobServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/impl/SysQuartzJobServiceImpl.java @@ -9,9 +9,9 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.RedisUtils; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.quartz.ISysQuartzJobService; import org.nl.system.service.quartz.dao.SysQuartzJob; import org.nl.system.service.quartz.dao.SysQuartzLog; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/ExecutionJob.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/ExecutionJob.java index afbfffe..234c641 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/ExecutionJob.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/ExecutionJob.java @@ -4,9 +4,9 @@ import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.StrUtil; import lombok.extern.slf4j.Slf4j; import org.nl.config.thread.ThreadPoolExecutorUtil; -import org.nl.modules.common.utils.RedisUtils; -import org.nl.modules.common.utils.ThrowableUtil; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.common.utils.RedisUtils; +import org.nl.common.utils.ThrowableUtil; +import org.nl.config.SpringContextHolder; import org.nl.system.service.quartz.ISysQuartzJobService; import org.nl.system.service.quartz.dao.SysQuartzJob; import org.nl.system.service.quartz.dao.SysQuartzLog; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzManage.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzManage.java index 1fb361f..f51adc7 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzManage.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzManage.java @@ -1,7 +1,7 @@ package org.nl.system.service.quartz.utils; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.exception.BadRequestException; +import org.nl.common.exception.BadRequestException; import org.nl.system.service.quartz.dao.SysQuartzJob; import org.quartz.*; import org.quartz.impl.triggers.CronTriggerImpl; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzRunnable.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzRunnable.java index f054f67..4198696 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzRunnable.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/utils/QuartzRunnable.java @@ -2,7 +2,7 @@ package org.nl.system.service.quartz.utils; import cn.hutool.core.util.StrUtil; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.wql.util.SpringContextHolder; +import org.nl.config.SpringContextHolder; import org.springframework.util.ReflectionUtils; import java.lang.reflect.Method; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java index cbef266..70edee8 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java @@ -12,8 +12,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.menu.dao.mapper.SysMenuMapper; import org.nl.system.service.role.ISysRoleService; import org.nl.system.service.role.dao.SysRole; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/UserDto.java similarity index 93% rename from nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDto.java rename to nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/UserDto.java index 70aec08..1aba3ce 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/modules/system/service/dto/UserDto.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/dto/UserDto.java @@ -13,18 +13,17 @@ * See the License for the specific language governing permissions and * limitations under the License. */ -package org.nl.modules.system.service.dto; +package org.nl.system.service.secutiry.dto; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Getter; import lombok.Setter; -import org.nl.modules.common.base.BaseDTO; +import org.nl.common.base.BaseDTO; import java.io.Serializable; import java.util.Date; -import java.util.Set; /** * @author Zheng Jie diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/impl/OnlineUserService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/impl/OnlineUserService.java index 44f08d9..b63ef55 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/impl/OnlineUserService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/secutiry/impl/OnlineUserService.java @@ -24,11 +24,11 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; -import org.nl.modules.common.config.RsaProperties; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.*; -import org.nl.modules.common.utils.dto.CurrentUser; -import org.nl.modules.system.service.dto.UserDto; +import org.nl.common.utils.*; +import org.nl.config.RsaProperties; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.dto.CurrentUser; +import org.nl.system.service.secutiry.dto.UserDto; import org.nl.system.service.role.ISysRoleService; import org.nl.system.service.secutiry.dto.AuthUserDto; import org.nl.system.service.user.ISysUserService; @@ -205,7 +205,7 @@ public class OnlineUserService { List onlineUsers = getAll(username); for (OnlineUserDto onlineUser : onlineUsers) { if (onlineUser.getUserName().equals(username)) { - String token =EncryptUtils.desDecrypt(onlineUser.getKey()); + String token = EncryptUtils.desDecrypt(onlineUser.getKey()); kickOut(token); } } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/tools/impl/ToolLocalStorageServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/tools/impl/ToolLocalStorageServiceImpl.java index 4bad2f4..4a49142 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/tools/impl/ToolLocalStorageServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/tools/impl/ToolLocalStorageServiceImpl.java @@ -5,12 +5,11 @@ import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.metadata.IPage; -import lombok.RequiredArgsConstructor; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.config.FileProperties; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.config.FileProperties; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.FileUtil; +import org.nl.common.utils.SecurityUtils; import org.nl.system.service.tools.dao.ToolLocalStorage; import org.nl.system.service.tools.dao.mapper.ToolLocalStorageMapper; import org.nl.system.service.tools.IToolLocalStorageService; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java index 7e5e0b8..35bf732 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java @@ -7,12 +7,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.SneakyThrows; import org.apache.commons.beanutils.ConvertUtils; -import org.apache.commons.beanutils.Converter; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.config.FileProperties; -import org.nl.modules.common.utils.FileUtil; -import org.nl.modules.common.utils.SecurityUtils; -import org.nl.modules.tools.IdUtil; +import org.nl.config.FileProperties; +import org.nl.common.utils.FileUtil; +import org.nl.common.utils.SecurityUtils; +import org.nl.config.IdUtil; import org.nl.system.service.dept.ISysDeptService; import org.nl.system.service.role.ISysRoleService; import org.nl.system.service.user.ISysUserService; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/controller/MdBaseMaterialController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/controller/MdBaseMaterialController.java index bde2e99..a98a589 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/controller/MdBaseMaterialController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/controller/MdBaseMaterialController.java @@ -3,9 +3,9 @@ package org.nl.wms.database.material.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.wms.database.material.service.IMdBaseMaterialService; import org.nl.wms.database.material.service.dao.MdBaseMaterial; import org.springframework.beans.factory.annotation.Autowired; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/service/impl/MdBaseMaterialServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/service/impl/MdBaseMaterialServiceImpl.java index 9fdd941..d73b8f4 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/service/impl/MdBaseMaterialServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/material/service/impl/MdBaseMaterialServiceImpl.java @@ -8,8 +8,8 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.wms.database.material.service.IMdBaseMaterialService; import org.nl.wms.database.material.service.dao.MdBaseMaterial; import org.nl.wms.database.material.service.dao.mapper.MdBaseMaterialMapper; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/controller/MdBaseWorkshopController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/controller/MdBaseWorkshopController.java index 07ac0b3..30ce61c 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/controller/MdBaseWorkshopController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/controller/MdBaseWorkshopController.java @@ -3,9 +3,9 @@ package org.nl.wms.database.workshop.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.wms.database.workshop.service.IMdBaseWorkshopService; import org.nl.wms.database.workshop.service.dao.MdBaseWorkshop; import org.springframework.beans.factory.annotation.Autowired; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/service/impl/MdBaseWorkshopServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/service/impl/MdBaseWorkshopServiceImpl.java index b11a793..4b3f758 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/service/impl/MdBaseWorkshopServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/database/workshop/service/impl/MdBaseWorkshopServiceImpl.java @@ -1,15 +1,13 @@ package org.nl.wms.database.workshop.service.impl; import cn.hutool.core.date.DateUtil; -import cn.hutool.core.util.IdUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.utils.SecurityUtils; import org.nl.wms.database.workshop.service.IMdBaseWorkshopService; import org.nl.wms.database.workshop.service.dao.mapper.MdBaseWorkshopMapper; import org.nl.wms.database.workshop.service.dao.MdBaseWorkshop; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/controller/PdmBdWorkorderController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/controller/PdmBdWorkorderController.java index fb756cb..86ebf04 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/controller/PdmBdWorkorderController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/controller/PdmBdWorkorderController.java @@ -3,9 +3,9 @@ package org.nl.wms.pdm.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import org.nl.wms.pdm.service.IPdmBdWorkorderService; import org.nl.wms.pdm.service.dao.PdmBdWorkorder; import org.springframework.beans.factory.annotation.Autowired; diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/service/impl/PdmBdWorkorderServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/service/impl/PdmBdWorkorderServiceImpl.java index e8de2b3..d170051 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/service/impl/PdmBdWorkorderServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/wms/pdm/service/impl/PdmBdWorkorderServiceImpl.java @@ -6,11 +6,10 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import org.nl.wms.pdm.service.IPdmBdWorkorderService; import org.nl.wms.pdm.service.dao.mapper.PdmBdWorkorderMapper; import org.nl.wms.pdm.service.dao.PdmBdWorkorder; diff --git a/nladmin-system/nlsso-server/src/main/resources/log/XgAgvDeviceDriver.xml b/nladmin-system/nlsso-server/src/main/resources/log/XgAgvDeviceDriver.xml index 42391d4..c805802 100644 --- a/nladmin-system/nlsso-server/src/main/resources/log/XgAgvDeviceDriver.xml +++ b/nladmin-system/nlsso-server/src/main/resources/log/XgAgvDeviceDriver.xml @@ -2,7 +2,7 @@ - + diff --git a/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/Controller.ftl b/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/Controller.ftl index eab2fff..5962e5c 100644 --- a/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/Controller.ftl +++ b/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/Controller.ftl @@ -3,9 +3,9 @@ package ${package}.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; -import org.nl.common.TableDataInfo; +import org.nl.common.base.TableDataInfo; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.logging.annotation.Log; +import org.nl.common.logging.annotation.Log; import ${package}.service.I${className}Service; import ${package}.service.dao.${className}; import org.springframework.beans.factory.annotation.Autowired; diff --git a/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/ServiceImpl.ftl b/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/ServiceImpl.ftl index eeabbf8..1b20b49 100644 --- a/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/ServiceImpl.ftl +++ b/nladmin-system/nlsso-server/src/main/resources/template/generator/admin/ServiceImpl.ftl @@ -9,8 +9,8 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.nl.common.domain.query.PageQuery; -import org.nl.modules.common.exception.BadRequestException; -import org.nl.modules.common.utils.SecurityUtils; +import org.nl.common.exception.BadRequestException; +import org.nl.common.utils.SecurityUtils; import ${package}.service.I${className}Service; import ${package}.service.dao.mapper.${className}Mapper; import ${package}.service.dao.${className}; diff --git a/nladmin-ui/src/views/system/logicflow/image/index.vue b/nladmin-ui/src/views/system/logicflow/image/index.vue index 713f1e6..81ad6ea 100644 --- a/nladmin-ui/src/views/system/logicflow/image/index.vue +++ b/nladmin-ui/src/views/system/logicflow/image/index.vue @@ -268,7 +268,8 @@ export default { return bool }, handleSuccess(response) { - this.form.image_code = response.realName + console.log(response) + this.form.image_code = response.real_name this.form.image_name = response.path }, handleChange(value) { diff --git a/nladmin-ui/src/views/system/logicflow/index.vue b/nladmin-ui/src/views/system/logicflow/index.vue index 90c77e1..91d8455 100644 --- a/nladmin-ui/src/views/system/logicflow/index.vue +++ b/nladmin-ui/src/views/system/logicflow/index.vue @@ -42,9 +42,9 @@ - + - +