ids) {
+ service.removeBatchByIds(ids);
+ return GlobalResponse.success("${table.comment}删除(多个条目)!");
+ }
+}
+#if>
diff --git a/cwzoonest/cwzoonest-api/target/classes/ftl/entity.ftl b/cwzoonest/cwzoonest-api/target/classes/ftl/entity.ftl
new file mode 100644
index 00000000..919ffb1b
--- /dev/null
+++ b/cwzoonest/cwzoonest-api/target/classes/ftl/entity.ftl
@@ -0,0 +1,162 @@
+package ${package.Entity};
+
+<#list table.importPackages as pkg>
+ import ${pkg};
+#list>
+<#if springdoc>
+ import io.swagger.v3.oas.annotations.media.Schema;
+<#elseif swagger>
+ import io.swagger.annotations.ApiModel;
+ import io.swagger.annotations.ApiModelProperty;
+#if>
+<#if entityLombokModel>
+ import lombok.Getter;
+ import lombok.Setter;
+ import lombok.ToString;
+ <#if chainModel>
+ import lombok.experimental.Accessors;
+ #if>
+#if>
+
+/**
+*
+ * ${table.comment!}
+ *
+*
+* @author ${author}
+* @since ${date}
+*/
+<#if entityLombokModel>
+ @Getter
+ @Setter
+ @ToString
+ <#if chainModel>
+ @Accessors(chain = true)
+ #if>
+#if>
+<#if table.convert>
+ @TableName("${schemaName}${table.name}")
+#if>
+<#if springdoc>
+ @Schema(name = "${entity}", description = "$!{table.comment}")
+<#elseif swagger>
+ @ApiModel(value = "${entity}对象", description = "${table.comment!}")
+#if>
+<#if superEntityClass??>
+ public class ${entity} extends ${superEntityClass}<#if activeRecord><${entity}>#if> {
+<#elseif activeRecord>
+ public class ${entity} extends Model<${entity}> {
+<#elseif entitySerialVersionUID>
+ public class ${entity} implements Serializable {
+<#else>
+ public class ${entity} {
+#if>
+<#if entitySerialVersionUID>
+
+ private static final long serialVersionUID = 1L;
+#if>
+<#-- ---------- BEGIN 字段循环遍历 ---------->
+<#list table.fields as field>
+ <#if field.keyFlag>
+ <#assign keyPropertyName="${field.propertyName}"/>
+ #if>
+
+ <#if field.comment!?length gt 0>
+ <#if springdoc>
+ @Schema(description = "${field.comment}")
+ <#elseif swagger>
+ @ApiModelProperty("${field.comment}")
+ <#else>
+ /**
+ * ${field.comment}
+ */
+ #if>
+ #if>
+ <#if field.keyFlag>
+ <#-- 主键 -->
+ <#if field.keyIdentityFlag>
+ @TableId(value = "${field.annotationColumnName}", type = IdType.AUTO)
+ <#elseif idType??>
+ @TableId(value = "${field.annotationColumnName}", type = IdType.${idType})
+ <#elseif field.convert>
+ @TableId("${field.annotationColumnName}")
+ #if>
+ <#-- 普通字段 -->
+ <#elseif field.fill??>
+ <#-- ----- 存在字段填充设置 ----->
+ <#if field.convert>
+ @TableField(value = "${field.annotationColumnName}", fill = FieldFill.${field.fill})
+ <#else>
+ @TableField(fill = FieldFill.${field.fill})
+ #if>
+ <#elseif field.convert>
+ @TableField("${field.annotationColumnName}")
+ #if>
+<#-- 乐观锁注解 -->
+ <#if field.versionField>
+ @Version
+ #if>
+<#-- 逻辑删除注解 -->
+ <#if field.logicDeleteField>
+ @TableLogic
+ #if>
+ private ${field.propertyType} ${field.propertyName};
+#list>
+<#------------ END 字段循环遍历 ---------->
+<#if !entityLombokModel>
+ <#list table.fields as field>
+ <#if field.propertyType == "Boolean" || field.propertyType == "boolean">
+ <#assign getprefix="is"/>
+ <#else>
+ <#assign getprefix="get"/>
+ #if>
+
+ public ${field.propertyType} ${getprefix}${field.capitalName}() {
+ return ${field.propertyName};
+ }
+
+ <#if chainModel>
+ public ${entity} set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
+ <#else>
+ public void set${field.capitalName}(${field.propertyType} ${field.propertyName}) {
+ #if>
+ this.${field.propertyName} = ${field.propertyName};
+ <#if chainModel>
+ return this;
+ #if>
+ }
+ #list>
+#if>
+<#if entityColumnConstant>
+ <#list table.fields as field>
+
+ public static final String ${field.name?upper_case} = "${field.name}";
+ #list>
+#if>
+<#if activeRecord>
+
+ @Override
+ public Serializable pkVal() {
+ <#if keyPropertyName??>
+ return this.${keyPropertyName};
+ <#else>
+ return null;
+ #if>
+ }
+#if>
+<#if !entityLombokModel>
+
+ @Override
+ public String toString() {
+ return "${entity}{" +
+ <#list table.fields as field>
+ <#if field_index==0>
+ "${field.propertyName} = " + ${field.propertyName} +
+ <#else>
+ ", ${field.propertyName} = " + ${field.propertyName} +
+ #if>
+ #list>
+ "}";
+ }
+#if>
+}
diff --git a/cwzoonest/cwzoonest-api/target/classes/rateLimiter.lua b/cwzoonest/cwzoonest-api/target/classes/rateLimiter.lua
new file mode 100644
index 00000000..3c95cd62
--- /dev/null
+++ b/cwzoonest/cwzoonest-api/target/classes/rateLimiter.lua
@@ -0,0 +1,19 @@
+-- 限流Lua脚本
+-- KEYS[1] 是键,ARGV[1] 是限流次数,ARGV[2] 是限流时间
+local key = KEYS[1]
+local limit = tonumber(ARGV[1])
+local timeout = tonumber(ARGV[2])
+
+-- 当前计数
+local current = redis.call('incr', key)
+if current == 1 then
+ -- 如果是第一次访问,设置过期时间
+ redis.call('expire', key, timeout)
+ return 1
+end
+
+-- 检查是否超过限流
+if current > limit then
+ return 0
+end
+return 1
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Anonymous.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Anonymous.class
new file mode 100644
index 00000000..19369b29
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Anonymous.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataScope.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataScope.class
new file mode 100644
index 00000000..bd383ee2
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataScope.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataSource.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataSource.class
new file mode 100644
index 00000000..10c14349
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/DataSource.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$ColumnType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$ColumnType.class
new file mode 100644
index 00000000..17131fe4
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$ColumnType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$Type.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$Type.class
new file mode 100644
index 00000000..203b3d58
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel$Type.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel.class
new file mode 100644
index 00000000..ae98fbf9
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excel.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excels.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excels.class
new file mode 100644
index 00000000..405299b1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Excels.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Log.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Log.class
new file mode 100644
index 00000000..0a399a6a
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/Log.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RateLimiter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RateLimiter.class
new file mode 100644
index 00000000..ec7334dd
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RateLimiter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RepeatSubmit.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RepeatSubmit.class
new file mode 100644
index 00000000..2f24023c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/annotation/RepeatSubmit.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/config/RuoYiConfig.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/config/RuoYiConfig.class
new file mode 100644
index 00000000..73beabd7
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/config/RuoYiConfig.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/CacheConstants.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/CacheConstants.class
new file mode 100644
index 00000000..9577c5ef
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/CacheConstants.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/Constants.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/Constants.class
new file mode 100644
index 00000000..e125e5e6
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/Constants.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/GenConstants.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/GenConstants.class
new file mode 100644
index 00000000..604c87c5
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/GenConstants.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/HttpStatus.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/HttpStatus.class
new file mode 100644
index 00000000..b95fa0ff
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/HttpStatus.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants$Status.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants$Status.class
new file mode 100644
index 00000000..22a72501
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants$Status.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants.class
new file mode 100644
index 00000000..1fefa3fd
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/ScheduleConstants.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/UserConstants.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/UserConstants.class
new file mode 100644
index 00000000..0e736734
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/constant/UserConstants.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController$1.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController$1.class
new file mode 100644
index 00000000..5f87cfd2
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController$1.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController.class
new file mode 100644
index 00000000..d1745ea9
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/controller/BaseController.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/AjaxResult.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/AjaxResult.class
new file mode 100644
index 00000000..c9cd0a3e
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/AjaxResult.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/BaseEntity.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/BaseEntity.class
new file mode 100644
index 00000000..40468fde
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/BaseEntity.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/R.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/R.class
new file mode 100644
index 00000000..1fcfc390
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/R.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeEntity.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeEntity.class
new file mode 100644
index 00000000..77a857b7
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeEntity.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeSelect.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeSelect.class
new file mode 100644
index 00000000..57629b5a
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/TreeSelect.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDept.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDept.class
new file mode 100644
index 00000000..2f4c5909
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDept.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictData.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictData.class
new file mode 100644
index 00000000..5e3f4cc3
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictData.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictType.class
new file mode 100644
index 00000000..e9b521cf
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysDictType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysMenu.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysMenu.class
new file mode 100644
index 00000000..97f36499
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysMenu.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysRole.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysRole.class
new file mode 100644
index 00000000..a4a4b3ba
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysRole.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysUser.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysUser.class
new file mode 100644
index 00000000..972cf956
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/entity/SysUser.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginBody.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginBody.class
new file mode 100644
index 00000000..07867fcd
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginBody.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginUser.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginUser.class
new file mode 100644
index 00000000..104c6269
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/LoginUser.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/RegisterBody.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/RegisterBody.class
new file mode 100644
index 00000000..3327712b
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/domain/model/RegisterBody.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/PageDomain.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/PageDomain.class
new file mode 100644
index 00000000..6931d726
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/PageDomain.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableDataInfo.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableDataInfo.class
new file mode 100644
index 00000000..37819720
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableDataInfo.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableSupport.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableSupport.class
new file mode 100644
index 00000000..3ddb6e52
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/page/TableSupport.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/redis/RedisCache.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/redis/RedisCache.class
new file mode 100644
index 00000000..83989280
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/redis/RedisCache.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/CharsetKit.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/CharsetKit.class
new file mode 100644
index 00000000..9640fc46
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/CharsetKit.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/Convert.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/Convert.class
new file mode 100644
index 00000000..ce8edf0f
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/Convert.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/StrFormatter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/StrFormatter.class
new file mode 100644
index 00000000..e24914d4
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/core/text/StrFormatter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessStatus.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessStatus.class
new file mode 100644
index 00000000..6be16afd
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessStatus.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessType.class
new file mode 100644
index 00000000..459f440c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/BusinessType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/DataSourceType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/DataSourceType.class
new file mode 100644
index 00000000..7480fa72
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/DataSourceType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/HttpMethod.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/HttpMethod.class
new file mode 100644
index 00000000..2512832e
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/HttpMethod.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/LimitType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/LimitType.class
new file mode 100644
index 00000000..0ec9c7f1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/LimitType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/OperatorType.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/OperatorType.class
new file mode 100644
index 00000000..4d011703
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/OperatorType.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/UserStatus.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/UserStatus.class
new file mode 100644
index 00000000..1a657e0c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/enums/UserStatus.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/DemoModeException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/DemoModeException.class
new file mode 100644
index 00000000..15413357
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/DemoModeException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/GlobalException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/GlobalException.class
new file mode 100644
index 00000000..430c5e3b
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/GlobalException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/ServiceException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/ServiceException.class
new file mode 100644
index 00000000..3a52a1ed
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/ServiceException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/UtilException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/UtilException.class
new file mode 100644
index 00000000..1897eafe
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/UtilException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/base/BaseException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/base/BaseException.class
new file mode 100644
index 00000000..dac24b29
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/base/BaseException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileException.class
new file mode 100644
index 00000000..cc57a724
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileNameLengthLimitExceededException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileNameLengthLimitExceededException.class
new file mode 100644
index 00000000..b243f57d
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileNameLengthLimitExceededException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileSizeLimitExceededException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileSizeLimitExceededException.class
new file mode 100644
index 00000000..146d6201
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileSizeLimitExceededException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileUploadException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileUploadException.class
new file mode 100644
index 00000000..819a4d67
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/FileUploadException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidFlashExtensionException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidFlashExtensionException.class
new file mode 100644
index 00000000..60bec25c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidFlashExtensionException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidImageExtensionException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidImageExtensionException.class
new file mode 100644
index 00000000..190158e9
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidImageExtensionException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidMediaExtensionException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidMediaExtensionException.class
new file mode 100644
index 00000000..0739427e
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidMediaExtensionException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidVideoExtensionException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidVideoExtensionException.class
new file mode 100644
index 00000000..60998792
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException$InvalidVideoExtensionException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException.class
new file mode 100644
index 00000000..1a8e0232
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/file/InvalidExtensionException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException$Code.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException$Code.class
new file mode 100644
index 00000000..1516cff1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException$Code.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException.class
new file mode 100644
index 00000000..e3d28f17
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/job/TaskException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/BlackListException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/BlackListException.class
new file mode 100644
index 00000000..ac5ddc9f
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/BlackListException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaException.class
new file mode 100644
index 00000000..5e9d38b6
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaExpireException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaExpireException.class
new file mode 100644
index 00000000..4f107216
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/CaptchaExpireException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserException.class
new file mode 100644
index 00000000..0f98ad27
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserNotExistsException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserNotExistsException.class
new file mode 100644
index 00000000..4e077853
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserNotExistsException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordNotMatchException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordNotMatchException.class
new file mode 100644
index 00000000..589dcdf2
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordNotMatchException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordRetryLimitExceedException.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordRetryLimitExceedException.class
new file mode 100644
index 00000000..415a69b1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/exception/user/UserPasswordRetryLimitExceedException.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/PropertyPreExcludeFilter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/PropertyPreExcludeFilter.class
new file mode 100644
index 00000000..0df716dc
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/PropertyPreExcludeFilter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatableFilter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatableFilter.class
new file mode 100644
index 00000000..d318a252
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatableFilter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper$1.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper$1.class
new file mode 100644
index 00000000..92a74f3a
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper$1.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper.class
new file mode 100644
index 00000000..256ab276
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/RepeatedlyRequestWrapper.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssFilter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssFilter.class
new file mode 100644
index 00000000..6883b0e0
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssFilter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper$1.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper$1.class
new file mode 100644
index 00000000..d095db9c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper$1.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper.class
new file mode 100644
index 00000000..f3dccb9c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/filter/XssHttpServletRequestWrapper.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Arith.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Arith.class
new file mode 100644
index 00000000..da5494a2
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Arith.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DateUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DateUtils.class
new file mode 100644
index 00000000..949f6396
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DateUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DictUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DictUtils.class
new file mode 100644
index 00000000..ced63320
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/DictUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ExceptionUtil.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ExceptionUtil.class
new file mode 100644
index 00000000..24ad4d1d
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ExceptionUtil.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/LogUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/LogUtils.class
new file mode 100644
index 00000000..06c4a874
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/LogUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/MessageUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/MessageUtils.class
new file mode 100644
index 00000000..787c23de
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/MessageUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/PageUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/PageUtils.class
new file mode 100644
index 00000000..6231386e
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/PageUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/SecurityUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/SecurityUtils.class
new file mode 100644
index 00000000..5f91ebf8
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/SecurityUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ServletUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ServletUtils.class
new file mode 100644
index 00000000..49e71cd2
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ServletUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/StringUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/StringUtils.class
new file mode 100644
index 00000000..bd62e76c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/StringUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Threads.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Threads.class
new file mode 100644
index 00000000..6ef78ad1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/Threads.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanUtils.class
new file mode 100644
index 00000000..8ac4ff14
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanValidators.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanValidators.class
new file mode 100644
index 00000000..df7eaddf
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/bean/BeanValidators.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileTypeUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileTypeUtils.class
new file mode 100644
index 00000000..bcd6a53c
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileTypeUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUploadUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUploadUtils.class
new file mode 100644
index 00000000..ef9cc44a
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUploadUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUtils.class
new file mode 100644
index 00000000..2ba8dea3
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/FileUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/ImageUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/ImageUtils.class
new file mode 100644
index 00000000..6b6d653d
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/ImageUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/MimeTypeUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/MimeTypeUtils.class
new file mode 100644
index 00000000..7bb9a8b1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/file/MimeTypeUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/EscapeUtil.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/EscapeUtil.class
new file mode 100644
index 00000000..8d5567e1
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/EscapeUtil.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/HTMLFilter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/HTMLFilter.class
new file mode 100644
index 00000000..6ca62c23
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/html/HTMLFilter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpHelper.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpHelper.class
new file mode 100644
index 00000000..cf18eba4
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpHelper.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$1.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$1.class
new file mode 100644
index 00000000..2fa22f23
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$1.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyHostnameVerifier.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyHostnameVerifier.class
new file mode 100644
index 00000000..4c673acb
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyHostnameVerifier.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyTrustManager.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyTrustManager.class
new file mode 100644
index 00000000..1acf4634
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils$TrustAnyTrustManager.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils.class
new file mode 100644
index 00000000..0d8cfabf
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/http/HttpUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/AddressUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/AddressUtils.class
new file mode 100644
index 00000000..d1cb3e21
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/AddressUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/IpUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/IpUtils.class
new file mode 100644
index 00000000..a39ad2ec
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/ip/IpUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelHandlerAdapter.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelHandlerAdapter.class
new file mode 100644
index 00000000..cfe7ae4b
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelHandlerAdapter.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelUtil.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelUtil.class
new file mode 100644
index 00000000..ef4e74d5
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/poi/ExcelUtil.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/reflect/ReflectUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/reflect/ReflectUtils.class
new file mode 100644
index 00000000..efc3b961
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/reflect/ReflectUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Base64.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Base64.class
new file mode 100644
index 00000000..178d20ef
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Base64.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Md5Utils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Md5Utils.class
new file mode 100644
index 00000000..38e3eb0d
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sign/Md5Utils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/spring/SpringUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/spring/SpringUtils.class
new file mode 100644
index 00000000..72903303
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/spring/SpringUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sql/SqlUtil.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sql/SqlUtil.class
new file mode 100644
index 00000000..37bf1723
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/sql/SqlUtil.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/IdUtils.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/IdUtils.class
new file mode 100644
index 00000000..663e9abd
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/IdUtils.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/Seq.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/Seq.class
new file mode 100644
index 00000000..77b9fe6f
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/Seq.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID$Holder.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID$Holder.class
new file mode 100644
index 00000000..ece9b611
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID$Holder.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID.class
new file mode 100644
index 00000000..cad3d374
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/utils/uuid/UUID.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/Xss.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/Xss.class
new file mode 100644
index 00000000..5c2134f5
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/Xss.class differ
diff --git a/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/XssValidator.class b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/XssValidator.class
new file mode 100644
index 00000000..de8a0ff7
Binary files /dev/null and b/cwzoonest/cwzoonest-common/target/classes/dev/cwzoonest/cn/common/xss/XssValidator.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataScopeAspect.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataScopeAspect.class
new file mode 100644
index 00000000..c74cd987
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataScopeAspect.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataSourceAspect.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataSourceAspect.class
new file mode 100644
index 00000000..77606b2c
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/DataSourceAspect.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/LogAspect.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/LogAspect.class
new file mode 100644
index 00000000..44c0fa6c
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/LogAspect.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/RateLimiterAspect.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/RateLimiterAspect.class
new file mode 100644
index 00000000..d8ad2755
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/aspectj/RateLimiterAspect.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ApplicationConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ApplicationConfig.class
new file mode 100644
index 00000000..333bdcd6
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ApplicationConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/CaptchaConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/CaptchaConfig.class
new file mode 100644
index 00000000..cefbdf11
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/CaptchaConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig$1.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig$1.class
new file mode 100644
index 00000000..c1f4a0a8
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig$1.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig.class
new file mode 100644
index 00000000..9b6a07a8
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/DruidConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FastJson2JsonRedisSerializer.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FastJson2JsonRedisSerializer.class
new file mode 100644
index 00000000..dd01e456
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FastJson2JsonRedisSerializer.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FilterConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FilterConfig.class
new file mode 100644
index 00000000..1e35e572
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/FilterConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/KaptchaTextCreator.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/KaptchaTextCreator.class
new file mode 100644
index 00000000..4cd90f60
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/KaptchaTextCreator.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/MybatisPlusConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/MybatisPlusConfig.class
new file mode 100644
index 00000000..eee9bbe8
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/MybatisPlusConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/RedisConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/RedisConfig.class
new file mode 100644
index 00000000..c6421d36
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/RedisConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ResourcesConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ResourcesConfig.class
new file mode 100644
index 00000000..31bf0380
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ResourcesConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/SecurityConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/SecurityConfig.class
new file mode 100644
index 00000000..64a54ec5
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/SecurityConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ServerConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ServerConfig.class
new file mode 100644
index 00000000..f6e3b448
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ServerConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig$1.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig$1.class
new file mode 100644
index 00000000..12a75019
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig$1.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig.class
new file mode 100644
index 00000000..5679327c
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/ThreadPoolConfig.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/DruidProperties.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/DruidProperties.class
new file mode 100644
index 00000000..4d8e4512
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/DruidProperties.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/PermitAllUrlProperties.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/PermitAllUrlProperties.class
new file mode 100644
index 00000000..89a0d5fa
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/config/properties/PermitAllUrlProperties.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSource.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSource.class
new file mode 100644
index 00000000..6e74eae7
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSource.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSourceContextHolder.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSourceContextHolder.class
new file mode 100644
index 00000000..67611a8a
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/datasource/DynamicDataSourceContextHolder.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/RepeatSubmitInterceptor.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/RepeatSubmitInterceptor.class
new file mode 100644
index 00000000..905cf11c
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/RepeatSubmitInterceptor.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/impl/SameUrlDataInterceptor.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/impl/SameUrlDataInterceptor.class
new file mode 100644
index 00000000..355988ff
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/interceptor/impl/SameUrlDataInterceptor.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/AsyncManager.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/AsyncManager.class
new file mode 100644
index 00000000..469f34f0
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/AsyncManager.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/ShutdownManager.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/ShutdownManager.class
new file mode 100644
index 00000000..626899d2
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/ShutdownManager.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$1.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$1.class
new file mode 100644
index 00000000..c956231d
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$1.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$2.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$2.class
new file mode 100644
index 00000000..eb39db1f
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory$2.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory.class
new file mode 100644
index 00000000..e0bb69e6
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/manager/factory/AsyncFactory.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/AuthenticationContextHolder.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/AuthenticationContextHolder.class
new file mode 100644
index 00000000..655ad83d
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/AuthenticationContextHolder.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/PermissionContextHolder.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/PermissionContextHolder.class
new file mode 100644
index 00000000..719e9a3d
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/context/PermissionContextHolder.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/filter/JwtAuthenticationTokenFilter.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/filter/JwtAuthenticationTokenFilter.class
new file mode 100644
index 00000000..2694ce43
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/filter/JwtAuthenticationTokenFilter.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/AuthenticationEntryPointImpl.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/AuthenticationEntryPointImpl.class
new file mode 100644
index 00000000..57e3f2b6
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/AuthenticationEntryPointImpl.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/LogoutSuccessHandlerImpl.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/LogoutSuccessHandlerImpl.class
new file mode 100644
index 00000000..476ac74b
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/security/handle/LogoutSuccessHandlerImpl.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/Server.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/Server.class
new file mode 100644
index 00000000..225ad166
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/Server.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Cpu.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Cpu.class
new file mode 100644
index 00000000..28c7bc17
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Cpu.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Jvm.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Jvm.class
new file mode 100644
index 00000000..331342ed
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Jvm.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Mem.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Mem.class
new file mode 100644
index 00000000..74e4b1df
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Mem.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Sys.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Sys.class
new file mode 100644
index 00000000..418e4b8c
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/Sys.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/SysFile.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/SysFile.class
new file mode 100644
index 00000000..a7d53bd2
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/domain/server/SysFile.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/exception/GlobalExceptionHandler.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/exception/GlobalExceptionHandler.class
new file mode 100644
index 00000000..f719ee4b
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/exception/GlobalExceptionHandler.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/PermissionService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/PermissionService.class
new file mode 100644
index 00000000..1b617261
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/PermissionService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysLoginService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysLoginService.class
new file mode 100644
index 00000000..f38e199e
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysLoginService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPasswordService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPasswordService.class
new file mode 100644
index 00000000..58dc3c4d
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPasswordService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPermissionService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPermissionService.class
new file mode 100644
index 00000000..01bfa7c9
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysPermissionService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysRegisterService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysRegisterService.class
new file mode 100644
index 00000000..c45952ce
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/SysRegisterService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/TokenService.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/TokenService.class
new file mode 100644
index 00000000..32ce1815
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/TokenService.class differ
diff --git a/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/UserDetailsServiceImpl.class b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/UserDetailsServiceImpl.class
new file mode 100644
index 00000000..9ef37e3e
Binary files /dev/null and b/cwzoonest/cwzoonest-framework/target/classes/dev/cwzoonest/cn/framework/web/service/UserDetailsServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/config/GenConfig.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/config/GenConfig.class
new file mode 100644
index 00000000..c1cdff68
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/config/GenConfig.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/controller/GenController.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/controller/GenController.class
new file mode 100644
index 00000000..c83b1937
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/controller/GenController.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTable.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTable.class
new file mode 100644
index 00000000..6f63dbb8
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTable.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTableColumn.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTableColumn.class
new file mode 100644
index 00000000..3427ed6f
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/domain/GenTableColumn.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableColumnMapper.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableColumnMapper.class
new file mode 100644
index 00000000..5d0fb063
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableColumnMapper.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableMapper.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableMapper.class
new file mode 100644
index 00000000..79aa75fd
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/mapper/GenTableMapper.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableColumnServiceImpl.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableColumnServiceImpl.class
new file mode 100644
index 00000000..99ca9952
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableColumnServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableServiceImpl.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableServiceImpl.class
new file mode 100644
index 00000000..daf38b04
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/GenTableServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableColumnService.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableColumnService.class
new file mode 100644
index 00000000..e32c7df2
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableColumnService.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableService.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableService.class
new file mode 100644
index 00000000..74ebb7da
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/service/IGenTableService.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/GenUtils.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/GenUtils.class
new file mode 100644
index 00000000..fd1d5c3a
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/GenUtils.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityInitializer.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityInitializer.class
new file mode 100644
index 00000000..7832a147
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityInitializer.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityUtils.class b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityUtils.class
new file mode 100644
index 00000000..bc74ec8d
Binary files /dev/null and b/cwzoonest/cwzoonest-generator/target/classes/dev/cwzoonest/cn/generator/util/VelocityUtils.class differ
diff --git a/cwzoonest/cwzoonest-generator/target/classes/generator.yml b/cwzoonest/cwzoonest-generator/target/classes/generator.yml
new file mode 100644
index 00000000..877dabc9
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/generator.yml
@@ -0,0 +1,10 @@
+# 代码生成
+gen:
+ # 作者
+ author: linghe
+ # 默认生成包路径 system 需改成自己的模块名称 如 system monitor tool
+ packageName: dev.cwzoonest.cn.system
+ # 自动去除表前缀,默认是false
+ autoRemovePre: true
+ # 表前缀(生成类名不会包含表前缀,多个用逗号分隔)
+ tablePrefix: sys_
diff --git a/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableColumnMapper.xml b/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableColumnMapper.xml
new file mode 100644
index 00000000..250d1118
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableColumnMapper.xml
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select column_id, table_id, column_name, column_comment, column_type, java_type, java_field, is_pk, is_increment, is_required, is_insert, is_edit, is_list, is_query, query_type, html_type, dict_type, sort, create_by, create_time, update_by, update_time from gen_table_column
+
+
+
+
+
+
+
+ insert into gen_table_column (
+ table_id,
+ column_name,
+ column_comment,
+ column_type,
+ java_type,
+ java_field,
+ is_pk,
+ is_increment,
+ is_required,
+ is_insert,
+ is_edit,
+ is_list,
+ is_query,
+ query_type,
+ html_type,
+ dict_type,
+ sort,
+ create_by,
+ create_time
+ )values(
+ #{tableId},
+ #{columnName},
+ #{columnComment},
+ #{columnType},
+ #{javaType},
+ #{javaField},
+ #{isPk},
+ #{isIncrement},
+ #{isRequired},
+ #{isInsert},
+ #{isEdit},
+ #{isList},
+ #{isQuery},
+ #{queryType},
+ #{htmlType},
+ #{dictType},
+ #{sort},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ update gen_table_column
+
+ column_comment = #{columnComment},
+ java_type = #{javaType},
+ java_field = #{javaField},
+ is_insert = #{isInsert},
+ is_edit = #{isEdit},
+ is_list = #{isList},
+ is_query = #{isQuery},
+ is_required = #{isRequired},
+ query_type = #{queryType},
+ html_type = #{htmlType},
+ dict_type = #{dictType},
+ sort = #{sort},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where column_id = #{columnId}
+
+
+
+ delete from gen_table_column where table_id in
+
+ #{tableId}
+
+
+
+
+ delete from gen_table_column where column_id in
+
+ #{item.columnId}
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableMapper.xml b/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableMapper.xml
new file mode 100644
index 00000000..15b885ca
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/mapper/generator/GenTableMapper.xml
@@ -0,0 +1,206 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select table_id, table_name, table_comment, sub_table_name, sub_table_fk_name, class_name, tpl_category, tpl_web_type, package_name, module_name, business_name, function_name, function_author, gen_type, gen_path, options, create_by, create_time, update_by, update_time, remark from gen_table
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into gen_table (
+ table_name,
+ table_comment,
+ class_name,
+ tpl_category,
+ tpl_web_type,
+ package_name,
+ module_name,
+ business_name,
+ function_name,
+ function_author,
+ gen_type,
+ gen_path,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{tableName},
+ #{tableComment},
+ #{className},
+ #{tplCategory},
+ #{tplWebType},
+ #{packageName},
+ #{moduleName},
+ #{businessName},
+ #{functionName},
+ #{functionAuthor},
+ #{genType},
+ #{genPath},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ update gen_table
+
+ table_name = #{tableName},
+ table_comment = #{tableComment},
+ sub_table_name = #{subTableName},
+ sub_table_fk_name = #{subTableFkName},
+ class_name = #{className},
+ function_author = #{functionAuthor},
+ gen_type = #{genType},
+ gen_path = #{genPath},
+ tpl_category = #{tplCategory},
+ tpl_web_type = #{tplWebType},
+ package_name = #{packageName},
+ module_name = #{moduleName},
+ business_name = #{businessName},
+ function_name = #{functionName},
+ options = #{options},
+ update_by = #{updateBy},
+ remark = #{remark},
+ update_time = sysdate()
+
+ where table_id = #{tableId}
+
+
+
+ delete from gen_table where table_id in
+
+ #{tableId}
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/controller.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/controller.java.vm
new file mode 100644
index 00000000..2e1c79fa
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/controller.java.vm
@@ -0,0 +1,115 @@
+package ${packageName}.controller;
+
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+import com.eqis.dev.common.annotation.Log;
+import com.eqis.dev.common.core.controller.BaseController;
+import com.eqis.dev.common.core.domain.AjaxResult;
+import com.eqis.dev.common.enums.BusinessType;
+import ${packageName}.domain.${ClassName};
+import ${packageName}.service.I${ClassName}Service;
+import com.eqis.dev.common.utils.poi.ExcelUtil;
+#if($table.crud || $table.sub)
+import com.eqis.dev.common.core.page.TableDataInfo;
+#elseif($table.tree)
+#end
+
+/**
+ * ${functionName}Controller
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+@RestController
+@RequestMapping("/${moduleName}/${businessName}")
+public class ${ClassName}Controller extends BaseController
+{
+ @Autowired
+ private I${ClassName}Service ${className}Service;
+
+ /**
+ * 查询${functionName}列表
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:list')")
+ @GetMapping("/list")
+#if($table.crud || $table.sub)
+ public TableDataInfo list(${ClassName} ${className})
+ {
+ startPage();
+ List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
+ return getDataTable(list);
+ }
+#elseif($table.tree)
+ public AjaxResult list(${ClassName} ${className})
+ {
+ List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
+ return success(list);
+ }
+#end
+
+ /**
+ * 导出${functionName}列表
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:export')")
+ @Log(title = "${functionName}", businessType = BusinessType.EXPORT)
+ @PostMapping("/export")
+ public void export(HttpServletResponse response, ${ClassName} ${className})
+ {
+ List<${ClassName}> list = ${className}Service.select${ClassName}List(${className});
+ ExcelUtil<${ClassName}> util = new ExcelUtil<${ClassName}>(${ClassName}.class);
+ util.exportExcel(response, list, "${functionName}数据");
+ }
+
+ /**
+ * 获取${functionName}详细信息
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:query')")
+ @GetMapping(value = "/{${pkColumn.javaField}}")
+ public AjaxResult getInfo(@PathVariable("${pkColumn.javaField}") ${pkColumn.javaType} ${pkColumn.javaField})
+ {
+ return success(${className}Service.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField}));
+ }
+
+ /**
+ * 新增${functionName}
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:add')")
+ @Log(title = "${functionName}", businessType = BusinessType.INSERT)
+ @PostMapping
+ public AjaxResult add(@RequestBody ${ClassName} ${className})
+ {
+ return toAjax(${className}Service.insert${ClassName}(${className}));
+ }
+
+ /**
+ * 修改${functionName}
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:edit')")
+ @Log(title = "${functionName}", businessType = BusinessType.UPDATE)
+ @PutMapping
+ public AjaxResult edit(@RequestBody ${ClassName} ${className})
+ {
+ return toAjax(${className}Service.update${ClassName}(${className}));
+ }
+
+ /**
+ * 删除${functionName}
+ */
+ @PreAuthorize("@ss.hasPermi('${permissionPrefix}:remove')")
+ @Log(title = "${functionName}", businessType = BusinessType.DELETE)
+ @DeleteMapping("/{${pkColumn.javaField}s}")
+ public AjaxResult remove(@PathVariable ${pkColumn.javaType}[] ${pkColumn.javaField}s)
+ {
+ return toAjax(${className}Service.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s));
+ }
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/domain.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/domain.java.vm
new file mode 100644
index 00000000..17aa1b10
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/domain.java.vm
@@ -0,0 +1,105 @@
+package ${packageName}.domain;
+
+#foreach ($import in $importList)
+import ${import};
+#end
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.eqis.dev.common.annotation.Excel;
+#if($table.crud || $table.sub)
+import com.eqis.dev.common.core.domain.BaseEntity;
+#elseif($table.tree)
+import com.eqis.dev.common.core.domain.TreeEntity;
+#end
+
+/**
+ * ${functionName}对象 ${tableName}
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+#if($table.crud || $table.sub)
+#set($Entity="BaseEntity")
+#elseif($table.tree)
+#set($Entity="TreeEntity")
+#end
+public class ${ClassName} extends ${Entity}
+{
+ private static final long serialVersionUID = 1L;
+
+#foreach ($column in $columns)
+#if(!$table.isSuperColumn($column.javaField))
+ /** $column.columnComment */
+#if($column.list)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($parentheseIndex != -1)
+ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+#elseif($column.javaType == 'Date')
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd")
+#else
+ @Excel(name = "${comment}")
+#end
+#end
+ private $column.javaType $column.javaField;
+
+#end
+#end
+#if($table.sub)
+ /** $table.subTable.functionName信息 */
+ private List<${subClassName}> ${subclassName}List;
+
+#end
+#foreach ($column in $columns)
+#if(!$table.isSuperColumn($column.javaField))
+#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
+#set($AttrName=$column.javaField)
+#else
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#end
+ public void set${AttrName}($column.javaType $column.javaField)
+ {
+ this.$column.javaField = $column.javaField;
+ }
+
+ public $column.javaType get${AttrName}()
+ {
+ return $column.javaField;
+ }
+#end
+#end
+
+#if($table.sub)
+ public List<${subClassName}> get${subClassName}List()
+ {
+ return ${subclassName}List;
+ }
+
+ public void set${subClassName}List(List<${subClassName}> ${subclassName}List)
+ {
+ this.${subclassName}List = ${subclassName}List;
+ }
+
+#end
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+#foreach ($column in $columns)
+#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
+#set($AttrName=$column.javaField)
+#else
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#end
+ .append("${column.javaField}", get${AttrName}())
+#end
+#if($table.sub)
+ .append("${subclassName}List", get${subClassName}List())
+#end
+ .toString();
+ }
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/mapper.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/mapper.java.vm
new file mode 100644
index 00000000..5c7ed6cc
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/mapper.java.vm
@@ -0,0 +1,92 @@
+package ${packageName}.mapper;
+
+import java.util.List;
+import ${packageName}.domain.${ClassName};
+#if($table.sub)
+import ${packageName}.domain.${subClassName};
+#end
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * ${functionName}Mapper接口
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+public interface ${ClassName}Mapper extends BaseMapper<${ClassName}>
+{
+ /**
+ * 查询${functionName}
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return ${functionName}
+ */
+ public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField});
+
+ /**
+ * 查询${functionName}列表
+ *
+ * @param ${className} ${functionName}
+ * @return ${functionName}集合
+ */
+ public List<${ClassName}> select${ClassName}List(${ClassName} ${className});
+
+ /**
+ * 新增${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+ public int insert${ClassName}(${ClassName} ${className});
+
+ /**
+ * 修改${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+ public int update${ClassName}(${ClassName} ${className});
+
+ /**
+ * 删除${functionName}
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return 结果
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField});
+
+ /**
+ * 批量删除${functionName}
+ *
+ * @param ${pkColumn.javaField}s 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s);
+#if($table.sub)
+
+ /**
+ * 批量删除${subTable.functionName}
+ *
+ * @param ${pkColumn.javaField}s 需要删除的数据主键集合
+ * @return 结果
+ */
+ public int delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaType}[] ${pkColumn.javaField}s);
+
+ /**
+ * 批量新增${subTable.functionName}
+ *
+ * @param ${subclassName}List ${subTable.functionName}列表
+ * @return 结果
+ */
+ public int batch${subClassName}(List<${subClassName}> ${subclassName}List);
+
+
+ /**
+ * 通过${functionName}主键删除${subTable.functionName}信息
+ *
+ * @param ${pkColumn.javaField} ${functionName}ID
+ * @return 结果
+ */
+ public int delete${subClassName}By${subTableFkClassName}(${pkColumn.javaType} ${pkColumn.javaField});
+#end
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/service.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/service.java.vm
new file mode 100644
index 00000000..52c0bf11
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/service.java.vm
@@ -0,0 +1,62 @@
+package ${packageName}.service;
+
+import java.util.List;
+import ${packageName}.domain.${ClassName};
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * ${functionName}Service接口
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+public interface I${ClassName}Service extends IService<${ClassName}>
+{
+ /**
+ * 查询${functionName}
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return ${functionName}
+ */
+ public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField});
+
+ /**
+ * 查询${functionName}列表
+ *
+ * @param ${className} ${functionName}
+ * @return ${functionName}集合
+ */
+ public List<${ClassName}> select${ClassName}List(${ClassName} ${className});
+
+ /**
+ * 新增${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+ public int insert${ClassName}(${ClassName} ${className});
+
+ /**
+ * 修改${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+ public int update${ClassName}(${ClassName} ${className});
+
+ /**
+ * 批量删除${functionName}
+ *
+ * @param ${pkColumn.javaField}s 需要删除的${functionName}主键集合
+ * @return 结果
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s);
+
+ /**
+ * 删除${functionName}信息
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return 结果
+ */
+ public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField});
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/serviceImpl.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/serviceImpl.java.vm
new file mode 100644
index 00000000..cbc765e3
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/serviceImpl.java.vm
@@ -0,0 +1,171 @@
+package ${packageName}.service.impl;
+
+import java.util.List;
+#foreach ($column in $columns)
+#if($column.javaField == 'createTime' || $column.javaField == 'updateTime')
+import com.eqis.dev.common.utils.DateUtils;
+#break
+#end
+#end
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+#if($table.sub)
+import java.util.ArrayList;
+import com.eqis.dev.common.utils.StringUtils;
+import org.springframework.transaction.annotation.Transactional;
+import ${packageName}.domain.${subClassName};
+#end
+import ${packageName}.mapper.${ClassName}Mapper;
+import ${packageName}.domain.${ClassName};
+import ${packageName}.service.I${ClassName}Service;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import ${packageName}.mapper.${ClassName}Mapper;
+
+/**
+ * ${functionName}Service业务层处理
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+@Service
+public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper,${ClassName}> implements I${ClassName}Service
+{
+ @Autowired
+ private ${ClassName}Mapper ${className}Mapper;
+
+ /**
+ * 查询${functionName}
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return ${functionName}
+ */
+ @Override
+ public ${ClassName} select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
+ {
+ return ${className}Mapper.select${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
+ }
+
+ /**
+ * 查询${functionName}列表
+ *
+ * @param ${className} ${functionName}
+ * @return ${functionName}
+ */
+ @Override
+ public List<${ClassName}> select${ClassName}List(${ClassName} ${className})
+ {
+ return ${className}Mapper.select${ClassName}List(${className});
+ }
+
+ /**
+ * 新增${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+#if($table.sub)
+ @Transactional
+#end
+ @Override
+ public int insert${ClassName}(${ClassName} ${className})
+ {
+#foreach ($column in $columns)
+#if($column.javaField == 'createTime')
+ ${className}.setCreateTime(DateUtils.getNowDate());
+#end
+#end
+#if($table.sub)
+ int rows = ${className}Mapper.insert${ClassName}(${className});
+ insert${subClassName}(${className});
+ return rows;
+#else
+ return ${className}Mapper.insert${ClassName}(${className});
+#end
+ }
+
+ /**
+ * 修改${functionName}
+ *
+ * @param ${className} ${functionName}
+ * @return 结果
+ */
+#if($table.sub)
+ @Transactional
+#end
+ @Override
+ public int update${ClassName}(${ClassName} ${className})
+ {
+#foreach ($column in $columns)
+#if($column.javaField == 'updateTime')
+ ${className}.setUpdateTime(DateUtils.getNowDate());
+#end
+#end
+#if($table.sub)
+ ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${className}.get${pkColumn.capJavaField}());
+ insert${subClassName}(${className});
+#end
+ return ${className}Mapper.update${ClassName}(${className});
+ }
+
+ /**
+ * 批量删除${functionName}
+ *
+ * @param ${pkColumn.javaField}s 需要删除的${functionName}主键
+ * @return 结果
+ */
+#if($table.sub)
+ @Transactional
+#end
+ @Override
+ public int delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaType}[] ${pkColumn.javaField}s)
+ {
+#if($table.sub)
+ ${className}Mapper.delete${subClassName}By${subTableFkClassName}s(${pkColumn.javaField}s);
+#end
+ return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}s(${pkColumn.javaField}s);
+ }
+
+ /**
+ * 删除${functionName}信息
+ *
+ * @param ${pkColumn.javaField} ${functionName}主键
+ * @return 结果
+ */
+#if($table.sub)
+ @Transactional
+#end
+ @Override
+ public int delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaType} ${pkColumn.javaField})
+ {
+#if($table.sub)
+ ${className}Mapper.delete${subClassName}By${subTableFkClassName}(${pkColumn.javaField});
+#end
+ return ${className}Mapper.delete${ClassName}By${pkColumn.capJavaField}(${pkColumn.javaField});
+ }
+#if($table.sub)
+
+ /**
+ * 新增${subTable.functionName}信息
+ *
+ * @param ${className} ${functionName}对象
+ */
+ public void insert${subClassName}(${ClassName} ${className})
+ {
+ List<${subClassName}> ${subclassName}List = ${className}.get${subClassName}List();
+ ${pkColumn.javaType} ${pkColumn.javaField} = ${className}.get${pkColumn.capJavaField}();
+ if (StringUtils.isNotNull(${subclassName}List))
+ {
+ List<${subClassName}> list = new ArrayList<${subClassName}>();
+ for (${subClassName} ${subclassName} : ${subclassName}List)
+ {
+ ${subclassName}.set${subTableFkClassName}(${pkColumn.javaField});
+ list.add(${subclassName});
+ }
+ if (list.size() > 0)
+ {
+ ${className}Mapper.batch${subClassName}(list);
+ }
+ }
+ }
+#end
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/java/sub-domain.java.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/java/sub-domain.java.vm
new file mode 100644
index 00000000..4073d218
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/java/sub-domain.java.vm
@@ -0,0 +1,76 @@
+package ${packageName}.domain;
+
+#foreach ($import in $subImportList)
+import ${import};
+#end
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.eqis.dev.common.annotation.Excel;
+import com.eqis.dev.common.core.domain.BaseEntity;
+
+/**
+ * ${subTable.functionName}对象 ${subTableName}
+ *
+ * @author ${author}
+ * @date ${datetime}
+ */
+public class ${subClassName} extends BaseEntity
+{
+ private static final long serialVersionUID = 1L;
+
+#foreach ($column in $subTable.columns)
+#if(!$table.isSuperColumn($column.javaField))
+ /** $column.columnComment */
+#if($column.list)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($parentheseIndex != -1)
+ @Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
+#elseif($column.javaType == 'Date')
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = "${comment}", width = 30, dateFormat = "yyyy-MM-dd")
+#else
+ @Excel(name = "${comment}")
+#end
+#end
+ private $column.javaType $column.javaField;
+
+#end
+#end
+#foreach ($column in $subTable.columns)
+#if(!$table.isSuperColumn($column.javaField))
+#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
+#set($AttrName=$column.javaField)
+#else
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#end
+ public void set${AttrName}($column.javaType $column.javaField)
+ {
+ this.$column.javaField = $column.javaField;
+ }
+
+ public $column.javaType get${AttrName}()
+ {
+ return $column.javaField;
+ }
+#end
+#end
+
+ @Override
+ public String toString() {
+ return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
+#foreach ($column in $subTable.columns)
+#if($column.javaField.length() > 2 && $column.javaField.substring(1,2).matches("[A-Z]"))
+#set($AttrName=$column.javaField)
+#else
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#end
+ .append("${column.javaField}", get${AttrName}())
+#end
+ .toString();
+ }
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/js/api.js.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/js/api.js.vm
new file mode 100644
index 00000000..9295524a
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/js/api.js.vm
@@ -0,0 +1,44 @@
+import request from '@/utils/request'
+
+// 查询${functionName}列表
+export function list${BusinessName}(query) {
+ return request({
+ url: '/${moduleName}/${businessName}/list',
+ method: 'get',
+ params: query
+ })
+}
+
+// 查询${functionName}详细
+export function get${BusinessName}(${pkColumn.javaField}) {
+ return request({
+ url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
+ method: 'get'
+ })
+}
+
+// 新增${functionName}
+export function add${BusinessName}(data) {
+ return request({
+ url: '/${moduleName}/${businessName}',
+ method: 'post',
+ data: data
+ })
+}
+
+// 修改${functionName}
+export function update${BusinessName}(data) {
+ return request({
+ url: '/${moduleName}/${businessName}',
+ method: 'put',
+ data: data
+ })
+}
+
+// 删除${functionName}
+export function del${BusinessName}(${pkColumn.javaField}) {
+ return request({
+ url: '/${moduleName}/${businessName}/' + ${pkColumn.javaField},
+ method: 'delete'
+ })
+}
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/sql/sql.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/sql/sql.vm
new file mode 100644
index 00000000..05755835
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/sql/sql.vm
@@ -0,0 +1,22 @@
+-- 菜单 SQL
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}', '${parentMenuId}', '1', '${businessName}', '${moduleName}/${businessName}/index', 1, 0, 'C', '0', '0', '${permissionPrefix}:list', '#', 'admin', sysdate(), '', null, '${functionName}菜单');
+
+-- 按钮父菜单ID
+SELECT @parentId := LAST_INSERT_ID();
+
+-- 按钮 SQL
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}查询', @parentId, '1', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:query', '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}新增', @parentId, '2', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:add', '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}修改', @parentId, '3', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:edit', '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}删除', @parentId, '4', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:remove', '#', 'admin', sysdate(), '', null, '');
+
+insert into sys_menu (menu_name, parent_id, order_num, path, component, is_frame, is_cache, menu_type, visible, status, perms, icon, create_by, create_time, update_by, update_time, remark)
+values('${functionName}导出', @parentId, '5', '#', '', 1, 0, 'F', '0', '0', '${permissionPrefix}:export', '#', 'admin', sysdate(), '', null, '');
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index-tree.vue.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index-tree.vue.vm
new file mode 100644
index 00000000..4819c2a9
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index-tree.vue.vm
@@ -0,0 +1,505 @@
+
+
+
+#foreach($column in $columns)
+#if($column.query)
+#set($dictType=$column.dictType)
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.htmlType == "input")
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
+
+
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+
+
+
+#end
+#end
+#end
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 展开/折叠
+
+
+
+
+
+#foreach($column in $columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk)
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+ {{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}
+
+
+#elseif($column.list && $column.htmlType == "imageUpload")
+
+
+
+
+
+#elseif($column.list && "" != $column.dictType)
+
+
+#if($column.htmlType == "checkbox")
+
+#else
+
+#end
+
+
+#elseif($column.list && "" != $javaField)
+#if(${foreach.index} == 1)
+
+#else
+
+#end
+#end
+#end
+
+
+ 修改
+ 新增
+ 删除
+
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($field=$column.javaField)
+#if($column.insert && !$column.pk)
+#if(($column.usableColumn) || (!$column.superColumn))
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#set($dictType=$column.dictType)
+#if("" != $treeParentCode && $column.javaField == $treeParentCode)
+
+
+
+#elseif($column.htmlType == "input")
+
+
+
+#elseif($column.htmlType == "imageUpload")
+
+
+
+#elseif($column.htmlType == "fileUpload")
+
+
+
+#elseif($column.htmlType == "editor")
+
+
+
+#elseif($column.htmlType == "select" && "" != $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "select" && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "checkbox" && "" != $dictType)
+
+
+
+ {{dict.label}}
+
+
+
+#elseif($column.htmlType == "checkbox" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "radio" && "" != $dictType)
+
+
+ {{dict.label}}
+
+
+#elseif($column.htmlType == "radio" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "datetime")
+
+
+
+
+#elseif($column.htmlType == "textarea")
+
+
+
+#end
+#end
+#end
+#end
+
+
+
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index.vue.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index.vue.vm
new file mode 100644
index 00000000..4f80b12d
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/index.vue.vm
@@ -0,0 +1,602 @@
+
+
+
+#foreach($column in $columns)
+#if($column.query)
+#set($dictType=$column.dictType)
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.htmlType == "input")
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
+
+
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+
+
+
+#end
+#end
+#end
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk)
+
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+ {{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}
+
+
+#elseif($column.list && $column.htmlType == "imageUpload")
+
+
+
+
+
+#elseif($column.list && "" != $column.dictType)
+
+
+#if($column.htmlType == "checkbox")
+
+#else
+
+#end
+
+
+#elseif($column.list && "" != $javaField)
+
+#end
+#end
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($field=$column.javaField)
+#if($column.insert && !$column.pk)
+#if(($column.usableColumn) || (!$column.superColumn))
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#set($dictType=$column.dictType)
+#if($column.htmlType == "input")
+
+
+
+#elseif($column.htmlType == "imageUpload")
+
+
+
+#elseif($column.htmlType == "fileUpload")
+
+
+
+#elseif($column.htmlType == "editor")
+
+
+
+#elseif($column.htmlType == "select" && "" != $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "select" && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "checkbox" && "" != $dictType)
+
+
+
+ {{dict.label}}
+
+
+
+#elseif($column.htmlType == "checkbox" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "radio" && "" != $dictType)
+
+
+ {{dict.label}}
+
+
+#elseif($column.htmlType == "radio" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "datetime")
+
+
+
+
+#elseif($column.htmlType == "textarea")
+
+
+
+#end
+#end
+#end
+#end
+#if($table.sub)
+ ${subTable.functionName}信息
+
+
+ 添加
+
+
+ 删除
+
+
+
+
+
+#foreach($column in $subTable.columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk || $javaField == ${subTableFkclassName})
+#elseif($column.list && $column.htmlType == "input")
+
+
+
+
+
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+
+
+
+#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType)
+
+
+
+
+
+
+
+#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType)
+
+
+
+
+
+
+
+#end
+#end
+
+#end
+
+
+
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index-tree.vue.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index-tree.vue.vm
new file mode 100644
index 00000000..c54d62bf
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index-tree.vue.vm
@@ -0,0 +1,474 @@
+
+
+
+#foreach($column in $columns)
+#if($column.query)
+#set($dictType=$column.dictType)
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.htmlType == "input")
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
+
+
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+
+
+
+#end
+#end
+#end
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 展开/折叠
+
+
+
+
+
+#foreach($column in $columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk)
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+ {{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}
+
+
+#elseif($column.list && $column.htmlType == "imageUpload")
+
+
+
+
+
+#elseif($column.list && "" != $column.dictType)
+
+
+#if($column.htmlType == "checkbox")
+
+#else
+
+#end
+
+
+#elseif($column.list && "" != $javaField)
+#if(${foreach.index} == 1)
+
+#else
+
+#end
+#end
+#end
+
+
+ 修改
+ 新增
+ 删除
+
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($field=$column.javaField)
+#if($column.insert && !$column.pk)
+#if(($column.usableColumn) || (!$column.superColumn))
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#set($dictType=$column.dictType)
+#if("" != $treeParentCode && $column.javaField == $treeParentCode)
+
+
+
+#elseif($column.htmlType == "input")
+
+
+
+#elseif($column.htmlType == "imageUpload")
+
+
+
+#elseif($column.htmlType == "fileUpload")
+
+
+
+#elseif($column.htmlType == "editor")
+
+
+
+#elseif($column.htmlType == "select" && "" != $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "select" && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "checkbox" && "" != $dictType)
+
+
+
+ {{dict.label}}
+
+
+
+#elseif($column.htmlType == "checkbox" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "radio" && "" != $dictType)
+
+
+ {{dict.label}}
+
+
+#elseif($column.htmlType == "radio" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "datetime")
+
+
+
+
+#elseif($column.htmlType == "textarea")
+
+
+
+#end
+#end
+#end
+#end
+
+
+
+
+
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index.vue.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index.vue.vm
new file mode 100644
index 00000000..8b25665a
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/vue/v3/index.vue.vm
@@ -0,0 +1,590 @@
+
+
+
+#foreach($column in $columns)
+#if($column.query)
+#set($dictType=$column.dictType)
+#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.htmlType == "input")
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && "" != $dictType)
+
+
+
+
+
+#elseif(($column.htmlType == "select" || $column.htmlType == "radio") && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType != "BETWEEN")
+
+
+
+
+#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
+
+
+
+#end
+#end
+#end
+
+ 搜索
+ 重置
+
+
+
+
+
+ 新增
+
+
+ 修改
+
+
+ 删除
+
+
+ 导出
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk)
+
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+ {{ parseTime(scope.row.${javaField}, '{y}-{m}-{d}') }}
+
+
+#elseif($column.list && $column.htmlType == "imageUpload")
+
+
+
+
+
+#elseif($column.list && "" != $column.dictType)
+
+
+#if($column.htmlType == "checkbox")
+
+#else
+
+#end
+
+
+#elseif($column.list && "" != $javaField)
+
+#end
+#end
+
+
+ 修改
+ 删除
+
+
+
+
+
+
+
+
+
+#foreach($column in $columns)
+#set($field=$column.javaField)
+#if($column.insert && !$column.pk)
+#if(($column.usableColumn) || (!$column.superColumn))
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#set($dictType=$column.dictType)
+#if($column.htmlType == "input")
+
+
+
+#elseif($column.htmlType == "imageUpload")
+
+
+
+#elseif($column.htmlType == "fileUpload")
+
+
+
+#elseif($column.htmlType == "editor")
+
+
+
+#elseif($column.htmlType == "select" && "" != $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "select" && $dictType)
+
+
+
+
+
+#elseif($column.htmlType == "checkbox" && "" != $dictType)
+
+
+
+ {{dict.label}}
+
+
+
+#elseif($column.htmlType == "checkbox" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "radio" && "" != $dictType)
+
+
+ {{dict.label}}
+
+
+#elseif($column.htmlType == "radio" && $dictType)
+
+
+ 请选择字典生成
+
+
+#elseif($column.htmlType == "datetime")
+
+
+
+
+#elseif($column.htmlType == "textarea")
+
+
+
+#end
+#end
+#end
+#end
+#if($table.sub)
+ ${subTable.functionName}信息
+
+
+ 添加
+
+
+ 删除
+
+
+
+
+
+#foreach($column in $subTable.columns)
+#set($javaField=$column.javaField)
+#set($parentheseIndex=$column.columnComment.indexOf("("))
+#if($parentheseIndex != -1)
+#set($comment=$column.columnComment.substring(0, $parentheseIndex))
+#else
+#set($comment=$column.columnComment)
+#end
+#if($column.pk || $javaField == ${subTableFkclassName})
+#elseif($column.list && $column.htmlType == "input")
+
+
+
+
+
+#elseif($column.list && $column.htmlType == "datetime")
+
+
+
+
+
+
+#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" != $column.dictType)
+
+
+
+
+
+
+
+#elseif($column.list && ($column.htmlType == "select" || $column.htmlType == "radio") && "" == $column.dictType)
+
+
+
+
+
+
+
+#end
+#end
+
+#end
+
+
+
+
+
+
+
+
+
diff --git a/cwzoonest/cwzoonest-generator/target/classes/vm/xml/mapper.xml.vm b/cwzoonest/cwzoonest-generator/target/classes/vm/xml/mapper.xml.vm
new file mode 100644
index 00000000..0ceb3d85
--- /dev/null
+++ b/cwzoonest/cwzoonest-generator/target/classes/vm/xml/mapper.xml.vm
@@ -0,0 +1,135 @@
+
+
+
+
+
+#foreach ($column in $columns)
+
+#end
+
+#if($table.sub)
+
+
+
+
+
+
+#foreach ($column in $subTable.columns)
+
+#end
+
+#end
+
+
+ select#foreach($column in $columns) $column.columnName#if($foreach.count != $columns.size()),#end#end from ${tableName}
+
+
+
+
+
+
+
+ insert into ${tableName}
+
+#foreach($column in $columns)
+#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment)
+ $column.columnName,
+#end
+#end
+
+
+#foreach($column in $columns)
+#if($column.columnName != $pkColumn.columnName || !$pkColumn.increment)
+ #{$column.javaField},
+#end
+#end
+
+
+
+
+ update ${tableName}
+
+#foreach($column in $columns)
+#if($column.columnName != $pkColumn.columnName)
+ $column.columnName = #{$column.javaField},
+#end
+#end
+
+ where ${pkColumn.columnName} = #{${pkColumn.javaField}}
+
+
+
+ delete from ${tableName} where ${pkColumn.columnName} = #{${pkColumn.javaField}}
+
+
+
+ delete from ${tableName} where ${pkColumn.columnName} in
+
+ #{${pkColumn.javaField}}
+
+
+#if($table.sub)
+
+
+ delete from ${subTableName} where ${subTableFkName} in
+
+ #{${subTableFkclassName}}
+
+
+
+
+ delete from ${subTableName} where ${subTableFkName} = #{${subTableFkclassName}}
+
+
+
+ insert into ${subTableName}(#foreach($column in $subTable.columns) $column.columnName#if($foreach.count != $subTable.columns.size()),#end#end) values
+
+ (#foreach($column in $subTable.columns) #{item.$column.javaField}#if($foreach.count != $subTable.columns.size()),#end#end)
+
+
+#end
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobController.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobController.class
new file mode 100644
index 00000000..f803c526
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobController.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobLogController.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobLogController.class
new file mode 100644
index 00000000..04d3df3c
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/controller/SysJobLogController.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJob.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJob.class
new file mode 100644
index 00000000..ab1d6e84
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJob.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJobLog.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJobLog.class
new file mode 100644
index 00000000..e5deb38d
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/domain/SysJobLog.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobLogMapper.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobLogMapper.class
new file mode 100644
index 00000000..79081493
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobLogMapper.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobMapper.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobMapper.class
new file mode 100644
index 00000000..3d73ded6
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/mapper/SysJobMapper.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobLogService.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobLogService.class
new file mode 100644
index 00000000..d1bc3e4d
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobLogService.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobService.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobService.class
new file mode 100644
index 00000000..4a394f6f
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/ISysJobService.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobLogServiceImpl.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobLogServiceImpl.class
new file mode 100644
index 00000000..a16bd1c0
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobLogServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobServiceImpl.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobServiceImpl.class
new file mode 100644
index 00000000..9f8ed9a9
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/service/impl/SysJobServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/task/RyTask.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/task/RyTask.class
new file mode 100644
index 00000000..9f3ebe02
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/task/RyTask.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/AbstractQuartzJob.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/AbstractQuartzJob.class
new file mode 100644
index 00000000..28e91df3
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/AbstractQuartzJob.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/CronUtils.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/CronUtils.class
new file mode 100644
index 00000000..e4658643
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/CronUtils.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/JobInvokeUtil.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/JobInvokeUtil.class
new file mode 100644
index 00000000..3c4d409f
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/JobInvokeUtil.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzDisallowConcurrentExecution.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzDisallowConcurrentExecution.class
new file mode 100644
index 00000000..d79ed5c6
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzDisallowConcurrentExecution.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzJobExecution.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzJobExecution.class
new file mode 100644
index 00000000..d9fc1d57
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/QuartzJobExecution.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/ScheduleUtils.class b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/ScheduleUtils.class
new file mode 100644
index 00000000..1ab863b1
Binary files /dev/null and b/cwzoonest/cwzoonest-quartz/target/classes/dev/cwzoonest/cn/quartz/util/ScheduleUtils.class differ
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobLogMapper.xml b/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobLogMapper.xml
new file mode 100644
index 00000000..d01e2dd4
--- /dev/null
+++ b/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobLogMapper.xml
@@ -0,0 +1,93 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select job_log_id, job_name, job_group, invoke_target, job_message, status, exception_info, create_time
+ from sys_job_log
+
+
+
+
+
+
+
+
+
+ delete from sys_job_log where job_log_id = #{jobLogId}
+
+
+
+ delete from sys_job_log where job_log_id in
+
+ #{jobLogId}
+
+
+
+
+ truncate table sys_job_log
+
+
+
+ insert into sys_job_log(
+ job_log_id,
+ job_name,
+ job_group,
+ invoke_target,
+ job_message,
+ status,
+ exception_info,
+ create_time
+ )values(
+ #{jobLogId},
+ #{jobName},
+ #{jobGroup},
+ #{invokeTarget},
+ #{jobMessage},
+ #{status},
+ #{exceptionInfo},
+ sysdate()
+ )
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobMapper.xml b/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobMapper.xml
new file mode 100644
index 00000000..db50f468
--- /dev/null
+++ b/cwzoonest/cwzoonest-quartz/target/classes/mapper/quartz/SysJobMapper.xml
@@ -0,0 +1,111 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select job_id, job_name, job_group, invoke_target, cron_expression, misfire_policy, concurrent, status, create_by, create_time, remark
+ from sys_job
+
+
+
+
+
+
+
+
+
+ delete from sys_job where job_id = #{jobId}
+
+
+
+ delete from sys_job where job_id in
+
+ #{jobId}
+
+
+
+
+ update sys_job
+
+ job_name = #{jobName},
+ job_group = #{jobGroup},
+ invoke_target = #{invokeTarget},
+ cron_expression = #{cronExpression},
+ misfire_policy = #{misfirePolicy},
+ concurrent = #{concurrent},
+ status = #{status},
+ remark = #{remark},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where job_id = #{jobId}
+
+
+
+ insert into sys_job(
+ job_id,
+ job_name,
+ job_group,
+ invoke_target,
+ cron_expression,
+ misfire_policy,
+ concurrent,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{jobId},
+ #{jobName},
+ #{jobGroup},
+ #{invokeTarget},
+ #{cronExpression},
+ #{misfirePolicy},
+ #{concurrent},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysCache.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysCache.class
new file mode 100644
index 00000000..6130c554
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysCache.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysConfig.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysConfig.class
new file mode 100644
index 00000000..48bc3144
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysConfig.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysLogininfor.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysLogininfor.class
new file mode 100644
index 00000000..bd53c968
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysLogininfor.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysNotice.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysNotice.class
new file mode 100644
index 00000000..af365f9f
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysNotice.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysOperLog.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysOperLog.class
new file mode 100644
index 00000000..d03ade23
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysOperLog.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysPost.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysPost.class
new file mode 100644
index 00000000..328bdd5c
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysPost.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleDept.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleDept.class
new file mode 100644
index 00000000..8a73a63b
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleDept.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleMenu.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleMenu.class
new file mode 100644
index 00000000..8c3d583f
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysRoleMenu.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserOnline.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserOnline.class
new file mode 100644
index 00000000..d6f2dc14
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserOnline.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserPost.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserPost.class
new file mode 100644
index 00000000..5ecd5ab9
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserPost.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserRole.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserRole.class
new file mode 100644
index 00000000..14425efe
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/SysUserRole.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/MetaVo.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/MetaVo.class
new file mode 100644
index 00000000..203ec546
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/MetaVo.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/RouterVo.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/RouterVo.class
new file mode 100644
index 00000000..eaf4da00
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/domain/vo/RouterVo.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysConfigMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysConfigMapper.class
new file mode 100644
index 00000000..21d78c6f
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysConfigMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDeptMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDeptMapper.class
new file mode 100644
index 00000000..dd03211c
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDeptMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictDataMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictDataMapper.class
new file mode 100644
index 00000000..a53adddf
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictDataMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictTypeMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictTypeMapper.class
new file mode 100644
index 00000000..b11ffffe
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysDictTypeMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysLogininforMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysLogininforMapper.class
new file mode 100644
index 00000000..72096174
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysLogininforMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysMenuMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysMenuMapper.class
new file mode 100644
index 00000000..f4568ea4
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysMenuMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysNoticeMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysNoticeMapper.class
new file mode 100644
index 00000000..e075f437
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysNoticeMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysOperLogMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysOperLogMapper.class
new file mode 100644
index 00000000..912feff4
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysOperLogMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysPostMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysPostMapper.class
new file mode 100644
index 00000000..4d767927
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysPostMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleDeptMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleDeptMapper.class
new file mode 100644
index 00000000..561cd8d0
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleDeptMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMapper.class
new file mode 100644
index 00000000..be1df8fb
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMenuMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMenuMapper.class
new file mode 100644
index 00000000..7529944a
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysRoleMenuMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserMapper.class
new file mode 100644
index 00000000..2fe287dd
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserPostMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserPostMapper.class
new file mode 100644
index 00000000..e9568d20
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserPostMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserRoleMapper.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserRoleMapper.class
new file mode 100644
index 00000000..9516bdf8
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/mapper/SysUserRoleMapper.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysConfigService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysConfigService.class
new file mode 100644
index 00000000..45e53b98
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysConfigService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDeptService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDeptService.class
new file mode 100644
index 00000000..542aa1e1
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDeptService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictDataService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictDataService.class
new file mode 100644
index 00000000..157e3b65
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictDataService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictTypeService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictTypeService.class
new file mode 100644
index 00000000..4fffb580
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysDictTypeService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysLogininforService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysLogininforService.class
new file mode 100644
index 00000000..7519e7fa
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysLogininforService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysMenuService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysMenuService.class
new file mode 100644
index 00000000..d3d0da97
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysMenuService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysNoticeService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysNoticeService.class
new file mode 100644
index 00000000..3186eae6
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysNoticeService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysOperLogService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysOperLogService.class
new file mode 100644
index 00000000..da8e6f49
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysOperLogService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysPostService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysPostService.class
new file mode 100644
index 00000000..d53fa308
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysPostService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysRoleService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysRoleService.class
new file mode 100644
index 00000000..6f0e315d
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysRoleService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserOnlineService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserOnlineService.class
new file mode 100644
index 00000000..f4a695a5
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserOnlineService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserService.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserService.class
new file mode 100644
index 00000000..f3faaa0f
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/ISysUserService.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysConfigServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysConfigServiceImpl.class
new file mode 100644
index 00000000..0613f49e
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysConfigServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDeptServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDeptServiceImpl.class
new file mode 100644
index 00000000..2c60f964
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDeptServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictDataServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictDataServiceImpl.class
new file mode 100644
index 00000000..3e1fe8d9
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictDataServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictTypeServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictTypeServiceImpl.class
new file mode 100644
index 00000000..4b51c97e
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysDictTypeServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysLogininforServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysLogininforServiceImpl.class
new file mode 100644
index 00000000..8e936ab3
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysLogininforServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysMenuServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysMenuServiceImpl.class
new file mode 100644
index 00000000..8a5276e7
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysMenuServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysNoticeServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysNoticeServiceImpl.class
new file mode 100644
index 00000000..204f6657
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysNoticeServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysOperLogServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysOperLogServiceImpl.class
new file mode 100644
index 00000000..374e7e54
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysOperLogServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysPostServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysPostServiceImpl.class
new file mode 100644
index 00000000..24a179b7
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysPostServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysRoleServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysRoleServiceImpl.class
new file mode 100644
index 00000000..f61fb8f5
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysRoleServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserOnlineServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserOnlineServiceImpl.class
new file mode 100644
index 00000000..1860e2cf
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserOnlineServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserServiceImpl.class b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserServiceImpl.class
new file mode 100644
index 00000000..d0bbc2c0
Binary files /dev/null and b/cwzoonest/cwzoonest-system/target/classes/dev/cwzoonest/cn/system/service/impl/SysUserServiceImpl.class differ
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysConfigMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysConfigMapper.xml
new file mode 100644
index 00000000..d8318fc1
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysConfigMapper.xml
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select config_id, config_name, config_key, config_value, config_type, create_by, create_time, update_by, update_time, remark
+ from sys_config
+
+
+
+
+
+
+ and config_id = #{configId}
+
+
+ and config_key = #{configKey}
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into sys_config (
+ config_name,
+ config_key,
+ config_value,
+ config_type,
+ create_by,
+ remark,
+ create_time
+ )values(
+ #{configName},
+ #{configKey},
+ #{configValue},
+ #{configType},
+ #{createBy},
+ #{remark},
+ sysdate()
+ )
+
+
+
+ update sys_config
+
+ config_name = #{configName},
+ config_key = #{configKey},
+ config_value = #{configValue},
+ config_type = #{configType},
+ update_by = #{updateBy},
+ remark = #{remark},
+ update_time = sysdate()
+
+ where config_id = #{configId}
+
+
+
+ delete from sys_config where config_id = #{configId}
+
+
+
+ delete from sys_config where config_id in
+
+ #{configId}
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDeptMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDeptMapper.xml
new file mode 100644
index 00000000..8d5780c3
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDeptMapper.xml
@@ -0,0 +1,159 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.phone, d.email, d.status, d.del_flag, d.create_by, d.create_time
+ from sys_dept d
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into sys_dept(
+ dept_id,
+ parent_id,
+ dept_name,
+ ancestors,
+ order_num,
+ leader,
+ phone,
+ email,
+ status,
+ create_by,
+ create_time
+ )values(
+ #{deptId},
+ #{parentId},
+ #{deptName},
+ #{ancestors},
+ #{orderNum},
+ #{leader},
+ #{phone},
+ #{email},
+ #{status},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ update sys_dept
+
+ parent_id = #{parentId},
+ dept_name = #{deptName},
+ ancestors = #{ancestors},
+ order_num = #{orderNum},
+ leader = #{leader},
+ phone = #{phone},
+ email = #{email},
+ status = #{status},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where dept_id = #{deptId}
+
+
+
+ update sys_dept set ancestors =
+
+ when #{item.deptId} then #{item.ancestors}
+
+ where dept_id in
+
+ #{item.deptId}
+
+
+
+
+ update sys_dept set status = '0' where dept_id in
+
+ #{deptId}
+
+
+
+
+ update sys_dept set del_flag = '2' where dept_id = #{deptId}
+
+
+
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictDataMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictDataMapper.xml
new file mode 100644
index 00000000..9dcd7262
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictDataMapper.xml
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select dict_code, dict_sort, dict_label, dict_value, dict_type, css_class, list_class, is_default, status, create_by, create_time, remark
+ from sys_dict_data
+
+
+
+
+
+
+
+
+
+
+
+
+
+ delete from sys_dict_data where dict_code = #{dictCode}
+
+
+
+ delete from sys_dict_data where dict_code in
+
+ #{dictCode}
+
+
+
+
+ update sys_dict_data
+
+ dict_sort = #{dictSort},
+ dict_label = #{dictLabel},
+ dict_value = #{dictValue},
+ dict_type = #{dictType},
+ css_class = #{cssClass},
+ list_class = #{listClass},
+ is_default = #{isDefault},
+ status = #{status},
+ remark = #{remark},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where dict_code = #{dictCode}
+
+
+
+ update sys_dict_data set dict_type = #{newDictType} where dict_type = #{oldDictType}
+
+
+
+ insert into sys_dict_data(
+ dict_sort,
+ dict_label,
+ dict_value,
+ dict_type,
+ css_class,
+ list_class,
+ is_default,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{dictSort},
+ #{dictLabel},
+ #{dictValue},
+ #{dictType},
+ #{cssClass},
+ #{listClass},
+ #{isDefault},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictTypeMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictTypeMapper.xml
new file mode 100644
index 00000000..93fc2c4b
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysDictTypeMapper.xml
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select dict_id, dict_name, dict_type, status, create_by, create_time, remark
+ from sys_dict_type
+
+
+
+
+
+
+
+
+
+
+
+
+
+ delete from sys_dict_type where dict_id = #{dictId}
+
+
+
+ delete from sys_dict_type where dict_id in
+
+ #{dictId}
+
+
+
+
+ update sys_dict_type
+
+ dict_name = #{dictName},
+ dict_type = #{dictType},
+ status = #{status},
+ remark = #{remark},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where dict_id = #{dictId}
+
+
+
+ insert into sys_dict_type(
+ dict_name,
+ dict_type,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{dictName},
+ #{dictType},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysLogininforMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysLogininforMapper.xml
new file mode 100644
index 00000000..d3f892d1
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysLogininforMapper.xml
@@ -0,0 +1,57 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into sys_logininfor (user_name, status, ipaddr, login_location, browser, os, msg, login_time)
+ values (#{userName}, #{status}, #{ipaddr}, #{loginLocation}, #{browser}, #{os}, #{msg}, sysdate())
+
+
+
+
+
+ delete from sys_logininfor where info_id in
+
+ #{infoId}
+
+
+
+
+ truncate table sys_logininfor
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysMenuMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysMenuMapper.xml
new file mode 100644
index 00000000..087cf2d0
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysMenuMapper.xml
@@ -0,0 +1,202 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysNoticeMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysNoticeMapper.xml
new file mode 100644
index 00000000..4af513cc
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysNoticeMapper.xml
@@ -0,0 +1,89 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select notice_id, notice_title, notice_type, cast(notice_content as char) as notice_content, status, create_by, create_time, update_by, update_time, remark
+ from sys_notice
+
+
+
+
+
+
+
+ insert into sys_notice (
+ notice_title,
+ notice_type,
+ notice_content,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{noticeTitle},
+ #{noticeType},
+ #{noticeContent},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ update sys_notice
+
+ notice_title = #{noticeTitle},
+ notice_type = #{noticeType},
+ notice_content = #{noticeContent},
+ status = #{status},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where notice_id = #{noticeId}
+
+
+
+ delete from sys_notice where notice_id = #{noticeId}
+
+
+
+ delete from sys_notice where notice_id in
+
+ #{noticeId}
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysOperLogMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysOperLogMapper.xml
new file mode 100644
index 00000000..0f6fca1a
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysOperLogMapper.xml
@@ -0,0 +1,87 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select oper_id, title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, oper_time, cost_time
+ from sys_oper_log
+
+
+
+ insert into sys_oper_log(title, business_type, method, request_method, operator_type, oper_name, dept_name, oper_url, oper_ip, oper_location, oper_param, json_result, status, error_msg, cost_time, oper_time)
+ values (#{title}, #{businessType}, #{method}, #{requestMethod}, #{operatorType}, #{operName}, #{deptName}, #{operUrl}, #{operIp}, #{operLocation}, #{operParam}, #{jsonResult}, #{status}, #{errorMsg}, #{costTime}, sysdate())
+
+
+
+
+
+ delete from sys_oper_log where oper_id in
+
+ #{operId}
+
+
+
+
+
+
+ truncate table sys_oper_log
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysPostMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysPostMapper.xml
new file mode 100644
index 00000000..d288b54a
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysPostMapper.xml
@@ -0,0 +1,122 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select post_id, post_code, post_name, post_sort, status, create_by, create_time, remark
+ from sys_post
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ update sys_post
+
+ post_code = #{postCode},
+ post_name = #{postName},
+ post_sort = #{postSort},
+ status = #{status},
+ remark = #{remark},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where post_id = #{postId}
+
+
+
+ insert into sys_post(
+ post_id,
+ post_code,
+ post_name,
+ post_sort,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{postId},
+ #{postCode},
+ #{postName},
+ #{postSort},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ delete from sys_post where post_id = #{postId}
+
+
+
+ delete from sys_post where post_id in
+
+ #{postId}
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleDeptMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleDeptMapper.xml
new file mode 100644
index 00000000..c2fc4c4e
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleDeptMapper.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+ delete from sys_role_dept where role_id=#{roleId}
+
+
+
+
+
+ delete from sys_role_dept where role_id in
+
+ #{roleId}
+
+
+
+
+ insert into sys_role_dept(role_id, dept_id) values
+
+ (#{item.roleId},#{item.deptId})
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMapper.xml
new file mode 100644
index 00000000..43377bae
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMapper.xml
@@ -0,0 +1,152 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.menu_check_strictly, r.dept_check_strictly,
+ r.status, r.del_flag, r.create_time, r.remark
+ from sys_role r
+ left join sys_user_role ur on ur.role_id = r.role_id
+ left join sys_user u on u.user_id = ur.user_id
+ left join sys_dept d on u.dept_id = d.dept_id
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into sys_role(
+ role_id,
+ role_name,
+ role_key,
+ role_sort,
+ data_scope,
+ menu_check_strictly,
+ dept_check_strictly,
+ status,
+ remark,
+ create_by,
+ create_time
+ )values(
+ #{roleId},
+ #{roleName},
+ #{roleKey},
+ #{roleSort},
+ #{dataScope},
+ #{menuCheckStrictly},
+ #{deptCheckStrictly},
+ #{status},
+ #{remark},
+ #{createBy},
+ sysdate()
+ )
+
+
+
+ update sys_role
+
+ role_name = #{roleName},
+ role_key = #{roleKey},
+ role_sort = #{roleSort},
+ data_scope = #{dataScope},
+ menu_check_strictly = #{menuCheckStrictly},
+ dept_check_strictly = #{deptCheckStrictly},
+ status = #{status},
+ remark = #{remark},
+ update_by = #{updateBy},
+ update_time = sysdate()
+
+ where role_id = #{roleId}
+
+
+
+ update sys_role set del_flag = '2' where role_id = #{roleId}
+
+
+
+ update sys_role set del_flag = '2' where role_id in
+
+ #{roleId}
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMenuMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMenuMapper.xml
new file mode 100644
index 00000000..91194b9e
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysRoleMenuMapper.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserMapper.xml
new file mode 100644
index 00000000..8a9132ef
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserMapper.xml
@@ -0,0 +1,221 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ select u.user_id, u.dept_id, u.user_name, u.nick_name, u.email, u.avatar, u.phonenumber, u.password, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark,
+ d.dept_id, d.parent_id, d.ancestors, d.dept_name, d.order_num, d.leader, d.status as dept_status,
+ r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope, r.status as role_status
+ from sys_user u
+ left join sys_dept d on u.dept_id = d.dept_id
+ left join sys_user_role ur on u.user_id = ur.user_id
+ left join sys_role r on r.role_id = ur.role_id
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ insert into sys_user(
+ user_id,
+ dept_id,
+ user_name,
+ nick_name,
+ email,
+ avatar,
+ phonenumber,
+ sex,
+ password,
+ status,
+ create_by,
+ remark,
+ create_time
+ )values(
+ #{userId},
+ #{deptId},
+ #{userName},
+ #{nickName},
+ #{email},
+ #{avatar},
+ #{phonenumber},
+ #{sex},
+ #{password},
+ #{status},
+ #{createBy},
+ #{remark},
+ sysdate()
+ )
+
+
+
+ update sys_user
+
+ dept_id = #{deptId},
+ user_name = #{userName},
+ nick_name = #{nickName},
+ email = #{email},
+ phonenumber = #{phonenumber},
+ sex = #{sex},
+ avatar = #{avatar},
+ password = #{password},
+ status = #{status},
+ login_ip = #{loginIp},
+ login_date = #{loginDate},
+ update_by = #{updateBy},
+ remark = #{remark},
+ update_time = sysdate()
+
+ where user_id = #{userId}
+
+
+
+ update sys_user set status = #{status} where user_id = #{userId}
+
+
+
+ update sys_user set avatar = #{avatar} where user_name = #{userName}
+
+
+
+ update sys_user set password = #{password} where user_name = #{userName}
+
+
+
+ update sys_user set del_flag = '2' where user_id = #{userId}
+
+
+
+ update sys_user set del_flag = '2' where user_id in
+
+ #{userId}
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserPostMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserPostMapper.xml
new file mode 100644
index 00000000..eaee40a1
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserPostMapper.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+ delete from sys_user_post where user_id=#{userId}
+
+
+
+
+
+ delete from sys_user_post where user_id in
+
+ #{userId}
+
+
+
+
+ insert into sys_user_post(user_id, post_id) values
+
+ (#{item.userId},#{item.postId})
+
+
+
+
\ No newline at end of file
diff --git a/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserRoleMapper.xml b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserRoleMapper.xml
new file mode 100644
index 00000000..3b6d5f34
--- /dev/null
+++ b/cwzoonest/cwzoonest-system/target/classes/mapper/system/SysUserRoleMapper.xml
@@ -0,0 +1,44 @@
+
+
+
+
+
+
+
+
+
+
+ delete from sys_user_role where user_id=#{userId}
+
+
+
+
+
+ delete from sys_user_role where user_id in
+
+ #{userId}
+
+
+
+
+ insert into sys_user_role(user_id, role_id) values
+
+ (#{item.userId},#{item.roleId})
+
+
+
+
+ delete from sys_user_role where user_id=#{userId} and role_id=#{roleId}
+
+
+
+ delete from sys_user_role where role_id=#{roleId} and user_id in
+
+ #{userId}
+
+
+
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/extensions.json b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/extensions.json
new file mode 100644
index 00000000..65288b55
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/extensions.json
@@ -0,0 +1,18 @@
+{
+ "recommendations": [
+ "christian-kohler.path-intellisense",
+ "vscode-icons-team.vscode-icons",
+ "davidanson.vscode-markdownlint",
+ "dbaeumer.vscode-eslint",
+ "esbenp.prettier-vscode",
+ "mrmlnc.vscode-less",
+ "lokalise.i18n-ally",
+ "redhat.vscode-yaml",
+ "csstools.postcss",
+ "mikestead.dotenv",
+ "eamodio.gitlens",
+ "antfu.iconify",
+ "antfu.unocss",
+ "Vue.volar"
+ ]
+}
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/launch.json b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/launch.json
new file mode 100644
index 00000000..f43edc03
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/launch.json
@@ -0,0 +1,16 @@
+{
+ // Use IntelliSense to learn about possible attributes.
+ // Hover to view descriptions of existing attributes.
+ // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "type": "msedge",
+ "request": "launch",
+ "name": "Launch Edge against localhost",
+ "url": "http://localhost",
+ "webRoot": "${workspaceFolder}/src",
+ "sourceMaps": true
+ }
+ ]
+}
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/settings.json b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/settings.json
new file mode 100644
index 00000000..54be7d8c
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/.vscode/settings.json
@@ -0,0 +1,144 @@
+{
+ "typescript.tsdk": "node_modules/typescript/lib",
+ "npm.packageManager": "pnpm",
+ "editor.tabSize": 2,
+ "prettier.printWidth": 100, // 超过最大值换行
+ "editor.defaultFormatter": "esbenp.prettier-vscode",
+ "files.eol": "\n",
+ "search.exclude": {
+ "**/node_modules": true,
+ "**/*.log": true,
+ "**/*.log*": true,
+ "**/bower_components": true,
+ "**/dist": true,
+ "**/elehukouben": true,
+ "**/.git": true,
+ "**/.gitignore": true,
+ "**/.svn": true,
+ "**/.DS_Store": true,
+ "**/.idea": true,
+ "**/.vscode": false,
+ "**/yarn.lock": true,
+ "**/tmp": true,
+ "out": true,
+ "dist": true,
+ "node_modules": true,
+ "CHANGELOG.md": true,
+ "examples": true,
+ "res": true,
+ "screenshots": true,
+ "yarn-error.log": true,
+ "**/.yarn": true
+ },
+ "files.exclude": {
+ "**/.cache": true,
+ "**/.editorconfig": true,
+ "**/.eslintcache": true,
+ "**/bower_components": true,
+ "**/.idea": true,
+ "**/tmp": true,
+ "**/.git": true,
+ "**/.svn": true,
+ "**/.hg": true,
+ "**/CVS": true,
+ "**/.DS_Store": true
+ },
+ "files.watcherExclude": {
+ "**/.git/objects/**": true,
+ "**/.git/subtree-cache/**": true,
+ "**/.vscode/**": true,
+ "**/node_modules/**": true,
+ "**/tmp/**": true,
+ "**/bower_components/**": true,
+ "**/dist/**": true,
+ "**/yarn.lock": true
+ },
+ "stylelint.enable": true,
+ "stylelint.validate": ["css", "less", "postcss", "scss", "vue", "sass"],
+ "path-intellisense.mappings": {
+ "@/": "${workspaceRoot}/src"
+ },
+ "[javascriptreact]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
+ },
+ "[typescript]": {
+ "editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
+ },
+ "[typescriptreact]": {
+ "editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
+ },
+ "[html]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
+ },
+ "[css]": {
+ "editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
+ },
+ "[less]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
+ },
+ "[scss]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
+ },
+ "[markdown]": {
+ "editor.defaultFormatter": "esbenp.prettier-vscode"
+ },
+ "editor.codeActionsOnSave": {
+ "source.fixAll.eslint": "explicit"
+ },
+ "[vue]": {
+ "editor.defaultFormatter": "rvest.vs-code-prettier-eslint"
+ },
+ "i18n-ally.localesPaths": ["src/locales"],
+ "i18n-ally.keystyle": "nested",
+ "i18n-ally.sortKeys": true,
+ "i18n-ally.namespace": false,
+ "i18n-ally.enabledParsers": ["ts"],
+ "i18n-ally.sourceLanguage": "en",
+ "i18n-ally.displayLanguage": "zh-CN",
+ "i18n-ally.enabledFrameworks": ["vue", "react"],
+ "cSpell.words": [
+ "brotli",
+ "browserslist",
+ "codemirror",
+ "commitlint",
+ "cropperjs",
+ "echart",
+ "echarts",
+ "esnext",
+ "esno",
+ "iconify",
+ "INTLIFY",
+ "lintstagedrc",
+ "logicflow",
+ "nprogress",
+ "pinia",
+ "pnpm",
+ "qrcode",
+ "sider",
+ "sortablejs",
+ "stylelint",
+ "svgs",
+ "unocss",
+ "unplugin",
+ "unref",
+ "videojs",
+ "VITE",
+ "vitejs",
+ "vueuse",
+ "wangeditor",
+ "xingyu",
+ "yudao",
+ "zxcvbn"
+ ],
+ // 控制相关文件嵌套展示
+ "explorer.fileNesting.enabled": true,
+ "explorer.fileNesting.expand": false,
+ "explorer.fileNesting.patterns": {
+ "*.ts": "$(capture).test.ts, $(capture).test.tsx",
+ "*.tsx": "$(capture).test.ts, $(capture).test.tsx",
+ "*.env": "$(capture).env.*",
+ "package.json": "pnpm-lock.yaml,yarn.lock,LICENSE,README*,CHANGELOG*,CNAME,.gitattributes,.eslintrc-auto-import.json,.gitignore,prettier.config.js,stylelint.config.js,commitlint.config.js,.stylelintignore,.prettierignore,.gitpod.yml,.eslintrc.js,.eslintignore"
+ },
+ "terminal.integrated.scrollback": 10000,
+ "nuxt.isNuxtApp": false
+}
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/index.ts b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/index.ts
new file mode 100644
index 00000000..585759f5
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/index.ts
@@ -0,0 +1,100 @@
+import { resolve } from 'path'
+import Vue from '@vitejs/plugin-vue'
+import VueJsx from '@vitejs/plugin-vue-jsx'
+import progress from 'vite-plugin-progress'
+import EslintPlugin from 'vite-plugin-eslint'
+import PurgeIcons from 'vite-plugin-purge-icons'
+import { ViteEjsPlugin } from 'vite-plugin-ejs'
+// @ts-ignore
+import ElementPlus from 'unplugin-element-plus/vite'
+import AutoImport from 'unplugin-auto-import/vite'
+import Components from 'unplugin-vue-components/vite'
+import { ElementPlusResolver } from 'unplugin-vue-components/resolvers'
+import viteCompression from 'vite-plugin-compression'
+import topLevelAwait from 'vite-plugin-top-level-await'
+import VueI18nPlugin from '@intlify/unplugin-vue-i18n/vite'
+import { createSvgIconsPlugin } from 'vite-plugin-svg-icons'
+import UnoCSS from 'unocss/vite'
+
+export function createVitePlugins() {
+ const root = process.cwd()
+
+ // 路径查找
+ function pathResolve(dir: string) {
+ return resolve(root, '.', dir)
+ }
+
+ return [
+ Vue(),
+ VueJsx(),
+ UnoCSS(),
+ progress(),
+ PurgeIcons(),
+ ElementPlus({}),
+ AutoImport({
+ include: [
+ /\.[tj]sx?$/, // .ts, .tsx, .js, .jsx
+ /\.vue$/,
+ /\.vue\?vue/, // .vue
+ /\.md$/ // .md
+ ],
+ imports: [
+ 'vue',
+ 'vue-router',
+ // 可额外添加需要 autoImport 的组件
+ {
+ '@/hooks/web/useI18n': ['useI18n'],
+ '@/hooks/web/useMessage': ['useMessage'],
+ '@/hooks/web/useTable': ['useTable'],
+ '@/hooks/web/useCrudSchemas': ['useCrudSchemas'],
+ '@/utils/formRules': ['required'],
+ '@/utils/dict': ['DICT_TYPE']
+ }
+ ],
+ dts: 'src/types/auto-imports.d.ts',
+ resolvers: [ElementPlusResolver()],
+ eslintrc: {
+ enabled: false, // Default `false`
+ filepath: './.eslintrc-auto-import.json', // Default `./.eslintrc-auto-import.json`
+ globalsPropValue: true // Default `true`, (true | false | 'readonly' | 'readable' | 'writable' | 'writeable')
+ }
+ }),
+ Components({
+ // 生成自定义 `auto-components.d.ts` 全局声明
+ dts: 'src/types/auto-components.d.ts',
+ // 自定义组件的解析器
+ resolvers: [ElementPlusResolver()],
+ globs: ["src/components/**/**.{vue, md}", '!src/components/DiyEditor/components/mobile/**']
+ }),
+ EslintPlugin({
+ cache: false,
+ include: ['src/**/*.vue', 'src/**/*.ts', 'src/**/*.tsx'] // 检查的文件
+ }),
+ VueI18nPlugin({
+ runtimeOnly: true,
+ compositionOnly: true,
+ include: [resolve(__dirname, 'src/locales/**')]
+ }),
+ createSvgIconsPlugin({
+ iconDirs: [pathResolve('src/assets/svgs')],
+ symbolId: 'icon-[dir]-[name]',
+ svgoOptions: true
+ }),
+ viteCompression({
+ verbose: true, // 是否在控制台输出压缩结果
+ disable: false, // 是否禁用
+ threshold: 10240, // 体积大于 threshold 才会被压缩,单位 b
+ algorithm: 'gzip', // 压缩算法,可选 [ 'gzip' , 'brotliCompress' ,'deflate' , 'deflateRaw']
+ ext: '.gz', // 生成的压缩包后缀
+ deleteOriginFile: false //压缩后是否删除源文件
+ }),
+ ViteEjsPlugin(),
+ topLevelAwait({
+ // https://juejin.cn/post/7152191742513512485
+ // The export name of top-level await promise for each chunk module
+ promiseExportName: '__tla',
+ // The function to generate import names of top-level await promise in each chunk module
+ promiseImportName: (i) => `__tla_${i}`
+ })
+ ]
+}
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/optimize.ts b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/optimize.ts
new file mode 100644
index 00000000..3dda50b0
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/build/vite/optimize.ts
@@ -0,0 +1,112 @@
+const include = [
+ 'qs',
+ 'url',
+ 'vue',
+ 'sass',
+ 'mitt',
+ 'axios',
+ 'pinia',
+ 'dayjs',
+ 'qrcode',
+ 'unocss',
+ 'vue-router',
+ 'vue-types',
+ 'vue-i18n',
+ 'crypto-js',
+ 'cropperjs',
+ 'lodash-es',
+ 'nprogress',
+ 'web-storage-cache',
+ '@iconify/iconify',
+ '@vueuse/core',
+ '@zxcvbn-ts/core',
+ 'echarts/core',
+ 'echarts/charts',
+ 'echarts/components',
+ 'echarts/renderers',
+ 'echarts-wordcloud',
+ '@wangeditor/editor',
+ '@wangeditor/editor-for-vue',
+ 'element-plus',
+ 'element-plus/es',
+ 'element-plus/es/locale/lang/zh-cn',
+ 'element-plus/es/locale/lang/en',
+ 'element-plus/es/components/avatar/style/css',
+ 'element-plus/es/components/space/style/css',
+ 'element-plus/es/components/backtop/style/css',
+ 'element-plus/es/components/form/style/css',
+ 'element-plus/es/components/radio-group/style/css',
+ 'element-plus/es/components/radio/style/css',
+ 'element-plus/es/components/checkbox/style/css',
+ 'element-plus/es/components/checkbox-group/style/css',
+ 'element-plus/es/components/switch/style/css',
+ 'element-plus/es/components/time-picker/style/css',
+ 'element-plus/es/components/date-picker/style/css',
+ 'element-plus/es/components/descriptions/style/css',
+ 'element-plus/es/components/descriptions-item/style/css',
+ 'element-plus/es/components/link/style/css',
+ 'element-plus/es/components/tooltip/style/css',
+ 'element-plus/es/components/drawer/style/css',
+ 'element-plus/es/components/dialog/style/css',
+ 'element-plus/es/components/checkbox-button/style/css',
+ 'element-plus/es/components/option-group/style/css',
+ 'element-plus/es/components/radio-button/style/css',
+ 'element-plus/es/components/cascader/style/css',
+ 'element-plus/es/components/color-picker/style/css',
+ 'element-plus/es/components/input-number/style/css',
+ 'element-plus/es/components/rate/style/css',
+ 'element-plus/es/components/select-v2/style/css',
+ 'element-plus/es/components/tree-select/style/css',
+ 'element-plus/es/components/slider/style/css',
+ 'element-plus/es/components/time-select/style/css',
+ 'element-plus/es/components/autocomplete/style/css',
+ 'element-plus/es/components/image-viewer/style/css',
+ 'element-plus/es/components/upload/style/css',
+ 'element-plus/es/components/col/style/css',
+ 'element-plus/es/components/form-item/style/css',
+ 'element-plus/es/components/alert/style/css',
+ 'element-plus/es/components/breadcrumb/style/css',
+ 'element-plus/es/components/select/style/css',
+ 'element-plus/es/components/input/style/css',
+ 'element-plus/es/components/breadcrumb-item/style/css',
+ 'element-plus/es/components/tag/style/css',
+ 'element-plus/es/components/pagination/style/css',
+ 'element-plus/es/components/table/style/css',
+ 'element-plus/es/components/table-v2/style/css',
+ 'element-plus/es/components/table-column/style/css',
+ 'element-plus/es/components/card/style/css',
+ 'element-plus/es/components/row/style/css',
+ 'element-plus/es/components/button/style/css',
+ 'element-plus/es/components/menu/style/css',
+ 'element-plus/es/components/sub-menu/style/css',
+ 'element-plus/es/components/menu-item/style/css',
+ 'element-plus/es/components/option/style/css',
+ 'element-plus/es/components/dropdown/style/css',
+ 'element-plus/es/components/dropdown-menu/style/css',
+ 'element-plus/es/components/dropdown-item/style/css',
+ 'element-plus/es/components/skeleton/style/css',
+ 'element-plus/es/components/skeleton/style/css',
+ 'element-plus/es/components/backtop/style/css',
+ 'element-plus/es/components/menu/style/css',
+ 'element-plus/es/components/sub-menu/style/css',
+ 'element-plus/es/components/menu-item/style/css',
+ 'element-plus/es/components/dropdown/style/css',
+ 'element-plus/es/components/tree/style/css',
+ 'element-plus/es/components/dropdown-menu/style/css',
+ 'element-plus/es/components/dropdown-item/style/css',
+ 'element-plus/es/components/badge/style/css',
+ 'element-plus/es/components/breadcrumb/style/css',
+ 'element-plus/es/components/breadcrumb-item/style/css',
+ 'element-plus/es/components/image/style/css',
+ 'element-plus/es/components/collapse-transition/style/css',
+ 'element-plus/es/components/timeline/style/css',
+ 'element-plus/es/components/timeline-item/style/css',
+ 'element-plus/es/components/collapse/style/css',
+ 'element-plus/es/components/collapse-item/style/css',
+ 'element-plus/es/components/button-group/style/css',
+ 'element-plus/es/components/text/style/css'
+]
+
+const exclude = ['@iconify/json']
+
+export { include, exclude }
diff --git a/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/src/views/infra/build/index.vue b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/src/views/infra/build/index.vue
new file mode 100644
index 00000000..571acffe
--- /dev/null
+++ b/ruoyi-vue-pro/yudao-ui/yudao-ui-admin-vue3/src/views/infra/build/index.vue
@@ -0,0 +1,142 @@
+
+
+
+
+
+ 生成 JSON
+ 生成 Options
+ 生成组件
+
+
+
+
+
+
+
+
+
+
+