diff --git a/.gitignore b/.gitignore
index 153c9335..a89f7401 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,29 +1,11 @@
-HELP.md
-/target/
-!.mvn/wrapper/maven-wrapper.jar
+# Maven #
+target/
-### STS ###
-.apt_generated
-.classpath
-.factorypath
-.project
-.settings
-.springBeans
-.sts4-cache
-
-### IntelliJ IDEA ###
-.idea
-*.iws
+# IDEA #
+.idea/
*.iml
-*.ipr
-### NetBeans ###
-/nbproject/private/
-/nbbuild/
-/dist/
-/nbdist/
-/.nb-gradle/
-/build/
-
-### VS Code ###
-.vscode/
+# Eclipse #
+.settings/
+.classpath
+.project
\ No newline at end of file
diff --git a/LICENSE b/LICENSE
deleted file mode 100644
index 5f273ce5..00000000
--- a/LICENSE
+++ /dev/null
@@ -1,201 +0,0 @@
- Apache License
- Version 2.0, January 2004
- http://www.apache.org/licenses/
-
- TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
-
- 1. Definitions.
-
- "License" shall mean the terms and conditions for use, reproduction,
- and distribution as defined by Sections 1 through 9 of this document.
-
- "Licensor" shall mean the copyright owner or entity authorized by
- the copyright owner that is granting the License.
-
- "Legal Entity" shall mean the union of the acting entity and all
- other entities that control, are controlled by, or are under common
- control with that entity. For the purposes of this definition,
- "control" means (i) the power, direct or indirect, to cause the
- direction or management of such entity, whether by contract or
- otherwise, or (ii) ownership of fifty percent (50%) or more of the
- outstanding shares, or (iii) beneficial ownership of such entity.
-
- "You" (or "Your") shall mean an individual or Legal Entity
- exercising permissions granted by this License.
-
- "Source" form shall mean the preferred form for making modifications,
- including but not limited to software source code, documentation
- source, and configuration files.
-
- "Object" form shall mean any form resulting from mechanical
- transformation or translation of a Source form, including but
- not limited to compiled object code, generated documentation,
- and conversions to other media types.
-
- "Work" shall mean the work of authorship, whether in Source or
- Object form, made available under the License, as indicated by a
- copyright notice that is included in or attached to the work
- (an example is provided in the Appendix below).
-
- "Derivative Works" shall mean any work, whether in Source or Object
- form, that is based on (or derived from) the Work and for which the
- editorial revisions, annotations, elaborations, or other modifications
- represent, as a whole, an original work of authorship. For the purposes
- of this License, Derivative Works shall not include works that remain
- separable from, or merely link (or bind by name) to the interfaces of,
- the Work and Derivative Works thereof.
-
- "Contribution" shall mean any work of authorship, including
- the original version of the Work and any modifications or additions
- to that Work or Derivative Works thereof, that is intentionally
- submitted to Licensor for inclusion in the Work by the copyright owner
- or by an individual or Legal Entity authorized to submit on behalf of
- the copyright owner. For the purposes of this definition, "submitted"
- means any form of electronic, verbal, or written communication sent
- to the Licensor or its representatives, including but not limited to
- communication on electronic mailing lists, source code control systems,
- and issue tracking systems that are managed by, or on behalf of, the
- Licensor for the purpose of discussing and improving the Work, but
- excluding communication that is conspicuously marked or otherwise
- designated in writing by the copyright owner as "Not a Contribution."
-
- "Contributor" shall mean Licensor and any individual or Legal Entity
- on behalf of whom a Contribution has been received by Licensor and
- subsequently incorporated within the Work.
-
- 2. Grant of Copyright License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- copyright license to reproduce, prepare Derivative Works of,
- publicly display, publicly perform, sublicense, and distribute the
- Work and such Derivative Works in Source or Object form.
-
- 3. Grant of Patent License. Subject to the terms and conditions of
- this License, each Contributor hereby grants to You a perpetual,
- worldwide, non-exclusive, no-charge, royalty-free, irrevocable
- (except as stated in this section) patent license to make, have made,
- use, offer to sell, sell, import, and otherwise transfer the Work,
- where such license applies only to those patent claims licensable
- by such Contributor that are necessarily infringed by their
- Contribution(s) alone or by combination of their Contribution(s)
- with the Work to which such Contribution(s) was submitted. If You
- institute patent litigation against any entity (including a
- cross-claim or counterclaim in a lawsuit) alleging that the Work
- or a Contribution incorporated within the Work constitutes direct
- or contributory patent infringement, then any patent licenses
- granted to You under this License for that Work shall terminate
- as of the date such litigation is filed.
-
- 4. Redistribution. You may reproduce and distribute copies of the
- Work or Derivative Works thereof in any medium, with or without
- modifications, and in Source or Object form, provided that You
- meet the following conditions:
-
- (a) You must give any other recipients of the Work or
- Derivative Works a copy of this License; and
-
- (b) You must cause any modified files to carry prominent notices
- stating that You changed the files; and
-
- (c) You must retain, in the Source form of any Derivative Works
- that You distribute, all copyright, patent, trademark, and
- attribution notices from the Source form of the Work,
- excluding those notices that do not pertain to any part of
- the Derivative Works; and
-
- (d) If the Work includes a "NOTICE" text file as part of its
- distribution, then any Derivative Works that You distribute must
- include a readable copy of the attribution notices contained
- within such NOTICE file, excluding those notices that do not
- pertain to any part of the Derivative Works, in at least one
- of the following places: within a NOTICE text file distributed
- as part of the Derivative Works; within the Source form or
- documentation, if provided along with the Derivative Works; or,
- within a display generated by the Derivative Works, if and
- wherever such third-party notices normally appear. The contents
- of the NOTICE file are for informational purposes only and
- do not modify the License. You may add Your own attribution
- notices within Derivative Works that You distribute, alongside
- or as an addendum to the NOTICE text from the Work, provided
- that such additional attribution notices cannot be construed
- as modifying the License.
-
- You may add Your own copyright statement to Your modifications and
- may provide additional or different license terms and conditions
- for use, reproduction, or distribution of Your modifications, or
- for any such Derivative Works as a whole, provided Your use,
- reproduction, and distribution of the Work otherwise complies with
- the conditions stated in this License.
-
- 5. Submission of Contributions. Unless You explicitly state otherwise,
- any Contribution intentionally submitted for inclusion in the Work
- by You to the Licensor shall be under the terms and conditions of
- this License, without any additional terms or conditions.
- Notwithstanding the above, nothing herein shall supersede or modify
- the terms of any separate license agreement you may have executed
- with Licensor regarding such Contributions.
-
- 6. Trademarks. This License does not grant permission to use the trade
- names, trademarks, service marks, or product names of the Licensor,
- except as required for reasonable and customary use in describing the
- origin of the Work and reproducing the content of the NOTICE file.
-
- 7. Disclaimer of Warranty. Unless required by applicable law or
- agreed to in writing, Licensor provides the Work (and each
- Contributor provides its Contributions) on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
- implied, including, without limitation, any warranties or conditions
- of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
- PARTICULAR PURPOSE. You are solely responsible for determining the
- appropriateness of using or redistributing the Work and assume any
- risks associated with Your exercise of permissions under this License.
-
- 8. Limitation of Liability. In no event and under no legal theory,
- whether in tort (including negligence), contract, or otherwise,
- unless required by applicable law (such as deliberate and grossly
- negligent acts) or agreed to in writing, shall any Contributor be
- liable to You for damages, including any direct, indirect, special,
- incidental, or consequential damages of any character arising as a
- result of this License or out of the use or inability to use the
- Work (including but not limited to damages for loss of goodwill,
- work stoppage, computer failure or malfunction, or any and all
- other commercial damages or losses), even if such Contributor
- has been advised of the possibility of such damages.
-
- 9. Accepting Warranty or Additional Liability. While redistributing
- the Work or Derivative Works thereof, You may choose to offer,
- and charge a fee for, acceptance of support, warranty, indemnity,
- or other liability obligations and/or rights consistent with this
- License. However, in accepting such obligations, You may act only
- on Your own behalf and on Your sole responsibility, not on behalf
- of any other Contributor, and only if You agree to indemnify,
- defend, and hold each Contributor harmless for any liability
- incurred by, or claims asserted against, such Contributor by reason
- of your accepting any such warranty or additional liability.
-
- END OF TERMS AND CONDITIONS
-
- APPENDIX: How to apply the Apache License to your work.
-
- To apply the Apache License to your work, attach the following
- boilerplate notice, with the fields enclosed by brackets "[]"
- replaced with your own identifying information. (Don't include
- the brackets!) The text should be enclosed in the appropriate
- comment syntax for the file format. We also recommend that a
- file or class name and description of purpose be included on the
- same "printed page" as the copyright notice for easier
- identification within third-party archives.
-
- Copyright [2019-2023] [macrozheng]
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
diff --git a/README.md b/README.md
index ca06d9cd..699e0fb2 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,4 @@
# mall学习教程
-
@@ -10,29 +9,50 @@
## 简介
-mall学习教程,架构、业务、技术要点全方位解析。mall项目(60k+star)是一套电商系统,使用现阶段主流技术实现。涵盖了SpringBoot、MyBatis、Elasticsearch、RabbitMQ、Redis、MongoDB、Mysql等技术,采用Docker容器化部署。
+mall学习教程,架构、业务、技术要点全方位解析。mall项目(60k+star)是一套电商系统,使用现阶段主流技术实现。涵盖了SpringBoot、MyBatis、Elasticsearch、RabbitMQ、Redis、MongoDB、MySQL等技术,采用Docker容器化部署。
+
+## 教程网站
+
+- 文档教程:[https://www.macrozheng.com](https://www.macrozheng.com)
+- 视频教程:[https://www.macrozheng.com/video/](https://www.macrozheng.com/video/)
## 项目地址
-- 后台项目:[https://github.com/macrozheng/mall](https://github.com/macrozheng/mall)
-- 前端项目:[https://github.com/macrozheng/mall-admin-web](https://github.com/macrozheng/mall-admin-web)
-- 微服务项目:[https://github.com/macrozheng/mall-swarm](https://github.com/macrozheng/mall-swarm)
+### Github
-## 更好的阅读体验
+- 后端项目:[https://github.com/macrozheng/mall](https://github.com/macrozheng/mall)
+- 后台管理系统项目:[https://github.com/macrozheng/mall-admin-web](https://github.com/macrozheng/mall-admin-web)
+- 前台商城项目:[https://github.com/macrozheng/mall-app-web](https://github.com/macrozheng/mall-app-web)
+- mall学习教程示例代码:[https://github.com/macrozheng/mall-learning](https://github.com/macrozheng/mall-learning)
-文档地址:[https://www.macrozheng.com](https://www.macrozheng.com)
+### Gitee
+
+- 后端项目:[https://gitee.com/macrozheng/mall](https://gitee.com/macrozheng/mall)
+- 后台管理系统项目:[https://gitee.com/macrozheng/mall-admin-web](https://gitee.com/macrozheng/mall-admin-web)
+- 前台商城项目:[https://gitee.com/macrozheng/mall-app-web](https://gitee.com/macrozheng/mall-app-web)
+- mall学习教程示例代码:[https://gitee.com/macrozheng/mall-learning](https://gitee.com/macrozheng/mall-learning)
## 序章
-> 项目架构及数据库概览,推荐一些项目学习所需知识点。
+> 对mall项目的架构、业务及学习思路进行介绍。
+
+- [mall项目架构及功能概览](https://www.macrozheng.com/mall/foreword/mall_foreword_01.html)
+- [mall项目核心功能演示](https://www.macrozheng.com/mall/foreword/mall_foreword_02.html)
+- [mall项目学习所需知识点](https://www.macrozheng.com/mall/foreword/mall_foreword_03.html)
+- [mall项目学习思路及课程介绍](https://www.macrozheng.com/mall/foreword/mall_foreword_04.html)
+
+## 快速开始
-- [mall架构及功能概览](https://www.macrozheng.com/mall/foreword/mall_foreword_01.html)
-- [mall学习所需知识点(推荐资料)](https://www.macrozheng.com/mall/foreword/mall_foreword_02.html)
+> 对mall项目的前后端开发环境搭建进行讲解。
+
+- [mall项目后端开发环境搭建](https://www.macrozheng.com/mall/start/mall_deploy_windows.html)
+- [mall项目前端开发环境搭建](https://www.macrozheng.com/mall/start/mall_deploy_web.html)
## 架构篇
-> 手把手教你搭建一个mall在使用的项目骨架,带你逐步熟悉mall所使用的技术栈。
+> 循序渐进带大家搭建一个mall项目在使用的脚手架,学习主流Java技术栈。涵盖SpringBoot、MyBatis、Lombok、Hutool、Swagger、Redis、SpringSecurity、Elasticsearch、MongoDB、RabbitMQ、MinIO等技术。
+- [mall项目架构篇介绍](https://www.macrozheng.com/mall/architect/mall_arch_overview.html)
- [mall整合SpringBoot+MyBatis搭建基本骨架](https://www.macrozheng.com/mall/architect/mall_arch_01.html)
- [mall整合Swagger-UI实现在线API文档](https://www.macrozheng.com/mall/architect/mall_arch_02.html)
- [mall整合Redis实现缓存功能](https://www.macrozheng.com/mall/architect/mall_arch_03.html)
@@ -46,9 +66,12 @@ mall学习教程,架构、业务、技术要点全方位解析。mall项目(
## 业务篇
-> 全面解析mall中使用的数据库表结构,带你熟悉mall项目中的电商业务。
+> mall项目电商业务与技术实现全方位解析,涵盖权限模块、商品模块、订单模块、营销模块、会员模块的解析。
-- [mall数据库表结构概览](https://www.macrozheng.com/mall/database/mall_database_overview.html)
+- [mall项目后台管理系统业务介绍](https://www.macrozheng.com/mall/database/mall_business_overview.html)
+- [mall项目前台商城系统业务介绍](https://www.macrozheng.com/mall/database/mall_business_app_overview.html)
+- [mall项目开发设计思路](https://www.macrozheng.com/mall/database/mall_dev_design.html)
+- [权限模块数据库表解析](https://www.macrozheng.com/mall/database/mall_ums_01.html)
- [商品模块数据库表解析(一)](https://www.macrozheng.com/mall/database/mall_pms_01.html)
- [商品模块数据库表解析(二)](https://www.macrozheng.com/mall/database/mall_pms_02.html)
- [订单模块数据库表解析(一)](https://www.macrozheng.com/mall/database/mall_oms_01.html)
@@ -59,6 +82,27 @@ mall学习教程,架构、业务、技术要点全方位解析。mall项目(
- [营销模块数据库表解析(三)](https://www.macrozheng.com/mall/database/mall_sms_03.html)
- [权限管理功能设计与优化](https://www.macrozheng.com/mall/database/mall_permission.html)
+## 部署篇
+
+> 实现mall项目的Docker容器化部署和Jenkins自动化部署,同时学习Linux、Docker、Jenkins等技术。
+
+- [mall项目部署篇介绍](https://www.macrozheng.com/mall/deploy/mall_deploy_overview.html)
+- [使用虚拟机安装Linux](https://www.macrozheng.com/mall/deploy/linux_install.html)
+- [Linux常用命令](https://www.macrozheng.com/mall/deploy/linux_command.html)
+- [Linux防火墙Firewall和Iptables的使用](https://www.macrozheng.com/mall/deploy/linux_firewall.html)
+- [Docker环境安装及常用命令](https://www.macrozheng.com/mall/deploy/docker_command.html)
+- [使用Maven插件为SpringBoot应用构建Docker镜像](https://www.macrozheng.com/mall/deploy/docker_maven.html)
+- [使用Dockerfile为SpringBoot应用构建Docker镜像](https://www.macrozheng.com/mall/deploy/docker_file.html)
+- [使用Docker Compose部署SpringBoot应用](https://www.macrozheng.com/mall/deploy/docker_compose.html)
+- [MySQL常用命令](https://www.macrozheng.com/mall/deploy/mysql.html)
+- [mall在Linux环境下的部署(基于Docker容器)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker.html)
+- [mall在Linux环境下的部署(基于Docker Compose)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker_compose.html)
+- [在Linux上搭建Git服务](https://www.macrozheng.com/mall/deploy/gogs_start.html)
+- [使用Jenkins一键打包部署SpringBoot应用](https://www.macrozheng.com/mall/deploy/jenkins.html)
+- [使用Jenkins一键打包部署前端应用](https://www.macrozheng.com/mall/deploy/jenkins_vue.html)
+- [mall使用Jenkins实现自动化部署](https://www.macrozheng.com/mall/deploy/mall_deploy_jenkins.html)
+
+
## 技术要点篇
> mall中一些功能的技术要点解析,这些技术要点和业务结合地比较紧密。
@@ -81,35 +125,12 @@ mall学习教程,架构、业务、技术要点全方位解析。mall项目(
- [Elasticsearch 升级 7.x 版本后,我感觉掉坑里了!](https://www.macrozheng.com/mall/technology/elasticsearch_upgrade.html)
- [搞定Mall项目中的权限管理功能,弄懂这些问题就妥了!](https://www.macrozheng.com/mall/technology/mall_permission_question.html)
-## 部署篇
-
-> mall开发及生产环境的搭建,涵盖Windows、Docker、K8S及自动化部署。
-
-- [mall在Windows环境下的部署](https://www.macrozheng.com/mall/deploy/mall_deploy_windows.html)
-- [mall在Linux环境下的部署(基于Docker容器)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker.html)
-- [mall在Linux环境下的部署(基于Docker Compose)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker_compose.html)
-- [mall前端项目的安装与部署](https://www.macrozheng.com/mall/deploy/mall_deploy_web.html)
-- [mall-swarm在Windows环境下的部署](https://www.macrozheng.com/mall/deploy/mall_swarm_deploy_windows.html)
-- [mall-swarm在Linux环境下的部署(基于Docker容器)](https://www.macrozheng.com/mall/deploy/mall_swarm_deploy_docker.html)
-- [mall使用Jenkins实现自动化部署](https://www.macrozheng.com/mall/deploy/mall_deploy_jenkins.html)
-- [mall-swarm使用Jenkins实现自动化部署](https://www.macrozheng.com/mall/deploy/mall_swarm_deploy_jenkins.html)
-- [mall-swarm微服务项目在K8S下的实践!](https://www.macrozheng.com/mall/deploy/mall_swarm_deploy_k8s.html)
-
## 参考篇
> mall相关技术的参考教程,每篇都是可以独立学习的教程,学习过程中遇到不懂的知识点可以从这里找找。
-- [开发者必备Mysql命令](https://www.macrozheng.com/mall/reference/mysql.html)
-- [还在百度Linux命令?推荐一套我用起来特顺手的命令!](https://www.macrozheng.com/mall/reference/linux_command.html)
-- [Linux防火墙Firewall和Iptables的使用](https://www.macrozheng.com/mall/reference/linux_firewall.html)
-- [还在百度Docker命令?推荐一套我用起来特顺手的命令!](https://www.macrozheng.com/mall/reference/docker_command.html)
-- [使用Maven插件为SpringBoot应用构建Docker镜像](https://www.macrozheng.com/mall/reference/docker_maven.html)
-- [使用DockerFile为SpringBoot应用构建Docker镜像](https://www.macrozheng.com/mall/reference/docker_file.html)
-- [使用Docker Compose部署SpringBoot应用](https://www.macrozheng.com/mall/reference/docker_compose.html)
- [Hutool中那些常用的工具类和方法 ](https://www.macrozheng.com/mall/reference/hutool_start.html)
- [Nginx的这些妙用,你肯定有不知道的!](https://www.macrozheng.com/mall/reference/nginx.html)
-- [使用Jenkins一键打包部署SpringBoot应用,就是这么6!](https://www.macrozheng.com/mall/reference/jenkins.html)
-- [使用Jenkins一键打包部署前端应用,就是这么6!](https://www.macrozheng.com/mall/reference/jenkins_vue.html)
- [Github标星19K+Star,10分钟自建对象存储服务!](https://www.macrozheng.com/mall/reference/minio.html)
- [Spring Data Redis 最佳实践!](https://www.macrozheng.com/mall/reference/spring_data_redis.html)
- [Elasticsearch快速入门,掌握这些刚刚好!](https://www.macrozheng.com/mall/reference/elasticsearch_start.html)
@@ -127,7 +148,6 @@ mall学习教程,架构、业务、技术要点全方位解析。mall项目(
- [解放双手!MyBatis官方代码生成工具给力!](https://www.macrozheng.com/mall/reference/mybatis_generator_start.html)
- [Lombok有啥牛皮的?SpringBoot和IDEA官方都要支持它!](https://www.macrozheng.com/mall/reference/lombok_start.html)
-
## 公众号
学习不走弯路,关注公众号「**macrozheng**」,回复「**学习路线**」,获取mall项目专属学习路线!
diff --git a/document/canal-config/adapter/application.yml b/document/canal-config/adapter/application.yml
deleted file mode 100644
index 4d570af1..00000000
--- a/document/canal-config/adapter/application.yml
+++ /dev/null
@@ -1,65 +0,0 @@
-server:
- port: 8081
-spring:
- jackson:
- date-format: yyyy-MM-dd HH:mm:ss
- time-zone: GMT+8
- default-property-inclusion: non_null
-
-canal.conf:
- mode: tcp # 客户端的模式,可选tcp kafka rocketMQ
- flatMessage: true # 扁平message开关, 是否以json字符串形式投递数据, 仅在kafka/rocketMQ模式下有效
- zookeeperHosts: # 对应集群模式下的zk地址
- syncBatchSize: 1000 # 每次同步的批数量
- retries: 0 # 重试次数, -1为无限重试
- timeout: # 同步超时时间, 单位毫秒
- accessKey:
- secretKey:
- consumerProperties:
- # canal tcp consumer
- canal.tcp.server.host: 127.0.0.1:11111 #设置canal-server的地址
- canal.tcp.zookeeper.hosts:
- canal.tcp.batch.size: 500
- canal.tcp.username:
- canal.tcp.password:
- # kafka consumer
- kafka.bootstrap.servers: 127.0.0.1:9092
- kafka.enable.auto.commit: false
- kafka.auto.commit.interval.ms: 1000
- kafka.auto.offset.reset: latest
- kafka.request.timeout.ms: 40000
- kafka.session.timeout.ms: 30000
- kafka.isolation.level: read_committed
- kafka.max.poll.records: 1000
- # rocketMQ consumer
- rocketmq.namespace:
- rocketmq.namesrv.addr: 127.0.0.1:9876
- rocketmq.batch.size: 1000
- rocketmq.enable.message.trace: false
- rocketmq.customized.trace.topic:
- rocketmq.access.channel:
- rocketmq.subscribe.filter:
- # rabbitMQ consumer
- rabbitmq.host:
- rabbitmq.virtual.host:
- rabbitmq.username:
- rabbitmq.password:
- rabbitmq.resource.ownerId:
-
- srcDataSources: # 源数据库配置
- defaultDS:
- url: jdbc:mysql://127.0.0.1:3306/canal_test?useUnicode=true
- username: canal
- password: canal
- canalAdapters: # 适配器列表
- - instance: example # canal实例名或者MQ topic名
- groups: # 分组列表
- - groupId: g1 # 分组id, 如果是MQ模式将用到该值
- outerAdapters:
- - name: logger # 日志打印适配器
- - name: es7 # ES同步适配器
- hosts: 127.0.0.1:9200 # ES连接地址
- properties:
- mode: rest # 模式可选transport(9300) 或者 rest(9200)
- # security.auth: test:123456 # only used for rest mode
- cluster.name: elasticsearch # ES集群名称
\ No newline at end of file
diff --git a/document/canal-config/adapter/product.yml b/document/canal-config/adapter/product.yml
deleted file mode 100644
index bd96d0a9..00000000
--- a/document/canal-config/adapter/product.yml
+++ /dev/null
@@ -1,16 +0,0 @@
-dataSourceKey: defaultDS # 源数据源的key, 对应上面配置的srcDataSources中的值
-destination: example # canal的instance或者MQ的topic
-groupId: g1 # 对应MQ模式下的groupId, 只会同步对应groupId的数据
-esMapping:
- _index: canal_product # es 的索引名称
- _id: _id # es 的_id, 如果不配置该项必须配置下面的pk项_id则会由es自动分配
- sql: "SELECT
- p.id AS _id,
- p.title,
- p.sub_title,
- p.price,
- p.pic
- FROM
- product p" # sql映射
- etlCondition: "where a.c_time>={}" #etl的条件参数
- commitBatch: 3000 # 提交批大小
\ No newline at end of file
diff --git a/document/canal-config/admin/application.yml b/document/canal-config/admin/application.yml
deleted file mode 100644
index 2b94e94d..00000000
--- a/document/canal-config/admin/application.yml
+++ /dev/null
@@ -1,21 +0,0 @@
-server:
- port: 8089
-spring:
- jackson:
- date-format: yyyy-MM-dd HH:mm:ss
- time-zone: GMT+8
-
-spring.datasource:
- address: 127.0.0.1:3306
- database: canal_manager
- username: root
- password: root
- driver-class-name: com.mysql.jdbc.Driver
- url: jdbc:mysql://${spring.datasource.address}/${spring.datasource.database}?useUnicode=true&characterEncoding=UTF-8&useSSL=false
- hikari:
- maximum-pool-size: 30
- minimum-idle: 1
-
-canal:
- adminUser: admin
- adminPasswd: admin
\ No newline at end of file
diff --git a/document/canal-config/server/canal_local.properties b/document/canal-config/server/canal_local.properties
deleted file mode 100644
index 9b1734a7..00000000
--- a/document/canal-config/server/canal_local.properties
+++ /dev/null
@@ -1,11 +0,0 @@
-# register ip
-canal.register.ip =
-
-# canal admin config
-canal.admin.manager = 127.0.0.1:8089
-canal.admin.port = 11110
-canal.admin.user = admin
-canal.admin.passwd = 4ACFE3202A5FF5CF467898FC58AAB1D615029441
-# admin auto register
-canal.admin.register.auto = true
-canal.admin.register.cluster =
\ No newline at end of file
diff --git a/document/canal-config/server/canal_test.sql b/document/canal-config/server/canal_test.sql
deleted file mode 100644
index cc301cf4..00000000
--- a/document/canal-config/server/canal_test.sql
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- Navicat Premium Data Transfer
-
- Source Server : linux-local
- Source Server Type : MySQL
- Source Server Version : 50728
- Source Host : 192.168.5.94:3306
- Source Schema : canal_test
-
- Target Server Type : MySQL
- Target Server Version : 50728
- File Encoding : 65001
-
- Date: 23/10/2020 17:16:07
-*/
-
-SET NAMES utf8mb4;
-SET FOREIGN_KEY_CHECKS = 0;
-
--- ----------------------------
--- Table structure for product
--- ----------------------------
-DROP TABLE IF EXISTS `product`;
-CREATE TABLE `product` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `sub_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `price` decimal(10, 2) NULL DEFAULT NULL,
- `pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-
-SET FOREIGN_KEY_CHECKS = 1;
diff --git a/document/canal-config/server/instance.properties b/document/canal-config/server/instance.properties
deleted file mode 100644
index c41affe0..00000000
--- a/document/canal-config/server/instance.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-#################################################
-## mysql serverId , v1.0.26+ will autoGen
-# canal.instance.mysql.slaveId=0
-
-# enable gtid use true/false
-canal.instance.gtidon=false
-
-# position info
-canal.instance.master.address=127.0.0.1:3306
-canal.instance.master.journal.name=
-canal.instance.master.position=
-canal.instance.master.timestamp=
-canal.instance.master.gtid=
-
-# rds oss binlog
-canal.instance.rds.accesskey=
-canal.instance.rds.secretkey=
-canal.instance.rds.instanceId=
-
-# table meta tsdb info
-canal.instance.tsdb.enable=true
-#canal.instance.tsdb.url=jdbc:mysql://127.0.0.1:3306/canal_tsdb
-#canal.instance.tsdb.dbUsername=canal
-#canal.instance.tsdb.dbPassword=canal
-
-#canal.instance.standby.address =
-#canal.instance.standby.journal.name =
-#canal.instance.standby.position =
-#canal.instance.standby.timestamp =
-#canal.instance.standby.gtid=
-
-# username/password
-canal.instance.dbUsername=canal
-canal.instance.dbPassword=canal
-canal.instance.connectionCharset = UTF-8
-# enable druid Decrypt database password
-canal.instance.enableDruid=false
-#canal.instance.pwdPublicKey=MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBALK4BUxdDltRRE5/zXpVEVPUgunvscYFtEip3pmLlhrWpacX7y7GCMo2/JM6LeHmiiNdH1FWgGCpUfircSwlWKUCAwEAAQ==
-
-# table regex
-canal.instance.filter.regex=.*\\..*
-# table black regex
-canal.instance.filter.black.regex=mysql\\.slave_.*
-# table field filter(format: schema1.tableName1:field1/field2,schema2.tableName2:field1/field2)
-#canal.instance.filter.field=test1.t_product:id/subject/keywords,test2.t_company:id/name/contact/ch
-# table field black filter(format: schema1.tableName1:field1/field2,schema2.tableName2:field1/field2)
-#canal.instance.filter.black.field=test1.t_product:subject/product_image,test2.t_company:id/name/contact/ch
-
-# mq config
-canal.mq.topic=example
-# dynamic topic route by schema or table regex
-#canal.mq.dynamicTopic=mytest1.user,mytest2\\..*,.*\\..*
-canal.mq.partition=0
-# hash partition config
-#canal.mq.partitionsNum=3
-#canal.mq.partitionHash=test.table:id^name,.*\\..*
-#canal.mq.dynamicTopicPartitionNum=test.*:4,mycanal:6
-#################################################
diff --git a/document/fluentd/docker-compose-efk.yml b/document/fluentd/docker-compose-efk.yml
deleted file mode 100644
index 1c06260e..00000000
--- a/document/fluentd/docker-compose-efk.yml
+++ /dev/null
@@ -1,47 +0,0 @@
-version: '3'
-services:
- elasticsearch:
- image: elasticsearch:6.4.0
- container_name: efk-elasticsearch
- user: root
- environment:
- - "cluster.name=elasticsearch" #设置集群名称为elasticsearch
- - "discovery.type=single-node" #以单一节点模式启动
- - "ES_JAVA_OPTS=-Xms512m -Xmx512m" #设置使用jvm内存大小
- - TZ=Asia/Shanghai
- volumes:
- - /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins #插件文件挂载
- - /mydata/elasticsearch/data:/usr/share/elasticsearch/data #数据文件挂载
- ports:
- - 9200:9200
- - 9300:9300
- kibana:
- image: kibana:6.4.0
- container_name: efk-kibana
- links:
- - elasticsearch:es #可以用es这个域名访问elasticsearch服务
- depends_on:
- - elasticsearch #kibana在elasticsearch启动之后再启动
- environment:
- - "elasticsearch.hosts=http://es:9200" #设置访问elasticsearch的地址
- - TZ=Asia/Shanghai
- ports:
- - 5601:5601
- fluentd:
- image: fluent/fluentd:v1.10
- container_name: efk-fluentd
- user: root
- environment:
- - TZ=Asia/Shanghai
- volumes:
- - /mydata/fluentd/log:/fluentd/log
- - /mydata/fluentd/fluent.conf:/fluentd/etc/fluent.conf
- depends_on:
- - elasticsearch #kibana在elasticsearch启动之后再启动
- links:
- - elasticsearch:es #可以用es这个域名访问elasticsearch服务
- ports:
- - 24221:24221
- - 24222:24222
- - 24223:24223
- - 24224:24224
\ No newline at end of file
diff --git a/document/fluentd/fluent-default.conf b/document/fluentd/fluent-default.conf
deleted file mode 100644
index 24a37b57..00000000
--- a/document/fluentd/fluent-default.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-
- @type forward
- @id input1
- @label @mainstream
- port 24224
-
-
-
- @type stdout
-
-
-
-
- @type file
- @id output_docker1
- path /fluentd/log/docker.*.log
- symlink_path /fluentd/log/docker.log
- append true
- time_slice_format %Y%m%d
- time_slice_wait 1m
- time_format %Y%m%dT%H%M%S%z
-
-
- @type file
- @id output1
- path /fluentd/log/data.*.log
- symlink_path /fluentd/log/data.log
- append true
- time_slice_format %Y%m%d
- time_slice_wait 10m
- time_format %Y%m%dT%H%M%S%z
-
-
diff --git a/document/fluentd/fluent.conf b/document/fluentd/fluent.conf
deleted file mode 100644
index 84ed22f3..00000000
--- a/document/fluentd/fluent.conf
+++ /dev/null
@@ -1,66 +0,0 @@
-
- @type tcp
- @id debug-input
- port 24221
- tag debug
-
- @type json
-
-
-
-
- @type tcp
- @id error-input
- port 24222
- tag error
-
- @type json
-
-
-
-
- @type tcp
- @id business-input
- port 24223
- tag business
-
- @type json
-
-
-
-
- @type tcp
- @id record-input
- port 24224
- tag record
-
- @type json
-
-
-
-
- @type parser
- key_name message
- reserve_data true
- remove_key_name_field true
-
- @type json
-
-
-
-
- @type stdout
- output_type json
-
-
-
- @type elasticsearch
- host 192.168.3.101
- port 9200
- type_name docker
- logstash_format true
- logstash_prefix docker-${tag}-logs
- logstash_dateformat %Y-%m-%d
- flush_interval 5s
- include_tag_key true
-
diff --git a/document/json/localThemeList.json b/document/json/localThemeList.json
deleted file mode 100644
index 1fcc944f..00000000
--- a/document/json/localThemeList.json
+++ /dev/null
@@ -1,462 +0,0 @@
-[
- {
- "themeId": "1",
- "itemId": null,
- "name": "橙心",
- "cover": "https://files.mdnice.com/pic/9322d897-85d5-4be1-9c9d-c392d4d39bff.png",
- "css": "/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n}\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n}\n/* 一级标题 */\n#nice h1 {\n}\n/* 一级标题内容 */\n#nice h1 .content {\n}\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n/* 二级标题 */\n#nice h2 {\n border-bottom: 2px solid rgb(239, 112, 96);\n font-size: 1.3em;\n}\n/* 二级标题内容 */\n#nice h2 .content {\n display: inline-block;\n font-weight: bold;\n background: rgb(239, 112, 96);\n color: #ffffff;\n padding: 3px 10px 1px;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n margin-right: 3px;\n}\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n display: inline-block;\n content: \" \";\n vertical-align: bottom;\n border-bottom: 36px solid #efebe9;\n border-right: 20px solid transparent;\n}\n/* 三级标题 */\n#nice h3 {\n}\n/* 三级标题内容 */\n#nice h3 .content {\n}\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n border-left-color: rgb(239, 112, 96);\n background: #fff9f9;\n}\n/* 引用文字 */\n#nice .multiquote-1 p {\n}\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: rgb(239, 112, 96);\n border-bottom: 1px solid rgb(239, 112, 96);\n}\n/* 加粗 */\n#nice strong {\n}\n/* 斜体 */\n#nice em {\n}\n/* 加粗斜体 */\n#nice em strong {\n}\n/* 删除线 */\n#nice del {\n}\n/* 分隔线\n * 粗细、样式和颜色\n * border-top: 1px solid #3e3e3e;\n */\n#nice hr {\n}\n/* 图片\n * 宽度 width: 80%;\n * 居中 margin: 0 auto;\n * 居左 margin: 0 0;\n */\n#nice img {\n}\n/* 图片描述文字 */\n#nice figcaption {\n}\n/* 行内代码 */\n#nice p code, #nice li code {\n color: rgb(239, 112, 96);\n}\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n/* 脚注文字 */\n#nice .footnote-word {\n color: #ff3502;\n}\n/* 脚注上标 */\n#nice .footnote-ref {\n color: rgb(239, 112, 96);\n}\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": "https://mp.weixin.qq.com/s?__biz=MzIwNTA4NzI1Mw==&mid=2247485062&idx=1&sn=0eaa314bb165c71a8f57c8baf4226f57&source=41#wechat_redirect",
- "html": null,
- "exampleHtml": null,
- "authorName": "zhning12",
- "authorEmail": null,
- "description": "橙心的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21231,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T09:57:55.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "3",
- "itemId": null,
- "name": "姹紫",
- "cover": "https://files.mdnice.com/pic/e989865f-32c6-4201-a486-9f85fe7c2fab.png",
- "css": "/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n font-size: 15px;\n letter-spacing: 0.05em;\n color:#595959\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n margin: 1em 4px;\n}\n\n/* 一级标题 */\n#nice h1 {\n margin: 1.2em 0 1em;\n padding: 0;\n font-weight: bold;\n color:#773098;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n min-height: 32px;\n line-height: 28px;\n border-bottom: solid 1px #000000;\n color: #773098;\n display: inline-block;\n border-bottom-width: 1px;\n border-bottom-style: solid;\n border-color: #773098;\n padding-top: 5px;\n padding-right: 0.5em;\n padding-left: 0.5em;\n margin-bottom: -3px;\n font-size: 22px;\n margin:1em auto;\n padding: 0.5em 0;\n text-align: center;\n width: 85%;\n font-weight: bold;\n display: flex;\n flex-direction: column;\n justify-content: center;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n margin: 1.2em 0 1em;\n padding: 0;\n font-weight: bold;\n color:#773098;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n margin: 10px 0;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n margin: 10px 5px;\n border-left: 3px solid #9654B5;\n border-right: 1px solid #9654B5;\n color: #616161;\n quotes: none;\n background:#FBF9FD\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #773098;\n border-bottom: 1px solid #773098;\n}\n\n/* 加粗 */\n#nice strong {\n color:#773098;\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top: 1px solid #3e3e3e;\n*/\n#nice hr {\n border: 1px solid #773098;\n margin: 1.5em auto;\n}\n\n/* 图片\n* 宽度 width: 80%;\n* 居中 margin: 0 auto;\n* 居左 margin: 0 0;\n*/\n#nice img {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: #9654B5;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #773098;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #773098;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": null,
- "html": null,
- "exampleHtml": null,
- "authorName": "djmaxwow",
- "authorEmail": null,
- "description": "姹紫的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21232,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:00.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "4",
- "itemId": null,
- "name": "嫩青",
- "cover": "https://files.mdnice.com/pic/94cff81b-a086-46aa-a70e-1b9771b67cfc.png",
- "css": "/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n color: rgb(89,89,89);\n}\n\n/* 一级标题 */\n#nice h1 {\n color: rgb(89,89,89);\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n border-bottom: 2px solid rgb(89,89,89);\n margin-bottom: 30px;\n color: rgb(89,89,89);\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n font-size: 22px;\n display: inline-block;\n border-bottom: 2px solid rgb(89,89,89);\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n color: rgb(89,89,89);\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n\n/* 引用\n* 左边缘颜色 border-left-color: black;\n* 背景色 background: gray;\n*/\n#nice .multiquote-1 {\n font-style: normal;\n padding: 10px;\n position: relative;\n line-height: 1.8;\n text-indent: 0;\n border: none;\n color: #888;\n}\n\n#nice .multiquote-1:before {\n content: \"“\";\n display: inline;\n color: #555555;\n font-size: 4em;\n font-family: Arial, serif;\n line-height: 1em;\n font-weight: 700;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n display: inline;\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: rgb(71, 193, 168);\n border-bottom: 1px solid rgb(71, 193, 168);\n}\n\n/* 加粗 */\n#nice strong {\n color: rgb(71, 193, 168);\n}\n\n/* 斜体 */\n#nice em {\n color: rgb(71, 193, 168);\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: rgb(71, 193, 168);\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top: 1px solid #3e3e3e;\n*/\n#nice hr {\n}\n\n/* 图片\n* 宽度 width: 80%;\n* 居中 margin: 0 auto;\n* 居左 margin: 0 0;\n*/\n#nice img {\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: rgb(71, 193, 168);\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: rgb(71, 193, 168);\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: rgb(71, 193, 168);\n}\n\n#nice .footnote-item em {\n color: black;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": null,
- "html": null,
- "exampleHtml": null,
- "authorName": "画手",
- "authorEmail": null,
- "description": "嫩青的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21233,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:06.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "5",
- "itemId": null,
- "name": "绿意",
- "cover": "https://files.mdnice.com/pic/02f3f593-3380-4aa6-9d90-6e2b6f276558.png",
- "css": "/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n font-size: 15px;\n letter-spacing: 0.05em;\n color:#595959\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n margin: 1em 4px;\n}\n\n/* 一级标题 */\n#nice h1 {\n margin: 1.2em 0 1em;\n padding: 0;\n font-weight: bold;\n color:#35b378;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n bmin-height: 32px;\n line-height: 32px;\n border-bottom: solid 1px #000000;\n color: #35b378;\n display: inline-block;\n border-bottom-width: 0px;\n border-bottom-style: solid;\n border-color: #35b378;\n padding-top: 5px;\n padding-right: 0.5em;\n padding-left: 0.5em;\n font-size: 23px;\n margin: 1em 0 0rem 0;\n padding: 0.5em 0;\n text-align: leftt;\n font-weight: bold;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n margin: 1.2em 0 1em;\n padding: 0;\n font-weight: bold;\n color: #35b378;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n margin: 10px 0;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n margin: 10px 5px;\n border-left: 3px solid #35b378;\n border-right: 0px solid #35b378;\n color: #616161;\n quotes: none;\n background: #FBF9FD\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #35b378;\n border-bottom: 1px solid #35b378;\n}\n\n/* 加粗 */\n#nice strong {\n color:#35b378;\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n * 粗细、样式和颜色\n * border-top: 1px solid #3e3e3e;\n */\n#nice hr {\n border: 1px solid #35b378;\n margin: 1.5em auto;\n}\n\n/* 图片\n * 宽度 width: 80%;\n * 居中 margin: 0 auto;\n * 居左 margin: 0 0;\n */\n#nice img {\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: #35b378;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #35b378;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #35b378;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": "https://mp.weixin.qq.com/s/gpancJ62Dkd4ccXzFg2g5Q",
- "html": null,
- "exampleHtml": null,
- "authorName": "夜尽天明",
- "authorEmail": null,
- "description": "绿意的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21234,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:12.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "6",
- "itemId": null,
- "name": "红绯",
- "cover": "https://files.mdnice.com/pic/9f008265-8511-4f9c-aafd-87027c94bd58.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n * 页边距 padding:30px;\n * 全文字体 font-family:ptima-Regular;\n * 英文换行 word-break:break-all;\n */\n#nice {\n font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, \"PingFang SC\", Cambria, Cochin, Georgia, Times, \"Times New Roman\", serif;\n padding: 5px;\n font-size: 16px;\n color: #353535;\n word-spacing: 0.8px;\n letter-spacing: 0.8px;\n border-radius: 16px;\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top:5px;\n * 下边距 margin-bottom:5px;\n * 行高 line-height:26px;\n * 词间距 word-spacing:3px;\n * 字间距 letter-spacing:3px;\n * 对齐 text-align:left;\n * 颜色 color:#3e3e3e;\n * 字体大小 font-size:16px;\n * 首行缩进 text-indent:2em;\n */\n#nice p {\n line-height: 1.75;\n margin: 0.8em 0;\n font-size: 16px;\n color: #353535;\n}\n\n/* 一级标题 */\n#nice h1 {\n border-top: 2px solid rgb(248, 57, 41);\n text-align: center;\n font-size: 1.3em;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n display: inline-block;\n font-weight: normal;\n background: rgb(248, 57, 41);\n color: #ffffff;\n padding: 3px 10px 1px;\n border-radius: 0 0 13px 13px;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n text-align: left;\n margin: 20px 10px 0px 0px;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n font-size: 18px;\n font-weight: 700;\n color: #222;\n display: inline-block;\n padding-left: 10px;\n border-left: 5px solid rgb(248, 57, 41);\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {}\n\n/* 三级标题 */\n#nice h3 {}\n\n/* 三级标题内容 */\n#nice h3 .content {\n font-size: 16px;\n color: #222;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n color: #f83929;\n font-size: 16px;\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n color: #f83929;\n font-size: 16px;\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n color: #353535;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color:black;\n * 背景色 background:gray;\n */\n#nice .multiquote-1 {\n font-style: normal;\n border-left: none;\n padding: 15px 10px;\n line-height: 1.75;\n border-radius: 13px;\n color: #353535;\n background: #f5f5f5;\n}\n\n#nice .multiquote-1:before {\n content: \"“\";\n display: block;\n font-size: 2em;\n color: rgb(248, 57, 41);\n font-family: Arial, serif;\n line-height: 1em;\n font-weight: 700;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n color: #353535;\n font-size: 16px;\n margin: 0 10px;\n display: block;\n}\n\n#nice .multiquote-1:after {\n content: \"”\";\n float: right;\n display: block;\n font-size: 2em;\n color: rgb(248, 57, 41);\n font-family: Arial, serif;\n line-height: 1em;\n font-weight: 700;\n}\n\n/* 链接 \n* border-bottom: 1px solid #009688;\n*/\n#nice a {\n color: rgb(248, 57, 41);\n font-weight: 400;\n border-bottom: 1px solid rgb(248, 57, 41);\n\n}\n\n/* 加粗 */\n#nice strong {\n font-weight: 700;\n color: rgb(248, 57, 41);\n}\n\n/* 斜体 */\n#nice em {\n color: rgb(248, 57, 41);\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: rgb(248, 57, 41);\n}\n\n/* 删除线 */\n#nice del {}\n\n/* 分隔线\n * 粗细、样式和颜色\n * border-top:1px solid #3e3e3e;\n */\n#nice hr {\n height: 1px;\n padding: 0;\n border: none;\n border-top: medium solidid #333;\n text-align: center;\n background-image: linear-gradient(to right, rgba(248, 57, 41, 0), rgba(248, 57, 41, 0.75), rgba(248, 57, 41, 0));\n}\n\n/* 图片\n * 宽度 width:80%;\n * 居中 margin:0 auto;\n * 居左 margin:0 0;\n */\n#nice figure {\n border-radius: 16px;\n overflow: hidden;\n}\n\n#nice figure a img {\n border-radius: 16px;\n width: 100%;\n max-width: 100%;\n}\n\n#nice img {\n border-radius: 6px;\n display: block;\n margin: 20px auto;\n max-width: 95%;\n object-fit: contain;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display: block;\n font-size: 12px;\n}\n\n/* 行内代码 */\n#nice p code,\n#nice li code {\n color: rgb(271, 93, 108);\n}\n\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice pre code {}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size: 16px;\n color: #645647;\n}\n\n#nice table tr th {\n color: #353535;\n background-color: #dbd9d8;\n}\n\n#nice .footnotes {\n font-size: 16px;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n font-weight: normal;\n color: #f83929;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n font-weight: normal;\n color: #f83929;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n font-size: 16px;\n display: block;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n content: '参考资料 ';\n color: #f83929;\n letter-spacing: 1px;\n text-align: left;\n display: block;\n font-weight: 500;\n padding-bottom: .1em;\n border-bottom: 3px double #f83929;\n font-size: 20px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n color: #f83929;\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n font-weight: 400;\n color: #f83929;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-weight: 400;\n font-size: 14px;\n color: #353535;\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n color: #353535;\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg {\n color: #353535;\n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width: 100%;\n margin-bottom: 0;\n}",
- "article": "",
- "html": null,
- "exampleHtml": null,
- "authorName": "HeyRain",
- "authorEmail": null,
- "description": "红绯的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21238,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:19.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "8",
- "itemId": null,
- "name": "蓝莹",
- "cover": "https://files.mdnice.com/pic/248727f4-d81c-42a3-9723-3a1e5bdbda30.png",
- "css": "/* 全局属性 */\n\n#nice {\n font-family: \"PingFang SC\", \"Microsoft YaHei\", sans-serif;\n word-break: break-all;\n}\n\n/* 标题 */\n#nice h1 {\n font-size: 1.7em;\n font-weight: normal;\n border-bottom: 2px solid hsl(216, 100%, 68%);\n}\n\n#nice h1 .content {\n background: hsl(216, 100%, 68%);\n color: white;\n padding: 3px 10px;\n border-top-right-radius: 3px;\n border-top-left-radius: 3px;\n margin-right: 3px;\n}\n\n#nice h2 {\n font-weight: normal;\n color: #333;\n font-size: 1.4em;\n border-bottom: 1px solid hsl(216, 100%, 68%);\n}\n\n#nice h2 .content {\n border-bottom: 1px solid hsl(216, 100%, 68%);\n}\n\n#nice h3 {\n font-weight: normal;\n color: #333;\n font-size: 1.2em;\n}\n\n/* 特殊规定:\n * h4 → 摘要\n * h5 → 强调\n * h6 → 序号\n * em → 高亮\n */\n\n#nice h4 {\n font-weight: normal;\n font-size: 1em;\n width: 80%;\n border: 1px solid hsl(216, 100%, 68%);\n border-top: 4px solid hsl(216, 100%, 68%);\n padding: 10px;\n margin: 30px auto;\n color: #333;\n}\n\n#nice h5 {\n font-weight: normal;\n font-size: 1.3em;\n text-align: center;\n background: hsl(216, 100%, 68%);\n border: 3px double #fff;\n width: 80%;\n padding: 10px;\n margin: 30px auto;\n color: #fff;\n}\n\n#nice h6 {\n font-size: 1.5em;\n font-weight: normal;\n color: hsl(216, 100%, 68%);\n border-bottom: 1px solid hsl(216, 100%, 68%);\n}\n\n#nice em {\n font-style: normal;\n font-weight: normal;\n color: white;\n background: hsl(244, 100%, 75%);\n padding: 2px 4px;\n\tmargin: 0px 2px;\n}\n\n/* 其他块元素 */\n\n#nice ol,\n#nice ul {\n padding-left: 2em;\n}\n\n#nice hr {\n width: 90%;\n margin: 1.5em auto;\n border-top: 2px dashed hsl(216, 100%, 68%);\n}\n\n#nice table {\n margin: 1.5em auto;\n width: auto;\n}\n\n#nice img {\n width: 90%;\n margin: 0 auto;\n box-shadow: #CCC 0 10px 15px;\n}\n\n#nice .multiquote-1 {\n background: #f9f9f9;\n border-left-color: hsl(216, 100%, 68%);\n}\n\n#nice .multiquote-1 p {\n color: #999;\n padding: 3px 0;\n}\n\n#nice a {\n color: hsl(187, 100%, 45%);\n font-weight: normal;\n border-bottom-color: hsl(187, 100%, 45%);\n}\n\n#nice strong {\n color: hsl(216, 80%, 44%);\n}\n\n#nice s,\n#nice del {\n color: #999;\n}\n\n#nice p,\n#nice li,\n#nice li span,\n#nice h4,\n#nice table tr td {\n color: #666;\n}\n\n#nice table tr th {\n color: #333;\n font-weight: normal;\n}\n\n#nice p code,\n#nice li code {\n color: hsl(216, 100%, 68%);\n}\n\n#nice sup {\n line-height: 0;\n}\n\n#nice .footnote-word,\n.footnote-ref {\n font-weight: normal;\n color: hsl(187, 100%, 45%);\n}\n\n#nice .footnotes-sep {\n font-family: inherit;\n}\n\n#nice .footnote-num {\n font-family: inherit;\n}\n\n#nice .footnote-item p {\n color: #666;\n}\n\n#nice .footnote-item p em {\n color: #999;\n background: transparent;\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/OfRQaBe3XVXXjE7f84nSwA",
- "html": null,
- "exampleHtml": null,
- "authorName": "谭淞宸",
- "authorEmail": null,
- "description": "蓝莹的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21239,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:33.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "10",
- "itemId": null,
- "name": "兰青",
- "cover": "https://files.mdnice.com/pic/c65c74bf-37c7-4b0b-97b9-1c8c47615535.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n text-align: justify;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 1.8em;\n color: #009688;\n \tmargin: 1.2em auto;\n text-align: center;\n border-bottom: 1px solid #009688;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n color: #009688;\n padding-left: 10px;\n margin: 1em auto;\n border-left: 3px solid #009688;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n margin: 0.6em auto;\n padding-left: 10px;\n border-left: 2px solid #009688;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 四级标题 */\n#nice h4 {\n margin: 0.6em auto;\n font-size: 1.2em;\n padding-left: 10px;\n border-left: 2px dashed #009688;\n}\n\n/* 五级标题 */\n#nice h5 {\n margin: 0.6em auto;\n font-size: 1.1em;\n padding-left: 10px;\n border-left: 1px dashed #009688;\n}\n\n/* 六级标题 */\n#nice h6 {\n margin: 0.6em auto;\n font-size: 1em;\n padding-left: 10px;\n border-left: 1px dotted #009688;\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n border-left: 2px solid #888;\n border-right: 2px solid #888;\n padding-left: 1em;\n color: #777;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #009688;\n border-bottom: 1px solid #009688;\n}\n\n/* 加粗 */\n#nice strong {\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n * 粗细、样式和颜色\n * border-top: 1px solid #3e3e3e;\n */\n#nice hr {\n margin: 20px 0;\n}\n\n/* 图片\n * 宽度 width: 80%;\n * 居中 margin: 0 auto;\n * 居左 margin: 0 0;\n */\n#nice img {\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: #009688;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/* 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th {\n border: 1px solid #009688;\n background-color: #009688;\n color: #f8f8f8;\n border-bottom: 0;\n}\n\n#nice table tr td {\n border: 1px solid #009688;\n}\n\n#nice table tr:nth-child(2n) {\n background-color: #f8f8f8;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #009688;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #009688;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": "https://mp.weixin.qq.com/s/iL8xlH0I3yOEOrhcBqc0kg",
- "html": null,
- "exampleHtml": null,
- "authorName": "Krahets",
- "authorEmail": null,
- "description": "兰青的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21240,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:47.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "11",
- "itemId": null,
- "name": "山吹",
- "cover": "https://files.mdnice.com/pic/2d041c6f-564b-4392-9636-9998f2b056bb.png",
- "css": "/*自定义样式,实时生效*/\n#nice {\n}\n\n#nice p {\n\tmargin: 0 0 20px;\n\tpadding: 0;\n\tline-height: 1.8em;\n\tcolor: #3a3a3a;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 2.1em;\n\tline-height: 1.1em;\n\tpadding-top: 16px;\n padding-bottom: 10px;\n margin-bottom: 4px;\n border-bottom: 1px solid #c99833;\n}\n/* 一级标题内容 */\n#nice h1 .content {\n color: #515151;\n font-weight: 700;\n}\n\n#nice h2, h3, h4, h5, h6 {\n line-height: 1.5em;\n margin-top: 2.2em;\n margin-bottom: 4px;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n margin-bottom: 35px;\n}\n\n/* 二级标题内容 */\n\n#nice h2 .content {\n display: inline-block;\n font-weight: bold;\n background: linear-gradient(#fff 60%, #ffb11b 40%);\n color: #515151;\n padding: 2px 13px 2px;\n margin-right: 3px;\n height: 50%;\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {}\n\n/* 三级标题 */\n#nice h3 {\n line-height: 1.4;\n padding-top: 10px;\n margin: 10px 0 5px;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n color: #515151;\n font-weight: 700;\n font-size: 1.0em;\n padding-left: 20px;\n border-left: 3px solid #f9bf45;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n/* 引用\n* 左边缘颜色 border-left-color: black;\n* 背景色 background: gray;\n*/\n#nice .multiquote-1 {\n border-left-color: #ffb11b;\n background: #fff5e3;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n color: #595959;\n}\n\n/* 链接 */\n#nice a {\n border: none;\n text-decoration: none;\n color: #dda52d;\n}\n\n#nice a:hover {\n color: #f9bf45;\n text-decoration: underline;\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n\n/* 加粗 */\n#nice strong {}\n\n/* 斜体 */\n#nice em {}\n\n/* 加粗斜体 */\n#nice em strong {}\n\n/* 删除线 */\n#nice del {\n color: #d19826;\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top: 1px solid #3e3e3e;\n*/\n#nice hr {\n border-top: 1px solid #f9bf45;\n margin: 20px 0px;\n}\n\n/* 图片\n* 宽度 width: 80%;\n* 居中 margin: 0 auto;\n* 居左 margin: 0 0;\n*/\n#nice img {\n width: 100%;\n border-radius: 5px;\n display: block;\n margin-bottom: 15px;\n height: auto;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n color: #dda52d;\n font-size: 14px;\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: #9b6e23;\n background-color: #fff5e3;\n padding: 3px;\n margin: 3px;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n text-align: center;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #ffb11b;\n padding: 3px;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #dda52d;\n margin: 2px;\n padding: 3px;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n margin: 30px 0px 15px 0px;\n font-weight: 800;\n}\n\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "",
- "html": null,
- "exampleHtml": null,
- "authorName": "ElyhG",
- "authorEmail": null,
- "description": "山吹的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21235,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:53.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "12",
- "itemId": null,
- "name": "前端之巅同款",
- "cover": "https://files.mdnice.com/pic/473ace64-588c-4bcb-9ef3-0b005c78c1f2.png",
- "css": "/*初始化格式*/\n\n#nice {\n line-height: 1.6;\n letter-spacing: .034em;\n color: rgb(63, 63, 63);\n font-size: 16px;\n word-break:all;\n}\n\n#nice p {\n padding-top: 23px;\n color: rgb(74,74,74);\n line-height: 1.75em;\n}\n\n/* 一级标题 */\n#nice h1 {\n text-align:center;\n background-image: url(http://img.macrozheng.com/mall/md/mountain_2.png); \n background-position: center top;\n background-repeat: no-repeat;\n background-size: 95px;\n line-height:95px;\n margin-top: 38px;\n margin-bottom: 10px;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n font-size: 20px;\n color: rgb(60, 112, 198);\n border-bottom:2px solid #3C7076;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n \n/* 二级标题 */\n#nice h2 {\n display:block;\n text-align:center;\n background-image: url(http://img.macrozheng.com/mall/md/mountain_2.png); \n background-position: center center;\n background-repeat: no-repeat;\n background-attachment: initial;\n background-origin: initial;\n background-clip: initial;\n background-size: 63px;\n margin-top: 38px;\n margin-bottom: 10px;\n}\n\n/*二级标题伪元素*/\n#nice h2:before {\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n text-align:center;\n display: inline-block;\n height: 38px;\n line-height: 42px;\n color: rgb(60, 112, 198);\n background-position: left center;\n background-repeat: no-repeat;\n background-attachment: initial;\n background-origin: initial;\n background-clip: initial;\n background-size: 63px;\n margin-top: 38px;\n font-size:18px;\n margin-bottom: 10px;\n}\n\n/* 三级标题 */\n#nice h3:before {\n content: \"\";\n background-image:url(http://img.macrozheng.com/mall/md/mountain_1.png);\n background-size:15px 15px;\n display: inline-block;\n width: 15px;\n height: 15px;\n line-height:15px;\n margin-bottom:-1px;\n}\n\n#nice h3 {\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n font-size:16px;\n font-weight:bold;\n display:inline-block;\n margin-left:8px;\n color:rgb(60,112,198);\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 列表内容 */\n#nice li {\n}\n\n/* 引用\n * 左边缘颜色 border-left-color:black;\n * 背景色 background:gray;\n */\n#nice .multiquote-1 {\n padding: 15px 20px;\n line-height: 27px;\n background-color: rgb(239, 239, 239);\n border-left:none;\n display:block;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n padding: 0px;\n font-size:15px;\n color:rgb(89,89,89);\n}\n\n/* 链接 */\n#nice a {\n color: rgb(60, 112, 198);\n text-decoration:none;\n border-bottom: 1px solid rgb(60, 112, 198);\n}\n\n/* 加粗 */\n#nice strong {\n line-height: 1.75em;\n color: rgb(74,74,74);\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color:rgb(248,57,41);\n letter-spacing:0.3em;\n}\n\n/* 删除线 */\n#nice del {\n}\n \n/* 分割线 */\n#nice hr {\n height:1px;\n padding:0;\n border:none;\n text-align:center;\n background-image:linear-gradient(to right,rgba(60,122,198,0),rgba(60,122,198,0.75),rgba(60,122,198,0));\n}\n\n/* 图片 */\n#nice img {\n border-radius:4px;\n margin-bottom:25px;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display:block;\n font-size:12px;\n font-family:PingFangSC-Light;\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n\tcolor: rgb(60, 112, 198);;\n}\n\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice pre code {\n}\n\n/* 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size: 14px;\n}\n\n#nice .footnotes{\n padding-top: 8px;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: rgb(60, 112, 198);\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: rgb(60, 112, 198);\n}\n\n/* 脚注超链接样式 */\n#nice .footnote-item em {\n color: rgb(60, 112, 198);\n font-size:13px;\n font-style:normal;\n border-bottom-color:1px dashed rgb(60, 112, 198); \n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n background-image: none;\n background-size: none;\n display: block;\n width: auto;\n height: auto;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n color: rgb(60, 112, 198);\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: rgb(60, 112, 198);\n font-weight:bold;\n}\n\n/* 参考资料超链接 */\n#nice .footnote-item a {\n color:rgb(60, 112, 198);\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-size:14px;\n font-weight:normal;\n border-bottom:1px dashed rgb(60, 112, 198);\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n \n}\n\n/* 行内公式*/\n#nice .inline-equation svg { \n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/sSJwPflpzan1R_7kmBRwmQ",
- "html": null,
- "exampleHtml": null,
- "authorName": "HeyRain",
- "authorEmail": null,
- "description": "前端之巅的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21236,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:15:02.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "13",
- "itemId": null,
- "name": "极客黑\n\n",
- "cover": "https://files.mdnice.com/pic/d160f5ec-26cb-4de8-8509-a8b29e8dd20c.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n box-sizing: border-box;\n margin-bottom: 16px;\n font-family: \"Helvetica Neue\", Helvetica, \"Segoe UI\", Arial, freesans, sans-serif;\n font-size: 15px;\n text-align: start;\n white-space: normal;\n text-size-adjust: auto;\n line-height: 1.75em;\n}\n\n/* 一级标题 */\n#nice h1 {\n margin-top: -0.46em;\n margin-bottom: 0.1em;\n border-bottom: 2px solid rgb(198, 196, 196);\n box-sizing: border-box;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n padding-top: 5px;\n padding-bottom: 5px;\n color: rgb(160, 160, 160);\n font-size: 13px;\n line-height: 2;\n box-sizing: border-box;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n margin: 10px auto;\n height: 40px;\n background-color: rgb(251, 251, 251);\n border-bottom: 1px solid rgb(246, 246, 246);\n overflow: hidden;\n box-sizing: border-box;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n margin-left: -10px;\n display: inline-block;\n width: auto;\n height: 40px;\n background-color: rgb(33, 33, 34);\n border-bottom-right-radius:100px;\n color: rgb(255, 255, 255);\n padding-right: 30px;\n padding-left: 30px;\n line-height: 40px;\n font-size: 16px;\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n margin: 20px auto 5px;\n border-top: 1px solid rgb(221, 221, 221);\n box-sizing: border-box;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n margin-top: -1px;\n padding-top: 6px;\n padding-right: 5px;\n padding-left: 5px;\n font-size: 17px;\n border-top: 2px solid rgb(33, 33, 34);\n display: inline-block;\n line-height: 1.1;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n#nice h4 {\n margin: 10px auto -1px;\n border-top: 1px solid rgb(221, 221, 221);\n box-sizing: border-box;\n}\n\n#nice h4 .content {\n margin-top: -1px;\n padding-top: 6px;\n padding-right: 5px;\n padding-left: 5px;\n font-size: 16px;\n border-top: 2px solid rgb(33, 33, 34);\n display: inline-block;\n line-height: 1.1;\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n font-size: 15px;\n font-family: \"Helvetica Neue\", Helvetica, \"Segoe UI\", Arial, freesans, sans-serif;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n border-left-color: rgb(221, 221, 221);\n margin-top: 1.2em;\n margin-bottom: 1.2em;\n padding-right: 1em;\n padding-left: 1em;\n border-left-width: 4px;\n color: rgb(119, 119, 119);\n quotes: none;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n font-size: 15px;\n font-family: -apple-system-font, BlinkMacSystemFont, \"Helvetica Neue\", \"PingFang SC\", \"Hiragino Sans GB\", \"Microsoft YaHei UI\", \"Microsoft YaHei\", Arial, sans-serif;\n color: rgb(119, 119, 119);\n line-height: 1.75em;\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: rgb(239, 112, 96);\n border-bottom: 1px solid rgb(239, 112, 96);\n}\n\n/* 加粗 */\n#nice strong {\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n * 粗细、样式和颜色\n * border-top: 1px solid #3e3e3e;\n */\n#nice hr {\n}\n\n/* 图片\n * 宽度 width: 80%;\n * 居中 margin: 0 auto;\n * 居左 margin: 0 0;\n */\n#nice img {\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color: rgb(239, 112, 96);\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #ff3502;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: rgb(239, 112, 96);\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": null,
- "html": null,
- "exampleHtml": null,
- "authorName": "hyper-xx",
- "authorEmail": null,
- "description": "极客黑的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21237,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:15:07.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "15",
- "itemId": null,
- "name": "蔷薇紫",
- "cover": "https://files.mdnice.com/pic/06aa2d77-0a16-44c4-93f2-3aff4c67e095.png",
- "css": "/* 全局属性\n* 页边距 padding:30px;\n* 全文字体 font-family:optima-Regular;\n* 英文换行 word-break:break-all;\ncolor:#595959;\n*/\n#nice {\n line-height: 1.75;\n color: #595959;\n font-family: Optima-Regular, Optima, PingFangTC-Light, PingFangSC-light, PingFangTC-light;\n letter-spacing: 2px;\n background-image: linear-gradient(90deg, rgba(50, 0, 0, 0.05) 3%, rgba(0, 0, 0, 0) 3%), linear-gradient(360deg, rgba(50, 0, 0, 0.05) 3%, rgba(0, 0, 0, 0) 3%);\n background-size: 20px 20px;\n background-position: center center;\n}\n\n/* 段落,下方未标注标签参数均同此处\n* 上边距 margin-top:5px;\n* 下边距 margin-bottom:5px;\n* 行高 line-height:26px;\n* 词间距 word-spacing:3px;\n* 字间距 letter-spacing:3px;\n* 对齐 text-align:left;\n* 颜色 color:#3e3e3e;\n* 字体大小 font-size:16px;\n* 首行缩进 text-indent:2em;\n*/\n#nice p {\n color: #595959;\n margin: 10px 0px;\n letter-spacing: 2px;\n font-size: 14px;\n word-spacing: 2px;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 25px;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n display: inline-block;\n font-weight: bold;\n color: #595959;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n text-align: left;\n margin: 20px 10px 0px 0px;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n font-size: 18px;\n font-weight: bold;\n display: inline-block;\n padding-left: 10px;\n border-left: 5px solid #DEC6FB;\n color: #595959;\n\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {}\n\n/* 三级标题 */\n#nice h3 {\n font-size: 16px;\n font-weight: bold;\n text-align: center;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n border-bottom: 2px solid #DEC6FB;\n color: #595959;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n/* 无序列表整体样式\n* list-style-type: square|circle|disc;\n*/\n#nice ul {\n font-size: 15px; /*神奇逻辑,必须比li section的字体大才会在二级中生效*/\n color: #595959;\n list-style-type: circle;\n}\n\n\n/* 有序列表整体样式\n* list-style-type: upper-roman|lower-greek|lower-alpha;\n*/\n#nice ol {\n font-size: 15px;\n color: #595959;\n}\n\n/* 列表内容,不要设置li\n*/\n#nice li section {\n font-size: 14px;\n font-weight: normal;\n color: #595959;\n}\n\n/* 引用\n* 左边缘颜色 border-left-color:black;\n* 背景色 background:gray;\n*/\n#nice .multiquote-1::before {\n content: \"❝\";\n /* color: #d9b8fa;*/\n color: #DEC6FB;\n font-size: 34px;\n line-height: 1;\n font-weight: 700;\n}\n\n#nice .multiquote-1 {\n text-size-adjust: 100%;\n line-height: 1.55em;\n font-weight: 400;\n border-radius: 6px;\n color: #595959;\n font-style: normal;\n text-align: left;\n box-sizing: inherit;\n border-left: none;\n border: 1px solid #DEC6FB;\n background: #F6EEFF;\n\n}\n\n#nice .multiquote-1 p {\n color: #595959;\n}\n\n#nice .multiquote-1::after {\n content: \"❞\";\n float: right;\n /* color: #d9b8fa; */\n color: #DEC6FB;\n}\n\n/* 链接 \n* border-bottom: 1px solid #009688;\n*/\n#nice a {\n color: #664D9D;\n font-weight: normal;\n border-bottom: 1px solid #664D9D;\n}\n\n#nice strong::before {\n content: '「';\n}\n\n/* 加粗 */\n#nice strong {\n color: #595959;\n font-weight: bold;\n}\n\n#nice strong::after {\n content: '」';\n}\n\n/* 斜体 */\n#nice em {\n font-style: normal;\n color: #595959;\n background: #F6EEFF;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #595959;\n}\n\n/* 删除线 */\n#nice del {\n color: #595959;\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top:1px solid #3e3e3e;\n*/\n#nice hr {\n height: 1px;\n padding: 0;\n border: none;\n border-top: 2px solid #d9b8fa;\n}\n\n/* 图片\n* 宽度 width:80%;\n* 居中 margin:0 auto;\n* 居左 margin:0 0;\n*/\n#nice img {\n border-radius: 6px;\n display: block;\n margin: 20px auto;\n object-fit: contain;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display: block;\n font-size: 13px;\n color: #595959;\n}\n\n/* 行内代码 */\n#nice p code,\n#nice li code {\n color: #595959;\n}\n\n/* 非微信代码块\n* 代码块不换行 display:-webkit-box !important;\n* 代码块换行 display:block;\n*/\n#nice .code-snippet__fix {\n background: #f7f7f7;\n border-radius: 2px;\n}\n\n#nice pre code {\n /* background: #f7f7f7; */\n}\n\n/*\n* 表格内的单元格\n* 字体大小 font-size: 16px;\n* 边框 border: 1px solid #ccc;\n* 内边距 padding: 5px 10px;\n*/\n#nice table tr th,\n#nice table tr td {\n font-size: 14px;\n color: #595959;\n}\n\n#nice .footnotes {\n background: #F6EEFF;\n padding: 20px 20px 20px 20px;\n font-size: 14px;\n border: 0.8px solid #DEC6FB;\n border-radius: 6px;\n border: 1px solid #DEC6FB;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n font-weight: normal;\n color: #595959;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n font-weight: normal;\n color: #595959;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n background: #F6EEFF;\n font-size: 14px;\n color: #595959;\n display: block;\n}\n\n/* \"参考资料\"四个字 \n* 内容 content: \"参考资料\";\n*/\n#nice .footnotes-sep:before {\n content: 'Reference';\n color: #595959;\n letter-spacing: 1px;\n border-bottom: 2px solid #DEC6FB;\n display: inline;\n background: linear-gradient(white 60%, #F6EEFF 40%);\n font-size: 20px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: #595959;\n font-weight: bold;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-weight: normal;\n}\n\n/* 行间公式\n* 最大宽度 max-width: 300% !important;\n*/\n#nice .block-equation svg {}\n\n/* 行内公式\n*/\n#nice .inline-equation svg {}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/x0xqSpQixW2xj5qXCgWSyA",
- "html": null,
- "exampleHtml": null,
- "authorName": "HeyRain",
- "authorEmail": null,
- "description": "蔷薇紫的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21241,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:15:21.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "16",
- "itemId": null,
- "name": "萌绿",
- "cover": "https://files.mdnice.com/pic/168a4408-be49-4706-826f-b63c001f8ba3.png",
- "css": "#nice {\n line-height: 1.6;\n letter-spacing: .034em;\n color: rgb(63, 63, 63);\n font-size: 16px;\n word-break:all;\n}\n#nice p {\n padding-top: 1em;\n color: rgb(74,74,74);\n line-height: 1.75em;\n}\n/* 一级标题 */\n#nice h1 {\n text-align:center;\n background-image: url(http://img.macrozheng.com/mall/md/koala-1.png); \n background-position: center top;\n background-repeat: no-repeat;\n background-size: 75px;\n line-height:95px;\n margin-top: 38px;\n margin-bottom: 10px;\n}\n/* 一级标题内容 */\n#nice h1 .content {\n font-size: 20px;\n color: #48b378;;\n border-bottom:2px solid #2e7950;\n}\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n \n/* 二级标题 */\n#nice h2 {\n display:block;\n text-align:center;\n background-image: \turl(http://img.macrozheng.com/mall/md/koala-2.png); \n background-position: center center;\n background-repeat: no-repeat;\n background-attachment: initial;\n background-origin: initial;\n background-clip: initial;\n background-size: 50px;\n margin-top: 1em;\n margin-bottom: 10px;\n}\n/*二级标题伪元素*/\n#nice h2:before {\n}\n/* 二级标题内容 */\n#nice h2 .content {\n text-align:center;\n display: inline-block;\n height: 38px;\n line-height: 42px;\n color: #48b378;\n background-position: left center;\n background-repeat: no-repeat;\n background-attachment: initial;\n background-origin: initial;\n background-clip: initial;\n background-size: 63px;\n margin-top: 38px;\n font-size:18px;\n margin-bottom: 10px;\n}\n/* 三级标题 */\n#nice h3:before {\n content: \"\";\n background-image:url(http://img.macrozheng.com/mall/md/koala-3.png);\n background-size:100% 100%;\n background-repeat:no-repeat;\n display: inline-block;\n width: 16px;\n height: 15px;\n line-height:15px;\n margin-bottom:-1px;\n}\n#nice h3 {\n margin-top:1.2em;\n}\n#nice h4 {\n margin-top: 30px;\n}\n/* 三级标题内容 */\n#nice h3 .content {\n font-size:17px;\n font-weight:bold;\n display:inline-block;\n margin-left:8px;\n color:#48b378;\n}\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n/* 列表内容 */\n#nice li {\n}\n/* 引用\n * 左边缘颜色 border-left-color:black;\n * 背景色 background:gray;\n */\n#nice .multiquote-1 {\n padding: 15px 20px;\n line-height: 27px;\n background-color:#FBF9FD;\n border-left:3px solid #35b378;\n display:block;\n}\n/* 引用文字 */\n#nice .multiquote-1 p {\n padding: 0px;\n font-size:15px;\n color:rgb(89,89,89);\n}\n/* 链接 */\n#nice a {\n color: #48b378;\n text-decoration:none;\n border-bottom: 1px solid #48b378;\n}\n/* 加粗 */\n#nice strong {\n line-height: 1.75em;\n color: rgb(74,74,74);\n}\n/* 斜体 */\n#nice em {\n}\n/* 加粗斜体 */\n#nice em strong {\n color:rgb(248,57,41);\n letter-spacing:0.3em;\n}\n/* 删除线 */\n#nice del {\n}\n \n/* 分割线 */\n#nice hr {\n height:1px;\n padding:0;\n border:none;\n text-align:center;\n background-image:linear-gradient(to right,rgba(93, 186, 133,0),rgba(93, 186, 133,0.75),rgba(93, 186, 133,0));\n}\n/* 图片 */\n#nice img {\n border-radius:4px;\n margin-bottom:25px;\n}\n/* 图片描述文字 */\n#nice figcaption {\n display:block;\n font-size:12px;\n font-family:PingFangSC-Light;\n}\n/* 行内代码 */\n#nice p code, #nice li code {\n\tcolor: #28ca71;\n}\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice pre code {\n}\n/* 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size: 14px;\n}\n#nice .footnotes{\n padding-top: 8px;\n}\n/* 脚注文字 */\n#nice .footnote-word {\n color: rgb(90, 185, 131);\n}\n/* 脚注上标 */\n#nice .footnote-ref {\n color: rgb(90, 185, 131);\n}\n/* 脚注超链接样式 */\n#nice .footnote-item em {\n color: rgb(90, 185, 131);\n font-size:13px;\n font-style:normal;\n border-bottom-color:1px dashed rgb(90, 185, 131); \n}\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n background-image: none;\n background-size: none;\n display: block;\n width: auto;\n height: auto;\n}\n/* 参考资料编号 */\n#nice .footnote-num {\n color: rgb(90, 185, 131);\n}\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: rgb(90, 185, 131);\n font-weight:bold;\n}\n/* 参考资料超链接 */\n#nice .footnote-item a {\n color:rgb(93, 186, 133);\n}\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-size:14px;\n font-weight:normal;\n border-bottom:1px dashed rgb(93, 186, 133);\n}\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n/* 行内公式*/\n#nice .inline-equation svg { \n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/iK3r9I28NMWApEydH046-w",
- "html": null,
- "exampleHtml": null,
- "authorName": "koala",
- "authorEmail": null,
- "description": "萌绿的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21242,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:15:26.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "17",
- "itemId": null,
- "name": "全栈蓝",
- "cover": "https://files.mdnice.com/pic/39cc0084-e0ca-47e3-b661-6c00c61c23b5.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n* 页边距 padding:30px;\n* 全文字体 font-family:optima-Regular;\n* 英文换行 word-break:break-all;\ncolor:#2b2b2b;\n*/\n#nice {\n line-height: 1.25;\n color: #2b2b2b;\n font-family: Optima-Regular, Optima, PingFangTC-Light, PingFangSC-light, PingFangTC-light;\n letter-spacing: 2px;\n background-image: linear-gradient(90deg, rgba(50, 0, 0, 0.04) 3%, rgba(0, 0, 0, 0) 3%), linear-gradient(360deg, rgba(50, 0, 0, 0.04) 3%, rgba(0, 0, 0, 0) 3%);\n background-size: 20px 20px;\n background-position: center center;\n}\n\n/* 段落,下方未标注标签参数均同此处\n* 上边距 margin-top:5px;\n* 下边距 margin-bottom:5px;\n* 行高 line-height:26px;\n* 词间距 word-spacing:3px;\n* 字间距 letter-spacing:3px;\n* 对齐 text-align:left;\n* 颜色 color:#3e3e3e;\n* 字体大小 font-size:16px;\n* 首行缩进 text-indent:2em;\n*/\n#nice p {\n color: #2b2b2b;\n margin: 10px 0px;\n letter-spacing: 2px;\n font-size: 14px;\n word-spacing: 2px;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 25px;\n}\n\n/* 一级标题内容 */\n#nice h1 span {\n display: inline-block;\n font-weight: bold;\n color: #40B8FA;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n display:block;\n border-bottom: 4px solid #40B8FA;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n display: flex;\n color: #40B8FA;\n font-size: 20px;\n margin-left: 25px;\n}\n\n/* 二级标题前缀 */\n#nice h2 .prefix {\n display: flex;\n width: 20px;\n height: 20px;\n background-size: 20px 20px;\n background-image:url(http://img.macrozheng.com/mall/md/fullstack-1.png);\n margin-bottom: -22px;\n}\n\n/* 二级标题后缀 */\n#nice h2 .suffix {\n display: flex;\n box-sizing: border-box;\n width: 200px;\n height: 10px;\n border-top-left-radius: 20px;\n background: RGBA(64, 184, 250, .5);\n color: rgb(255, 255, 255);\n font-size: 16px;\n letter-spacing: 0.544px;\n justify-content: flex-end;\n box-sizing: border-box !important;\n overflow-wrap: break-word !important;\n float: right;\n margin-top: -10px;\n}\n\n/* 三级标题 */\n#nice h3 {\n font-size: 17px;\n font-weight: bold;\n text-align: center;\n position:relative;\n margin-top: 20px;\n margin-bottom: 20px;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n border-bottom: 2px solid RGBA(79, 177, 249, .65);\n color: #2b2b2b;\n padding-bottom:2px\n}\n\n#nice h3 .content:before{\n content:'';\n width:30px;\n height:30px;\n display:block;\n background-image:url(http://img.macrozheng.com/mall/md/fullstack-2.png);\n background-position:center;\n background-size:30px;\n margin:auto;\n opacity:1;\n background-repeat:no-repeat;\n margin-bottom:-8px;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n#nice h4 .content {\n height:16px;\n line-height:16px;\n font-size: 16px;\n}\n\n#nice h4 .content:before{\n content:'';\n background-image:url(http://img.macrozheng.com/mall/md/fullstack-3.png);\n display:inline-block;\n width:16px;\n height:16px;\n background-size:100% ;\n background-position:left bottom;\n background-repeat:no-repeat;\n width: 16px;\n height: 15px;\n line-height:15px;\n margin-right:6px;\n margin-bottom:-2px;\n}\n\n/* 无序列表整体样式\n* list-style-type: square|circle|disc;\n*/\n#nice ul {\n font-size: 15px; /*神奇逻辑,必须比li section的字体大才会在二级中生效*/\n color: #595959;\n list-style-type: circle;\n}\n\n\n/* 有序列表整体样式\n* list-style-type: upper-roman|lower-greek|lower-alpha;\n*/\n#nice ol {\n font-size: 15px;\n color: #595959;\n}\n\n/* 列表内容,不要设置li\n*/\n#nice li section {\n font-size: 14px;\n font-weight: normal;\n color: #595959;\n}\n\n/* 引用\n* 左边缘颜色 border-left-color:black;\n* 背景色 background:gray;\n*/\n#nice .multiquote-1::before {\n content: \"❝\";\n color: RGBA(64, 184, 250, .5);\n font-size: 34px;\n line-height: 1;\n font-weight: 700;\n}\n\n#nice .multiquote-1 {\n text-size-adjust: 100%;\n line-height: 1.55em;\n font-weight: 400;\n border-radius: 6px;\n color: #595959;\n font-style: normal;\n text-align: left;\n box-sizing: inherit;\n border-left: none;\n border: 1px solid RGBA(64, 184, 250, .4);\n background: RGBA(64, 184, 250, .1);\n\n}\n\n#nice .multiquote-1 p {\n color: #595959;\n}\n\n#nice .multiquote-1::after {\n content: \"❞\";\n float: right;\n color: RGBA(64, 184, 250, .5);\n}\n\n/* 链接\n* border-bottom: 1px solid #009688;\n*/\n#nice a {\n color: #40B8FA;\n font-weight: normal;\n border-bottom: 1px solid #3BAAFA;\n}\n\n#nice strong::before {\n content: '「';\n}\n\n/* 加粗 */\n#nice strong {\n color: #3594F7;\n font-weight: bold;\n}\n\n#nice strong::after {\n content: '」';\n}\n\n/* 斜体 */\n#nice em {\n font-style: normal;\n color: #3594F7;\n font-weight:bold;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #3594F7;\n}\n\n/* 删除线 */\n#nice del {\n color: #3594F7;\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top:1px solid #3e3e3e;\n*/\n#nice hr {\n height: 1px;\n padding: 0;\n border: none;\n border-top: 2px solid #3BAAFA;\n}\n\n/* 图片\n* 宽度 width:80%;\n* 居中 margin:0 auto;\n* 居左 margin:0 0;\n*/\n#nice img {\n border-radius: 6px;\n display: block;\n margin: 20px auto;\n object-fit: contain;\n box-shadow:2px 4px 7px #999;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display: block;\n font-size: 13px;\n color: #2b2b2b;\n}\n\n#nice figcaption:before{\n content:'';\n\tbackground-image:url(https://img.alicdn.com/tfs/TB1Yycwyrj1gK0jSZFuXXcrHpXa-32-32.png);\n display:inline-block;\n width:18px;\n height:18px;\n background-size:18px;\n\tbackground-repeat:no-repeat;\n background-position:center;\n margin-right:5px;\n margin-bottom:-5px;\n}\n\n/* 行内代码 */\n#nice p code,\n#nice li code {\n color: #3594F7;\n background: RGBA(59, 170, 250, .1);\n padding:0 2px;\n border-radius:2px;\n height:21px;\n line-height:22px;\n}\n\n/* 非微信代码块\n* 代码块不换行 display:-webkit-box !important;\n* 代码块换行 display:block;\n*/\n#nice .code-snippet__fix {\n background: #f7f7f7;\n border-radius: 2px;\n}\n\n#nice pre code {\n letter-spacing: 0px;\n}\n\n/*\n* 表格内的单元格\n* 字体大小 font-size: 16px;\n* 边框 border: 1px solid #ccc;\n* 内边距 padding: 5px 10px;\n*/\n#nice table tr th,\n#nice table tr td {\n font-size: 14px;\n color: #595959;\n}\n\n#nice .footnotes {\n background: #F6EEFF;\n padding: 20px 20px 20px 20px;\n font-size: 14px;\n border: 0.8px solid #DEC6FB;\n border-radius: 6px;\n border: 1px solid #DEC6FB;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n font-weight: normal;\n color: #595959;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n font-weight: normal;\n color: #595959;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n font-size: 14px;\n color: #595959;\n display: block;\n}\n\n#nice .footnotes{\n background: RGBA(53, 148, 247, .4);\n padding: 20px 20px 20px 20px;\n font-size: 14px;\n border-radius: 6px;\n border: 1px solid RGBA(53, 148, 247, 1);\n}\n\n/* \"参考资料\"四个字\n* 内容 content: \"参考资料\";\n*/\n#nice .footnotes-sep:before {\n content: 'Reference';\n color: #595959;\n letter-spacing: 1px;\n border-bottom: 2px solid RGBA(64, 184, 250, 1);\n display: inline;\n background: linear-gradient(white 60%, RGBA(64, 184, 250, .4) 40%);\n font-size: 20px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: #595959;\n font-weight: bold;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-weight: normal;\n}\n\n/* 行间公式\n* 最大宽度 max-width: 300% !important;\n*/\n#nice .block-equation svg {}\n\n/* 行内公式\n*/\n#nice .inline-equation svg {}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/_lO3cd0FcF0Dg3TRnHPdwg",
- "html": null,
- "exampleHtml": null,
- "authorName": "Nealyang",
- "authorEmail": null,
- "description": "全栈蓝的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21243,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:15:33.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "18",
- "itemId": null,
- "name": "极简黑",
- "cover": "https://files.mdnice.com/pic/d4e91acf-c904-4f2d-9ddd-a6bd275bc54b.png",
- "css": "/* 自定义样式,实时生效,浏览器实时缓存 */\n\n/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n #nice {\n font-size:14px;\n padding:10px;\n}\n\n/*图片下提示*/\n#nice figcaption{\n font-size:12px;\n}\n#nice .imageflow-caption{\n font-size:12px;\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n font-size:14px;\n}\n\n/* 一级标题 */\n#nice h1 {\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题前缀 */\n#nice h1 .prefix {\n}\n\n/* 一级标题后缀 */\n#nice h1 .suffix{\n}\n\n/* 二级标题 */\n#nice h2 {\n \ttext-align:center;\n \tposition:relative;\n font-weight: bold;\n color: black;\n line-height: 1.1em;\n padding-top: 12px;\n padding-bottom: 12px;\n margin:70px 30px 30px;\n border: 1px solid #000;\n}\n\n#nice h2:before{\n content: ' ';\n float: left;\n display: block;\n width: 90%;\n border-top: 1px solid #000;\n height: 1px;\n line-height: 1px;\n margin-left: -5px;\n margin-top: -17px;\n}\n#nice h2:after{\n content: ' ';\n float: right;\n display: block;\n width: 90%;\n border-bottom: 1px solid #000;\n height: 1px;\n line-height: 1px;\n margin-right: -5px;\n margin-top: 16px;\n}\n/* 二级标题内容 */\n#nice h2 .content {\n display: block;\n -webkit-box-reflect: below 0em -webkit-gradient(linear,left top,left bottom, from(rgba(0,0,0,0)),to(rgba(255,255,255,0.1)));\n}\n#nice h2 strong {\n}\n/* 二级标题前缀 */\n#nice h2 .prefix {\n display: block;\n width: 3px;\n margin: 0 0 0 5%;\n height: 3px;\n line-height: 3px;\n overflow: hidden;\n background-color: #000;\n box-shadow:3px 0 #000,\n 0 3px #000,\n -3px 0 #000,\n 0 -3px #000;\n}\n\n/* 二级标题后缀 */\n#nice h2 .suffix {\n display: block;\n width: 3px;\n margin: 0 0 0 95%;\n height: 3px;\n line-height: 3px;\n overflow: hidden;\n background-color: #000;\n box-shadow:3px 0 #000,\n 0 3px #000,\n -3px 0 #000,\n 0 -3px #000;\n}\n\n/* 三级标题 */\n#nice h3 {\n background-color:#000;\n color:#fff;\n padding:2px 10px;\n width:fit-content;\n font-size:17px;\n margin:60px auto 10px;\n}\n#nice h3 strong {\n color:#fff;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题前缀 */\n#nice h3 .prefix {\n}\n\n/* 三级标题后缀 */\n#nice h3 .suffix {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n list-style-type: square;\n}\n/* 无序二级列表\n */\n#nice ul li ul li{\n list-style-type: circle;\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n\n/* 引用\n * 左边缘颜色 border-left-color: black;\n * 背景色 background: gray;\n */\n#nice .multiquote-1 {\n border-left: 3px solid rgba(0, 0, 0, 0.65);\n border-right: 1px solid rgba(0, 0, 0, 0.65);\n background: rgb(249, 249, 249);\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n}\n\n/* 加粗 */\n#nice strong {\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n * 粗细、样式和颜色\n * border-top: 1px solid #3e3e3e;\n */\n#nice hr {\n}\n\n/* 图片\n * 宽度 width: 80%;\n * 居中 margin: 0 auto;\n * 居左 margin: 0 0;\n */\n#nice img {\n box-shadow: rgba(170, 170, 170, 0.48) 0px 0px 6px 0px;\n border-radius:4px;\n margin-top:10px;\n}\n/* 行内代码 */\n#nice p code, #nice li code {\n color:#ff6441;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre.custom {\n box-shadow: rgba(170, 170, 170, 0.48) 0px 0px 6px 0px;\n max-width: 100%;\n border-radius:4px;\n margin: 10px auto 0 auto;\n}\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size:14px;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep {\n font-size: 14px;\n color: #888;\n border-top: 1px solid #eee;\n padding: 30px 0 10px 0px;\n background-color: transparent;\n margin: 0;\n width: 100%;\n}\n#nice .footnotes-sep:before {\n content:'参考资料';\n}\n#nice .footnotes{\n border-left:5px solid #eee;\n padding-left:10px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n font-size:14px;\n color:#999;\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n font-size:14px;\n color:#999;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-size:14px;\n color:#999;\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}\n/* 文章结尾 */\n#nice:after{\n content:'- END -';\n font-size:15px;\n display:block;\n text-align:center;\n margin-top:50px;\n color:#999;\n border-bottom:1px solid #eee;\n}\n\n/*滑动幻灯片*/\n#nice .imageflow-layer1 img{\n margin:0;\n box-shadow: none;\n border-radius: 0;\n}\n",
- "article": "https://mp.weixin.qq.com/s/6UQmAhyXQY6AaYcyd1npIg",
- "html": null,
- "exampleHtml": null,
- "authorName": "小鱼",
- "authorEmail": null,
- "description": "公众号自律神仙ScarSu同款~",
- "sort": null,
- "checked": true,
- "userThemeId": 21244,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-06-24T22:54:03.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "19",
- "itemId": null,
- "name": "橙蓝风",
- "cover": "https://files.mdnice.com/pic/31204a5a-254e-487e-879d-4546ebcce3c3.jpg",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n margin-top: 0;\n padding: 0;\n}\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n font-size: 16px;\n line-height: 26px;\n word-spacing: 3px;\n letter-spacing: 1px;\n color: #424B5D;\n}\n#nice h1, #nice h2, #nice h3, #nice h4, #nice h5, #nice h6 {\n margin-top: 24px;\n margin-bottom: 12px;\n font-weight: bold;\n}\n/* 一级标题 */\n#nice h1 {\n font-size: 22px;\n color: #e7642b;\n}\n/* 一级标题内容 */\n#nice h1 .content {\n}\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n/* 二级标题 */\n#nice h2 {\n font-size: 20px;\n margin-top: 24px;\n margin-bottom: 12px;\n}\n/* 二级标题内容 */\n#nice h2 .content {\n color: #e7642b;\n text-align: center;\n display: block;\n background-color: #e7642b;\n color: white;\n padding: 3px 11px;\n border-radius: 1px;\n}\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n/* 三级标题 */\n#nice h3 {\n font-size: 18px;\n color: #424B5D;\n}\n/* 三级标题内容 */\n#nice h3 .content {\n}\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n/* 四级标题 */\n#nice h4 {\n font-size: 16px;\n color: #424B5D;\n}\n/* 五级标题 */\n#nice h5 {\n font-size: 16px;\n color: #424B5D;\n}\n/* 有序、无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul, #nice ol {\n font-size: 15px;\n margin: 0;\n padding-left: 24px;\n color: #424B5D;\n}\n/* 列表内容,不要设置li\n */\n#nice li section {\n margin: 4px 0;\n line-height: 24px;\n color: #424B5D;\n}\n/* 引用\n* 左边缘颜色 border-left-color: black;\n* 背景色 background: gray;\n*/\n#nice .multiquote-1 {\n margin: 0 8px;\n border: none;\n background: #ffffff;\n box-shadow: 0 1px 2px -2px rgba(0,0,0,.16), 0 3px 6px 0 rgba(0,0,0,.12), 0 5px 12px 4px rgba(0,0,0,.09);\n}\n/* 引用文字 */\n#nice .multiquote-1 p {\n font-size: 14px;\n color: #424B5D;\n line-height: 24px;\n}\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #eb6161;\n border-bottom: 1px solid #eb6161;\n}\n#nice a::before {\n content: '?';\n margin-right: 6px;\n}\n/* 加粗 */\n#nice strong {\n color: #424B5D;\n}\n/* 斜体 */\n#nice em {\n color: #424B5D;\n}\n/* 加粗斜体 */\n#nice em strong {\n color: #424B5D;\n}\n/* 删除线 */\n#nice del { \n}\n/* 分隔线\n* 粗细、样式和颜色\n* border-top: 1px solid #3e3e3e;\n*/\n#nice hr {\n border-top: 1px dashed #424B5D;\n}\n/* 图片\n* 宽度 width: 80%;\n* 居中 margin: 0 auto;\n* 居左 margin: 0 0;\n*/\n#nice img {\n border-radius: 5px;\n margin: 12px auto;\n}\n/* 图片描述文字 */\n#nice figcaption {\n font-size: 14px;\n margin: 12px auto;\n color: #999999;\n}\n/* 行内代码 */\n#nice p code, #nice li code {\n padding-left: 0;\n padding-right: 0;\n background: transparent;\n border-radius: 0;\n color: #eb6161;\n border-bottom: 1px solid #eb6161;\n}\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre {\n margin: 12px auto;\n box-shadow: 0 1px 2px -2px rgba(0,0,0,.16), 0 3px 6px 0 rgba(0,0,0,.12), 0 5px 12px 4px rgba(0,0,0,.09) !important;\n border-radius: 5px;\n}\n#nice pre code {\n}\n/*\n * 表格\n */\n#nice table {\n margin: 12px auto;\n}\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n color: #424B5D;\n font-size: 14px;\n}\n/* 脚注文字 */\n#nice .footnote-word {\n color: #eb6161;\n}\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #eb6161;\n}\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n font-size: 16px;\n}\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n/* 参考资料文字 */\n#nice .footnote-item p { \n font-size: 12px;\n color: #424B5D;\n}\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-size: 12px;\n color: #999999;\n}\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n color: #424B5D;\n}\n/* 行内公式\n */\n#nice .inline-equation svg { \n color: #424B5D;\n}\n\n#nice .imageflow-layer1 img {\n border-radius: 0;\n}\n\n#nice .imageflow-caption {\n font-size: 14px;\n margin-top: 8px;\n color: #999999;\n}\n\n::-webkit-scrollbar {\n height: 4px;\n}",
- "article": "https://mp.weixin.qq.com/s/TM8WbWJFhDqQL0sL0bcX4g",
- "html": null,
- "exampleHtml": null,
- "authorName": "axuebin",
- "authorEmail": null,
- "description": "简洁的橙蓝风",
- "sort": null,
- "checked": true,
- "userThemeId": 21250,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-06-13T23:32:08.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "35",
- "itemId": null,
- "name": "凝夜紫",
- "cover": "https://files.mdnice.com/pic/73c130f0-a866-45f0-8d96-ecb3bb33da32.jpg",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n* 页边距 padding:30px;\n* 全文字体 font-family:optima-Regular;\n* 英文换行 word-break:break-all;\n*/\n#nice {\n line-height: 1.25;\n font-family: Optima-Regular, Optima, PingFangTC-Light, PingFangSC-light, PingFangTC-light;\n letter-spacing: 2px;\n background-image: linear-gradient(90deg, rgba(50, 0, 0, 0.05) 3%, rgba(0, 0, 0, 0) 3%), linear-gradient(360deg, rgba(50, 0, 0, 0.05) 3%, rgba(0, 0, 0, 0) 3%);\n background-size: 20px 20px;\n background-position: center center;\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top:5px;\n * 下边距 margin-bottom:5px;\n * 行高 line-height:26px;\n * 词间距 word-spacing:3px;\n * 字间距 letter-spacing:3px;\n * 对齐 text-align:left;\n * 颜色 color:#3e3e3e;\n * 字体大小 font-size:16px;\n * 首行缩进 text-indent:2em;\n */\n#nice p {\n margin: 10px 0px;\n letter-spacing: 2px;\n font-size: 14px;\n word-spacing: 2px;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 25px;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n display: inline-block;\n font-weight: bold;\n color: #773098;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n text-align: left;\n margin: 20px 10px 0px 0px;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n font-size: 18px;\n font-weight: bold;\n display: inline-block;\n padding-left: 10px;\n border-left: 5px solid #916dd5;\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {}\n\n/* 三级标题 */\n#nice h3 {\n font-size: 16px;\n font-weight: bold;\n text-align: center;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n border-bottom: 2px solid #d89cf6;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n font-size: 15px;\n /*神奇逻辑,必须比li section的字体大才会在二级中生效*/\n list-style-type: circle;\n}\n\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n font-size: 15px;\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n font-size: 14px;\n font-weight: normal;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color:black;\n * 背景色 background:gray;\n */\n#nice .multiquote-1 {\n border-left-color: #d89cf6;\n background: #f4eeff;\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #916dd5;\n font-weight: bolder;\n border-bottom: 1px solid #916dd5;\n}\n\n#nice strong::before {\n content: '「';\n}\n\n/* 加粗 */\n#nice strong {\n color: #916dd5;\n font-weight: bold;\n}\n\n#nice strong::after {\n content: '」';\n}\n\n/* 斜体 */\n#nice em {\n font-style: normal;\n color: #916dd5;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #916dd5;\n}\n\n/* 删除线 */\n#nice del {\n color: #916dd5;\n}\n\n/* 分隔线\n * 粗细、样式和颜色\n */\n#nice hr {\n height: 1px;\n padding: 0;\n border: none;\n border-top: 2px solid #d9b8fa;\n}\n\n/* 图片\n * 宽度 width:80%;\n * 居中 margin:0 auto;\n * 居左 margin:0 0;\n */\n#nice img {\n border-radius: 6px;\n display: block;\n margin: 20px auto;\n object-fit: contain;\n box-shadow: 2px 4px 7px #999;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display: block;\n font-size: 13px;\n}\n\n/* 行内代码 */\n#nice p code,\n#nice li code {\n color: #916dd5;\n font-weight: bolder;\n background: none;\n}\n\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice .code-snippet__fix {\n background: #f7f7f7;\n border-radius: 2px;\n}\n\n#nice pre code {}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size: 14px;\n}\n\n#nice .footnotes {\n font-size: 14px;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n font-weight: normal;\n color: #916dd5;\n font-weight: bold;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n font-weight: normal;\n color: #916dd5;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n font-size: 14px;\n color: #916dd5;\n display: block;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n font-size: 20px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n color: #916dd5;\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: #916dd5;\n font-weight: bold;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-weight: normal;\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {}\n\n/* 行内公式\n */\n#nice .inline-equation svg {}",
- "article": "https://mp.weixin.qq.com/s/0IDhUGxZtMDFGD-Z9Ij_Cg",
- "html": null,
- "exampleHtml": null,
- "authorName": "童欧巴",
- "authorEmail": null,
- "description": "适配微信以及Safari的深色模式。“凝夜紫”,寓意在深色模式中也可以发光。",
- "sort": null,
- "checked": true,
- "userThemeId": 21245,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-05-22T21:00:33.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "45",
- "itemId": null,
- "name": "灵动蓝",
- "cover": "https://files.mdnice.com/pic/31016bf3-0a07-4ebe-8ded-9999a714ea90.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性 */\n.nice-wx-box {\n\n}\n\n#nice {\n color: #333;\n font-family: -apple-system,system-ui,BlinkMacSystemFont,Helvetica Neue,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;\n}\n\n/* 标题的通用设置 */\n#nice h1,\n#nice h2,\n#nice h3,\n#nice h4,\n#nice h5,\n#nice h6 {\n padding: 30px 0;\n margin: 0;\n color: #135ce0;\n}\n\n/* 一级标题 */\n#nice h1 {\n position: relative;\n margin-top: 30px;\n margin-bottom: 10px;\n text-align: center;\n}\n\n/* 一级标题前缀,用来放背景图,支持透明度控制 */\n#nice h1 .prefix {\n display: inline-block;\n top: 0;\n width: 60px;\n height: 60px;\n background: url(http://img.macrozheng.com/mall/md/ape_blue.svg);\n background-size: 100% 100%;\n opacity: .12;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n font-size: 22px;\n display: block;\n margin-top: -36px;\n}\n\n/* 二级标题 */\n#nice h2 {\n position: relative;\n\tfont-size: 20px;\n}\n\n/* 二级标题前缀,有兴趣加内容的可以魔改 */\n#nice h2 .prefix {\n\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n\tborder-left: 4px solid;\n padding-left: 10px;\n}\n\n/* 一二级标题之间间距控制一下 */\n#nice h1 + h2 {\n padding-top: 0;\n}\n\n/* 三级标题 */\n#nice h3 {\n font-size: 16px;\n}\n\n/* 段落 */\n#nice p {\n font-size: 16px;\n line-height: 2;\n font-weight: 400;\n}\n\n/* 段落间距控制 */\n#nice p+p {\n margin-top: 16px;\n}\n\n/* 无序列表 */\n#nice ul>li ul>li {\n list-style: circle;\n}\n\n/* 无序列表内容行高 */\n#nice li section {\n line-height: 2;\n}\n\n/* 引用 */\n#nice .multiquote-1 {\n border-left-color: #b2aec5;\n background: #fff9f9;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n color: #666;\n line-height: 2;\n}\n\n/* 链接 */\n#nice a {\n color: #036aca;\n border-bottom: 0;\n font-weight: 400;\n text-decoration: none;\n}\n\n/* 加粗 */\n#nice strong {\n background: linear-gradient(to right ,#3299d2,#efbdb5);\n color: #fff;\n font-weight: 400;\n padding: 0 4px;\n display: inline-block;\n border-radius: 4px;\n margin: 0 2px;\n letter-spacing: 1px;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #fff;\n}\n\n/* 分隔线 */\n#nice hr {\n border-top: 1px solid #135ce0;\n}\n\n/* 图片描述文字,隐藏了,如果需要,请删除display */\n#nice figcaption {\n display: none;\n opacity: .6;\n margin-top: 12px;\n font-size: 12px;\n}\n\n/* 行内代码 */\n#nice p code, li code {\n color: #1394d8;\n padding: 2px 6px;\n word-break: normal;\n}\n\n/* 表格 */\n#nice table {\n border-spacing: 0;\n}\n\n/*\n * 表格内的单元格\n */\n#nice table tr th {\n background-color: #d4f1ff;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #135ce0;\n font-weight: 400;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #5ba1e2;\n font-weight: 400;\n}\n\n/* 参考资料 */\n#nice .footnotes-sep:before {\n text-align: center;\n color: #135ce0;\n content: \"参考\";\n}\n\n/* 参考编号 */\n#nice .footnote-num {\n color: #666;\n}\n\n/* 参考文字 */\n#nice .footnote-item p { \n color: #999;\n font-weight: 700;\n font-style: italic;\n font-size: 13px;\n}\n\n/* 参考解释 */\n#nice .footnote-item p em {\n color: #3375e2;\n font-style: normal;\n margin-left: 4px;\n}",
- "article": "https://mp.weixin.qq.com/s/3VCR6kJwhNIUCiN-A-24pQ",
- "html": null,
- "exampleHtml": null,
- "authorName": "飞白",
- "authorEmail": null,
- "description": "支持自定义标题背景图透明度,可以在这个基础上换自己的logo或者背景图,免去了ps修改透明度的麻烦。",
- "sort": null,
- "checked": true,
- "userThemeId": 21246,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-05-30T17:49:19.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "48",
- "itemId": null,
- "name": "草原绿",
- "cover": "https://files.mdnice.com/pic/37bae771-dfed-49d0-bda7-21aed462acc2.jpg",
- "css": "/*自定义样式,实时生效*/\n\n/*自定义样式,实时生效*/\n\n/* 全局属性\n* 页边距 padding:30px;\n* 全文字体 font-family:optima-Regular;\n* 英文换行 word-break:break-all;\ncolor:#2b2b2b;\n*/\n#nice {\n line-height: 1.35;\n color: #333;\n font-family: Optima-Regular, PingFangTC-light;\n letter-spacing: 1.5px;\n}\n\n/* 段落,下方未标注标签参数均同此处\n* 上边距 margin-top:5px;\n* 下边距 margin-bottom:5px;\n* 行高 line-height:26px;\n* 词间距 word-spacing:3px;\n* 字间距 letter-spacing:3px;\n* 对齐 text-align:left;\n* 颜色 color:#3e3e3e;\n* 字体大小 font-size:16px;\n* 首行缩进 text-indent:2em;\n*/\n#nice p {\n color: #2b2b2b;\n margin: 10px 0px;\n letter-spacing: 2px;\n font-size: 16px;\n word-spacing: 2px;\n}\n\n/* 一级标题 */\n#nice h1 {\n font-size: 25px;\n}\n\n/* 一级标题内容 */\n#nice h1 span {\n display: inline-block;\n font-weight: bold;\n color: #4CAF50;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {}\n\n/* 二级标题 */\n#nice h2 {\n display:block;\n border-bottom: 4px solid #4CAF50;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n display: flex;\n color: #4CAF50;\n font-size: 20px;\n\n}\n\n/* 二级标题前缀 */\n#nice h2 .prefix {\n\n}\n\n/* 二级标题后缀 */\n#nice h2 .suffix {\n display: flex;\n box-sizing: border-box;\n width: 20px;\n height: 10px;\n border-top-left-radius: 20px;\n border-top-right-radius: 20px;\n background: RGBA(76, 175, 80, .5);\n color: rgb(255, 255, 255);\n font-size: 16px;\n letter-spacing: 0.544px;\n justify-content: flex-end;\n box-sizing: border-box !important;\n overflow-wrap: break-word !important;\n float: right;\n margin-top: -10px;\n}\n\n/* 三级标题 */\n#nice h3 {\n font-size: 17px;\n font-weight: bold;\n text-align: center;\n position:relative;\n margin-top: 20px;\n margin-bottom: 20px;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n color: #2b2b2b;\n padding-bottom:2px\n}\n\n#nice h3 .content:before{\n content:'';\n width:30px;\n height:30px;\n display:block;\n background-image:url(http://img.macrozheng.com/mall/md/grass-green.png);\n background-position:center;\n background-size:30px;\n margin:auto;\n opacity:1;\n background-repeat:no-repeat;\n margin-bottom:-8px;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {}\n\n#nice h4 .content {\n height:16px;\n line-height:16px;\n font-size: 16px;\n}\n\n#nice h4 .content:before{\n\n}\n\n/* 无序列表整体样式\n* list-style-type: square|circle|disc;\n*/\n#nice ul {\n font-size: 15px; /*神奇逻辑,必须比li section的字体大才会在二级中生效*/\n color: #595959;\n list-style-type: circle;\n}\n\n\n/* 有序列表整体样式\n* list-style-type: upper-roman|lower-greek|lower-alpha;\n*/\n#nice ol {\n font-size: 15px;\n color: #595959;\n}\n\n/* 列表内容,不要设置li\n*/\n#nice li section {\n font-size: 16px;\n font-weight: normal;\n color: #595959;\n}\n\n/* 引用\n* 左边缘颜色 border-left-color:black;\n* 背景色 background:gray;\n*/\n#nice .multiquote-1::before {\n content: \"❝\";\n color: #74b56d;\n font-size: 34px;\n line-height: 1;\n font-weight: 700;\n}\n\n#nice .multiquote-1 {\n text-size-adjust: 100%;\n line-height: 1.55em;\n font-weight: 400;\n border-radius: 6px;\n color: #595959;\n font-style: normal;\n text-align: left;\n box-sizing: inherit;\n border-left: none;\n border: 1px solid #1b900d;\n background: #fff;\n\n}\n\n#nice .multiquote-1 p {\n\n}\n\n#nice .multiquote-1::after {\n content: \"❞\";\n float: right;\n color: #74b56d;\n}\n\n/* 链接\n* border-bottom: 1px solid #009688;\n*/\n#nice a {\n color: #399003;\n font-weight: normal;\n border-bottom: 1px solid #399003;\n}\n\n#nice strong::before {\n content: '「';\n}\n\n/* 加粗 */\n#nice strong {\n color: #399003;\n font-weight: bold;\n}\n\n#nice strong::after {\n content: '」';\n}\n\n/* 斜体 */\n#nice em {\n font-style: normal;\n color: #399003;\n font-weight:bold;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #399003;\n}\n\n/* 删除线 */\n#nice del {\n color: #399003;\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top:1px solid #3e3e3e;\n*/\n#nice hr {\n height: 1px;\n padding: 0;\n border: none;\n border-top: 2px solid #399003;\n}\n\n/* 图片\n* 宽度 width:80%;\n* 居中 margin:0 auto;\n* 居左 margin:0 0;\n*/\n#nice img {\n border-radius: 6px;\n display: block;\n margin: 20px auto;\n object-fit: contain;\n box-shadow:2px 4px 7px #999;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display: block;\n font-size: 13px;\n color: #2b2b2b;\n}\n\n/* 行内代码 */\n#nice p code,\n#nice li code {\n color: #0bb712;\n background: rgba(127, 226, 159, 0.48);\n display:inline-block;\n padding:0 2px;\n border-radius:2px;\n height:21px;\n line-height:22px;\n}\n\n/* 非微信代码块\n* 代码块不换行 display:-webkit-box !important;\n* 代码块换行 display:block;\n*/\n#nice .code-snippet__fix {\n background: #f7f7f7;\n border-radius: 2px;\n}\n\n#nice pre code {\n letter-spacing: 0px;\n}\n\n/*\n* 表格内的单元格\n* 字体大小 font-size: 16px;\n* 边框 border: 1px solid #ccc;\n* 内边距 padding: 5px 10px;\n*/\n#nice table tr th,\n#nice table tr td {\n font-size: 16px;\n color: #595959;\n}\n\n#nice .footnotes {\n background: #F6EEFF;\n padding: 20px 20px 20px 20px;\n font-size: 16px;\n border: 0.8px solid #399003;\n border-radius: 6px;\n border: 1px solid #399003;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n font-weight: normal;\n color: #595959;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n font-weight: normal;\n color: #595959;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n font-size: 16px;\n color: #595959;\n display: block;\n}\n\n#nice .footnotes{\n background: #fff;\n padding: 20px 20px 20px 20px;\n font-size: 16px;\n border-radius: 6px;\n border: 1px solid #4CAF50;\n}\n\n/* \"参考资料\"四个字\n* 内容 content: \"参考资料\";\n*/\n#nice .footnotes-sep:before {\n content: 'Reference';\n color: #595959;\n letter-spacing: 1px;\n border-bottom: 2px solid #4CAF50;\n display: inline;\n font-size: 20px;\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {}\n\n/* 参考资料文字 */\n#nice .footnote-item p {\n color: #595959;\n font-weight: bold;\n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n font-weight: normal;\n}\n\n/* 行间公式\n* 最大宽度 max-width: 300% !important;\n*/\n#nice .block-equation svg {}\n\n/* 行内公式\n*/\n#nice .inline-equation svg {}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/qCiMmHyBgltFrEZuD2LxVA",
- "html": null,
- "exampleHtml": null,
- "authorName": "超人",
- "authorEmail": null,
- "description": "绿油油的大草原",
- "sort": null,
- "checked": true,
- "userThemeId": 21247,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-06-05T11:00:48.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "51",
- "itemId": null,
- "name": "科技蓝",
- "cover": "https://files.mdnice.com/pic/1919fe6a-4e84-4365-bd94-eb66e592c04a.png",
- "css": "/*自定义样式,实时生效*/\n\n/* 全局属性\n * 页边距 padding:30px;\n * 全文字体 font-family:ptima-Regular;\n * 英文换行 word-break:break-all;\n */\n#nice {\n font-family:PingFangSC-Light;\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top:5px;\n * 下边距 margin-bottom:5px;\n * 行高 line-height:26px;\n * 词间距 word-spacing:3px;\n * 字间距 letter-spacing:3px;\n * 对齐 text-align:left;\n * 颜色 color:#3e3e3e;\n * 字体大小 font-size:16px;\n * 首行缩进 text-indent:2em;\n */\n#nice p {\n margin:10px 10px;\n line-height:1.75;\n letter-spacing:0.2em;\n font-size: 15px;\n word-spacing:0.1em;\n}\n\n/* 一级标题 */\n#nice h1 {\n border-bottom: 2px solid #0e88eb;\n font-size: 1.4em;\n text-align: center;\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n font-size: 1.4em;\n display:inline-block;\n font-weight: bold;\n //background: #0e88eb;\n color:#ffffff;\n color: #0e88eb;\n padding:3px 10px 1px;\n border-top-right-radius:3px;\n border-top-left-radius:3px;\n margin-right:3px;\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n \n/* 二级标题 */\n#nice h2 {\n text-align:left;\n margin:20px 10px 0px 0px;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n font-family:STHeitiSC-Light;\n font-size: 22px;\n color:#0e88eb;\n font-weight:bolder;\n display:inline-block;\n padding-left:10px;\n border-left:5px solid #0e88eb;\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n\tfont-size: 18px;\n \tcolor: #0e88eb;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n font-size: 18px;\n color: #0e88eb;\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n font-size: 15px;\n}\n\n/* 引用\n * 左边缘颜色 border-left-color:black;\n * 背景色 background:gray;\n */\n#nice .multiquote-1 {\n font-style:normal;\n border-left:none;\n padding:10px;\n position:relative;\n line-height:1.8;\n border-radius:0px 0px 10px 10px;\n color: #0e88eb;\n background:#fff;\n box-shadow:#84A1A8 0px 10px 15px;\n}\n#nice .multiquote-1:before {\n content:\"★ \";\n display:inline;\n color: #0e88eb;\n font-size:4em;\n font-family:Arial,serif;\n line-height:1em;\n font-weight:700;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n color: #0e88eb;\n font-size:15px;\n display:inline;\n}\n#nice .multiquote-1:after {\n content:\"”\";\n float:right;\n display:inline;\n color:#0e88eb;\n font-size:3em;\n line-height:1em;\n font-weight:500;\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #0e88eb;\n border-bottom: 0px solid #ff3502;\n font-family:STHeitiSC-Light;\n}\n\n/* 加粗 */\n#nice strong {\n font-weight: border;\n color: #0e88eb;\n}\n\n/* 斜体 */\n#nice em {\n color: #0e88eb;\n letter-spacing:0.3em;\n}\n\n/* 加粗斜体 */\n#nice em strong {\n color: #0e88eb;\n letter-spacing:0.3em;\n}\n\n/* 删除线 */\n#nice del {\n}\n \n/* 分隔线\n * 粗细、样式和颜色\n * border-top:1px solid #3e3e3e;\n */\n#nice hr {\n height:1px;\n padding:0;\n border:none;\n border-top:medium solidid #333;\n text-align:center;\n background-image:linear-gradient(to right,rgba(248,57,41,0),#0e88eb,rgba(248,57,41,0));\n}\n\n/* 图片\n * 宽度 width:80%;\n * 居中 margin:0 auto;\n * 居左 margin:0 0;\n */\n#nice img {\n border-radius:0px 0px 5px 5px;\n display:block;\n margin:20px auto;\n width:85%;\n height:100%;\n object-fit:contain;\n box-shadow:#84A1A8 0px 10px 15px;\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n display:block;\n font-size:12px;\n font-family:PingFangSC-Light;\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n color:/*自定义样式,实时生效*/\n}\n\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n font-size: 15px;\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #2d59b3;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #6a88c5;\n}\n\n/* 非微信代码块\n * 代码块不换行 display:-webkit-box !important;\n * 代码块换行 display:block;\n */\n#nice pre code {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #0e88eb;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #0e88eb;\n}\n\n/*脚注链接样式*/\n#nice .footnote-item em {\n color: #082a71;\n font-size:12px;\n}\n\n/* \"参考资料\"四个字 \n * 内容 content: \"参考资料\";\n */\n#nice .footnotes-sep:before {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}\n\n/* 滑动图片\n */\n#nice .imageflow-img {\n display: inline-block;\n width:100%;\n margin-bottom: 0;\n}",
- "article": "https://mp.weixin.qq.com/s/hEQA4GEFycBjvScko4DeqQ",
- "html": null,
- "exampleHtml": null,
- "authorName": "夜尽天明",
- "authorEmail": null,
- "description": "科技蓝的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21248,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:39.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- },
- {
- "themeId": "62",
- "itemId": null,
- "name": "WeChat-Format",
- "cover": "https://files.mdnice.com/pic/7c426155-27e8-493b-a483-ce966884a8b9.png",
- "css": "/* 全局属性\n * 页边距 padding: 30px;\n * 全文字体 font-family: ptima-Regular;\n * 英文换行 word-break: break-all;\n */\n#nice {\n}\n\n/* 段落,下方未标注标签参数均同此处\n * 上边距 margin-top: 5px;\n * 下边距 margin-bottom: 5px;\n * 行高 line-height: 26px;\n * 词间距 word-spacing: 3px;\n * 字间距 letter-spacing: 3px;\n * 对齐 text-align: left;\n * 颜色 color: #3e3e3e;\n * 字体大小 font-size: 16px;\n * 首行缩进 text-indent: 2em;\n */\n#nice p {\n line-height: 1.6;\n color: #3f3f3f;\n font-size: 16px;\n margin: 10px 0px;\n}\n\n/* 一级标题 */\n#nice h1 {\n}\n\n/* 一级标题内容 */\n#nice h1 .content {\n}\n\n/* 一级标题修饰 请参考有实例的主题 */\n#nice h1:after {\n}\n\n/* 二级标题 */\n#nice h2 {\n margin: 80px 10px 40px 10px;\n text-align: center;\n font-weight: normal;\n color: #3f3f3f;\n font-size: 140%;\n}\n\n/* 二级标题内容 */\n#nice h2 .content {\n}\n\n/* 二级标题修饰 请参考有实例的主题 */\n#nice h2:after {\n}\n\n/* 三级标题 */\n#nice h3 {\n margin: 40px 0px 20px 0px;\n font-weight: bold;\n line-height: 1.5;\n color: #3f3f3f;\n font-size: 120%;\n}\n\n/* 三级标题内容 */\n#nice h3 .content {\n}\n\n/* 三级标题修饰 请参考有实例的主题 */\n#nice h3:after {\n}\n\n/* 无序列表整体样式\n * list-style-type: square|circle|disc;\n */\n#nice ul {\n}\n\n/* 有序列表整体样式\n * list-style-type: upper-roman|lower-greek|lower-alpha;\n */\n#nice ol {\n}\n\n/* 列表内容,不要设置li\n */\n#nice li section {\n}\n\n/* 引用\n* 左边缘颜色 border-left-color: black;\n* 背景色 background: gray;\n*/\n#nice .multiquote-1 {\n color: rgb(91,91,91);\n border-left: 3px solid rgb(158,158,158);\n background: rgba(158, 158, 158, 0.1);\n padding: 1px 0 1px 10px;\n margin: 20px 0px;\n}\n\n/* 引用文字 */\n#nice .multiquote-1 p {\n color: #3f3f3f;\n line-height: 1.5;\n font-size: 16px;\n margin: 10px;\n padding: 0px;\n}\n\n/* 链接 \n * border-bottom: 1px solid #009688;\n */\n#nice a {\n color: #ff3502;\n border-bottom: 1px solid #ff3502;\n}\n\n/* 加粗 */\n#nice strong {\n color: #ff3502;\n line-height: 1.5;\n font-size: 16px;\n}\n\n/* 斜体 */\n#nice em {\n}\n\n/* 加粗斜体 */\n#nice em strong {\n}\n\n/* 删除线 */\n#nice del {\n}\n\n/* 分隔线\n* 粗细、样式和颜色\n* border-top: 1px solid #3e3e3e;\n*/\n#nice hr {\n}\n\n/* 图片\n* 宽度 width: 80%;\n* 居中 margin: 0 auto;\n* 居左 margin: 0 0;\n*/\n#nice img {\n}\n\n/* 图片描述文字 */\n#nice figcaption {\n}\n\n/* 行内代码 */\n#nice p code, #nice li code {\n background: #f8f5ec;\n color: #ff3502;\n line-height: 1.5;\n font-size: 90%;\n padding: 3px 5px;\n border-radius: 2px;\n}\n\n/* 非微信代码块\n * 代码块不换行 display: -webkit-box !important;\n * 代码块换行 display: block;\n */\n#nice pre code {\n}\n\n/*\n * 表格内的单元格\n * 字体大小 font-size: 16px;\n * 边框 border: 1px solid #ccc;\n * 内边距 padding: 5px 10px;\n */\n#nice table tr th,\n#nice table tr td {\n}\n\n/* 脚注文字 */\n#nice .footnote-word {\n color: #ff3502;\n font-size: 16px;\n line-height: 1.5;\n font-weight: normal;\n}\n\n/* 脚注上标 */\n#nice .footnote-ref {\n color: #ff3502;\n font-weight: normal;\n}\n\n/* \"参考资料\"四个字 */\n#nice .footnotes-sep {\n}\n\n/* 参考资料编号 */\n#nice .footnote-num {\n}\n\n/* 参考资料文字 */\n#nice .footnote-item p { \n}\n\n/* 参考资料解释 */\n#nice .footnote-item p em {\n}\n\n/* 行间公式\n * 最大宽度 max-width: 300% !important;\n */\n#nice .block-equation svg {\n}\n\n/* 行内公式\n */\n#nice .inline-equation svg { \n}",
- "article": "https://mp.weixin.qq.com/s?__biz=MzIwNTA4NzI1Mw==&mid=2247485061&idx=1&sn=36047ec080d1daaf63d733d18e546ba7&source=41#wechat_redirect",
- "html": null,
- "exampleHtml": null,
- "authorName": "画手",
- "authorEmail": null,
- "description": "Wechat Format的作者很懒,暂时没有描述",
- "sort": null,
- "checked": true,
- "userThemeId": 21249,
- "userThemeType": 0,
- "fixThemeId": null,
- "price": null,
- "tmpPrice": null,
- "isPublic": true,
- "createTime": "2020-04-04T12:14:25.000+0000",
- "updateTime": "2020-11-21T23:11:44.000+0000"
- }
-]
diff --git a/document/mind/cms.emmx b/document/mind/cms.emmx
deleted file mode 100644
index b63e075e..00000000
Binary files a/document/mind/cms.emmx and /dev/null differ
diff --git a/document/mind/oms.emmx b/document/mind/oms.emmx
deleted file mode 100644
index e44e45d2..00000000
Binary files a/document/mind/oms.emmx and /dev/null differ
diff --git a/document/mind/pms.emmx b/document/mind/pms.emmx
deleted file mode 100644
index e812ba89..00000000
Binary files a/document/mind/pms.emmx and /dev/null differ
diff --git a/document/mind/sms.emmx b/document/mind/sms.emmx
deleted file mode 100644
index c2eede7b..00000000
Binary files a/document/mind/sms.emmx and /dev/null differ
diff --git a/document/mind/ums.emmx b/document/mind/ums.emmx
deleted file mode 100644
index 254d7ee9..00000000
Binary files a/document/mind/ums.emmx and /dev/null differ
diff --git a/document/navicat/mall-ref.sql b/document/navicat/mall-ref.sql
deleted file mode 100644
index 12925648..00000000
--- a/document/navicat/mall-ref.sql
+++ /dev/null
@@ -1,1824 +0,0 @@
-/*==============================================================*/
-/* DBMS name: MySQL 5.0 */
-/* Created on: 2020/4/15 14:40:15 */
-/*==============================================================*/
-
-
-drop table if exists cms_help;
-
-drop table if exists cms_help_category;
-
-drop table if exists cms_member_report;
-
-drop table if exists cms_prefrence_area;
-
-drop table if exists cms_prefrence_area_product_relation;
-
-drop table if exists cms_subject;
-
-drop table if exists cms_subject_category;
-
-drop table if exists cms_subject_comment;
-
-drop table if exists cms_subject_product_relation;
-
-drop table if exists cms_topic;
-
-drop table if exists cms_topic_category;
-
-drop table if exists cms_topic_comment;
-
-drop table if exists oms_cart_item;
-
-drop table if exists oms_company_address;
-
-drop table if exists oms_order;
-
-drop table if exists oms_order_item;
-
-drop table if exists oms_order_operate_history;
-
-drop table if exists oms_order_return_apply;
-
-drop table if exists oms_order_return_reason;
-
-drop table if exists oms_order_setting;
-
-drop table if exists pms_album;
-
-drop table if exists pms_album_pic;
-
-drop table if exists pms_brand;
-
-drop table if exists pms_comment;
-
-drop table if exists pms_comment_replay;
-
-drop table if exists pms_feight_template;
-
-drop table if exists pms_member_price;
-
-drop table if exists pms_product;
-
-drop table if exists pms_product_attribute;
-
-drop table if exists pms_product_attribute_category;
-
-drop table if exists pms_product_attribute_value;
-
-drop table if exists pms_product_category;
-
-drop table if exists pms_product_category_attribute_relation;
-
-drop table if exists pms_product_full_reduction;
-
-drop table if exists pms_product_ladder;
-
-drop table if exists pms_product_operate_log;
-
-drop table if exists pms_product_vertify_record;
-
-drop table if exists pms_sku_stock;
-
-drop table if exists sms_coupon;
-
-drop table if exists sms_coupon_history;
-
-drop table if exists sms_coupon_product_category_relation;
-
-drop table if exists sms_coupon_product_relation;
-
-drop table if exists sms_flash_promotion;
-
-drop table if exists sms_flash_promotion_log;
-
-drop table if exists sms_flash_promotion_product_relation;
-
-drop table if exists sms_flash_promotion_session;
-
-drop table if exists sms_home_advertise;
-
-drop table if exists sms_home_brand;
-
-drop table if exists sms_home_new_product;
-
-drop table if exists sms_home_recommend_product;
-
-drop table if exists sms_home_recommend_subject;
-
-drop table if exists ums_admin;
-
-drop table if exists ums_admin_login_log;
-
-drop table if exists ums_admin_permission_relation;
-
-drop table if exists ums_admin_role_relation;
-
-drop table if exists ums_growth_change_history;
-
-drop table if exists ums_integration_change_history;
-
-drop table if exists ums_integration_consume_setting;
-
-drop table if exists ums_member;
-
-drop table if exists ums_member_level;
-
-drop table if exists ums_member_login_log;
-
-drop table if exists ums_member_member_tag_relation;
-
-drop table if exists ums_member_product_category_relation;
-
-drop table if exists ums_member_receive_address;
-
-drop table if exists ums_member_rule_setting;
-
-drop table if exists ums_member_statistics_info;
-
-drop table if exists ums_member_tag;
-
-drop table if exists ums_member_task;
-
-drop table if exists ums_menu;
-
-drop table if exists ums_permission;
-
-drop table if exists ums_resource;
-
-drop table if exists ums_resource_category;
-
-drop table if exists ums_role;
-
-drop table if exists ums_role_menu_relation;
-
-drop table if exists ums_role_permission_relation;
-
-drop table if exists ums_role_resource_relation;
-
-/*==============================================================*/
-/* Table: cms_help */
-/*==============================================================*/
-create table cms_help
-(
- id bigint not null auto_increment,
- category_id bigint,
- icon varchar(500),
- title varchar(100),
- show_status int(1),
- create_time datetime,
- read_count int(1),
- content text,
- primary key (id)
-);
-
-alter table cms_help comment '帮助表';
-
-/*==============================================================*/
-/* Table: cms_help_category */
-/*==============================================================*/
-create table cms_help_category
-(
- id bigint not null auto_increment,
- name varchar(100),
- icon varchar(500) comment '分类图标',
- help_count int comment '专题数量',
- show_status int(2),
- sort int,
- primary key (id)
-);
-
-alter table cms_help_category comment '帮助分类表';
-
-/*==============================================================*/
-/* Table: cms_member_report */
-/*==============================================================*/
-create table cms_member_report
-(
- id bigint,
- report_type int(1) comment '举报类型:0->商品评价;1->话题内容;2->用户评论',
- report_member_name varchar(100) comment '举报人',
- create_time datetime,
- report_object varchar(100),
- report_status int(1) comment '举报状态:0->未处理;1->已处理',
- handle_status int(1) comment '处理结果:0->无效;1->有效;2->恶意',
- note varchar(200)
-);
-
-alter table cms_member_report comment '用户举报表';
-
-/*==============================================================*/
-/* Table: cms_prefrence_area */
-/*==============================================================*/
-create table cms_prefrence_area
-(
- id bigint not null auto_increment,
- name varchar(255),
- sub_title varchar(255),
- pic varbinary(500) comment '展示图片',
- sort int,
- show_status int(1),
- primary key (id)
-);
-
-alter table cms_prefrence_area comment '优选专区';
-
-/*==============================================================*/
-/* Table: cms_prefrence_area_product_relation */
-/*==============================================================*/
-create table cms_prefrence_area_product_relation
-(
- id bigint not null auto_increment,
- prefrence_area_id bigint,
- product_id bigint,
- primary key (id)
-);
-
-alter table cms_prefrence_area_product_relation comment '优选专区和产品关系表';
-
-/*==============================================================*/
-/* Table: cms_subject */
-/*==============================================================*/
-create table cms_subject
-(
- id bigint not null auto_increment,
- category_id bigint,
- title varchar(100),
- pic varchar(500) comment '专题主图',
- product_count int comment '关联产品数量',
- recommend_status int(1),
- create_time datetime,
- collect_count int,
- read_count int,
- comment_count int,
- album_pics varchar(1000) comment '画册图片用逗号分割',
- description varchar(1000),
- show_status int(1) comment '显示状态:0->不显示;1->显示',
- content text,
- forward_count int comment '转发数',
- category_name varchar(200) comment '专题分类名称',
- primary key (id)
-);
-
-alter table cms_subject comment '专题表';
-
-/*==============================================================*/
-/* Table: cms_subject_category */
-/*==============================================================*/
-create table cms_subject_category
-(
- id bigint not null auto_increment,
- name varchar(100),
- icon varchar(500) comment '分类图标',
- subject_count int comment '专题数量',
- show_status int(2),
- sort int,
- primary key (id)
-);
-
-alter table cms_subject_category comment '专题分类表';
-
-/*==============================================================*/
-/* Table: cms_subject_comment */
-/*==============================================================*/
-create table cms_subject_comment
-(
- id bigint not null auto_increment,
- subject_id bigint,
- member_nick_name varchar(255),
- member_icon varchar(255),
- content varchar(1000),
- create_time datetime,
- show_status int(1),
- primary key (id)
-);
-
-alter table cms_subject_comment comment '专题评论表';
-
-/*==============================================================*/
-/* Table: cms_subject_product_relation */
-/*==============================================================*/
-create table cms_subject_product_relation
-(
- id bigint not null auto_increment,
- subject_id bigint,
- product_id bigint,
- primary key (id)
-);
-
-alter table cms_subject_product_relation comment '专题商品关系表';
-
-/*==============================================================*/
-/* Table: cms_topic */
-/*==============================================================*/
-create table cms_topic
-(
- id bigint not null auto_increment,
- category_id bigint,
- name varchar(255),
- create_time datetime,
- start_time datetime,
- end_time datetime,
- attend_count int comment '参与人数',
- attention_count int comment '关注人数',
- read_count int,
- award_name varchar(100) comment '奖品名称',
- attend_type varchar(100) comment '参与方式',
- content text comment '话题内容',
- primary key (id)
-);
-
-alter table cms_topic comment '话题表';
-
-/*==============================================================*/
-/* Table: cms_topic_category */
-/*==============================================================*/
-create table cms_topic_category
-(
- id bigint not null auto_increment,
- name varchar(100),
- icon varchar(500) comment '分类图标',
- subject_count int comment '专题数量',
- show_status int(2),
- sort int,
- primary key (id)
-);
-
-alter table cms_topic_category comment '话题分类表';
-
-/*==============================================================*/
-/* Table: cms_topic_comment */
-/*==============================================================*/
-create table cms_topic_comment
-(
- id bigint not null auto_increment,
- member_nick_name varchar(255),
- topic_id bigint,
- member_icon varchar(255),
- content varchar(1000),
- create_time datetime,
- show_status int(1),
- primary key (id)
-);
-
-alter table cms_topic_comment comment '专题评论表';
-
-/*==============================================================*/
-/* Table: oms_cart_item */
-/*==============================================================*/
-create table oms_cart_item
-(
- id bigint not null auto_increment,
- product_id bigint,
- product_sku_id bigint,
- member_id bigint,
- quantity int comment '购买数量',
- price decimal(10,2) comment '添加到购物车的价格',
- product_pic varchar(1000) comment '商品主图',
- product_name varchar(500) comment '商品名称',
- product_brand varchar(200),
- product_sn varchar(200),
- product_sub_title varchar(500) comment '商品副标题(卖点)',
- product_sku_code varchar(200) comment '商品sku条码',
- member_nickname varchar(500) comment '会员昵称',
- create_date datetime comment '创建时间',
- modify_date datetime comment '修改时间',
- delete_status int(1) default 0 comment '是否删除',
- product_category_id bigint comment '商品的分类',
- product_attr varchar(500) comment '商品销售属性:[{"key":"颜色","value":"银色"},{"key":"容量","value":"4G"}]',
- primary key (id)
-);
-
-alter table oms_cart_item comment '购物车表';
-
-/*==============================================================*/
-/* Table: oms_company_address */
-/*==============================================================*/
-create table oms_company_address
-(
- id bigint not null auto_increment,
- address_name varchar(200) comment '地址名称',
- send_status int(1) comment '默认发货地址:0->否;1->是',
- receive_status int(1) comment '是否默认收货地址:0->否;1->是',
- name varchar(64) comment '收发货人姓名',
- phone varchar(64) comment '收货人电话',
- province varchar(64) comment '省/直辖市',
- city varchar(64) comment '市',
- region varchar(64) comment '区',
- detail_address varchar(200) comment '详细地址',
- primary key (id)
-);
-
-alter table oms_company_address comment '公司收发货地址表';
-
-/*==============================================================*/
-/* Table: oms_order */
-/*==============================================================*/
-create table oms_order
-(
- id bigint not null auto_increment comment '订单id',
- member_id bigint not null,
- coupon_id bigint,
- order_sn varchar(64) comment '订单编号',
- create_time datetime comment '提交时间',
- member_username varchar(64) comment '用户帐号',
- total_amount decimal(10,2) comment '订单总金额',
- pay_amount decimal(10,2) comment '应付金额(实际支付金额)',
- freight_amount decimal(10,2) comment '运费金额',
- promotion_amount decimal(10,2) comment '促销优化金额(促销价、满减、阶梯价)',
- integration_amount decimal(10,2) comment '积分抵扣金额',
- coupon_amount decimal(10,2) comment '优惠券抵扣金额',
- discount_amount decimal(10,2) comment '管理员后台调整订单使用的折扣金额',
- pay_type int(1) comment '支付方式:0->未支付;1->支付宝;2->微信',
- source_type int(1) comment '订单来源:0->PC订单;1->app订单',
- status int(1) comment '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',
- order_type int(1) comment '订单类型:0->正常订单;1->秒杀订单',
- delivery_company varchar(64) comment '物流公司(配送方式)',
- delivery_sn varchar(64) comment '物流单号',
- auto_confirm_day int comment '自动确认时间(天)',
- integration int comment '可以获得的积分',
- growth int comment '可以活动的成长值',
- promotion_info varchar(100) comment '活动信息',
- bill_type int(1) comment '发票类型:0->不开发票;1->电子发票;2->纸质发票',
- bill_header varchar(200) comment '发票抬头',
- bill_content varchar(200) comment '发票内容',
- bill_receiver_phone varchar(32) comment '收票人电话',
- bill_receiver_email varchar(64) comment '收票人邮箱',
- receiver_name varchar(100) not null comment '收货人姓名',
- receiver_phone varchar(32) not null comment '收货人电话',
- receiver_post_code varchar(32) comment '收货人邮编',
- receiver_province varchar(32) comment '省份/直辖市',
- receiver_city varchar(32) comment '城市',
- receiver_region varchar(32) comment '区',
- receiver_detail_address varchar(200) comment '详细地址',
- note varchar(500) comment '订单备注',
- confirm_status int(1) comment '确认收货状态:0->未确认;1->已确认',
- delete_status int(1) not null default 0 comment '删除状态:0->未删除;1->已删除',
- use_integration int comment '下单时使用的积分',
- payment_time datetime comment '支付时间',
- delivery_time datetime comment '发货时间',
- receive_time datetime comment '确认收货时间',
- comment_time datetime comment '评价时间',
- modify_time datetime comment '修改时间',
- primary key (id)
-);
-
-alter table oms_order comment '订单表';
-
-/*==============================================================*/
-/* Table: oms_order_item */
-/*==============================================================*/
-create table oms_order_item
-(
- id bigint not null auto_increment,
- order_id bigint comment '订单id',
- order_sn varchar(64) comment '订单编号',
- product_id bigint,
- product_pic varchar(500),
- product_name varchar(200),
- product_brand varchar(200),
- product_sn varchar(64),
- product_price decimal(10,2) comment '销售价格',
- product_quantity int comment '购买数量',
- product_sku_id bigint comment '商品sku编号',
- product_sku_code varchar(50) comment '商品sku条码',
- product_category_id bigint comment '商品分类id',
- promotion_name varchar(200) comment '商品促销名称',
- promotion_amount decimal(10,2) comment '商品促销分解金额',
- coupon_amount decimal(10,2) comment '优惠券优惠分解金额',
- integration_amount decimal(10,2) comment '积分优惠分解金额',
- real_amount decimal(10,2) comment '该商品经过优惠后的分解金额',
- gift_integration int not null default 0 comment '商品赠送积分',
- gift_growth int not null default 0 comment '商品赠送成长值',
- product_attr varchar(500) comment '商品销售属性:[{"key":"颜色","value":"颜色"},{"key":"容量","value":"4G"}]',
- primary key (id)
-);
-
-alter table oms_order_item comment '订单中所包含的商品';
-
-/*==============================================================*/
-/* Table: oms_order_operate_history */
-/*==============================================================*/
-create table oms_order_operate_history
-(
- id bigint not null auto_increment,
- order_id bigint comment '订单id',
- operate_man varchar(100) comment '操作人:用户;系统;后台管理员',
- create_time datetime comment '操作时间',
- order_status int(1) comment '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',
- note varchar(500) comment '备注',
- primary key (id)
-);
-
-alter table oms_order_operate_history comment '订单操作历史记录';
-
-/*==============================================================*/
-/* Table: oms_order_return_apply */
-/*==============================================================*/
-create table oms_order_return_apply
-(
- id bigint not null auto_increment,
- order_id bigint comment '订单id',
- company_address_id bigint comment '收货地址表id',
- product_id bigint comment '退货商品id',
- order_sn varchar(64) comment '订单编号',
- create_time datetime comment '申请时间',
- member_username varchar(64) comment '会员用户名',
- return_amount decimal(10,2) comment '退款金额',
- return_name varchar(100) comment '退货人姓名',
- return_phone varchar(100) comment '退货人电话',
- status int(1) comment '申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝',
- handle_time datetime comment '处理时间',
- product_pic varchar(500) comment '商品图片',
- product_name varchar(200) comment '商品名称',
- product_brand varchar(200) comment '商品品牌',
- product_attr varchar(500) comment '商品销售属性:颜色:红色;尺码:xl;',
- product_count int comment '退货数量',
- product_price decimal(10,2) comment '商品单价',
- product_real_price decimal(10,2) comment '商品实际支付单价',
- reason varchar(200) comment '原因',
- description varchar(500) comment '描述',
- proof_pics varchar(1000) comment '凭证图片,以逗号隔开',
- handle_note varchar(500) comment '处理备注',
- handle_man varchar(100) comment '处理人员',
- receive_man varchar(100) comment '收货人',
- receive_time datetime comment '收货时间',
- receive_note varchar(500) comment '收货备注',
- primary key (id)
-);
-
-alter table oms_order_return_apply comment '订单退货申请';
-
-/*==============================================================*/
-/* Table: oms_order_return_reason */
-/*==============================================================*/
-create table oms_order_return_reason
-(
- id bigint not null auto_increment,
- name varchar(100) comment '退货类型',
- sort int,
- status int(1) comment '状态:0->不启用;1->启用',
- create_time datetime comment '添加时间',
- primary key (id)
-);
-
-alter table oms_order_return_reason comment '退货原因表';
-
-/*==============================================================*/
-/* Table: oms_order_setting */
-/*==============================================================*/
-create table oms_order_setting
-(
- id bigint not null auto_increment,
- flash_order_overtime int comment '秒杀订单超时关闭时间(分)',
- normal_order_overtime int comment '正常订单超时时间(分)',
- confirm_overtime int comment '发货后自动确认收货时间(天)',
- finish_overtime int comment '自动完成交易时间,不能申请售后(天)',
- comment_overtime int comment '订单完成后自动好评时间(天)',
- primary key (id)
-);
-
-alter table oms_order_setting comment '订单设置表';
-
-/*==============================================================*/
-/* Table: pms_album */
-/*==============================================================*/
-create table pms_album
-(
- id bigint not null auto_increment,
- name varchar(64),
- cover_pic varchar(1000),
- pic_count int,
- sort int,
- description varchar(1000),
- primary key (id)
-);
-
-alter table pms_album comment '相册表';
-
-/*==============================================================*/
-/* Table: pms_album_pic */
-/*==============================================================*/
-create table pms_album_pic
-(
- id bigint not null auto_increment,
- album_id bigint,
- pic varchar(1000),
- primary key (id)
-);
-
-alter table pms_album_pic comment '画册图片表';
-
-/*==============================================================*/
-/* Table: pms_brand */
-/*==============================================================*/
-create table pms_brand
-(
- id bigint not null auto_increment,
- name varchar(64),
- first_letter varchar(8) comment '首字母',
- sort int,
- factory_status int(1) comment '是否为品牌制造商:0->不是;1->是',
- show_status int(1),
- product_count int comment '产品数量',
- product_comment_count int comment '产品评论数量',
- logo varchar(255) comment '品牌logo',
- big_pic varchar(255) comment '专区大图',
- brand_story text comment '品牌故事',
- primary key (id)
-);
-
-alter table pms_brand comment '品牌表';
-
-/*==============================================================*/
-/* Table: pms_comment */
-/*==============================================================*/
-create table pms_comment
-(
- id bigint not null auto_increment,
- product_id bigint,
- member_nick_name varchar(255),
- product_name varchar(255),
- star int(3) comment '评价星数:0->5',
- member_ip varchar(64) comment '评价的ip',
- create_time datetime,
- show_status int(1),
- product_attribute varchar(255) comment '购买时的商品属性',
- collect_couont int,
- read_count int,
- content text,
- pics varchar(1000) comment '上传图片地址,以逗号隔开',
- member_icon varchar(255) comment '评论用户头像',
- replay_count int,
- primary key (id)
-);
-
-alter table pms_comment comment '商品评价表';
-
-/*==============================================================*/
-/* Table: pms_comment_replay */
-/*==============================================================*/
-create table pms_comment_replay
-(
- id bigint not null auto_increment,
- comment_id bigint,
- member_nick_name varchar(255),
- member_icon varchar(255),
- content varchar(1000),
- create_time datetime,
- type int(1) comment '评论人员类型;0->会员;1->管理员',
- primary key (id)
-);
-
-alter table pms_comment_replay comment '产品评价回复表';
-
-/*==============================================================*/
-/* Table: pms_feight_template */
-/*==============================================================*/
-create table pms_feight_template
-(
- id bigint not null auto_increment,
- name varchar(64),
- charge_type int(1) comment '计费类型:0->按重量;1->按件数',
- first_weight decimal(10,2) comment '首重kg',
- first_fee decimal(10,2) comment '首费(元)',
- continue_weight decimal(10,2),
- continme_fee decimal(10,2),
- dest varchar(255) comment '目的地(省、市)',
- primary key (id)
-);
-
-alter table pms_feight_template comment '运费模版';
-
-/*==============================================================*/
-/* Table: pms_member_price */
-/*==============================================================*/
-create table pms_member_price
-(
- id bigint not null auto_increment,
- product_id bigint,
- member_level_id bigint,
- member_price decimal(10,2) comment '会员价格',
- member_level_name varchar(100),
- primary key (id)
-);
-
-alter table pms_member_price comment '商品会员价格表';
-
-/*==============================================================*/
-/* Table: pms_product */
-/*==============================================================*/
-create table pms_product
-(
- id bigint not null auto_increment,
- brand_id bigint,
- product_category_id bigint,
- feight_template_id bigint,
- product_attribute_category_id bigint,
- name varchar(64) not null,
- pic varchar(255),
- product_sn varchar(64) not null comment '货号',
- delete_status int(1) comment '删除状态:0->未删除;1->已删除',
- publish_status int(1) comment '上架状态:0->下架;1->上架',
- new_status int(1) comment '新品状态:0->不是新品;1->新品',
- recommand_status int(1) comment '推荐状态;0->不推荐;1->推荐',
- verify_status int(1) comment '审核状态:0->未审核;1->审核通过',
- sort int comment '排序',
- sale int comment '销量',
- price decimal(10,2),
- promotion_price decimal(10,2) comment '促销价格',
- gift_growth int default 0 comment '赠送的成长值',
- gift_point int default 0 comment '赠送的积分',
- use_point_limit int comment '限制使用的积分数',
- sub_title varchar(255) comment '副标题',
- description text comment '商品描述',
- original_price decimal(10,2) comment '市场价',
- stock int comment '库存',
- low_stock int comment '库存预警值',
- unit varchar(16) comment '单位',
- weight decimal(10,2) comment '商品重量,默认为克',
- preview_status int(1) comment '是否为预告商品:0->不是;1->是',
- service_ids varchar(64) comment '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',
- keywords varchar(255),
- note varchar(255),
- album_pics varchar(255) comment '画册图片,连产品图片限制为5张,以逗号分割',
- detail_title varchar(255),
- detail_desc text,
- detail_html text comment '产品详情网页内容',
- detail_mobile_html text comment '移动端网页详情',
- promotion_start_time datetime comment '促销开始时间',
- promotion_end_time datetime comment '促销结束时间',
- promotion_per_limit int comment '活动限购数量',
- promotion_type int(1) comment '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',
- product_category_name varchar(255) comment '产品分类名称',
- brand_name varchar(255) comment '品牌名称',
- primary key (id)
-);
-
-alter table pms_product comment '商品信息';
-
-/*==============================================================*/
-/* Table: pms_product_attribute */
-/*==============================================================*/
-create table pms_product_attribute
-(
- id bigint not null auto_increment,
- product_attribute_category_id bigint,
- name varchar(64),
- select_type int(1) comment '属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;',
- input_type int(1) comment '属性录入方式:0->手工录入;1->从列表中选取',
- input_list varchar(255) comment '可选值列表,以逗号隔开',
- sort int comment '排序字段:最高的可以单独上传图片',
- filter_type int(1) comment '分类筛选样式:1->普通;1->颜色',
- search_type int(1) comment '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',
- related_status int(1) comment '相同属性产品是否关联;0->不关联;1->关联',
- hand_add_status int(1) comment '是否支持手动新增;0->不支持;1->支持',
- type int(1) comment '属性的类型;0->规格;1->参数',
- primary key (id)
-);
-
-alter table pms_product_attribute comment '商品属性参数表';
-
-/*==============================================================*/
-/* Table: pms_product_attribute_category */
-/*==============================================================*/
-create table pms_product_attribute_category
-(
- id bigint not null auto_increment,
- name varchar(64),
- attribute_count int comment '属性数量',
- param_count int comment '参数数量',
- primary key (id)
-);
-
-alter table pms_product_attribute_category comment '产品属性分类表';
-
-/*==============================================================*/
-/* Table: pms_product_attribute_value */
-/*==============================================================*/
-create table pms_product_attribute_value
-(
- id bigint not null auto_increment,
- product_id bigint,
- product_attribute_id bigint,
- value varchar(64) comment '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',
- primary key (id)
-);
-
-alter table pms_product_attribute_value comment '存储产品参数信息的表';
-
-/*==============================================================*/
-/* Table: pms_product_category */
-/*==============================================================*/
-create table pms_product_category
-(
- id bigint not null auto_increment,
- parent_id bigint comment '上机分类的编号:0表示一级分类',
- name varchar(64),
- level int(1) comment '分类级别:0->1级;1->2级',
- product_count int,
- product_unit varchar(64),
- nav_status int(1) comment '是否显示在导航栏:0->不显示;1->显示',
- show_status int(1) comment '显示状态:0->不显示;1->显示',
- sort int,
- icon varchar(255) comment '图标',
- keywords varchar(255),
- description text comment '描述',
- primary key (id)
-);
-
-alter table pms_product_category comment '产品分类';
-
-/*==============================================================*/
-/* Table: pms_product_category_attribute_relation */
-/*==============================================================*/
-create table pms_product_category_attribute_relation
-(
- id bigint not null auto_increment,
- product_category_id bigint,
- product_attribute_id bigint,
- primary key (id)
-);
-
-alter table pms_product_category_attribute_relation comment '产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)';
-
-/*==============================================================*/
-/* Table: pms_product_full_reduction */
-/*==============================================================*/
-create table pms_product_full_reduction
-(
- id bigint not null auto_increment,
- product_id bigint,
- full_price decimal(10,2),
- reduce_price decimal(10,2),
- primary key (id)
-);
-
-alter table pms_product_full_reduction comment '产品满减表(只针对同商品)';
-
-/*==============================================================*/
-/* Table: pms_product_ladder */
-/*==============================================================*/
-create table pms_product_ladder
-(
- id bigint not null auto_increment,
- product_id bigint,
- count int comment '满足的商品数量',
- discount decimal(10,2) comment '折扣',
- price decimal(10,2) comment '折后价格',
- primary key (id)
-);
-
-alter table pms_product_ladder comment '产品阶梯价格表(只针对同商品)';
-
-/*==============================================================*/
-/* Table: pms_product_operate_log */
-/*==============================================================*/
-create table pms_product_operate_log
-(
- id bigint not null auto_increment,
- product_id bigint,
- price_old decimal(10,2),
- price_new decimal(10,2),
- sale_price_old decimal(10,2),
- sale_price_new decimal(10,2),
- gift_point_old int comment '赠送的积分',
- gift_point_new int,
- use_point_limit_old int,
- use_point_limit_new int,
- operate_man varchar(64) comment '操作人',
- create_time datetime,
- primary key (id)
-);
-
-/*==============================================================*/
-/* Table: pms_product_vertify_record */
-/*==============================================================*/
-create table pms_product_vertify_record
-(
- id bigint not null auto_increment,
- product_id bigint,
- create_time datetime,
- vertify_man varchar(64) comment '审核人',
- status int(1) comment '审核后的状态:0->未通过;2->已通过',
- detail varchar(255) comment '反馈详情',
- primary key (id)
-);
-
-alter table pms_product_vertify_record comment '商品审核记录';
-
-/*==============================================================*/
-/* Table: pms_sku_stock */
-/*==============================================================*/
-create table pms_sku_stock
-(
- id bigint not null auto_increment,
- product_id bigint,
- sku_code varchar(64) not null comment 'sku编码',
- price decimal(10,2),
- stock int default 0 comment '库存',
- low_stock int comment '预警库存',
- pic varchar(255) comment '展示图片',
- sale int comment '销量',
- promotion_price decimal(10,2) comment '单品促销价格',
- lock_stock int default 0 comment '锁定库存',
- sp_data varchar(500) comment '商品销售属性,json格式',
- primary key (id)
-);
-
-alter table pms_sku_stock comment 'sku的库存';
-
-/*==============================================================*/
-/* Table: sms_coupon */
-/*==============================================================*/
-create table sms_coupon
-(
- id bigint not null auto_increment,
- type int(1) comment '优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券',
- name varchar(100),
- platform int(1) comment '使用平台:0->全部;1->移动;2->PC',
- count int comment '数量',
- amount decimal(10,2) comment '金额',
- per_limit int comment '每人限领张数',
- min_point decimal(10,2) comment '使用门槛;0表示无门槛',
- start_time datetime,
- end_time datetime,
- use_type int(1) comment '使用类型:0->全场通用;1->指定分类;2->指定商品',
- note varchar(200) comment '备注',
- publish_count int comment '发行数量',
- use_count int comment '已使用数量',
- receive_count int comment '领取数量',
- enable_time datetime comment '可以领取的日期',
- code varchar(64) comment '优惠码',
- member_level int(1) comment '可领取的会员类型:0->无限时',
- primary key (id)
-);
-
-alter table sms_coupon comment '优惠卷表';
-
-/*==============================================================*/
-/* Table: sms_coupon_history */
-/*==============================================================*/
-create table sms_coupon_history
-(
- id bigint not null auto_increment,
- coupon_id bigint,
- member_id bigint,
- order_id bigint comment '订单id',
- coupon_code varchar(64),
- member_nickname varchar(64) comment '领取人昵称',
- get_type int(1) comment '获取类型:0->后台赠送;1->主动获取',
- create_time datetime,
- use_status int(1) comment '使用状态:0->未使用;1->已使用;2->已过期',
- use_time datetime comment '使用时间',
- order_sn varchar(100) comment '订单号码',
- primary key (id)
-);
-
-alter table sms_coupon_history comment '优惠券使用、领取历史表';
-
-/*==============================================================*/
-/* Table: sms_coupon_product_category_relation */
-/*==============================================================*/
-create table sms_coupon_product_category_relation
-(
- id bigint not null auto_increment,
- coupon_id bigint,
- product_category_id bigint,
- product_category_name varchar(200) comment '产品分类名称',
- parent_category_name varchar(200) comment '父分类名称',
- primary key (id)
-);
-
-alter table sms_coupon_product_category_relation comment '优惠券和产品分类关系表';
-
-/*==============================================================*/
-/* Table: sms_coupon_product_relation */
-/*==============================================================*/
-create table sms_coupon_product_relation
-(
- id bigint not null auto_increment,
- coupon_id bigint,
- product_id bigint,
- product_name varchar(500) comment '商品名称',
- product_sn varchar(200) comment '商品编码',
- primary key (id)
-);
-
-alter table sms_coupon_product_relation comment '优惠券和产品的关系表';
-
-/*==============================================================*/
-/* Table: sms_flash_promotion */
-/*==============================================================*/
-create table sms_flash_promotion
-(
- id bigint not null auto_increment,
- title varchar(200),
- start_date date comment '开始日期',
- end_date date comment '结束日期',
- status int(1) comment '上下线状态',
- create_time datetime comment '秒杀时间段名称',
- primary key (id)
-);
-
-alter table sms_flash_promotion comment '限时购表';
-
-/*==============================================================*/
-/* Table: sms_flash_promotion_log */
-/*==============================================================*/
-create table sms_flash_promotion_log
-(
- id int not null auto_increment,
- member_id bigint,
- product_id bigint,
- member_phone varchar(64),
- product_name varchar(100),
- subscribe_time datetime comment '会员订阅时间',
- send_time datetime,
- primary key (id)
-);
-
-alter table sms_flash_promotion_log comment '限时购通知记录';
-
-/*==============================================================*/
-/* Table: sms_flash_promotion_product_relation */
-/*==============================================================*/
-create table sms_flash_promotion_product_relation
-(
- id bigint not null auto_increment comment '编号',
- flash_promotion_id bigint,
- flash_promotion_session_id bigint comment '编号',
- product_id bigint,
- flash_promotion_price decimal(10,2) comment '限时购价格',
- flash_promotion_count int comment '限时购数量',
- flash_promotion_limit int comment '每人限购数量',
- sort int comment '排序',
- primary key (id)
-);
-
-alter table sms_flash_promotion_product_relation comment '商品限时购与商品关系表';
-
-/*==============================================================*/
-/* Table: sms_flash_promotion_session */
-/*==============================================================*/
-create table sms_flash_promotion_session
-(
- id bigint not null auto_increment comment '编号',
- name varchar(200) comment '场次名称',
- start_time time comment '每日开始时间',
- end_time time comment '每日结束时间',
- status int(1) comment '启用状态:0->不启用;1->启用',
- create_time datetime comment '创建时间',
- primary key (id)
-);
-
-alter table sms_flash_promotion_session comment '限时购场次表';
-
-/*==============================================================*/
-/* Table: sms_home_advertise */
-/*==============================================================*/
-create table sms_home_advertise
-(
- id bigint not null auto_increment,
- name varchar(100),
- type int(1) comment '轮播位置:0->PC首页轮播;1->app首页轮播',
- pic varchar(500),
- start_time datetime,
- end_time datetime,
- status int(1) comment '上下线状态:0->下线;1->上线',
- click_count int comment '点击数',
- order_count int comment '下单数',
- url varchar(500) comment '链接地址',
- note varchar(500) comment '备注',
- sort int default 0 comment '排序',
- primary key (id)
-);
-
-alter table sms_home_advertise comment '首页轮播广告表';
-
-/*==============================================================*/
-/* Table: sms_home_brand */
-/*==============================================================*/
-create table sms_home_brand
-(
- id bigint not null auto_increment,
- brand_id bigint,
- brand_name varchar(64),
- recommend_status int(1),
- sort int,
- primary key (id)
-);
-
-alter table sms_home_brand comment '首页推荐品牌表';
-
-/*==============================================================*/
-/* Table: sms_home_new_product */
-/*==============================================================*/
-create table sms_home_new_product
-(
- id bigint not null auto_increment,
- product_id bigint,
- product_name varchar(64),
- recommend_status int(1),
- sort int(1),
- primary key (id)
-);
-
-alter table sms_home_new_product comment '新鲜好物表';
-
-/*==============================================================*/
-/* Table: sms_home_recommend_product */
-/*==============================================================*/
-create table sms_home_recommend_product
-(
- id bigint not null auto_increment,
- product_id bigint,
- product_name varchar(64),
- recommend_status int(1),
- sort int(1),
- primary key (id)
-);
-
-alter table sms_home_recommend_product comment '人气推荐商品表';
-
-/*==============================================================*/
-/* Table: sms_home_recommend_subject */
-/*==============================================================*/
-create table sms_home_recommend_subject
-(
- id bigint not null auto_increment,
- subject_id bigint,
- subject_name varchar(64),
- recommend_status int(1),
- sort int,
- primary key (id)
-);
-
-alter table sms_home_recommend_subject comment '首页推荐专题表';
-
-/*==============================================================*/
-/* Table: ums_admin */
-/*==============================================================*/
-create table ums_admin
-(
- id bigint not null auto_increment,
- username varchar(64) comment '用户名',
- password varchar(64) comment '密码',
- icon varchar(500) comment '头像',
- email varchar(100) comment '邮箱',
- nick_name varchar(200) comment '昵称',
- note varchar(500) comment '备注信息',
- create_time datetime comment '创建时间',
- login_time datetime comment '最后登录时间',
- status int(1) default 1 comment '帐号启用状态:0->禁用;1->启用',
- primary key (id)
-);
-
-alter table ums_admin comment '后台用户表';
-
-/*==============================================================*/
-/* Table: ums_admin_login_log */
-/*==============================================================*/
-create table ums_admin_login_log
-(
- id bigint not null auto_increment,
- admin_id bigint,
- create_time datetime,
- ip varchar(64),
- address varchar(100),
- user_agent varchar(100) comment '浏览器登录类型',
- primary key (id)
-);
-
-alter table ums_admin_login_log comment '后台用户登录日志表';
-
-/*==============================================================*/
-/* Table: ums_admin_permission_relation */
-/*==============================================================*/
-create table ums_admin_permission_relation
-(
- id bigint not null auto_increment,
- admin_id bigint,
- permission_id bigint,
- type int(1),
- primary key (id)
-);
-
-alter table ums_admin_permission_relation comment '后台用户和权限关系表(除角色中定义的权限以外的加减权限)';
-
-/*==============================================================*/
-/* Table: ums_admin_role_relation */
-/*==============================================================*/
-create table ums_admin_role_relation
-(
- id bigint not null auto_increment,
- admin_id bigint,
- role_id bigint,
- primary key (id)
-);
-
-alter table ums_admin_role_relation comment '后台用户和角色关系表';
-
-/*==============================================================*/
-/* Table: ums_growth_change_history */
-/*==============================================================*/
-create table ums_growth_change_history
-(
- id bigint not null auto_increment,
- member_id bigint,
- create_time datetime,
- change_type int(1) comment '改变类型:0->增加;1->减少',
- change_count int comment '积分改变数量',
- operate_man varchar(100) comment '操作人员',
- operate_note varchar(200) comment '操作备注',
- source_type int(1) comment '积分来源:0->购物;1->管理员修改',
- primary key (id)
-);
-
-alter table ums_growth_change_history comment '成长值变化历史记录表';
-
-/*==============================================================*/
-/* Table: ums_integration_change_history */
-/*==============================================================*/
-create table ums_integration_change_history
-(
- id bigint not null auto_increment,
- member_id bigint,
- create_time datetime,
- change_type int(1) comment '改变类型:0->增加;1->减少',
- change_count int comment '积分改变数量',
- operate_man varchar(100) comment '操作人员',
- operate_note varchar(200) comment '操作备注',
- source_type int(1) comment '积分来源:0->购物;1->管理员修改',
- primary key (id)
-);
-
-alter table ums_integration_change_history comment '积分变化历史记录表';
-
-/*==============================================================*/
-/* Table: ums_integration_consume_setting */
-/*==============================================================*/
-create table ums_integration_consume_setting
-(
- id bigint not null auto_increment,
- deduction_per_amount int comment '每一元需要抵扣的积分数量',
- max_percent_per_order int comment '每笔订单最高抵用百分比',
- use_unit int comment '每次使用积分最小单位100',
- coupon_status int(1) comment '是否可以和优惠券同用;0->不可以;1->可以',
- primary key (id)
-);
-
-alter table ums_integration_consume_setting comment '积分消费设置';
-
-/*==============================================================*/
-/* Table: ums_member */
-/*==============================================================*/
-create table ums_member
-(
- id bigint not null auto_increment,
- member_level_id bigint,
- username varchar(64) comment '用户名',
- password varchar(64) comment '密码',
- nickname varchar(64) comment '昵称',
- phone varchar(64) comment '手机号码',
- status int(1) comment '帐号启用状态:0->禁用;1->启用',
- create_time datetime comment '注册时间',
- icon varchar(500) comment '头像',
- gender int(1) comment '性别:0->未知;1->男;2->女',
- birthday date comment '生日',
- city varchar(64) comment '所做城市',
- job varchar(100) comment '职业',
- personalized_signature varchar(200) comment '个性签名',
- source_type int(1) comment '用户来源',
- integration int comment '积分',
- growth int comment '成长值',
- luckey_count int comment '剩余抽奖次数',
- history_integration int comment '历史积分数量',
- primary key (id)
-);
-
-alter table ums_member comment '会员表';
-
-/*==============================================================*/
-/* Table: ums_member_level */
-/*==============================================================*/
-create table ums_member_level
-(
- id bigint not null auto_increment,
- name varchar(100),
- growth_point int,
- default_status int(1) comment '是否为默认等级:0->不是;1->是',
- free_freight_point decimal(10,2) comment '免运费标准',
- comment_growth_point int comment '每次评价获取的成长值',
- priviledge_free_freight int(1) comment '是否有免邮特权',
- priviledge_sign_in int(1) comment '是否有签到特权',
- priviledge_comment int(1) comment '是否有评论获奖励特权',
- priviledge_promotion int(1) comment '是否有专享活动特权',
- priviledge_member_price int(1) comment '是否有会员价格特权',
- priviledge_birthday int(1) comment '是否有生日特权',
- note varchar(200),
- primary key (id)
-);
-
-alter table ums_member_level comment '会员等级表';
-
-/*==============================================================*/
-/* Table: ums_member_login_log */
-/*==============================================================*/
-create table ums_member_login_log
-(
- id bigint not null auto_increment,
- member_id bigint,
- create_time datetime,
- ip varchar(64),
- city varchar(64),
- login_type int(1) comment '登录类型:0->PC;1->android;2->ios;3->小程序',
- province varchar(64),
- primary key (id)
-);
-
-alter table ums_member_login_log comment '会员登录记录';
-
-/*==============================================================*/
-/* Table: ums_member_member_tag_relation */
-/*==============================================================*/
-create table ums_member_member_tag_relation
-(
- id bigint not null auto_increment,
- member_id bigint,
- tag_id bigint,
- primary key (id)
-);
-
-alter table ums_member_member_tag_relation comment '用户和标签关系表';
-
-/*==============================================================*/
-/* Table: ums_member_product_category_relation */
-/*==============================================================*/
-create table ums_member_product_category_relation
-(
- id bigint not null auto_increment,
- member_id bigint,
- product_category_id bigint,
- primary key (id)
-);
-
-alter table ums_member_product_category_relation comment '会员与产品分类关系表(用户喜欢的分类)';
-
-/*==============================================================*/
-/* Table: ums_member_receive_address */
-/*==============================================================*/
-create table ums_member_receive_address
-(
- id bigint not null auto_increment,
- member_id bigint,
- name varchar(100) comment '收货人名称',
- phone_number varchar(64),
- default_status int(1) comment '是否为默认',
- post_code varchar(100) comment '邮政编码',
- province varchar(100) comment '省份/直辖市',
- city varchar(100) comment '城市',
- region varchar(100) comment '区',
- detail_address varchar(128) comment '详细地址(街道)',
- primary key (id)
-);
-
-alter table ums_member_receive_address comment '会员收货地址表';
-
-/*==============================================================*/
-/* Table: ums_member_rule_setting */
-/*==============================================================*/
-create table ums_member_rule_setting
-(
- id bigint not null auto_increment,
- continue_sign_day int comment '连续签到天数',
- continue_sign_point int comment '连续签到赠送数量',
- consume_per_point decimal(10,2) comment '每消费多少元获取1个点',
- low_order_amount decimal(10,2) comment '最低获取点数的订单金额',
- max_point_per_order int comment '每笔订单最高获取点数',
- type int(1) comment '类型:0->积分规则;1->成长值规则',
- primary key (id)
-);
-
-alter table ums_member_rule_setting comment '会员积分成长规则表';
-
-/*==============================================================*/
-/* Table: ums_member_statistics_info */
-/*==============================================================*/
-create table ums_member_statistics_info
-(
- id bigint not null auto_increment,
- member_id bigint,
- consume_amount decimal(10,2) comment '累计消费金额',
- order_count int comment '订单数量',
- coupon_count int comment '优惠券数量',
- comment_count int comment '评价数',
- return_order_count int comment '退货数量',
- login_count int comment '登录次数',
- attend_count int comment '关注数量',
- fans_count int comment '粉丝数量',
- collect_product_count int,
- collect_subject_count int,
- collect_topic_count int,
- collect_comment_count int,
- invite_friend_count int,
- recent_order_time datetime comment '最后一次下订单时间',
- primary key (id)
-);
-
-alter table ums_member_statistics_info comment '会员统计信息';
-
-/*==============================================================*/
-/* Table: ums_member_tag */
-/*==============================================================*/
-create table ums_member_tag
-(
- id bigint not null auto_increment,
- name varchar(100),
- finish_order_count int comment '自动打标签完成订单数量',
- finish_order_amount decimal(10,2) comment '自动打标签完成订单金额',
- primary key (id)
-);
-
-alter table ums_member_tag comment '用户标签表';
-
-/*==============================================================*/
-/* Table: ums_member_task */
-/*==============================================================*/
-create table ums_member_task
-(
- id bigint not null auto_increment,
- name varchar(100),
- growth int comment '赠送成长值',
- intergration int comment '赠送积分',
- type int(1) comment '任务类型:0->新手任务;1->日常任务',
- primary key (id)
-);
-
-alter table ums_member_task comment '会员任务表';
-
-/*==============================================================*/
-/* Table: ums_menu */
-/*==============================================================*/
-create table ums_menu
-(
- id bigint not null auto_increment,
- parent_id bigint comment '父级ID',
- create_time datetime comment '创建时间',
- title varchar(100) comment '菜单名称',
- level int(4) comment '菜单级数',
- sort int(4) comment '菜单排序',
- name varchar(100) comment '前端名称',
- icon varchar(200) comment '前端图标',
- hidden int(1) comment '前端隐藏',
- primary key (id)
-);
-
-alter table ums_menu comment '后台菜单表';
-
-/*==============================================================*/
-/* Table: ums_permission */
-/*==============================================================*/
-create table ums_permission
-(
- id bigint not null auto_increment,
- pid bigint comment '父级权限id',
- name varchar(100) comment '名称',
- value varchar(200) comment '权限值',
- icon varchar(500) comment '图标',
- type int(1) comment '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',
- uri varchar(200) comment '前端资源路径',
- status int(1) comment '启用状态;0->禁用;1->启用',
- create_time datetime comment '创建时间',
- sort int comment '排序',
- primary key (id)
-);
-
-alter table ums_permission comment '后台用户权限表';
-
-/*==============================================================*/
-/* Table: ums_resource */
-/*==============================================================*/
-create table ums_resource
-(
- id bigint not null auto_increment,
- category_id bigint comment '资源分类ID',
- create_time datetime comment '创建时间',
- name varchar(200) comment '资源名称',
- url varchar(200) comment '资源URL',
- description varchar(500) comment '描述',
- primary key (id)
-);
-
-alter table ums_resource comment '后台资源表';
-
-/*==============================================================*/
-/* Table: ums_resource_category */
-/*==============================================================*/
-create table ums_resource_category
-(
- id bigint not null auto_increment,
- create_time datetime comment '创建时间',
- name varchar(200) comment '分类名称',
- sort int(4) comment '排序',
- primary key (id)
-);
-
-alter table ums_resource_category comment '资源分类表';
-
-/*==============================================================*/
-/* Table: ums_role */
-/*==============================================================*/
-create table ums_role
-(
- id bigint not null auto_increment,
- name varchar(100) comment '名称',
- description varchar(500) comment '描述',
- admin_count int comment '后台用户数量',
- create_time datetime comment '创建时间',
- status int(1) default 1 comment '启用状态:0->禁用;1->启用',
- sort int default 0,
- primary key (id)
-);
-
-alter table ums_role comment '后台用户角色表';
-
-/*==============================================================*/
-/* Table: ums_role_menu_relation */
-/*==============================================================*/
-create table ums_role_menu_relation
-(
- id bigint not null auto_increment,
- role_id bigint comment '角色ID',
- menu_id bigint comment '菜单ID',
- primary key (id)
-);
-
-alter table ums_role_menu_relation comment '后台角色菜单关系表';
-
-/*==============================================================*/
-/* Table: ums_role_permission_relation */
-/*==============================================================*/
-create table ums_role_permission_relation
-(
- id bigint not null auto_increment,
- role_id bigint,
- permission_id bigint,
- primary key (id)
-);
-
-alter table ums_role_permission_relation comment '后台用户角色和权限关系表';
-
-/*==============================================================*/
-/* Table: ums_role_resource_relation */
-/*==============================================================*/
-create table ums_role_resource_relation
-(
- id bigint not null auto_increment,
- role_id bigint comment '角色ID',
- resource_id bigint comment '资源ID',
- primary key (id)
-);
-
-alter table ums_role_resource_relation comment '后台角色资源关系表';
-
-alter table cms_help add constraint FK_Reference_32 foreign key (category_id)
- references cms_help_category (id) on delete restrict on update restrict;
-
-alter table cms_prefrence_area_product_relation add constraint FK_Reference_18 foreign key (prefrence_area_id)
- references cms_prefrence_area (id) on delete restrict on update restrict;
-
-alter table cms_prefrence_area_product_relation add constraint FK_Reference_19 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table cms_subject add constraint FK_Reference_28 foreign key (category_id)
- references cms_subject_category (id) on delete restrict on update restrict;
-
-alter table cms_subject_comment add constraint FK_Reference_29 foreign key (subject_id)
- references cms_subject (id) on delete restrict on update restrict;
-
-alter table cms_subject_product_relation add constraint FK_Reference_26 foreign key (subject_id)
- references cms_subject (id) on delete restrict on update restrict;
-
-alter table cms_subject_product_relation add constraint FK_Reference_27 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table cms_topic add constraint FK_Reference_31 foreign key (category_id)
- references cms_topic_category (id) on delete restrict on update restrict;
-
-alter table cms_topic_comment add constraint FK_Reference_30 foreign key (topic_id)
- references cms_topic (id) on delete restrict on update restrict;
-
-alter table oms_cart_item add constraint FK_Reference_65 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table oms_cart_item add constraint FK_Reference_66 foreign key (product_sku_id)
- references pms_sku_stock (id) on delete restrict on update restrict;
-
-alter table oms_cart_item add constraint FK_Reference_67 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table oms_order add constraint FK_Reference_57 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table oms_order add constraint FK_Reference_61 foreign key (coupon_id)
- references sms_coupon (id) on delete restrict on update restrict;
-
-alter table oms_order_item add constraint FK_Reference_58 foreign key (order_id)
- references oms_order (id) on delete restrict on update restrict;
-
-alter table oms_order_item add constraint FK_Reference_59 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table oms_order_operate_history add constraint FK_Reference_62 foreign key (order_id)
- references oms_order (id) on delete restrict on update restrict;
-
-alter table oms_order_return_apply add constraint FK_Reference_63 foreign key (order_id)
- references oms_order (id) on delete restrict on update restrict;
-
-alter table oms_order_return_apply add constraint FK_Reference_64 foreign key (company_address_id)
- references oms_company_address (id) on delete restrict on update restrict;
-
-alter table oms_order_return_apply add constraint FK_Reference_75 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_album_pic add constraint FK_Reference_25 foreign key (album_id)
- references pms_album (id) on delete restrict on update restrict;
-
-alter table pms_comment add constraint FK_Reference_23 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_comment_replay add constraint FK_Reference_24 foreign key (comment_id)
- references pms_comment (id) on delete restrict on update restrict;
-
-alter table pms_member_price add constraint FK_Reference_60 foreign key (member_level_id)
- references ums_member_level (id) on delete restrict on update restrict;
-
-alter table pms_member_price add constraint FK_Reference_9 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_product add constraint FK_Reference_1 foreign key (brand_id)
- references pms_brand (id) on delete restrict on update restrict;
-
-alter table pms_product add constraint FK_Reference_13 foreign key (product_attribute_category_id)
- references pms_product_attribute_category (id) on delete restrict on update restrict;
-
-alter table pms_product add constraint FK_Reference_5 foreign key (product_category_id)
- references pms_product_category (id) on delete restrict on update restrict;
-
-alter table pms_product add constraint FK_Reference_6 foreign key (feight_template_id)
- references pms_feight_template (id) on delete restrict on update restrict;
-
-alter table pms_product_attribute add constraint FK_Reference_12 foreign key (product_attribute_category_id)
- references pms_product_attribute_category (id) on delete restrict on update restrict;
-
-alter table pms_product_attribute_value add constraint FK_Reference_14 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_product_attribute_value add constraint FK_Reference_15 foreign key (product_attribute_id)
- references pms_product_attribute (id) on delete restrict on update restrict;
-
-alter table pms_product_category add constraint FK_Reference_20 foreign key (parent_id)
- references pms_product_category (id) on delete restrict on update restrict;
-
-alter table pms_product_category_attribute_relation add constraint FK_Reference_21 foreign key (product_category_id)
- references pms_product_category (id) on delete restrict on update restrict;
-
-alter table pms_product_category_attribute_relation add constraint FK_Reference_22 foreign key (product_attribute_id)
- references pms_product_attribute (id) on delete restrict on update restrict;
-
-alter table pms_product_full_reduction add constraint FK_Reference_11 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_product_ladder add constraint FK_Reference_10 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_product_operate_log add constraint FK_Reference_4 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_product_vertify_record add constraint FK_Reference_3 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table pms_sku_stock add constraint FK_Reference_2 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_coupon_history add constraint FK_Reference_37 foreign key (coupon_id)
- references sms_coupon (id) on delete restrict on update restrict;
-
-alter table sms_coupon_history add constraint FK_Reference_38 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table sms_coupon_history add constraint FK_Reference_76 foreign key (order_id)
- references oms_order (id) on delete restrict on update restrict;
-
-alter table sms_coupon_product_category_relation add constraint FK_Reference_35 foreign key (coupon_id)
- references sms_coupon (id) on delete restrict on update restrict;
-
-alter table sms_coupon_product_category_relation add constraint FK_Reference_36 foreign key (product_category_id)
- references pms_product_category (id) on delete restrict on update restrict;
-
-alter table sms_coupon_product_relation add constraint FK_Reference_33 foreign key (coupon_id)
- references sms_coupon (id) on delete restrict on update restrict;
-
-alter table sms_coupon_product_relation add constraint FK_Reference_34 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_flash_promotion_log add constraint FK_Reference_44 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table sms_flash_promotion_log add constraint FK_Reference_45 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_flash_promotion_product_relation add constraint FK_Reference_77 foreign key (flash_promotion_id)
- references sms_flash_promotion (id) on delete restrict on update restrict;
-
-alter table sms_flash_promotion_product_relation add constraint FK_Reference_78 foreign key (flash_promotion_session_id)
- references sms_flash_promotion_session (id) on delete restrict on update restrict;
-
-alter table sms_flash_promotion_product_relation add constraint FK_Reference_79 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_home_brand add constraint FK_Reference_39 foreign key (brand_id)
- references pms_brand (id) on delete restrict on update restrict;
-
-alter table sms_home_new_product add constraint FK_Reference_40 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_home_recommend_product add constraint FK_Reference_41 foreign key (product_id)
- references pms_product (id) on delete restrict on update restrict;
-
-alter table sms_home_recommend_subject add constraint FK_Reference_42 foreign key (subject_id)
- references cms_subject (id) on delete restrict on update restrict;
-
-alter table ums_admin_login_log add constraint FK_Reference_46 foreign key (admin_id)
- references ums_admin (id) on delete restrict on update restrict;
-
-alter table ums_admin_permission_relation add constraint FK_Reference_73 foreign key (admin_id)
- references ums_admin (id) on delete restrict on update restrict;
-
-alter table ums_admin_permission_relation add constraint FK_Reference_74 foreign key (permission_id)
- references ums_permission (id) on delete restrict on update restrict;
-
-alter table ums_admin_role_relation add constraint FK_Reference_69 foreign key (admin_id)
- references ums_admin (id) on delete restrict on update restrict;
-
-alter table ums_admin_role_relation add constraint FK_Reference_70 foreign key (role_id)
- references ums_role (id) on delete restrict on update restrict;
-
-alter table ums_growth_change_history add constraint FK_Reference_56 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_integration_change_history add constraint FK_Reference_55 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_member add constraint FK_Reference_47 foreign key (member_level_id)
- references ums_member_level (id) on delete restrict on update restrict;
-
-alter table ums_member_login_log add constraint FK_Reference_52 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_member_member_tag_relation add constraint FK_Reference_53 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_member_member_tag_relation add constraint FK_Reference_54 foreign key (tag_id)
- references ums_member_tag (id) on delete restrict on update restrict;
-
-alter table ums_member_product_category_relation add constraint FK_Reference_48 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_member_product_category_relation add constraint FK_Reference_49 foreign key (product_category_id)
- references pms_product_category (id) on delete restrict on update restrict;
-
-alter table ums_member_receive_address add constraint FK_Reference_51 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_member_statistics_info add constraint FK_Reference_50 foreign key (member_id)
- references ums_member (id) on delete restrict on update restrict;
-
-alter table ums_menu add constraint FK_Reference_80 foreign key (parent_id)
- references ums_menu (id) on delete restrict on update restrict;
-
-alter table ums_permission add constraint FK_Reference_68 foreign key (pid)
- references ums_permission (id) on delete restrict on update restrict;
-
-alter table ums_resource add constraint FK_Reference_85 foreign key (category_id)
- references ums_resource_category (id) on delete restrict on update restrict;
-
-alter table ums_role_menu_relation add constraint FK_Reference_81 foreign key (role_id)
- references ums_role (id) on delete restrict on update restrict;
-
-alter table ums_role_menu_relation add constraint FK_Reference_82 foreign key (menu_id)
- references ums_menu (id) on delete restrict on update restrict;
-
-alter table ums_role_permission_relation add constraint FK_Reference_71 foreign key (role_id)
- references ums_role (id) on delete restrict on update restrict;
-
-alter table ums_role_permission_relation add constraint FK_Reference_72 foreign key (permission_id)
- references ums_permission (id) on delete restrict on update restrict;
-
-alter table ums_role_resource_relation add constraint FK_Reference_83 foreign key (role_id)
- references ums_role (id) on delete restrict on update restrict;
-
-alter table ums_role_resource_relation add constraint FK_Reference_84 foreign key (resource_id)
- references ums_resource (id) on delete restrict on update restrict;
-
diff --git "a/document/navicat/mall\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/mall\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..933f3cde
--- /dev/null
+++ "b/document/navicat/mall\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,30513 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50719,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_help",
+ "comment": "帮助表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_help",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_help` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL,\n `icon` varchar(500) DEFAULT NULL,\n `title` varchar(100) DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `read_count` int(1) DEFAULT NULL,\n `content` text,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_32` (`category_id`),\n CONSTRAINT `FK_Reference_32` FOREIGN KEY (`category_id`) REFERENCES `cms_help_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='帮助表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "read_count",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "read_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_32",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_32",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_32",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_help_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_32"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_help_category",
+ "comment": "帮助分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_help_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_help_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `icon` varchar(500) DEFAULT NULL COMMENT '分类图标',\n `help_count` int(11) DEFAULT NULL COMMENT '专题数量',\n `show_status` int(2) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='帮助分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "help_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专题数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "help_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 2,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_member_report",
+ "comment": "用户举报表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 0,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_member_report",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_member_report` (\n `id` bigint(20) DEFAULT NULL,\n `report_type` int(1) DEFAULT NULL COMMENT '举报类型:0->商品评价;1->话题内容;2->用户评论',\n `report_member_name` varchar(100) DEFAULT NULL COMMENT '举报人',\n `create_time` datetime DEFAULT NULL,\n `report_object` varchar(100) DEFAULT NULL,\n `report_status` int(1) DEFAULT NULL COMMENT '举报状态:0->未处理;1->已处理',\n `handle_status` int(1) DEFAULT NULL COMMENT '处理结果:0->无效;1->有效;2->恶意',\n `note` varchar(200) DEFAULT NULL\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户举报表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "report_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "举报类型:0->商品评价;1->话题内容;2->用户评论",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "report_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "report_member_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "举报人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "report_member_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "report_object",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "report_object"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "report_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "举报状态:0->未处理;1->已处理",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "report_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理结果:0->无效;1->有效;2->恶意",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ }
+ ],
+ "indexes": [],
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_prefrence_area",
+ "comment": "优选专区",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_prefrence_area",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_prefrence_area` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(255) DEFAULT NULL,\n `sub_title` varchar(255) DEFAULT NULL,\n `pic` varbinary(500) DEFAULT NULL COMMENT '展示图片',\n `sort` int(11) DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优选专区'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sub_title",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sub_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varbinary",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "展示图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_prefrence_area_product_relation",
+ "comment": "优选专区和产品关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_prefrence_area_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_prefrence_area_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `prefrence_area_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_18` (`prefrence_area_id`),\n KEY `FK_Reference_19` (`product_id`),\n CONSTRAINT `FK_Reference_18` FOREIGN KEY (`prefrence_area_id`) REFERENCES `cms_prefrence_area` (`id`),\n CONSTRAINT `FK_Reference_19` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优选专区和产品关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "prefrence_area_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "prefrence_area_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_18",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_18",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "prefrence_area_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "prefrence_area_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_19",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_19",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_18",
+ "fields": [
+ "prefrence_area_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_prefrence_area",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_18"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_19",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_19"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_subject",
+ "comment": "专题表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_subject",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_subject` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL,\n `title` varchar(100) DEFAULT NULL,\n `pic` varchar(500) DEFAULT NULL COMMENT '专题主图',\n `product_count` int(11) DEFAULT NULL COMMENT '关联产品数量',\n `recommend_status` int(1) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `collect_count` int(11) DEFAULT NULL,\n `read_count` int(11) DEFAULT NULL,\n `comment_count` int(11) DEFAULT NULL,\n `album_pics` varchar(1000) DEFAULT NULL COMMENT '画册图片用逗号分割',\n `description` varchar(1000) DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',\n `content` text,\n `forward_count` int(11) DEFAULT NULL COMMENT '转发数',\n `category_name` varchar(200) DEFAULT NULL COMMENT '专题分类名称',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_28` (`category_id`),\n CONSTRAINT `FK_Reference_28` FOREIGN KEY (`category_id`) REFERENCES `cms_subject_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专题表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专题主图",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "关联产品数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "read_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "read_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "album_pics",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "画册图片用逗号分割",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "album_pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "显示状态:0->不显示;1->显示",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "forward_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "转发数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "forward_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专题分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_28",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_28",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_28",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_subject_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_28"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_subject_category",
+ "comment": "专题分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_subject_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_subject_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `icon` varchar(500) DEFAULT NULL COMMENT '分类图标',\n `subject_count` int(11) DEFAULT NULL COMMENT '专题数量',\n `show_status` int(2) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专题分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专题数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 2,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_subject_comment",
+ "comment": "专题评论表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_subject_comment",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_subject_comment` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `subject_id` bigint(20) DEFAULT NULL,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `member_icon` varchar(255) DEFAULT NULL,\n `content` varchar(1000) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_29` (`subject_id`),\n CONSTRAINT `FK_Reference_29` FOREIGN KEY (`subject_id`) REFERENCES `cms_subject` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专题评论表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_29",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_29",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "subject_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "subject_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_29",
+ "fields": [
+ "subject_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_subject",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_29"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_subject_product_relation",
+ "comment": "专题商品关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_subject_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_subject_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `subject_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_26` (`subject_id`),\n KEY `FK_Reference_27` (`product_id`),\n CONSTRAINT `FK_Reference_26` FOREIGN KEY (`subject_id`) REFERENCES `cms_subject` (`id`),\n CONSTRAINT `FK_Reference_27` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专题商品关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_26",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_26",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "subject_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "subject_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_27",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_27",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_26",
+ "fields": [
+ "subject_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_subject",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_26"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_27",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_27"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_topic",
+ "comment": "话题表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_topic",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_topic` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL,\n `name` varchar(255) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `start_time` datetime DEFAULT NULL,\n `end_time` datetime DEFAULT NULL,\n `attend_count` int(11) DEFAULT NULL COMMENT '参与人数',\n `attention_count` int(11) DEFAULT NULL COMMENT '关注人数',\n `read_count` int(11) DEFAULT NULL,\n `award_name` varchar(100) DEFAULT NULL COMMENT '奖品名称',\n `attend_type` varchar(100) DEFAULT NULL COMMENT '参与方式',\n `content` text COMMENT '话题内容',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_31` (`category_id`),\n CONSTRAINT `FK_Reference_31` FOREIGN KEY (`category_id`) REFERENCES `cms_topic_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='话题表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attend_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "参与人数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attend_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attention_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "关注人数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attention_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "read_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "read_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "award_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "奖品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "award_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attend_type",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "参与方式",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attend_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "话题内容",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_31",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_31",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_31",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_topic_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_31"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_topic_category",
+ "comment": "话题分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_topic_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_topic_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `icon` varchar(500) DEFAULT NULL COMMENT '分类图标',\n `subject_count` int(11) DEFAULT NULL COMMENT '专题数量',\n `show_status` int(2) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='话题分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专题数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 2,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "cms_topic_comment",
+ "comment": "专题评论表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "cms_topic_comment",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `cms_topic_comment` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `topic_id` bigint(20) DEFAULT NULL,\n `member_icon` varchar(255) DEFAULT NULL,\n `content` varchar(1000) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_30` (`topic_id`),\n CONSTRAINT `FK_Reference_30` FOREIGN KEY (`topic_id`) REFERENCES `cms_topic` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='专题评论表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "topic_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "topic_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_30",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_30",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "topic_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "topic_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_30",
+ "fields": [
+ "topic_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_topic",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_30"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_cart_item",
+ "comment": "购物车表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_cart_item",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_cart_item` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_sku_id` bigint(20) DEFAULT NULL,\n `member_id` bigint(20) DEFAULT NULL,\n `quantity` int(11) DEFAULT NULL COMMENT '购买数量',\n `price` decimal(10,2) DEFAULT NULL COMMENT '添加到购物车的价格',\n `product_pic` varchar(1000) DEFAULT NULL COMMENT '商品主图',\n `product_name` varchar(500) DEFAULT NULL COMMENT '商品名称',\n `product_brand` varchar(200) DEFAULT NULL,\n `product_sn` varchar(200) DEFAULT NULL,\n `product_sub_title` varchar(500) DEFAULT NULL COMMENT '商品副标题(卖点)',\n `product_sku_code` varchar(200) DEFAULT NULL COMMENT '商品sku条码',\n `member_nickname` varchar(500) DEFAULT NULL COMMENT '会员昵称',\n `create_date` datetime DEFAULT NULL COMMENT '创建时间',\n `modify_date` datetime DEFAULT NULL COMMENT '修改时间',\n `delete_status` int(1) DEFAULT '0' COMMENT '是否删除',\n `product_category_id` bigint(20) DEFAULT NULL COMMENT '商品的分类',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_65` (`product_id`),\n KEY `FK_Reference_66` (`product_sku_id`),\n KEY `FK_Reference_67` (`member_id`),\n CONSTRAINT `FK_Reference_65` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`),\n CONSTRAINT `FK_Reference_66` FOREIGN KEY (`product_sku_id`) REFERENCES `pms_sku_stock` (`id`),\n CONSTRAINT `FK_Reference_67` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='购物车表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "quantity",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "quantity"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "添加到购物车的价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品主图",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sub_title",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品副标题(卖点)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sub_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_code",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku条码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nickname",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_date",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "modify_date",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "修改时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "modify_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品的分类",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"4G\"}]",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_65",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_65",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_66",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_66",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_sku_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_sku_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_67",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_67",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_65",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_65"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_66",
+ "fields": [
+ "product_sku_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_sku_stock",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_66"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_67",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_67"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_company_address",
+ "comment": "公司收发货地址表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_company_address",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_company_address` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `address_name` varchar(200) DEFAULT NULL COMMENT '地址名称',\n `send_status` int(1) DEFAULT NULL COMMENT '默认发货地址:0->否;1->是',\n `receive_status` int(1) DEFAULT NULL COMMENT '是否默认收货地址:0->否;1->是',\n `name` varchar(64) DEFAULT NULL COMMENT '收发货人姓名',\n `phone` varchar(64) DEFAULT NULL COMMENT '收货人电话',\n `province` varchar(64) DEFAULT NULL COMMENT '省/直辖市',\n `city` varchar(64) DEFAULT NULL COMMENT '市',\n `region` varchar(64) DEFAULT NULL COMMENT '区',\n `detail_address` varchar(200) DEFAULT NULL COMMENT '详细地址',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公司收发货地址表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "address_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "地址名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "address_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "send_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "默认发货地址:0->否;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "send_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否默认收货地址:0->否;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收发货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "region",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_address",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_address"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order",
+ "comment": "订单表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '订单id',\n `member_id` bigint(20) NOT NULL,\n `coupon_id` bigint(20) DEFAULT NULL,\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `create_time` datetime DEFAULT NULL COMMENT '提交时间',\n `member_username` varchar(64) DEFAULT NULL COMMENT '用户帐号',\n `total_amount` decimal(10,2) DEFAULT NULL COMMENT '订单总金额',\n `pay_amount` decimal(10,2) DEFAULT NULL COMMENT '应付金额(实际支付金额)',\n `freight_amount` decimal(10,2) DEFAULT NULL COMMENT '运费金额',\n `promotion_amount` decimal(10,2) DEFAULT NULL COMMENT '促销优化金额(促销价、满减、阶梯价)',\n `integration_amount` decimal(10,2) DEFAULT NULL COMMENT '积分抵扣金额',\n `coupon_amount` decimal(10,2) DEFAULT NULL COMMENT '优惠券抵扣金额',\n `discount_amount` decimal(10,2) DEFAULT NULL COMMENT '管理员后台调整订单使用的折扣金额',\n `pay_type` int(1) DEFAULT NULL COMMENT '支付方式:0->未支付;1->支付宝;2->微信',\n `source_type` int(1) DEFAULT NULL COMMENT '订单来源:0->PC订单;1->app订单',\n `status` int(1) DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',\n `order_type` int(1) DEFAULT NULL COMMENT '订单类型:0->正常订单;1->秒杀订单',\n `delivery_company` varchar(64) DEFAULT NULL COMMENT '物流公司(配送方式)',\n `delivery_sn` varchar(64) DEFAULT NULL COMMENT '物流单号',\n `auto_confirm_day` int(11) DEFAULT NULL COMMENT '自动确认时间(天)',\n `integration` int(11) DEFAULT NULL COMMENT '可以获得的积分',\n `growth` int(11) DEFAULT NULL COMMENT '可以活动的成长值',\n `promotion_info` varchar(100) DEFAULT NULL COMMENT '活动信息',\n `bill_type` int(1) DEFAULT NULL COMMENT '发票类型:0->不开发票;1->电子发票;2->纸质发票',\n `bill_header` varchar(200) DEFAULT NULL COMMENT '发票抬头',\n `bill_content` varchar(200) DEFAULT NULL COMMENT '发票内容',\n `bill_receiver_phone` varchar(32) DEFAULT NULL COMMENT '收票人电话',\n `bill_receiver_email` varchar(64) DEFAULT NULL COMMENT '收票人邮箱',\n `receiver_name` varchar(100) NOT NULL COMMENT '收货人姓名',\n `receiver_phone` varchar(32) NOT NULL COMMENT '收货人电话',\n `receiver_post_code` varchar(32) DEFAULT NULL COMMENT '收货人邮编',\n `receiver_province` varchar(32) DEFAULT NULL COMMENT '省份/直辖市',\n `receiver_city` varchar(32) DEFAULT NULL COMMENT '城市',\n `receiver_region` varchar(32) DEFAULT NULL COMMENT '区',\n `receiver_detail_address` varchar(200) DEFAULT NULL COMMENT '详细地址',\n `note` varchar(500) DEFAULT NULL COMMENT '订单备注',\n `confirm_status` int(1) DEFAULT NULL COMMENT '确认收货状态:0->未确认;1->已确认',\n `delete_status` int(1) NOT NULL DEFAULT '0' COMMENT '删除状态:0->未删除;1->已删除',\n `use_integration` int(11) DEFAULT NULL COMMENT '下单时使用的积分',\n `payment_time` datetime DEFAULT NULL COMMENT '支付时间',\n `delivery_time` datetime DEFAULT NULL COMMENT '发货时间',\n `receive_time` datetime DEFAULT NULL COMMENT '确认收货时间',\n `comment_time` datetime DEFAULT NULL COMMENT '评价时间',\n `modify_time` datetime DEFAULT NULL COMMENT '修改时间',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_57` (`member_id`),\n KEY `FK_Reference_61` (`coupon_id`),\n CONSTRAINT `FK_Reference_57` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_61` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "提交时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户帐号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "total_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单总金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "total_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pay_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "应付金额(实际支付金额)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pay_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "freight_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "运费金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "freight_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销优化金额(促销价、满减、阶梯价)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分抵扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券抵扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "discount_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "管理员后台调整订单使用的折扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "discount_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pay_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "支付方式:0->未支付;1->支付宝;2->微信",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pay_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单来源:0->PC订单;1->app订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单类型:0->正常订单;1->秒杀订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_company",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "物流公司(配送方式)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_company"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "物流单号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "auto_confirm_day",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动确认时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "auto_confirm_day"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以获得的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以活动的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_info",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "活动信息",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_info"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票类型:0->不开发票;1->电子发票;2->纸质发票",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_header",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票抬头",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_header"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_content",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票内容",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_receiver_phone",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收票人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_receiver_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_receiver_email",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收票人邮箱",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_receiver_email"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_phone",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_post_code",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人邮编",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_post_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_province",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省份/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_city",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_region",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_detail_address",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_detail_address"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "confirm_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "确认收货状态:0->未确认;1->已确认",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "confirm_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "删除状态:0->未删除;1->已删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "下单时使用的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "payment_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "支付时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "payment_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "确认收货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "modify_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "修改时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "modify_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_57",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_57",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_61",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_61",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_57",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "OneAndOnlyOneRelationship",
+ "oldName": "FK_Reference_57"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_61",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_61"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_item",
+ "comment": "订单中所包含的商品",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_item",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_item` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `product_id` bigint(20) DEFAULT NULL,\n `product_pic` varchar(500) DEFAULT NULL,\n `product_name` varchar(200) DEFAULT NULL,\n `product_brand` varchar(200) DEFAULT NULL,\n `product_sn` varchar(64) DEFAULT NULL,\n `product_price` decimal(10,2) DEFAULT NULL COMMENT '销售价格',\n `product_quantity` int(11) DEFAULT NULL COMMENT '购买数量',\n `product_sku_id` bigint(20) DEFAULT NULL COMMENT '商品sku编号',\n `product_sku_code` varchar(50) DEFAULT NULL COMMENT '商品sku条码',\n `product_category_id` bigint(20) DEFAULT NULL COMMENT '商品分类id',\n `promotion_name` varchar(200) DEFAULT NULL COMMENT '商品促销名称',\n `promotion_amount` decimal(10,2) DEFAULT NULL COMMENT '商品促销分解金额',\n `coupon_amount` decimal(10,2) DEFAULT NULL COMMENT '优惠券优惠分解金额',\n `integration_amount` decimal(10,2) DEFAULT NULL COMMENT '积分优惠分解金额',\n `real_amount` decimal(10,2) DEFAULT NULL COMMENT '该商品经过优惠后的分解金额',\n `gift_integration` int(11) NOT NULL DEFAULT '0' COMMENT '商品赠送积分',\n `gift_growth` int(11) NOT NULL DEFAULT '0' COMMENT '商品赠送成长值',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_58` (`order_id`),\n KEY `FK_Reference_59` (`product_id`),\n CONSTRAINT `FK_Reference_58` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`),\n CONSTRAINT `FK_Reference_59` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单中所包含的商品'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销售价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_quantity",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_quantity"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_code",
+ "type": "varchar",
+ "length": 50,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku条码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品分类id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品促销名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品促销分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券优惠分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分优惠分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "real_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "该商品经过优惠后的分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "real_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品赠送积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品赠送成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_58",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_58",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_59",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_59",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_58",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_58"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_59",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_59"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_operate_history",
+ "comment": "订单操作历史记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_operate_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_operate_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人:用户;系统;后台管理员',\n `create_time` datetime DEFAULT NULL COMMENT '操作时间',\n `order_status` int(1) DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',\n `note` varchar(500) DEFAULT NULL COMMENT '备注',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_62` (`order_id`),\n CONSTRAINT `FK_Reference_62` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单操作历史记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人:用户;系统;后台管理员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_62",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_62",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_62",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_62"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_return_apply",
+ "comment": "订单退货申请",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_return_apply",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_return_apply` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `company_address_id` bigint(20) DEFAULT NULL COMMENT '收货地址表id',\n `product_id` bigint(20) DEFAULT NULL COMMENT '退货商品id',\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `create_time` datetime DEFAULT NULL COMMENT '申请时间',\n `member_username` varchar(64) DEFAULT NULL COMMENT '会员用户名',\n `return_amount` decimal(10,2) DEFAULT NULL COMMENT '退款金额',\n `return_name` varchar(100) DEFAULT NULL COMMENT '退货人姓名',\n `return_phone` varchar(100) DEFAULT NULL COMMENT '退货人电话',\n `status` int(1) DEFAULT NULL COMMENT '申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝',\n `handle_time` datetime DEFAULT NULL COMMENT '处理时间',\n `product_pic` varchar(500) DEFAULT NULL COMMENT '商品图片',\n `product_name` varchar(200) DEFAULT NULL COMMENT '商品名称',\n `product_brand` varchar(200) DEFAULT NULL COMMENT '商品品牌',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:颜色:红色;尺码:xl;',\n `product_count` int(11) DEFAULT NULL COMMENT '退货数量',\n `product_price` decimal(10,2) DEFAULT NULL COMMENT '商品单价',\n `product_real_price` decimal(10,2) DEFAULT NULL COMMENT '商品实际支付单价',\n `reason` varchar(200) DEFAULT NULL COMMENT '原因',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n `proof_pics` varchar(1000) DEFAULT NULL COMMENT '凭证图片,以逗号隔开',\n `handle_note` varchar(500) DEFAULT NULL COMMENT '处理备注',\n `handle_man` varchar(100) DEFAULT NULL COMMENT '处理人员',\n `receive_man` varchar(100) DEFAULT NULL COMMENT '收货人',\n `receive_time` datetime DEFAULT NULL COMMENT '收货时间',\n `receive_note` varchar(500) DEFAULT NULL COMMENT '收货备注',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_63` (`order_id`),\n KEY `FK_Reference_64` (`company_address_id`),\n KEY `FK_Reference_75` (`product_id`),\n CONSTRAINT `FK_Reference_63` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`),\n CONSTRAINT `FK_Reference_64` FOREIGN KEY (`company_address_id`) REFERENCES `oms_company_address` (`id`),\n CONSTRAINT `FK_Reference_75` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单退货申请'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "company_address_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货地址表id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "company_address_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货商品id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "申请时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退款金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_phone",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品品牌",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:颜色:红色;尺码:xl;",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品单价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_real_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品实际支付单价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_real_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "reason",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "原因",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "reason"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "proof_pics",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "凭证图片,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "proof_pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_note"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_63",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_63",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_64",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_64",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "company_address_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "company_address_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_75",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_75",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_63",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_63"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_64",
+ "fields": [
+ "company_address_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_company_address",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_64"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_75",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_75"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_return_reason",
+ "comment": "退货原因表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_return_reason",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_return_reason` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL COMMENT '退货类型',\n `sort` int(11) DEFAULT NULL,\n `status` int(1) DEFAULT NULL COMMENT '状态:0->不启用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '添加时间',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='退货原因表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货类型",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "状态:0->不启用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "添加时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_setting",
+ "comment": "订单设置表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `flash_order_overtime` int(11) DEFAULT NULL COMMENT '秒杀订单超时关闭时间(分)',\n `normal_order_overtime` int(11) DEFAULT NULL COMMENT '正常订单超时时间(分)',\n `confirm_overtime` int(11) DEFAULT NULL COMMENT '发货后自动确认收货时间(天)',\n `finish_overtime` int(11) DEFAULT NULL COMMENT '自动完成交易时间,不能申请售后(天)',\n `comment_overtime` int(11) DEFAULT NULL COMMENT '订单完成后自动好评时间(天)',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单设置表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_order_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "秒杀订单超时关闭时间(分)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_order_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "normal_order_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "正常订单超时时间(分)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "normal_order_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "confirm_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发货后自动确认收货时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "confirm_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动完成交易时间,不能申请售后(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单完成后自动好评时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_overtime"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_album",
+ "comment": "相册表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_album",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_album` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `cover_pic` varchar(1000) DEFAULT NULL,\n `pic_count` int(11) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n `description` varchar(1000) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='相册表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "cover_pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "cover_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_album_pic",
+ "comment": "画册图片表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_album_pic",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_album_pic` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `album_id` bigint(20) DEFAULT NULL,\n `pic` varchar(1000) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_25` (`album_id`),\n CONSTRAINT `FK_Reference_25` FOREIGN KEY (`album_id`) REFERENCES `pms_album` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='画册图片表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "album_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "album_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_25",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_25",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "album_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "album_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_25",
+ "fields": [
+ "album_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_album",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_25"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_brand",
+ "comment": "品牌表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_brand",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_brand` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `first_letter` varchar(8) DEFAULT NULL COMMENT '首字母',\n `sort` int(11) DEFAULT NULL,\n `factory_status` int(1) DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',\n `show_status` int(1) DEFAULT NULL,\n `product_count` int(11) DEFAULT NULL COMMENT '产品数量',\n `product_comment_count` int(11) DEFAULT NULL COMMENT '产品评论数量',\n `logo` varchar(255) DEFAULT NULL COMMENT '品牌logo',\n `big_pic` varchar(255) DEFAULT NULL COMMENT '专区大图',\n `brand_story` text COMMENT '品牌故事',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='品牌表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_letter",
+ "type": "varchar",
+ "length": 8,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首字母",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_letter"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "factory_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为品牌制造商:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "factory_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品评论数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "logo",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌logo",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "logo"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "big_pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专区大图",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "big_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_story",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌故事",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_story"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_comment",
+ "comment": "商品评价表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_comment",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_comment` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `product_name` varchar(255) DEFAULT NULL,\n `star` int(3) DEFAULT NULL COMMENT '评价星数:0->5',\n `member_ip` varchar(64) DEFAULT NULL COMMENT '评价的ip',\n `create_time` datetime DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n `product_attribute` varchar(255) DEFAULT NULL COMMENT '购买时的商品属性',\n `collect_couont` int(11) DEFAULT NULL,\n `read_count` int(11) DEFAULT NULL,\n `content` text,\n `pics` varchar(1000) DEFAULT NULL COMMENT '上传图片地址,以逗号隔开',\n `member_icon` varchar(255) DEFAULT NULL COMMENT '评论用户头像',\n `replay_count` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_23` (`product_id`),\n CONSTRAINT `FK_Reference_23` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品评价表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "star",
+ "type": "int",
+ "length": 3,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价星数:0->5",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "star"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价的ip",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买时的商品属性",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_couont",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_couont"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "read_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "read_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pics",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上传图片地址,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评论用户头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "replay_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "replay_count"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_23",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_23",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_23",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_23"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_comment_replay",
+ "comment": "产品评价回复表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_comment_replay",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_comment_replay` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `comment_id` bigint(20) DEFAULT NULL,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `member_icon` varchar(255) DEFAULT NULL,\n `content` varchar(1000) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `type` int(1) DEFAULT NULL COMMENT '评论人员类型;0->会员;1->管理员',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_24` (`comment_id`),\n CONSTRAINT `FK_Reference_24` FOREIGN KEY (`comment_id`) REFERENCES `pms_comment` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品评价回复表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评论人员类型;0->会员;1->管理员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_24",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_24",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "comment_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "comment_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_24",
+ "fields": [
+ "comment_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_comment",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_24"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_feight_template",
+ "comment": "运费模版",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_feight_template",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_feight_template` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `charge_type` int(1) DEFAULT NULL COMMENT '计费类型:0->按重量;1->按件数',\n `first_weight` decimal(10,2) DEFAULT NULL COMMENT '首重kg',\n `first_fee` decimal(10,2) DEFAULT NULL COMMENT '首费(元)',\n `continue_weight` decimal(10,2) DEFAULT NULL,\n `continme_fee` decimal(10,2) DEFAULT NULL,\n `dest` varchar(255) DEFAULT NULL COMMENT '目的地(省、市)',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='运费模版'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "charge_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "计费类型:0->按重量;1->按件数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "charge_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首重kg",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_fee",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首费(元)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_fee"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continme_fee",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continme_fee"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "dest",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "目的地(省、市)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "dest"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_member_price",
+ "comment": "商品会员价格表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_member_price",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_member_price` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `member_level_id` bigint(20) DEFAULT NULL,\n `member_price` decimal(10,2) DEFAULT NULL COMMENT '会员价格',\n `member_level_name` varchar(100) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_60` (`member_level_id`),\n KEY `FK_Reference_9` (`product_id`),\n CONSTRAINT `FK_Reference_60` FOREIGN KEY (`member_level_id`) REFERENCES `ums_member_level` (`id`),\n CONSTRAINT `FK_Reference_9` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品会员价格表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_60",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_60",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_level_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_level_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_9",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_9",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_60",
+ "fields": [
+ "member_level_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_level",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_60"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_9",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_9"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product",
+ "comment": "商品信息",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 65536,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `brand_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n `feight_template_id` bigint(20) DEFAULT NULL,\n `product_attribute_category_id` bigint(20) DEFAULT NULL,\n `name` varchar(64) NOT NULL,\n `pic` varchar(255) DEFAULT NULL,\n `product_sn` varchar(64) NOT NULL COMMENT '货号',\n `delete_status` int(1) DEFAULT NULL COMMENT '删除状态:0->未删除;1->已删除',\n `publish_status` int(1) DEFAULT NULL COMMENT '上架状态:0->下架;1->上架',\n `new_status` int(1) DEFAULT NULL COMMENT '新品状态:0->不是新品;1->新品',\n `recommand_status` int(1) DEFAULT NULL COMMENT '推荐状态;0->不推荐;1->推荐',\n `verify_status` int(1) DEFAULT NULL COMMENT '审核状态:0->未审核;1->审核通过',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n `sale` int(11) DEFAULT NULL COMMENT '销量',\n `price` decimal(10,2) DEFAULT NULL,\n `promotion_price` decimal(10,2) DEFAULT NULL COMMENT '促销价格',\n `gift_growth` int(11) DEFAULT '0' COMMENT '赠送的成长值',\n `gift_point` int(11) DEFAULT '0' COMMENT '赠送的积分',\n `use_point_limit` int(11) DEFAULT NULL COMMENT '限制使用的积分数',\n `sub_title` varchar(255) DEFAULT NULL COMMENT '副标题',\n `description` text COMMENT '商品描述',\n `original_price` decimal(10,2) DEFAULT NULL COMMENT '市场价',\n `stock` int(11) DEFAULT NULL COMMENT '库存',\n `low_stock` int(11) DEFAULT NULL COMMENT '库存预警值',\n `unit` varchar(16) DEFAULT NULL COMMENT '单位',\n `weight` decimal(10,2) DEFAULT NULL COMMENT '商品重量,默认为克',\n `preview_status` int(1) DEFAULT NULL COMMENT '是否为预告商品:0->不是;1->是',\n `service_ids` varchar(64) DEFAULT NULL COMMENT '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',\n `keywords` varchar(255) DEFAULT NULL,\n `note` varchar(255) DEFAULT NULL,\n `album_pics` varchar(255) DEFAULT NULL COMMENT '画册图片,连产品图片限制为5张,以逗号分割',\n `detail_title` varchar(255) DEFAULT NULL,\n `detail_desc` text,\n `detail_html` text COMMENT '产品详情网页内容',\n `detail_mobile_html` text COMMENT '移动端网页详情',\n `promotion_start_time` datetime DEFAULT NULL COMMENT '促销开始时间',\n `promotion_end_time` datetime DEFAULT NULL COMMENT '促销结束时间',\n `promotion_per_limit` int(11) DEFAULT NULL COMMENT '活动限购数量',\n `promotion_type` int(1) DEFAULT NULL COMMENT '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',\n `product_category_name` varchar(255) DEFAULT NULL COMMENT '产品分类名称',\n `brand_name` varchar(255) DEFAULT NULL COMMENT '品牌名称',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_1` (`brand_id`),\n KEY `FK_Reference_13` (`product_attribute_category_id`),\n KEY `FK_Reference_5` (`product_category_id`),\n KEY `FK_Reference_6` (`feight_template_id`),\n CONSTRAINT `FK_Reference_1` FOREIGN KEY (`brand_id`) REFERENCES `pms_brand` (`id`),\n CONSTRAINT `FK_Reference_13` FOREIGN KEY (`product_attribute_category_id`) REFERENCES `pms_product_attribute_category` (`id`),\n CONSTRAINT `FK_Reference_5` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`),\n CONSTRAINT `FK_Reference_6` FOREIGN KEY (`feight_template_id`) REFERENCES `pms_feight_template` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品信息'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "feight_template_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "feight_template_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "货号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "删除状态:0->未删除;1->已删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "publish_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上架状态:0->下架;1->上架",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "publish_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "new_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "新品状态:0->不是新品;1->新品",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "new_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommand_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "推荐状态;0->不推荐;1->推荐",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommand_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "verify_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核状态:0->未审核;1->审核通过",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "verify_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限制使用的积分数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sub_title",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "副标题",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sub_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "original_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "市场价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "original_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存预警值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "unit",
+ "type": "varchar",
+ "length": 16,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "单位",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品重量,默认为克",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "preview_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为预告商品:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "preview_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "service_ids",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "service_ids"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "keywords",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "keywords"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "album_pics",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "画册图片,连产品图片限制为5张,以逗号分割",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "album_pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_title",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_desc",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_desc"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_html",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品详情网页内容",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_html"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_mobile_html",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "移动端网页详情",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_mobile_html"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销开始时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销结束时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_per_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "活动限购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_per_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_1",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_1",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "brand_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "brand_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_13",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_13",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_5",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_5",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_6",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_6",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "feight_template_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "feight_template_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_1",
+ "fields": [
+ "brand_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_brand",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_1"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_13",
+ "fields": [
+ "product_attribute_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_13"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_5",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_5"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_6",
+ "fields": [
+ "feight_template_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_feight_template",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_6"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute",
+ "comment": "商品属性参数表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_attribute_category_id` bigint(20) DEFAULT NULL,\n `name` varchar(64) DEFAULT NULL,\n `select_type` int(1) DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;',\n `input_type` int(1) DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',\n `input_list` varchar(255) DEFAULT NULL COMMENT '可选值列表,以逗号隔开',\n `sort` int(11) DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',\n `filter_type` int(1) DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',\n `search_type` int(1) DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',\n `related_status` int(1) DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',\n `hand_add_status` int(1) DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',\n `type` int(1) DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_12` (`product_attribute_category_id`),\n CONSTRAINT `FK_Reference_12` FOREIGN KEY (`product_attribute_category_id`) REFERENCES `pms_product_attribute_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品属性参数表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "select_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "select_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "input_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性录入方式:0->手工录入;1->从列表中选取",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "input_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "input_list",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可选值列表,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "input_list"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序字段:最高的可以单独上传图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "filter_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类筛选样式:1->普通;1->颜色",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "filter_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "search_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "检索类型;0->不需要进行检索;1->关键字检索;2->范围检索",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "search_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "related_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "相同属性产品是否关联;0->不关联;1->关联",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "related_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "hand_add_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否支持手动新增;0->不支持;1->支持",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "hand_add_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性的类型;0->规格;1->参数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_12",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_12",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_12",
+ "fields": [
+ "product_attribute_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_12"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute_category",
+ "comment": "产品属性分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `attribute_count` int(11) DEFAULT NULL COMMENT '属性数量',\n `param_count` int(11) DEFAULT NULL COMMENT '参数数量',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品属性分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attribute_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attribute_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "param_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "参数数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "param_count"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute_value",
+ "comment": "存储产品参数信息的表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute_value",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute_value` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_attribute_id` bigint(20) DEFAULT NULL,\n `value` varchar(64) DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_14` (`product_id`),\n KEY `FK_Reference_15` (`product_attribute_id`),\n CONSTRAINT `FK_Reference_14` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`),\n CONSTRAINT `FK_Reference_15` FOREIGN KEY (`product_attribute_id`) REFERENCES `pms_product_attribute` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='存储产品参数信息的表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "value",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "value"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_14",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_14",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_15",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_15",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_14",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_14"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_15",
+ "fields": [
+ "product_attribute_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_15"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_category",
+ "comment": "产品分类",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `parent_id` bigint(20) DEFAULT NULL COMMENT '上机分类的编号:0表示一级分类',\n `name` varchar(64) DEFAULT NULL,\n `level` int(1) DEFAULT NULL COMMENT '分类级别:0->1级;1->2级',\n `product_count` int(11) DEFAULT NULL,\n `product_unit` varchar(64) DEFAULT NULL,\n `nav_status` int(1) DEFAULT NULL COMMENT '是否显示在导航栏:0->不显示;1->显示',\n `show_status` int(1) DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',\n `sort` int(11) DEFAULT NULL,\n `icon` varchar(255) DEFAULT NULL COMMENT '图标',\n `keywords` varchar(255) DEFAULT NULL,\n `description` text COMMENT '描述',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_20` (`parent_id`),\n CONSTRAINT `FK_Reference_20` FOREIGN KEY (`parent_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品分类'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上机分类的编号:0表示一级分类",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "level",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类级别:0->1级;1->2级",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "level"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_unit",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nav_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否显示在导航栏:0->不显示;1->显示",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nav_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "显示状态:0->不显示;1->显示",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "keywords",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "keywords"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_20",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_20",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "parent_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "parent_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_20",
+ "fields": [
+ "parent_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_20"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_category_attribute_relation",
+ "comment": "产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_category_attribute_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_category_attribute_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_category_id` bigint(20) DEFAULT NULL,\n `product_attribute_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_21` (`product_category_id`),\n KEY `FK_Reference_22` (`product_attribute_id`),\n CONSTRAINT `FK_Reference_21` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`),\n CONSTRAINT `FK_Reference_22` FOREIGN KEY (`product_attribute_id`) REFERENCES `pms_product_attribute` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_21",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_21",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_22",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_22",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_21",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_21"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_22",
+ "fields": [
+ "product_attribute_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_22"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_full_reduction",
+ "comment": "产品满减表(只针对同商品)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_full_reduction",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_full_reduction` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `full_price` decimal(10,2) DEFAULT NULL,\n `reduce_price` decimal(10,2) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_11` (`product_id`),\n CONSTRAINT `FK_Reference_11` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品满减表(只针对同商品)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "full_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "full_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "reduce_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "reduce_price"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_11",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_11",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_11",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_11"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_ladder",
+ "comment": "产品阶梯价格表(只针对同商品)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_ladder",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_ladder` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `count` int(11) DEFAULT NULL COMMENT '满足的商品数量',\n `discount` decimal(10,2) DEFAULT NULL COMMENT '折扣',\n `price` decimal(10,2) DEFAULT NULL COMMENT '折后价格',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_10` (`product_id`),\n CONSTRAINT `FK_Reference_10` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品阶梯价格表(只针对同商品)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "满足的商品数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "discount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "折扣",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "discount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "折后价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_10",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_10",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_10",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_10"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_operate_log",
+ "comment": "",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_operate_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:55",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_operate_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `price_old` decimal(10,2) DEFAULT NULL,\n `price_new` decimal(10,2) DEFAULT NULL,\n `sale_price_old` decimal(10,2) DEFAULT NULL,\n `sale_price_new` decimal(10,2) DEFAULT NULL,\n `gift_point_old` int(11) DEFAULT NULL COMMENT '赠送的积分',\n `gift_point_new` int(11) DEFAULT NULL,\n `use_point_limit_old` int(11) DEFAULT NULL,\n `use_point_limit_new` int(11) DEFAULT NULL,\n `operate_man` varchar(64) DEFAULT NULL COMMENT '操作人',\n `create_time` datetime DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_4` (`product_id`),\n CONSTRAINT `FK_Reference_4` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price_old",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price_new",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale_price_old",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale_price_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale_price_new",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale_price_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point_old",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point_new",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit_old",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit_new",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_4",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_4",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_4",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_4"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_vertify_record",
+ "comment": "商品审核记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_vertify_record",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_vertify_record` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `vertify_man` varchar(64) DEFAULT NULL COMMENT '审核人',\n `status` int(1) DEFAULT NULL COMMENT '审核后的状态:0->未通过;2->已通过',\n `detail` varchar(255) DEFAULT NULL COMMENT '反馈详情',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_3` (`product_id`),\n CONSTRAINT `FK_Reference_3` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品审核记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "vertify_man",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "vertify_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核后的状态:0->未通过;2->已通过",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "反馈详情",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_3",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_3",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_3",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_3"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_sku_stock",
+ "comment": "sku的库存",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_sku_stock",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_sku_stock` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `sku_code` varchar(64) NOT NULL COMMENT 'sku编码',\n `price` decimal(10,2) DEFAULT NULL,\n `stock` int(11) DEFAULT '0' COMMENT '库存',\n `low_stock` int(11) DEFAULT NULL COMMENT '预警库存',\n `pic` varchar(255) DEFAULT NULL COMMENT '展示图片',\n `sale` int(11) DEFAULT NULL COMMENT '销量',\n `promotion_price` decimal(10,2) DEFAULT NULL COMMENT '单品促销价格',\n `lock_stock` int(11) DEFAULT '0' COMMENT '锁定库存',\n `sp_data` varchar(500) DEFAULT NULL COMMENT '商品销售属性,json格式',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_2` (`product_id`),\n CONSTRAINT `FK_Reference_2` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='sku的库存'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sku_code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "sku编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "预警库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "展示图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "单品促销价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "lock_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "锁定库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "lock_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sp_data",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性,json格式",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sp_data"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_2",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_2",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_2",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_2"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon",
+ "comment": "优惠卷表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `type` int(1) DEFAULT NULL COMMENT '优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券',\n `name` varchar(100) DEFAULT NULL,\n `platform` int(1) DEFAULT NULL COMMENT '使用平台:0->全部;1->移动;2->PC',\n `count` int(11) DEFAULT NULL COMMENT '数量',\n `amount` decimal(10,2) DEFAULT NULL COMMENT '金额',\n `per_limit` int(11) DEFAULT NULL COMMENT '每人限领张数',\n `min_point` decimal(10,2) DEFAULT NULL COMMENT '使用门槛;0表示无门槛',\n `start_time` datetime DEFAULT NULL,\n `end_time` datetime DEFAULT NULL,\n `use_type` int(1) DEFAULT NULL COMMENT '使用类型:0->全场通用;1->指定分类;2->指定商品',\n `note` varchar(200) DEFAULT NULL COMMENT '备注',\n `publish_count` int(11) DEFAULT NULL COMMENT '发行数量',\n `use_count` int(11) DEFAULT NULL COMMENT '已使用数量',\n `receive_count` int(11) DEFAULT NULL COMMENT '领取数量',\n `enable_time` datetime DEFAULT NULL COMMENT '可以领取的日期',\n `code` varchar(64) DEFAULT NULL COMMENT '优惠码',\n `member_level` int(1) DEFAULT NULL COMMENT '可领取的会员类型:0->无限时',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠卷表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "platform",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用平台:0->全部;1->移动;2->PC",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "platform"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "per_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每人限领张数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "per_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "min_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用门槛;0表示无门槛",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "min_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用类型:0->全场通用;1->指定分类;2->指定商品",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "publish_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发行数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "publish_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "已使用数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "领取数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "enable_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以领取的日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "enable_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可领取的会员类型:0->无限时",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_history",
+ "comment": "优惠券使用、领取历史表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `member_id` bigint(20) DEFAULT NULL,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `coupon_code` varchar(64) DEFAULT NULL,\n `member_nickname` varchar(64) DEFAULT NULL COMMENT '领取人昵称',\n `get_type` int(1) DEFAULT NULL COMMENT '获取类型:0->后台赠送;1->主动获取',\n `create_time` datetime DEFAULT NULL,\n `use_status` int(1) DEFAULT NULL COMMENT '使用状态:0->未使用;1->已使用;2->已过期',\n `use_time` datetime DEFAULT NULL COMMENT '使用时间',\n `order_sn` varchar(100) DEFAULT NULL COMMENT '订单号码',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_37` (`coupon_id`),\n KEY `FK_Reference_38` (`member_id`),\n KEY `FK_Reference_76` (`order_id`),\n CONSTRAINT `FK_Reference_37` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_38` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_76` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券使用、领取历史表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nickname",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "领取人昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "get_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "获取类型:0->后台赠送;1->主动获取",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "get_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用状态:0->未使用;1->已使用;2->已过期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单号码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_37",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_37",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_38",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_38",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_76",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_76",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_37",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_37"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_38",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_38"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_76",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_76"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_product_category_relation",
+ "comment": "优惠券和产品分类关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_product_category_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_product_category_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n `product_category_name` varchar(200) DEFAULT NULL COMMENT '产品分类名称',\n `parent_category_name` varchar(200) DEFAULT NULL COMMENT '父分类名称',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_35` (`coupon_id`),\n KEY `FK_Reference_36` (`product_category_id`),\n CONSTRAINT `FK_Reference_35` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_36` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券和产品分类关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_category_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_category_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_35",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_35",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_36",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_36",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_35",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_35"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_36",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_36"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_product_relation",
+ "comment": "优惠券和产品的关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(500) DEFAULT NULL COMMENT '商品名称',\n `product_sn` varchar(200) DEFAULT NULL COMMENT '商品编码',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_33` (`coupon_id`),\n KEY `FK_Reference_34` (`product_id`),\n CONSTRAINT `FK_Reference_33` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_34` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券和产品的关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_33",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_33",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_34",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_34",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_33",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_33"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_34",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_34"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion",
+ "comment": "限时购表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `title` varchar(200) DEFAULT NULL,\n `start_date` date DEFAULT NULL COMMENT '开始日期',\n `end_date` date DEFAULT NULL COMMENT '结束日期',\n `status` int(1) DEFAULT NULL COMMENT '上下线状态',\n `create_time` datetime DEFAULT NULL COMMENT '秒杀时间段名称',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_date",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "开始日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_date",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "结束日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上下线状态",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "秒杀时间段名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_log",
+ "comment": "限时购通知记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_log` (\n `id` int(11) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n `member_phone` varchar(64) DEFAULT NULL,\n `product_name` varchar(100) DEFAULT NULL,\n `subscribe_time` datetime DEFAULT NULL COMMENT '会员订阅时间',\n `send_time` datetime DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_44` (`member_id`),\n KEY `FK_Reference_45` (`product_id`),\n CONSTRAINT `FK_Reference_44` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_45` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购通知记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subscribe_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员订阅时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subscribe_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "send_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "send_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_44",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_44",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_45",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_45",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_44",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_44"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_45",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_45"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_product_relation",
+ "comment": "商品限时购与商品关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n `flash_promotion_id` bigint(20) DEFAULT NULL,\n `flash_promotion_session_id` bigint(20) DEFAULT NULL COMMENT '编号',\n `product_id` bigint(20) DEFAULT NULL,\n `flash_promotion_price` decimal(10,2) DEFAULT NULL COMMENT '限时购价格',\n `flash_promotion_count` int(11) DEFAULT NULL COMMENT '限时购数量',\n `flash_promotion_limit` int(11) DEFAULT NULL COMMENT '每人限购数量',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_77` (`flash_promotion_id`),\n KEY `FK_Reference_78` (`flash_promotion_session_id`),\n KEY `FK_Reference_79` (`product_id`),\n CONSTRAINT `FK_Reference_77` FOREIGN KEY (`flash_promotion_id`) REFERENCES `sms_flash_promotion` (`id`),\n CONSTRAINT `FK_Reference_78` FOREIGN KEY (`flash_promotion_session_id`) REFERENCES `sms_flash_promotion_session` (`id`),\n CONSTRAINT `FK_Reference_79` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品限时购与商品关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_session_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_session_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限时购价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限时购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每人限购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_77",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_77",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "flash_promotion_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "flash_promotion_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_78",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_78",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "flash_promotion_session_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "flash_promotion_session_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_79",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_79",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_77",
+ "fields": [
+ "flash_promotion_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_flash_promotion",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_77"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_78",
+ "fields": [
+ "flash_promotion_session_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_flash_promotion_session",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_78"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_79",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_79"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_session",
+ "comment": "限时购场次表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_session",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_session` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n `name` varchar(200) DEFAULT NULL COMMENT '场次名称',\n `start_time` time DEFAULT NULL COMMENT '每日开始时间',\n `end_time` time DEFAULT NULL COMMENT '每日结束时间',\n `status` int(1) DEFAULT NULL COMMENT '启用状态:0->不启用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购场次表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "场次名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "time",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每日开始时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "time",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每日结束时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态:0->不启用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_advertise",
+ "comment": "首页轮播广告表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_advertise",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_advertise` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `type` int(1) DEFAULT NULL COMMENT '轮播位置:0->PC首页轮播;1->app首页轮播',\n `pic` varchar(500) DEFAULT NULL,\n `start_time` datetime DEFAULT NULL,\n `end_time` datetime DEFAULT NULL,\n `status` int(1) DEFAULT NULL COMMENT '上下线状态:0->下线;1->上线',\n `click_count` int(11) DEFAULT NULL COMMENT '点击数',\n `order_count` int(11) DEFAULT NULL COMMENT '下单数',\n `url` varchar(500) DEFAULT NULL COMMENT '链接地址',\n `note` varchar(500) DEFAULT NULL COMMENT '备注',\n `sort` int(11) DEFAULT '0' COMMENT '排序',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页轮播广告表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "轮播位置:0->PC首页轮播;1->app首页轮播",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上下线状态:0->下线;1->上线",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "click_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "点击数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "click_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "下单数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "url",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "链接地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "url"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_brand",
+ "comment": "首页推荐品牌表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_brand",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_brand` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `brand_id` bigint(20) DEFAULT NULL,\n `brand_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_39` (`brand_id`),\n CONSTRAINT `FK_Reference_39` FOREIGN KEY (`brand_id`) REFERENCES `pms_brand` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页推荐品牌表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_39",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_39",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "brand_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "brand_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_39",
+ "fields": [
+ "brand_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_brand",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_39"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_new_product",
+ "comment": "新鲜好物表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_new_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_new_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_40` (`product_id`),\n CONSTRAINT `FK_Reference_40` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='新鲜好物表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_40",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_40",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_40",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_40"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_recommend_product",
+ "comment": "人气推荐商品表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_recommend_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_recommend_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_41` (`product_id`),\n CONSTRAINT `FK_Reference_41` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='人气推荐商品表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_41",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_41",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_41",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_41"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_recommend_subject",
+ "comment": "首页推荐专题表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_recommend_subject",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_recommend_subject` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `subject_id` bigint(20) DEFAULT NULL,\n `subject_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_42` (`subject_id`),\n CONSTRAINT `FK_Reference_42` FOREIGN KEY (`subject_id`) REFERENCES `cms_subject` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页推荐专题表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_42",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_42",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "subject_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "subject_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_42",
+ "fields": [
+ "subject_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_subject",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_42"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin",
+ "comment": "后台用户表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `username` varchar(64) DEFAULT NULL COMMENT '用户名',\n `password` varchar(64) DEFAULT NULL COMMENT '密码',\n `icon` varchar(500) DEFAULT NULL COMMENT '头像',\n `email` varchar(100) DEFAULT NULL COMMENT '邮箱',\n `nick_name` varchar(200) DEFAULT NULL COMMENT '昵称',\n `note` varchar(500) DEFAULT NULL COMMENT '备注信息',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `login_time` datetime DEFAULT NULL COMMENT '最后登录时间',\n `status` int(1) DEFAULT '1' COMMENT '帐号启用状态:0->禁用;1->启用',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "password",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "密码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "password"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "email",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "邮箱",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "email"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nick_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注信息",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最后登录时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "帐号启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_login_log",
+ "comment": "后台用户登录日志表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_login_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_login_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `ip` varchar(64) DEFAULT NULL,\n `address` varchar(100) DEFAULT NULL,\n `user_agent` varchar(100) DEFAULT NULL COMMENT '浏览器登录类型',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_46` (`admin_id`),\n CONSTRAINT `FK_Reference_46` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户登录日志表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "address",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "address"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "user_agent",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "浏览器登录类型",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "user_agent"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_46",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_46",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_46",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_46"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_permission_relation",
+ "comment": "后台用户和权限关系表(除角色中定义的权限以外的加减权限)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n `type` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_73` (`admin_id`),\n KEY `FK_Reference_74` (`permission_id`),\n CONSTRAINT `FK_Reference_73` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_74` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和权限关系表(除角色中定义的权限以外的加减权限)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_73",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_73",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_74",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_74",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_73",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_73"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_74",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_74"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_role_relation",
+ "comment": "后台用户和角色关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_role_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_role_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `role_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_69` (`admin_id`),\n KEY `FK_Reference_70` (`role_id`),\n CONSTRAINT `FK_Reference_69` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_70` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和角色关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_69",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_69",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_70",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_70",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_69",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_69"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_70",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_70"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_growth_change_history",
+ "comment": "成长值变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_growth_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_growth_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_56` (`member_id`),\n CONSTRAINT `FK_Reference_56` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='成长值变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_56",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_56",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_56",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_56"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_change_history",
+ "comment": "积分变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_55` (`member_id`),\n CONSTRAINT `FK_Reference_55` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_55",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_55",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_55",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_55"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_consume_setting",
+ "comment": "积分消费设置",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_consume_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_consume_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `deduction_per_amount` int(11) DEFAULT NULL COMMENT '每一元需要抵扣的积分数量',\n `max_percent_per_order` int(11) DEFAULT NULL COMMENT '每笔订单最高抵用百分比',\n `use_unit` int(11) DEFAULT NULL COMMENT '每次使用积分最小单位100',\n `coupon_status` int(1) DEFAULT NULL COMMENT '是否可以和优惠券同用;0->不可以;1->可以',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分消费设置'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "deduction_per_amount",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每一元需要抵扣的积分数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "deduction_per_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "max_percent_per_order",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每笔订单最高抵用百分比",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "max_percent_per_order"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_unit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每次使用积分最小单位100",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否可以和优惠券同用;0->不可以;1->可以",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member",
+ "comment": "会员表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_level_id` bigint(20) DEFAULT NULL,\n `username` varchar(64) DEFAULT NULL COMMENT '用户名',\n `password` varchar(64) DEFAULT NULL COMMENT '密码',\n `nickname` varchar(64) DEFAULT NULL COMMENT '昵称',\n `phone` varchar(64) DEFAULT NULL COMMENT '手机号码',\n `status` int(1) DEFAULT NULL COMMENT '帐号启用状态:0->禁用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '注册时间',\n `icon` varchar(500) DEFAULT NULL COMMENT '头像',\n `gender` int(1) DEFAULT NULL COMMENT '性别:0->未知;1->男;2->女',\n `birthday` date DEFAULT NULL COMMENT '生日',\n `city` varchar(64) DEFAULT NULL COMMENT '所做城市',\n `job` varchar(100) DEFAULT NULL COMMENT '职业',\n `personalized_signature` varchar(200) DEFAULT NULL COMMENT '个性签名',\n `source_type` int(1) DEFAULT NULL COMMENT '用户来源',\n `integration` int(11) DEFAULT NULL COMMENT '积分',\n `growth` int(11) DEFAULT NULL COMMENT '成长值',\n `luckey_count` int(11) DEFAULT NULL COMMENT '剩余抽奖次数',\n `history_integration` int(11) DEFAULT NULL COMMENT '历史积分数量',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_47` (`member_level_id`),\n CONSTRAINT `FK_Reference_47` FOREIGN KEY (`member_level_id`) REFERENCES `ums_member_level` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "password",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "密码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "password"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nickname",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "手机号码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "帐号启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "注册时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gender",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "性别:0->未知;1->男;2->女",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gender"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "birthday",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "生日",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "birthday"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "所做城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "job",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "职业",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "job"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "personalized_signature",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "个性签名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "personalized_signature"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户来源",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "luckey_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "剩余抽奖次数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "luckey_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "history_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "历史积分数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "history_integration"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_47",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_47",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_level_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_level_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_47",
+ "fields": [
+ "member_level_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_level",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_47"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_level",
+ "comment": "会员等级表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_level",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_level` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `growth_point` int(11) DEFAULT NULL,\n `default_status` int(1) DEFAULT NULL COMMENT '是否为默认等级:0->不是;1->是',\n `free_freight_point` decimal(10,2) DEFAULT NULL COMMENT '免运费标准',\n `comment_growth_point` int(11) DEFAULT NULL COMMENT '每次评价获取的成长值',\n `priviledge_free_freight` int(1) DEFAULT NULL COMMENT '是否有免邮特权',\n `priviledge_sign_in` int(1) DEFAULT NULL COMMENT '是否有签到特权',\n `priviledge_comment` int(1) DEFAULT NULL COMMENT '是否有评论获奖励特权',\n `priviledge_promotion` int(1) DEFAULT NULL COMMENT '是否有专享活动特权',\n `priviledge_member_price` int(1) DEFAULT NULL COMMENT '是否有会员价格特权',\n `priviledge_birthday` int(1) DEFAULT NULL COMMENT '是否有生日特权',\n `note` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员等级表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "default_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为默认等级:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "default_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "free_freight_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "免运费标准",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "free_freight_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_growth_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每次评价获取的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_growth_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_free_freight",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有免邮特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_free_freight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_sign_in",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有签到特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_sign_in"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_comment",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有评论获奖励特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_comment"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_promotion",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有专享活动特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_promotion"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_member_price",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有会员价格特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_member_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_birthday",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有生日特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_birthday"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_login_log",
+ "comment": "会员登录记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_login_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_login_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `ip` varchar(64) DEFAULT NULL,\n `city` varchar(64) DEFAULT NULL,\n `login_type` int(1) DEFAULT NULL COMMENT '登录类型:0->PC;1->android;2->ios;3->小程序',\n `province` varchar(64) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_52` (`member_id`),\n CONSTRAINT `FK_Reference_52` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员登录记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "登录类型:0->PC;1->android;2->ios;3->小程序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_52",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_52",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_52",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_52"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_member_tag_relation",
+ "comment": "用户和标签关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_member_tag_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_member_tag_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `tag_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_53` (`member_id`),\n KEY `FK_Reference_54` (`tag_id`),\n CONSTRAINT `FK_Reference_53` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_54` FOREIGN KEY (`tag_id`) REFERENCES `ums_member_tag` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户和标签关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "tag_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "tag_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_53",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_53",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_54",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_54",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "tag_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "tag_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_53",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_53"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_54",
+ "fields": [
+ "tag_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_tag",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_54"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_product_category_relation",
+ "comment": "会员与产品分类关系表(用户喜欢的分类)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_product_category_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_product_category_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_48` (`member_id`),\n KEY `FK_Reference_49` (`product_category_id`),\n CONSTRAINT `FK_Reference_48` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_49` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员与产品分类关系表(用户喜欢的分类)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_48",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_48",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_49",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_49",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_48",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_48"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_49",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_49"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_receive_address",
+ "comment": "会员收货地址表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_receive_address",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_receive_address` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `name` varchar(100) DEFAULT NULL COMMENT '收货人名称',\n `phone_number` varchar(64) DEFAULT NULL,\n `default_status` int(1) DEFAULT NULL COMMENT '是否为默认',\n `post_code` varchar(100) DEFAULT NULL COMMENT '邮政编码',\n `province` varchar(100) DEFAULT NULL COMMENT '省份/直辖市',\n `city` varchar(100) DEFAULT NULL COMMENT '城市',\n `region` varchar(100) DEFAULT NULL COMMENT '区',\n `detail_address` varchar(128) DEFAULT NULL COMMENT '详细地址(街道)',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_51` (`member_id`),\n CONSTRAINT `FK_Reference_51` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员收货地址表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone_number",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone_number"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "default_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为默认",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "default_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "post_code",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "邮政编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "post_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省份/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "region",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_address",
+ "type": "varchar",
+ "length": 128,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址(街道)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_address"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_51",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_51",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_51",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_51"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_rule_setting",
+ "comment": "会员积分成长规则表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_rule_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_rule_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `continue_sign_day` int(11) DEFAULT NULL COMMENT '连续签到天数',\n `continue_sign_point` int(11) DEFAULT NULL COMMENT '连续签到赠送数量',\n `consume_per_point` decimal(10,2) DEFAULT NULL COMMENT '每消费多少元获取1个点',\n `low_order_amount` decimal(10,2) DEFAULT NULL COMMENT '最低获取点数的订单金额',\n `max_point_per_order` int(11) DEFAULT NULL COMMENT '每笔订单最高获取点数',\n `type` int(1) DEFAULT NULL COMMENT '类型:0->积分规则;1->成长值规则',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员积分成长规则表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_sign_day",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "连续签到天数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_sign_day"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_sign_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "连续签到赠送数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_sign_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "consume_per_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每消费多少元获取1个点",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "consume_per_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_order_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最低获取点数的订单金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_order_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "max_point_per_order",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每笔订单最高获取点数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "max_point_per_order"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "类型:0->积分规则;1->成长值规则",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_statistics_info",
+ "comment": "会员统计信息",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_statistics_info",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_statistics_info` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `consume_amount` decimal(10,2) DEFAULT NULL COMMENT '累计消费金额',\n `order_count` int(11) DEFAULT NULL COMMENT '订单数量',\n `coupon_count` int(11) DEFAULT NULL COMMENT '优惠券数量',\n `comment_count` int(11) DEFAULT NULL COMMENT '评价数',\n `return_order_count` int(11) DEFAULT NULL COMMENT '退货数量',\n `login_count` int(11) DEFAULT NULL COMMENT '登录次数',\n `attend_count` int(11) DEFAULT NULL COMMENT '关注数量',\n `fans_count` int(11) DEFAULT NULL COMMENT '粉丝数量',\n `collect_product_count` int(11) DEFAULT NULL,\n `collect_subject_count` int(11) DEFAULT NULL,\n `collect_topic_count` int(11) DEFAULT NULL,\n `collect_comment_count` int(11) DEFAULT NULL,\n `invite_friend_count` int(11) DEFAULT NULL,\n `recent_order_time` datetime DEFAULT NULL COMMENT '最后一次下订单时间',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_50` (`member_id`),\n CONSTRAINT `FK_Reference_50` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员统计信息'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "consume_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "累计消费金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "consume_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "登录次数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attend_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "关注数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attend_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "fans_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "粉丝数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "fans_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_subject_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_subject_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_topic_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_topic_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "invite_friend_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "invite_friend_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recent_order_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最后一次下订单时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recent_order_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_50",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_50",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_50",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_50"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_tag",
+ "comment": "用户标签表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_tag",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_tag` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `finish_order_count` int(11) DEFAULT NULL COMMENT '自动打标签完成订单数量',\n `finish_order_amount` decimal(10,2) DEFAULT NULL COMMENT '自动打标签完成订单金额',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户标签表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动打标签完成订单数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_order_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动打标签完成订单金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_order_amount"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_task",
+ "comment": "会员任务表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_task",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_task` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `growth` int(11) DEFAULT NULL COMMENT '赠送成长值',\n `intergration` int(11) DEFAULT NULL COMMENT '赠送积分',\n `type` int(1) DEFAULT NULL COMMENT '任务类型:0->新手任务;1->日常任务',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员任务表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "intergration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "intergration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "任务类型:0->新手任务;1->日常任务",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_menu",
+ "comment": "后台菜单表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_menu",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_menu` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `parent_id` bigint(20) DEFAULT NULL COMMENT '父级ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `title` varchar(100) DEFAULT NULL COMMENT '菜单名称',\n `level` int(4) DEFAULT NULL COMMENT '菜单级数',\n `sort` int(4) DEFAULT NULL COMMENT '菜单排序',\n `name` varchar(100) DEFAULT NULL COMMENT '前端名称',\n `icon` varchar(200) DEFAULT NULL COMMENT '前端图标',\n `hidden` int(1) DEFAULT NULL COMMENT '前端隐藏',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_80` (`parent_id`),\n CONSTRAINT `FK_Reference_80` FOREIGN KEY (`parent_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台菜单表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "level",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单级数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "level"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "hidden",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端隐藏",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "hidden"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_80",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_80",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "parent_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "parent_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_80",
+ "fields": [
+ "parent_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_80"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_permission",
+ "comment": "后台用户权限表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_permission",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_permission` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `pid` bigint(20) DEFAULT NULL COMMENT '父级权限id',\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `value` varchar(200) DEFAULT NULL COMMENT '权限值',\n `icon` varchar(500) DEFAULT NULL COMMENT '图标',\n `type` int(1) DEFAULT NULL COMMENT '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',\n `uri` varchar(200) DEFAULT NULL COMMENT '前端资源路径',\n `status` int(1) DEFAULT NULL COMMENT '启用状态;0->禁用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_68` (`pid`),\n CONSTRAINT `FK_Reference_68` FOREIGN KEY (`pid`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户权限表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pid",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级权限id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pid"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "value",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "value"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "uri",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端资源路径",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "uri"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态;0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_68",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_68",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "pid",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "pid"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_68",
+ "fields": [
+ "pid"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_68"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource",
+ "comment": "后台资源表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL COMMENT '资源分类ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '资源名称',\n `url` varchar(200) DEFAULT NULL COMMENT '资源URL',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_85` (`category_id`),\n CONSTRAINT `FK_Reference_85` FOREIGN KEY (`category_id`) REFERENCES `ums_resource_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台资源表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源分类ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "url",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源URL",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "url"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_85",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_85",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_85",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_85"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource_category",
+ "comment": "资源分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '分类名称',\n `sort` int(4) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='资源分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role",
+ "comment": "后台用户角色表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n `admin_count` int(11) DEFAULT NULL COMMENT '后台用户数量',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `status` int(1) DEFAULT '1' COMMENT '启用状态:0->禁用;1->启用',\n `sort` int(11) DEFAULT '0',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "后台用户数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_menu_relation",
+ "comment": "后台角色菜单关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_menu_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_menu_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `menu_id` bigint(20) DEFAULT NULL COMMENT '菜单ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_81` (`role_id`),\n KEY `FK_Reference_82` (`menu_id`),\n CONSTRAINT `FK_Reference_81` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_82` FOREIGN KEY (`menu_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色菜单关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "menu_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "menu_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_81",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_81",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_82",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_82",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "menu_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "menu_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_81",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_81"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_82",
+ "fields": [
+ "menu_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_82"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_permission_relation",
+ "comment": "后台用户角色和权限关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_71` (`role_id`),\n KEY `FK_Reference_72` (`permission_id`),\n CONSTRAINT `FK_Reference_71` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_72` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色和权限关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_71",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_71",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_72",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_72",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_71",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_71"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_72",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_72"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_resource_relation",
+ "comment": "后台角色资源关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_resource_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_resource_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `resource_id` bigint(20) DEFAULT NULL COMMENT '资源ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_83` (`role_id`),\n KEY `FK_Reference_84` (`resource_id`),\n CONSTRAINT `FK_Reference_83` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_84` FOREIGN KEY (`resource_id`) REFERENCES `ums_resource` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色资源关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "resource_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "resource_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_83",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_83",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_84",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_84",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "resource_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "resource_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_83",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_83"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_84",
+ "fields": [
+ "resource_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_84"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "mall数据库模型",
+ "paperWidth": 5,
+ "paperHeight": 4,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_help",
+ "x": 3680,
+ "y": 4830,
+ "width": 165,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_help_category",
+ "x": 3910,
+ "y": 4850,
+ "width": 164,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_member_report",
+ "x": 2780,
+ "y": 4850,
+ "width": 243,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_prefrence_area",
+ "x": 1130,
+ "y": 3440,
+ "width": 173,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_prefrence_area_product_relation",
+ "x": 780,
+ "y": 3470,
+ "width": 299,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_subject",
+ "x": 3590,
+ "y": 250,
+ "width": 205,
+ "height": 371,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_subject_category",
+ "x": 3600,
+ "y": 30,
+ "width": 185,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_subject_comment",
+ "x": 3840,
+ "y": 330,
+ "width": 233,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_subject_product_relation",
+ "x": 1310,
+ "y": 380,
+ "width": 240,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_topic",
+ "x": 2270,
+ "y": 4830,
+ "width": 192,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_topic_category",
+ "x": 2540,
+ "y": 4890,
+ "width": 168,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "cms_topic_comment",
+ "x": 1950,
+ "y": 4880,
+ "width": 233,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_cart_item",
+ "x": 1920,
+ "y": 3210,
+ "width": 227,
+ "height": 411,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_company_address",
+ "x": 3300,
+ "y": 480,
+ "width": 202,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order",
+ "x": 3280,
+ "y": 1710,
+ "width": 250,
+ "height": 931,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_item",
+ "x": 1520,
+ "y": 1130,
+ "width": 235,
+ "height": 471,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_operate_history",
+ "x": 3580,
+ "y": 2090,
+ "width": 223,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_return_apply",
+ "x": 3290,
+ "y": 780,
+ "width": 230,
+ "height": 591,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_return_reason",
+ "x": 4550,
+ "y": 30,
+ "width": 212,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_setting",
+ "x": 3400,
+ "y": 4850,
+ "width": 213,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_album",
+ "x": 4350,
+ "y": 4850,
+ "width": 187,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_album_pic",
+ "x": 4150,
+ "y": 4880,
+ "width": 153,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_brand",
+ "x": 260,
+ "y": 3940,
+ "width": 220,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_comment",
+ "x": 520,
+ "y": 3080,
+ "width": 233,
+ "height": 351,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_comment_replay",
+ "x": 520,
+ "y": 2840,
+ "width": 233,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_feight_template",
+ "x": 610,
+ "y": 4570,
+ "width": 218,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_member_price",
+ "x": 2260,
+ "y": 3580,
+ "width": 237,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product",
+ "x": 590,
+ "y": 3640,
+ "width": 262,
+ "height": 891,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute",
+ "x": 2000,
+ "y": 1880,
+ "width": 262,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute_category",
+ "x": 1700,
+ "y": 2040,
+ "width": 258,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute_value",
+ "x": 2010,
+ "y": 1710,
+ "width": 234,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_category",
+ "x": 2030,
+ "y": 2430,
+ "width": 189,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_category_attribute_relation",
+ "x": 1970,
+ "y": 2220,
+ "width": 321,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_full_reduction",
+ "x": 4260,
+ "y": 4440,
+ "width": 224,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_ladder",
+ "x": 4260,
+ "y": 4250,
+ "width": 175,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_operate_log",
+ "x": 3940,
+ "y": 4110,
+ "width": 214,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_vertify_record",
+ "x": 3600,
+ "y": 4180,
+ "width": 226,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_sku_stock",
+ "x": 1930,
+ "y": 3800,
+ "width": 218,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon",
+ "x": 2950,
+ "y": 2070,
+ "width": 183,
+ "height": 411,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_history",
+ "x": 3010,
+ "y": 2540,
+ "width": 220,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_product_category_relation",
+ "x": 2270,
+ "y": 2380,
+ "width": 312,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_product_relation",
+ "x": 2930,
+ "y": 1610,
+ "width": 241,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion",
+ "x": 3320,
+ "y": 4110,
+ "width": 177,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_log",
+ "x": 1820,
+ "y": 2970,
+ "width": 207,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_product_relation",
+ "x": 2970,
+ "y": 4100,
+ "width": 303,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_session",
+ "x": 3000,
+ "y": 3880,
+ "width": 240,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_advertise",
+ "x": 1700,
+ "y": 4850,
+ "width": 176,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_brand",
+ "x": 30,
+ "y": 4010,
+ "width": 183,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_new_product",
+ "x": 2670,
+ "y": 4110,
+ "width": 201,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_recommend_product",
+ "x": 2310,
+ "y": 4020,
+ "width": 255,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_recommend_subject",
+ "x": 3570,
+ "y": 670,
+ "width": 252,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin",
+ "x": 260,
+ "y": 5590,
+ "width": 180,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin_login_log",
+ "x": 30,
+ "y": 5630,
+ "width": 181,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin_permission_relation",
+ "x": 220,
+ "y": 5410,
+ "width": 255,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin_role_relation",
+ "x": 990,
+ "y": 5660,
+ "width": 205,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_growth_change_history",
+ "x": 2810,
+ "y": 3470,
+ "width": 230,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_integration_change_history",
+ "x": 3090,
+ "y": 3620,
+ "width": 259,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_integration_consume_setting",
+ "x": 4600,
+ "y": 4850,
+ "width": 270,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member",
+ "x": 3090,
+ "y": 3150,
+ "width": 248,
+ "height": 431,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_level",
+ "x": 2540,
+ "y": 3370,
+ "width": 223,
+ "height": 311,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_login_log",
+ "x": 3450,
+ "y": 3450,
+ "width": 193,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_member_tag_relation",
+ "x": 3840,
+ "y": 3350,
+ "width": 279,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_product_category_relation",
+ "x": 1980,
+ "y": 2800,
+ "width": 317,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_receive_address",
+ "x": 3670,
+ "y": 3000,
+ "width": 247,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_rule_setting",
+ "x": 3090,
+ "y": 4850,
+ "width": 237,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_statistics_info",
+ "x": 3390,
+ "y": 2780,
+ "width": 228,
+ "height": 371,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_tag",
+ "x": 4170,
+ "y": 3330,
+ "width": 241,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_task",
+ "x": 4830,
+ "y": 30,
+ "width": 158,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_menu",
+ "x": 1470,
+ "y": 5360,
+ "width": 162,
+ "height": 231,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_permission",
+ "x": 510,
+ "y": 5360,
+ "width": 162,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_resource",
+ "x": 990,
+ "y": 5020,
+ "width": 180,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_resource_category",
+ "x": 980,
+ "y": 4850,
+ "width": 198,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role",
+ "x": 990,
+ "y": 5380,
+ "width": 180,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role_menu_relation",
+ "x": 1220,
+ "y": 5430,
+ "width": 201,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role_permission_relation",
+ "x": 710,
+ "y": 5430,
+ "width": 240,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role_resource_relation",
+ "x": 970,
+ "y": 5230,
+ "width": 226,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_32",
+ "sourceTableName": "cms_help",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3860,
+ "y": 4930
+ },
+ {
+ "x": 3895,
+ "y": 4930
+ }
+ ],
+ "label": {
+ "x": 3856,
+ "y": 4932,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_18",
+ "sourceTableName": "cms_prefrence_area_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1094,
+ "y": 3520
+ },
+ {
+ "x": 1115,
+ "y": 3520
+ }
+ ],
+ "label": {
+ "x": 1090,
+ "y": 3522,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_28",
+ "sourceTableName": "cms_subject",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3690,
+ "y": 235
+ },
+ {
+ "x": 3690,
+ "y": 216
+ }
+ ],
+ "label": {
+ "x": 3698,
+ "y": 245,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_29",
+ "sourceTableName": "cms_subject_comment",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3825,
+ "y": 430
+ },
+ {
+ "x": 3810,
+ "y": 430
+ }
+ ],
+ "label": {
+ "x": 3841,
+ "y": 432,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_26",
+ "sourceTableName": "cms_subject_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1565,
+ "y": 430
+ },
+ {
+ "x": 3575,
+ "y": 430
+ }
+ ],
+ "label": {
+ "x": 1561,
+ "y": 432,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_31",
+ "sourceTableName": "cms_topic",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2477,
+ "y": 4970
+ },
+ {
+ "x": 2525,
+ "y": 4970
+ }
+ ],
+ "label": {
+ "x": 2473,
+ "y": 4972,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_30",
+ "sourceTableName": "cms_topic_comment",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2198,
+ "y": 4970
+ },
+ {
+ "x": 2255,
+ "y": 4970
+ }
+ ],
+ "label": {
+ "x": 2194,
+ "y": 4972,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_58",
+ "sourceTableName": "oms_order_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1770,
+ "y": 1550
+ },
+ {
+ "x": 3220,
+ "y": 1550
+ },
+ {
+ "x": 3220,
+ "y": 1760
+ },
+ {
+ "x": 3265,
+ "y": 1760
+ }
+ ],
+ "label": {
+ "x": 1766,
+ "y": 1552,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_62",
+ "sourceTableName": "oms_order_operate_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3565,
+ "y": 2180
+ },
+ {
+ "x": 3545,
+ "y": 2180
+ }
+ ],
+ "label": {
+ "x": 3581,
+ "y": 2182,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_63",
+ "sourceTableName": "oms_order_return_apply",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3400,
+ "y": 1386
+ },
+ {
+ "x": 3400,
+ "y": 1695
+ }
+ ],
+ "label": {
+ "x": 3408,
+ "y": 1376,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_64",
+ "sourceTableName": "oms_order_return_apply",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3400,
+ "y": 765
+ },
+ {
+ "x": 3400,
+ "y": 746
+ }
+ ],
+ "label": {
+ "x": 3408,
+ "y": 775,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_25",
+ "sourceTableName": "pms_album_pic",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 4318,
+ "y": 4930
+ },
+ {
+ "x": 4335,
+ "y": 4930
+ }
+ ],
+ "label": {
+ "x": 4314,
+ "y": 4932,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_24",
+ "sourceTableName": "pms_comment_replay",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 640,
+ "y": 3046
+ },
+ {
+ "x": 640,
+ "y": 3065
+ }
+ ],
+ "label": {
+ "x": 648,
+ "y": 3036,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_19",
+ "sourceTableName": "cms_prefrence_area_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 765,
+ "y": 3520
+ },
+ {
+ "x": 730,
+ "y": 3520
+ },
+ {
+ "x": 730,
+ "y": 3625
+ }
+ ],
+ "label": {
+ "x": 781,
+ "y": 3522,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_27",
+ "sourceTableName": "cms_subject_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1360,
+ "y": 506
+ },
+ {
+ "x": 1360,
+ "y": 3660
+ },
+ {
+ "x": 867,
+ "y": 3660
+ }
+ ],
+ "label": {
+ "x": 1368,
+ "y": 496,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_65",
+ "sourceTableName": "oms_cart_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1905,
+ "y": 3570
+ },
+ {
+ "x": 1820,
+ "y": 3570
+ },
+ {
+ "x": 1820,
+ "y": 4030
+ },
+ {
+ "x": 867,
+ "y": 4030
+ }
+ ],
+ "label": {
+ "x": 1921,
+ "y": 3557,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_59",
+ "sourceTableName": "oms_order_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1505,
+ "y": 1550
+ },
+ {
+ "x": 1470,
+ "y": 1550
+ },
+ {
+ "x": 1470,
+ "y": 3760
+ },
+ {
+ "x": 867,
+ "y": 3760
+ }
+ ],
+ "label": {
+ "x": 1521,
+ "y": 1537,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_75",
+ "sourceTableName": "oms_order_return_apply",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3275,
+ "y": 1080
+ },
+ {
+ "x": 1410,
+ "y": 1080
+ },
+ {
+ "x": 1410,
+ "y": 3710
+ },
+ {
+ "x": 867,
+ "y": 3710
+ }
+ ],
+ "label": {
+ "x": 3291,
+ "y": 1067,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_23",
+ "sourceTableName": "pms_comment",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 640,
+ "y": 3446
+ },
+ {
+ "x": 640,
+ "y": 3625
+ }
+ ],
+ "label": {
+ "x": 648,
+ "y": 3436,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_9",
+ "sourceTableName": "pms_member_price",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2245,
+ "y": 3670
+ },
+ {
+ "x": 2200,
+ "y": 3670
+ },
+ {
+ "x": 2200,
+ "y": 4130
+ },
+ {
+ "x": 867,
+ "y": 4130
+ }
+ ],
+ "label": {
+ "x": 2261,
+ "y": 3672,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_1",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 575,
+ "y": 4080
+ },
+ {
+ "x": 495,
+ "y": 4080
+ }
+ ],
+ "label": {
+ "x": 591,
+ "y": 4082,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_6",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 720,
+ "y": 4546
+ },
+ {
+ "x": 720,
+ "y": 4555
+ }
+ ],
+ "label": {
+ "x": 728,
+ "y": 4536,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_13",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 867,
+ "y": 3900
+ },
+ {
+ "x": 1650,
+ "y": 3900
+ },
+ {
+ "x": 1650,
+ "y": 2120
+ },
+ {
+ "x": 1685,
+ "y": 2120
+ }
+ ],
+ "label": {
+ "x": 863,
+ "y": 3887,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_12",
+ "sourceTableName": "pms_product_attribute",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1985,
+ "y": 2110
+ },
+ {
+ "x": 1973,
+ "y": 2110
+ }
+ ],
+ "label": {
+ "x": 2001,
+ "y": 2112,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_14",
+ "sourceTableName": "pms_product_attribute_value",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1995,
+ "y": 1790
+ },
+ {
+ "x": 1590,
+ "y": 1790
+ },
+ {
+ "x": 1590,
+ "y": 3850
+ },
+ {
+ "x": 867,
+ "y": 3850
+ }
+ ],
+ "label": {
+ "x": 2011,
+ "y": 1792,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_15",
+ "sourceTableName": "pms_product_attribute_value",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2130,
+ "y": 1856
+ },
+ {
+ "x": 2130,
+ "y": 1865
+ }
+ ],
+ "label": {
+ "x": 2138,
+ "y": 1846,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_5",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 867,
+ "y": 3940
+ },
+ {
+ "x": 1700,
+ "y": 3940
+ },
+ {
+ "x": 1700,
+ "y": 2670
+ },
+ {
+ "x": 2015,
+ "y": 2670
+ }
+ ],
+ "label": {
+ "x": 863,
+ "y": 3927,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_20",
+ "sourceTableName": "pms_product_category",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2234,
+ "y": 2690
+ },
+ {
+ "x": 2260,
+ "y": 2690
+ },
+ {
+ "x": 2260,
+ "y": 2750
+ },
+ {
+ "x": 2200,
+ "y": 2750
+ },
+ {
+ "x": 2200,
+ "y": 2736
+ }
+ ],
+ "label": {
+ "x": 2224,
+ "y": 2642,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_21",
+ "sourceTableName": "pms_product_category_attribute_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2130,
+ "y": 2346
+ },
+ {
+ "x": 2130,
+ "y": 2415
+ }
+ ],
+ "label": {
+ "x": 2138,
+ "y": 2336,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_22",
+ "sourceTableName": "pms_product_category_attribute_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2130,
+ "y": 2205
+ },
+ {
+ "x": 2130,
+ "y": 2186
+ }
+ ],
+ "label": {
+ "x": 2138,
+ "y": 2215,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_11",
+ "sourceTableName": "pms_product_full_reduction",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 4245,
+ "y": 4500
+ },
+ {
+ "x": 867,
+ "y": 4500
+ }
+ ],
+ "label": {
+ "x": 4261,
+ "y": 4502,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_10",
+ "sourceTableName": "pms_product_ladder",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 4245,
+ "y": 4350
+ },
+ {
+ "x": 4210,
+ "y": 4350
+ },
+ {
+ "x": 4210,
+ "y": 4450
+ },
+ {
+ "x": 867,
+ "y": 4450
+ }
+ ],
+ "label": {
+ "x": 4261,
+ "y": 4352,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_4",
+ "sourceTableName": "pms_product_operate_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3925,
+ "y": 4350
+ },
+ {
+ "x": 3880,
+ "y": 4350
+ },
+ {
+ "x": 3880,
+ "y": 4410
+ },
+ {
+ "x": 867,
+ "y": 4410
+ }
+ ],
+ "label": {
+ "x": 3941,
+ "y": 4352,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_3",
+ "sourceTableName": "pms_product_vertify_record",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3585,
+ "y": 4300
+ },
+ {
+ "x": 3550,
+ "y": 4300
+ },
+ {
+ "x": 3550,
+ "y": 4360
+ },
+ {
+ "x": 867,
+ "y": 4360
+ }
+ ],
+ "label": {
+ "x": 3601,
+ "y": 4302,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_66",
+ "sourceTableName": "oms_cart_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2040,
+ "y": 3636
+ },
+ {
+ "x": 2040,
+ "y": 3785
+ }
+ ],
+ "label": {
+ "x": 2048,
+ "y": 3611,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_2",
+ "sourceTableName": "pms_sku_stock",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1915,
+ "y": 4020
+ },
+ {
+ "x": 1880,
+ "y": 4020
+ },
+ {
+ "x": 1880,
+ "y": 4080
+ },
+ {
+ "x": 867,
+ "y": 4080
+ }
+ ],
+ "label": {
+ "x": 1931,
+ "y": 4022,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_61",
+ "sourceTableName": "oms_order",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3265,
+ "y": 2280
+ },
+ {
+ "x": 3148,
+ "y": 2280
+ }
+ ],
+ "label": {
+ "x": 3281,
+ "y": 2267,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_37",
+ "sourceTableName": "sms_coupon_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3080,
+ "y": 2525
+ },
+ {
+ "x": 3080,
+ "y": 2496
+ }
+ ],
+ "label": {
+ "x": 3088,
+ "y": 2535,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_76",
+ "sourceTableName": "sms_coupon_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3245,
+ "y": 2590
+ },
+ {
+ "x": 3265,
+ "y": 2590
+ }
+ ],
+ "label": {
+ "x": 3241,
+ "y": 2592,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_35",
+ "sourceTableName": "sms_coupon_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2597,
+ "y": 2430
+ },
+ {
+ "x": 2935,
+ "y": 2430
+ }
+ ],
+ "label": {
+ "x": 2593,
+ "y": 2432,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_36",
+ "sourceTableName": "sms_coupon_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2255,
+ "y": 2480
+ },
+ {
+ "x": 2234,
+ "y": 2480
+ }
+ ],
+ "label": {
+ "x": 2271,
+ "y": 2482,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_33",
+ "sourceTableName": "sms_coupon_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3050,
+ "y": 1776
+ },
+ {
+ "x": 3050,
+ "y": 2055
+ }
+ ],
+ "label": {
+ "x": 3058,
+ "y": 1766,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_34",
+ "sourceTableName": "sms_coupon_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2915,
+ "y": 1660
+ },
+ {
+ "x": 1530,
+ "y": 1660
+ },
+ {
+ "x": 1530,
+ "y": 3800
+ },
+ {
+ "x": 867,
+ "y": 3800
+ }
+ ],
+ "label": {
+ "x": 2931,
+ "y": 1662,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_45",
+ "sourceTableName": "sms_flash_promotion_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1805,
+ "y": 3110
+ },
+ {
+ "x": 1760,
+ "y": 3110
+ },
+ {
+ "x": 1760,
+ "y": 3990
+ },
+ {
+ "x": 867,
+ "y": 3990
+ }
+ ],
+ "label": {
+ "x": 1821,
+ "y": 3112,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_77",
+ "sourceTableName": "sms_flash_promotion_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3288,
+ "y": 4200
+ },
+ {
+ "x": 3305,
+ "y": 4200
+ }
+ ],
+ "label": {
+ "x": 3284,
+ "y": 4202,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_79",
+ "sourceTableName": "sms_flash_promotion_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2955,
+ "y": 4250
+ },
+ {
+ "x": 2920,
+ "y": 4250
+ },
+ {
+ "x": 2920,
+ "y": 4310
+ },
+ {
+ "x": 867,
+ "y": 4310
+ }
+ ],
+ "label": {
+ "x": 2971,
+ "y": 4252,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_78",
+ "sourceTableName": "sms_flash_promotion_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3120,
+ "y": 4085
+ },
+ {
+ "x": 3120,
+ "y": 4066
+ }
+ ],
+ "label": {
+ "x": 3128,
+ "y": 4095,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_39",
+ "sourceTableName": "sms_home_brand",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 228,
+ "y": 4080
+ },
+ {
+ "x": 245,
+ "y": 4080
+ }
+ ],
+ "label": {
+ "x": 224,
+ "y": 4082,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_40",
+ "sourceTableName": "sms_home_new_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2655,
+ "y": 4210
+ },
+ {
+ "x": 2620,
+ "y": 4210
+ },
+ {
+ "x": 2620,
+ "y": 4220
+ },
+ {
+ "x": 867,
+ "y": 4220
+ }
+ ],
+ "label": {
+ "x": 2671,
+ "y": 4212,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_41",
+ "sourceTableName": "sms_home_recommend_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2295,
+ "y": 4120
+ },
+ {
+ "x": 2260,
+ "y": 4120
+ },
+ {
+ "x": 2260,
+ "y": 4170
+ },
+ {
+ "x": 867,
+ "y": 4170
+ }
+ ],
+ "label": {
+ "x": 2311,
+ "y": 4122,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_42",
+ "sourceTableName": "sms_home_recommend_subject",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3690,
+ "y": 655
+ },
+ {
+ "x": 3690,
+ "y": 636
+ }
+ ],
+ "label": {
+ "x": 3698,
+ "y": 665,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_46",
+ "sourceTableName": "ums_admin_login_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 226,
+ "y": 5710
+ },
+ {
+ "x": 245,
+ "y": 5710
+ }
+ ],
+ "label": {
+ "x": 222,
+ "y": 5712,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_73",
+ "sourceTableName": "ums_admin_permission_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 360,
+ "y": 5556
+ },
+ {
+ "x": 360,
+ "y": 5575
+ }
+ ],
+ "label": {
+ "x": 368,
+ "y": 5546,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_69",
+ "sourceTableName": "ums_admin_role_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 975,
+ "y": 5710
+ },
+ {
+ "x": 455,
+ "y": 5710
+ }
+ ],
+ "label": {
+ "x": 991,
+ "y": 5712,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_67",
+ "sourceTableName": "oms_cart_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2162,
+ "y": 3320
+ },
+ {
+ "x": 3075,
+ "y": 3320
+ }
+ ],
+ "label": {
+ "x": 2158,
+ "y": 3307,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_57",
+ "sourceTableName": "oms_order",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3330,
+ "y": 2656
+ },
+ {
+ "x": 3330,
+ "y": 2690
+ },
+ {
+ "x": 3320,
+ "y": 2690
+ },
+ {
+ "x": 3320,
+ "y": 3135
+ }
+ ],
+ "label": {
+ "x": 3338,
+ "y": 2631,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_38",
+ "sourceTableName": "sms_coupon_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3180,
+ "y": 2826
+ },
+ {
+ "x": 3180,
+ "y": 3135
+ }
+ ],
+ "label": {
+ "x": 3188,
+ "y": 2816,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_44",
+ "sourceTableName": "sms_flash_promotion_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2042,
+ "y": 3110
+ },
+ {
+ "x": 3040,
+ "y": 3110
+ },
+ {
+ "x": 3040,
+ "y": 3200
+ },
+ {
+ "x": 3075,
+ "y": 3200
+ }
+ ],
+ "label": {
+ "x": 2038,
+ "y": 3112,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_56",
+ "sourceTableName": "ums_growth_change_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3055,
+ "y": 3520
+ },
+ {
+ "x": 3075,
+ "y": 3520
+ }
+ ],
+ "label": {
+ "x": 3051,
+ "y": 3522,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_55",
+ "sourceTableName": "ums_integration_change_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3210,
+ "y": 3605
+ },
+ {
+ "x": 3210,
+ "y": 3596
+ }
+ ],
+ "label": {
+ "x": 3218,
+ "y": 3615,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_60",
+ "sourceTableName": "pms_member_price",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2512,
+ "y": 3630
+ },
+ {
+ "x": 2525,
+ "y": 3630
+ }
+ ],
+ "label": {
+ "x": 2508,
+ "y": 3632,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_47",
+ "sourceTableName": "ums_member",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3075,
+ "y": 3420
+ },
+ {
+ "x": 2778,
+ "y": 3420
+ }
+ ],
+ "label": {
+ "x": 3091,
+ "y": 3407,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_52",
+ "sourceTableName": "ums_member_login_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3435,
+ "y": 3520
+ },
+ {
+ "x": 3353,
+ "y": 3520
+ }
+ ],
+ "label": {
+ "x": 3451,
+ "y": 3522,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_53",
+ "sourceTableName": "ums_member_member_tag_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3825,
+ "y": 3400
+ },
+ {
+ "x": 3353,
+ "y": 3400
+ }
+ ],
+ "label": {
+ "x": 3841,
+ "y": 3402,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_48",
+ "sourceTableName": "ums_member_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2312,
+ "y": 2860
+ },
+ {
+ "x": 3120,
+ "y": 2860
+ },
+ {
+ "x": 3120,
+ "y": 3135
+ }
+ ],
+ "label": {
+ "x": 2308,
+ "y": 2862,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_49",
+ "sourceTableName": "ums_member_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 2130,
+ "y": 2785
+ },
+ {
+ "x": 2130,
+ "y": 2736
+ }
+ ],
+ "label": {
+ "x": 2138,
+ "y": 2795,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_51",
+ "sourceTableName": "ums_member_receive_address",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3790,
+ "y": 3266
+ },
+ {
+ "x": 3790,
+ "y": 3300
+ },
+ {
+ "x": 3353,
+ "y": 3300
+ }
+ ],
+ "label": {
+ "x": 3798,
+ "y": 3256,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_50",
+ "sourceTableName": "ums_member_statistics_info",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 3500,
+ "y": 3166
+ },
+ {
+ "x": 3500,
+ "y": 3200
+ },
+ {
+ "x": 3353,
+ "y": 3200
+ }
+ ],
+ "label": {
+ "x": 3508,
+ "y": 3156,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_54",
+ "sourceTableName": "ums_member_member_tag_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 4134,
+ "y": 3400
+ },
+ {
+ "x": 4155,
+ "y": 3400
+ }
+ ],
+ "label": {
+ "x": 4130,
+ "y": 3402,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_80",
+ "sourceTableName": "ums_menu",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1647,
+ "y": 5570
+ },
+ {
+ "x": 1670,
+ "y": 5570
+ },
+ {
+ "x": 1670,
+ "y": 5630
+ },
+ {
+ "x": 1610,
+ "y": 5630
+ },
+ {
+ "x": 1610,
+ "y": 5606
+ }
+ ],
+ "label": {
+ "x": 1637,
+ "y": 5522,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_74",
+ "sourceTableName": "ums_admin_permission_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 490,
+ "y": 5490
+ },
+ {
+ "x": 495,
+ "y": 5490
+ }
+ ],
+ "label": {
+ "x": 486,
+ "y": 5492,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_68",
+ "sourceTableName": "ums_permission",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 687,
+ "y": 5590
+ },
+ {
+ "x": 710,
+ "y": 5590
+ },
+ {
+ "x": 710,
+ "y": 5650
+ },
+ {
+ "x": 650,
+ "y": 5650
+ },
+ {
+ "x": 650,
+ "y": 5626
+ }
+ ],
+ "label": {
+ "x": 677,
+ "y": 5542,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_85",
+ "sourceTableName": "ums_resource",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1100,
+ "y": 5005
+ },
+ {
+ "x": 1100,
+ "y": 4996
+ }
+ ],
+ "label": {
+ "x": 1108,
+ "y": 5015,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_70",
+ "sourceTableName": "ums_admin_role_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1100,
+ "y": 5645
+ },
+ {
+ "x": 1100,
+ "y": 5586
+ }
+ ],
+ "label": {
+ "x": 1108,
+ "y": 5655,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_81",
+ "sourceTableName": "ums_role_menu_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1205,
+ "y": 5490
+ },
+ {
+ "x": 1185,
+ "y": 5490
+ }
+ ],
+ "label": {
+ "x": 1221,
+ "y": 5492,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_82",
+ "sourceTableName": "ums_role_menu_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1436,
+ "y": 5490
+ },
+ {
+ "x": 1455,
+ "y": 5490
+ }
+ ],
+ "label": {
+ "x": 1432,
+ "y": 5492,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_71",
+ "sourceTableName": "ums_role_permission_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 965,
+ "y": 5490
+ },
+ {
+ "x": 975,
+ "y": 5490
+ }
+ ],
+ "label": {
+ "x": 961,
+ "y": 5492,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_72",
+ "sourceTableName": "ums_role_permission_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 695,
+ "y": 5490
+ },
+ {
+ "x": 687,
+ "y": 5490
+ }
+ ],
+ "label": {
+ "x": 711,
+ "y": 5492,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_83",
+ "sourceTableName": "ums_role_resource_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1100,
+ "y": 5356
+ },
+ {
+ "x": 1100,
+ "y": 5365
+ }
+ ],
+ "label": {
+ "x": 1108,
+ "y": 5346,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_84",
+ "sourceTableName": "ums_role_resource_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1100,
+ "y": 5215
+ },
+ {
+ "x": 1100,
+ "y": 5206
+ }
+ ],
+ "label": {
+ "x": 1108,
+ "y": 5225,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/document/navicat/\344\274\232\345\221\230\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/\344\274\232\345\221\230\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..ce4a0ba5
--- /dev/null
+++ "b/document/navicat/\344\274\232\345\221\230\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,8007 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50799,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin",
+ "comment": "后台用户表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `username` varchar(64) DEFAULT NULL COMMENT '用户名',\n `password` varchar(64) DEFAULT NULL COMMENT '密码',\n `icon` varchar(500) DEFAULT NULL COMMENT '头像',\n `email` varchar(100) DEFAULT NULL COMMENT '邮箱',\n `nick_name` varchar(200) DEFAULT NULL COMMENT '昵称',\n `note` varchar(500) DEFAULT NULL COMMENT '备注信息',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `login_time` datetime DEFAULT NULL COMMENT '最后登录时间',\n `status` int(1) DEFAULT '1' COMMENT '帐号启用状态:0->禁用;1->启用',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "password",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "密码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "password"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "email",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "邮箱",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "email"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nick_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注信息",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最后登录时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "帐号启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_login_log",
+ "comment": "后台用户登录日志表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_login_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_login_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `ip` varchar(64) DEFAULT NULL,\n `address` varchar(100) DEFAULT NULL,\n `user_agent` varchar(100) DEFAULT NULL COMMENT '浏览器登录类型',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_46` (`admin_id`),\n CONSTRAINT `FK_Reference_46` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户登录日志表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "address",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "address"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "user_agent",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "浏览器登录类型",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "user_agent"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_46",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_46",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_46",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_46"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_permission_relation",
+ "comment": "后台用户和权限关系表(除角色中定义的权限以外的加减权限)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n `type` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_73` (`admin_id`),\n KEY `FK_Reference_74` (`permission_id`),\n CONSTRAINT `FK_Reference_73` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_74` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和权限关系表(除角色中定义的权限以外的加减权限)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_73",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_73",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_74",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_74",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_73",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_73"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_74",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_74"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_role_relation",
+ "comment": "后台用户和角色关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_role_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_role_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `role_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_69` (`admin_id`),\n KEY `FK_Reference_70` (`role_id`),\n CONSTRAINT `FK_Reference_69` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_70` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和角色关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_69",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_69",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_70",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_70",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_69",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_69"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_70",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_70"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_growth_change_history",
+ "comment": "成长值变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_growth_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_growth_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_56` (`member_id`),\n CONSTRAINT `FK_Reference_56` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='成长值变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_56",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_56",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_56",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_56"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_change_history",
+ "comment": "积分变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_55` (`member_id`),\n CONSTRAINT `FK_Reference_55` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_55",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_55",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_55",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_55"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_consume_setting",
+ "comment": "积分消费设置",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_consume_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_consume_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `deduction_per_amount` int(11) DEFAULT NULL COMMENT '每一元需要抵扣的积分数量',\n `max_percent_per_order` int(11) DEFAULT NULL COMMENT '每笔订单最高抵用百分比',\n `use_unit` int(11) DEFAULT NULL COMMENT '每次使用积分最小单位100',\n `coupon_status` int(1) DEFAULT NULL COMMENT '是否可以和优惠券同用;0->不可以;1->可以',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分消费设置'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "deduction_per_amount",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每一元需要抵扣的积分数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "deduction_per_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "max_percent_per_order",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每笔订单最高抵用百分比",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "max_percent_per_order"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_unit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每次使用积分最小单位100",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否可以和优惠券同用;0->不可以;1->可以",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member",
+ "comment": "会员表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_level_id` bigint(20) DEFAULT NULL,\n `username` varchar(64) DEFAULT NULL COMMENT '用户名',\n `password` varchar(64) DEFAULT NULL COMMENT '密码',\n `nickname` varchar(64) DEFAULT NULL COMMENT '昵称',\n `phone` varchar(64) DEFAULT NULL COMMENT '手机号码',\n `status` int(1) DEFAULT NULL COMMENT '帐号启用状态:0->禁用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '注册时间',\n `icon` varchar(500) DEFAULT NULL COMMENT '头像',\n `gender` int(1) DEFAULT NULL COMMENT '性别:0->未知;1->男;2->女',\n `birthday` date DEFAULT NULL COMMENT '生日',\n `city` varchar(64) DEFAULT NULL COMMENT '所做城市',\n `job` varchar(100) DEFAULT NULL COMMENT '职业',\n `personalized_signature` varchar(200) DEFAULT NULL COMMENT '个性签名',\n `source_type` int(1) DEFAULT NULL COMMENT '用户来源',\n `integration` int(11) DEFAULT NULL COMMENT '积分',\n `growth` int(11) DEFAULT NULL COMMENT '成长值',\n `luckey_count` int(11) DEFAULT NULL COMMENT '剩余抽奖次数',\n `history_integration` int(11) DEFAULT NULL COMMENT '历史积分数量',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_47` (`member_level_id`),\n CONSTRAINT `FK_Reference_47` FOREIGN KEY (`member_level_id`) REFERENCES `ums_member_level` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "password",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "密码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "password"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nickname",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "手机号码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "帐号启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "注册时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gender",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "性别:0->未知;1->男;2->女",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gender"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "birthday",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "生日",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "birthday"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "所做城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "job",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "职业",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "job"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "personalized_signature",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "个性签名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "personalized_signature"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户来源",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "luckey_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "剩余抽奖次数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "luckey_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "history_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "历史积分数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "history_integration"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_47",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_47",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_level_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_level_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_47",
+ "fields": [
+ "member_level_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_level",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_47"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_level",
+ "comment": "会员等级表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_level",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_level` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `growth_point` int(11) DEFAULT NULL,\n `default_status` int(1) DEFAULT NULL COMMENT '是否为默认等级:0->不是;1->是',\n `free_freight_point` decimal(10,2) DEFAULT NULL COMMENT '免运费标准',\n `comment_growth_point` int(11) DEFAULT NULL COMMENT '每次评价获取的成长值',\n `priviledge_free_freight` int(1) DEFAULT NULL COMMENT '是否有免邮特权',\n `priviledge_sign_in` int(1) DEFAULT NULL COMMENT '是否有签到特权',\n `priviledge_comment` int(1) DEFAULT NULL COMMENT '是否有评论获奖励特权',\n `priviledge_promotion` int(1) DEFAULT NULL COMMENT '是否有专享活动特权',\n `priviledge_member_price` int(1) DEFAULT NULL COMMENT '是否有会员价格特权',\n `priviledge_birthday` int(1) DEFAULT NULL COMMENT '是否有生日特权',\n `note` varchar(200) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员等级表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "default_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为默认等级:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "default_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "free_freight_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "免运费标准",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "free_freight_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_growth_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每次评价获取的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_growth_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_free_freight",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有免邮特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_free_freight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_sign_in",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有签到特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_sign_in"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_comment",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有评论获奖励特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_comment"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_promotion",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有专享活动特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_promotion"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_member_price",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有会员价格特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_member_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "priviledge_birthday",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否有生日特权",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "priviledge_birthday"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_login_log",
+ "comment": "会员登录记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_login_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_login_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `ip` varchar(64) DEFAULT NULL,\n `city` varchar(64) DEFAULT NULL,\n `login_type` int(1) DEFAULT NULL COMMENT '登录类型:0->PC;1->android;2->ios;3->小程序',\n `province` varchar(64) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_52` (`member_id`),\n CONSTRAINT `FK_Reference_52` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员登录记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "登录类型:0->PC;1->android;2->ios;3->小程序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_52",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_52",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_52",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_52"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_member_tag_relation",
+ "comment": "用户和标签关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_member_tag_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_member_tag_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `tag_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_53` (`member_id`),\n KEY `FK_Reference_54` (`tag_id`),\n CONSTRAINT `FK_Reference_53` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_54` FOREIGN KEY (`tag_id`) REFERENCES `ums_member_tag` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户和标签关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "tag_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "tag_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_53",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_53",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_54",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_54",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "tag_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "tag_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_53",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_53"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_54",
+ "fields": [
+ "tag_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_tag",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_54"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_product_category_relation",
+ "comment": "会员与产品分类关系表(用户喜欢的分类)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_product_category_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_product_category_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_48` (`member_id`),\n KEY `FK_Reference_49` (`product_category_id`),\n CONSTRAINT `FK_Reference_48` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_49` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员与产品分类关系表(用户喜欢的分类)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_48",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_48",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_49",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_49",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_48",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_48"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_49",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_49"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_receive_address",
+ "comment": "会员收货地址表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_receive_address",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_receive_address` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `name` varchar(100) DEFAULT NULL COMMENT '收货人名称',\n `phone_number` varchar(64) DEFAULT NULL,\n `default_status` int(1) DEFAULT NULL COMMENT '是否为默认',\n `post_code` varchar(100) DEFAULT NULL COMMENT '邮政编码',\n `province` varchar(100) DEFAULT NULL COMMENT '省份/直辖市',\n `city` varchar(100) DEFAULT NULL COMMENT '城市',\n `region` varchar(100) DEFAULT NULL COMMENT '区',\n `detail_address` varchar(128) DEFAULT NULL COMMENT '详细地址(街道)',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_51` (`member_id`),\n CONSTRAINT `FK_Reference_51` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员收货地址表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone_number",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone_number"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "default_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为默认",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "default_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "post_code",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "邮政编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "post_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省份/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "region",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_address",
+ "type": "varchar",
+ "length": 128,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址(街道)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_address"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_51",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_51",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_51",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_51"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_rule_setting",
+ "comment": "会员积分成长规则表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_rule_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_rule_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `continue_sign_day` int(11) DEFAULT NULL COMMENT '连续签到天数',\n `continue_sign_point` int(11) DEFAULT NULL COMMENT '连续签到赠送数量',\n `consume_per_point` decimal(10,2) DEFAULT NULL COMMENT '每消费多少元获取1个点',\n `low_order_amount` decimal(10,2) DEFAULT NULL COMMENT '最低获取点数的订单金额',\n `max_point_per_order` int(11) DEFAULT NULL COMMENT '每笔订单最高获取点数',\n `type` int(1) DEFAULT NULL COMMENT '类型:0->积分规则;1->成长值规则',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员积分成长规则表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_sign_day",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "连续签到天数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_sign_day"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_sign_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "连续签到赠送数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_sign_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "consume_per_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每消费多少元获取1个点",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "consume_per_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_order_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最低获取点数的订单金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_order_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "max_point_per_order",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每笔订单最高获取点数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "max_point_per_order"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "类型:0->积分规则;1->成长值规则",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_statistics_info",
+ "comment": "会员统计信息",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_statistics_info",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_statistics_info` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `consume_amount` decimal(10,2) DEFAULT NULL COMMENT '累计消费金额',\n `order_count` int(11) DEFAULT NULL COMMENT '订单数量',\n `coupon_count` int(11) DEFAULT NULL COMMENT '优惠券数量',\n `comment_count` int(11) DEFAULT NULL COMMENT '评价数',\n `return_order_count` int(11) DEFAULT NULL COMMENT '退货数量',\n `login_count` int(11) DEFAULT NULL COMMENT '登录次数',\n `attend_count` int(11) DEFAULT NULL COMMENT '关注数量',\n `fans_count` int(11) DEFAULT NULL COMMENT '粉丝数量',\n `collect_product_count` int(11) DEFAULT NULL,\n `collect_subject_count` int(11) DEFAULT NULL,\n `collect_topic_count` int(11) DEFAULT NULL,\n `collect_comment_count` int(11) DEFAULT NULL,\n `invite_friend_count` int(11) DEFAULT NULL,\n `recent_order_time` datetime DEFAULT NULL COMMENT '最后一次下订单时间',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_50` (`member_id`),\n CONSTRAINT `FK_Reference_50` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员统计信息'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "consume_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "累计消费金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "consume_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "登录次数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attend_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "关注数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attend_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "fans_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "粉丝数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "fans_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_subject_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_subject_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_topic_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_topic_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "invite_friend_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "invite_friend_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recent_order_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最后一次下订单时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recent_order_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_50",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_50",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_50",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_50"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_tag",
+ "comment": "用户标签表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_tag",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_tag` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `finish_order_count` int(11) DEFAULT NULL COMMENT '自动打标签完成订单数量',\n `finish_order_amount` decimal(10,2) DEFAULT NULL COMMENT '自动打标签完成订单金额',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户标签表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动打标签完成订单数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_order_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动打标签完成订单金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_order_amount"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_member_task",
+ "comment": "会员任务表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_member_task",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_member_task` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `growth` int(11) DEFAULT NULL COMMENT '赠送成长值',\n `intergration` int(11) DEFAULT NULL COMMENT '赠送积分',\n `type` int(1) DEFAULT NULL COMMENT '任务类型:0->新手任务;1->日常任务',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='会员任务表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "intergration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "intergration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "任务类型:0->新手任务;1->日常任务",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_menu",
+ "comment": "后台菜单表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_menu",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_menu` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `parent_id` bigint(20) DEFAULT NULL COMMENT '父级ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `title` varchar(100) DEFAULT NULL COMMENT '菜单名称',\n `level` int(4) DEFAULT NULL COMMENT '菜单级数',\n `sort` int(4) DEFAULT NULL COMMENT '菜单排序',\n `name` varchar(100) DEFAULT NULL COMMENT '前端名称',\n `icon` varchar(200) DEFAULT NULL COMMENT '前端图标',\n `hidden` int(1) DEFAULT NULL COMMENT '前端隐藏',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_80` (`parent_id`),\n CONSTRAINT `FK_Reference_80` FOREIGN KEY (`parent_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台菜单表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "level",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单级数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "level"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "hidden",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端隐藏",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "hidden"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_80",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_80",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "parent_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "parent_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_80",
+ "fields": [
+ "parent_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_80"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_permission",
+ "comment": "后台用户权限表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_permission",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_permission` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `pid` bigint(20) DEFAULT NULL COMMENT '父级权限id',\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `value` varchar(200) DEFAULT NULL COMMENT '权限值',\n `icon` varchar(500) DEFAULT NULL COMMENT '图标',\n `type` int(1) DEFAULT NULL COMMENT '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',\n `uri` varchar(200) DEFAULT NULL COMMENT '前端资源路径',\n `status` int(1) DEFAULT NULL COMMENT '启用状态;0->禁用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_68` (`pid`),\n CONSTRAINT `FK_Reference_68` FOREIGN KEY (`pid`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户权限表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pid",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级权限id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pid"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "value",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "value"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "uri",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端资源路径",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "uri"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态;0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_68",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_68",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "pid",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "pid"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_68",
+ "fields": [
+ "pid"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_68"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource",
+ "comment": "后台资源表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL COMMENT '资源分类ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '资源名称',\n `url` varchar(200) DEFAULT NULL COMMENT '资源URL',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_85` (`category_id`),\n CONSTRAINT `FK_Reference_85` FOREIGN KEY (`category_id`) REFERENCES `ums_resource_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台资源表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源分类ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "url",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源URL",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "url"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_85",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_85",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_85",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_85"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource_category",
+ "comment": "资源分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '分类名称',\n `sort` int(4) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='资源分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role",
+ "comment": "后台用户角色表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n `admin_count` int(11) DEFAULT NULL COMMENT '后台用户数量',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `status` int(1) DEFAULT '1' COMMENT '启用状态:0->禁用;1->启用',\n `sort` int(11) DEFAULT '0',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "后台用户数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_menu_relation",
+ "comment": "后台角色菜单关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_menu_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_menu_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `menu_id` bigint(20) DEFAULT NULL COMMENT '菜单ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_81` (`role_id`),\n KEY `FK_Reference_82` (`menu_id`),\n CONSTRAINT `FK_Reference_81` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_82` FOREIGN KEY (`menu_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色菜单关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "menu_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "menu_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_81",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_81",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_82",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_82",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "menu_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "menu_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_81",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_81"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_82",
+ "fields": [
+ "menu_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_82"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_permission_relation",
+ "comment": "后台用户角色和权限关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_71` (`role_id`),\n KEY `FK_Reference_72` (`permission_id`),\n CONSTRAINT `FK_Reference_71` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_72` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色和权限关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_71",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_71",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_72",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_72",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_71",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_71"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_72",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_72"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_resource_relation",
+ "comment": "后台角色资源关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_resource_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_resource_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `resource_id` bigint(20) DEFAULT NULL COMMENT '资源ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_83` (`role_id`),\n KEY `FK_Reference_84` (`resource_id`),\n CONSTRAINT `FK_Reference_83` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_84` FOREIGN KEY (`resource_id`) REFERENCES `ums_resource` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色资源关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "resource_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "resource_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_83",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_83",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_84",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_84",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "resource_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "resource_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_83",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_83"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_84",
+ "fields": [
+ "resource_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_84"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "会员模块数据库模型",
+ "paperWidth": 3,
+ "paperHeight": 1,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_growth_change_history",
+ "x": 280,
+ "y": 450,
+ "width": 230,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_integration_change_history",
+ "x": 10,
+ "y": 340,
+ "width": 259,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_integration_consume_setting",
+ "x": 310,
+ "y": 790,
+ "width": 270,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member",
+ "x": 610,
+ "y": 290,
+ "width": 248,
+ "height": 431,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_level",
+ "x": 40,
+ "y": 0,
+ "width": 223,
+ "height": 311,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_login_log",
+ "x": 30,
+ "y": 580,
+ "width": 193,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_member_tag_relation",
+ "x": 940,
+ "y": 380,
+ "width": 279,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_product_category_relation",
+ "x": 890,
+ "y": 40,
+ "width": 317,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_receive_address",
+ "x": 570,
+ "y": 10,
+ "width": 247,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_rule_setting",
+ "x": 50,
+ "y": 790,
+ "width": 237,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_statistics_info",
+ "x": 310,
+ "y": 10,
+ "width": 228,
+ "height": 371,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_tag",
+ "x": 930,
+ "y": 540,
+ "width": 241,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_member_task",
+ "x": 620,
+ "y": 790,
+ "width": 158,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_56",
+ "sourceTableName": "ums_growth_change_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 525,
+ "y": 520
+ },
+ {
+ "x": 595,
+ "y": 520
+ }
+ ],
+ "label": {
+ "x": 280,
+ "y": 20,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_55",
+ "sourceTableName": "ums_integration_change_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 284,
+ "y": 430
+ },
+ {
+ "x": 595,
+ "y": 430
+ }
+ ],
+ "label": {
+ "x": 152,
+ "y": 140,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_47",
+ "sourceTableName": "ums_member",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 595,
+ "y": 510
+ },
+ {
+ "x": 560,
+ "y": 510
+ },
+ {
+ "x": 560,
+ "y": 240
+ },
+ {
+ "x": 278,
+ "y": 240
+ }
+ ],
+ "label": {
+ "x": 610,
+ "y": 170,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_52",
+ "sourceTableName": "ums_member_login_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 238,
+ "y": 690
+ },
+ {
+ "x": 595,
+ "y": 690
+ }
+ ],
+ "label": {
+ "x": 233,
+ "y": 187,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_53",
+ "sourceTableName": "ums_member_member_tag_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 925,
+ "y": 440
+ },
+ {
+ "x": 873,
+ "y": 440
+ }
+ ],
+ "label": {
+ "x": 940,
+ "y": 100,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_48",
+ "sourceTableName": "ums_member_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1070,
+ "y": 166
+ },
+ {
+ "x": 1070,
+ "y": 340
+ },
+ {
+ "x": 873,
+ "y": 340
+ }
+ ],
+ "label": {
+ "x": 750,
+ "y": 40,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_51",
+ "sourceTableName": "ums_member_receive_address",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 640,
+ "y": 276
+ },
+ {
+ "x": 640,
+ "y": 275
+ }
+ ],
+ "label": {
+ "x": 520,
+ "y": 84,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_50",
+ "sourceTableName": "ums_member_statistics_info",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 553,
+ "y": 310
+ },
+ {
+ "x": 595,
+ "y": 310
+ }
+ ],
+ "label": {
+ "x": 431,
+ "y": 10,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_54",
+ "sourceTableName": "ums_member_member_tag_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1060,
+ "y": 506
+ },
+ {
+ "x": 1060,
+ "y": 525
+ },
+ {
+ "x": 1060,
+ "y": 525
+ },
+ {
+ "x": 1060,
+ "y": 525
+ }
+ ],
+ "label": {
+ "x": 778,
+ "y": 154,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/document/navicat/\345\225\206\345\223\201\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/\345\225\206\345\223\201\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..e290d35a
--- /dev/null
+++ "b/document/navicat/\345\225\206\345\223\201\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,7697 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50799,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_album",
+ "comment": "相册表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_album",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_album` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `cover_pic` varchar(1000) DEFAULT NULL,\n `pic_count` int(11) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n `description` varchar(1000) DEFAULT NULL,\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='相册表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "cover_pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "cover_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_album_pic",
+ "comment": "画册图片表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_album_pic",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_album_pic` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `album_id` bigint(20) DEFAULT NULL,\n `pic` varchar(1000) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_25` (`album_id`),\n CONSTRAINT `FK_Reference_25` FOREIGN KEY (`album_id`) REFERENCES `pms_album` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='画册图片表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "album_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "album_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_25",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_25",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "album_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "album_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_25",
+ "fields": [
+ "album_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_album",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_25"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_brand",
+ "comment": "品牌表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_brand",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_brand` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `first_letter` varchar(8) DEFAULT NULL COMMENT '首字母',\n `sort` int(11) DEFAULT NULL,\n `factory_status` int(1) DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',\n `show_status` int(1) DEFAULT NULL,\n `product_count` int(11) DEFAULT NULL COMMENT '产品数量',\n `product_comment_count` int(11) DEFAULT NULL COMMENT '产品评论数量',\n `logo` varchar(255) DEFAULT NULL COMMENT '品牌logo',\n `big_pic` varchar(255) DEFAULT NULL COMMENT '专区大图',\n `brand_story` text COMMENT '品牌故事',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='品牌表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_letter",
+ "type": "varchar",
+ "length": 8,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首字母",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_letter"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "factory_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为品牌制造商:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "factory_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_comment_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品评论数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_comment_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "logo",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌logo",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "logo"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "big_pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "专区大图",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "big_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_story",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌故事",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_story"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_comment",
+ "comment": "商品评价表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_comment",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_comment` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `product_name` varchar(255) DEFAULT NULL,\n `star` int(3) DEFAULT NULL COMMENT '评价星数:0->5',\n `member_ip` varchar(64) DEFAULT NULL COMMENT '评价的ip',\n `create_time` datetime DEFAULT NULL,\n `show_status` int(1) DEFAULT NULL,\n `product_attribute` varchar(255) DEFAULT NULL COMMENT '购买时的商品属性',\n `collect_couont` int(11) DEFAULT NULL,\n `read_count` int(11) DEFAULT NULL,\n `content` text,\n `pics` varchar(1000) DEFAULT NULL COMMENT '上传图片地址,以逗号隔开',\n `member_icon` varchar(255) DEFAULT NULL COMMENT '评论用户头像',\n `replay_count` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_23` (`product_id`),\n CONSTRAINT `FK_Reference_23` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品评价表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "star",
+ "type": "int",
+ "length": 3,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价星数:0->5",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "star"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价的ip",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买时的商品属性",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "collect_couont",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "collect_couont"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "read_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "read_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pics",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上传图片地址,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评论用户头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "replay_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "replay_count"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_23",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_23",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_23",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_23"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_comment_replay",
+ "comment": "产品评价回复表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_comment_replay",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_comment_replay` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `comment_id` bigint(20) DEFAULT NULL,\n `member_nick_name` varchar(255) DEFAULT NULL,\n `member_icon` varchar(255) DEFAULT NULL,\n `content` varchar(1000) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `type` int(1) DEFAULT NULL COMMENT '评论人员类型;0->会员;1->管理员',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_24` (`comment_id`),\n CONSTRAINT `FK_Reference_24` FOREIGN KEY (`comment_id`) REFERENCES `pms_comment` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品评价回复表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nick_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "content",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评论人员类型;0->会员;1->管理员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_24",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_24",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "comment_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "comment_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_24",
+ "fields": [
+ "comment_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_comment",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_24"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_feight_template",
+ "comment": "运费模版",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_feight_template",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_feight_template` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `charge_type` int(1) DEFAULT NULL COMMENT '计费类型:0->按重量;1->按件数',\n `first_weight` decimal(10,2) DEFAULT NULL COMMENT '首重kg',\n `first_fee` decimal(10,2) DEFAULT NULL COMMENT '首费(元)',\n `continue_weight` decimal(10,2) DEFAULT NULL,\n `continme_fee` decimal(10,2) DEFAULT NULL,\n `dest` varchar(255) DEFAULT NULL COMMENT '目的地(省、市)',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='运费模版'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "charge_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "计费类型:0->按重量;1->按件数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "charge_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首重kg",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "first_fee",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "首费(元)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "first_fee"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continue_weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continue_weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "continme_fee",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "continme_fee"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "dest",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "目的地(省、市)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "dest"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_member_price",
+ "comment": "商品会员价格表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_member_price",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_member_price` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `member_level_id` bigint(20) DEFAULT NULL,\n `member_price` decimal(10,2) DEFAULT NULL COMMENT '会员价格',\n `member_level_name` varchar(100) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_60` (`member_level_id`),\n KEY `FK_Reference_9` (`product_id`),\n CONSTRAINT `FK_Reference_60` FOREIGN KEY (`member_level_id`) REFERENCES `ums_member_level` (`id`),\n CONSTRAINT `FK_Reference_9` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品会员价格表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_60",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_60",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_level_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_level_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_9",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_9",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_60",
+ "fields": [
+ "member_level_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member_level",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_60"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_9",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_9"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute",
+ "comment": "商品属性参数表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_attribute_category_id` bigint(20) DEFAULT NULL,\n `name` varchar(64) DEFAULT NULL,\n `select_type` int(1) DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;',\n `input_type` int(1) DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',\n `input_list` varchar(255) DEFAULT NULL COMMENT '可选值列表,以逗号隔开',\n `sort` int(11) DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',\n `filter_type` int(1) DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',\n `search_type` int(1) DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',\n `related_status` int(1) DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',\n `hand_add_status` int(1) DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',\n `type` int(1) DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_12` (`product_attribute_category_id`),\n CONSTRAINT `FK_Reference_12` FOREIGN KEY (`product_attribute_category_id`) REFERENCES `pms_product_attribute_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品属性参数表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "select_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "select_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "input_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性录入方式:0->手工录入;1->从列表中选取",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "input_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "input_list",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可选值列表,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "input_list"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序字段:最高的可以单独上传图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "filter_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类筛选样式:1->普通;1->颜色",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "filter_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "search_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "检索类型;0->不需要进行检索;1->关键字检索;2->范围检索",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "search_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "related_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "相同属性产品是否关联;0->不关联;1->关联",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "related_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "hand_add_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否支持手动新增;0->不支持;1->支持",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "hand_add_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性的类型;0->规格;1->参数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_12",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_12",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_12",
+ "fields": [
+ "product_attribute_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_12"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute_category",
+ "comment": "产品属性分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(64) DEFAULT NULL,\n `attribute_count` int(11) DEFAULT NULL COMMENT '属性数量',\n `param_count` int(11) DEFAULT NULL COMMENT '参数数量',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品属性分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "attribute_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "属性数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "attribute_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "param_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "参数数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "param_count"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_attribute_value",
+ "comment": "存储产品参数信息的表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_attribute_value",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_attribute_value` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_attribute_id` bigint(20) DEFAULT NULL,\n `value` varchar(64) DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_14` (`product_id`),\n KEY `FK_Reference_15` (`product_attribute_id`),\n CONSTRAINT `FK_Reference_14` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`),\n CONSTRAINT `FK_Reference_15` FOREIGN KEY (`product_attribute_id`) REFERENCES `pms_product_attribute` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='存储产品参数信息的表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "value",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "value"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_14",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_14",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_15",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_15",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_14",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_14"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_15",
+ "fields": [
+ "product_attribute_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_15"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_category",
+ "comment": "产品分类",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `parent_id` bigint(20) DEFAULT NULL COMMENT '上机分类的编号:0表示一级分类',\n `name` varchar(64) DEFAULT NULL,\n `level` int(1) DEFAULT NULL COMMENT '分类级别:0->1级;1->2级',\n `product_count` int(11) DEFAULT NULL,\n `product_unit` varchar(64) DEFAULT NULL,\n `nav_status` int(1) DEFAULT NULL COMMENT '是否显示在导航栏:0->不显示;1->显示',\n `show_status` int(1) DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',\n `sort` int(11) DEFAULT NULL,\n `icon` varchar(255) DEFAULT NULL COMMENT '图标',\n `keywords` varchar(255) DEFAULT NULL,\n `description` text COMMENT '描述',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_20` (`parent_id`),\n CONSTRAINT `FK_Reference_20` FOREIGN KEY (`parent_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品分类'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上机分类的编号:0表示一级分类",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "level",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类级别:0->1级;1->2级",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "level"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_unit",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nav_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否显示在导航栏:0->不显示;1->显示",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nav_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "show_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "显示状态:0->不显示;1->显示",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "show_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "keywords",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "keywords"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_20",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_20",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "parent_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "parent_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_20",
+ "fields": [
+ "parent_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_20"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_category_attribute_relation",
+ "comment": "产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_category_attribute_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_category_attribute_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_category_id` bigint(20) DEFAULT NULL,\n `product_attribute_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_21` (`product_category_id`),\n KEY `FK_Reference_22` (`product_attribute_id`),\n CONSTRAINT `FK_Reference_21` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`),\n CONSTRAINT `FK_Reference_22` FOREIGN KEY (`product_attribute_id`) REFERENCES `pms_product_attribute` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_21",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_21",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_22",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_22",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_21",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_21"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_22",
+ "fields": [
+ "product_attribute_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_22"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_full_reduction",
+ "comment": "产品满减表(只针对同商品)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_full_reduction",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_full_reduction` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `full_price` decimal(10,2) DEFAULT NULL,\n `reduce_price` decimal(10,2) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_11` (`product_id`),\n CONSTRAINT `FK_Reference_11` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品满减表(只针对同商品)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "full_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "full_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "reduce_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "reduce_price"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_11",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_11",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_11",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_11"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_ladder",
+ "comment": "产品阶梯价格表(只针对同商品)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_ladder",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_ladder` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `count` int(11) DEFAULT NULL COMMENT '满足的商品数量',\n `discount` decimal(10,2) DEFAULT NULL COMMENT '折扣',\n `price` decimal(10,2) DEFAULT NULL COMMENT '折后价格',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_10` (`product_id`),\n CONSTRAINT `FK_Reference_10` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品阶梯价格表(只针对同商品)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "满足的商品数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "discount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "折扣",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "discount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "折后价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_10",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_10",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_10",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_10"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_operate_log",
+ "comment": "",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_operate_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:55",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_operate_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `price_old` decimal(10,2) DEFAULT NULL,\n `price_new` decimal(10,2) DEFAULT NULL,\n `sale_price_old` decimal(10,2) DEFAULT NULL,\n `sale_price_new` decimal(10,2) DEFAULT NULL,\n `gift_point_old` int(11) DEFAULT NULL COMMENT '赠送的积分',\n `gift_point_new` int(11) DEFAULT NULL,\n `use_point_limit_old` int(11) DEFAULT NULL,\n `use_point_limit_new` int(11) DEFAULT NULL,\n `operate_man` varchar(64) DEFAULT NULL COMMENT '操作人',\n `create_time` datetime DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_4` (`product_id`),\n CONSTRAINT `FK_Reference_4` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price_old",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price_new",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale_price_old",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale_price_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale_price_new",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale_price_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point_old",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point_new",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit_old",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit_old"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit_new",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit_new"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_4",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_4",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_4",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_4"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product_vertify_record",
+ "comment": "商品审核记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product_vertify_record",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product_vertify_record` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `vertify_man` varchar(64) DEFAULT NULL COMMENT '审核人',\n `status` int(1) DEFAULT NULL COMMENT '审核后的状态:0->未通过;2->已通过',\n `detail` varchar(255) DEFAULT NULL COMMENT '反馈详情',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_3` (`product_id`),\n CONSTRAINT `FK_Reference_3` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品审核记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "vertify_man",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "vertify_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核后的状态:0->未通过;2->已通过",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "反馈详情",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_3",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_3",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_3",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_3"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_sku_stock",
+ "comment": "sku的库存",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_sku_stock",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_sku_stock` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `sku_code` varchar(64) NOT NULL COMMENT 'sku编码',\n `price` decimal(10,2) DEFAULT NULL,\n `stock` int(11) DEFAULT '0' COMMENT '库存',\n `low_stock` int(11) DEFAULT NULL COMMENT '预警库存',\n `pic` varchar(255) DEFAULT NULL COMMENT '展示图片',\n `sale` int(11) DEFAULT NULL COMMENT '销量',\n `promotion_price` decimal(10,2) DEFAULT NULL COMMENT '单品促销价格',\n `lock_stock` int(11) DEFAULT '0' COMMENT '锁定库存',\n `sp_data` varchar(500) DEFAULT NULL COMMENT '商品销售属性,json格式',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_2` (`product_id`),\n CONSTRAINT `FK_Reference_2` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='sku的库存'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sku_code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "sku编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "预警库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "展示图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "单品促销价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "lock_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "锁定库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "lock_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sp_data",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性,json格式",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sp_data"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_2",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_2",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_2",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_2"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "pms_product",
+ "comment": "商品信息",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "pms_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 65536,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `pms_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `brand_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n `feight_template_id` bigint(20) DEFAULT NULL,\n `product_attribute_category_id` bigint(20) DEFAULT NULL,\n `name` varchar(64) NOT NULL,\n `pic` varchar(255) DEFAULT NULL,\n `product_sn` varchar(64) NOT NULL COMMENT '货号',\n `delete_status` int(1) DEFAULT NULL COMMENT '删除状态:0->未删除;1->已删除',\n `publish_status` int(1) DEFAULT NULL COMMENT '上架状态:0->下架;1->上架',\n `new_status` int(1) DEFAULT NULL COMMENT '新品状态:0->不是新品;1->新品',\n `recommand_status` int(1) DEFAULT NULL COMMENT '推荐状态;0->不推荐;1->推荐',\n `verify_status` int(1) DEFAULT NULL COMMENT '审核状态:0->未审核;1->审核通过',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n `sale` int(11) DEFAULT NULL COMMENT '销量',\n `price` decimal(10,2) DEFAULT NULL,\n `promotion_price` decimal(10,2) DEFAULT NULL COMMENT '促销价格',\n `gift_growth` int(11) DEFAULT '0' COMMENT '赠送的成长值',\n `gift_point` int(11) DEFAULT '0' COMMENT '赠送的积分',\n `use_point_limit` int(11) DEFAULT NULL COMMENT '限制使用的积分数',\n `sub_title` varchar(255) DEFAULT NULL COMMENT '副标题',\n `description` text COMMENT '商品描述',\n `original_price` decimal(10,2) DEFAULT NULL COMMENT '市场价',\n `stock` int(11) DEFAULT NULL COMMENT '库存',\n `low_stock` int(11) DEFAULT NULL COMMENT '库存预警值',\n `unit` varchar(16) DEFAULT NULL COMMENT '单位',\n `weight` decimal(10,2) DEFAULT NULL COMMENT '商品重量,默认为克',\n `preview_status` int(1) DEFAULT NULL COMMENT '是否为预告商品:0->不是;1->是',\n `service_ids` varchar(64) DEFAULT NULL COMMENT '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',\n `keywords` varchar(255) DEFAULT NULL,\n `note` varchar(255) DEFAULT NULL,\n `album_pics` varchar(255) DEFAULT NULL COMMENT '画册图片,连产品图片限制为5张,以逗号分割',\n `detail_title` varchar(255) DEFAULT NULL,\n `detail_desc` text,\n `detail_html` text COMMENT '产品详情网页内容',\n `detail_mobile_html` text COMMENT '移动端网页详情',\n `promotion_start_time` datetime DEFAULT NULL COMMENT '促销开始时间',\n `promotion_end_time` datetime DEFAULT NULL COMMENT '促销结束时间',\n `promotion_per_limit` int(11) DEFAULT NULL COMMENT '活动限购数量',\n `promotion_type` int(1) DEFAULT NULL COMMENT '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',\n `product_category_name` varchar(255) DEFAULT NULL COMMENT '产品分类名称',\n `brand_name` varchar(255) DEFAULT NULL COMMENT '品牌名称',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_1` (`brand_id`),\n KEY `FK_Reference_13` (`product_attribute_category_id`),\n KEY `FK_Reference_5` (`product_category_id`),\n KEY `FK_Reference_6` (`feight_template_id`),\n CONSTRAINT `FK_Reference_1` FOREIGN KEY (`brand_id`) REFERENCES `pms_brand` (`id`),\n CONSTRAINT `FK_Reference_13` FOREIGN KEY (`product_attribute_category_id`) REFERENCES `pms_product_attribute_category` (`id`),\n CONSTRAINT `FK_Reference_5` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`),\n CONSTRAINT `FK_Reference_6` FOREIGN KEY (`feight_template_id`) REFERENCES `pms_feight_template` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品信息'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "feight_template_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "feight_template_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attribute_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attribute_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "货号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "删除状态:0->未删除;1->已删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "publish_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上架状态:0->下架;1->上架",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "publish_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "new_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "新品状态:0->不是新品;1->新品",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "new_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommand_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "推荐状态;0->不推荐;1->推荐",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommand_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "verify_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "审核状态:0->未审核;1->审核通过",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "verify_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sale",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sale"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_point",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "赠送的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_point_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限制使用的积分数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_point_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sub_title",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "副标题",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sub_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "original_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "市场价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "original_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "low_stock",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "库存预警值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "low_stock"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "unit",
+ "type": "varchar",
+ "length": 16,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "单位",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "weight",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品重量,默认为克",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "weight"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "preview_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否为预告商品:0->不是;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "preview_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "service_ids",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "service_ids"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "keywords",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "keywords"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "album_pics",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "画册图片,连产品图片限制为5张,以逗号分割",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "album_pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_title",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_desc",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_desc"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_html",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品详情网页内容",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_html"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_mobile_html",
+ "type": "text",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "移动端网页详情",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_mobile_html"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销开始时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销结束时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_per_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "活动限购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_per_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_name",
+ "type": "varchar",
+ "length": 255,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "品牌名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_1",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_1",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "brand_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "brand_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_13",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_13",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_attribute_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_attribute_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_5",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_5",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_6",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_6",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "feight_template_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "feight_template_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_1",
+ "fields": [
+ "brand_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_brand",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_1"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_13",
+ "fields": [
+ "product_attribute_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_attribute_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_13"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_5",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_5"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_6",
+ "fields": [
+ "feight_template_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_feight_template",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_6"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "商品模块数据库表模型",
+ "paperWidth": 4,
+ "paperHeight": 1,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_album",
+ "x": 460,
+ "y": 940,
+ "width": 187,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_album_pic",
+ "x": 110,
+ "y": 990,
+ "width": 153,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_brand",
+ "x": 1030,
+ "y": 800,
+ "width": 220,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_comment",
+ "x": 70,
+ "y": 630,
+ "width": 233,
+ "height": 351,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_comment_replay",
+ "x": 40,
+ "y": 310,
+ "width": 233,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_feight_template",
+ "x": 1270,
+ "y": 700,
+ "width": 218,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_member_price",
+ "x": 380,
+ "y": 750,
+ "width": 237,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product",
+ "x": 690,
+ "y": 200,
+ "width": 262,
+ "height": 891,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute",
+ "x": 1430,
+ "y": 410,
+ "width": 262,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute_category",
+ "x": 1020,
+ "y": 370,
+ "width": 258,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_attribute_value",
+ "x": 990,
+ "y": 550,
+ "width": 234,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_category",
+ "x": 1070,
+ "y": 20,
+ "width": 189,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_category_attribute_relation",
+ "x": 1330,
+ "y": 90,
+ "width": 321,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_full_reduction",
+ "x": 740,
+ "y": 10,
+ "width": 224,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_ladder",
+ "x": 470,
+ "y": 10,
+ "width": 175,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_operate_log",
+ "x": 240,
+ "y": 10,
+ "width": 214,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_product_vertify_record",
+ "x": 280,
+ "y": 300,
+ "width": 226,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "pms_sku_stock",
+ "x": 380,
+ "y": 470,
+ "width": 218,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_25",
+ "sourceTableName": "pms_album_pic",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 278,
+ "y": 1050
+ },
+ {
+ "x": 361,
+ "y": 1050
+ },
+ {
+ "x": 361,
+ "y": 1030
+ },
+ {
+ "x": 445,
+ "y": 1030
+ }
+ ],
+ "label": {
+ "x": 110,
+ "y": 10,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_24",
+ "sourceTableName": "pms_comment_replay",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 160,
+ "y": 516
+ },
+ {
+ "x": 160,
+ "y": 560
+ },
+ {
+ "x": 130,
+ "y": 560
+ },
+ {
+ "x": 130,
+ "y": 615
+ }
+ ],
+ "label": {
+ "x": 168,
+ "y": 270,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_23",
+ "sourceTableName": "pms_comment",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 318,
+ "y": 920
+ },
+ {
+ "x": 675,
+ "y": 920
+ }
+ ],
+ "label": {
+ "x": 314,
+ "y": 270,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_9",
+ "sourceTableName": "pms_member_price",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 632,
+ "y": 830
+ },
+ {
+ "x": 660,
+ "y": 830
+ },
+ {
+ "x": 660,
+ "y": 830
+ },
+ {
+ "x": 675,
+ "y": 830
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 270,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_1",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 967,
+ "y": 920
+ },
+ {
+ "x": 1015,
+ "y": 920
+ }
+ ],
+ "label": {
+ "x": 963,
+ "y": 200,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_6",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 967,
+ "y": 820
+ },
+ {
+ "x": 1020,
+ "y": 820
+ },
+ {
+ "x": 1020,
+ "y": 790
+ },
+ {
+ "x": 1255,
+ "y": 790
+ }
+ ],
+ "label": {
+ "x": 963,
+ "y": 200,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_13",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 967,
+ "y": 420
+ },
+ {
+ "x": 1050,
+ "y": 420
+ },
+ {
+ "x": 1050,
+ "y": 420
+ },
+ {
+ "x": 1005,
+ "y": 420
+ }
+ ],
+ "label": {
+ "x": 963,
+ "y": 200,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_12",
+ "sourceTableName": "pms_product_attribute",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1415,
+ "y": 540
+ },
+ {
+ "x": 1360,
+ "y": 540
+ },
+ {
+ "x": 1360,
+ "y": 420
+ },
+ {
+ "x": 1293,
+ "y": 420
+ }
+ ],
+ "label": {
+ "x": 512,
+ "y": 270,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_14",
+ "sourceTableName": "pms_product_attribute_value",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 975,
+ "y": 610
+ },
+ {
+ "x": 967,
+ "y": 610
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 520,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_15",
+ "sourceTableName": "pms_product_attribute_value",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1239,
+ "y": 590
+ },
+ {
+ "x": 1330,
+ "y": 590
+ },
+ {
+ "x": 1330,
+ "y": 570
+ },
+ {
+ "x": 1415,
+ "y": 570
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 446,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_5",
+ "sourceTableName": "pms_product",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 967,
+ "y": 230
+ },
+ {
+ "x": 1040,
+ "y": 230
+ },
+ {
+ "x": 1040,
+ "y": 150
+ },
+ {
+ "x": 1055,
+ "y": 150
+ }
+ ],
+ "label": {
+ "x": 963,
+ "y": 200,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_20",
+ "sourceTableName": "pms_product_category",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1274,
+ "y": 280
+ },
+ {
+ "x": 1290,
+ "y": 280
+ },
+ {
+ "x": 1290,
+ "y": 340
+ },
+ {
+ "x": 1230,
+ "y": 340
+ },
+ {
+ "x": 1230,
+ "y": 326
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 20,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_21",
+ "sourceTableName": "pms_product_category_attribute_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1315,
+ "y": 150
+ },
+ {
+ "x": 1320,
+ "y": 150
+ },
+ {
+ "x": 1320,
+ "y": 150
+ },
+ {
+ "x": 1274,
+ "y": 150
+ }
+ ],
+ "label": {
+ "x": 303,
+ "y": 90,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_22",
+ "sourceTableName": "pms_product_category_attribute_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 1490,
+ "y": 216
+ },
+ {
+ "x": 1490,
+ "y": 400
+ },
+ {
+ "x": 1560,
+ "y": 400
+ },
+ {
+ "x": 1560,
+ "y": 395
+ }
+ ],
+ "label": {
+ "x": 470,
+ "y": 90,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_11",
+ "sourceTableName": "pms_product_full_reduction",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 820,
+ "y": 156
+ },
+ {
+ "x": 820,
+ "y": 200
+ },
+ {
+ "x": 820,
+ "y": 200
+ },
+ {
+ "x": 820,
+ "y": 185
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 10,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_10",
+ "sourceTableName": "pms_product_ladder",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 660,
+ "y": 80
+ },
+ {
+ "x": 690,
+ "y": 80
+ },
+ {
+ "x": 690,
+ "y": 260
+ },
+ {
+ "x": 675,
+ "y": 260
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 10,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_4",
+ "sourceTableName": "pms_product_operate_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 469,
+ "y": 220
+ },
+ {
+ "x": 550,
+ "y": 220
+ },
+ {
+ "x": 550,
+ "y": 390
+ },
+ {
+ "x": 675,
+ "y": 390
+ }
+ ],
+ "label": {
+ "x": 240,
+ "y": 10,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_3",
+ "sourceTableName": "pms_product_vertify_record",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 521,
+ "y": 380
+ },
+ {
+ "x": 530,
+ "y": 380
+ },
+ {
+ "x": 530,
+ "y": 430
+ },
+ {
+ "x": 675,
+ "y": 430
+ }
+ ],
+ "label": {
+ "x": 280,
+ "y": 270,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_2",
+ "sourceTableName": "pms_sku_stock",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 613,
+ "y": 620
+ },
+ {
+ "x": 675,
+ "y": 620
+ }
+ ],
+ "label": {
+ "x": 300,
+ "y": 270,
+ "width": 114,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/document/navicat/\346\235\203\351\231\220\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/\346\235\203\351\231\220\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..3c54e2b5
--- /dev/null
+++ "b/document/navicat/\346\235\203\351\231\220\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,4657 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50799,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin",
+ "comment": "后台用户表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `username` varchar(64) DEFAULT NULL COMMENT '用户名',\n `password` varchar(64) DEFAULT NULL COMMENT '密码',\n `icon` varchar(500) DEFAULT NULL COMMENT '头像',\n `email` varchar(100) DEFAULT NULL COMMENT '邮箱',\n `nick_name` varchar(200) DEFAULT NULL COMMENT '昵称',\n `note` varchar(500) DEFAULT NULL COMMENT '备注信息',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `login_time` datetime DEFAULT NULL COMMENT '最后登录时间',\n `status` int(1) DEFAULT '1' COMMENT '帐号启用状态:0->禁用;1->启用',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "password",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "密码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "password"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "头像",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "email",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "邮箱",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "email"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "nick_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "nick_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注信息",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "login_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "最后登录时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "login_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "帐号启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_login_log",
+ "comment": "后台用户登录日志表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_login_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_login_log` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `ip` varchar(64) DEFAULT NULL,\n `address` varchar(100) DEFAULT NULL,\n `user_agent` varchar(100) DEFAULT NULL COMMENT '浏览器登录类型',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_46` (`admin_id`),\n CONSTRAINT `FK_Reference_46` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户登录日志表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "ip",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "ip"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "address",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "address"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "user_agent",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "浏览器登录类型",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "user_agent"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_46",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_46",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_46",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_46"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_permission_relation",
+ "comment": "后台用户和权限关系表(除角色中定义的权限以外的加减权限)",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n `type` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_73` (`admin_id`),\n KEY `FK_Reference_74` (`permission_id`),\n CONSTRAINT `FK_Reference_73` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_74` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和权限关系表(除角色中定义的权限以外的加减权限)'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_73",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_73",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_74",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_74",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_73",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_73"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_74",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_74"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_admin_role_relation",
+ "comment": "后台用户和角色关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_admin_role_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_admin_role_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `admin_id` bigint(20) DEFAULT NULL,\n `role_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_69` (`admin_id`),\n KEY `FK_Reference_70` (`role_id`),\n CONSTRAINT `FK_Reference_69` FOREIGN KEY (`admin_id`) REFERENCES `ums_admin` (`id`),\n CONSTRAINT `FK_Reference_70` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和角色关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_69",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_69",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "admin_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "admin_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_70",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_70",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_69",
+ "fields": [
+ "admin_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_admin",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_69"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_70",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_70"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_growth_change_history",
+ "comment": "成长值变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_growth_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_growth_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_56` (`member_id`),\n CONSTRAINT `FK_Reference_56` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='成长值变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_56",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_56",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_56",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_56"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_change_history",
+ "comment": "积分变化历史记录表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_change_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_change_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `create_time` datetime DEFAULT NULL,\n `change_type` int(1) DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',\n `change_count` int(11) DEFAULT NULL COMMENT '积分改变数量',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人员',\n `operate_note` varchar(200) DEFAULT NULL COMMENT '操作备注',\n `source_type` int(1) DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_55` (`member_id`),\n CONSTRAINT `FK_Reference_55` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分变化历史记录表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "改变类型:0->增加;1->减少",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "change_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分改变数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "change_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分来源:0->购物;1->管理员修改",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_55",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_55",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_55",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_55"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_integration_consume_setting",
+ "comment": "积分消费设置",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_integration_consume_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_integration_consume_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `deduction_per_amount` int(11) DEFAULT NULL COMMENT '每一元需要抵扣的积分数量',\n `max_percent_per_order` int(11) DEFAULT NULL COMMENT '每笔订单最高抵用百分比',\n `use_unit` int(11) DEFAULT NULL COMMENT '每次使用积分最小单位100',\n `coupon_status` int(1) DEFAULT NULL COMMENT '是否可以和优惠券同用;0->不可以;1->可以',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分消费设置'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "deduction_per_amount",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每一元需要抵扣的积分数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "deduction_per_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "max_percent_per_order",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每笔订单最高抵用百分比",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "max_percent_per_order"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_unit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每次使用积分最小单位100",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_unit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否可以和优惠券同用;0->不可以;1->可以",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_status"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_menu",
+ "comment": "后台菜单表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_menu",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_menu` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `parent_id` bigint(20) DEFAULT NULL COMMENT '父级ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `title` varchar(100) DEFAULT NULL COMMENT '菜单名称',\n `level` int(4) DEFAULT NULL COMMENT '菜单级数',\n `sort` int(4) DEFAULT NULL COMMENT '菜单排序',\n `name` varchar(100) DEFAULT NULL COMMENT '前端名称',\n `icon` varchar(200) DEFAULT NULL COMMENT '前端图标',\n `hidden` int(1) DEFAULT NULL COMMENT '前端隐藏',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_80` (`parent_id`),\n CONSTRAINT `FK_Reference_80` FOREIGN KEY (`parent_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台菜单表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "level",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单级数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "level"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "hidden",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端隐藏",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "hidden"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_80",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_80",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "parent_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "parent_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_80",
+ "fields": [
+ "parent_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_80"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_permission",
+ "comment": "后台用户权限表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_permission",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_permission` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `pid` bigint(20) DEFAULT NULL COMMENT '父级权限id',\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `value` varchar(200) DEFAULT NULL COMMENT '权限值',\n `icon` varchar(500) DEFAULT NULL COMMENT '图标',\n `type` int(1) DEFAULT NULL COMMENT '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',\n `uri` varchar(200) DEFAULT NULL COMMENT '前端资源路径',\n `status` int(1) DEFAULT NULL COMMENT '启用状态;0->禁用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_68` (`pid`),\n CONSTRAINT `FK_Reference_68` FOREIGN KEY (`pid`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户权限表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pid",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父级权限id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pid"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "value",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "value"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "icon",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "图标",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "icon"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "uri",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "前端资源路径",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "uri"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态;0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_68",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_68",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "pid",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "pid"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_68",
+ "fields": [
+ "pid"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_68"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource",
+ "comment": "后台资源表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `category_id` bigint(20) DEFAULT NULL COMMENT '资源分类ID',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '资源名称',\n `url` varchar(200) DEFAULT NULL COMMENT '资源URL',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_85` (`category_id`),\n CONSTRAINT `FK_Reference_85` FOREIGN KEY (`category_id`) REFERENCES `ums_resource_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台资源表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源分类ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "url",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源URL",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "url"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_85",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_85",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_85",
+ "fields": [
+ "category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_85"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_resource_category",
+ "comment": "资源分类表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_resource_category",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_resource_category` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `name` varchar(200) DEFAULT NULL COMMENT '分类名称',\n `sort` int(4) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='资源分类表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 4,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role",
+ "comment": "后台用户角色表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL COMMENT '名称',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n `admin_count` int(11) DEFAULT NULL COMMENT '后台用户数量',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n `status` int(1) DEFAULT '1' COMMENT '启用状态:0->禁用;1->启用',\n `sort` int(11) DEFAULT '0',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "admin_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "后台用户数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "admin_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "1",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态:0->禁用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_menu_relation",
+ "comment": "后台角色菜单关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_menu_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_menu_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `menu_id` bigint(20) DEFAULT NULL COMMENT '菜单ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_81` (`role_id`),\n KEY `FK_Reference_82` (`menu_id`),\n CONSTRAINT `FK_Reference_81` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_82` FOREIGN KEY (`menu_id`) REFERENCES `ums_menu` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色菜单关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "menu_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "菜单ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "menu_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_81",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_81",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_82",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_82",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "menu_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "menu_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_81",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_81"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_82",
+ "fields": [
+ "menu_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_menu",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_82"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_permission_relation",
+ "comment": "后台用户角色和权限关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_permission_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_permission_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL,\n `permission_id` bigint(20) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_71` (`role_id`),\n KEY `FK_Reference_72` (`permission_id`),\n CONSTRAINT `FK_Reference_71` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_72` FOREIGN KEY (`permission_id`) REFERENCES `ums_permission` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户角色和权限关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "permission_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "permission_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_71",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_71",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_72",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_72",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "permission_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "permission_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_71",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_71"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_72",
+ "fields": [
+ "permission_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_permission",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_72"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "ums_role_resource_relation",
+ "comment": "后台角色资源关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "ums_role_resource_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `ums_role_resource_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `role_id` bigint(20) DEFAULT NULL COMMENT '角色ID',\n `resource_id` bigint(20) DEFAULT NULL COMMENT '资源ID',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_83` (`role_id`),\n KEY `FK_Reference_84` (`resource_id`),\n CONSTRAINT `FK_Reference_83` FOREIGN KEY (`role_id`) REFERENCES `ums_role` (`id`),\n CONSTRAINT `FK_Reference_84` FOREIGN KEY (`resource_id`) REFERENCES `ums_resource` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台角色资源关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "role_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "角色ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "role_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "resource_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "资源ID",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "resource_id"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_83",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_83",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "role_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "role_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_84",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_84",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "resource_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "resource_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_83",
+ "fields": [
+ "role_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_role",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_83"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_84",
+ "fields": [
+ "resource_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_resource",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_84"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "权限模块数据库表模型",
+ "paperWidth": 2,
+ "paperHeight": 1,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin",
+ "x": 50,
+ "y": 220,
+ "width": 180,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin_login_log",
+ "x": 50,
+ "y": 10,
+ "width": 181,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_admin_role_relation",
+ "x": 10,
+ "y": 540,
+ "width": 205,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_menu",
+ "x": 540,
+ "y": 450,
+ "width": 162,
+ "height": 231,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_resource",
+ "x": 510,
+ "y": 270,
+ "width": 180,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_resource_category",
+ "x": 530,
+ "y": 40,
+ "width": 198,
+ "height": 131,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role",
+ "x": 290,
+ "y": 230,
+ "width": 180,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role_menu_relation",
+ "x": 290,
+ "y": 450,
+ "width": 201,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "ums_role_resource_relation",
+ "x": 260,
+ "y": 40,
+ "width": 226,
+ "height": 111,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_46",
+ "sourceTableName": "ums_admin_login_log",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 120,
+ "y": 196
+ },
+ {
+ "x": 120,
+ "y": 205
+ }
+ ],
+ "label": {
+ "x": 128,
+ "y": 94,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_69",
+ "sourceTableName": "ums_admin_role_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 120,
+ "y": 525
+ },
+ {
+ "x": 120,
+ "y": 520
+ },
+ {
+ "x": 120,
+ "y": 520
+ },
+ {
+ "x": 120,
+ "y": 486
+ }
+ ],
+ "label": {
+ "x": 128,
+ "y": 223,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_80",
+ "sourceTableName": "ums_menu",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 717,
+ "y": 650
+ },
+ {
+ "x": 730,
+ "y": 650
+ },
+ {
+ "x": 730,
+ "y": 710
+ },
+ {
+ "x": 670,
+ "y": 710
+ },
+ {
+ "x": 670,
+ "y": 696
+ }
+ ],
+ "label": {
+ "x": 480,
+ "y": 270,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_85",
+ "sourceTableName": "ums_resource",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 590,
+ "y": 255
+ },
+ {
+ "x": 590,
+ "y": 231
+ },
+ {
+ "x": 590,
+ "y": 186
+ }
+ ],
+ "label": {
+ "x": 548,
+ "y": 70,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_70",
+ "sourceTableName": "ums_admin_role_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 230,
+ "y": 590
+ },
+ {
+ "x": 265,
+ "y": 590
+ },
+ {
+ "x": 265,
+ "y": 360
+ },
+ {
+ "x": 275,
+ "y": 360
+ }
+ ],
+ "label": {
+ "x": 176,
+ "y": 280,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_81",
+ "sourceTableName": "ums_role_menu_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 390,
+ "y": 435
+ },
+ {
+ "x": 390,
+ "y": 435
+ },
+ {
+ "x": 390,
+ "y": 435
+ },
+ {
+ "x": 390,
+ "y": 436
+ }
+ ],
+ "label": {
+ "x": 377,
+ "y": 450,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_82",
+ "sourceTableName": "ums_role_menu_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 506,
+ "y": 520
+ },
+ {
+ "x": 525,
+ "y": 520
+ },
+ {
+ "x": 525,
+ "y": 520
+ },
+ {
+ "x": 525,
+ "y": 520
+ }
+ ],
+ "label": {
+ "x": 270,
+ "y": 406,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_83",
+ "sourceTableName": "ums_role_resource_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 350,
+ "y": 166
+ },
+ {
+ "x": 350,
+ "y": 200
+ },
+ {
+ "x": 350,
+ "y": 200
+ },
+ {
+ "x": 350,
+ "y": 215
+ }
+ ],
+ "label": {
+ "x": 308,
+ "y": 20,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_84",
+ "sourceTableName": "ums_role_resource_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 501,
+ "y": 100
+ },
+ {
+ "x": 503,
+ "y": 100
+ },
+ {
+ "x": 503,
+ "y": 290
+ },
+ {
+ "x": 495,
+ "y": 290
+ }
+ ],
+ "label": {
+ "x": 447,
+ "y": 87,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/document/navicat/\350\220\245\351\224\200\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/\350\220\245\351\224\200\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..b5614651
--- /dev/null
+++ "b/document/navicat/\350\220\245\351\224\200\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,4647 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50799,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon",
+ "comment": "优惠卷表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `type` int(1) DEFAULT NULL COMMENT '优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券',\n `name` varchar(100) DEFAULT NULL,\n `platform` int(1) DEFAULT NULL COMMENT '使用平台:0->全部;1->移动;2->PC',\n `count` int(11) DEFAULT NULL COMMENT '数量',\n `amount` decimal(10,2) DEFAULT NULL COMMENT '金额',\n `per_limit` int(11) DEFAULT NULL COMMENT '每人限领张数',\n `min_point` decimal(10,2) DEFAULT NULL COMMENT '使用门槛;0表示无门槛',\n `start_time` datetime DEFAULT NULL,\n `end_time` datetime DEFAULT NULL,\n `use_type` int(1) DEFAULT NULL COMMENT '使用类型:0->全场通用;1->指定分类;2->指定商品',\n `note` varchar(200) DEFAULT NULL COMMENT '备注',\n `publish_count` int(11) DEFAULT NULL COMMENT '发行数量',\n `use_count` int(11) DEFAULT NULL COMMENT '已使用数量',\n `receive_count` int(11) DEFAULT NULL COMMENT '领取数量',\n `enable_time` datetime DEFAULT NULL COMMENT '可以领取的日期',\n `code` varchar(64) DEFAULT NULL COMMENT '优惠码',\n `member_level` int(1) DEFAULT NULL COMMENT '可领取的会员类型:0->无限时',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠卷表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "platform",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用平台:0->全部;1->移动;2->PC",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "platform"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "per_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每人限领张数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "per_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "min_point",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用门槛;0表示无门槛",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "min_point"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用类型:0->全场通用;1->指定分类;2->指定商品",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "publish_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发行数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "publish_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "已使用数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "领取数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "enable_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以领取的日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "enable_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_level",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可领取的会员类型:0->无限时",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_level"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_history",
+ "comment": "优惠券使用、领取历史表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `member_id` bigint(20) DEFAULT NULL,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `coupon_code` varchar(64) DEFAULT NULL,\n `member_nickname` varchar(64) DEFAULT NULL COMMENT '领取人昵称',\n `get_type` int(1) DEFAULT NULL COMMENT '获取类型:0->后台赠送;1->主动获取',\n `create_time` datetime DEFAULT NULL,\n `use_status` int(1) DEFAULT NULL COMMENT '使用状态:0->未使用;1->已使用;2->已过期',\n `use_time` datetime DEFAULT NULL COMMENT '使用时间',\n `order_sn` varchar(100) DEFAULT NULL COMMENT '订单号码',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_37` (`coupon_id`),\n KEY `FK_Reference_38` (`member_id`),\n KEY `FK_Reference_76` (`order_id`),\n CONSTRAINT `FK_Reference_37` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_38` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_76` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券使用、领取历史表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_code",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nickname",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "领取人昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "get_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "获取类型:0->后台赠送;1->主动获取",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "get_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用状态:0->未使用;1->已使用;2->已过期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "使用时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单号码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_37",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_37",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_38",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_38",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_76",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_76",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_37",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_37"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_38",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_38"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_76",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_76"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_product_category_relation",
+ "comment": "优惠券和产品分类关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_product_category_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_product_category_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `product_category_id` bigint(20) DEFAULT NULL,\n `product_category_name` varchar(200) DEFAULT NULL COMMENT '产品分类名称',\n `parent_category_name` varchar(200) DEFAULT NULL COMMENT '父分类名称',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_35` (`coupon_id`),\n KEY `FK_Reference_36` (`product_category_id`),\n CONSTRAINT `FK_Reference_35` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_36` FOREIGN KEY (`product_category_id`) REFERENCES `pms_product_category` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券和产品分类关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "产品分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "parent_category_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "父分类名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "parent_category_name"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_35",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_35",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_36",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_36",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_category_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_category_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_35",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_35"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_36",
+ "fields": [
+ "product_category_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product_category",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_36"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_coupon_product_relation",
+ "comment": "优惠券和产品的关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_coupon_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_coupon_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `coupon_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(500) DEFAULT NULL COMMENT '商品名称',\n `product_sn` varchar(200) DEFAULT NULL COMMENT '商品编码',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_33` (`coupon_id`),\n KEY `FK_Reference_34` (`product_id`),\n CONSTRAINT `FK_Reference_33` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`),\n CONSTRAINT `FK_Reference_34` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='优惠券和产品的关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品编码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_33",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_33",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_34",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_34",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_33",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_33"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_34",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_34"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion",
+ "comment": "限时购表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `title` varchar(200) DEFAULT NULL,\n `start_date` date DEFAULT NULL COMMENT '开始日期',\n `end_date` date DEFAULT NULL COMMENT '结束日期',\n `status` int(1) DEFAULT NULL COMMENT '上下线状态',\n `create_time` datetime DEFAULT NULL COMMENT '秒杀时间段名称',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "title",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_date",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "开始日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_date",
+ "type": "date",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "结束日期",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上下线状态",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "秒杀时间段名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_log",
+ "comment": "限时购通知记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_log",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_log` (\n `id` int(11) NOT NULL AUTO_INCREMENT,\n `member_id` bigint(20) DEFAULT NULL,\n `product_id` bigint(20) DEFAULT NULL,\n `member_phone` varchar(64) DEFAULT NULL,\n `product_name` varchar(100) DEFAULT NULL,\n `subscribe_time` datetime DEFAULT NULL COMMENT '会员订阅时间',\n `send_time` datetime DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_44` (`member_id`),\n KEY `FK_Reference_45` (`product_id`),\n CONSTRAINT `FK_Reference_44` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_45` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购通知记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subscribe_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员订阅时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subscribe_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "send_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "send_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_44",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_44",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_45",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_45",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_44",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_44"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_45",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_45"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_product_relation",
+ "comment": "商品限时购与商品关系表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_product_relation",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_product_relation` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n `flash_promotion_id` bigint(20) DEFAULT NULL,\n `flash_promotion_session_id` bigint(20) DEFAULT NULL COMMENT '编号',\n `product_id` bigint(20) DEFAULT NULL,\n `flash_promotion_price` decimal(10,2) DEFAULT NULL COMMENT '限时购价格',\n `flash_promotion_count` int(11) DEFAULT NULL COMMENT '限时购数量',\n `flash_promotion_limit` int(11) DEFAULT NULL COMMENT '每人限购数量',\n `sort` int(11) DEFAULT NULL COMMENT '排序',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_77` (`flash_promotion_id`),\n KEY `FK_Reference_78` (`flash_promotion_session_id`),\n KEY `FK_Reference_79` (`product_id`),\n CONSTRAINT `FK_Reference_77` FOREIGN KEY (`flash_promotion_id`) REFERENCES `sms_flash_promotion` (`id`),\n CONSTRAINT `FK_Reference_78` FOREIGN KEY (`flash_promotion_session_id`) REFERENCES `sms_flash_promotion_session` (`id`),\n CONSTRAINT `FK_Reference_79` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='商品限时购与商品关系表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_session_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_session_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限时购价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "限时购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_promotion_limit",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每人限购数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_promotion_limit"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_77",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_77",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "flash_promotion_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "flash_promotion_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_78",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_78",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "flash_promotion_session_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "flash_promotion_session_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_79",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_79",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_77",
+ "fields": [
+ "flash_promotion_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_flash_promotion",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_77"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_78",
+ "fields": [
+ "flash_promotion_session_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_flash_promotion_session",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_78"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_79",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_79"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_flash_promotion_session",
+ "comment": "限时购场次表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_flash_promotion_session",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_flash_promotion_session` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',\n `name` varchar(200) DEFAULT NULL COMMENT '场次名称',\n `start_time` time DEFAULT NULL COMMENT '每日开始时间',\n `end_time` time DEFAULT NULL COMMENT '每日结束时间',\n `status` int(1) DEFAULT NULL COMMENT '启用状态:0->不启用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '创建时间',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='限时购场次表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "场次名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "time",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每日开始时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "time",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "每日结束时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "启用状态:0->不启用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_advertise",
+ "comment": "首页轮播广告表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_advertise",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_advertise` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL,\n `type` int(1) DEFAULT NULL COMMENT '轮播位置:0->PC首页轮播;1->app首页轮播',\n `pic` varchar(500) DEFAULT NULL,\n `start_time` datetime DEFAULT NULL,\n `end_time` datetime DEFAULT NULL,\n `status` int(1) DEFAULT NULL COMMENT '上下线状态:0->下线;1->上线',\n `click_count` int(11) DEFAULT NULL COMMENT '点击数',\n `order_count` int(11) DEFAULT NULL COMMENT '下单数',\n `url` varchar(500) DEFAULT NULL COMMENT '链接地址',\n `note` varchar(500) DEFAULT NULL COMMENT '备注',\n `sort` int(11) DEFAULT '0' COMMENT '排序',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页轮播广告表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "轮播位置:0->PC首页轮播;1->app首页轮播",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "start_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "start_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "end_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "end_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "上下线状态:0->下线;1->上线",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "click_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "点击数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "click_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "下单数",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "url",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "链接地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "url"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "排序",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_brand",
+ "comment": "首页推荐品牌表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_brand",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_brand` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `brand_id` bigint(20) DEFAULT NULL,\n `brand_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_39` (`brand_id`),\n CONSTRAINT `FK_Reference_39` FOREIGN KEY (`brand_id`) REFERENCES `pms_brand` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页推荐品牌表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "brand_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "brand_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_39",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_39",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "brand_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "brand_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_39",
+ "fields": [
+ "brand_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_brand",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_39"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_new_product",
+ "comment": "新鲜好物表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_new_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_new_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_40` (`product_id`),\n CONSTRAINT `FK_Reference_40` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='新鲜好物表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_40",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_40",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_40",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_40"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_recommend_product",
+ "comment": "人气推荐商品表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_recommend_product",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_recommend_product` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(1) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_41` (`product_id`),\n CONSTRAINT `FK_Reference_41` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='人气推荐商品表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_41",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_41",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_41",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_41"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "sms_home_recommend_subject",
+ "comment": "首页推荐专题表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "sms_home_recommend_subject",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `sms_home_recommend_subject` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `subject_id` bigint(20) DEFAULT NULL,\n `subject_name` varchar(64) DEFAULT NULL,\n `recommend_status` int(1) DEFAULT NULL,\n `sort` int(11) DEFAULT NULL,\n PRIMARY KEY (`id`),\n KEY `FK_Reference_42` (`subject_id`),\n CONSTRAINT `FK_Reference_42` FOREIGN KEY (`subject_id`) REFERENCES `cms_subject` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='首页推荐专题表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "subject_name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "subject_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "recommend_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "recommend_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_42",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_42",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "subject_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "subject_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_42",
+ "fields": [
+ "subject_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "cms_subject",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_42"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "营销模块数据库模型",
+ "paperWidth": 2,
+ "paperHeight": 1,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon",
+ "x": 310,
+ "y": 220,
+ "width": 183,
+ "height": 411,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_history",
+ "x": 10,
+ "y": 40,
+ "width": 220,
+ "height": 271,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_product_category_relation",
+ "x": 250,
+ "y": 0,
+ "width": 312,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_coupon_product_relation",
+ "x": 10,
+ "y": 390,
+ "width": 241,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion",
+ "x": 670,
+ "y": 670,
+ "width": 177,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_log",
+ "x": 820,
+ "y": 400,
+ "width": 207,
+ "height": 191,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_product_relation",
+ "x": 320,
+ "y": 650,
+ "width": 303,
+ "height": 211,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_flash_promotion_session",
+ "x": 10,
+ "y": 670,
+ "width": 240,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_advertise",
+ "x": 600,
+ "y": 350,
+ "width": 176,
+ "height": 291,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_brand",
+ "x": 880,
+ "y": 190,
+ "width": 183,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_new_product",
+ "x": 590,
+ "y": 190,
+ "width": 201,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_recommend_product",
+ "x": 840,
+ "y": 20,
+ "width": 255,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "sms_home_recommend_subject",
+ "x": 580,
+ "y": 20,
+ "width": 252,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_37",
+ "sourceTableName": "sms_coupon_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 245,
+ "y": 170
+ },
+ {
+ "x": 290,
+ "y": 170
+ },
+ {
+ "x": 290,
+ "y": 420
+ },
+ {
+ "x": 295,
+ "y": 420
+ }
+ ],
+ "label": {
+ "x": 0,
+ "y": 0,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_35",
+ "sourceTableName": "sms_coupon_product_category_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 420,
+ "y": 166
+ },
+ {
+ "x": 420,
+ "y": 210
+ },
+ {
+ "x": 420,
+ "y": 210
+ },
+ {
+ "x": 420,
+ "y": 205
+ }
+ ],
+ "label": {
+ "x": 250,
+ "y": 0,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_33",
+ "sourceTableName": "sms_coupon_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 266,
+ "y": 470
+ },
+ {
+ "x": 300,
+ "y": 470
+ },
+ {
+ "x": 300,
+ "y": 470
+ },
+ {
+ "x": 295,
+ "y": 470
+ }
+ ],
+ "label": {
+ "x": 261,
+ "y": 356,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_77",
+ "sourceTableName": "sms_flash_promotion_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 638,
+ "y": 750
+ },
+ {
+ "x": 631,
+ "y": 750
+ },
+ {
+ "x": 631,
+ "y": 750
+ },
+ {
+ "x": 655,
+ "y": 750
+ }
+ ],
+ "label": {
+ "x": 10,
+ "y": 0,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_78",
+ "sourceTableName": "sms_flash_promotion_product_relation",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 305,
+ "y": 750
+ },
+ {
+ "x": 305,
+ "y": 750
+ },
+ {
+ "x": 305,
+ "y": 750
+ },
+ {
+ "x": 265,
+ "y": 750
+ }
+ ],
+ "label": {
+ "x": 10,
+ "y": 0,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git "a/document/navicat/\350\256\242\345\215\225\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2" "b/document/navicat/\350\256\242\345\215\225\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
new file mode 100644
index 00000000..a13e670a
--- /dev/null
+++ "b/document/navicat/\350\256\242\345\215\225\346\250\241\345\235\227\346\225\260\346\215\256\345\272\223\346\250\241\345\236\213.ndm2"
@@ -0,0 +1,4961 @@
+{
+ "paper": {
+ "name": "A4",
+ "leftMargin": 0.5,
+ "rightMargin": 0.5,
+ "topMargin": 0.5,
+ "bottomMargin": 0.5,
+ "isPortriat": true
+ },
+ "modelVersion": 2.01,
+ "defaultSchema": "Default",
+ "server": {
+ "objectType": "Server_MYSQL",
+ "name": "Default",
+ "serverVersion": 50799,
+ "edition": "Default",
+ "lowerCaseTableNames": 0,
+ "schemas": [
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "Default",
+ "tables": [],
+ "views": []
+ },
+ {
+ "objectType": "Schema_MYSQL",
+ "name": "mall-ref",
+ "tables": [
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_cart_item",
+ "comment": "购物车表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_cart_item",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_cart_item` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `product_id` bigint(20) DEFAULT NULL,\n `product_sku_id` bigint(20) DEFAULT NULL,\n `member_id` bigint(20) DEFAULT NULL,\n `quantity` int(11) DEFAULT NULL COMMENT '购买数量',\n `price` decimal(10,2) DEFAULT NULL COMMENT '添加到购物车的价格',\n `product_pic` varchar(1000) DEFAULT NULL COMMENT '商品主图',\n `product_name` varchar(500) DEFAULT NULL COMMENT '商品名称',\n `product_brand` varchar(200) DEFAULT NULL,\n `product_sn` varchar(200) DEFAULT NULL,\n `product_sub_title` varchar(500) DEFAULT NULL COMMENT '商品副标题(卖点)',\n `product_sku_code` varchar(200) DEFAULT NULL COMMENT '商品sku条码',\n `member_nickname` varchar(500) DEFAULT NULL COMMENT '会员昵称',\n `create_date` datetime DEFAULT NULL COMMENT '创建时间',\n `modify_date` datetime DEFAULT NULL COMMENT '修改时间',\n `delete_status` int(1) DEFAULT '0' COMMENT '是否删除',\n `product_category_id` bigint(20) DEFAULT NULL COMMENT '商品的分类',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_65` (`product_id`),\n KEY `FK_Reference_66` (`product_sku_id`),\n KEY `FK_Reference_67` (`member_id`),\n CONSTRAINT `FK_Reference_65` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`),\n CONSTRAINT `FK_Reference_66` FOREIGN KEY (`product_sku_id`) REFERENCES `pms_sku_stock` (`id`),\n CONSTRAINT `FK_Reference_67` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='购物车表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "quantity",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "quantity"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "添加到购物车的价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品主图",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sub_title",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品副标题(卖点)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sub_title"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_code",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku条码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_nickname",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员昵称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_nickname"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_date",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "创建时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "modify_date",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "修改时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "modify_date"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品的分类",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"4G\"}]",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_65",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_65",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_66",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_66",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_sku_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_sku_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_67",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_67",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_65",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_65"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_66",
+ "fields": [
+ "product_sku_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_sku_stock",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_66"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_67",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_67"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_company_address",
+ "comment": "公司收发货地址表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_company_address",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_company_address` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `address_name` varchar(200) DEFAULT NULL COMMENT '地址名称',\n `send_status` int(1) DEFAULT NULL COMMENT '默认发货地址:0->否;1->是',\n `receive_status` int(1) DEFAULT NULL COMMENT '是否默认收货地址:0->否;1->是',\n `name` varchar(64) DEFAULT NULL COMMENT '收发货人姓名',\n `phone` varchar(64) DEFAULT NULL COMMENT '收货人电话',\n `province` varchar(64) DEFAULT NULL COMMENT '省/直辖市',\n `city` varchar(64) DEFAULT NULL COMMENT '市',\n `region` varchar(64) DEFAULT NULL COMMENT '区',\n `detail_address` varchar(200) DEFAULT NULL COMMENT '详细地址',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公司收发货地址表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "address_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "地址名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "address_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "send_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "默认发货地址:0->否;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "send_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "是否默认收货地址:0->否;1->是",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收发货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "phone",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "province",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "city",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "region",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "detail_address",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "detail_address"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order",
+ "comment": "订单表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '订单id',\n `member_id` bigint(20) NOT NULL,\n `coupon_id` bigint(20) DEFAULT NULL,\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `create_time` datetime DEFAULT NULL COMMENT '提交时间',\n `member_username` varchar(64) DEFAULT NULL COMMENT '用户帐号',\n `total_amount` decimal(10,2) DEFAULT NULL COMMENT '订单总金额',\n `pay_amount` decimal(10,2) DEFAULT NULL COMMENT '应付金额(实际支付金额)',\n `freight_amount` decimal(10,2) DEFAULT NULL COMMENT '运费金额',\n `promotion_amount` decimal(10,2) DEFAULT NULL COMMENT '促销优化金额(促销价、满减、阶梯价)',\n `integration_amount` decimal(10,2) DEFAULT NULL COMMENT '积分抵扣金额',\n `coupon_amount` decimal(10,2) DEFAULT NULL COMMENT '优惠券抵扣金额',\n `discount_amount` decimal(10,2) DEFAULT NULL COMMENT '管理员后台调整订单使用的折扣金额',\n `pay_type` int(1) DEFAULT NULL COMMENT '支付方式:0->未支付;1->支付宝;2->微信',\n `source_type` int(1) DEFAULT NULL COMMENT '订单来源:0->PC订单;1->app订单',\n `status` int(1) DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',\n `order_type` int(1) DEFAULT NULL COMMENT '订单类型:0->正常订单;1->秒杀订单',\n `delivery_company` varchar(64) DEFAULT NULL COMMENT '物流公司(配送方式)',\n `delivery_sn` varchar(64) DEFAULT NULL COMMENT '物流单号',\n `auto_confirm_day` int(11) DEFAULT NULL COMMENT '自动确认时间(天)',\n `integration` int(11) DEFAULT NULL COMMENT '可以获得的积分',\n `growth` int(11) DEFAULT NULL COMMENT '可以活动的成长值',\n `promotion_info` varchar(100) DEFAULT NULL COMMENT '活动信息',\n `bill_type` int(1) DEFAULT NULL COMMENT '发票类型:0->不开发票;1->电子发票;2->纸质发票',\n `bill_header` varchar(200) DEFAULT NULL COMMENT '发票抬头',\n `bill_content` varchar(200) DEFAULT NULL COMMENT '发票内容',\n `bill_receiver_phone` varchar(32) DEFAULT NULL COMMENT '收票人电话',\n `bill_receiver_email` varchar(64) DEFAULT NULL COMMENT '收票人邮箱',\n `receiver_name` varchar(100) NOT NULL COMMENT '收货人姓名',\n `receiver_phone` varchar(32) NOT NULL COMMENT '收货人电话',\n `receiver_post_code` varchar(32) DEFAULT NULL COMMENT '收货人邮编',\n `receiver_province` varchar(32) DEFAULT NULL COMMENT '省份/直辖市',\n `receiver_city` varchar(32) DEFAULT NULL COMMENT '城市',\n `receiver_region` varchar(32) DEFAULT NULL COMMENT '区',\n `receiver_detail_address` varchar(200) DEFAULT NULL COMMENT '详细地址',\n `note` varchar(500) DEFAULT NULL COMMENT '订单备注',\n `confirm_status` int(1) DEFAULT NULL COMMENT '确认收货状态:0->未确认;1->已确认',\n `delete_status` int(1) NOT NULL DEFAULT '0' COMMENT '删除状态:0->未删除;1->已删除',\n `use_integration` int(11) DEFAULT NULL COMMENT '下单时使用的积分',\n `payment_time` datetime DEFAULT NULL COMMENT '支付时间',\n `delivery_time` datetime DEFAULT NULL COMMENT '发货时间',\n `receive_time` datetime DEFAULT NULL COMMENT '确认收货时间',\n `comment_time` datetime DEFAULT NULL COMMENT '评价时间',\n `modify_time` datetime DEFAULT NULL COMMENT '修改时间',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_57` (`member_id`),\n KEY `FK_Reference_61` (`coupon_id`),\n CONSTRAINT `FK_Reference_57` FOREIGN KEY (`member_id`) REFERENCES `ums_member` (`id`),\n CONSTRAINT `FK_Reference_61` FOREIGN KEY (`coupon_id`) REFERENCES `sms_coupon` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "提交时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "用户帐号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "total_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单总金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "total_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pay_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "应付金额(实际支付金额)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pay_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "freight_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "运费金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "freight_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "促销优化金额(促销价、满减、阶梯价)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分抵扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券抵扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "discount_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "管理员后台调整订单使用的折扣金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "discount_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "pay_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "支付方式:0->未支付;1->支付宝;2->微信",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "pay_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "source_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单来源:0->PC订单;1->app订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "source_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单类型:0->正常订单;1->秒杀订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_company",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "物流公司(配送方式)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_company"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "物流单号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "auto_confirm_day",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动确认时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "auto_confirm_day"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以获得的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "可以活动的成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_info",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "活动信息",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_info"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_type",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票类型:0->不开发票;1->电子发票;2->纸质发票",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_type"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_header",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票抬头",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_header"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_content",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发票内容",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_content"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_receiver_phone",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收票人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_receiver_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "bill_receiver_email",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收票人邮箱",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "bill_receiver_email"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_phone",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_post_code",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人邮编",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_post_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_province",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "省份/直辖市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_province"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_city",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "城市",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_city"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_region",
+ "type": "varchar",
+ "length": 32,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "区",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_region"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receiver_detail_address",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "详细地址",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receiver_detail_address"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "confirm_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "确认收货状态:0->未确认;1->已确认",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "confirm_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delete_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "删除状态:0->未删除;1->已删除",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delete_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "use_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "下单时使用的积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "use_integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "payment_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "支付时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "payment_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "delivery_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "delivery_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "确认收货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "评价时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "modify_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "修改时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "modify_time"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_57",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_57",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "member_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "member_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_61",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_61",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "coupon_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "coupon_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_57",
+ "fields": [
+ "member_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "ums_member",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "OneAndOnlyOneRelationship",
+ "oldName": "FK_Reference_57"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_61",
+ "fields": [
+ "coupon_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "sms_coupon",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_61"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_item",
+ "comment": "订单中所包含的商品",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_item",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 32768,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_item` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `product_id` bigint(20) DEFAULT NULL,\n `product_pic` varchar(500) DEFAULT NULL,\n `product_name` varchar(200) DEFAULT NULL,\n `product_brand` varchar(200) DEFAULT NULL,\n `product_sn` varchar(64) DEFAULT NULL,\n `product_price` decimal(10,2) DEFAULT NULL COMMENT '销售价格',\n `product_quantity` int(11) DEFAULT NULL COMMENT '购买数量',\n `product_sku_id` bigint(20) DEFAULT NULL COMMENT '商品sku编号',\n `product_sku_code` varchar(50) DEFAULT NULL COMMENT '商品sku条码',\n `product_category_id` bigint(20) DEFAULT NULL COMMENT '商品分类id',\n `promotion_name` varchar(200) DEFAULT NULL COMMENT '商品促销名称',\n `promotion_amount` decimal(10,2) DEFAULT NULL COMMENT '商品促销分解金额',\n `coupon_amount` decimal(10,2) DEFAULT NULL COMMENT '优惠券优惠分解金额',\n `integration_amount` decimal(10,2) DEFAULT NULL COMMENT '积分优惠分解金额',\n `real_amount` decimal(10,2) DEFAULT NULL COMMENT '该商品经过优惠后的分解金额',\n `gift_integration` int(11) NOT NULL DEFAULT '0' COMMENT '商品赠送积分',\n `gift_growth` int(11) NOT NULL DEFAULT '0' COMMENT '商品赠送成长值',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_58` (`order_id`),\n KEY `FK_Reference_59` (`product_id`),\n CONSTRAINT `FK_Reference_58` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`),\n CONSTRAINT `FK_Reference_59` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单中所包含的商品'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "销售价格",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_quantity",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "购买数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_quantity"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_sku_code",
+ "type": "varchar",
+ "length": 50,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品sku条码",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_sku_code"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_category_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品分类id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_category_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品促销名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "promotion_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品促销分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "promotion_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "coupon_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "优惠券优惠分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "coupon_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "integration_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "积分优惠分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "integration_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "real_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "该商品经过优惠后的分解金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "real_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_integration",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品赠送积分",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_integration"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "gift_growth",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "0",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品赠送成长值",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "gift_growth"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_58",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_58",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_59",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_59",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_58",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_58"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_59",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_59"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_operate_history",
+ "comment": "订单操作历史记录",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_operate_history",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 16384,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_operate_history` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `operate_man` varchar(100) DEFAULT NULL COMMENT '操作人:用户;系统;后台管理员',\n `create_time` datetime DEFAULT NULL COMMENT '操作时间',\n `order_status` int(1) DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',\n `note` varchar(500) DEFAULT NULL COMMENT '备注',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_62` (`order_id`),\n CONSTRAINT `FK_Reference_62` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单操作历史记录'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "operate_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作人:用户;系统;后台管理员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "operate_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "操作时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "note"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_62",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_62",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_62",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_62"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_return_apply",
+ "comment": "订单退货申请",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_return_apply",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 49152,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_return_apply` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `order_id` bigint(20) DEFAULT NULL COMMENT '订单id',\n `company_address_id` bigint(20) DEFAULT NULL COMMENT '收货地址表id',\n `product_id` bigint(20) DEFAULT NULL COMMENT '退货商品id',\n `order_sn` varchar(64) DEFAULT NULL COMMENT '订单编号',\n `create_time` datetime DEFAULT NULL COMMENT '申请时间',\n `member_username` varchar(64) DEFAULT NULL COMMENT '会员用户名',\n `return_amount` decimal(10,2) DEFAULT NULL COMMENT '退款金额',\n `return_name` varchar(100) DEFAULT NULL COMMENT '退货人姓名',\n `return_phone` varchar(100) DEFAULT NULL COMMENT '退货人电话',\n `status` int(1) DEFAULT NULL COMMENT '申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝',\n `handle_time` datetime DEFAULT NULL COMMENT '处理时间',\n `product_pic` varchar(500) DEFAULT NULL COMMENT '商品图片',\n `product_name` varchar(200) DEFAULT NULL COMMENT '商品名称',\n `product_brand` varchar(200) DEFAULT NULL COMMENT '商品品牌',\n `product_attr` varchar(500) DEFAULT NULL COMMENT '商品销售属性:颜色:红色;尺码:xl;',\n `product_count` int(11) DEFAULT NULL COMMENT '退货数量',\n `product_price` decimal(10,2) DEFAULT NULL COMMENT '商品单价',\n `product_real_price` decimal(10,2) DEFAULT NULL COMMENT '商品实际支付单价',\n `reason` varchar(200) DEFAULT NULL COMMENT '原因',\n `description` varchar(500) DEFAULT NULL COMMENT '描述',\n `proof_pics` varchar(1000) DEFAULT NULL COMMENT '凭证图片,以逗号隔开',\n `handle_note` varchar(500) DEFAULT NULL COMMENT '处理备注',\n `handle_man` varchar(100) DEFAULT NULL COMMENT '处理人员',\n `receive_man` varchar(100) DEFAULT NULL COMMENT '收货人',\n `receive_time` datetime DEFAULT NULL COMMENT '收货时间',\n `receive_note` varchar(500) DEFAULT NULL COMMENT '收货备注',\n PRIMARY KEY (`id`),\n KEY `FK_Reference_63` (`order_id`),\n KEY `FK_Reference_64` (`company_address_id`),\n KEY `FK_Reference_75` (`product_id`),\n CONSTRAINT `FK_Reference_63` FOREIGN KEY (`order_id`) REFERENCES `oms_order` (`id`),\n CONSTRAINT `FK_Reference_64` FOREIGN KEY (`company_address_id`) REFERENCES `oms_company_address` (`id`),\n CONSTRAINT `FK_Reference_75` FOREIGN KEY (`product_id`) REFERENCES `pms_product` (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单退货申请'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "company_address_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货地址表id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "company_address_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货商品id",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "order_sn",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单编号",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "order_sn"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "申请时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "member_username",
+ "type": "varchar",
+ "length": 64,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "会员用户名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "member_username"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_amount",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退款金额",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_amount"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货人姓名",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "return_phone",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货人电话",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "return_phone"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_pic",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品图片",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_pic"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_name",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品名称",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_brand",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品品牌",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_brand"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_attr",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品销售属性:颜色:红色;尺码:xl;",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_attr"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_count",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货数量",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_count"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品单价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "product_real_price",
+ "type": "decimal",
+ "length": 10,
+ "decimals": 2,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "商品实际支付单价",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "product_real_price"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "reason",
+ "type": "varchar",
+ "length": 200,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "原因",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "reason"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "description",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "描述",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "description"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "proof_pics",
+ "type": "varchar",
+ "length": 1000,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "凭证图片,以逗号隔开",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "proof_pics"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_note"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "handle_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "处理人员",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "handle_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_man",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货人",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_man"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_time"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "receive_note",
+ "type": "varchar",
+ "length": 500,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "收货备注",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "receive_note"
+ }
+ ],
+ "indexes": [
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_63",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_63",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "order_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "order_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_64",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_64",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "company_address_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "company_address_id"
+ }
+ ]
+ },
+ {
+ "objectType": "Index_MYSQL",
+ "name": "FK_Reference_75",
+ "type": "NORMAL",
+ "method": "BTREE",
+ "comment": "",
+ "oldName": "FK_Reference_75",
+ "online": false,
+ "keyBlockSize": 0,
+ "parser": "",
+ "algorithm": "",
+ "lock": "",
+ "collation": "A",
+ "cardinality": "0",
+ "packed": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "product_id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "product_id"
+ }
+ ]
+ }
+ ],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_63",
+ "fields": [
+ "order_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_order",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_63"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_64",
+ "fields": [
+ "company_address_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "oms_company_address",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_64"
+ },
+ {
+ "objectType": "ForeignKey_MYSQL",
+ "name": "FK_Reference_75",
+ "fields": [
+ "product_id"
+ ],
+ "referenceSchema": "mall-ref",
+ "referenceTable": "pms_product",
+ "referenceFields": [
+ "id"
+ ],
+ "onDelete": "RESTRICT",
+ "onUpdate": "RESTRICT",
+ "sourceCardinality": "ZeroOrManyRelationship",
+ "targetCardinality": "ZeroOrOneRelationship",
+ "oldName": "FK_Reference_75"
+ }
+ ],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_return_reason",
+ "comment": "退货原因表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_return_reason",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_return_reason` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `name` varchar(100) DEFAULT NULL COMMENT '退货类型',\n `sort` int(11) DEFAULT NULL,\n `status` int(1) DEFAULT NULL COMMENT '状态:0->不启用;1->启用',\n `create_time` datetime DEFAULT NULL COMMENT '添加时间',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='退货原因表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "name",
+ "type": "varchar",
+ "length": 100,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "utf8",
+ "collation": "utf8_general_ci",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "退货类型",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "name"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "sort",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "sort"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "status",
+ "type": "int",
+ "length": 1,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "状态:0->不启用;1->启用",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "status"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "create_time",
+ "type": "datetime",
+ "length": -2147483648,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "添加时间",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "create_time"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ },
+ {
+ "objectType": "Table_MYSQL",
+ "name": "oms_order_setting",
+ "comment": "订单设置表",
+ "engine": "InnoDB",
+ "characterSet": "utf8",
+ "collation": "utf8_general_ci",
+ "autoIncrement": 1,
+ "tablespace": "",
+ "storage": "",
+ "insertMethod": "",
+ "connection": "",
+ "checksum": false,
+ "rowFormat": "Dynamic",
+ "avgRowLength": 0,
+ "maxRows": 0,
+ "minRows": 0,
+ "keyBlockSize": 0,
+ "packKeys": "",
+ "delayKeyWrite": false,
+ "dataDirectory": "",
+ "indexDirectory": "",
+ "statsAutoRecalc": "",
+ "statsPersistent": "",
+ "statsSamplePages": 0,
+ "union": "",
+ "pageCheckSum": false,
+ "transactional": false,
+ "compression": "",
+ "oldName": "oms_order_setting",
+ "encryption": false,
+ "createOptions": "",
+ "createTime": "2022-12-16 09:58:53",
+ "checkTime": "",
+ "dataFree": 0,
+ "dataLength": 16384,
+ "indexLength": 0,
+ "maxDataLength": 0,
+ "rows": 0,
+ "updateTime": "",
+ "DDL": "CREATE TABLE `oms_order_setting` (\n `id` bigint(20) NOT NULL AUTO_INCREMENT,\n `flash_order_overtime` int(11) DEFAULT NULL COMMENT '秒杀订单超时关闭时间(分)',\n `normal_order_overtime` int(11) DEFAULT NULL COMMENT '正常订单超时时间(分)',\n `confirm_overtime` int(11) DEFAULT NULL COMMENT '发货后自动确认收货时间(天)',\n `finish_overtime` int(11) DEFAULT NULL COMMENT '自动完成交易时间,不能申请售后(天)',\n `comment_overtime` int(11) DEFAULT NULL COMMENT '订单完成后自动好评时间(天)',\n PRIMARY KEY (`id`)\n) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='订单设置表'",
+ "partitionBy": "",
+ "partitionByExpr": "",
+ "partitions": 0,
+ "partitionKeyAlgorithm": "",
+ "subPartitionBy": "",
+ "subPartitionByExpr": "",
+ "subPartitions": 0,
+ "subPartitionKeyAlgorithm": "",
+ "fields": [
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "id",
+ "type": "bigint",
+ "length": 20,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": false,
+ "defaultType": "Others",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": true,
+ "comment": "",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "id"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "flash_order_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "秒杀订单超时关闭时间(分)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "flash_order_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "normal_order_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "正常订单超时时间(分)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "normal_order_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "confirm_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "发货后自动确认收货时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "confirm_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "finish_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "自动完成交易时间,不能申请售后(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "finish_overtime"
+ },
+ {
+ "objectType": "TableField_MYSQL",
+ "name": "comment_overtime",
+ "type": "int",
+ "length": 11,
+ "decimals": -2147483648,
+ "isUnsigned": false,
+ "isZeroFill": false,
+ "setEnumValues": "",
+ "isBinary": false,
+ "charset": "",
+ "collation": "",
+ "isNullable": true,
+ "defaultType": "Null",
+ "defaultValue": "",
+ "isOnUpdateCurrentTimestamp": false,
+ "isAutoInc": false,
+ "comment": "订单完成后自动好评时间(天)",
+ "columnFormat": "",
+ "storage": "",
+ "isVirtual": false,
+ "isGeneratedAlways": false,
+ "virtualExpr": "",
+ "virtualType": "",
+ "oldName": "comment_overtime"
+ }
+ ],
+ "indexes": [],
+ "primaryKey": {
+ "objectType": "PrimaryKey_MYSQL",
+ "name": "",
+ "fields": [
+ {
+ "objectType": "IndexField_MYSQL",
+ "name": "id",
+ "keyLength": 0,
+ "order": "",
+ "oldName": "id"
+ }
+ ],
+ "oldName": "",
+ "indexMethod": "BTREE",
+ "comment": ""
+ },
+ "foreignKeys": [],
+ "triggers": [],
+ "tablePartitions": []
+ }
+ ],
+ "views": []
+ }
+ ]
+ },
+ "diagrams": [
+ {
+ "name": "订单模块数据库模型",
+ "paperWidth": 2,
+ "paperHeight": 1,
+ "tableFont": "Arial Unicode MS",
+ "tableFontSize": 14,
+ "isBalckWhite": false,
+ "showDBSchemaName": false,
+ "showViewRelations": true,
+ "notation": "default",
+ "showFieldComment": false,
+ "showTableComment": false,
+ "shapes": [
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_cart_item",
+ "x": 40,
+ "y": 0,
+ "width": 227,
+ "height": 411,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_company_address",
+ "x": 890,
+ "y": 540,
+ "width": 202,
+ "height": 251,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order",
+ "x": 310,
+ "y": 200,
+ "width": 250,
+ "height": 931,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_item",
+ "x": 20,
+ "y": 430,
+ "width": 235,
+ "height": 471,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_operate_history",
+ "x": 350,
+ "y": 0,
+ "width": 223,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_return_apply",
+ "x": 610,
+ "y": 370,
+ "width": 230,
+ "height": 591,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_return_reason",
+ "x": 620,
+ "y": 10,
+ "width": 212,
+ "height": 151,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ },
+ {
+ "type": "table",
+ "schemaName": "mall-ref",
+ "tableName": "oms_order_setting",
+ "x": 620,
+ "y": 180,
+ "width": 213,
+ "height": 171,
+ "isBold": false,
+ "titleColor": {
+ "r": 55,
+ "g": 131,
+ "b": 192,
+ "a": 1
+ }
+ }
+ ],
+ "layers": [],
+ "relations": [
+ {
+ "name": "FK_Reference_58",
+ "sourceTableName": "oms_order_item",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 270,
+ "y": 670
+ },
+ {
+ "x": 292,
+ "y": 670
+ },
+ {
+ "x": 292,
+ "y": 670
+ },
+ {
+ "x": 295,
+ "y": 670
+ }
+ ],
+ "label": {
+ "x": 20,
+ "y": 672,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_62",
+ "sourceTableName": "oms_order_operate_history",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 440,
+ "y": 186
+ },
+ {
+ "x": 440,
+ "y": 215
+ },
+ {
+ "x": 440,
+ "y": 215
+ },
+ {
+ "x": 440,
+ "y": 185
+ }
+ ],
+ "label": {
+ "x": 350,
+ "y": 0,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_63",
+ "sourceTableName": "oms_order_return_apply",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 595,
+ "y": 670
+ },
+ {
+ "x": 580,
+ "y": 670
+ },
+ {
+ "x": 580,
+ "y": 670
+ },
+ {
+ "x": 575,
+ "y": 670
+ }
+ ],
+ "label": {
+ "x": 610,
+ "y": 672,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ },
+ {
+ "name": "FK_Reference_64",
+ "sourceTableName": "oms_order_return_apply",
+ "sourceSchemaName": "mall-ref",
+ "lineWidth": 1,
+ "visible": true,
+ "vertices": [
+ {
+ "x": 855,
+ "y": 670
+ },
+ {
+ "x": 835,
+ "y": 670
+ },
+ {
+ "x": 835,
+ "y": 670
+ },
+ {
+ "x": 875,
+ "y": 670
+ }
+ ],
+ "label": {
+ "x": 610,
+ "y": 672,
+ "width": 122,
+ "height": 40,
+ "fontName": "Arial Unicode MS",
+ "fontSize": 14,
+ "fontColor": {
+ "r": 51,
+ "g": 51,
+ "b": 51,
+ "a": 1
+ },
+ "isFontBold": false,
+ "isFontItalic": false,
+ "isVisible": false
+ }
+ }
+ ],
+ "viewRelations": []
+ }
+ ]
+}
\ No newline at end of file
diff --git a/document/pdm/mall_cms.pdm b/document/pdm/mall_cms.pdm
deleted file mode 100644
index 9e127cfe..00000000
--- a/document/pdm/mall_cms.pdm
+++ /dev/null
@@ -1,3630 +0,0 @@
-
-
-
-
-
-
-
-
-
-93BC3D98-8755-49B8-A4BB-077AADD2706A
-mall_cms
-mall_cms
-1562382219
-zhenghong
-1562382223
-zhenghong
-[FolderOptions]
-
-[FolderOptions\Physical Objects]
-GenerationCheckModel=Yes
-GenerationPath=
-GenerationOptions=
-GenerationTasks=
-GenerationTargets=
-GenerationSelections=
-RevPkey=Yes
-RevFkey=Yes
-RevAkey=Yes
-RevCheck=Yes
-RevIndx=Yes
-RevOpts=Yes
-RevViewAsTabl=No
-RevViewOpts=Yes
-RevSystAsTabl=Yes
-RevTablPerm=No
-RevViewPerm=No
-RevProcPerm=No
-RevDbpkPerm=No
-RevSqncPerm=No
-RevAdtPerm=No
-RevUserPriv=No
-RevUserOpts=No
-RevGrpePriv=No
-RevRolePriv=No
-RevDtbsOpts=Yes
-RevDtbsPerm=No
-RevViewIndx=Yes
-RevJidxOpts=Yes
-RevStats=No
-RevTspcPerm=No
-RevCaseSensitive=No
-GenTrgrStdMsg=Yes
-GenTrgrMsgTab=
-GenTrgrMsgNo=
-GenTrgrMsgTxt=
-TrgrPreserve=No
-TrgrIns=Yes
-TrgrUpd=Yes
-TrgrDel=Yes
-TrgrC2Ins=Yes
-TrgrC2Upd=Yes
-TrgrC3=Yes
-TrgrC4=Yes
-TrgrC5=Yes
-TrgrC6=Yes
-TrgrC7=Yes
-TrgrC8=Yes
-TrgrC9=Yes
-TrgrC10=Yes
-TrgrC11=Yes
-TrgrC1=Yes
-TrgrC12Ins=Yes
-TrgrC12Upd=Yes
-TrgrC13=Yes
-UpdateTableStatistics=Yes
-UpdateColumnStatistics=Yes
-
-[FolderOptions\Physical Objects\Database Generation]
-GenScriptName=crebas
-GenScriptName0=
-GenScriptName1=
-GenScriptName2=
-GenScriptName3=
-GenScriptName4=
-GenScriptName5=
-GenScriptName6=
-GenScriptName7=
-GenScriptName8=
-GenScriptName9=
-GenPathName=
-GenSingleFile=Yes
-GenODBC=No
-GenCheckModel=Yes
-GenScriptPrev=Yes
-GenArchiveModel=No
-GenUseSync=No
-GenSyncChoice=0
-GenSyncArch=
-GenSyncRmg=0
-
-[FolderOptions\Physical Objects\Database Generation\Format]
-GenScriptTitle=Yes
-GenScriptNamLabl=No
-GenScriptQDtbs=Yes
-GenScriptQOwnr=Yes
-GenScriptCase=0
-GenScriptEncoding=ANSI
-GenScriptNAcct=No
-IdentifierDelimiter="
-
-[FolderOptions\Physical Objects\Database Generation\Database]
-Create=Yes
-Open=Yes
-Close=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Database\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Storage]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\User]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\User\Create]
-Physical Options=No
-
-[FolderOptions\Physical Objects\Database Generation\Group]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\Role]
-Create=Yes
-Drop=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType\Create]
-Default value=Yes
-Check=Yes
-
-[FolderOptions\Physical Objects\Database Generation\AbstractDataType]
-Create=Yes
-Header=Yes
-Footer=Yes
-Drop=Yes
-Comment=Yes
-Install JAVA class=Yes
-Remove JAVA class=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Rule]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Default]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Sequence]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create]
-Check=Yes
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column]
-User datatype=Yes
-Default value=Yes
-Check=Yes
-Physical Options=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key\Create]
-Constraint declaration=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Create]
-Constraint declaration=Yes
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Filter]
-Primary key=Yes
-Foreign key=Yes
-Alternate key=Yes
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\View\Create]
-Force Column list=No
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewColumn]
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Create]
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Filter]
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DBMSTrigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym\Filter]
-Table=Yes
-View=Yes
-Proc=Yes
-Synonym=Yes
-Database Package=Yes
-Sequence=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Procedure]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Procedure\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DatabasePackage]
-Create=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\WebService]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Dimension]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synchronization]
-GenBackupTabl=1
-GenKeepBackTabl=1
-GenTmpTablDrop=No
-GenKeepTablOpts=No
-
-[FolderOptions\Physical Objects\Test Data]
-GenDataPathName=
-GenDataSinglefile=Yes
-GenDataScriptName=testdata
-GenDataScriptName0=
-GenDataScriptName1=
-GenDataScriptName2=
-GenDataScriptName3=
-GenDataScriptName4=
-GenDataScriptName5=
-GenDataScriptName6=
-GenDataScriptName7=
-GenDataScriptName8=
-GenDataScriptName9=
-GenDataOdbc=0
-GenDataDelOld=No
-GenDataTitle=No
-GenDataDefNumRows=20
-GenDataCommit=0
-GenDataPacket=0
-GenDataOwner=No
-GenDataProfNumb=
-GenDataProfChar=
-GenDataProfDate=
-GenDataCSVSeparator=,
-GenDataFileFormat=CSV
-GenDataUseWizard=No
-
-[FolderOptions\Pdm]
-IndxIQName=%COLUMN%_%INDEXTYPE%
-IndxPK=Yes
-IndxFK=Yes
-IndxAK=Yes
-IndxPKName=%TABLE%_PK
-IndxFKName=%REFR%_FK
-IndxAKName=%AKEY%_AK
-IndxPreserve=No
-IndxThreshold=0
-IndxStats=No
-RefrPreserve=No
-JidxPreserve=No
-RbldMultiFact=Yes
-RbldMultiDim=Yes
-RbldMultiJidx=Yes
-CubePreserve=No
-TablStProcPreserve=No
-ProcDepPreserve=Yes
-TrgrDepPreserve=Yes
-CubeScriptPath=
-CubeScriptCase=0
-CubeScriptEncoding=ANSI
-CubeScriptNacct=No
-CubeScriptHeader=No
-CubeScriptExt=csv
-CubeScriptExt0=txt
-CubeScriptExt1=
-CubeScriptExt2=
-CubeScriptSep=,
-CubeScriptDeli="
-EstimationYears=0
-DfltDomnName=D_%.U:VALUE%
-DfltColnName=D_%.U:VALUE%
-DfltReuse=Yes
-DfltDrop=Yes
-[ModelOptions]
-
-[ModelOptions\Physical Objects]
-CaseSensitive=No
-DisplayName=Yes
-EnableTrans=No
-UseTerm=No
-EnableRequirements=No
-EnableFullShortcut=Yes
-DefaultDttp=
-IgnoreOwner=No
-RebuildTrigger=Yes
-RefrUnique=No
-RefrAutoMigrate=Yes
-RefrMigrateReuse=Yes
-RefrMigrateDomain=Yes
-RefrMigrateCheck=Yes
-RefrMigrateRule=Yes
-RefrMigrateExtd=No
-RefrMigrDefaultLink=No
-RefrDfltImpl=D
-RefrPrgtColn=No
-RefrMigrateToEnd=No
-RebuildTriggerDep=No
-ColnFKName=%.3:PARENT%_%COLUMN%
-ColnFKNameUse=No
-DomnCopyDttp=Yes
-DomnCopyChck=No
-DomnCopyRule=No
-DomnCopyMand=No
-DomnCopyExtd=No
-DomnCopyProf=No
-Notation=0
-DomnDefaultMandatory=No
-ColnDefaultMandatory=No
-TablDefaultOwner=
-ViewDefaultOwner=
-TrgrDefaultOwnerTabl=
-TrgrDefaultOwnerView=
-IdxDefaultOwnerTabl=
-IdxDefaultOwnerView=
-JdxDefaultOwner=
-DBPackDefaultOwner=
-SeqDefaultOwner=
-ProcDefaultOwner=
-DBMSTrgrDefaultOwner=
-Currency=USD
-RefrDeleteConstraint=1
-RefrUpdateConstraint=1
-RefrParentMandatory=No
-RefrParentChangeAllow=Yes
-RefrCheckOnCommit=No
-
-[ModelOptions\Physical Objects\NamingOptionsTemplates]
-
-[ModelOptions\Physical Objects\ClssNamingOptions]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Connection]
-
-[ModelOptions\Pdm]
-
-[ModelOptions\Generate]
-
-[ModelOptions\Generate\Xsm]
-GenRootElement=Yes
-GenComplexType=No
-GenAttribute=Yes
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=No
-
-[ModelOptions\Generate\Pdm]
-RRMapping=No
-
-[ModelOptions\Generate\Cdm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-Notation=2
-
-[ModelOptions\Generate\Oom]
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=Yes
-ClassPrefix=
-
-[ModelOptions\Generate\Ldm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-
-[ModelOptions\Default Opts]
-
-[ModelOptions\Default Opts\TABL]
-PhysOpts=
-
-[ModelOptions\Default Opts\COLN]
-PhysOpts=
-
-[ModelOptions\Default Opts\INDX]
-PhysOpts=
-
-[ModelOptions\Default Opts\AKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\PKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\STOR]
-PhysOpts=
-
-[ModelOptions\Default Opts\TSPC]
-PhysOpts=
-
-[ModelOptions\Default Opts\SQNC]
-PhysOpts=
-
-[ModelOptions\Default Opts\DTBS]
-PhysOpts=
-
-[ModelOptions\Default Opts\USER]
-PhysOpts=
-
-[ModelOptions\Default Opts\JIDX]
-PhysOpts=
-
-
-9FACA835-A932-4E7F-97E6-B50D495EACD6
-MySQL 5.0
-MYSQL50
-1562382219
-zhenghong
-1562382219
-zhenghong
-
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-
-
-
-
-7E56E115-2422-4191-BDF7-8D2F64817ADA
-cms_diagram
-cms_diagram
-1562382219
-zhenghong
-1562382267
-zhenghong
-[DisplayPreferences]
-
-[DisplayPreferences\PDM]
-
-[DisplayPreferences\General]
-Adjust to text=Yes
-Snap Grid=No
-Constrain Labels=Yes
-Display Grid=No
-Show Page Delimiter=Yes
-Show Links intersections=Yes
-Activate automatic link routing=Yes
-Grid size=0
-Graphic unit=2
-Window color=255, 255, 255
-Background image=
-Background mode=8
-Watermark image=
-Watermark mode=8
-Show watermark on screen=No
-Gradient mode=0
-Gradient end color=255, 255, 255
-Show Swimlane=No
-SwimlaneVert=Yes
-TreeVert=No
-CompDark=0
-
-[DisplayPreferences\Object]
-Show Icon=No
-Mode=2
-Trunc Length=40
-Word Length=40
-Word Text=!"#$%&')*+,-./:;=>?@\]^_`|}~
-Shortcut IntIcon=Yes
-Shortcut IntLoct=Yes
-Shortcut IntFullPath=No
-Shortcut IntLastPackage=Yes
-Shortcut ExtIcon=Yes
-Shortcut ExtLoct=No
-Shortcut ExtFullPath=No
-Shortcut ExtLastPackage=Yes
-Shortcut ExtIncludeModl=Yes
-EObjShowStrn=Yes
-ExtendedObject.Comment=No
-ExtendedObject.IconPicture=No
-ExtendedObject.TextStyle=No
-ExtendedObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Object Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-ELnkShowStrn=Yes
-ELnkShowName=Yes
-ExtendedLink_SymbolLayout=<Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Source" >[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] </Form>[CRLF]</Form>
-FileObject.Stereotype=No
-FileObject.DisplayName=Yes
-FileObject.LocationOrName=No
-FileObject.IconPicture=No
-FileObject.TextStyle=No
-FileObject.IconMode=Yes
-FileObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Location" Attribute="LocationOrName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Package.Stereotype=Yes
-Package.Comment=No
-Package.IconPicture=No
-Package.TextStyle=No
-Package_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Display Model Version=Yes
-Table.Stereotype=Yes
-Table.DisplayName=Yes
-Table.OwnerDisplayName=No
-Table.Columns=Yes
-Table.Columns._Filter="All Columns" PDMCOLNALL
-Table.Columns._Columns=Stereotype DataType KeyIndicator
-Table.Columns._Limit=-5
-Table.Keys=No
-Table.Keys._Columns=Stereotype Indicator
-Table.Indexes=No
-Table.Indexes._Columns=Stereotype
-Table.Triggers=No
-Table.Triggers._Columns=Stereotype
-Table.Comment=No
-Table.IconPicture=No
-Table.TextStyle=No
-Table_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="Stereotype No\r\nDisplayName Yes\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nDomain No\r\nKeyIndicator No\r\nIndexIndicator No\r\nNullStatus No" Filters=""All Columns" PDMCOLNALL ""\r\n"PK Columns" PDMCOLNPK "\"PRIM \"TRUE\" TRUE\""\r\n"Key Columns" PDMCOLNKEY "\"KEYS \"TRUE\" TRUE\""" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Keys" Collection="Keys" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Triggers" Collection="Triggers" Columns="Stereotype No\r\nDisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-View.Stereotype=Yes
-View.DisplayName=Yes
-View.OwnerDisplayName=No
-View.Columns=Yes
-View.Columns._Columns=DisplayName
-View.Columns._Limit=-5
-View.TemporaryVTables=Yes
-View.Indexes=No
-View.Comment=No
-View.IconPicture=No
-View.TextStyle=No
-View_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="DisplayName No\r\nExpression No\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nIndexIndicator No" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Tables" Collection="TemporaryVTables" Columns="Name Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="DisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Procedure.Stereotype=No
-Procedure.DisplayName=Yes
-Procedure.OwnerDisplayName=No
-Procedure.Comment=No
-Procedure.IconPicture=No
-Procedure.TextStyle=No
-Procedure_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Reference.Cardinality=No
-Reference.ImplementationType=No
-Reference.ChildRole=Yes
-Reference.Stereotype=Yes
-Reference.DisplayName=No
-Reference.ForeignKeyConstraintName=No
-Reference.JoinExpression=No
-Reference.Integrity=No
-Reference.ParentRole=Yes
-Reference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Cardinality" Attribute="Cardinality" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Implementation" Attribute="ImplementationType" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Cons&traint Name" Attribute="ForeignKeyConstraintName" Prefix="" Suffix="" Caption="Cons&traint Name" Mandatory="No" />[CRLF] <StandardAttribute Name="Join" Attribute="JoinExpression" Prefix="" Suffix="" Caption="Join" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Referential integrity" Attribute="Integrity" Prefix="" Suffix="" Caption="Referential integrity" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-ViewReference.ChildRole=Yes
-ViewReference.Stereotype=Yes
-ViewReference.DisplayName=No
-ViewReference.JoinExpression=No
-ViewReference.ParentRole=Yes
-ViewReference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Join Expression" Attribute="JoinExpression" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-
-[DisplayPreferences\Symbol]
-
-[DisplayPreferences\Symbol\FRMEOBJ]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=6000
-Height=2000
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=64
-Brush gradient color=192 192 192
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 255 128 128
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FRMELNK]
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FILO]
-OBJSTRNFont=新宋体,8,N
-OBJSTRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LCNMFont=新宋体,8,N
-LCNMFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=3600
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PDMPCKG]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 178 178 178
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\TABL]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-KeysFont=新宋体,8,N
-KeysFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-TriggersFont=新宋体,8,N
-TriggersFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=178 214 252
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VIEW]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-TemporaryVTablesFont=新宋体,8,N
-TemporaryVTablesFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=208 208 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PROC]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4000
-Height=1000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 108 0
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\REFR]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VREF]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\USRDEPD]
-OBJXSTRFont=新宋体,8,N
-OBJXSTRFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=2 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\Free Symbol]
-Free TextFont=新宋体,8,N
-Free TextFont color=0, 0, 0
-Line style=0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-(8268, 11693)
-((315,354), (433,354))
-1
-1
-
-
-1562382223
-1562398155
-((12764,12807), (14014,14721))
-((13389,13207),(13389,14321))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398152
-((4579,23391), (6818,24641))
-((6418,24016),(4979,24016))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398150
-((-13988,11721), (-9013,12971))
-((-9413,12346),(-13588,12346))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398164
-((3845,1409), (7827,2659))
-((7427,2034),(4245,2034))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398148
-((-13413,20230), (-9013,21480))
-((-13013,20855),(-9413,20855))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398161
-((-12528,4092), (-8975,5342))
-((-9375,4717),(-12128,4717))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398171
-((11,-6882), (8524,-5632))
-((411,-6257),(8124,-6257))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382223
-1562398158
--1
-((-9375,-3626), (4245,7696))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398154
--1
-((6965,14321), (19813,20693))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398155
--1
-((6644,8545), (27770,13207))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382223
-1562398147
--1
-((-9413,10469), (4979,25091))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398152
--1
-((6418,22017), (19205,26016))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382223
-1562398150
--1
-((-26436,9160), (-13588,15532))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398148
--1
-((-25461,17274), (-13013,24436))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382223
-1562398164
--1
-((7427,624), (19875,7786))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382223
-1562398161
--1
-((-24976,1531), (-12128,7903))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398169
--1
-((-8663,-13712), (411,-5004))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382223
-1562398171
--1
-((8124,-9443), (20200,-3071))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382223
-1562398166
--1
-((-24742,-9041), (-11714,-1019))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-
-
-
-
-
-
-
-49DC6A7A-DE94-469A-AA8E-A2153639263F
-cms_topic
-cms_topic
-1522050428
-zhenghong
-1562382223
-zhenghong
-话题表
-
-
-
-A753DDF3-C25C-47E3-94A3-20B9E1D7C790
-id
-id
-1522050454
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-BABE4291-7E93-4E41-B0CA-210867D62A7F
-category_id
-category_id
-1522141317
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-B5D46FC3-1973-45AB-979B-1337D545CA14
-name
-name
-1522050467
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-EB9D6222-FDB5-427B-AB45-A3F0CE46EF1D
-create_time
-create_time
-1522140807
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-02FA6792-C97C-496B-B385-2E03EC443D15
-start_time
-start_time
-1522140807
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-6DA17EBE-C2FA-485A-964B-2584174A3B51
-end_time
-end_time
-1522140807
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-308139B8-C262-435C-8DE4-57C42909222C
-attend_count
-attend_count
-1522140807
-zhenghong
-1562382223
-zhenghong
-参与人数
-int
-
-
-CF4E298F-6AF3-4C9B-9A41-B8E706CE560C
-attention_count
-attention_count
-1522140807
-zhenghong
-1562382223
-zhenghong
-关注人数
-int
-
-
-A6DFB114-E497-4EF6-BBE1-676C03E97754
-read_count
-read_count
-1522140807
-zhenghong
-1562382223
-zhenghong
-int
-
-
-6E0304B3-147E-4668-B1EE-0581AC805DAF
-award_name
-award_name
-1522140807
-zhenghong
-1562382223
-zhenghong
-奖品名称
-varchar(100)
-100
-
-
-1BB589FD-7C24-4DD8-886B-B0566BF03A51
-attend_type
-attend_type
-1522140989
-zhenghong
-1562382223
-zhenghong
-参与方式
-varchar(100)
-100
-
-
-D80E300B-614F-4A4E-9152-92C768750AB3
-content
-content
-1522141034
-zhenghong
-1562382223
-zhenghong
-话题内容
-text
-
-
-
-
-7691B008-F8B4-48F7-B4EB-8EE9E0277A2E
-Key_1
-Key_1
-1522050454
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-C58D0CE0-8D23-4588-A188-DBC79CDFCB97
-cms_prefrence_area
-cms_prefrence_area
-1522112533
-zhenghong
-1562382223
-zhenghong
-优选专区
-
-
-
-93ACC6A1-3AF9-4EB4-80CE-7F87F4772F12
-id
-id
-1522112534
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-4B5F635D-56DC-4030-BEA9-5B35B84D3A4E
-name
-name
-1522112567
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-58C30578-4E0C-402D-BC11-0555AE5076CD
-sub_title
-sub_title
-1522139220
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-414A2C53-1ABA-44ED-BA5C-CBC55ADB3DDD
-pic
-pic
-1522139329
-zhenghong
-1562382223
-zhenghong
-展示图片
-varbinary(500)
-500
-
-
-4846B9AA-9A6F-448D-BFDC-9F690E873D2E
-sort
-sort
-1522139372
-zhenghong
-1562382223
-zhenghong
-int
-
-
-074F346B-79BC-41D6-807A-D19DFDDC1B33
-show_status
-show_status
-1522139372
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-
-
-62DF6EAF-2690-49A7-BA97-CB5F21859830
-Key_1
-Key_1
-1522112534
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E34BDBD2-A5E1-4D53-9F2B-68C9546F1AF3
-cms_prefrence_area_product_relation
-cms_prefrence_area_product_relation
-1522112617
-zhenghong
-1562382223
-zhenghong
-优选专区和产品关系表
-
-
-
-79DB0520-E813-43B5-B313-D7BF9ED06797
-id
-id
-1522112618
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-6A313E87-768B-4731-B32B-BA36A39CB76D
-prefrence_area_id
-prefrence_area_id
-1522112691
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-F0DB80E2-EF5F-4F70-81A8-60103148D351
-product_id
-product_id
-1522112694
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-
-
-9F4F88AB-6872-4956-AE43-1A50C610F5D5
-Key_1
-Key_1
-1522112618
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-1E4205B7-F905-47A1-91A3-98FA96DFBC93
-cms_subject
-cms_subject
-1522138190
-zhenghong
-1562382223
-zhenghong
-专题表
-
-
-
-B721695D-59D9-46AF-BDA6-74F0CFA5FB0E
-id
-id
-1522138235
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-3FA4D52F-EA00-467E-BD6D-552B5AF8B461
-category_id
-category_id
-1522138705
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-59DE1018-1E93-4DDC-AD71-55DF29403215
-title
-title
-1522138235
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-2D029A92-569F-4856-BBB9-A7660681369B
-pic
-pic
-1522138235
-zhenghong
-1562382223
-zhenghong
-专题主图
-varchar(500)
-500
-
-
-1729C7A6-C188-4AD2-AC64-3A8692884E4B
-product_count
-product_count
-1522138235
-zhenghong
-1562382223
-zhenghong
-关联产品数量
-int
-
-
-9F8275D0-AC91-45FA-82A4-6789272007E7
-recommend_status
-recommend_status
-1522138235
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-4D2A5D81-D81D-4B11-BA41-EB5379693344
-create_time
-create_time
-1522138313
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-FC71652F-ABB5-4518-BA2F-E60CF24239C7
-collect_count
-collect_count
-1522138313
-zhenghong
-1562382223
-zhenghong
-int
-
-
-3192A12F-6A65-41C5-B4D1-6B52332D9341
-read_count
-read_count
-1522138313
-zhenghong
-1562382223
-zhenghong
-int
-
-
-3D6FF6A2-A691-4937-9D1F-E191DA34C045
-comment_count
-comment_count
-1522138313
-zhenghong
-1562382223
-zhenghong
-int
-
-
-8DAC1D03-8386-46DD-B541-40F97C07155D
-album_pics
-album_pics
-1522138313
-zhenghong
-1562382223
-zhenghong
-画册图片用逗号分割
-varchar(1000)
-1000
-
-
-400D2DD5-F6D7-4FCC-9DEE-5041F2FDD6DD
-description
-description
-1522138733
-zhenghong
-1562382223
-zhenghong
-varchar(1000)
-1000
-
-
-AC118EC2-331C-49AB-8B04-6CC07C98AE4A
-show_status
-show_status
-1522138733
-zhenghong
-1562382223
-zhenghong
-显示状态:0->不显示;1->显示
-int(1)
-1
-
-
-F005D703-EBE6-4F0E-AAC8-409D9B08913E
-content
-content
-1522138733
-zhenghong
-1562382223
-zhenghong
-text
-
-
-A011CAA1-7CB2-4234-B9E1-B5FC5D7C7F6B
-forward_count
-forward_count
-1522139567
-zhenghong
-1562382223
-zhenghong
-转发数
-int
-
-
-0B1B15A2-8446-4CAF-BFBF-A0139324F950
-category_name
-category_name
-1542086194
-zhenghong
-1562382223
-zhenghong
-专题分类名称
-varchar(200)
-200
-
-
-
-
-D176F8E7-D393-462A-ABE1-9E482073B473
-Key_1
-Key_1
-1522138603
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-415E856E-087C-4FBA-B0FA-6000DC994F3C
-cms_subject_product_relation
-cms_subject_product_relation
-1522138561
-zhenghong
-1562382223
-zhenghong
-专题商品关系表
-
-
-
-D991A6E2-405E-4EE4-8C2A-B70773BC029E
-id
-id
-1522138589
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-5DBB7F44-1EC4-43D5-B155-4A919820C25E
-subject_id
-subject_id
-1522138613
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-AF4182D5-8D8D-4217-86F4-0742C560F691
-product_id
-product_id
-1522138618
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-
-
-51EED529-D25F-4B12-879D-FEFAA36A170F
-Key_1
-Key_1
-1522138589
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-5B1B9C64-80DA-426A-A22C-AA642A885ADD
-cms_subject_category
-cms_subject_category
-1522138655
-zhenghong
-1562382223
-zhenghong
-专题分类表
-
-
-
-F257D69B-BE38-4F1D-A7A9-78293CCC601A
-id
-id
-1522138656
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-9115772D-130B-41C7-8261-6EF08CBA3C4F
-name
-name
-1522138679
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-2A86076B-8C18-41C9-8905-28082BAE8B4D
-icon
-icon
-1522139032
-zhenghong
-1562382223
-zhenghong
-分类图标
-varchar(500)
-500
-
-
-7F219C53-26F0-4CAB-8AD3-D76124D4D84A
-subject_count
-subject_count
-1522139087
-zhenghong
-1562382223
-zhenghong
-专题数量
-int
-
-
-03822A45-89CC-4B49-98F1-69D5471B58C0
-show_status
-show_status
-1522139129
-zhenghong
-1562382223
-zhenghong
-int(2)
-2
-
-
-88CEFC15-A18E-4306-9E6A-FA848D53E9FC
-sort
-sort
-1522139129
-zhenghong
-1562382223
-zhenghong
-int
-
-
-
-
-51AB1E5E-65A4-4499-A262-79A8C419B6CA
-Key_1
-Key_1
-1522138656
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-3B543080-DBF8-418D-B635-BEDE57365F0A
-cms_subject_comment
-cms_subject_comment
-1522118840
-zhenghong
-1562382223
-zhenghong
-专题评论表
-
-
-
-42D421D6-154D-4A25-9690-051DE798DFBB
-id
-id
-1522118870
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-CA60B591-4410-4025-9B1A-AE62652DB1DA
-subject_id
-subject_id
-1522141232
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-C840A3D8-A3A8-4D1A-BD46-D676608901CC
-member_nick_name
-member_nick_name
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-98809127-C2A3-42D1-B442-556246382FF2
-member_icon
-member_icon
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-204D3092-4D86-40AD-9804-9AA0AF8F32E4
-content
-content
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(1000)
-1000
-
-
-865C67C2-1970-46F7-9658-C98EF4421DCB
-create_time
-create_time
-1522118977
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-B81A890E-C86E-49C0-92FE-9ED3F294A537
-show_status
-show_status
-1522139856
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-
-
-1A215BF5-B713-4982-BAF8-5BC0EB2BD614
-Key_1
-Key_1
-1522118880
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7FC98AA8-83C8-4CA4-B05C-19BEEBB4C2F8
-cms_topic_comment
-cms_topic_comment
-1522118840
-zhenghong
-1562382223
-zhenghong
-专题评论表
-
-
-
-979AF53E-B771-4ACB-B0DC-A996681F4E32
-id
-id
-1522118870
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-75EE1F2A-D4B4-4419-B26A-BAF320B53E97
-member_nick_name
-member_nick_name
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-854D89F6-1B40-46E0-871B-48AC5922D541
-topic_id
-topic_id
-1522141157
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-10559D21-8DC6-4909-A5EB-0BC1279E418B
-member_icon
-member_icon
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(255)
-255
-
-
-480E0B8D-D39C-4B6A-B5B1-B8C6C5083A34
-content
-content
-1522118977
-zhenghong
-1562382223
-zhenghong
-varchar(1000)
-1000
-
-
-B7CEF520-F346-45CB-AFF7-9B7FE6394D2F
-create_time
-create_time
-1522118977
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-C5D3D7D6-0C17-4364-8747-E2594E2ADD37
-show_status
-show_status
-1522139856
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-
-
-D8AF11A2-FE44-4C75-B454-8FF4BB113779
-Key_1
-Key_1
-1522118880
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A91DF854-0A37-4456-96B1-D98285E5379A
-cms_topic_category
-cms_topic_category
-1522138655
-zhenghong
-1562382223
-zhenghong
-话题分类表
-
-
-
-0B2C26DD-045B-4818-893A-18B808624E1B
-id
-id
-1522138656
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-7E21DB61-610E-4E56-B5B5-49FFA51D26F9
-name
-name
-1522138679
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-25B9C6FA-D56F-4EED-8884-135B2C80F8B1
-icon
-icon
-1522139032
-zhenghong
-1562382223
-zhenghong
-分类图标
-varchar(500)
-500
-
-
-21A25825-5A5E-43B8-8A58-EE6DF518071F
-subject_count
-subject_count
-1522139087
-zhenghong
-1562382223
-zhenghong
-专题数量
-int
-
-
-DE28D801-8B38-496B-8182-36D365136241
-show_status
-show_status
-1522139129
-zhenghong
-1562382223
-zhenghong
-int(2)
-2
-
-
-331374D0-AAE5-4E2D-8CFB-DD4ED74C5EC9
-sort
-sort
-1522139129
-zhenghong
-1562382223
-zhenghong
-int
-
-
-
-
-AB2495B7-154F-4B2C-B61B-2D0EF0C54498
-Key_1
-Key_1
-1522138656
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E5C1D6A2-CD74-48DF-A0F6-85778FE6A589
-cms_help
-cms_help
-1522141745
-zhenghong
-1562382223
-zhenghong
-帮助表
-
-
-
-9A2DC0BD-C142-4717-A579-45C0CF1CEBFB
-id
-id
-1522141746
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-3302ED99-4B4E-4603-B95A-7BD6B2EE251E
-category_id
-category_id
-1522142006
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-5DBCF6B0-46A2-4B7A-A3F3-03FE1BA3F5D2
-icon
-icon
-1522141808
-zhenghong
-1562382223
-zhenghong
-varchar(500)
-500
-
-
-97B55403-467C-434B-B137-4E8C691E14EC
-title
-title
-1522141808
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-75A071B1-1F82-417D-8A12-FEFB8CE0755F
-show_status
-show_status
-1522141808
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-B8C663DE-5808-4025-896A-75AFBE21556E
-create_time
-create_time
-1522141808
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-19542E70-C753-4735-8FBE-1A10DF6E8C9F
-read_count
-read_count
-1522141808
-zhenghong
-1562382223
-zhenghong
-int(1)
-1
-
-
-B7BB0184-064C-4744-8F87-FB5F1864D10B
-content
-content
-1522141808
-zhenghong
-1562382223
-zhenghong
-text
-
-
-
-
-46AEEDE3-DC7F-4DFA-A112-0C338DE42AD5
-Key_1
-Key_1
-1522141746
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-0FB93080-BA28-4F8E-8C33-0363A6A1E7B5
-cms_help_category
-cms_help_category
-1522138655
-zhenghong
-1562382223
-zhenghong
-帮助分类表
-
-
-
-FFC352DA-C29C-42A5-A6C8-2D6BEB6C3CF4
-id
-id
-1522138656
-zhenghong
-1562382223
-zhenghong
-bigint
-1
-1
-
-
-54C730DB-6BB9-4558-B47E-3387C4814421
-name
-name
-1522138679
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-C662F63A-B4E2-4E6D-8450-35C1318A56A1
-icon
-icon
-1522139032
-zhenghong
-1562382223
-zhenghong
-分类图标
-varchar(500)
-500
-
-
-14B60D15-78CE-4D23-838A-329E1FB55FAD
-help_count
-help_count
-1522139087
-zhenghong
-1562382223
-zhenghong
-专题数量
-int
-
-
-89ABB02B-12F5-4C7E-9486-4446FABF5C52
-show_status
-show_status
-1522139129
-zhenghong
-1562382223
-zhenghong
-int(2)
-2
-
-
-3EFED6BB-E44B-401B-830E-4C3A8880084A
-sort
-sort
-1522139129
-zhenghong
-1562382223
-zhenghong
-int
-
-
-
-
-37AD8049-4613-4C39-AA67-6626D4B8A9F0
-Key_1
-Key_1
-1522138656
-zhenghong
-1562382223
-zhenghong
-
-
-
-
-
-
-
-
-
-
-86A7444B-E20E-4817-95E6-17EAFE8D8A08
-cms_member_report
-cms_member_report
-1522142154
-zhenghong
-1562382223
-zhenghong
-用户举报表
-
-
-
-49789C36-4022-44C4-BDDE-DFF4FD090E1D
-id
-id
-1522142174
-zhenghong
-1562382223
-zhenghong
-bigint
-
-
-638BCFC4-F479-4C73-A330-B791232B7872
-report_type
-report_type
-1522142174
-zhenghong
-1562382223
-zhenghong
-举报类型:0->商品评价;1->话题内容;2->用户评论
-int(1)
-1
-
-
-BB2B9A06-5D56-4CEA-8293-FB07D1652152
-report_member_name
-report_member_name
-1522142240
-zhenghong
-1562382223
-zhenghong
-举报人
-varchar(100)
-100
-
-
-DB44E5C5-C1D7-4304-85E0-FBA1E40E5E51
-create_time
-create_time
-1522142298
-zhenghong
-1562382223
-zhenghong
-datetime
-
-
-87130427-D7EE-457F-9874-860169983FBA
-report_object
-report_object
-1522142298
-zhenghong
-1562382223
-zhenghong
-varchar(100)
-100
-
-
-D346F26D-7071-46EB-8F9C-A1428FFD3E54
-report_status
-report_status
-1522142298
-zhenghong
-1562382223
-zhenghong
-举报状态:0->未处理;1->已处理
-int(1)
-1
-
-
-1DE710A5-3CF1-41FA-A0DC-D3CCB92E991D
-handle_status
-handle_status
-1522142386
-zhenghong
-1562382223
-zhenghong
-处理结果:0->无效;1->有效;2->恶意
-int(1)
-1
-
-
-2EFE844B-EAC2-4961-912A-C84B5A6D3430
-note
-note
-1522142456
-zhenghong
-1562382223
-zhenghong
-varchar(200)
-200
-
-
-
-
-
-
-BD72FB7C-BCA5-4AA8-BC59-786B41FF8815
-Reference_18
-Reference_18
-1522112691
-zhenghong
-1522112691
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-15E0BA39-1922-4BBE-AB5F-4419B11688EB
-1522112691
-zhenghong
-1522112691
-zhenghong
-
-
-
-
-
-
-
-
-
-
-0593D4F6-D304-4DD5-8F7D-63D14004578F
-Reference_26
-Reference_26
-1522138613
-zhenghong
-1522138613
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-3BC3AA81-9940-4281-83C0-80E2B9713658
-1522138613
-zhenghong
-1522138613
-zhenghong
-
-
-
-
-
-
-
-
-
-
-894F7E98-7CFA-4F16-A5FD-4DE2CFE6D3B0
-Reference_28
-Reference_28
-1522138705
-zhenghong
-1522138705
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-38044B3F-BC04-4940-AD03-E5557D59BD25
-1522138705
-zhenghong
-1522138705
-zhenghong
-
-
-
-
-
-
-
-
-
-
-37A69B6E-01CF-46B8-81FD-FA5FB48CDD44
-Reference_30
-Reference_30
-1522141157
-zhenghong
-1522141157
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-18F79F45-48BA-4527-A36A-E30EE81DAF69
-1522141157
-zhenghong
-1522141157
-zhenghong
-
-
-
-
-
-
-
-
-
-
-B78754A7-57CA-400D-B136-71F099DB2CB6
-Reference_29
-Reference_29
-1522141232
-zhenghong
-1522141232
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-A386F1C1-A4E8-4D3E-B334-32363488101B
-1522141232
-zhenghong
-1522141232
-zhenghong
-
-
-
-
-
-
-
-
-
-
-76738C59-0CCD-46E3-81F0-A1BF950CD2E0
-Reference_31
-Reference_31
-1522141316
-zhenghong
-1562382223
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-6D95E447-7A15-4DC4-B964-31E831443639
-1522141317
-zhenghong
-1522141317
-zhenghong
-
-
-
-
-
-
-
-
-
-
-4F1FC5D6-2B28-4B5B-8C46-25F7554FEFD7
-Reference_32
-Reference_32
-1522142006
-zhenghong
-1522142006
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-34B350FC-A979-41AE-AD85-6FBFD1A174C7
-1522142006
-zhenghong
-1522142006
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-FE98B7D0-9559-4B06-A8BB-59B33DF51E25
-PUBLIC
-PUBLIC
-1562382219
-zhenghong
-1562382219
-zhenghong
-
-
-
-
-70204CC9-296E-48D4-A5BD-F6832F9C2037
-MySQL 5.0
-MYSQL50
-1562382219
-zhenghong
-1562382219
-zhenghong
-file:///%_DBMS%/mysql50.xdb
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-1276524678
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/document/pdm/mall_oms.pdm b/document/pdm/mall_oms.pdm
deleted file mode 100644
index 3b8fe265..00000000
--- a/document/pdm/mall_oms.pdm
+++ /dev/null
@@ -1,3992 +0,0 @@
-
-
-
-
-
-
-
-
-
-6931A1DF-3870-4E03-AC7C-3CCFBCCFC72B
-mall_oms
-mall_oms
-1562381480
-zhenghong
-1563093407
-zhenghong
-[FolderOptions]
-
-[FolderOptions\Physical Objects]
-GenerationCheckModel=Yes
-GenerationPath=
-GenerationOptions=
-GenerationTasks=
-GenerationTargets=
-GenerationSelections=
-RevPkey=Yes
-RevFkey=Yes
-RevAkey=Yes
-RevCheck=Yes
-RevIndx=Yes
-RevOpts=Yes
-RevViewAsTabl=No
-RevViewOpts=Yes
-RevSystAsTabl=Yes
-RevTablPerm=No
-RevViewPerm=No
-RevProcPerm=No
-RevDbpkPerm=No
-RevSqncPerm=No
-RevAdtPerm=No
-RevUserPriv=No
-RevUserOpts=No
-RevGrpePriv=No
-RevRolePriv=No
-RevDtbsOpts=Yes
-RevDtbsPerm=No
-RevViewIndx=Yes
-RevJidxOpts=Yes
-RevStats=No
-RevTspcPerm=No
-RevCaseSensitive=No
-GenTrgrStdMsg=Yes
-GenTrgrMsgTab=
-GenTrgrMsgNo=
-GenTrgrMsgTxt=
-TrgrPreserve=No
-TrgrIns=Yes
-TrgrUpd=Yes
-TrgrDel=Yes
-TrgrC2Ins=Yes
-TrgrC2Upd=Yes
-TrgrC3=Yes
-TrgrC4=Yes
-TrgrC5=Yes
-TrgrC6=Yes
-TrgrC7=Yes
-TrgrC8=Yes
-TrgrC9=Yes
-TrgrC10=Yes
-TrgrC11=Yes
-TrgrC1=Yes
-TrgrC12Ins=Yes
-TrgrC12Upd=Yes
-TrgrC13=Yes
-UpdateTableStatistics=Yes
-UpdateColumnStatistics=Yes
-
-[FolderOptions\Physical Objects\Database Generation]
-GenScriptName=crebas
-GenScriptName0=
-GenScriptName1=
-GenScriptName2=
-GenScriptName3=
-GenScriptName4=
-GenScriptName5=
-GenScriptName6=
-GenScriptName7=
-GenScriptName8=
-GenScriptName9=
-GenPathName=
-GenSingleFile=Yes
-GenODBC=No
-GenCheckModel=Yes
-GenScriptPrev=Yes
-GenArchiveModel=No
-GenUseSync=No
-GenSyncChoice=0
-GenSyncArch=
-GenSyncRmg=0
-
-[FolderOptions\Physical Objects\Database Generation\Format]
-GenScriptTitle=Yes
-GenScriptNamLabl=No
-GenScriptQDtbs=No
-GenScriptQOwnr=Yes
-GenScriptCase=0
-GenScriptEncoding=ANSI
-GenScriptNAcct=No
-IdentifierDelimiter="
-
-[FolderOptions\Physical Objects\Database Generation\Database]
-Create=Yes
-Open=Yes
-Close=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Database\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Storage]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\User]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\User\Create]
-Physical Options=No
-
-[FolderOptions\Physical Objects\Database Generation\Group]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\Role]
-Create=Yes
-Drop=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType\Create]
-Default value=Yes
-Check=Yes
-
-[FolderOptions\Physical Objects\Database Generation\AbstractDataType]
-Create=Yes
-Header=Yes
-Footer=Yes
-Drop=Yes
-Comment=Yes
-Install JAVA class=Yes
-Remove JAVA class=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Rule]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Default]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Sequence]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create]
-Check=Yes
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column]
-User datatype=No
-Default value=Yes
-Check=Yes
-Physical Options=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key\Create]
-Constraint declaration=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Create]
-Constraint declaration=Yes
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Filter]
-Primary key=No
-Foreign key=No
-Alternate key=No
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\View\Create]
-Force Column list=No
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewColumn]
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Create]
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Filter]
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DBMSTrigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym\Filter]
-Table=Yes
-View=Yes
-Proc=Yes
-Synonym=Yes
-Database Package=Yes
-Sequence=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Procedure]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Procedure\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DatabasePackage]
-Create=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\WebService]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Dimension]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synchronization]
-GenBackupTabl=1
-GenKeepBackTabl=1
-GenTmpTablDrop=No
-GenKeepTablOpts=No
-
-[FolderOptions\Physical Objects\Test Data]
-GenDataPathName=
-GenDataSinglefile=Yes
-GenDataScriptName=testdata
-GenDataScriptName0=
-GenDataScriptName1=
-GenDataScriptName2=
-GenDataScriptName3=
-GenDataScriptName4=
-GenDataScriptName5=
-GenDataScriptName6=
-GenDataScriptName7=
-GenDataScriptName8=
-GenDataScriptName9=
-GenDataOdbc=0
-GenDataDelOld=No
-GenDataTitle=No
-GenDataDefNumRows=20
-GenDataCommit=0
-GenDataPacket=0
-GenDataOwner=No
-GenDataProfNumb=
-GenDataProfChar=
-GenDataProfDate=
-GenDataCSVSeparator=,
-GenDataFileFormat=CSV
-GenDataUseWizard=No
-
-[FolderOptions\Pdm]
-IndxIQName=%COLUMN%_%INDEXTYPE%
-IndxPK=Yes
-IndxFK=Yes
-IndxAK=Yes
-IndxPKName=%TABLE%_PK
-IndxFKName=%REFR%_FK
-IndxAKName=%AKEY%_AK
-IndxPreserve=No
-IndxThreshold=0
-IndxStats=No
-RefrPreserve=No
-JidxPreserve=No
-RbldMultiFact=Yes
-RbldMultiDim=Yes
-RbldMultiJidx=Yes
-CubePreserve=No
-TablStProcPreserve=No
-ProcDepPreserve=Yes
-TrgrDepPreserve=Yes
-CubeScriptPath=
-CubeScriptCase=0
-CubeScriptEncoding=ANSI
-CubeScriptNacct=No
-CubeScriptHeader=No
-CubeScriptExt=csv
-CubeScriptExt0=txt
-CubeScriptExt1=
-CubeScriptExt2=
-CubeScriptSep=,
-CubeScriptDeli="
-EstimationYears=0
-DfltDomnName=D_%.U:VALUE%
-DfltColnName=D_%.U:VALUE%
-DfltReuse=Yes
-DfltDrop=Yes
-[ModelOptions]
-
-[ModelOptions\Physical Objects]
-CaseSensitive=No
-DisplayName=Yes
-EnableTrans=No
-UseTerm=No
-EnableRequirements=No
-EnableFullShortcut=Yes
-DefaultDttp=
-IgnoreOwner=No
-RebuildTrigger=Yes
-RefrUnique=No
-RefrAutoMigrate=Yes
-RefrMigrateReuse=Yes
-RefrMigrateDomain=Yes
-RefrMigrateCheck=Yes
-RefrMigrateRule=Yes
-RefrMigrateExtd=No
-RefrMigrDefaultLink=No
-RefrDfltImpl=D
-RefrPrgtColn=No
-RefrMigrateToEnd=No
-RebuildTriggerDep=No
-ColnFKName=%.3:PARENT%_%COLUMN%
-ColnFKNameUse=No
-DomnCopyDttp=Yes
-DomnCopyChck=No
-DomnCopyRule=No
-DomnCopyMand=No
-DomnCopyExtd=No
-DomnCopyProf=No
-Notation=0
-DomnDefaultMandatory=No
-ColnDefaultMandatory=No
-TablDefaultOwner=
-ViewDefaultOwner=
-TrgrDefaultOwnerTabl=
-TrgrDefaultOwnerView=
-IdxDefaultOwnerTabl=
-IdxDefaultOwnerView=
-JdxDefaultOwner=
-DBPackDefaultOwner=
-SeqDefaultOwner=
-ProcDefaultOwner=
-DBMSTrgrDefaultOwner=
-Currency=USD
-RefrDeleteConstraint=1
-RefrUpdateConstraint=1
-RefrParentMandatory=No
-RefrParentChangeAllow=Yes
-RefrCheckOnCommit=No
-
-[ModelOptions\Physical Objects\NamingOptionsTemplates]
-
-[ModelOptions\Physical Objects\ClssNamingOptions]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Connection]
-
-[ModelOptions\Pdm]
-
-[ModelOptions\Generate]
-
-[ModelOptions\Generate\Xsm]
-GenRootElement=Yes
-GenComplexType=No
-GenAttribute=Yes
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=No
-
-[ModelOptions\Generate\Pdm]
-RRMapping=No
-
-[ModelOptions\Generate\Cdm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-Notation=2
-
-[ModelOptions\Generate\Oom]
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=Yes
-ClassPrefix=
-
-[ModelOptions\Generate\Ldm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-
-[ModelOptions\Default Opts]
-
-[ModelOptions\Default Opts\TABL]
-PhysOpts=
-
-[ModelOptions\Default Opts\COLN]
-PhysOpts=
-
-[ModelOptions\Default Opts\INDX]
-PhysOpts=
-
-[ModelOptions\Default Opts\AKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\PKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\STOR]
-PhysOpts=
-
-[ModelOptions\Default Opts\TSPC]
-PhysOpts=
-
-[ModelOptions\Default Opts\SQNC]
-PhysOpts=
-
-[ModelOptions\Default Opts\DTBS]
-PhysOpts=
-
-[ModelOptions\Default Opts\USER]
-PhysOpts=
-
-[ModelOptions\Default Opts\JIDX]
-PhysOpts=
-
-
-85A83FDC-6500-4658-A73F-FFC617B7A7B4
-MySQL 5.0
-MYSQL50
-1562381480
-zhenghong
-1562381480
-zhenghong
-
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-
-
-
-
-6F1B6D14-D5F0-4FD1-BA8F-9FF6DB6D9EFF
-oms_diagram
-oms_diagram
-1562381480
-zhenghong
-1562381675
-zhenghong
-[DisplayPreferences]
-
-[DisplayPreferences\PDM]
-
-[DisplayPreferences\General]
-Adjust to text=Yes
-Snap Grid=No
-Constrain Labels=Yes
-Display Grid=No
-Show Page Delimiter=Yes
-Show Links intersections=Yes
-Activate automatic link routing=Yes
-Grid size=0
-Graphic unit=2
-Window color=255, 255, 255
-Background image=
-Background mode=8
-Watermark image=
-Watermark mode=8
-Show watermark on screen=No
-Gradient mode=0
-Gradient end color=255, 255, 255
-Show Swimlane=No
-SwimlaneVert=Yes
-TreeVert=No
-CompDark=0
-
-[DisplayPreferences\Object]
-Show Icon=No
-Mode=2
-Trunc Length=40
-Word Length=40
-Word Text=!"#$%&')*+,-./:;=>?@\]^_`|}~
-Shortcut IntIcon=Yes
-Shortcut IntLoct=Yes
-Shortcut IntFullPath=No
-Shortcut IntLastPackage=Yes
-Shortcut ExtIcon=Yes
-Shortcut ExtLoct=No
-Shortcut ExtFullPath=No
-Shortcut ExtLastPackage=Yes
-Shortcut ExtIncludeModl=Yes
-EObjShowStrn=Yes
-ExtendedObject.Comment=No
-ExtendedObject.IconPicture=No
-ExtendedObject.TextStyle=No
-ExtendedObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Object Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-ELnkShowStrn=Yes
-ELnkShowName=Yes
-ExtendedLink_SymbolLayout=<Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Source" >[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] </Form>[CRLF]</Form>
-FileObject.Stereotype=No
-FileObject.DisplayName=Yes
-FileObject.LocationOrName=No
-FileObject.IconPicture=No
-FileObject.TextStyle=No
-FileObject.IconMode=Yes
-FileObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Location" Attribute="LocationOrName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Package.Stereotype=Yes
-Package.Comment=No
-Package.IconPicture=No
-Package.TextStyle=No
-Package_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Display Model Version=Yes
-Table.Stereotype=Yes
-Table.DisplayName=Yes
-Table.OwnerDisplayName=No
-Table.Columns=Yes
-Table.Columns._Filter="All Columns" PDMCOLNALL
-Table.Columns._Columns=Stereotype DataType KeyIndicator
-Table.Columns._Limit=-5
-Table.Keys=No
-Table.Keys._Columns=Stereotype Indicator
-Table.Indexes=No
-Table.Indexes._Columns=Stereotype
-Table.Triggers=No
-Table.Triggers._Columns=Stereotype
-Table.Comment=No
-Table.IconPicture=No
-Table.TextStyle=No
-Table_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="Stereotype No\r\nDisplayName Yes\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nDomain No\r\nKeyIndicator No\r\nIndexIndicator No\r\nNullStatus No" Filters=""All Columns" PDMCOLNALL ""\r\n"PK Columns" PDMCOLNPK "\"PRIM \"TRUE\" TRUE\""\r\n"Key Columns" PDMCOLNKEY "\"KEYS \"TRUE\" TRUE\""" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Keys" Collection="Keys" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Triggers" Collection="Triggers" Columns="Stereotype No\r\nDisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-View.Stereotype=Yes
-View.DisplayName=Yes
-View.OwnerDisplayName=No
-View.Columns=Yes
-View.Columns._Columns=DisplayName
-View.Columns._Limit=-5
-View.TemporaryVTables=Yes
-View.Indexes=No
-View.Comment=No
-View.IconPicture=No
-View.TextStyle=No
-View_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="DisplayName No\r\nExpression No\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nIndexIndicator No" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Tables" Collection="TemporaryVTables" Columns="Name Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="DisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Procedure.Stereotype=No
-Procedure.DisplayName=Yes
-Procedure.OwnerDisplayName=No
-Procedure.Comment=No
-Procedure.IconPicture=No
-Procedure.TextStyle=No
-Procedure_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Reference.Cardinality=No
-Reference.ImplementationType=No
-Reference.ChildRole=Yes
-Reference.Stereotype=Yes
-Reference.DisplayName=No
-Reference.ForeignKeyConstraintName=No
-Reference.JoinExpression=No
-Reference.Integrity=No
-Reference.ParentRole=Yes
-Reference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Cardinality" Attribute="Cardinality" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Implementation" Attribute="ImplementationType" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Cons&traint Name" Attribute="ForeignKeyConstraintName" Prefix="" Suffix="" Caption="Cons&traint Name" Mandatory="No" />[CRLF] <StandardAttribute Name="Join" Attribute="JoinExpression" Prefix="" Suffix="" Caption="Join" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Referential integrity" Attribute="Integrity" Prefix="" Suffix="" Caption="Referential integrity" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-ViewReference.ChildRole=Yes
-ViewReference.Stereotype=Yes
-ViewReference.DisplayName=No
-ViewReference.JoinExpression=No
-ViewReference.ParentRole=Yes
-ViewReference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Join Expression" Attribute="JoinExpression" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-
-[DisplayPreferences\Symbol]
-
-[DisplayPreferences\Symbol\FRMEOBJ]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=6000
-Height=2000
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=64
-Brush gradient color=192 192 192
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 255 128 128
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FRMELNK]
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FILO]
-OBJSTRNFont=新宋体,8,N
-OBJSTRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LCNMFont=新宋体,8,N
-LCNMFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=3600
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PDMPCKG]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 178 178 178
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\TABL]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-KeysFont=新宋体,8,N
-KeysFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-TriggersFont=新宋体,8,N
-TriggersFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=178 214 252
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VIEW]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-TemporaryVTablesFont=新宋体,8,N
-TemporaryVTablesFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=208 208 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PROC]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4000
-Height=1000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 108 0
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\REFR]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VREF]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\USRDEPD]
-OBJXSTRFont=新宋体,8,N
-OBJXSTRFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=2 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\Free Symbol]
-Free TextFont=新宋体,8,N
-Free TextFont color=0, 0, 0
-Line style=0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-(8268, 11693)
-((315,354), (433,354))
-1
-1
-
-
-1562381675
-1562397808
-((4698,18500), (12793,19750))
-((12393,19125),(5098,19125))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381675
-1562397806
-((4698,7839), (13182,9089))
-((12782,8464),(5098,8464))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381675
-1562397805
-((4698,-6706), (11556,-5456))
-((11156,-6081),(5098,-6081))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381675
-1562397815
-((1428,-14696), (11556,-13446))
-((11156,-14071),(1828,-14071))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381675
-1562381675
--1
-((-13782,-6681), (5098,23609))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381675
-1562397808
--1
-((12393,12578), (27437,25672))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381675
-1562397806
--1
-((12782,3682), (25244,10054))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381675
-1562397810
--1
-((-30359,16812), (-16739,23184))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381675
-1562397805
--1
-((11156,-24922), (27866,-440))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381675
-1562397815
--1
-((-11406,-18855), (1828,-9287))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381675
-1562397812
--1
-((-29748,5792), (-17674,11340))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381675
-1562397813
--1
-((-31241,-13327), (-16687,3283))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-
-
-
-
-
-
-
-05F2E0FD-B385-448F-AF64-C4E3E8EEF274
-oms_order
-oms_order
-1522658325
-zhenghong
-1562381675
-zhenghong
-订单表
-
-
-
-CC6FABD2-68E1-4961-83A3-698B98B6E74C
-id
-id
-1522658326
-zhenghong
-1562381675
-zhenghong
-订单id
-bigint
-1
-1
-
-
-91D4680C-21BA-466E-9966-EA09E6C0E181
-member_id
-member_id
-1522659209
-zhenghong
-1563092963
-zhenghong
-会员id
-bigint
-1
-
-
-E4D451B9-6B7B-48CE-9503-4C58D1425507
-coupon_id
-coupon_id
-1522724329
-zhenghong
-1563092963
-zhenghong
-优惠券id
-bigint
-
-
-920C29AE-7599-43D5-8CD5-C25C747F5576
-order_sn
-order_sn
-1522658365
-zhenghong
-1562381675
-zhenghong
-订单编号
-varchar(64)
-64
-
-
-1E05F18A-A045-4DB9-9E5B-3EB4166C70B2
-create_time
-create_time
-1522658421
-zhenghong
-1562381675
-zhenghong
-提交时间
-datetime
-
-
-7F5FEBCD-97AB-4395-BB55-A1C5441570AE
-member_username
-member_username
-1522658628
-zhenghong
-1562381675
-zhenghong
-用户帐号
-varchar(64)
-64
-
-
-04AF1E76-ECE7-4FF6-8D52-E5BC68526CB3
-total_amount
-total_amount
-1522658628
-zhenghong
-1562381675
-zhenghong
-订单总金额
-decimal(10,2)
-10
-2
-
-
-30E97653-F338-4A1B-9485-1354262B3ACA
-pay_amount
-pay_amount
-1535611784
-zhenghong
-1562381675
-zhenghong
-应付金额(实际支付金额)
-decimal(10,2)
-10
-2
-
-
-4100BFB0-E626-48B6-A3AA-C0D5B8256C82
-freight_amount
-freight_amount
-1522723575
-zhenghong
-1562381675
-zhenghong
-运费金额
-decimal(10,2)
-10
-2
-
-
-2B4D03DD-BB33-4440-813B-422AD42C8B02
-promotion_amount
-promotion_amount
-1522723762
-zhenghong
-1562381675
-zhenghong
-促销优化金额(促销价、满减、阶梯价)
-decimal(10,2)
-10
-2
-
-
-26C92C1A-DA54-4F6C-A53B-40E4F4259611
-integration_amount
-integration_amount
-1522723873
-zhenghong
-1562381675
-zhenghong
-积分抵扣金额
-decimal(10,2)
-10
-2
-
-
-35562C51-359C-4DAB-A2D8-09714FF68E90
-coupon_amount
-coupon_amount
-1522724126
-zhenghong
-1562381675
-zhenghong
-优惠券抵扣金额
-decimal(10,2)
-10
-2
-
-
-3E592BC1-1122-4E3D-BFF5-3F11DD14DC2A
-discount_amount
-discount_amount
-1522724794
-zhenghong
-1562381675
-zhenghong
-管理员后台调整订单使用的折扣金额
-decimal(10,2)
-10
-2
-
-
-04A95BEE-9654-47C5-BFAE-C08B7B03986E
-pay_type
-pay_type
-1522658684
-zhenghong
-1562381675
-zhenghong
-支付方式:0->未支付;1->支付宝;2->微信
-int(1)
-1
-
-
-B2CE387C-CE10-42AE-8417-5C230E72B2A2
-source_type
-source_type
-1522658832
-zhenghong
-1562381675
-zhenghong
-订单来源:0->PC订单;1->app订单
-int(1)
-1
-
-
-6BBF086D-BD37-4261-8D0A-48E156F4178D
-status
-status
-1522658850
-zhenghong
-1562381675
-zhenghong
-订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单
-int(1)
-1
-
-
-0CA69FAC-98A2-40CF-9156-025013757821
-order_type
-order_type
-1522658951
-zhenghong
-1562381675
-zhenghong
-订单类型:0->正常订单;1->秒杀订单
-int(1)
-1
-
-
-CC84B530-F21B-4637-B77D-FCC01753260B
-delivery_company
-delivery_company
-1522659709
-zhenghong
-1562381675
-zhenghong
-物流公司(配送方式)
-varchar(64)
-64
-
-
-4617958B-B773-4ABE-B9D3-BA3F2ECA9959
-delivery_sn
-delivery_sn
-1522659876
-zhenghong
-1562381675
-zhenghong
-物流单号
-varchar(64)
-64
-
-
-D5F1C963-1C16-4F07-9D41-4B3D114192D3
-auto_confirm_day
-auto_confirm_day
-1522659893
-zhenghong
-1562381675
-zhenghong
-自动确认时间(天)
-int
-
-
-098EFEA3-0F41-4BCF-908F-42BA9FF36D02
-integration
-integration
-1522660001
-zhenghong
-1562381675
-zhenghong
-可以获得的积分
-int
-
-
-06648A05-B2CE-42DE-A6C9-FE3FF705349A
-growth
-growth
-1522660001
-zhenghong
-1562381675
-zhenghong
-可以活动的成长值
-int
-
-
-1220B8FB-E2A8-406D-8ED0-774E9E8028BD
-promotion_info
-promotion_info
-1522660053
-zhenghong
-1562381675
-zhenghong
-活动信息
-varchar(100)
-100
-
-
-0E3DA6A6-0CC3-4EF0-A8E4-E2ED9E74B588
-bill_type
-bill_type
-1522660081
-zhenghong
-1562381675
-zhenghong
-发票类型:0->不开发票;1->电子发票;2->纸质发票
-int(1)
-1
-
-
-83CB8476-A5EA-4678-A8EA-C0C714E1C243
-bill_header
-bill_header
-1522660171
-zhenghong
-1562381675
-zhenghong
-发票抬头
-varchar(200)
-200
-
-
-175CF440-C4CD-4402-B5DE-30FDB9AB22B0
-bill_content
-bill_content
-1522660220
-zhenghong
-1562381675
-zhenghong
-发票内容
-varchar(200)
-200
-
-
-41EDB3E3-99DD-40C9-9513-15EE57F05CC8
-bill_receiver_phone
-bill_receiver_phone
-1522660252
-zhenghong
-1562381675
-zhenghong
-收票人电话
-varchar(32)
-32
-
-
-DAAEBE92-F542-4003-842E-A730AA678BD3
-bill_receiver_email
-bill_receiver_email
-1522660252
-zhenghong
-1562381675
-zhenghong
-收票人邮箱
-varchar(64)
-64
-
-
-DAF010AA-FB36-4C5B-9D7C-82258813D86C
-receiver_name
-receiver_name
-1522660318
-zhenghong
-1562381675
-zhenghong
-收货人姓名
-varchar(100)
-100
-1
-
-
-30355E9C-0A14-4A75-B39C-6E42FC776F4F
-receiver_phone
-receiver_phone
-1522660394
-zhenghong
-1562381675
-zhenghong
-收货人电话
-varchar(32)
-32
-1
-
-
-339FA272-4FE4-464F-B452-EE4DC7D1B1BD
-receiver_post_code
-receiver_post_code
-1522660418
-zhenghong
-1562381675
-zhenghong
-收货人邮编
-varchar(32)
-32
-
-
-79852809-C824-4F62-BDAE-3C33C9CC36D9
-receiver_province
-receiver_province
-1522660464
-zhenghong
-1562381675
-zhenghong
-省份/直辖市
-varchar(32)
-32
-
-
-0D424974-5AA2-4F3B-8E94-231062EA361B
-receiver_city
-receiver_city
-1522660515
-zhenghong
-1562381675
-zhenghong
-城市
-varchar(32)
-32
-
-
-63624653-BBD8-49D1-89F7-240DAB8B4F3D
-receiver_region
-receiver_region
-1522660544
-zhenghong
-1562381675
-zhenghong
-区
-varchar(32)
-32
-
-
-BB1A2932-F624-4DD3-AC67-E4E5A4FF1B7A
-receiver_detail_address
-receiver_detail_address
-1522660585
-zhenghong
-1562381675
-zhenghong
-详细地址
-varchar(200)
-200
-
-
-A66720BE-46E0-4AB9-919B-AA302C7C3D1E
-note
-note
-1522724892
-zhenghong
-1562381675
-zhenghong
-订单备注
-varchar(500)
-500
-
-
-F0282173-586A-43AE-96D6-909F636C88B8
-confirm_status
-confirm_status
-1522725950
-zhenghong
-1562381675
-zhenghong
-确认收货状态:0->未确认;1->已确认
-int(1)
-1
-
-
-3B6EACD5-B4ED-4422-9134-99546B5DA216
-delete_status
-delete_status
-1535611815
-zhenghong
-1562381675
-zhenghong
-删除状态:0->未删除;1->已删除
-0
-int(1)
-1
-1
-{F4F16ECD-F2F1-4006-AF6F-638D5C65F35E},MYSQL50,102={9480E6AA-83DD-4AA7-9C91-E48F709C29D9},CharSet,0=
-{B314652C-DD43-4F81-8524-6F97A1BAACBA},Collate,0=
-
-
-
-
-0FA12511-D7E9-4874-9943-8EE368AC22F0
-use_integration
-use_integration
-1536136197
-zhenghong
-1562381675
-zhenghong
-下单时使用的积分
-int
-
-
-77551E63-D1EA-437F-9400-CC1372657317
-payment_time
-payment_time
-1539236189
-zhenghong
-1562381675
-zhenghong
-支付时间
-datetime
-
-
-8614E6F9-FF99-41C4-B10B-3A29C0A60FE7
-delivery_time
-delivery_time
-1539236207
-zhenghong
-1562381675
-zhenghong
-发货时间
-datetime
-
-
-A55B20AC-0DE5-459E-AB76-EF2B349D6CE9
-receive_time
-receive_time
-1539236247
-zhenghong
-1562381675
-zhenghong
-确认收货时间
-datetime
-
-
-AFDD5891-534B-41AE-9CDF-F43FD8AE3041
-comment_time
-comment_time
-1539236349
-zhenghong
-1562381675
-zhenghong
-评价时间
-datetime
-
-
-98C5503C-4A7C-4F0A-BD15-C2D84E4EA761
-modify_time
-modify_time
-1539236409
-zhenghong
-1562381675
-zhenghong
-修改时间
-datetime
-
-
-
-
-8C9DDBFE-111E-4ACD-81DE-82E41F986260
-Key_1
-Key_1
-1522658326
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-B55E3CF8-134D-4C26-95B4-E98BE7D4CDF7
-oms_order_item
-oms_order_item
-1522660695
-zhenghong
-1562381675
-zhenghong
-订单中所包含的商品
-
-
-
-400803C1-7D76-4997-ABEC-40A6B7234919
-id
-id
-1522660696
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-0E8C9492-691F-4A34-929D-7C332373E266
-order_id
-order_id
-1522660753
-zhenghong
-1562381675
-zhenghong
-订单id
-bigint
-
-
-2C47D43E-8599-4628-9B5A-3EEC3B98F816
-order_sn
-order_sn
-1522660755
-zhenghong
-1562381675
-zhenghong
-订单编号
-varchar(64)
-64
-
-
-384A037E-415F-4ACE-886B-63B251ECA1F2
-product_id
-product_id
-1522660820
-zhenghong
-1563093255
-zhenghong
-商品id
-bigint
-
-
-FE352F6A-0FF5-4550-BF80-66C847E577B0
-product_pic
-product_pic
-1522719518
-zhenghong
-1563093255
-zhenghong
-商品图片
-varchar(500)
-500
-
-
-155C38B5-310C-4853-93E0-CB3BEC8E766E
-product_name
-product_name
-1522719518
-zhenghong
-1563093255
-zhenghong
-商品名称
-varchar(200)
-200
-
-
-E9F2CFF1-FA41-4BF6-854F-778867433137
-product_brand
-product_brand
-1522719571
-zhenghong
-1563093255
-zhenghong
-商品品牌
-varchar(200)
-200
-
-
-52048F93-1FB9-472C-BE53-112B7086FC2F
-product_sn
-product_sn
-1522719571
-zhenghong
-1563093255
-zhenghong
-商品条码
-varchar(64)
-64
-
-
-6B47018E-4488-481D-B6D5-AC3D5EBFE79D
-product_price
-product_price
-1522719571
-zhenghong
-1562381675
-zhenghong
-销售价格
-decimal(10,2)
-10
-2
-
-
-73C1E1EB-6236-4011-9ED2-7DC3B954D21F
-product_quantity
-product_quantity
-1522723168
-zhenghong
-1562381675
-zhenghong
-购买数量
-int
-
-
-7EA813A5-F467-4F6D-8539-98C88785C67B
-product_sku_id
-product_sku_id
-1535693972
-zhenghong
-1562381675
-zhenghong
-商品sku编号
-bigint
-
-
-3EBA8CA0-A054-44BB-81E1-51574A9A3F54
-product_sku_code
-product_sku_code
-1535693972
-zhenghong
-1562381675
-zhenghong
-商品sku条码
-varchar(50)
-50
-
-
-681FC1FA-F367-410F-9F23-DBE9738F8529
-product_category_id
-product_category_id
-1535938231
-zhenghong
-1562381675
-zhenghong
-商品分类id
-bigint
-
-
-333436E6-B44F-4992-BB0A-27990BD8EBF8
-sp1
-sp1
-1522724687
-zhenghong
-1563093255
-zhenghong
-商品的销售属性1
-varchar(100)
-100
-
-
-C80F1C92-EC80-43DD-89F8-C8CC1FA70795
-sp2
-sp2
-1522724687
-zhenghong
-1563093255
-zhenghong
-商品的销售属性2
-varchar(100)
-100
-
-
-1D65DC8E-E676-4C2D-927C-5918F6B878FA
-sp3
-sp3
-1522724687
-zhenghong
-1563093255
-zhenghong
-商品的销售属性3
-varchar(100)
-100
-
-
-01BE75F4-E877-4410-936E-9EF1BE19D54D
-promotion_name
-promotion_name
-1535694274
-zhenghong
-1562381675
-zhenghong
-商品促销名称
-varchar(200)
-200
-
-
-7B7ADD4D-5E48-44C6-83AD-FB9C32438878
-promotion_amount
-promotion_amount
-1535694166
-zhenghong
-1562381675
-zhenghong
-商品促销分解金额
-decimal(10,2)
-10
-2
-
-
-F56C1E34-4DF5-48B3-BBA5-4661EE3274A1
-coupon_amount
-coupon_amount
-1535694274
-zhenghong
-1562381675
-zhenghong
-优惠券优惠分解金额
-decimal(10,2)
-10
-2
-
-
-E0A5498C-12FC-4E5D-8B59-7A4480B43252
-integration_amount
-integration_amount
-1535694826
-zhenghong
-1562381675
-zhenghong
-积分优惠分解金额
-decimal(10,2)
-10
-2
-
-
-F2B44252-2061-4230-9336-1F7DC40AE04F
-real_amount
-real_amount
-1522724652
-zhenghong
-1562381675
-zhenghong
-该商品经过优惠后的分解金额
-decimal(10,2)
-10
-2
-
-
-72BE685C-5B09-44DF-8E50-26D896C3C178
-gift_integration
-gift_integration
-1535964164
-zhenghong
-1562381675
-zhenghong
-商品赠送积分
-0
-int
-1
-
-
-3731F605-C569-4AB3-A652-ED6087C0D54B
-gift_growth
-gift_growth
-1535964164
-zhenghong
-1562381675
-zhenghong
-商品赠送成长值
-0
-int
-1
-
-
-21AA985F-31C9-4ED1-A239-B65ADFD6EBFD
-product_attr
-product_attr
-1540542610
-zhenghong
-1562381675
-zhenghong
-商品销售属性:[{"key":"颜色","value":"颜色"},{"key":"容量","value":"4G"}]
-varchar(500)
-500
-
-
-
-
-D009AAC9-2955-4F6D-92E3-CDC215401C65
-Key_1
-Key_1
-1522660696
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7C6513B0-793C-428D-B7EC-CEFDF02FA529
-oms_order_operate_history
-oms_order_operate_history
-1522724973
-zhenghong
-1563093407
-zhenghong
-订单操作记录表
-
-
-
-4C4EF9D3-8271-4FD1-BE5D-3B8A8A6F436F
-id
-id
-1522724975
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-CA0AED7D-6764-4EC0-9512-8B475C70962B
-order_id
-order_id
-1522725331
-zhenghong
-1562381675
-zhenghong
-订单id
-bigint
-
-
-16A4E289-0B19-4E8D-87CC-C6F47ACE7771
-operate_man
-operate_man
-1522725011
-zhenghong
-1562381675
-zhenghong
-操作人:用户;系统;后台管理员
-varchar(100)
-100
-
-
-5DC6F697-1915-4B72-987F-A98DFBD57497
-create_time
-create_time
-1522725037
-zhenghong
-1562381675
-zhenghong
-操作时间
-datetime
-
-
-A19E2E2C-5F48-4DCA-8B62-50AC6EA3479A
-order_status
-order_status
-1522725072
-zhenghong
-1562381675
-zhenghong
-订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单
-int(1)
-1
-
-
-88967D31-DDC0-4977-8C3A-7EED1BFF240D
-note
-note
-1522725292
-zhenghong
-1562381675
-zhenghong
-备注
-varchar(500)
-500
-
-
-
-
-F815B6F8-07C7-4543-90D0-ABD355C4F443
-Key_1
-Key_1
-1522724975
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-62EB68AB-A496-4DB7-BBD9-D44E762DEA0E
-oms_order_setting
-oms_order_setting
-1522726076
-zhenghong
-1562381675
-zhenghong
-订单设置表
-
-
-
-FDD7C6FF-D977-4B6C-902C-F44E85FDAEA7
-id
-id
-1522726077
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-31BA6EB8-0F95-4F9D-985D-7D068A04A21D
-flash_order_overtime
-flash_order_overtime
-1522726101
-zhenghong
-1562381675
-zhenghong
-秒杀订单超时关闭时间(分)
-int
-
-
-187815AB-CCCD-4665-93F0-C17BF46E264A
-normal_order_overtime
-normal_order_overtime
-1522726150
-zhenghong
-1562381675
-zhenghong
-正常订单超时时间(分)
-int
-
-
-772EEBB3-36BD-4135-81C9-7DF0A0BF34EA
-confirm_overtime
-confirm_overtime
-1522726177
-zhenghong
-1562381675
-zhenghong
-发货后自动确认收货时间(天)
-int
-
-
-AB06F2A1-8B18-4EBE-A361-6F58CD8E6C8A
-finish_overtime
-finish_overtime
-1522731908
-zhenghong
-1562381675
-zhenghong
-自动完成交易时间,不能申请售后(天)
-int
-
-
-76F4A9E9-5273-466F-8DB0-6197C04354DB
-comment_overtime
-comment_overtime
-1522731929
-zhenghong
-1562381675
-zhenghong
-订单完成后自动好评时间(天)
-int
-
-
-
-
-1A1E7CBA-EE11-44F5-9A68-F360D1E2CE98
-Key_1
-Key_1
-1522726077
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7D3CC4E4-7455-45E5-8065-A2028FF2E3A5
-oms_order_return_apply
-oms_order_return_apply
-1522732897
-zhenghong
-1562381675
-zhenghong
-订单退货申请
-
-
-
-7AD9DB4E-E190-4AB0-94D7-426A4CF8B8AF
-id
-id
-1522732898
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-55127A15-4FE7-432D-8A76-F34A9E93F09A
-order_id
-order_id
-1522733188
-zhenghong
-1562381675
-zhenghong
-订单id
-bigint
-
-
-1985D6F4-E669-44B3-AA82-2BB8C611F9A7
-company_address_id
-company_address_id
-1522745521
-zhenghong
-1562381675
-zhenghong
-收货地址表id
-bigint
-
-
-CEB2639B-BA9A-47D2-80FD-10D5067F1BD8
-product_id
-product_id
-1539746524
-zhenghong
-1562381675
-zhenghong
-退货商品id
-bigint
-
-
-EC8BC226-6E7B-4A44-A001-E0C79DA89DC1
-order_sn
-order_sn
-1522733452
-zhenghong
-1562381675
-zhenghong
-订单编号
-varchar(64)
-64
-
-
-B8DF8A42-EFD3-4DDE-84AB-7552425125BD
-create_time
-create_time
-1522732939
-zhenghong
-1562381675
-zhenghong
-申请时间
-datetime
-
-
-0028F51F-DAC6-45DE-9DA9-D7C847348500
-member_username
-member_username
-1522732939
-zhenghong
-1562381675
-zhenghong
-会员用户名
-varchar(64)
-64
-
-
-A0076956-8A09-4E97-B189-E4086DCFC6BB
-return_amount
-return_amount
-1522732939
-zhenghong
-1562381675
-zhenghong
-退款金额
-decimal(10,2)
-10
-2
-
-
-D83B982A-DF77-436B-B75C-0E18C879281B
-return_name
-return_name
-1522733003
-zhenghong
-1562381675
-zhenghong
-退货人姓名
-varchar(100)
-100
-
-
-3B576757-2FAD-48E7-92FD-7ED111E0E27B
-return_phone
-return_phone
-1522733468
-zhenghong
-1562381675
-zhenghong
-退货人电话
-varchar(100)
-100
-
-
-EB03D2D4-5D29-461C-9D4C-7E1929D2CB6F
-status
-status
-1522733003
-zhenghong
-1562381675
-zhenghong
-申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝
-int(1)
-1
-
-
-362CCBD1-E322-4878-A849-4C4E0F646171
-handle_time
-handle_time
-1522733003
-zhenghong
-1562381675
-zhenghong
-处理时间
-datetime
-
-
-E0914F74-7E7B-4388-B30C-13329F1A2E4A
-product_pic
-product_pic
-1522733217
-zhenghong
-1562381675
-zhenghong
-商品图片
-varchar(500)
-500
-
-
-AB53AB9B-3D9C-4DD2-B8F2-76451F6F4B52
-product_name
-product_name
-1522733217
-zhenghong
-1562381675
-zhenghong
-商品名称
-varchar(200)
-200
-
-
-E0855E20-C525-4E88-80C1-0CBDB0AF540D
-product_brand
-product_brand
-1522733217
-zhenghong
-1562381675
-zhenghong
-商品品牌
-varchar(200)
-200
-
-
-01E64477-9C46-42DC-9EE5-BE2C6A4F4A9E
-product_attr
-product_attr
-1522733217
-zhenghong
-1562381675
-zhenghong
-商品销售属性:颜色:红色;尺码:xl;
-varchar(500)
-500
-
-
-0C175326-1B9B-4FD6-8CE7-4C10987A9147
-product_count
-product_count
-1522733332
-zhenghong
-1562381675
-zhenghong
-退货数量
-int
-
-
-FF85320D-B54E-4197-B3B0-BAFA03126C33
-product_price
-product_price
-1539746095
-zhenghong
-1562381675
-zhenghong
-商品单价
-decimal(10,2)
-10
-2
-
-
-DC06D270-00E4-489D-B0BF-07827C35245B
-product_real_price
-product_real_price
-1539746095
-zhenghong
-1562381675
-zhenghong
-商品实际支付单价
-decimal(10,2)
-10
-2
-
-
-DA73C543-6C21-40EB-AA65-5BC9877181EB
-reason
-reason
-1522733512
-zhenghong
-1562381675
-zhenghong
-原因
-varchar(200)
-200
-
-
-2711D6ED-9CB1-44C2-A6C6-DE4EF633CAC1
-description
-description
-1522733512
-zhenghong
-1562381675
-zhenghong
-描述
-varchar(500)
-500
-
-
-E22AC0D2-EEDA-442F-B91F-CBB420953862
-proof_pics
-proof_pics
-1522733653
-zhenghong
-1562381675
-zhenghong
-凭证图片,以逗号隔开
-varchar(1000)
-1000
-
-
-27A9B553-49EB-4C90-841A-23BEC6599513
-handle_note
-handle_note
-1522745027
-zhenghong
-1562381675
-zhenghong
-处理备注
-varchar(500)
-500
-
-
-C40E6176-B0F9-43FE-8144-B4193CA8FB8C
-handle_man
-handle_man
-1522745592
-zhenghong
-1562381675
-zhenghong
-处理人员
-varchar(100)
-100
-
-
-043838BE-8448-4F68-9550-4008E585EA87
-receive_man
-receive_man
-1522745613
-zhenghong
-1562381675
-zhenghong
-收货人
-varchar(100)
-100
-
-
-DAF72EEE-D688-4F23-967A-2E9DDE783D99
-receive_time
-receive_time
-1522745652
-zhenghong
-1562381675
-zhenghong
-收货时间
-datetime
-
-
-1E001249-2B8B-45B0-B901-419E7EEB4454
-receive_note
-receive_note
-1522745652
-zhenghong
-1562381675
-zhenghong
-收货备注
-varchar(500)
-500
-
-
-
-
-5339803E-D343-4823-98CA-0752B4974322
-Key_1
-Key_1
-1522732898
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D57E45A9-0A84-4905-8EE7-F4353CF2E854
-oms_company_address
-oms_company_address
-1522745162
-zhenghong
-1562381675
-zhenghong
-公司收发货地址表
-
-
-
-8AC5D554-19F2-4C7E-A7D8-A10CEE9A43EA
-id
-id
-1522745164
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-A33CC5AA-D3C1-485F-864F-6A4411680007
-address_name
-address_name
-1522745192
-zhenghong
-1562381675
-zhenghong
-地址名称
-varchar(200)
-200
-
-
-14285DB5-DDC0-44E9-97C4-573F08473889
-send_status
-send_status
-1522745248
-zhenghong
-1562381675
-zhenghong
-默认发货地址:0->否;1->是
-int(1)
-1
-
-
-54F057A4-6E22-49EF-8AA5-2E144C292BF3
-receive_status
-receive_status
-1522745248
-zhenghong
-1562381675
-zhenghong
-是否默认收货地址:0->否;1->是
-int(1)
-1
-
-
-940ACCA7-2B97-44A9-8A1D-336D7E7D8B4F
-name
-name
-1522745285
-zhenghong
-1562381675
-zhenghong
-收发货人姓名
-varchar(64)
-64
-
-
-4C116C7B-7E2D-4864-A19D-AE90E1E95875
-phone
-phone
-1522745285
-zhenghong
-1562381675
-zhenghong
-收货人电话
-varchar(64)
-64
-
-
-51E76878-E2A8-4B93-ABCB-11BF8CECB047
-province
-province
-1522745363
-zhenghong
-1562381675
-zhenghong
-省/直辖市
-varchar(64)
-64
-
-
-D132A1B4-233E-4AAB-80DA-2160B96F97F6
-city
-city
-1522745363
-zhenghong
-1562381675
-zhenghong
-市
-varchar(64)
-64
-
-
-5A4A8715-C918-4F08-925A-96CAB4CC0222
-region
-region
-1522745363
-zhenghong
-1562381675
-zhenghong
-区
-varchar(64)
-64
-
-
-254B2406-5C1B-4594-9669-52E56081DF79
-detail_address
-detail_address
-1539745108
-zhenghong
-1562381675
-zhenghong
-详细地址
-varchar(200)
-200
-
-
-
-
-57206BB2-79EB-479B-9102-8E428AEBDD21
-Key_1
-Key_1
-1522745164
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-770A75E5-0DE5-4E14-BD94-C145B8C65F04
-oms_order_return_reason
-oms_order_return_reason
-1522745726
-zhenghong
-1562381675
-zhenghong
-退货原因表
-
-
-
-16E95A5E-9CF7-4E60-B465-8566C5FCF7B3
-id
-id
-1522745728
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-52A7135D-7CDB-4C40-AE3C-60E6D64F8F41
-name
-name
-1522745760
-zhenghong
-1562381675
-zhenghong
-退货类型
-varchar(100)
-100
-
-
-8CE96E09-81B6-4ABB-9BF1-32072C14EE8A
-sort
-sort
-1522745760
-zhenghong
-1562381675
-zhenghong
-int
-
-
-E45F9B6F-89F1-466D-9171-D81DD90FBF2C
-status
-status
-1522745760
-zhenghong
-1562381675
-zhenghong
-状态:0->不启用;1->启用
-int(1)
-1
-
-
-DDC2CC40-5D3E-492D-9D20-41E80621F7BE
-create_time
-create_time
-1539238773
-zhenghong
-1562381675
-zhenghong
-添加时间
-datetime
-
-
-
-
-03525D98-CE5D-439A-9235-D257F9FCDE7C
-Key_1
-Key_1
-1522745728
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-FCFACDD5-C94C-4DA7-815A-1FB465075DD6
-oms_cart_item
-oms_cart_item
-1533108597
-zhenghong
-1562381675
-zhenghong
-购物车表
-
-
-
-5F27D4CB-D6C2-43F1-BE3D-99BE2235B13A
-id
-id
-1533108649
-zhenghong
-1562381675
-zhenghong
-bigint
-1
-1
-
-
-FCBA4E8B-46A6-466A-88BE-91ADDB6704FE
-product_id
-product_id
-1533109970
-zhenghong
-1563587563
-zhenghong
-商品的id
-bigint
-
-
-4A6ABE9F-E1AB-4170-888B-B6A956AD2975
-product_sku_id
-product_sku_id
-1533115829
-zhenghong
-1563587563
-zhenghong
-商品sku的id
-bigint
-
-
-31DF0F1B-6C7A-4C36-A417-9427294A125A
-member_id
-member_id
-1533115896
-zhenghong
-1563587563
-zhenghong
-会员id
-bigint
-
-
-9009F419-DC07-4988-827C-BE0354515B37
-quantity
-quantity
-1533108721
-zhenghong
-1562381675
-zhenghong
-购买数量
-int
-
-
-B2ED78FE-58F7-4836-B117-C77D46579737
-price
-price
-1533108747
-zhenghong
-1562381675
-zhenghong
-添加到购物车的价格
-decimal(10,2)
-10
-2
-
-
-0CDED37F-2AB2-4494-9AE2-149C2861C329
-sp1
-sp1
-1533108782
-zhenghong
-1562381675
-zhenghong
-销售属性1
-varchar(200)
-200
-
-
-38CAB922-C9FF-42CE-9CFF-1F7E0196A923
-sp2
-sp2
-1533108782
-zhenghong
-1562381675
-zhenghong
-销售属性2
-varchar(200)
-200
-
-
-EF409C83-0FFB-4F79-A972-67DC4889622C
-sp3
-sp3
-1533108782
-zhenghong
-1562381675
-zhenghong
-销售属性3
-varchar(200)
-200
-
-
-3807990D-DF0D-485D-9D2B-9D24DA439DA0
-product_pic
-product_pic
-1533110160
-zhenghong
-1562381675
-zhenghong
-商品主图
-varchar(1000)
-1000
-
-
-84FD3CD9-309E-4AC3-8D7D-39630720F59E
-product_name
-product_name
-1533110160
-zhenghong
-1562381675
-zhenghong
-商品名称
-varchar(500)
-500
-
-
-DDD49000-B725-43FA-9F61-1B72791C66F7
-product_brand
-product_brand
-1535696251
-zhenghong
-1563587563
-zhenghong
-商品品牌
-varchar(200)
-200
-
-
-408C91C7-39A9-400D-B825-664332CE4B33
-product_sn
-product_sn
-1535696251
-zhenghong
-1563587563
-zhenghong
-商品的条码
-varchar(200)
-200
-
-
-083C0B8F-B185-4655-867F-9F44315DB955
-product_sub_title
-product_sub_title
-1533110160
-zhenghong
-1562381675
-zhenghong
-商品副标题(卖点)
-varchar(500)
-500
-
-
-5E5016BC-1FC0-4289-BF3C-93CF5B9C000B
-product_sku_code
-product_sku_code
-1533115799
-zhenghong
-1562381675
-zhenghong
-商品sku条码
-varchar(200)
-200
-
-
-9DCEB06B-30DF-45D3-A205-CB32ADD7C7A6
-member_nickname
-member_nickname
-1533115939
-zhenghong
-1562381675
-zhenghong
-会员昵称
-varchar(500)
-500
-
-
-63632865-2AFA-4C21-9D66-FB4A05403D58
-create_date
-create_date
-1533116034
-zhenghong
-1562381675
-zhenghong
-创建时间
-datetime
-
-
-4C0CAA10-68A5-4BFF-A069-EE1181A21563
-modify_date
-modify_date
-1533116034
-zhenghong
-1562381675
-zhenghong
-修改时间
-datetime
-
-
-861494F6-3512-4836-8AC4-1CE80CC49802
-delete_status
-delete_status
-1533172423
-zhenghong
-1562381675
-zhenghong
-是否删除
-0
-int(1)
-1
-
-
-AC3D49DF-810F-4D3F-9B4F-91773DABAB3F
-product_category_id
-product_category_id
-1535530934
-zhenghong
-1562381675
-zhenghong
-商品的分类
-bigint
-
-
-30DE6365-38F8-4093-A108-EDBEC519540C
-product_attr
-product_attr
-1540542323
-zhenghong
-1562381675
-zhenghong
-商品销售属性:[{"key":"颜色","value":"银色"},{"key":"容量","value":"4G"}]
-varchar(500)
-500
-
-
-
-
-59CD260B-BD26-4D4C-AA07-A1608781723C
-Key_1
-Key_1
-1533108649
-zhenghong
-1562381675
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-BDC03AB1-ADC4-4677-8B61-887E334F8D5D
-Reference_58
-Reference_58
-1522660753
-zhenghong
-1522660753
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-B0DECA2C-A904-49E4-8D94-3005805D0D82
-1522660753
-zhenghong
-1522660753
-zhenghong
-
-
-
-
-
-
-
-
-
-
-AEE77F49-1552-45AD-B18B-D95BCFC6A732
-Reference_62
-Reference_62
-1522725331
-zhenghong
-1522725331
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-738FF6F3-1973-48BA-8B7F-72BAAB68E441
-1522725331
-zhenghong
-1522725331
-zhenghong
-
-
-
-
-
-
-
-
-
-
-474704AE-724C-4A91-A376-D5057DB320E9
-Reference_63
-Reference_63
-1522733188
-zhenghong
-1522733188
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-66100669-D07C-4D89-BD57-63E98DA6CB07
-1522733188
-zhenghong
-1522733188
-zhenghong
-
-
-
-
-
-
-
-
-
-
-87BF9107-DBF4-4ECD-AD45-6089805FBE78
-Reference_64
-Reference_64
-1522745521
-zhenghong
-1522745521
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-3BC1F227-FEDD-4BF9-9BD5-7EA5246B9DAB
-1522745521
-zhenghong
-1522745521
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-4AE9D351-FD95-4DBC-9EAB-0D1CC1AA9E2D
-PUBLIC
-PUBLIC
-1562381480
-zhenghong
-1562381480
-zhenghong
-
-
-
-
-1BAD0FE4-029F-4C0A-B208-B34EBE0E7FB3
-MySQL 5.0
-MYSQL50
-1562381480
-zhenghong
-1562381480
-zhenghong
-file:///%_DBMS%/mysql50.xdb
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-1276524678
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/document/pdm/mall_pms.pdm b/document/pdm/mall_pms.pdm
deleted file mode 100644
index 86e552e3..00000000
--- a/document/pdm/mall_pms.pdm
+++ /dev/null
@@ -1,5773 +0,0 @@
-
-
-
-
-
-
-
-
-
-ED6E09D8-E6BD-416E-B8C9-92CD7B7E725F
-mall_pms
-mall_pms
-1562380871
-zhenghong
-1562675624
-zhenghong
-[FolderOptions]
-
-[FolderOptions\Physical Objects]
-GenerationCheckModel=Yes
-GenerationPath=
-GenerationOptions=
-GenerationTasks=
-GenerationTargets=
-GenerationSelections=
-RevPkey=Yes
-RevFkey=Yes
-RevAkey=Yes
-RevCheck=Yes
-RevIndx=Yes
-RevOpts=Yes
-RevViewAsTabl=No
-RevViewOpts=Yes
-RevSystAsTabl=Yes
-RevTablPerm=No
-RevViewPerm=No
-RevProcPerm=No
-RevDbpkPerm=No
-RevSqncPerm=No
-RevAdtPerm=No
-RevUserPriv=No
-RevUserOpts=No
-RevGrpePriv=No
-RevRolePriv=No
-RevDtbsOpts=Yes
-RevDtbsPerm=No
-RevViewIndx=Yes
-RevJidxOpts=Yes
-RevStats=No
-RevTspcPerm=No
-RevCaseSensitive=No
-GenTrgrStdMsg=Yes
-GenTrgrMsgTab=
-GenTrgrMsgNo=
-GenTrgrMsgTxt=
-TrgrPreserve=No
-TrgrIns=Yes
-TrgrUpd=Yes
-TrgrDel=Yes
-TrgrC2Ins=Yes
-TrgrC2Upd=Yes
-TrgrC3=Yes
-TrgrC4=Yes
-TrgrC5=Yes
-TrgrC6=Yes
-TrgrC7=Yes
-TrgrC8=Yes
-TrgrC9=Yes
-TrgrC10=Yes
-TrgrC11=Yes
-TrgrC1=Yes
-TrgrC12Ins=Yes
-TrgrC12Upd=Yes
-TrgrC13=Yes
-UpdateTableStatistics=Yes
-UpdateColumnStatistics=Yes
-
-[FolderOptions\Physical Objects\Database Generation]
-GenScriptName=crebas
-GenScriptName0=
-GenScriptName1=
-GenScriptName2=
-GenScriptName3=
-GenScriptName4=
-GenScriptName5=
-GenScriptName6=
-GenScriptName7=
-GenScriptName8=
-GenScriptName9=
-GenPathName=
-GenSingleFile=Yes
-GenODBC=No
-GenCheckModel=Yes
-GenScriptPrev=Yes
-GenArchiveModel=No
-GenUseSync=No
-GenSyncChoice=0
-GenSyncArch=
-GenSyncRmg=0
-
-[FolderOptions\Physical Objects\Database Generation\Format]
-GenScriptTitle=Yes
-GenScriptNamLabl=No
-GenScriptQDtbs=No
-GenScriptQOwnr=Yes
-GenScriptCase=0
-GenScriptEncoding=ANSI
-GenScriptNAcct=No
-IdentifierDelimiter="
-
-[FolderOptions\Physical Objects\Database Generation\Database]
-Create=Yes
-Open=Yes
-Close=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Database\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Storage]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\User]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\User\Create]
-Physical Options=No
-
-[FolderOptions\Physical Objects\Database Generation\Group]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\Role]
-Create=Yes
-Drop=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType\Create]
-Default value=Yes
-Check=Yes
-
-[FolderOptions\Physical Objects\Database Generation\AbstractDataType]
-Create=Yes
-Header=Yes
-Footer=Yes
-Drop=Yes
-Comment=Yes
-Install JAVA class=Yes
-Remove JAVA class=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Rule]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Default]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Sequence]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create]
-Check=Yes
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column]
-User datatype=No
-Default value=Yes
-Check=Yes
-Physical Options=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key\Create]
-Constraint declaration=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Create]
-Constraint declaration=Yes
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Filter]
-Primary key=No
-Foreign key=No
-Alternate key=No
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\View\Create]
-Force Column list=No
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewColumn]
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Create]
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Filter]
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DBMSTrigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym\Filter]
-Table=Yes
-View=Yes
-Proc=Yes
-Synonym=Yes
-Database Package=Yes
-Sequence=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Procedure]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Procedure\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DatabasePackage]
-Create=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\WebService]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Dimension]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synchronization]
-GenBackupTabl=1
-GenKeepBackTabl=1
-GenTmpTablDrop=No
-GenKeepTablOpts=No
-
-[FolderOptions\Physical Objects\Test Data]
-GenDataPathName=
-GenDataSinglefile=Yes
-GenDataScriptName=testdata
-GenDataScriptName0=
-GenDataScriptName1=
-GenDataScriptName2=
-GenDataScriptName3=
-GenDataScriptName4=
-GenDataScriptName5=
-GenDataScriptName6=
-GenDataScriptName7=
-GenDataScriptName8=
-GenDataScriptName9=
-GenDataOdbc=0
-GenDataDelOld=No
-GenDataTitle=No
-GenDataDefNumRows=20
-GenDataCommit=0
-GenDataPacket=0
-GenDataOwner=No
-GenDataProfNumb=
-GenDataProfChar=
-GenDataProfDate=
-GenDataCSVSeparator=,
-GenDataFileFormat=CSV
-GenDataUseWizard=No
-
-[FolderOptions\Pdm]
-IndxIQName=%COLUMN%_%INDEXTYPE%
-IndxPK=Yes
-IndxFK=Yes
-IndxAK=Yes
-IndxPKName=%TABLE%_PK
-IndxFKName=%REFR%_FK
-IndxAKName=%AKEY%_AK
-IndxPreserve=No
-IndxThreshold=0
-IndxStats=No
-RefrPreserve=No
-JidxPreserve=No
-RbldMultiFact=Yes
-RbldMultiDim=Yes
-RbldMultiJidx=Yes
-CubePreserve=No
-TablStProcPreserve=No
-ProcDepPreserve=Yes
-TrgrDepPreserve=Yes
-CubeScriptPath=
-CubeScriptCase=0
-CubeScriptEncoding=ANSI
-CubeScriptNacct=No
-CubeScriptHeader=No
-CubeScriptExt=csv
-CubeScriptExt0=txt
-CubeScriptExt1=
-CubeScriptExt2=
-CubeScriptSep=,
-CubeScriptDeli="
-EstimationYears=0
-DfltDomnName=D_%.U:VALUE%
-DfltColnName=D_%.U:VALUE%
-DfltReuse=Yes
-DfltDrop=Yes
-[ModelOptions]
-
-[ModelOptions\Physical Objects]
-CaseSensitive=No
-DisplayName=Yes
-EnableTrans=No
-UseTerm=No
-EnableRequirements=No
-EnableFullShortcut=Yes
-DefaultDttp=
-IgnoreOwner=No
-RebuildTrigger=Yes
-RefrUnique=No
-RefrAutoMigrate=Yes
-RefrMigrateReuse=Yes
-RefrMigrateDomain=Yes
-RefrMigrateCheck=Yes
-RefrMigrateRule=Yes
-RefrMigrateExtd=No
-RefrMigrDefaultLink=No
-RefrDfltImpl=D
-RefrPrgtColn=No
-RefrMigrateToEnd=No
-RebuildTriggerDep=No
-ColnFKName=%.3:PARENT%_%COLUMN%
-ColnFKNameUse=No
-DomnCopyDttp=Yes
-DomnCopyChck=No
-DomnCopyRule=No
-DomnCopyMand=No
-DomnCopyExtd=No
-DomnCopyProf=No
-Notation=0
-DomnDefaultMandatory=No
-ColnDefaultMandatory=No
-TablDefaultOwner=
-ViewDefaultOwner=
-TrgrDefaultOwnerTabl=
-TrgrDefaultOwnerView=
-IdxDefaultOwnerTabl=
-IdxDefaultOwnerView=
-JdxDefaultOwner=
-DBPackDefaultOwner=
-SeqDefaultOwner=
-ProcDefaultOwner=
-DBMSTrgrDefaultOwner=
-Currency=USD
-RefrDeleteConstraint=1
-RefrUpdateConstraint=1
-RefrParentMandatory=No
-RefrParentChangeAllow=Yes
-RefrCheckOnCommit=No
-
-[ModelOptions\Physical Objects\NamingOptionsTemplates]
-
-[ModelOptions\Physical Objects\ClssNamingOptions]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Connection]
-
-[ModelOptions\Pdm]
-
-[ModelOptions\Generate]
-
-[ModelOptions\Generate\Xsm]
-GenRootElement=Yes
-GenComplexType=No
-GenAttribute=Yes
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=No
-
-[ModelOptions\Generate\Pdm]
-RRMapping=No
-
-[ModelOptions\Generate\Cdm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-Notation=2
-
-[ModelOptions\Generate\Oom]
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=Yes
-ClassPrefix=
-
-[ModelOptions\Generate\Ldm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-
-[ModelOptions\Default Opts]
-
-[ModelOptions\Default Opts\TABL]
-PhysOpts=
-
-[ModelOptions\Default Opts\COLN]
-PhysOpts=
-
-[ModelOptions\Default Opts\INDX]
-PhysOpts=
-
-[ModelOptions\Default Opts\AKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\PKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\STOR]
-PhysOpts=
-
-[ModelOptions\Default Opts\TSPC]
-PhysOpts=
-
-[ModelOptions\Default Opts\SQNC]
-PhysOpts=
-
-[ModelOptions\Default Opts\DTBS]
-PhysOpts=
-
-[ModelOptions\Default Opts\USER]
-PhysOpts=
-
-[ModelOptions\Default Opts\JIDX]
-PhysOpts=
-
-
-7ECC5F1B-F010-4CBE-B2A2-C58B65F930AF
-MySQL 5.0
-MYSQL50
-1562380870
-zhenghong
-1562380870
-zhenghong
-
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-
-
-
-
-C66FC48B-6094-4F6B-927D-FAA19A9FCF81
-pms_diagram
-pms_diagram
-1562380871
-zhenghong
-1562381580
-zhenghong
-[DisplayPreferences]
-
-[DisplayPreferences\PDM]
-
-[DisplayPreferences\General]
-Adjust to text=Yes
-Snap Grid=No
-Constrain Labels=Yes
-Display Grid=No
-Show Page Delimiter=Yes
-Show Links intersections=Yes
-Activate automatic link routing=Yes
-Grid size=0
-Graphic unit=2
-Window color=255, 255, 255
-Background image=
-Background mode=8
-Watermark image=
-Watermark mode=8
-Show watermark on screen=No
-Gradient mode=0
-Gradient end color=255, 255, 255
-Show Swimlane=No
-SwimlaneVert=Yes
-TreeVert=No
-CompDark=0
-
-[DisplayPreferences\Object]
-Show Icon=No
-Mode=2
-Trunc Length=40
-Word Length=40
-Word Text=!"#$%&')*+,-./:;=>?@\]^_`|}~
-Shortcut IntIcon=Yes
-Shortcut IntLoct=Yes
-Shortcut IntFullPath=No
-Shortcut IntLastPackage=Yes
-Shortcut ExtIcon=Yes
-Shortcut ExtLoct=No
-Shortcut ExtFullPath=No
-Shortcut ExtLastPackage=Yes
-Shortcut ExtIncludeModl=Yes
-EObjShowStrn=Yes
-ExtendedObject.Comment=No
-ExtendedObject.IconPicture=No
-ExtendedObject.TextStyle=No
-ExtendedObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Object Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-ELnkShowStrn=Yes
-ELnkShowName=Yes
-ExtendedLink_SymbolLayout=<Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Source" >[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] </Form>[CRLF]</Form>
-FileObject.Stereotype=No
-FileObject.DisplayName=Yes
-FileObject.LocationOrName=No
-FileObject.IconPicture=No
-FileObject.TextStyle=No
-FileObject.IconMode=Yes
-FileObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Location" Attribute="LocationOrName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Package.Stereotype=Yes
-Package.Comment=No
-Package.IconPicture=No
-Package.TextStyle=No
-Package_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Display Model Version=Yes
-Table.Stereotype=Yes
-Table.DisplayName=Yes
-Table.OwnerDisplayName=No
-Table.Columns=Yes
-Table.Columns._Filter="All Columns" PDMCOLNALL
-Table.Columns._Columns=Stereotype DataType KeyIndicator
-Table.Columns._Limit=-5
-Table.Keys=No
-Table.Keys._Columns=Stereotype Indicator
-Table.Indexes=No
-Table.Indexes._Columns=Stereotype
-Table.Triggers=No
-Table.Triggers._Columns=Stereotype
-Table.Comment=No
-Table.IconPicture=No
-Table.TextStyle=No
-Table_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="Stereotype No\r\nDisplayName Yes\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nDomain No\r\nKeyIndicator No\r\nIndexIndicator No\r\nNullStatus No" Filters=""All Columns" PDMCOLNALL ""\r\n"PK Columns" PDMCOLNPK "\"PRIM \"TRUE\" TRUE\""\r\n"Key Columns" PDMCOLNKEY "\"KEYS \"TRUE\" TRUE\""" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Keys" Collection="Keys" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Triggers" Collection="Triggers" Columns="Stereotype No\r\nDisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-View.Stereotype=Yes
-View.DisplayName=Yes
-View.OwnerDisplayName=No
-View.Columns=Yes
-View.Columns._Columns=DisplayName
-View.Columns._Limit=-5
-View.TemporaryVTables=Yes
-View.Indexes=No
-View.Comment=No
-View.IconPicture=No
-View.TextStyle=No
-View_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="DisplayName No\r\nExpression No\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nIndexIndicator No" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Tables" Collection="TemporaryVTables" Columns="Name Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="DisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Procedure.Stereotype=No
-Procedure.DisplayName=Yes
-Procedure.OwnerDisplayName=No
-Procedure.Comment=No
-Procedure.IconPicture=No
-Procedure.TextStyle=No
-Procedure_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Reference.Cardinality=No
-Reference.ImplementationType=No
-Reference.ChildRole=Yes
-Reference.Stereotype=Yes
-Reference.DisplayName=No
-Reference.ForeignKeyConstraintName=No
-Reference.JoinExpression=No
-Reference.Integrity=No
-Reference.ParentRole=Yes
-Reference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Cardinality" Attribute="Cardinality" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Implementation" Attribute="ImplementationType" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Cons&traint Name" Attribute="ForeignKeyConstraintName" Prefix="" Suffix="" Caption="Cons&traint Name" Mandatory="No" />[CRLF] <StandardAttribute Name="Join" Attribute="JoinExpression" Prefix="" Suffix="" Caption="Join" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Referential integrity" Attribute="Integrity" Prefix="" Suffix="" Caption="Referential integrity" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-ViewReference.ChildRole=Yes
-ViewReference.Stereotype=Yes
-ViewReference.DisplayName=No
-ViewReference.JoinExpression=No
-ViewReference.ParentRole=Yes
-ViewReference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Join Expression" Attribute="JoinExpression" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-
-[DisplayPreferences\Symbol]
-
-[DisplayPreferences\Symbol\FRMEOBJ]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=6000
-Height=2000
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=64
-Brush gradient color=192 192 192
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 255 128 128
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FRMELNK]
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FILO]
-OBJSTRNFont=新宋体,8,N
-OBJSTRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LCNMFont=新宋体,8,N
-LCNMFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=3600
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PDMPCKG]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 178 178 178
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\TABL]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-KeysFont=新宋体,8,N
-KeysFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-TriggersFont=新宋体,8,N
-TriggersFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=178 214 252
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VIEW]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-TemporaryVTablesFont=新宋体,8,N
-TemporaryVTablesFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=208 208 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PROC]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4000
-Height=1000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 108 0
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\REFR]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VREF]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\USRDEPD]
-OBJXSTRFont=新宋体,8,N
-OBJXSTRFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=2 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\Free Symbol]
-Free TextFont=新宋体,8,N
-Free TextFont color=0, 0, 0
-Line style=0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-(8268, 11693)
-((315,354), (433,354))
-1
-1
-
-
-1562381174
-1562397877
-((5318,-12322), (12118,-11072))
-((5718,-11697),(11718,-11697))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397874
-((5318,-5635), (12455,10791))
-((12055,10391),(12055,-5010),(5718,-5010))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397830
-((-20146,-10651), (-13682,-9401))
-((-19746,-10026),(-14082,-10026))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397828
-((-20512,-912), (-13682,338))
-((-20112,-287),(-14082,-287))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397875
-((5318,1150), (12755,2400))
-((5718,1775),(12355,1775))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397834
-((-25423,-16634), (-13682,-15384))
-((-14082,-16009),(-25023,-16009))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397843
-((-13886,-40113), (-3557,-33298))
-((-13486,-39713),(-4182,-39713),(-4182,-33698))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397841
-((-25967,-33723), (-13682,-32473))
-((-25567,-33098),(-14082,-33098))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397838
-((-25881,-27513), (-13682,-26263))
-((-25481,-26888),(-14082,-26888))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397887
-((27187,-34109), (29235,-22353))
-((28835,-33709),(28835,-22978),(27587,-22978))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397882
-((5318,-23603), (14753,-22353))
-((5718,-22978),(14353,-22978))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397885
-((5318,-30636), (13032,-29386))
-((12632,-30011),(5718,-30011))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397887
-((19783,-34109), (21033,-31973))
-((20408,-32373),(20408,-33709))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397875
-((18379,-5410), (26603,3076))
-((18779,-3210),(18779,-5010),(25803,-5010),(25803,2451),(25203,2451))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-4
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397875
-((8079,-42485), (12755,3601))
-((8479,-42085),(8479,2976),(12355,2976))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562494016
-((16021,-44709), (19721,-43459))
-((16421,-44084),(19321,-44084))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562381371
-((-4807,1976), (-3557,4225))
-((-4182,3825),(-4182,2376))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562397866
-((407,17961), (1657,21294))
-((1032,20894),(1032,18361))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562381334
-((-28084,8640), (-12593,18897))
-((-12993,17225),(-12993,9040),(-27459,9040),(-27459,18497))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-4
-
-
-
-
-
-
-
-
-
-
-
-1562381174
-1562381175
--1
-((-14082,-33698), (5718,2376))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397877
--1
-((11718,-16946), (27656,-6448))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-Table.Stereotype 1
-Table.DisplayName 1
-Table.OwnerDisplayName 0
-Table.Columns 1 -5 "All Columns" PDMCOLNALL Stereotype DataType KeyIndicator
-Table.Keys 0 0 "" "" Stereotype Indicator
-Table.Indexes 0 0 "" "" Stereotype
-Table.Triggers 0 0 "" "" Stereotype
-Table.Comment 0
-
-
-
-
-
-1562381174
-1562397874
--1
-((11603,10391), (25609,22539))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397830
--1
-((-31820,-13212), (-19746,-6840))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397828
--1
-((-35664,-5948), (-20112,5374))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397875
--1
-((12355,-3210), (25203,8112))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397834
--1
-((-39029,-23296), (-25023,-15274))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397843
--1
-((-28266,-42487), (-13486,-36939))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397841
--1
-((-37641,-35931), (-25567,-30383))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397838
--1
-((-38329,-29250), (-25481,-24526))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562397882
--1
-((14353,-25340), (27587,-20617))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562494016
--1
-((19321,-46199), (38349,-33709))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381174
-1562397885
--1
-((12632,-32373), (28184,-27650))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562381390
--1
-((-445,-46084), (16421,-42085))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381174
-1562381371
--1
-((-5221,3825), (7285,18361))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381174
-1562397866
--1
-((-4569,20894), (7879,28744))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562381174
-1562381333
--1
-((-33690,12125), (-21228,18497))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562381174
-1562381334
--1
-((-18644,13226), (-7342,17225))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-
-
-
-
-
-
-
-F3F51C15-30B1-4B4F-B588-037A027C79F4
-pms_product
-pms_product
-1521705853
-zhenghong
-1562381175
-zhenghong
-商品信息
-
-
-
-C0E454BF-E58D-495A-8765-822B8B374734
-id
-id
-1521705876
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-92E3C8FC-CCAA-4965-BC08-91BCDAAF9E73
-brand_id
-brand_id
-1521706257
-zhenghong
-1563086917
-zhenghong
-品牌id
-bigint
-
-
-5E4C5975-276C-441E-9D71-719E7DA9C062
-product_category_id
-product_category_id
-1521773101
-zhenghong
-1563086917
-zhenghong
-品牌分类id
-bigint
-
-
-4F7AD1F3-7F2B-4373-9FDB-9994D9F13410
-feight_template_id
-feight_template_id
-1521783613
-zhenghong
-1563086917
-zhenghong
-运费模版id
-bigint
-
-
-2E6C2742-9361-47CF-AD21-409635A3C072
-product_attribute_category_id
-product_attribute_category_id
-1522046100
-zhenghong
-1563086917
-zhenghong
-品牌属性分类id
-bigint
-
-
-C11A9FF0-E78E-42E7-87F6-74C260654B69
-name
-name
-1521705899
-zhenghong
-1563086917
-zhenghong
-商品名称
-varchar(64)
-64
-1
-
-
-7C62E024-6C2D-43EA-831D-F6732EAF2740
-pic
-pic
-1521705899
-zhenghong
-1563086917
-zhenghong
-图片
-varchar(255)
-255
-
-
-AACE3F67-7992-4FFB-95B0-44BE2118166F
-product_sn
-product_sn
-1521706312
-zhenghong
-1562381175
-zhenghong
-货号
-varchar(64)
-64
-1
-
-
-0A783893-49D3-47DB-8003-E664610699CB
-delete_status
-delete_status
-1521773185
-zhenghong
-1562381175
-zhenghong
-删除状态:0->未删除;1->已删除
-int(1)
-1
-
-
-04660680-3435-40A5-AEE6-FE7A1C98A517
-publish_status
-publish_status
-1521706416
-zhenghong
-1562381175
-zhenghong
-上架状态:0->下架;1->上架
-int(1)
-1
-
-
-3493F6FB-34EF-44C6-B66B-A225B31E1386
-new_status
-new_status
-1521708193
-zhenghong
-1562381175
-zhenghong
-新品状态:0->不是新品;1->新品
-int(1)
-1
-
-
-29704A3C-A62A-4673-BEE8-00C8EFC71B09
-recommand_status
-recommand_status
-1521708193
-zhenghong
-1562381175
-zhenghong
-推荐状态;0->不推荐;1->推荐
-int(1)
-1
-
-
-1F936E82-1E1B-43B5-BF64-4523430B707D
-verify_status
-verify_status
-1521710674
-zhenghong
-1562381175
-zhenghong
-审核状态:0->未审核;1->审核通过
-int(1)
-1
-
-
-8D23D579-A220-4B6D-83A1-A1E2765D96BB
-sort
-sort
-1521708381
-zhenghong
-1562381175
-zhenghong
-排序
-int
-
-
-5813DAE6-DFE1-4247-A274-602D28801F90
-sale
-sale
-1521710587
-zhenghong
-1562381175
-zhenghong
-销量
-int
-
-
-EC840136-B4DC-4B21-9337-0C39A7A66949
-price
-price
-1521706312
-zhenghong
-1563086917
-zhenghong
-价格
-decimal(10,2)
-10
-2
-
-
-30DBFD9C-50BE-4214-A5A2-5D887202F08D
-promotion_price
-promotion_price
-1521770729
-zhenghong
-1562381175
-zhenghong
-促销价格
-decimal(10,2)
-10
-2
-
-
-801D0F05-1BB3-47AA-BE95-2962EB44CEFB
-gift_growth
-gift_growth
-1527561524
-zhenghong
-1562381175
-zhenghong
-赠送的成长值
-0
-int
-
-
-A3B04C4B-77E3-4157-99B7-6AF06AE27398
-gift_point
-gift_point
-1521771016
-zhenghong
-1562381175
-zhenghong
-赠送的积分
-0
-int
-
-
-54A4D2E7-CFB6-4EBF-BAD5-2F99E0DC88B2
-use_point_limit
-use_point_limit
-1521771103
-zhenghong
-1562381175
-zhenghong
-限制使用的积分数
-int
-
-
-2A5A1C9A-3353-48FF-9F8C-D60B88F500C9
-sub_title
-sub_title
-1521773700
-zhenghong
-1562381175
-zhenghong
-副标题
-varchar(255)
-255
-
-
-ADAF2D32-1AA4-4751-A61D-E83CA2868C0D
-description
-description
-1521774517
-zhenghong
-1562381175
-zhenghong
-商品描述
-text
-
-
-A60123F5-3219-4FC0-A16A-8D97DEDF2F9B
-original_price
-original_price
-1521775224
-zhenghong
-1562381175
-zhenghong
-市场价
-decimal(10,2)
-10
-2
-
-
-26CA099A-DEDF-4F19-A840-F09F53346659
-stock
-stock
-1521775417
-zhenghong
-1562381175
-zhenghong
-库存
-int
-
-
-4D8AF9A8-5082-4473-A178-19DB359CC9ED
-low_stock
-low_stock
-1521775417
-zhenghong
-1562381175
-zhenghong
-库存预警值
-int
-
-
-D1BE1DBC-F738-4385-B170-66EA589B90C7
-unit
-unit
-1521775486
-zhenghong
-1562381175
-zhenghong
-单位
-varchar(16)
-16
-
-
-7F2EDC17-D1E2-497B-9A1B-DC3396959C04
-weight
-weight
-1521775567
-zhenghong
-1562381175
-zhenghong
-商品重量,默认为克
-decimal(10,2)
-10
-2
-
-
-CE8F31F7-8517-40EC-9EDC-A9D71B69B059
-preview_status
-preview_status
-1521782409
-zhenghong
-1562381175
-zhenghong
-是否为预告商品:0->不是;1->是
-int(1)
-1
-
-
-002A5428-CED4-44BA-958C-6A29F461CAFE
-service_ids
-service_ids
-1521783875
-zhenghong
-1562381175
-zhenghong
-以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮
-varchar(64)
-64
-
-
-2DA104CC-7AD3-412E-9205-B4A877C32B6E
-keywords
-keywords
-1521784236
-zhenghong
-1563086917
-zhenghong
-关键字
-varchar(255)
-255
-
-
-C866CA54-CF8E-4FC5-A391-BA27323EEEB9
-note
-note
-1521784236
-zhenghong
-1563086917
-zhenghong
-备注
-varchar(255)
-255
-
-
-FF59870A-E62A-43CB-A639-3D511BD19716
-album_pics
-album_pics
-1522046916
-zhenghong
-1562381175
-zhenghong
-画册图片,连产品图片限制为5张,以逗号分割
-varchar(255)
-255
-
-
-1FBE2E81-0C6E-4445-BF03-3718E495DCB7
-detail_title
-detail_title
-1521784236
-zhenghong
-1563086917
-zhenghong
-详情标题
-varchar(255)
-255
-
-
-C66C9465-3237-465C-8882-9D48A545FFA9
-detail_desc
-detail_desc
-1521784236
-zhenghong
-1563086917
-zhenghong
-详情描述
-text
-
-
-822C0368-EDF0-4261-81B8-39A057A3AC16
-detail_html
-detail_html
-1522047002
-zhenghong
-1562381175
-zhenghong
-产品详情网页内容
-text
-
-
-674F842C-1A77-4ACA-BB37-2B5C8816CAEA
-detail_mobile_html
-detail_mobile_html
-1522047022
-zhenghong
-1562381175
-zhenghong
-移动端网页详情
-text
-
-
-16318375-AB64-4F77-AC9F-4ECDFC7C1CCA
-promotion_start_time
-promotion_start_time
-1522721079
-zhenghong
-1562381175
-zhenghong
-促销开始时间
-datetime
-
-
-8B074107-7AA8-4717-9F69-5E8A6C3E917E
-promotion_end_time
-promotion_end_time
-1522721096
-zhenghong
-1562381175
-zhenghong
-促销结束时间
-datetime
-
-
-119DB9FE-4DFA-4A34-A474-60A3BC106FCD
-promotion_per_limit
-promotion_per_limit
-1522721333
-zhenghong
-1562381175
-zhenghong
-活动限购数量
-int
-
-
-B079E33F-2A76-4165-B68F-223414FAA1BC
-promotion_type
-promotion_type
-1522721953
-zhenghong
-1562381175
-zhenghong
-促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购
-int(1)
-1
-
-
-9A703BF7-944F-49D8-A005-9AD3315C71E1
-product_category_name
-product_category_name
-1524810975
-zhenghong
-1562381175
-zhenghong
-产品分类名称
-varchar(255)
-255
-
-
-47CF7C10-CEAE-45DD-B613-0630AD1CEDBE
-brand_name
-brand_name
-1524811003
-zhenghong
-1562381175
-zhenghong
-品牌名称
-varchar(255)
-255
-
-
-
-
-D8ADED0C-75E4-4952-B74E-1509E3BD0359
-Key_1
-Key_1
-1521705876
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-4897D1FB-F5D9-4B2F-9762-14DAB1D47CAD
-index_name
-index_name
-1521771497
-zhenghong
-1562381175
-zhenghong
-
-
-B17ADC78-7793-4BFF-AD2A-0F81670D029B
-1521771542
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-13131CEC-5DA0-4EFB-B0E1-891482669DC3
-index_product_sn
-index_product_sn
-1521771497
-zhenghong
-1562381175
-zhenghong
-1
-
-
-A298798E-7A62-47C7-8CEE-5AC2E864C5D1
-1521771579
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-0A386E6F-DB25-49F8-A8A9-8372C61C7453
-pms_brand
-pms_brand
-1521706107
-zhenghong
-1562381175
-zhenghong
-品牌表
-
-
-
-190A58E6-55A6-459E-A76C-DCB8C23941FE
-id
-id
-1521706123
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-D3F63C35-ED91-4F7D-98C0-AA324F89B52A
-name
-name
-1521706148
-zhenghong
-1562678679
-zhenghong
-名称
-varchar(64)
-64
-
-
-EF89BB26-B9FC-46A2-95E3-4EF87A7AF1F8
-first_letter
-first_letter
-1522116447
-zhenghong
-1562381175
-zhenghong
-首字母
-varchar(8)
-8
-
-
-A02D9BEE-A5F2-4609-B53D-7005524288CD
-sort
-sort
-1522116482
-zhenghong
-1562678679
-zhenghong
-排序
-int
-
-
-BDB8FE96-ABA9-44CC-9EB0-7DF3A4802520
-factory_status
-factory_status
-1522116482
-zhenghong
-1562381175
-zhenghong
-是否为品牌制造商:0->不是;1->是
-int(1)
-1
-
-
-4CBAAD2D-12F9-4C9A-9416-5084A696B939
-show_status
-show_status
-1522116540
-zhenghong
-1562678679
-zhenghong
-是否显示
-int(1)
-1
-
-
-94C84F69-C993-4ED6-A068-7C7DF510C0D8
-product_count
-product_count
-1522116540
-zhenghong
-1562381175
-zhenghong
-产品数量
-int
-
-
-153D6EE9-C8D7-45F8-99A7-6FB7415A91B6
-product_comment_count
-product_comment_count
-1522116540
-zhenghong
-1562381175
-zhenghong
-产品评论数量
-int
-
-
-EEE86855-7AE4-4BA8-8CC2-1B6928F2B355
-logo
-logo
-1522116540
-zhenghong
-1562381175
-zhenghong
-品牌logo
-varchar(255)
-255
-
-
-F00FA2EA-CC11-48C4-9DB4-A24C8D4E08E9
-big_pic
-big_pic
-1522116540
-zhenghong
-1562381175
-zhenghong
-专区大图
-varchar(255)
-255
-
-
-A124EA11-7358-4889-8BA8-EA2CF9A5814A
-brand_story
-brand_story
-1522116540
-zhenghong
-1562381175
-zhenghong
-品牌故事
-text
-
-
-
-
-9E2518F9-2A0F-47EF-864D-4214E6AE9CBF
-Key_1
-Key_1
-1521706123
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-9DAFE7AD-FBC9-45D4-9EAD-8AB0A4729535
-pms_sku_stock
-pms_sku_stock
-1521709482
-zhenghong
-1563087874
-zhenghong
-商品的sku
-
-
-
-D3CBBCB7-49EF-4E93-A5BC-2EB62E2E8529
-id
-id
-1521709484
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-DEDA90B1-6203-4A54-A830-C259B085870D
-product_id
-product_id
-1521710488
-zhenghong
-1563087224
-zhenghong
-商品id
-bigint
-
-
-AA572F0D-8D76-4438-B281-05B1CA8C3B1A
-sku_code
-sku_code
-1521709695
-zhenghong
-1562381175
-zhenghong
-sku编码
-varchar(64)
-64
-1
-
-
-1B2C3CCB-BE2F-4E83-92F8-BD7FBB3D98B7
-price
-price
-1521709829
-zhenghong
-1563087224
-zhenghong
-价格
-decimal(10,2)
-10
-2
-
-
-BE1BBD90-9274-4E92-9056-0AB695B357F2
-stock
-stock
-1521709829
-zhenghong
-1562381175
-zhenghong
-库存
-0
-int
-
-
-250A85F2-46FC-421E-9332-599CD85B8130
-low_stock
-low_stock
-1521709829
-zhenghong
-1562381175
-zhenghong
-预警库存
-int
-
-
-ED876C8F-DEC2-4ACE-9A4D-52537300FC26
-sp1
-sp1
-1521709963
-zhenghong
-1563087224
-zhenghong
-规格属性1
-varchar(64)
-64
-
-
-0DA76E2B-0415-4A1E-A23A-2A87A368AAAB
-sp2
-sp2
-1521709963
-zhenghong
-1563087224
-zhenghong
-规格属性2
-varchar(64)
-64
-
-
-831B501F-9D5C-40EA-9673-7E1C2695AB40
-sp3
-sp3
-1521709963
-zhenghong
-1563087224
-zhenghong
-规格属性3
-varchar(64)
-64
-
-
-50E0DBFC-8DDB-4464-8980-7F5EE9C77527
-pic
-pic
-1521710423
-zhenghong
-1562381175
-zhenghong
-展示图片
-varchar(255)
-255
-
-
-28A7E887-23B8-443D-ACAA-9117A17246C0
-sale
-sale
-1521710565
-zhenghong
-1562381175
-zhenghong
-销量
-int
-
-
-A07925B6-F7CD-4B22-9BA2-F3CEAFFD6208
-promotion_price
-promotion_price
-1534927833
-zhenghong
-1562381175
-zhenghong
-单品促销价格
-decimal(10,2)
-10
-2
-
-
-25D9C883-9BC1-49B0-9FE5-55014CA2E6A0
-lock_stock
-lock_stock
-1534927865
-zhenghong
-1562381175
-zhenghong
-锁定库存
-0
-int
-
-
-
-
-F9C7500F-F268-415F-9FF6-40180D497BA7
-Key_1
-Key_1
-1521709484
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-EE88FD8B-C48A-4816-BA64-56D94618157F
-pms_product_vertify_record
-pms_product_vertify_record
-1521710820
-zhenghong
-1562381175
-zhenghong
-商品审核记录
-
-
-
-CB4E4615-5715-4DF4-B9DA-ED10DB2E1AD3
-id
-id
-1521710821
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-99D853A6-64F4-4E86-858E-B33D3499D457
-product_id
-product_id
-1521770349
-zhenghong
-1563087079
-zhenghong
-商品id
-bigint
-
-
-FFAFA7CE-236B-464B-A6CA-5310C4B458D0
-create_time
-create_time
-1521710821
-zhenghong
-1563087079
-zhenghong
-创建时间
-datetime
-
-
-4399E51B-124C-42A7-9C09-7A2E55718140
-vertify_man
-vertify_man
-1521710821
-zhenghong
-1562381175
-zhenghong
-审核人
-varchar(64)
-64
-
-
-03EA1F94-5A60-4E25-B085-31596E827F09
-status
-status
-1521710821
-zhenghong
-1562381175
-zhenghong
-审核后的状态:0->未通过;2->已通过
-int(1)
-1
-
-
-5D3B934D-DAE3-4CCD-9686-0D1E4F045FC3
-detail
-detail
-1521710821
-zhenghong
-1562381175
-zhenghong
-反馈详情
-varchar(255)
-255
-
-
-
-
-8A343516-E7C5-4B46-AAAC-287DDD226B91
-Key_1
-Key_1
-1521710821
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-221A4CDA-F009-4294-B48C-3369A0849002
-pms_product_operate_log
-pms_product_operate_log
-1521770649
-zhenghong
-1562381175
-zhenghong
-
-
-
-0F0BF19A-BAF9-4969-8D1B-01CEE8FFA5A1
-id
-id
-1521770770
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-CC984007-6624-4C30-B203-16368DC60F72
-product_id
-product_id
-1521771362
-zhenghong
-1563087174
-zhenghong
-商品id
-bigint
-
-
-2CD00C2E-5603-43FF-9FE8-8AAC19FB4F6F
-price_old
-price_old
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变前价格
-decimal(10,2)
-10
-2
-
-
-B8B46044-3D8B-4228-A0F9-1C4C829AF83B
-price_new
-price_new
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变后价格
-decimal(10,2)
-10
-2
-
-
-F9A40832-0CEE-4251-B4C7-BDDB1055F118
-sale_price_old
-sale_price_old
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变前优惠价
-decimal(10,2)
-10
-2
-
-
-A2FAF1E6-6AE8-4560-BCCE-2C5A952A0B34
-sale_price_new
-sale_price_new
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变后优惠价
-decimal(10,2)
-10
-2
-
-
-E2BEDC64-8C5A-4184-9AE3-DBD65C3E1DBB
-gift_point_old
-gift_point_old
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变前积分
-int
-
-
-94AFB285-BF41-43DB-9270-B0406A70C3A0
-gift_point_new
-gift_point_new
-1521770804
-zhenghong
-1563087174
-zhenghong
-改变后积分
-int
-
-
-E8827D9C-CADF-4A06-A073-60AF62163637
-use_point_limit_old
-use_point_limit_old
-1521771164
-zhenghong
-1563087174
-zhenghong
-改变前积分使用限制
-int
-
-
-994F0DCF-3201-4D91-B30E-334CF5FD2186
-use_point_limit_new
-use_point_limit_new
-1521771164
-zhenghong
-1563087174
-zhenghong
-改变后积分使用限制
-int
-
-
-0B401F78-7BDF-4EF8-8B1A-9F29695CFCFB
-operate_man
-operate_man
-1521771246
-zhenghong
-1562381175
-zhenghong
-操作人
-varchar(64)
-64
-
-
-6AEA16E5-6D19-4951-AFB7-90BE03A0D6C7
-create_time
-create_time
-1521771269
-zhenghong
-1563087174
-zhenghong
-创建时间
-datetime
-
-
-
-
-2B6281E1-8B9B-4A58-A41F-5850F995921A
-Key_1
-Key_1
-1521770770
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-94F08516-E595-4277-BA66-1200060DC81C
-pms_product_category
-pms_product_category
-1521773028
-zhenghong
-1562381175
-zhenghong
-产品分类
-
-
-
-73571842-757B-45F2-AE14-539E690B4187
-id
-id
-1521773048
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-57C437D7-6CFD-48BE-B960-4B674C06C730
-parent_id
-parent_id
-1522114406
-zhenghong
-1562675714
-zhenghong
-上级分类的编号:0表示一级分类
-bigint
-
-
-197F07E8-2801-4D93-B9E3-866D53230103
-name
-name
-1521773064
-zhenghong
-1562675714
-zhenghong
-名称
-varchar(64)
-64
-
-
-261FAA05-56F5-4309-86C2-DB461505AAAB
-level
-level
-1522114959
-zhenghong
-1562381175
-zhenghong
-分类级别:0->1级;1->2级
-int(1)
-1
-
-
-C71586EF-95E3-418C-BA43-64C9C2AB7CC6
-product_count
-product_count
-1522115030
-zhenghong
-1562675714
-zhenghong
-商品数量
-int
-
-
-DC0EE1CE-7729-4D4A-81B7-0E006E5BCE96
-product_unit
-product_unit
-1522115030
-zhenghong
-1562675714
-zhenghong
-商品单位
-varchar(64)
-64
-
-
-1F521CF8-39B2-4C99-AFC6-30DCECC37227
-nav_status
-nav_status
-1522115030
-zhenghong
-1562381175
-zhenghong
-是否显示在导航栏:0->不显示;1->显示
-int(1)
-1
-
-
-F2AE3B55-87C2-4E5A-84D3-E356E26BEBA6
-show_status
-show_status
-1522115145
-zhenghong
-1562381175
-zhenghong
-显示状态:0->不显示;1->显示
-int(1)
-1
-
-
-7657B4A0-E790-4B30-9D70-31FC31B8FA6D
-sort
-sort
-1522115178
-zhenghong
-1562675714
-zhenghong
-排序
-int
-
-
-2AC24C62-CB7B-4732-96D9-B0028F99AAE3
-icon
-icon
-1522115323
-zhenghong
-1562381175
-zhenghong
-图标
-varchar(255)
-255
-
-
-22840BFE-7B9D-4993-AC0B-CF634E593F74
-keywords
-keywords
-1522115588
-zhenghong
-1562675714
-zhenghong
-关键字
-varchar(255)
-255
-
-
-14AF2C26-D2A5-46A8-B04D-94779DF7997B
-description
-description
-1522115588
-zhenghong
-1562381175
-zhenghong
-描述
-text
-
-
-
-
-F74E3300-18BA-4AED-986E-96C770E46DE4
-Key_1
-Key_1
-1521773048
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D91307F9-A556-4A11-AEA6-AF78F02D7059
-pms_feight_template
-pms_feight_template
-1521782818
-zhenghong
-1562381175
-zhenghong
-运费模版
-
-
-
-E7989698-51D3-44A3-B35C-3996913D9124
-id
-id
-1521783117
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-4FCE3539-5C85-4B16-83DA-417495BE2CCC
-name
-name
-1521783135
-zhenghong
-1563087061
-zhenghong
-名称
-varchar(64)
-64
-
-
-3CE4DCC7-076D-4EB4-B80E-3294B2496054
-charge_type
-charge_type
-1521783135
-zhenghong
-1562381175
-zhenghong
-计费类型:0->按重量;1->按件数
-int(1)
-1
-
-
-044D06B8-0C31-41A9-8202-CCAB33D0717D
-first_weight
-first_weight
-1521783270
-zhenghong
-1562381175
-zhenghong
-首重kg
-decimal(10,2)
-10
-2
-
-
-A6B1DDB7-4D51-45D6-A35A-7EC3F7EA8471
-first_fee
-first_fee
-1521783270
-zhenghong
-1562381175
-zhenghong
-首费(元)
-decimal(10,2)
-10
-2
-
-
-5EBDA6E4-2944-483C-AA18-D151110B976C
-continue_weight
-continue_weight
-1521783270
-zhenghong
-1563087061
-zhenghong
-续重
-decimal(10,2)
-10
-2
-
-
-BC733641-4E0F-4A06-A820-7C241577CF0F
-continme_fee
-continme_fee
-1521783270
-zhenghong
-1563087061
-zhenghong
-续重费用
-decimal(10,2)
-10
-2
-
-
-36BD4082-653D-4591-9DC0-8C1EC1C9E96F
-dest
-dest
-1521783270
-zhenghong
-1562381175
-zhenghong
-目的地(省、市)
-varchar(255)
-255
-
-
-
-
-2773EB5C-51F1-46D3-A375-E8C9EFF18A7D
-Key_1
-Key_1
-1521783117
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-6DC254B8-5F2F-49C3-A821-6DE149B1A5D0
-pms_member_price
-pms_member_price
-1521791032
-zhenghong
-1562381175
-zhenghong
-商品会员价格表
-
-
-
-53B517F0-EBFD-4326-A24F-B0F797DBA9A0
-id
-id
-1521791069
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-4E811846-ECE6-4B69-88EE-239F532ED53D
-product_id
-product_id
-1521791466
-zhenghong
-1563086968
-zhenghong
-商品id
-bigint
-
-
-34D3C5CF-3AA2-477A-843C-BF3D37C402A3
-member_level_id
-member_level_id
-1522721755
-zhenghong
-1563086968
-zhenghong
-会员等级id
-bigint
-
-
-60E84A50-89C5-4B7E-B989-0E5A94B16119
-member_price
-member_price
-1522721615
-zhenghong
-1562381175
-zhenghong
-会员价格
-decimal(10,2)
-10
-2
-
-
-820D947D-DED3-4C5A-A291-FF2A4D9B3186
-member_level_name
-member_level_name
-1528184129
-zhenghong
-1563086968
-zhenghong
-会员等级名称
-varchar(100)
-100
-
-
-
-
-FB8A3E19-E65E-48D7-9DF0-8BA62F7A7845
-Key_1
-Key_1
-1521791069
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-93A95FE7-5A58-45F1-935E-F97BB7E902F8
-pms_product_ladder
-pms_product_ladder
-1521791865
-zhenghong
-1563087583
-zhenghong
-商品阶梯价格表(只针对同商品)
-
-
-
-2868FC52-B1A4-43B6-8ABF-E0D6AF8C2308
-id
-id
-1521792127
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-B2416E66-7D74-4209-8D69-79C509DB65FE
-product_id
-product_id
-1521792428
-zhenghong
-1563086982
-zhenghong
-商品id
-bigint
-
-
-9E337AE9-F3D2-486C-8166-B3D605526EFB
-count
-count
-1521792148
-zhenghong
-1562381175
-zhenghong
-满足的商品数量
-int
-
-
-EA922DD5-B7E9-4B3C-A316-00F4F176F13E
-discount
-discount
-1521792164
-zhenghong
-1562381175
-zhenghong
-折扣
-decimal(10,2)
-10
-2
-
-
-64D77622-AB23-479B-8481-E6A3F3DD4DBE
-price
-price
-1521792219
-zhenghong
-1562381175
-zhenghong
-折后价格
-decimal(10,2)
-10
-2
-
-
-
-
-1E99244A-A13A-4E8D-A4F7-982D15566660
-Key_1
-Key_1
-1521792127
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-710D1389-0418-4B58-A280-8BA886314E97
-pms_product_full_reduction
-pms_product_full_reduction
-1521791901
-zhenghong
-1563087615
-zhenghong
-商品满减表(只针对同商品)
-
-
-
-9153C3E8-793D-4163-B0DB-67BD74F6CB02
-id
-id
-1521792488
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-F78D9E04-E891-4FEC-9BF4-1F09F9D11F99
-product_id
-product_id
-1521792909
-zhenghong
-1563087018
-zhenghong
-商品id
-bigint
-
-
-929A2B42-8036-49B8-B277-995F4EBBC10C
-full_price
-full_price
-1521792498
-zhenghong
-1563087018
-zhenghong
-商品满足金额
-decimal(10,2)
-10
-2
-
-
-1D146A62-B3B4-4D1E-841B-5DA435D7F563
-reduce_price
-reduce_price
-1521792498
-zhenghong
-1563087018
-zhenghong
-商品减少金额
-decimal(10,2)
-10
-2
-
-
-
-
-B99110FD-47AC-4D45-80DF-E686E1B37B0F
-Key_1
-Key_1
-1521792488
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A966CDCF-6EE4-4335-A444-4AD5B7D28FCC
-pms_product_attribute_category
-pms_product_attribute_category
-1522044163
-zhenghong
-1562381175
-zhenghong
-产品属性分类表
-
-
-
-E51353D9-5D7E-48D8-B7BF-7968CF3479AE
-id
-id
-1522044196
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-B4A08BDF-053A-4540-87FA-60C04E3D0CF2
-name
-name
-1522044211
-zhenghong
-1562381175
-zhenghong
-varchar(64)
-64
-
-
-FEAA9217-3EEE-49DD-A2F2-42B0F176A48E
-attribute_count
-attribute_count
-1522044211
-zhenghong
-1562381175
-zhenghong
-属性数量
-int
-
-
-9FF50C01-FE47-4259-BFD6-DE856904D62E
-param_count
-param_count
-1522044211
-zhenghong
-1562381175
-zhenghong
-参数数量
-int
-
-
-
-
-EF05F924-985E-46FB-8887-B617771BE805
-Key_1
-Key_1
-1522044527
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-F31D60DB-D982-46CF-A274-EA4D5DEAF736
-pms_product_attribute
-pms_product_attribute
-1522044465
-zhenghong
-1562381175
-zhenghong
-商品属性参数表
-
-
-
-77C353F2-3CFF-48EC-8BF8-9DDC7AE1421D
-id
-id
-1522044502
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-746F9D10-C6F0-4E16-A713-FCD39F0D2722
-product_attribute_category_id
-product_attribute_category_id
-1522045168
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-2BC43B5D-7B3E-478D-9D75-E7705EF3364C
-name
-name
-1522044544
-zhenghong
-1562381175
-zhenghong
-varchar(64)
-64
-
-
-DAB6E2E0-B281-482F-93F1-EF981E070C56
-select_type
-select_type
-1522044544
-zhenghong
-1562381175
-zhenghong
-属性选择类型:0->唯一;1->单选;2->多选;对应属性和参数意义不同;
-int(1)
-1
-
-
-FFC1EAE9-8BE3-41E1-9618-34C1D2B046EF
-input_type
-input_type
-1522044628
-zhenghong
-1562381175
-zhenghong
-属性录入方式:0->手工录入;1->从列表中选取
-int(1)
-1
-
-
-225C0124-63A0-4184-A87E-99580A63BE8B
-input_list
-input_list
-1522044737
-zhenghong
-1562381175
-zhenghong
-可选值列表,以逗号隔开
-varchar(255)
-255
-
-
-F700621A-9644-4C07-A3B2-9E851D7E1E2A
-sort
-sort
-1522044833
-zhenghong
-1562381175
-zhenghong
-排序字段:最高的可以单独上传图片
-int
-
-
-7F8D38C8-7787-4392-8B53-57E9CF8DA161
-filter_type
-filter_type
-1522044833
-zhenghong
-1562381175
-zhenghong
-分类筛选样式:1->普通;1->颜色
-int(1)
-1
-
-
-BDF7BA5D-DDDD-41B5-A6C1-3DA73341CDE1
-search_type
-search_type
-1522045233
-zhenghong
-1562381175
-zhenghong
-检索类型;0->不需要进行检索;1->关键字检索;2->范围检索
-int(1)
-1
-
-
-9FDBBDD3-08CA-4D83-81F1-867663F910C2
-related_status
-related_status
-1522045363
-zhenghong
-1562381175
-zhenghong
-相同属性产品是否关联;0->不关联;1->关联
-int(1)
-1
-
-
-CD617EF1-16FA-48C9-AE50-7AB28BEC6BCA
-hand_add_status
-hand_add_status
-1522045453
-zhenghong
-1562381175
-zhenghong
-是否支持手动新增;0->不支持;1->支持
-int(1)
-1
-
-
-DD31FA54-739B-4DD4-9BB3-292FE40831B3
-type
-type
-1522045781
-zhenghong
-1562381175
-zhenghong
-属性的类型;0->规格;1->参数
-int(1)
-1
-
-
-
-
-EC304438-9644-40E5-BCA9-29B55D1EF8F8
-Key_1
-Key_1
-1522044517
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-FA6162C1-26CD-4758-B44B-418B57522A71
-pms_product_attribute_value
-pms_product_attribute_value
-1522046351
-zhenghong
-1562381175
-zhenghong
-存储产品参数信息的表
-
-
-
-A5E06AC7-E162-4EC8-A8F3-9A241A47CE43
-id
-id
-1522046392
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-53C49259-B1FA-4499-A4C4-754896AF31BD
-product_id
-product_id
-1522046451
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-1840B93B-CD96-4237-BAA1-343A612AD272
-product_attribute_id
-product_attribute_id
-1522046456
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-6AF891C0-0F69-43E5-B385-23452077FA3F
-value
-value
-1522046406
-zhenghong
-1562381175
-zhenghong
-手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开
-varchar(64)
-64
-
-
-
-
-D83CD2D0-8FA1-45B5-AAC3-7991FCBBAB36
-Key_1
-Key_1
-1522046392
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-5CF25643-2EC4-45A5-95F7-CDC4A98F0E2D
-pms_product_category_attribute_relation
-pms_product_category_attribute_relation
-1522115893
-zhenghong
-1562680401
-zhenghong
-产品的分类和属性的关系表,用于设置分类筛选条件(只支持二级分类)
-
-
-
-0EA674AC-176A-4A3E-84B7-5E247D68F781
-id
-id
-1522115894
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-8F92464F-9391-4D70-A25B-425FFAB4C5AA
-product_category_id
-product_category_id
-1522115961
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-0D605702-43C0-40BF-8516-5BE5E2B2C2D9
-product_attribute_id
-product_attribute_id
-1522115983
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-
-
-F97B9CDD-7541-4C56-B1F1-E55559AE79E9
-Key_1
-Key_1
-1522115894
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7D48866B-E7F3-476E-9F89-2C54DFCD5180
-pms_comment
-pms_comment
-1522118136
-zhenghong
-1562381175
-zhenghong
-商品评价表
-
-
-
-943ED24A-28B7-4A67-990A-04A26A99DED5
-id
-id
-1522118175
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-CA643659-8747-483F-BA49-0055B337A3DA
-product_id
-product_id
-1522118676
-zhenghong
-1563087807
-zhenghong
-商品id
-bigint
-
-
-EDDB40F5-0BAE-492E-951D-D4B38A57EC4C
-member_nick_name
-member_nick_name
-1522118254
-zhenghong
-1563087807
-zhenghong
-会员昵称
-varchar(255)
-255
-
-
-8212D170-39D4-4B9F-AA35-C7D7209E8767
-product_name
-product_name
-1522118254
-zhenghong
-1563087807
-zhenghong
-商品名称
-varchar(255)
-255
-
-
-A65ABEBE-EB99-4E00-A116-3E301FFAE866
-star
-star
-1522118296
-zhenghong
-1562381175
-zhenghong
-评价星数:0->5
-int(3)
-3
-
-
-6612AA93-8B5C-458E-840B-9C0ADEEAA28A
-member_ip
-member_ip
-1522118356
-zhenghong
-1562381175
-zhenghong
-评价的ip
-varchar(64)
-64
-
-
-E52838CC-C5A4-488E-B8FC-CAA95C8A91FE
-create_time
-create_time
-1522118413
-zhenghong
-1563087807
-zhenghong
-创建时间
-datetime
-
-
-E9E4FE59-49A2-4A62-8EC7-743681046C91
-show_status
-show_status
-1522118413
-zhenghong
-1563087807
-zhenghong
-是否显示
-int(1)
-1
-
-
-80FA2177-5DC7-44A6-9866-A5035CF28945
-product_attribute
-product_attribute
-1522118413
-zhenghong
-1562381175
-zhenghong
-购买时的商品属性
-varchar(255)
-255
-
-
-01BB36A4-7394-4FDD-B98E-8F5CD93681DC
-collect_couont
-collect_couont
-1522118537
-zhenghong
-1563087807
-zhenghong
-收藏数
-int
-
-
-ADE904EF-5FB2-4B1F-8039-781A71E311C3
-read_count
-read_count
-1522118537
-zhenghong
-1563087807
-zhenghong
-阅读数
-int
-
-
-F002CEBA-5992-40D4-8D94-94337027CB29
-content
-content
-1522118537
-zhenghong
-1563087807
-zhenghong
-内容
-text
-
-
-8681E4DA-CA64-4B4E-BF5C-00314561B51B
-pics
-pics
-1522118537
-zhenghong
-1562381175
-zhenghong
-上传图片地址,以逗号隔开
-varchar(1000)
-1000
-
-
-1DADC58A-3045-49E3-B8FF-68A8B311B3C3
-member_icon
-member_icon
-1522118919
-zhenghong
-1562381175
-zhenghong
-评论用户头像
-varchar(255)
-255
-
-
-DEDB52DC-1D3A-4C33-BF5C-4E805B79C73F
-replay_count
-replay_count
-1522119113
-zhenghong
-1563087807
-zhenghong
-回复数
-int
-
-
-
-
-FAB3C6E4-A89A-440D-902D-9A6B960C1D45
-Key_1
-Key_1
-1522118175
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-9E3432A8-89CD-47EC-9AB3-3CD8E7AF1B5E
-pms_comment_replay
-pms_comment_replay
-1522118840
-zhenghong
-1562381175
-zhenghong
-产品评价回复表
-
-
-
-1E8F8FF8-DC2E-446E-9840-7944BAB1EC72
-id
-id
-1522118870
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-2492C8A4-F822-4F9C-949A-3A1B4C5A0A79
-comment_id
-comment_id
-1522119056
-zhenghong
-1563087841
-zhenghong
-评论id
-bigint
-
-
-60469683-383D-4027-8945-D71703C75C2A
-member_nick_name
-member_nick_name
-1522118977
-zhenghong
-1563087841
-zhenghong
-会员昵称
-varchar(255)
-255
-
-
-89A70486-FC08-4866-868F-EC9F7F25D5C3
-member_icon
-member_icon
-1522118977
-zhenghong
-1563087841
-zhenghong
-会员头像
-varchar(255)
-255
-
-
-BC9164F3-6443-4A94-B039-68731EF3A1CC
-content
-content
-1522118977
-zhenghong
-1563087841
-zhenghong
-内容
-varchar(1000)
-1000
-
-
-EF69ADBE-F5FA-45F6-80E6-24570653C6DB
-create_time
-create_time
-1522118977
-zhenghong
-1563087841
-zhenghong
-创建时间
-datetime
-
-
-2E22355B-E4EE-426F-A795-89C2020E3BA1
-type
-type
-1522119192
-zhenghong
-1562381175
-zhenghong
-评论人员类型;0->会员;1->管理员
-int(1)
-1
-
-
-
-
-8332A16A-A9F0-40FE-A9C6-B3FE161102DC
-Key_1
-Key_1
-1522118880
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-34F3EBAE-8EAF-4AEE-9740-B02F5B28AE6A
-pms_album
-pms_album
-1522120039
-zhenghong
-1562381175
-zhenghong
-相册表
-
-
-
-EA0F5874-E723-4A0A-B350-E35315769D7C
-id
-id
-1522120040
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-4FB2EDD4-A67D-4237-A940-C940A5EFFCDC
-name
-name
-1522120061
-zhenghong
-1562381175
-zhenghong
-varchar(64)
-64
-
-
-B3274D5D-C3D7-4CD7-B608-ABF09E614A00
-cover_pic
-cover_pic
-1522120061
-zhenghong
-1562381175
-zhenghong
-varchar(1000)
-1000
-
-
-F0CCD6F5-01D0-4FCB-B3B5-39BFA30BBF35
-pic_count
-pic_count
-1522120061
-zhenghong
-1562381175
-zhenghong
-int
-
-
-9066F137-5936-47D9-9B46-662F0BA8F6D6
-sort
-sort
-1522120061
-zhenghong
-1562381175
-zhenghong
-int
-
-
-11E58CA7-4AC8-450F-B3C9-6F39445D2958
-description
-description
-1522120061
-zhenghong
-1562381175
-zhenghong
-varchar(1000)
-1000
-
-
-
-
-E023010E-9852-40B7-8E76-6EAF21D9F3D2
-Key_1
-Key_1
-1522120040
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-DC6B4FA5-8CE8-4068-8870-E24B149DAB7D
-pms_album_pic
-pms_album_pic
-1522120250
-zhenghong
-1562381175
-zhenghong
-画册图片表
-
-
-
-356F819F-142D-4875-9630-549B66792843
-id
-id
-1522120251
-zhenghong
-1562381175
-zhenghong
-bigint
-1
-1
-
-
-4A1B3C57-D479-4219-AA8A-F87F4292A99F
-album_id
-album_id
-1522120295
-zhenghong
-1562381175
-zhenghong
-bigint
-
-
-11F7EBA7-957F-4A2F-BAC5-8AC1CD81E871
-pic
-pic
-1522120273
-zhenghong
-1562381175
-zhenghong
-varchar(1000)
-1000
-
-
-
-
-F16C4AE8-3751-42C8-BB61-86156D544A59
-Key_1
-Key_1
-1522120251
-zhenghong
-1562381175
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-865C36C4-26C3-47C7-9148-874CD82354FB
-Reference_1
-Reference_1
-1521706257
-zhenghong
-1521706257
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-2C5A6848-1446-4C8C-ACE9-7693C7050278
-1521706257
-zhenghong
-1521706257
-zhenghong
-
-
-
-
-
-
-
-
-
-
-42752F4A-E65D-4EC7-B683-82B036EF0C13
-Reference_2
-Reference_2
-1521710488
-zhenghong
-1521710488
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-4316F189-AEF5-402C-92B9-E06C3E53AF55
-1521710488
-zhenghong
-1521710488
-zhenghong
-
-
-
-
-
-
-
-
-
-
-9D9F761E-04D9-49A8-B43A-4B3CC30CB0BD
-Reference_3
-Reference_3
-1521770349
-zhenghong
-1521770349
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-2E88A7C6-BFF6-4154-A4D7-A11D11217618
-1521770349
-zhenghong
-1521770349
-zhenghong
-
-
-
-
-
-
-
-
-
-
-716129A2-A702-4A1D-ADF1-3577399FB29F
-Reference_4
-Reference_4
-1521771362
-zhenghong
-1521771362
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-13592B4D-2ACC-496C-B00E-9DE7DBFC31EA
-1521771362
-zhenghong
-1521771362
-zhenghong
-
-
-
-
-
-
-
-
-
-
-2A5B5CC1-4B53-43C3-8E7F-BC04F374F423
-Reference_5
-Reference_5
-1521773101
-zhenghong
-1521773101
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-31444B3A-E66F-450C-A1BD-1361E4785765
-1521773101
-zhenghong
-1521773101
-zhenghong
-
-
-
-
-
-
-
-
-
-
-1846E24E-99B4-41D0-948A-FE1FB1092966
-Reference_6
-Reference_6
-1521783613
-zhenghong
-1521783613
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-87128AEE-4706-41FC-8650-FFED3FBB6BFF
-1521783613
-zhenghong
-1521783613
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7A6E34B4-BD78-4FC2-8027-44429DC8D5DE
-Reference_9
-Reference_9
-1521791466
-zhenghong
-1521791466
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-1DF9C2E9-AF69-42E0-9D46-BAB969D8DADD
-1521791466
-zhenghong
-1521791466
-zhenghong
-
-
-
-
-
-
-
-
-
-
-58BF9099-A1DA-40BA-BCAB-97472E4FFBF3
-Reference_10
-Reference_10
-1521792428
-zhenghong
-1521792428
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-ED9325FA-9FF9-49CE-90FC-86D23FD35F59
-1521792428
-zhenghong
-1521792428
-zhenghong
-
-
-
-
-
-
-
-
-
-
-9DB087C9-1D3F-445A-9348-1D6CF7562B22
-Reference_11
-Reference_11
-1521792909
-zhenghong
-1521792909
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-FC4C8120-6D40-49BC-9D4F-4BCED3EB778B
-1521792909
-zhenghong
-1521792909
-zhenghong
-
-
-
-
-
-
-
-
-
-
-6E6AADAB-B9BB-4E31-9A95-A788C1AF7ADC
-Reference_12
-Reference_12
-1522045168
-zhenghong
-1522045168
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-D13A8C8E-13EB-4F12-9FAD-AD550ADAAC88
-1522045168
-zhenghong
-1522045168
-zhenghong
-
-
-
-
-
-
-
-
-
-
-3E1BF65C-FD2E-4416-831C-757F8F8AC559
-Reference_13
-Reference_13
-1522046100
-zhenghong
-1522046100
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-6BE4FC33-50C1-4BC7-950E-EBB5930C5611
-1522046100
-zhenghong
-1522046100
-zhenghong
-
-
-
-
-
-
-
-
-
-
-33E424CD-7854-4BB9-A06C-49E0BFADB9CA
-Reference_14
-Reference_14
-1522046451
-zhenghong
-1522046451
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-D921EE79-4AD7-400F-B3EB-9BAB7E9FDE3F
-1522046451
-zhenghong
-1522046451
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A8CFDA85-FA38-41E3-A803-711ABBA74359
-Reference_15
-Reference_15
-1522046456
-zhenghong
-1522046456
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-B52C7EDD-FD1C-47AF-A8A1-1210243D26CE
-1522046456
-zhenghong
-1522046456
-zhenghong
-
-
-
-
-
-
-
-
-
-
-F641DC8D-7AFC-4C4B-8137-569928573950
-Reference_20
-Reference_20
-1522114406
-zhenghong
-1522114406
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-DF51B516-6D4E-4AB1-9255-8EE7E2E8B4FC
-1522114406
-zhenghong
-1522114406
-zhenghong
-
-
-
-
-
-
-
-
-
-
-6905525A-BD0D-4FC0-9AE9-1EFEEBC3651C
-Reference_21
-Reference_21
-1522115961
-zhenghong
-1522115961
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-143D8DFF-E375-4219-B6C8-6506432E2831
-1522115961
-zhenghong
-1522115961
-zhenghong
-
-
-
-
-
-
-
-
-
-
-B5C0B70F-08CD-4C01-A9C9-9AE472C00EA3
-Reference_22
-Reference_22
-1522115983
-zhenghong
-1522115983
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-F6355240-C8E1-4C51-BC99-C65A925AE8CB
-1522115983
-zhenghong
-1522115983
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7F5D44FB-E6DE-40AB-A6A7-92E31441077A
-Reference_23
-Reference_23
-1522118676
-zhenghong
-1522118676
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-E2681174-16C3-4087-80A3-4674EDED65C6
-1522118676
-zhenghong
-1522118676
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A7F7A2F9-C302-4EAD-927C-AD229A657AB4
-Reference_24
-Reference_24
-1522119056
-zhenghong
-1522119056
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-D12E0128-7FA6-4D66-895A-2B25D052B989
-1522119056
-zhenghong
-1522119056
-zhenghong
-
-
-
-
-
-
-
-
-
-
-714B1C6C-B1DC-4151-AFF6-076FEA0435A4
-Reference_25
-Reference_25
-1522120295
-zhenghong
-1522120295
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-57C0839A-E04B-4F0B-9326-12B35D39765F
-1522120295
-zhenghong
-1522120295
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-876C8F6B-B1D6-4105-A914-091B90933815
-PUBLIC
-PUBLIC
-1562380870
-zhenghong
-1562380870
-zhenghong
-
-
-
-
-A3EE2FD2-0306-4633-86DE-ED692CF20131
-MySQL 5.0
-MYSQL50
-1562380870
-zhenghong
-1562380870
-zhenghong
-file:///%_DBMS%/mysql50.xdb
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-1276524678
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/document/pdm/mall_sms.pdm b/document/pdm/mall_sms.pdm
deleted file mode 100644
index dd9cb15a..00000000
--- a/document/pdm/mall_sms.pdm
+++ /dev/null
@@ -1,3758 +0,0 @@
-
-
-
-
-
-
-
-
-
-3A6D03FB-2567-4F35-B3D7-98B607AA6060
-mall_sms
-mall_sms
-1562381864
-zhenghong
-1562382014
-zhenghong
-[FolderOptions]
-
-[FolderOptions\Physical Objects]
-GenerationCheckModel=Yes
-GenerationPath=
-GenerationOptions=
-GenerationTasks=
-GenerationTargets=
-GenerationSelections=
-RevPkey=Yes
-RevFkey=Yes
-RevAkey=Yes
-RevCheck=Yes
-RevIndx=Yes
-RevOpts=Yes
-RevViewAsTabl=No
-RevViewOpts=Yes
-RevSystAsTabl=Yes
-RevTablPerm=No
-RevViewPerm=No
-RevProcPerm=No
-RevDbpkPerm=No
-RevSqncPerm=No
-RevAdtPerm=No
-RevUserPriv=No
-RevUserOpts=No
-RevGrpePriv=No
-RevRolePriv=No
-RevDtbsOpts=Yes
-RevDtbsPerm=No
-RevViewIndx=Yes
-RevJidxOpts=Yes
-RevStats=No
-RevTspcPerm=No
-RevCaseSensitive=No
-GenTrgrStdMsg=Yes
-GenTrgrMsgTab=
-GenTrgrMsgNo=
-GenTrgrMsgTxt=
-TrgrPreserve=No
-TrgrIns=Yes
-TrgrUpd=Yes
-TrgrDel=Yes
-TrgrC2Ins=Yes
-TrgrC2Upd=Yes
-TrgrC3=Yes
-TrgrC4=Yes
-TrgrC5=Yes
-TrgrC6=Yes
-TrgrC7=Yes
-TrgrC8=Yes
-TrgrC9=Yes
-TrgrC10=Yes
-TrgrC11=Yes
-TrgrC1=Yes
-TrgrC12Ins=Yes
-TrgrC12Upd=Yes
-TrgrC13=Yes
-UpdateTableStatistics=Yes
-UpdateColumnStatistics=Yes
-
-[FolderOptions\Physical Objects\Database Generation]
-GenScriptName=crebas
-GenScriptName0=
-GenScriptName1=
-GenScriptName2=
-GenScriptName3=
-GenScriptName4=
-GenScriptName5=
-GenScriptName6=
-GenScriptName7=
-GenScriptName8=
-GenScriptName9=
-GenPathName=
-GenSingleFile=Yes
-GenODBC=No
-GenCheckModel=Yes
-GenScriptPrev=Yes
-GenArchiveModel=No
-GenUseSync=No
-GenSyncChoice=0
-GenSyncArch=
-GenSyncRmg=0
-
-[FolderOptions\Physical Objects\Database Generation\Format]
-GenScriptTitle=Yes
-GenScriptNamLabl=No
-GenScriptQDtbs=Yes
-GenScriptQOwnr=Yes
-GenScriptCase=0
-GenScriptEncoding=ANSI
-GenScriptNAcct=No
-IdentifierDelimiter="
-
-[FolderOptions\Physical Objects\Database Generation\Database]
-Create=Yes
-Open=Yes
-Close=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Database\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Storage]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\User]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\User\Create]
-Physical Options=No
-
-[FolderOptions\Physical Objects\Database Generation\Group]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\Role]
-Create=Yes
-Drop=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType\Create]
-Default value=Yes
-Check=Yes
-
-[FolderOptions\Physical Objects\Database Generation\AbstractDataType]
-Create=Yes
-Header=Yes
-Footer=Yes
-Drop=Yes
-Comment=Yes
-Install JAVA class=Yes
-Remove JAVA class=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Rule]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Default]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Sequence]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create]
-Check=Yes
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column]
-User datatype=Yes
-Default value=Yes
-Check=Yes
-Physical Options=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key\Create]
-Constraint declaration=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Create]
-Constraint declaration=Yes
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Filter]
-Primary key=Yes
-Foreign key=Yes
-Alternate key=Yes
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\View\Create]
-Force Column list=No
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewColumn]
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Create]
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Filter]
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DBMSTrigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym\Filter]
-Table=Yes
-View=Yes
-Proc=Yes
-Synonym=Yes
-Database Package=Yes
-Sequence=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Procedure]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Procedure\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DatabasePackage]
-Create=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\WebService]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Dimension]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synchronization]
-GenBackupTabl=1
-GenKeepBackTabl=1
-GenTmpTablDrop=No
-GenKeepTablOpts=No
-
-[FolderOptions\Physical Objects\Test Data]
-GenDataPathName=
-GenDataSinglefile=Yes
-GenDataScriptName=testdata
-GenDataScriptName0=
-GenDataScriptName1=
-GenDataScriptName2=
-GenDataScriptName3=
-GenDataScriptName4=
-GenDataScriptName5=
-GenDataScriptName6=
-GenDataScriptName7=
-GenDataScriptName8=
-GenDataScriptName9=
-GenDataOdbc=0
-GenDataDelOld=No
-GenDataTitle=No
-GenDataDefNumRows=20
-GenDataCommit=0
-GenDataPacket=0
-GenDataOwner=No
-GenDataProfNumb=
-GenDataProfChar=
-GenDataProfDate=
-GenDataCSVSeparator=,
-GenDataFileFormat=CSV
-GenDataUseWizard=No
-
-[FolderOptions\Pdm]
-IndxIQName=%COLUMN%_%INDEXTYPE%
-IndxPK=Yes
-IndxFK=Yes
-IndxAK=Yes
-IndxPKName=%TABLE%_PK
-IndxFKName=%REFR%_FK
-IndxAKName=%AKEY%_AK
-IndxPreserve=No
-IndxThreshold=0
-IndxStats=No
-RefrPreserve=No
-JidxPreserve=No
-RbldMultiFact=Yes
-RbldMultiDim=Yes
-RbldMultiJidx=Yes
-CubePreserve=No
-TablStProcPreserve=No
-ProcDepPreserve=Yes
-TrgrDepPreserve=Yes
-CubeScriptPath=
-CubeScriptCase=0
-CubeScriptEncoding=ANSI
-CubeScriptNacct=No
-CubeScriptHeader=No
-CubeScriptExt=csv
-CubeScriptExt0=txt
-CubeScriptExt1=
-CubeScriptExt2=
-CubeScriptSep=,
-CubeScriptDeli="
-EstimationYears=0
-DfltDomnName=D_%.U:VALUE%
-DfltColnName=D_%.U:VALUE%
-DfltReuse=Yes
-DfltDrop=Yes
-[ModelOptions]
-
-[ModelOptions\Physical Objects]
-CaseSensitive=No
-DisplayName=Yes
-EnableTrans=No
-UseTerm=No
-EnableRequirements=No
-EnableFullShortcut=Yes
-DefaultDttp=
-IgnoreOwner=No
-RebuildTrigger=Yes
-RefrUnique=No
-RefrAutoMigrate=Yes
-RefrMigrateReuse=Yes
-RefrMigrateDomain=Yes
-RefrMigrateCheck=Yes
-RefrMigrateRule=Yes
-RefrMigrateExtd=No
-RefrMigrDefaultLink=No
-RefrDfltImpl=D
-RefrPrgtColn=No
-RefrMigrateToEnd=No
-RebuildTriggerDep=No
-ColnFKName=%.3:PARENT%_%COLUMN%
-ColnFKNameUse=No
-DomnCopyDttp=Yes
-DomnCopyChck=No
-DomnCopyRule=No
-DomnCopyMand=No
-DomnCopyExtd=No
-DomnCopyProf=No
-Notation=0
-DomnDefaultMandatory=No
-ColnDefaultMandatory=No
-TablDefaultOwner=
-ViewDefaultOwner=
-TrgrDefaultOwnerTabl=
-TrgrDefaultOwnerView=
-IdxDefaultOwnerTabl=
-IdxDefaultOwnerView=
-JdxDefaultOwner=
-DBPackDefaultOwner=
-SeqDefaultOwner=
-ProcDefaultOwner=
-DBMSTrgrDefaultOwner=
-Currency=USD
-RefrDeleteConstraint=1
-RefrUpdateConstraint=1
-RefrParentMandatory=No
-RefrParentChangeAllow=Yes
-RefrCheckOnCommit=No
-
-[ModelOptions\Physical Objects\NamingOptionsTemplates]
-
-[ModelOptions\Physical Objects\ClssNamingOptions]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Connection]
-
-[ModelOptions\Pdm]
-
-[ModelOptions\Generate]
-
-[ModelOptions\Generate\Xsm]
-GenRootElement=Yes
-GenComplexType=No
-GenAttribute=Yes
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=No
-
-[ModelOptions\Generate\Pdm]
-RRMapping=No
-
-[ModelOptions\Generate\Cdm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-Notation=2
-
-[ModelOptions\Generate\Oom]
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=Yes
-ClassPrefix=
-
-[ModelOptions\Generate\Ldm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-
-[ModelOptions\Default Opts]
-
-[ModelOptions\Default Opts\TABL]
-PhysOpts=
-
-[ModelOptions\Default Opts\COLN]
-PhysOpts=
-
-[ModelOptions\Default Opts\INDX]
-PhysOpts=
-
-[ModelOptions\Default Opts\AKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\PKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\STOR]
-PhysOpts=
-
-[ModelOptions\Default Opts\TSPC]
-PhysOpts=
-
-[ModelOptions\Default Opts\SQNC]
-PhysOpts=
-
-[ModelOptions\Default Opts\DTBS]
-PhysOpts=
-
-[ModelOptions\Default Opts\USER]
-PhysOpts=
-
-[ModelOptions\Default Opts\JIDX]
-PhysOpts=
-
-
-B60890E1-ED2A-49C9-B7C6-0A5484C2984A
-MySQL 5.0
-MYSQL50
-1562381864
-zhenghong
-1562381864
-zhenghong
-
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-
-
-
-
-BE9688CB-17D2-49E5-88A5-85CB0D7D300B
-sms_diagram
-sms_diagram
-1562381864
-zhenghong
-1562382014
-zhenghong
-[DisplayPreferences]
-
-[DisplayPreferences\PDM]
-
-[DisplayPreferences\General]
-Adjust to text=Yes
-Snap Grid=No
-Constrain Labels=Yes
-Display Grid=No
-Show Page Delimiter=Yes
-Show Links intersections=Yes
-Activate automatic link routing=Yes
-Grid size=0
-Graphic unit=2
-Window color=255, 255, 255
-Background image=
-Background mode=8
-Watermark image=
-Watermark mode=8
-Show watermark on screen=No
-Gradient mode=0
-Gradient end color=255, 255, 255
-Show Swimlane=No
-SwimlaneVert=Yes
-TreeVert=No
-CompDark=0
-
-[DisplayPreferences\Object]
-Show Icon=No
-Mode=2
-Trunc Length=40
-Word Length=40
-Word Text=!"#$%&')*+,-./:;=>?@\]^_`|}~
-Shortcut IntIcon=Yes
-Shortcut IntLoct=Yes
-Shortcut IntFullPath=No
-Shortcut IntLastPackage=Yes
-Shortcut ExtIcon=Yes
-Shortcut ExtLoct=No
-Shortcut ExtFullPath=No
-Shortcut ExtLastPackage=Yes
-Shortcut ExtIncludeModl=Yes
-EObjShowStrn=Yes
-ExtendedObject.Comment=No
-ExtendedObject.IconPicture=No
-ExtendedObject.TextStyle=No
-ExtendedObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Object Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-ELnkShowStrn=Yes
-ELnkShowName=Yes
-ExtendedLink_SymbolLayout=<Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Source" >[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] </Form>[CRLF]</Form>
-FileObject.Stereotype=No
-FileObject.DisplayName=Yes
-FileObject.LocationOrName=No
-FileObject.IconPicture=No
-FileObject.TextStyle=No
-FileObject.IconMode=Yes
-FileObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Location" Attribute="LocationOrName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Package.Stereotype=Yes
-Package.Comment=No
-Package.IconPicture=No
-Package.TextStyle=No
-Package_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Display Model Version=Yes
-Table.Stereotype=Yes
-Table.DisplayName=Yes
-Table.OwnerDisplayName=No
-Table.Columns=Yes
-Table.Columns._Filter="All Columns" PDMCOLNALL
-Table.Columns._Columns=Stereotype DataType KeyIndicator
-Table.Columns._Limit=-5
-Table.Keys=No
-Table.Keys._Columns=Stereotype Indicator
-Table.Indexes=No
-Table.Indexes._Columns=Stereotype
-Table.Triggers=No
-Table.Triggers._Columns=Stereotype
-Table.Comment=No
-Table.IconPicture=No
-Table.TextStyle=No
-Table_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="Stereotype No\r\nDisplayName Yes\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nDomain No\r\nKeyIndicator No\r\nIndexIndicator No\r\nNullStatus No" Filters=""All Columns" PDMCOLNALL ""\r\n"PK Columns" PDMCOLNPK "\"PRIM \"TRUE\" TRUE\""\r\n"Key Columns" PDMCOLNKEY "\"KEYS \"TRUE\" TRUE\""" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Keys" Collection="Keys" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Triggers" Collection="Triggers" Columns="Stereotype No\r\nDisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-View.Stereotype=Yes
-View.DisplayName=Yes
-View.OwnerDisplayName=No
-View.Columns=Yes
-View.Columns._Columns=DisplayName
-View.Columns._Limit=-5
-View.TemporaryVTables=Yes
-View.Indexes=No
-View.Comment=No
-View.IconPicture=No
-View.TextStyle=No
-View_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="DisplayName No\r\nExpression No\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nIndexIndicator No" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Tables" Collection="TemporaryVTables" Columns="Name Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="DisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Procedure.Stereotype=No
-Procedure.DisplayName=Yes
-Procedure.OwnerDisplayName=No
-Procedure.Comment=No
-Procedure.IconPicture=No
-Procedure.TextStyle=No
-Procedure_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Reference.Cardinality=No
-Reference.ImplementationType=No
-Reference.ChildRole=Yes
-Reference.Stereotype=Yes
-Reference.DisplayName=No
-Reference.ForeignKeyConstraintName=No
-Reference.JoinExpression=No
-Reference.Integrity=No
-Reference.ParentRole=Yes
-Reference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Cardinality" Attribute="Cardinality" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Implementation" Attribute="ImplementationType" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Cons&traint Name" Attribute="ForeignKeyConstraintName" Prefix="" Suffix="" Caption="Cons&traint Name" Mandatory="No" />[CRLF] <StandardAttribute Name="Join" Attribute="JoinExpression" Prefix="" Suffix="" Caption="Join" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Referential integrity" Attribute="Integrity" Prefix="" Suffix="" Caption="Referential integrity" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-ViewReference.ChildRole=Yes
-ViewReference.Stereotype=Yes
-ViewReference.DisplayName=No
-ViewReference.JoinExpression=No
-ViewReference.ParentRole=Yes
-ViewReference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Join Expression" Attribute="JoinExpression" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-
-[DisplayPreferences\Symbol]
-
-[DisplayPreferences\Symbol\FRMEOBJ]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=6000
-Height=2000
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=64
-Brush gradient color=192 192 192
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 255 128 128
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FRMELNK]
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FILO]
-OBJSTRNFont=新宋体,8,N
-OBJSTRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LCNMFont=新宋体,8,N
-LCNMFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=3600
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PDMPCKG]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 178 178 178
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\TABL]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-KeysFont=新宋体,8,N
-KeysFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-TriggersFont=新宋体,8,N
-TriggersFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=178 214 252
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VIEW]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-TemporaryVTablesFont=新宋体,8,N
-TemporaryVTablesFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=208 208 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PROC]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4000
-Height=1000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 108 0
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\REFR]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VREF]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\USRDEPD]
-OBJXSTRFont=新宋体,8,N
-OBJXSTRFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=2 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\Free Symbol]
-Free TextFont=新宋体,8,N
-Free TextFont color=0, 0, 0
-Line style=0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-(8268, 11693)
-((315,354), (433,354))
-1
-1
-
-
-1562382014
-1562398053
-((-8387,30462), (-4479,31712))
-((-7987,31087),(-4879,31087))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382014
-1562398054
-((-7497,21015), (-4479,22265))
-((-7097,21640),(-4879,21640))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382014
-1562398056
-((7955,24834), (11254,26084))
-((10854,25459),(8355,25459))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382014
-1564820284
-((4908,2202), (6158,7137))
-((5533,6737),(5533,2602))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382014
-1564820276
-((-19184,10470), (-14209,11720))
-((-14609,11095),(-18784,11095))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382014
-1562382022
--1
-((-4879,17322), (8355,33596))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1562398053
--1
-((-22687,27899), (-7987,34275))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382014
-1562398054
--1
-((-23752,18226), (-7097,25054))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382014
-1562398056
--1
-((10854,22991), (25928,33817))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382014
-1562398086
--1
-((15015,6327), (28635,11875))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1562398090
--1
-((30584,14759), (44204,20307))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1562398085
--1
-((14619,14378), (28239,19926))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1562398088
--1
-((15087,-1220), (28707,4328))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1562398093
--1
-((30821,1825), (42895,13147))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1564820284
--1
-((-504,-3770), (11570,2602))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1564820285
--1
-((-21466,-4496), (-8232,2702))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382014
-1564820276
--1
-((-33826,7739), (-18784,14451))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382014
-1562398066
--1
-((-14609,6737), (11389,14899))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-
-
-
-
-
-
-
-AE50B113-BFF4-4DC9-9896-38BAF5B92C06
-sms_coupon
-sms_coupon
-1522215010
-zhenghong
-1564881595
-zhenghong
-优惠券表
-
-
-
-C6874D7E-75DF-4C87-ABE8-DCB9063E6DCE
-id
-id
-1522215060
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-891FFF27-91E9-426E-85C9-4904384F6191
-type
-type
-1522215069
-zhenghong
-1562382014
-zhenghong
-优惠卷类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券
-int(1)
-1
-
-
-A2776E8B-2228-4E00-A0C3-89AEB34D9518
-name
-name
-1522215086
-zhenghong
-1564881242
-zhenghong
-名称
-varchar(100)
-100
-
-
-D49EA42E-7111-423F-A898-5D5D4CFCB3A9
-platform
-platform
-1522215086
-zhenghong
-1562382014
-zhenghong
-使用平台:0->全部;1->移动;2->PC
-int(1)
-1
-
-
-A4D9A154-F444-4DDE-95D2-B646ED721C61
-count
-count
-1522215247
-zhenghong
-1562382014
-zhenghong
-数量
-int
-
-
-89ECF996-B9DE-47A8-9995-CC17738C654D
-amount
-amount
-1522215309
-zhenghong
-1562382014
-zhenghong
-金额
-decimal(10,2)
-10
-2
-
-
-11767289-BCF5-49C3-B89E-8419BD0FEE21
-per_limit
-per_limit
-1522215394
-zhenghong
-1562382014
-zhenghong
-每人限领张数
-int
-
-
-7D915C74-E8EA-448A-911B-AAA60D17B66F
-min_point
-min_point
-1522215424
-zhenghong
-1562382014
-zhenghong
-使用门槛;0表示无门槛
-decimal(10,2)
-10
-2
-
-
-0F65301D-1011-4934-BE99-A02E03ACD734
-start_time
-start_time
-1522215598
-zhenghong
-1564881242
-zhenghong
-开始使用时间
-datetime
-
-
-ADC6B02A-EB8E-4055-B2FE-4ECFC92B745E
-end_time
-end_time
-1522215598
-zhenghong
-1564881242
-zhenghong
-结束使用时间
-datetime
-
-
-41CBB97A-E956-4861-BA2D-36096CB39D4F
-use_type
-use_type
-1522215598
-zhenghong
-1562382014
-zhenghong
-使用类型:0->全场通用;1->指定分类;2->指定商品
-int(1)
-1
-
-
-C1868EBF-6C3B-4AA8-A1B8-89303614F730
-note
-note
-1522215693
-zhenghong
-1562382014
-zhenghong
-备注
-varchar(200)
-200
-
-
-7BC8B317-1CDF-4B0F-8D8A-0B82E79695FC
-publish_count
-publish_count
-1522216740
-zhenghong
-1562382014
-zhenghong
-发行数量
-int
-
-
-D46A98C6-22FB-4E6D-ADD0-629574A24971
-use_count
-use_count
-1522216759
-zhenghong
-1562382014
-zhenghong
-已使用数量
-int
-
-
-F976BBB7-2A07-4DFA-A9BF-14C8B4A45CE3
-receive_count
-receive_count
-1535438655
-zhenghong
-1562382014
-zhenghong
-领取数量
-int
-
-
-268E75D2-EE7C-426B-A7B8-DB5385CAB9D3
-enable_time
-enable_time
-1522216971
-zhenghong
-1562382014
-zhenghong
-可以领取的日期
-datetime
-
-
-4B36CBE1-222E-4B9B-A9FF-A387F11E6CB5
-code
-code
-1522217015
-zhenghong
-1562382014
-zhenghong
-优惠码
-varchar(64)
-64
-
-
-376AF94D-CE9F-4521-BC7E-A27E2616E8FD
-member_level
-member_level
-1522288044
-zhenghong
-1564881242
-zhenghong
-可领取的会员类型:0->无限制
-int(1)
-1
-
-
-
-
-E4C65717-B2ED-449E-8DD9-D2CE5D0E82A9
-Key_1
-Key_1
-1522215069
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-DB178E8B-1423-4819-A287-4D2C3C117625
-sms_coupon_product_relation
-sms_coupon_product_relation
-1522215792
-zhenghong
-1564881476
-zhenghong
-优惠券和商品的关系表
-
-
-
-56298BD0-CB04-4382-BD56-9727AFCB93A3
-id
-id
-1522215913
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-E11FE67C-2338-45A8-BD48-FFFE92730597
-coupon_id
-coupon_id
-1522215975
-zhenghong
-1564881476
-zhenghong
-优惠券id
-bigint
-
-
-0FDD4AA1-8390-4CBB-9690-36B2C183A456
-product_id
-product_id
-1522216015
-zhenghong
-1564881476
-zhenghong
-商品id
-bigint
-
-
-6CE248F7-AE50-4EE5-AFF0-ADC98F197DEA
-product_name
-product_name
-1541748810
-zhenghong
-1562382014
-zhenghong
-商品名称
-varchar(500)
-500
-
-
-8460CD40-D620-4915-9537-AC088D8DA952
-product_sn
-product_sn
-1541748810
-zhenghong
-1564881476
-zhenghong
-商品条码
-varchar(200)
-200
-
-
-
-
-C886095A-E1DA-4168-9FE1-5D7654F85808
-Key_1
-Key_1
-1522215913
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-7ED056B0-B42B-4AE4-8DD4-CE3E4FDE8BEC
-sms_coupon_product_category_relation
-sms_coupon_product_category_relation
-1522216155
-zhenghong
-1564881522
-zhenghong
-优惠券和商品分类关系表
-
-
-
-DF381149-5C45-4A46-B303-8886A1CC3FCE
-id
-id
-1522216188
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-35B779C8-A4BF-4958-9B11-72BED3093ECC
-coupon_id
-coupon_id
-1522216251
-zhenghong
-1564881522
-zhenghong
-优惠券id
-bigint
-
-
-9315DF0D-C70D-4F80-B6EC-05932458CD3B
-product_category_id
-product_category_id
-1522216380
-zhenghong
-1564881522
-zhenghong
-商品分类id
-bigint
-
-
-01D81049-EC9B-489A-B93B-4463B22D1376
-product_category_name
-product_category_name
-1541749144
-zhenghong
-1564881522
-zhenghong
-商品分类名称
-varchar(200)
-200
-
-
-3230EA04-BD27-4421-969B-1BECBEB964D0
-parent_category_name
-parent_category_name
-1541749144
-zhenghong
-1562382014
-zhenghong
-父分类名称
-varchar(200)
-200
-
-
-
-
-1B5E6C30-D695-4B0C-A323-2DA72E808FDC
-Key_1
-Key_1
-1522216188
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E1A89F88-BD38-416F-8604-F4EC54CAC546
-sms_coupon_history
-sms_coupon_history
-1522217089
-zhenghong
-1562382014
-zhenghong
-优惠券使用、领取历史表
-
-
-
-1ABCBB83-B2BA-4F9B-88A4-4242A38F9DC5
-id
-id
-1522217090
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-D84432B9-F179-4777-B414-624C73A6187C
-coupon_id
-coupon_id
-1522220508
-zhenghong
-1564881421
-zhenghong
-优惠券id
-bigint
-
-
-07F70EC0-9857-4563-83C4-2BD5EE0A89CA
-member_id
-member_id
-1522220546
-zhenghong
-1564881421
-zhenghong
-会员id
-bigint
-
-
-30274F75-0F26-4667-A616-8236470089D8
-order_id
-order_id
-1541490552
-zhenghong
-1562382014
-zhenghong
-订单id
-bigint
-
-
-AEE47A1D-A1A9-4319-86AC-ED6B4EBA4663
-coupon_code
-coupon_code
-1522217932
-zhenghong
-1564881421
-zhenghong
-优惠券码
-varchar(64)
-64
-
-
-9B7E7B8C-6853-4C70-B239-94758A6CE29B
-member_nickname
-member_nickname
-1522217932
-zhenghong
-1562382014
-zhenghong
-领取人昵称
-varchar(64)
-64
-
-
-AB92A2C5-48A0-4359-9E44-041DC9E50559
-get_type
-get_type
-1522218055
-zhenghong
-1562382014
-zhenghong
-获取类型:0->后台赠送;1->主动获取
-int(1)
-1
-
-
-2D7CCC5B-308F-4A82-8EDB-23C1A3AAFA4B
-create_time
-create_time
-1522218107
-zhenghong
-1564881421
-zhenghong
-创建时间
-datetime
-
-
-CEB489C5-17E2-4271-932B-0E907AE3972C
-use_status
-use_status
-1522218107
-zhenghong
-1562382014
-zhenghong
-使用状态:0->未使用;1->已使用;2->已过期
-int(1)
-1
-
-
-C3CE8601-9BA4-4961-9EB8-DCEFF85ADC6F
-use_time
-use_time
-1522220361
-zhenghong
-1562382014
-zhenghong
-使用时间
-datetime
-
-
-984E6A6A-FF3A-4B85-80E8-A34369466869
-order_sn
-order_sn
-1541490633
-zhenghong
-1562382014
-zhenghong
-订单号码
-varchar(100)
-100
-
-
-
-
-BBD37E75-F067-4100-B897-985544048EA5
-Key_1
-Key_1
-1522217090
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-93C838DC-1536-4254-8754-46897C66BC2E
-sms_home_brand
-sms_home_brand
-1522223818
-zhenghong
-1564886686
-zhenghong
-首页品牌推荐表
-
-
-
-E1C5D426-96F4-46FD-947B-97C442D64339
-id
-id
-1522224202
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-E6AD98C4-16ED-4566-9321-FEFCA1077162
-brand_id
-brand_id
-1522224364
-zhenghong
-1564886415
-zhenghong
-商品品牌id
-bigint
-
-
-B6C962A2-E218-4252-9EE3-C9E7997A7B89
-brand_name
-brand_name
-1522224216
-zhenghong
-1564886415
-zhenghong
-商品品牌名称
-varchar(64)
-64
-
-
-BCC007F2-F459-4AED-B626-D5F4D502049E
-recommend_status
-recommend_status
-1522224216
-zhenghong
-1564886415
-zhenghong
-推荐状态:0->不推荐;1->推荐
-int(1)
-1
-
-
-A12D305A-30EA-4E06-927B-3F967C507EF0
-sort
-sort
-1522224339
-zhenghong
-1564886415
-zhenghong
-排序
-int
-
-
-
-
-8D97B798-9715-4002-BB16-FC74948F6134
-Key_1
-Key_1
-1522224202
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-71183C66-01F0-4BD8-B9F4-9C188E20A7BF
-sms_home_new_product
-sms_home_new_product
-1522224403
-zhenghong
-1564885480
-zhenghong
-新品推荐商品表
-
-
-
-6859D539-E18B-49FC-9D67-1491C07BC8C1
-id
-id
-1522225739
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-981139FF-AE33-4EAB-B248-BF73E508CE29
-product_id
-product_id
-1522225874
-zhenghong
-1564886354
-zhenghong
-商品id
-bigint
-
-
-97ED937C-CCE6-4810-9D85-4CA7B119CBAC
-product_name
-product_name
-1522225762
-zhenghong
-1564886354
-zhenghong
-商品名称
-varchar(64)
-64
-
-
-426CC23B-3B43-4834-9DC5-759B7F0AD0C3
-recommend_status
-recommend_status
-1522225762
-zhenghong
-1564886354
-zhenghong
-推荐状态:0->不推荐;1->推荐
-int(1)
-1
-
-
-47FB4E96-3392-4B52-8CD1-751FBCDAC1B7
-sort
-sort
-1522225762
-zhenghong
-1564886354
-zhenghong
-排序
-int(1)
-1
-
-
-
-
-CB996224-EE60-4F6C-8C88-8FC1544539F4
-Key_1
-Key_1
-1522225739
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D68430D2-72C7-47DB-891D-FEEEBD534837
-sms_home_recommend_product
-sms_home_recommend_product
-1522224403
-zhenghong
-1564886755
-zhenghong
-人气推荐商品表
-
-
-
-B179D773-D6B8-41FF-AC94-78359E4E32B9
-id
-id
-1522225739
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-A7DFFDCB-B5A3-49A0-8250-43107420E98A
-product_id
-product_id
-1522226077
-zhenghong
-1562382014
-zhenghong
-bigint
-
-
-3A52A6F2-6B34-43A7-9468-189766B56BBC
-product_name
-product_name
-1522225762
-zhenghong
-1562382014
-zhenghong
-varchar(64)
-64
-
-
-EF1FBAD5-7B31-46A0-B535-F475A80BFEA7
-recommend_status
-recommend_status
-1522225762
-zhenghong
-1562382014
-zhenghong
-int(1)
-1
-
-
-9A484ED3-3906-4D84-B62A-DDFE6583E17E
-sort
-sort
-1522225762
-zhenghong
-1562382014
-zhenghong
-int(1)
-1
-
-
-
-
-23AF79AC-B471-4A2A-AA43-2267F9133763
-Key_1
-Key_1
-1522225739
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-AB0F8E97-E3F8-4D0C-847A-0C6911E508A3
-sms_home_recommend_subject
-sms_home_recommend_subject
-1522223818
-zhenghong
-1564886716
-zhenghong
-首页专题推荐表
-
-
-
-36D0B3A5-40C7-48F1-8BA2-8439B00D5824
-id
-id
-1522224202
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-3A35FEA2-5DF6-4A2A-B592-495CA8F28510
-subject_id
-subject_id
-1522226272
-zhenghong
-1564886439
-zhenghong
-专题id
-bigint
-
-
-45222887-6531-4478-8236-5CB0F5B322D4
-subject_name
-subject_name
-1522224216
-zhenghong
-1564886439
-zhenghong
-专题名称
-varchar(64)
-64
-
-
-DC0F8F52-4587-4F53-8B0D-1EC816F7D99C
-recommend_status
-recommend_status
-1522224216
-zhenghong
-1564886439
-zhenghong
-推荐状态:0->不推荐;1->推荐
-int(1)
-1
-
-
-1F88605E-80C9-4E93-9DE5-0ACE4C00642E
-sort
-sort
-1522224339
-zhenghong
-1564886439
-zhenghong
-排序
-int
-
-
-
-
-C16DECDD-5E8B-4B7C-9465-9F1381D1FF8B
-Key_1
-Key_1
-1522224202
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-8877F312-B3E9-440C-9DFF-A7A758D5CAF7
-sms_home_advertise
-sms_home_advertise
-1522227700
-zhenghong
-1562382014
-zhenghong
-首页轮播广告表
-
-
-
-87DFA755-3755-4D6C-A1E2-3F1475CEC276
-id
-id
-1522228220
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-8A87BE54-7270-4661-9658-92EBC4E5E696
-name
-name
-1522228234
-zhenghong
-1564886383
-zhenghong
-名称
-varchar(100)
-100
-
-
-F0F10165-85AC-4B0E-BB91-0BEDE52E7F08
-type
-type
-1522228234
-zhenghong
-1562382014
-zhenghong
-轮播位置:0->PC首页轮播;1->app首页轮播
-int(1)
-1
-
-
-29E40164-BBC6-4497-A909-AFB766261B21
-pic
-pic
-1522228288
-zhenghong
-1564886383
-zhenghong
-图片地址
-varchar(500)
-500
-
-
-3154C8C8-4554-4E2A-919A-EBB746040FEF
-start_time
-start_time
-1522228288
-zhenghong
-1564886383
-zhenghong
-开始时间
-datetime
-
-
-948D6F5E-F98F-41F5-AC49-06636DD70313
-end_time
-end_time
-1522228288
-zhenghong
-1564886383
-zhenghong
-结束时间
-datetime
-
-
-AD287F3D-DCD5-4A57-B17B-C645E8FF6832
-status
-status
-1522228288
-zhenghong
-1562382014
-zhenghong
-上下线状态:0->下线;1->上线
-int(1)
-1
-
-
-58FB1236-B23F-4A69-8D2E-386BFE6B4489
-click_count
-click_count
-1522228387
-zhenghong
-1562382014
-zhenghong
-点击数
-int
-
-
-BDF94604-E097-4CF5-BD91-433804D438F7
-order_count
-order_count
-1522228387
-zhenghong
-1562382014
-zhenghong
-下单数
-int
-
-
-02263A45-D8B4-4438-BC15-D821E46DDFD3
-url
-url
-1522228518
-zhenghong
-1562382014
-zhenghong
-链接地址
-varchar(500)
-500
-
-
-4C529189-D839-4377-A1E1-A67F121C3057
-note
-note
-1522228518
-zhenghong
-1562382014
-zhenghong
-备注
-varchar(500)
-500
-
-
-D2870FD0-3289-491E-AEE2-325B6A38631B
-sort
-sort
-1541577989
-zhenghong
-1562382014
-zhenghong
-排序
-0
-int
-{F4F16ECD-F2F1-4006-AF6F-638D5C65F35E},MYSQL50,102={9480E6AA-83DD-4AA7-9C91-E48F709C29D9},CharSet,0=
-{B314652C-DD43-4F81-8524-6F97A1BAACBA},Collate,0=
-
-
-
-
-
-
-AB998787-7B59-4552-A33D-E7167AA60D7C
-Key_1
-Key_1
-1522228220
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-96594E99-15FC-4003-B45E-5E73BD2196DD
-sms_flash_promotion
-sms_flash_promotion
-1522300652
-zhenghong
-1562382014
-zhenghong
-限时购表
-
-
-
-266ABAEA-7F8C-4010-ABDC-7F93C431F8F4
-id
-id
-1522300654
-zhenghong
-1562382014
-zhenghong
-bigint
-1
-1
-
-
-CC5305CF-8F1C-470E-AE60-2B18F9573294
-title
-title
-1522300794
-zhenghong
-1564820351
-zhenghong
-标题
-varchar(200)
-200
-
-
-DC39FC22-61BF-4FE4-B029-F392193ECBE5
-start_date
-start_date
-1522300794
-zhenghong
-1562382014
-zhenghong
-开始日期
-date
-
-
-0A4B342D-A1B2-4239-9798-85F05908D71D
-end_date
-end_date
-1522300794
-zhenghong
-1562382014
-zhenghong
-结束日期
-date
-
-
-E8A46911-5E96-42EC-B1FA-AB267213BBBE
-status
-status
-1522300794
-zhenghong
-1562382014
-zhenghong
-上下线状态
-int(1)
-1
-
-
-2F64DB8E-FE44-44D6-A609-6AC8ECD9BC77
-create_time
-create_time
-1522301354
-zhenghong
-1564821723
-zhenghong
-创建时间
-datetime
-
-
-
-
-0BD0D2F8-76D9-4081-9E0B-AA2C0E8CF113
-Key_1
-Key_1
-1522300654
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-25CCE93A-17BA-4C06-8330-8F53C2452710
-sms_flash_promotion_log
-sms_flash_promotion_log
-1522303116
-zhenghong
-1562382014
-zhenghong
-限时购通知记录
-
-
-
-3C6D9DEE-E7A6-4DAB-A89C-9A419C7F79C8
-id
-id
-1522303118
-zhenghong
-1562382014
-zhenghong
-int
-1
-1
-
-
-2B20CCA3-5BB7-4EDF-9B75-B477EF80BB38
-member_id
-member_id
-1522303390
-zhenghong
-1564820419
-zhenghong
-会员id
-int
-
-
-E7007B77-885B-4DC1-B7B9-C4A00E412AD2
-product_id
-product_id
-1522303410
-zhenghong
-1564820419
-zhenghong
-商品id
-bigint
-
-
-B7B4B12F-A198-4E0A-BAAE-98E70CCB392C
-member_phone
-member_phone
-1522303170
-zhenghong
-1564820419
-zhenghong
-会员电话
-varchar(64)
-64
-
-
-6336CDDB-8C6D-4544-BEDB-E17878819708
-product_name
-product_name
-1522303170
-zhenghong
-1564820419
-zhenghong
-商品名称
-varchar(100)
-100
-
-
-C3EDD1B2-6B4B-4ABA-894C-ADA74D846642
-subscribe_time
-subscribe_time
-1522303170
-zhenghong
-1562382014
-zhenghong
-会员订阅时间
-datetime
-
-
-B72578E2-97CE-4717-B8C6-AAC44D294E47
-send_time
-send_time
-1522303170
-zhenghong
-1564820419
-zhenghong
-发送时间
-datetime
-
-
-
-
-A70C14B9-8149-43F4-9F95-7CB51971F02C
-Key_1
-Key_1
-1522303118
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-457390DF-0474-4602-B0F0-79BEB81FCBB7
-sms_flash_promotion_session
-sms_flash_promotion_session
-1542177985
-zhenghong
-1562382014
-zhenghong
-限时购场次表
-
-
-
-5D9C45F6-83BE-49B8-9931-5AF735ABB8BF
-id
-id
-1542178330
-zhenghong
-1562382014
-zhenghong
-编号
-bigint
-1
-1
-
-
-5A46B75B-AB36-46F1-89DB-4D236CA1BA22
-name
-name
-1542178344
-zhenghong
-1562382014
-zhenghong
-场次名称
-varchar(200)
-200
-
-
-742092C5-EB89-43B0-9B44-1949934EF830
-start_time
-start_time
-1542178368
-zhenghong
-1562382014
-zhenghong
-每日开始时间
-time
-
-
-8C674B74-E8C8-4156-8B17-B7158C4CAEB8
-end_time
-end_time
-1542178396
-zhenghong
-1562382014
-zhenghong
-每日结束时间
-time
-
-
-84EA2AC4-FA45-4229-8B22-BEB9EAD987E8
-status
-status
-1542178416
-zhenghong
-1562382014
-zhenghong
-启用状态:0->不启用;1->启用
-int(1)
-1
-
-
-310DD169-0DB3-44A4-AD36-787C4449B861
-create_time
-create_time
-1542178436
-zhenghong
-1562382014
-zhenghong
-创建时间
-datetime
-
-
-
-
-0C8AA53A-2CF4-4D5C-B6BC-EF14496CA6DC
-Key_1
-Key_1
-1542178330
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E39A9EFA-AE58-46C2-B20C-6E4530439D74
-sms_flash_promotion_product_relation
-sms_flash_promotion_product_relation
-1542179013
-zhenghong
-1564821529
-zhenghong
-限时购与商品关系表
-
-
-
-4270DC49-4E19-4F73-9E20-1B6BCEE4CFC9
-id
-id
-1542179066
-zhenghong
-1564820381
-zhenghong
-bigint
-1
-1
-
-
-7CD36E89-845A-4545-A030-C755C6D21B92
-flash_promotion_id
-flash_promotion_id
-1542179374
-zhenghong
-1564820381
-zhenghong
-限时购id
-bigint
-
-
-5F3569B0-4E0B-4A87-AE1A-655390A24F63
-flash_promotion_session_id
-flash_promotion_session_id
-1542179394
-zhenghong
-1562382014
-zhenghong
-编号
-bigint
-
-
-CF7230FD-2E04-48DB-BD74-9C96C2B45210
-product_id
-product_id
-1542179440
-zhenghong
-1564820381
-zhenghong
-商品价格
-bigint
-
-
-B1034461-697E-4024-9CDD-CA07C5303554
-flash_promotion_price
-flash_promotion_price
-1542179066
-zhenghong
-1562382014
-zhenghong
-限时购价格
-decimal(10,2)
-10
-2
-
-
-A9344ADD-0AAC-4D99-B535-31C98FAF127F
-flash_promotion_count
-flash_promotion_count
-1542179137
-zhenghong
-1562382014
-zhenghong
-限时购数量
-int
-
-
-0044ABDA-AAA4-4FC6-992D-F71301576C5A
-flash_promotion_limit
-flash_promotion_limit
-1542179190
-zhenghong
-1562382014
-zhenghong
-每人限购数量
-int
-
-
-657C23F9-97F4-4BAC-AC8C-082213DA49F2
-sort
-sort
-1542179226
-zhenghong
-1562382014
-zhenghong
-排序
-int
-
-
-
-
-38265FA0-E876-4B1E-87D0-653106CE23AB
-Key_1
-Key_1
-1542179066
-zhenghong
-1562382014
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-776F0719-2B3B-44D7-AD27-3CBDF74E57D6
-Reference_33
-Reference_33
-1522215975
-zhenghong
-1522215975
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-38D94673-6A57-4ED3-8D65-64FC78382267
-1522215975
-zhenghong
-1522215975
-zhenghong
-
-
-
-
-
-
-
-
-
-
-0233EE1C-E5E8-4490-97C9-5859CE0B458E
-Reference_35
-Reference_35
-1522216251
-zhenghong
-1522216251
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-22492317-EB01-4F48-9D66-14F71142436C
-1522216251
-zhenghong
-1522216251
-zhenghong
-
-
-
-
-
-
-
-
-
-
-4215D0DB-92E0-4433-A339-0C507DB70066
-Reference_37
-Reference_37
-1522220508
-zhenghong
-1522220508
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-B4CF84C5-943F-41C4-826A-9D9E82FE0F71
-1522220508
-zhenghong
-1522220508
-zhenghong
-
-
-
-
-
-
-
-
-
-
-514E0138-8F8D-41E7-957C-F66ED6926D04
-Reference_77
-Reference_77
-1542179374
-zhenghong
-1542179374
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-E024FEF2-BDE5-4291-85F8-FBCCE0898A60
-1542179374
-zhenghong
-1542179374
-zhenghong
-
-
-
-
-
-
-
-
-
-
-6A87B103-93C0-4521-AAD2-CC5063D91882
-Reference_78
-Reference_78
-1542179394
-zhenghong
-1542179394
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-09D4D8F3-1CA5-4A9B-ADBF-410B6A6A52AB
-1542179394
-zhenghong
-1542179394
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-2AF61104-F85A-482A-9337-6C9C9390EA5F
-PUBLIC
-PUBLIC
-1562381864
-zhenghong
-1562381864
-zhenghong
-
-
-
-
-BBE9D877-AD53-418B-BCEA-320DD468E65E
-MySQL 5.0
-MYSQL50
-1562381864
-zhenghong
-1562381864
-zhenghong
-file:///%_DBMS%/mysql50.xdb
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-1276524678
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/document/pdm/mall_ums.pdm b/document/pdm/mall_ums.pdm
deleted file mode 100644
index 91295005..00000000
--- a/document/pdm/mall_ums.pdm
+++ /dev/null
@@ -1,5422 +0,0 @@
-
-
-
-
-
-
-
-
-
-E077A971-ADA9-40AA-AEDA-07FE25E713D4
-mall_ums
-mall_ums
-1562382314
-zhenghong
-1562382486
-zhenghong
-[FolderOptions]
-
-[FolderOptions\Physical Objects]
-GenerationCheckModel=Yes
-GenerationPath=
-GenerationOptions=
-GenerationTasks=
-GenerationTargets=
-GenerationSelections=
-RevPkey=Yes
-RevFkey=Yes
-RevAkey=Yes
-RevCheck=Yes
-RevIndx=Yes
-RevOpts=Yes
-RevViewAsTabl=No
-RevViewOpts=Yes
-RevSystAsTabl=Yes
-RevTablPerm=No
-RevViewPerm=No
-RevProcPerm=No
-RevDbpkPerm=No
-RevSqncPerm=No
-RevAdtPerm=No
-RevUserPriv=No
-RevUserOpts=No
-RevGrpePriv=No
-RevRolePriv=No
-RevDtbsOpts=Yes
-RevDtbsPerm=No
-RevViewIndx=Yes
-RevJidxOpts=Yes
-RevStats=No
-RevTspcPerm=No
-RevCaseSensitive=No
-GenTrgrStdMsg=Yes
-GenTrgrMsgTab=
-GenTrgrMsgNo=
-GenTrgrMsgTxt=
-TrgrPreserve=No
-TrgrIns=Yes
-TrgrUpd=Yes
-TrgrDel=Yes
-TrgrC2Ins=Yes
-TrgrC2Upd=Yes
-TrgrC3=Yes
-TrgrC4=Yes
-TrgrC5=Yes
-TrgrC6=Yes
-TrgrC7=Yes
-TrgrC8=Yes
-TrgrC9=Yes
-TrgrC10=Yes
-TrgrC11=Yes
-TrgrC1=Yes
-TrgrC12Ins=Yes
-TrgrC12Upd=Yes
-TrgrC13=Yes
-UpdateTableStatistics=Yes
-UpdateColumnStatistics=Yes
-
-[FolderOptions\Physical Objects\Database Generation]
-GenScriptName=crebas
-GenScriptName0=
-GenScriptName1=
-GenScriptName2=
-GenScriptName3=
-GenScriptName4=
-GenScriptName5=
-GenScriptName6=
-GenScriptName7=
-GenScriptName8=
-GenScriptName9=
-GenPathName=
-GenSingleFile=Yes
-GenODBC=No
-GenCheckModel=Yes
-GenScriptPrev=Yes
-GenArchiveModel=No
-GenUseSync=No
-GenSyncChoice=0
-GenSyncArch=
-GenSyncRmg=0
-
-[FolderOptions\Physical Objects\Database Generation\Format]
-GenScriptTitle=Yes
-GenScriptNamLabl=No
-GenScriptQDtbs=Yes
-GenScriptQOwnr=Yes
-GenScriptCase=0
-GenScriptEncoding=ANSI
-GenScriptNAcct=No
-IdentifierDelimiter="
-
-[FolderOptions\Physical Objects\Database Generation\Database]
-Create=Yes
-Open=Yes
-Close=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Database\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Tablespace\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Storage]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\User]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\User\Create]
-Physical Options=No
-
-[FolderOptions\Physical Objects\Database Generation\Group]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\Role]
-Create=Yes
-Drop=Yes
-Privilege=No
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\UserDefinedDataType\Create]
-Default value=Yes
-Check=Yes
-
-[FolderOptions\Physical Objects\Database Generation\AbstractDataType]
-Create=Yes
-Header=Yes
-Footer=Yes
-Drop=Yes
-Comment=Yes
-Install JAVA class=Yes
-Remove JAVA class=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Rule]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Default]
-Create=Yes
-Comment=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Sequence]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create]
-Check=Yes
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Table\Create\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column]
-User datatype=Yes
-Default value=Yes
-Check=Yes
-Physical Options=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Column\Check]
-Constraint declaration=No
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key]
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Primary key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Key\Alternate key\Create]
-Constraint declaration=No
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Foreign key\Create]
-Constraint declaration=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Create]
-Constraint declaration=Yes
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Index\Filter]
-Primary key=Yes
-Foreign key=Yes
-Alternate key=Yes
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Table&&Column\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\View\Create]
-Force Column list=No
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewColumn]
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Create]
-Physical Options=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\ViewIndex\Filter]
-Cluster=Yes
-Other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\View\Trigger\Filter]
-For insert=Yes
-For update=Yes
-For delete=Yes
-For other=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DBMSTrigger]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synonym\Filter]
-Table=Yes
-View=Yes
-Proc=Yes
-Synonym=Yes
-Database Package=Yes
-Sequence=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\JoinIndex\Create]
-Physical Options=Yes
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Procedure]
-Create=Yes
-Drop=Yes
-Comment=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\Procedure\Create]
-Header=Yes
-Footer=Yes
-
-[FolderOptions\Physical Objects\Database Generation\DatabasePackage]
-Create=Yes
-Drop=Yes
-Permission=No
-
-[FolderOptions\Physical Objects\Database Generation\WebService]
-Create=Yes
-Drop=Yes
-Comment=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Dimension]
-Create=Yes
-Drop=Yes
-
-[FolderOptions\Physical Objects\Database Generation\Synchronization]
-GenBackupTabl=1
-GenKeepBackTabl=1
-GenTmpTablDrop=No
-GenKeepTablOpts=No
-
-[FolderOptions\Physical Objects\Test Data]
-GenDataPathName=
-GenDataSinglefile=Yes
-GenDataScriptName=testdata
-GenDataScriptName0=
-GenDataScriptName1=
-GenDataScriptName2=
-GenDataScriptName3=
-GenDataScriptName4=
-GenDataScriptName5=
-GenDataScriptName6=
-GenDataScriptName7=
-GenDataScriptName8=
-GenDataScriptName9=
-GenDataOdbc=0
-GenDataDelOld=No
-GenDataTitle=No
-GenDataDefNumRows=20
-GenDataCommit=0
-GenDataPacket=0
-GenDataOwner=No
-GenDataProfNumb=
-GenDataProfChar=
-GenDataProfDate=
-GenDataCSVSeparator=,
-GenDataFileFormat=CSV
-GenDataUseWizard=No
-
-[FolderOptions\Pdm]
-IndxIQName=%COLUMN%_%INDEXTYPE%
-IndxPK=Yes
-IndxFK=Yes
-IndxAK=Yes
-IndxPKName=%TABLE%_PK
-IndxFKName=%REFR%_FK
-IndxAKName=%AKEY%_AK
-IndxPreserve=No
-IndxThreshold=0
-IndxStats=No
-RefrPreserve=No
-JidxPreserve=No
-RbldMultiFact=Yes
-RbldMultiDim=Yes
-RbldMultiJidx=Yes
-CubePreserve=No
-TablStProcPreserve=No
-ProcDepPreserve=Yes
-TrgrDepPreserve=Yes
-CubeScriptPath=
-CubeScriptCase=0
-CubeScriptEncoding=ANSI
-CubeScriptNacct=No
-CubeScriptHeader=No
-CubeScriptExt=csv
-CubeScriptExt0=txt
-CubeScriptExt1=
-CubeScriptExt2=
-CubeScriptSep=,
-CubeScriptDeli="
-EstimationYears=0
-DfltDomnName=D_%.U:VALUE%
-DfltColnName=D_%.U:VALUE%
-DfltReuse=Yes
-DfltDrop=Yes
-[ModelOptions]
-
-[ModelOptions\Physical Objects]
-CaseSensitive=No
-DisplayName=Yes
-EnableTrans=No
-UseTerm=No
-EnableRequirements=No
-EnableFullShortcut=Yes
-DefaultDttp=
-IgnoreOwner=No
-RebuildTrigger=Yes
-RefrUnique=No
-RefrAutoMigrate=Yes
-RefrMigrateReuse=Yes
-RefrMigrateDomain=Yes
-RefrMigrateCheck=Yes
-RefrMigrateRule=Yes
-RefrMigrateExtd=No
-RefrMigrDefaultLink=No
-RefrDfltImpl=D
-RefrPrgtColn=No
-RefrMigrateToEnd=No
-RebuildTriggerDep=No
-ColnFKName=%.3:PARENT%_%COLUMN%
-ColnFKNameUse=No
-DomnCopyDttp=Yes
-DomnCopyChck=No
-DomnCopyRule=No
-DomnCopyMand=No
-DomnCopyExtd=No
-DomnCopyProf=No
-Notation=0
-DomnDefaultMandatory=No
-ColnDefaultMandatory=No
-TablDefaultOwner=
-ViewDefaultOwner=
-TrgrDefaultOwnerTabl=
-TrgrDefaultOwnerView=
-IdxDefaultOwnerTabl=
-IdxDefaultOwnerView=
-JdxDefaultOwner=
-DBPackDefaultOwner=
-SeqDefaultOwner=
-ProcDefaultOwner=
-DBMSTrgrDefaultOwner=
-Currency=USD
-RefrDeleteConstraint=1
-RefrUpdateConstraint=1
-RefrParentMandatory=No
-RefrParentChangeAllow=Yes
-RefrCheckOnCommit=No
-
-[ModelOptions\Physical Objects\NamingOptionsTemplates]
-
-[ModelOptions\Physical Objects\ClssNamingOptions]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMPCKG\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\PDMDOMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\TABL\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\COLN\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\INDX\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\REFR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VREF\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEW\Code]
-Template=
-MaxLen=64
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\VIEWC\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBSERV\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WEBOP\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar='a'-'z','A'-'Z','0'-'9',"/-_.!~*'()"
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\WPARAM\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FACT\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DIMN\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\MEAS\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DATTR\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FILO\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMEOBJ\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\FRMELNK\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass]
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Name]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Physical Objects\ClssNamingOptions\DefaultClass\Code]
-Template=
-MaxLen=254
-Case=M
-ValidChar=
-InvldChar=
-AllValid=Yes
-NoAccent=No
-DefaultChar=
-Script=
-ConvTable=
-ConvTablePath=%_HOME%\Resource Files\Conversion Tables
-
-[ModelOptions\Connection]
-
-[ModelOptions\Pdm]
-
-[ModelOptions\Generate]
-
-[ModelOptions\Generate\Xsm]
-GenRootElement=Yes
-GenComplexType=No
-GenAttribute=Yes
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=No
-
-[ModelOptions\Generate\Pdm]
-RRMapping=No
-
-[ModelOptions\Generate\Cdm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-Notation=2
-
-[ModelOptions\Generate\Oom]
-CheckModel=Yes
-SaveLinks=Yes
-ORMapping=No
-NameToCode=Yes
-ClassPrefix=
-
-[ModelOptions\Generate\Ldm]
-CheckModel=Yes
-SaveLinks=Yes
-NameToCode=No
-
-[ModelOptions\Default Opts]
-
-[ModelOptions\Default Opts\TABL]
-PhysOpts=
-
-[ModelOptions\Default Opts\COLN]
-PhysOpts=
-
-[ModelOptions\Default Opts\INDX]
-PhysOpts=
-
-[ModelOptions\Default Opts\AKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\PKEY]
-PhysOpts=
-
-[ModelOptions\Default Opts\STOR]
-PhysOpts=
-
-[ModelOptions\Default Opts\TSPC]
-PhysOpts=
-
-[ModelOptions\Default Opts\SQNC]
-PhysOpts=
-
-[ModelOptions\Default Opts\DTBS]
-PhysOpts=
-
-[ModelOptions\Default Opts\USER]
-PhysOpts=
-
-[ModelOptions\Default Opts\JIDX]
-PhysOpts=
-
-
-537BE721-05F8-4EF3-AD76-D15482F3DBC2
-MySQL 5.0
-MYSQL50
-1562382314
-zhenghong
-1562382314
-zhenghong
-
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-
-
-
-
-91029109-81EE-4EFB-8E92-4C218618F6B5
-ums_diagram
-ums_diagram
-1562382314
-zhenghong
-1562382486
-zhenghong
-[DisplayPreferences]
-
-[DisplayPreferences\PDM]
-
-[DisplayPreferences\General]
-Adjust to text=Yes
-Snap Grid=No
-Constrain Labels=Yes
-Display Grid=No
-Show Page Delimiter=Yes
-Show Links intersections=Yes
-Activate automatic link routing=Yes
-Grid size=0
-Graphic unit=2
-Window color=255, 255, 255
-Background image=
-Background mode=8
-Watermark image=
-Watermark mode=8
-Show watermark on screen=No
-Gradient mode=0
-Gradient end color=255, 255, 255
-Show Swimlane=No
-SwimlaneVert=Yes
-TreeVert=No
-CompDark=0
-
-[DisplayPreferences\Object]
-Show Icon=No
-Mode=2
-Trunc Length=40
-Word Length=40
-Word Text=!"#$%&')*+,-./:;=>?@\]^_`|}~
-Shortcut IntIcon=Yes
-Shortcut IntLoct=Yes
-Shortcut IntFullPath=No
-Shortcut IntLastPackage=Yes
-Shortcut ExtIcon=Yes
-Shortcut ExtLoct=No
-Shortcut ExtFullPath=No
-Shortcut ExtLastPackage=Yes
-Shortcut ExtIncludeModl=Yes
-EObjShowStrn=Yes
-ExtendedObject.Comment=No
-ExtendedObject.IconPicture=No
-ExtendedObject.TextStyle=No
-ExtendedObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Object Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-ELnkShowStrn=Yes
-ELnkShowName=Yes
-ExtendedLink_SymbolLayout=<Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Source" >[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] </Form>[CRLF]</Form>
-FileObject.Stereotype=No
-FileObject.DisplayName=Yes
-FileObject.LocationOrName=No
-FileObject.IconPicture=No
-FileObject.TextStyle=No
-FileObject.IconMode=Yes
-FileObject_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Location" Attribute="LocationOrName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Package.Stereotype=Yes
-Package.Comment=No
-Package.IconPicture=No
-Package.TextStyle=No
-Package_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Display Model Version=Yes
-Table.Stereotype=Yes
-Table.DisplayName=Yes
-Table.OwnerDisplayName=No
-Table.Columns=Yes
-Table.Columns._Filter="All Columns" PDMCOLNALL
-Table.Columns._Columns=Stereotype DataType KeyIndicator
-Table.Columns._Limit=-5
-Table.Keys=No
-Table.Keys._Columns=Stereotype Indicator
-Table.Indexes=No
-Table.Indexes._Columns=Stereotype
-Table.Triggers=No
-Table.Triggers._Columns=Stereotype
-Table.Comment=No
-Table.IconPicture=No
-Table.TextStyle=No
-Table_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="Stereotype No\r\nDisplayName Yes\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nDomain No\r\nKeyIndicator No\r\nIndexIndicator No\r\nNullStatus No" Filters=""All Columns" PDMCOLNALL ""\r\n"PK Columns" PDMCOLNPK "\"PRIM \"TRUE\" TRUE\""\r\n"Key Columns" PDMCOLNKEY "\"KEYS \"TRUE\" TRUE\""" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Keys" Collection="Keys" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="Stereotype No\r\nDisplayName Yes\r\nIndicator No" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Triggers" Collection="Triggers" Columns="Stereotype No\r\nDisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-View.Stereotype=Yes
-View.DisplayName=Yes
-View.OwnerDisplayName=No
-View.Columns=Yes
-View.Columns._Columns=DisplayName
-View.Columns._Limit=-5
-View.TemporaryVTables=Yes
-View.Indexes=No
-View.Comment=No
-View.IconPicture=No
-View.TextStyle=No
-View_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardCollection Name="Columns" Collection="Columns" Columns="DisplayName No\r\nExpression No\r\nDataType No\r\nSymbolDataType No "Domain or Data type"\r\nIndexIndicator No" HasLimit="Yes" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Tables" Collection="TemporaryVTables" Columns="Name Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardCollection Name="Indexes" Collection="Indexes" Columns="DisplayName Yes" HasLimit="No" HideEmpty="No" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Procedure.Stereotype=No
-Procedure.DisplayName=Yes
-Procedure.OwnerDisplayName=No
-Procedure.Comment=No
-Procedure.IconPicture=No
-Procedure.TextStyle=No
-Procedure_SymbolLayout=<Form>[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="Yes" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Owner and Name" Attribute="OwnerDisplayName" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <Separator Name="Separator" />[CRLF] <StandardAttribute Name="Comment" Attribute="Comment" Prefix="" Suffix="" Alignment="LEFT" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Icon" Attribute="IconPicture" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF] <StandardAttribute Name="Force top align" Attribute="TextStyle" Prefix="" Suffix="" Alignment="CNTR" Caption="" Mandatory="Yes" />[CRLF]</Form>
-Reference.Cardinality=No
-Reference.ImplementationType=No
-Reference.ChildRole=Yes
-Reference.Stereotype=Yes
-Reference.DisplayName=No
-Reference.ForeignKeyConstraintName=No
-Reference.JoinExpression=No
-Reference.Integrity=No
-Reference.ParentRole=Yes
-Reference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Cardinality" Attribute="Cardinality" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Implementation" Attribute="ImplementationType" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Cons&traint Name" Attribute="ForeignKeyConstraintName" Prefix="" Suffix="" Caption="Cons&traint Name" Mandatory="No" />[CRLF] <StandardAttribute Name="Join" Attribute="JoinExpression" Prefix="" Suffix="" Caption="Join" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] <StandardAttribute Name="Referential integrity" Attribute="Integrity" Prefix="" Suffix="" Caption="Referential integrity" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-ViewReference.ChildRole=Yes
-ViewReference.Stereotype=Yes
-ViewReference.DisplayName=No
-ViewReference.JoinExpression=No
-ViewReference.ParentRole=Yes
-ViewReference_SymbolLayout=<Form>[CRLF] <Form Name="Source" >[CRLF] <StandardAttribute Name="Child Role" Attribute="ChildRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF] <Form Name="Center" >[CRLF] <StandardAttribute Name="Stereotype" Attribute="Stereotype" Prefix="<<" Suffix=">>" Caption="" Mandatory="No" />[CRLF] <ExclusiveChoice Name="Exclusive Choice" Mandatory="No" Display="HorizontalRadios" >[CRLF] <StandardAttribute Name="Name" Attribute="DisplayName" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] <StandardAttribute Name="Join Expression" Attribute="JoinExpression" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </ExclusiveChoice>[CRLF] </Form>[CRLF] <Form Name="Destination" >[CRLF] <StandardAttribute Name="Parent Role" Attribute="ParentRole" Prefix="" Suffix="" Caption="" Mandatory="No" />[CRLF] </Form>[CRLF]</Form>
-
-[DisplayPreferences\Symbol]
-
-[DisplayPreferences\Symbol\FRMEOBJ]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=6000
-Height=2000
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=64
-Brush gradient color=192 192 192
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 255 128 128
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FRMELNK]
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\FILO]
-OBJSTRNFont=新宋体,8,N
-OBJSTRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LCNMFont=新宋体,8,N
-LCNMFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=3600
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PDMPCKG]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 178 178 178
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\TABL]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-KeysFont=新宋体,8,N
-KeysFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-TriggersFont=新宋体,8,N
-TriggersFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=178 214 252
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VIEW]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-ColumnsFont=新宋体,8,N
-ColumnsFont color=0, 0, 0
-TablePkColumnsFont=新宋体,8,U
-TablePkColumnsFont color=0, 0, 0
-TableFkColumnsFont=新宋体,8,N
-TableFkColumnsFont color=0, 0, 0
-TemporaryVTablesFont=新宋体,8,N
-TemporaryVTablesFont color=0, 0, 0
-IndexesFont=新宋体,8,N
-IndexesFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4800
-Height=4000
-Brush color=208 208 255
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\PROC]
-STRNFont=新宋体,8,N
-STRNFont color=0, 0, 0
-DISPNAMEFont=新宋体,8,N
-DISPNAMEFont color=0, 0, 0
-OWNRDISPNAMEFont=新宋体,8,N
-OWNRDISPNAMEFont color=0, 0, 0
-LABLFont=新宋体,8,N
-LABLFont color=0, 0, 0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Width=4000
-Height=1000
-Brush color=255 255 192
-Fill Color=Yes
-Brush style=6
-Brush bitmap mode=12
-Brush gradient mode=65
-Brush gradient color=255 255 255
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 108 0
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\REFR]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\VREF]
-SOURCEFont=新宋体,8,N
-SOURCEFont color=0, 0, 0
-CENTERFont=新宋体,8,N
-CENTERFont color=0, 0, 0
-DESTINATIONFont=新宋体,8,N
-DESTINATIONFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 128 128 192
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\USRDEPD]
-OBJXSTRFont=新宋体,8,N
-OBJXSTRFont color=0, 0, 0
-Line style=1
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=2 0 128 128 255
-Shadow color=192 192 192
-Shadow=0
-
-[DisplayPreferences\Symbol\Free Symbol]
-Free TextFont=新宋体,8,N
-Free TextFont color=0, 0, 0
-Line style=0
-AutoAdjustToText=Yes
-Keep aspect=No
-Keep center=No
-Keep size=No
-Brush color=255 255 255
-Fill Color=Yes
-Brush style=1
-Brush bitmap mode=12
-Brush gradient mode=0
-Brush gradient color=118 118 118
-Brush background image=
-Custom shape=
-Custom text mode=0
-Pen=1 0 0 0 255
-Shadow color=192 192 192
-Shadow=0
-(8268, 11693)
-((315,354), (433,354))
-1
-1
-
-
-1562382486
-1562398281
-((-12339,-2029), (-9470,-779))
-((-11939,-1404),(-9870,-1404))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398231
-((-7192,14759), (-2767,16009))
-((-3167,15384),(-6792,15384))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398240
-((-2967,25145), (-1717,38097))
-((-2342,37697),(-2342,25545))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398237
-((-5620,11116), (-2767,28517))
-((-5220,28117),(-5220,11741),(-3167,11741))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-2
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398229
-((-7007,21607), (-2767,22857))
-((-6607,22232),(-3167,22232))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398247
-((12757,5198), (18547,6448))
-((18147,5823),(13157,5823))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398218
-((4370,25145), (15950,36996))
-((15550,36596),(4995,36596),(4995,25545))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398220
-((21722,32804), (22972,34644))
-((22347,34244),(22347,33204))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398224
-((12757,11245), (17662,12495))
-((17262,11870),(13157,11870))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398222
-((12757,20693), (17348,21943))
-((16948,21318),(13157,21318))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398292
-((-3994,-13409), (4566,-7689))
-((-3594,-9148),(-3594,-8089),(4166,-8089),(4166,-12784),(2366,-12784))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-4
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398287
-((1804,188), (5309,1438))
-((4909,813),(2204,813))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398288
-((10034,-3141), (11284,-786))
-((10659,-1186),(10659,-2741))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398291
-((10034,-11765), (11284,-9539))
-((10659,-11365),(10659,-9939))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398292
-((1966,-14609), (5630,-13359))
-((5230,-13984),(2366,-13984))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398294
-((-12567,-7465), (-9470,-6215))
-((-12167,-6840),(-9870,-6840))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398294
-((-12567,-10373), (-9308,-9123))
-((-12167,-9748),(-9708,-9748))
-1
-1
-12615680
-12632256
-CENTER 0 新宋体,8,N
-SOURCE 0 新宋体,8,N
-DESTINATION 0 新宋体,8,N
-
-
-
-
-
-
-
-
-
-
-
-1562382486
-1562398209
--1
-((-3167,5223), (13157,25545))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382486
-1562398281
--1
-((-9870,-7440), (2204,2232))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398279
--1
-((-24013,-3327), (-11939,3045))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398231
--1
-((-23888,4214), (-6792,16362))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398240
--1
-((-2719,37697), (14297,41696))
-0
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-1
-
-
-
-
-
-1562382486
-1562398237
--1
-((-19992,28117), (-3668,42739))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398229
--1
-((-19841,17396), (-6607,27068))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398247
--1
-((18147,-1130), (29835,6068))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398220
--1
-((14571,28481), (30123,33204))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398218
--1
-((15550,34244), (27398,38243))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398224
--1
-((17262,7859), (29724,15881))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398222
--1
-((16948,17307), (29410,25329))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398307
--1
-((19169,-7706), (31631,-2158))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398301
--1
-((19971,-17144), (35523,-9946))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398304
--1
-((20504,-23746), (34124,-18198))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398288
--1
-((4622,-9939), (16696,-2741))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398292
--1
-((-9708,-18820), (2366,-9148))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398287
--1
-((4909,-1186), (14133,2813))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398291
--1
-((5230,-15364), (16328,-11365))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-1562382486
-1562398294
--1
-((-23641,-11171), (-12167,-6448))
-12615680
-16570034
-12632256
-STRN 0 新宋体,10,N
-DISPNAME 0 新宋体,8,N
-OWNRDISPNAME 0 新宋体,8,N
-Columns 0 新宋体,8,N
-TablePkColumns 0 新宋体,8,U
-TableFkColumns 0 新宋体,8,N
-Keys 0 新宋体,8,N
-Indexes 0 新宋体,8,N
-Triggers 0 新宋体,8,N
-LABL 0 新宋体,8,N
-6
-65
-16777215
-
-
-
-
-
-
-
-
-
-
-
-
-9BFDCE21-AD2E-4F59-B19C-A7521037A5E0
-ums_member
-ums_member
-1522217487
-zhenghong
-1562382486
-zhenghong
-会员表
-
-
-
-F0640434-CEE9-49E2-A7F6-21D9A01AF31D
-id
-id
-1522217488
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-1DE24E68-E235-4309-BB20-EC35CD75138B
-member_level_id
-member_level_id
-1522386868
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-D2E73DF5-DB6A-4534-A49E-6A17AABACEDC
-username
-username
-1522217626
-zhenghong
-1562382486
-zhenghong
-用户名
-varchar(64)
-64
-
-
-23B12CF6-6DEB-4F8C-9F86-11B358D69362
-password
-password
-1522217626
-zhenghong
-1562382486
-zhenghong
-密码
-varchar(64)
-64
-
-
-5B493103-C9F4-4896-97CC-FCFA538E9E46
-nickname
-nickname
-1522217712
-zhenghong
-1562382486
-zhenghong
-昵称
-varchar(64)
-64
-
-
-86E4C90D-3001-42A0-B422-CA2316059F34
-phone
-phone
-1522303316
-zhenghong
-1562382486
-zhenghong
-手机号码
-varchar(64)
-64
-
-
-19D51C4F-3E3E-4CC7-8064-7144E3A08549
-status
-status
-1522386896
-zhenghong
-1562382486
-zhenghong
-帐号启用状态:0->禁用;1->启用
-int(1)
-1
-
-
-CB420E85-9280-48D8-81A9-A3A512BA296E
-create_time
-create_time
-1522386911
-zhenghong
-1562382486
-zhenghong
-注册时间
-datetime
-
-
-43EC4B8D-C7E5-40F5-89C7-BD9717F64D3A
-icon
-icon
-1522387000
-zhenghong
-1562382486
-zhenghong
-头像
-varchar(500)
-500
-
-
-2E006E4C-CA4C-4C9F-BEDB-4480976445E8
-gender
-gender
-1522387014
-zhenghong
-1562382486
-zhenghong
-性别:0->未知;1->男;2->女
-int(1)
-1
-
-
-A519EFA3-C9CF-4133-BEAB-F652904DE37B
-birthday
-birthday
-1522387055
-zhenghong
-1562382486
-zhenghong
-生日
-date
-
-
-753E5E2F-456C-4FE3-A14E-D4437B623D59
-city
-city
-1522387097
-zhenghong
-1562382486
-zhenghong
-所做城市
-varchar(64)
-64
-
-
-356C3E98-AFEB-431B-8644-3B026A6F9119
-job
-job
-1522387127
-zhenghong
-1562382486
-zhenghong
-职业
-varchar(100)
-100
-
-
-4ACAE49D-5EC5-4A34-B2C1-D3EF488CC8F0
-personalized_signature
-personalized_signature
-1522387164
-zhenghong
-1562382486
-zhenghong
-个性签名
-varchar(200)
-200
-
-
-AD82B0E0-9CD2-4C5B-A5BC-27A744255CA4
-source_type
-source_type
-1522387221
-zhenghong
-1562382486
-zhenghong
-用户来源
-int(1)
-1
-
-
-4E176EC7-186F-4DDF-BB12-B70B94250D60
-integration
-integration
-1522388283
-zhenghong
-1562382486
-zhenghong
-积分
-int
-
-
-284DF68E-59DE-487C-84B0-AD9FC8BB75FF
-growth
-growth
-1522388293
-zhenghong
-1562382486
-zhenghong
-成长值
-int
-
-
-57DEA7F2-EB83-4B07-9240-FD92910155DC
-luckey_count
-luckey_count
-1522389179
-zhenghong
-1562382486
-zhenghong
-剩余抽奖次数
-int
-
-
-4DA4D6BD-F5B4-42AB-8779-1B7691ECF117
-history_integration
-history_integration
-1522396288
-zhenghong
-1562382486
-zhenghong
-历史积分数量
-int
-
-
-
-
-DCDB80E7-5E7E-4489-A70E-AD720AE12F3A
-Key_1
-Key_1
-1522217488
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-0F2911F9-4243-44D6-A6E0-C4C0388C62E2
-ums_admin
-ums_admin
-1522303730
-zhenghong
-1562382486
-zhenghong
-后台用户表
-
-
-
-0BE4FEDB-3AD9-48DA-A624-FDFB09C2D92F
-id
-id
-1522303731
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-88716A77-1637-4DB6-8E78-D79683637CE8
-username
-username
-1522303731
-zhenghong
-1562382486
-zhenghong
-用户名
-varchar(64)
-64
-
-
-5BAB97FA-4F02-4629-95B4-F7FA12B30C47
-password
-password
-1522303731
-zhenghong
-1562382486
-zhenghong
-密码
-varchar(64)
-64
-
-
-FBB8BCDA-7FB6-462F-A8DA-D0E5816E4864
-icon
-icon
-1522303731
-zhenghong
-1562382486
-zhenghong
-头像
-varchar(500)
-500
-
-
-6C622C52-221D-4860-8D28-357E6214B652
-email
-email
-1522303731
-zhenghong
-1562382486
-zhenghong
-邮箱
-varchar(100)
-100
-
-
-52C5C0BA-58AA-4187-9688-F7517F69D617
-nick_name
-nick_name
-1538199900
-zhenghong
-1562382486
-zhenghong
-昵称
-varchar(200)
-200
-
-
-6C4893AA-22D6-474F-A854-AF1A1FF2C4CC
-note
-note
-1538199923
-zhenghong
-1562382486
-zhenghong
-备注信息
-varchar(500)
-500
-
-
-DAF866B4-F233-470C-9BD1-D41E341EFE63
-create_time
-create_time
-1538200009
-zhenghong
-1562382486
-zhenghong
-创建时间
-datetime
-
-
-375192B5-687A-4D02-AEE1-37EC2ECCB37C
-login_time
-login_time
-1538200009
-zhenghong
-1562382486
-zhenghong
-最后登录时间
-datetime
-
-
-2570C013-4F84-4321-B33F-DDE96C46DFD1
-status
-status
-1538200789
-zhenghong
-1562382486
-zhenghong
-帐号启用状态:0->禁用;1->启用
-1
-int(1)
-1
-
-
-
-
-11DD9DB0-7CB1-469D-9969-001AC0CB7AE7
-Key_1
-Key_1
-1522303731
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-170CAFAB-A9A1-4703-8242-2AD3C0EDA919
-ums_admin_login_log
-ums_admin_login_log
-1522303928
-zhenghong
-1562382486
-zhenghong
-后台用户登录日志表
-
-
-
-D671B7FC-D773-4F42-978A-4C96E853F8D7
-id
-id
-1522303929
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-0AE045CF-4CD9-4DEF-989C-5A552F61C78F
-admin_id
-admin_id
-1522304178
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-2541982B-7DCC-44F5-BEB4-D425262F4505
-create_time
-create_time
-1522303968
-zhenghong
-1562382486
-zhenghong
-datetime
-
-
-DA958EE2-AAEC-4A6F-8C87-ACF9BE9822EA
-ip
-ip
-1522303968
-zhenghong
-1562382486
-zhenghong
-varchar(64)
-64
-
-
-505E462F-B9EF-4D94-B7BE-5E85C13699BC
-address
-address
-1522303968
-zhenghong
-1562382486
-zhenghong
-varchar(100)
-100
-
-
-50D96715-8377-4C3B-9646-D838AD857EA5
-user_agent
-user_agent
-1522303968
-zhenghong
-1562382486
-zhenghong
-浏览器登录类型
-varchar(100)
-100
-
-
-
-
-28C11252-F89B-4DB9-A8BA-CF4316B2ABF0
-Key_1
-Key_1
-1522303929
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D4887C0A-3ABD-4619-B89B-B9BC85CBCB78
-ums_member_level
-ums_member_level
-1522379808
-zhenghong
-1562382486
-zhenghong
-会员等级表
-
-
-
-07FB48C6-6547-4601-94CD-CD7DC525A3DF
-id
-id
-1522379810
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-D494250C-5CED-4FA3-881B-7FBDD84AB4ED
-name
-name
-1522379831
-zhenghong
-1562382486
-zhenghong
-varchar(100)
-100
-
-
-662E5829-9F24-4B59-B04B-4B4F96D6E028
-growth_point
-growth_point
-1522379831
-zhenghong
-1562382486
-zhenghong
-int
-
-
-5EF880C1-D080-410E-B60A-C762855CBC70
-default_status
-default_status
-1522379896
-zhenghong
-1562382486
-zhenghong
-是否为默认等级:0->不是;1->是
-int(1)
-1
-
-
-7724E73E-6EB3-4F03-9E5B-1ECCF87DCA2B
-free_freight_point
-free_freight_point
-1522379964
-zhenghong
-1562382486
-zhenghong
-免运费标准
-decimal(10,2)
-10
-2
-
-
-D0ED7A64-72D4-4716-8D91-1AF59E420B51
-comment_growth_point
-comment_growth_point
-1522380184
-zhenghong
-1562382486
-zhenghong
-每次评价获取的成长值
-int
-
-
-4EA98624-9EAE-40FA-B1D9-A18885921DEE
-priviledge_free_freight
-priviledge_free_freight
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有免邮特权
-int(1)
-1
-
-
-C91CD5C2-B693-46BF-ABA6-0ABF15979F1D
-priviledge_sign_in
-priviledge_sign_in
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有签到特权
-int(1)
-1
-
-
-B9F2E7CE-1135-4117-A4F0-2D95F54F8428
-priviledge_comment
-priviledge_comment
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有评论获奖励特权
-int(1)
-1
-
-
-C4856468-F1CB-4159-BBA9-E48EF234CC78
-priviledge_promotion
-priviledge_promotion
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有专享活动特权
-int(1)
-1
-
-
-F5D6C311-6190-4700-91D8-9A7E48BA9E78
-priviledge_member_price
-priviledge_member_price
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有会员价格特权
-int(1)
-1
-
-
-5E81874C-81D1-4573-B8D3-1BBB54804BCC
-priviledge_birthday
-priviledge_birthday
-1522380199
-zhenghong
-1562382486
-zhenghong
-是否有生日特权
-int(1)
-1
-
-
-7D6AB103-4AF6-4355-9089-C17E3187429B
-note
-note
-1522386815
-zhenghong
-1562382486
-zhenghong
-varchar(200)
-200
-
-
-
-
-D482D9DC-C31F-4B66-B2E2-1B9E605D1985
-Key_1
-Key_1
-1522379810
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A4C9F9AD-DC88-4242-B89C-0067713977D1
-ums_member_product_category_relation
-ums_member_product_category_relation
-1522387387
-zhenghong
-1562382486
-zhenghong
-会员与产品分类关系表(用户喜欢的分类)
-
-
-
-347A7073-CC04-4445-B786-586FF90EBF48
-id
-id
-1522387388
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-70558370-8315-4616-81A6-2DD25BB9921D
-member_id
-member_id
-1522387461
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-FC4EB91B-917B-42E9-BD10-A89CF9A6EDF4
-product_category_id
-product_category_id
-1522387526
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-
-
-2DF3A95E-569F-4C18-A6B6-0EC199D5988A
-Key_1
-Key_1
-1522387388
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-B5F6877B-A857-4DAD-B3CB-C62F8E2162E6
-ums_member_statistics_info
-ums_member_statistics_info
-1522387906
-zhenghong
-1562382486
-zhenghong
-会员统计信息
-
-
-
-A7F85473-683C-43AF-A05B-652CAB2E7012
-id
-id
-1522387936
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-4CD43180-AAF6-4721-AEF8-E4E46DECC449
-member_id
-member_id
-1522389232
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-5F23743B-AB44-4746-8BFC-7DCBBAA06EA7
-consume_amount
-consume_amount
-1522387970
-zhenghong
-1562382486
-zhenghong
-累计消费金额
-decimal(10,2)
-10
-2
-
-
-FA480055-B9B1-4F35-89EE-5B59D4F27C6D
-order_count
-order_count
-1522388177
-zhenghong
-1562382486
-zhenghong
-订单数量
-int
-
-
-41A9AF64-F7E4-4157-9696-B1B326531F52
-coupon_count
-coupon_count
-1522388366
-zhenghong
-1562382486
-zhenghong
-优惠券数量
-int
-
-
-B405CB3F-AABA-42FB-B993-ED2E905CEB83
-comment_count
-comment_count
-1522388395
-zhenghong
-1562382486
-zhenghong
-评价数
-int
-
-
-4518C983-F148-4B54-B8CE-8D48A7687B2D
-return_order_count
-return_order_count
-1522388791
-zhenghong
-1562382486
-zhenghong
-退货数量
-int
-
-
-9F883E8A-E664-4B06-B7E6-FBC276B92465
-login_count
-login_count
-1522388804
-zhenghong
-1562382486
-zhenghong
-登录次数
-int
-
-
-E7B8ED9A-DD62-478D-A714-74E1431FF624
-attend_count
-attend_count
-1522388885
-zhenghong
-1562382486
-zhenghong
-关注数量
-int
-
-
-FCFBA510-93D4-4F10-9C27-A5326AE77F59
-fans_count
-fans_count
-1522388904
-zhenghong
-1562382486
-zhenghong
-粉丝数量
-int
-
-
-5D8EA6F1-5EB6-4E3A-A1E6-298B94D6AA5C
-collect_product_count
-collect_product_count
-1522388944
-zhenghong
-1562382486
-zhenghong
-int
-
-
-8108D912-2B5B-48A5-AE66-569DCD6B56C1
-collect_subject_count
-collect_subject_count
-1522388944
-zhenghong
-1562382486
-zhenghong
-int
-
-
-A552BF73-4A01-4516-91BA-096B5120A842
-collect_topic_count
-collect_topic_count
-1522388944
-zhenghong
-1562382486
-zhenghong
-int
-
-
-2CFA9F03-3FDE-4D90-B8E2-133660061874
-collect_comment_count
-collect_comment_count
-1522388944
-zhenghong
-1562382486
-zhenghong
-int
-
-
-DAF153F2-9DE8-4491-B097-DBD88AB522B4
-invite_friend_count
-invite_friend_count
-1522388944
-zhenghong
-1562382486
-zhenghong
-int
-
-
-4690BA40-7EF6-44AC-AEB6-5AA0EC0C2F21
-recent_order_time
-recent_order_time
-1522390747
-zhenghong
-1562382486
-zhenghong
-最后一次下订单时间
-datetime
-
-
-
-
-792D18CC-9F6D-4A4E-9502-DE2B1D1AFE32
-Key_1
-Key_1
-1522387936
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-29BD46AF-154D-4A1F-BA3E-23BEC96F5EAE
-ums_member_receive_address
-ums_member_receive_address
-1522390106
-zhenghong
-1562382486
-zhenghong
-会员收货地址表
-
-
-
-560D1D81-C862-46C5-87F5-CBEED060A01A
-id
-id
-1522390108
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-5AE6D971-9DC7-4358-8828-760932C453C3
-member_id
-member_id
-1522390434
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-A35CB2C7-8F79-4631-9143-13CF6BC34B24
-name
-name
-1522390108
-zhenghong
-1562382486
-zhenghong
-收货人名称
-varchar(100)
-100
-
-
-57DD691C-97B6-4204-8B81-6DF177DCCD38
-phone_number
-phone_number
-1522390108
-zhenghong
-1562382486
-zhenghong
-varchar(64)
-64
-
-
-C86911E1-482D-4424-B762-21216AC98BCE
-default_status
-default_status
-1522390286
-zhenghong
-1562382486
-zhenghong
-是否为默认
-int(1)
-1
-
-
-BC23BB01-0553-4FCE-96C5-6FBA7C0766F3
-post_code
-post_code
-1522390221
-zhenghong
-1562382486
-zhenghong
-邮政编码
-varchar(100)
-100
-
-
-18B9467A-48CE-4EFE-B2EF-48900F0C18F6
-province
-province
-1535436971
-zhenghong
-1562382486
-zhenghong
-省份/直辖市
-varchar(100)
-100
-
-
-809CF26E-3D9D-447C-9C59-EDA823BDD326
-city
-city
-1535436971
-zhenghong
-1562382486
-zhenghong
-城市
-varchar(100)
-100
-
-
-B9063B17-E455-489E-AA2E-7A828C373720
-region
-region
-1535437026
-zhenghong
-1562382486
-zhenghong
-区
-varchar(100)
-100
-
-
-171045D6-86DB-49BC-B0DD-959ECE64D53E
-detail_address
-detail_address
-1522390108
-zhenghong
-1562382486
-zhenghong
-详细地址(街道)
-varchar(128)
-128
-
-
-
-
-F2ABF4A4-73FF-4C73-B7D6-1BC75B165EE8
-Key_1
-Key_1
-1522390409
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-09873879-7B9A-4184-8F02-956EAC9D9FEA
-ums_member_login_log
-ums_member_login_log
-1522390511
-zhenghong
-1562382486
-zhenghong
-会员登录记录
-
-
-
-0ED0C1CD-2C1B-4420-B7E8-7D5428D467DB
-id
-id
-1522390513
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-A8719C72-D3EC-4537-985A-309E6C89B753
-member_id
-member_id
-1522390644
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-3E78FBBC-2B7E-4F93-A3CD-A4A37C757645
-create_time
-create_time
-1522390531
-zhenghong
-1562382486
-zhenghong
-datetime
-
-
-2ACEA0AF-DCA9-43CC-BE3F-8DC9389D7273
-ip
-ip
-1522390531
-zhenghong
-1562382486
-zhenghong
-varchar(64)
-64
-
-
-2034048E-45CD-40A3-BBDE-4DE5548D0E29
-city
-city
-1522390531
-zhenghong
-1562382486
-zhenghong
-varchar(64)
-64
-
-
-C4FD0108-48C8-43A6-9DB5-2A4625C9DF95
-login_type
-login_type
-1522390531
-zhenghong
-1562382486
-zhenghong
-登录类型:0->PC;1->android;2->ios;3->小程序
-int(1)
-1
-
-
-F4B4C6F7-54F1-4998-9CDA-58141C6B94CC
-province
-province
-1522747786
-zhenghong
-1562382486
-zhenghong
-varchar(64)
-64
-
-
-
-
-34C05080-93F6-461E-8A3E-1B4F8C4E5E06
-Key_1
-Key_1
-1522390513
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-12540810-5CB2-4C70-B93F-6943458C40CF
-ums_member_tag
-ums_member_tag
-1522390830
-zhenghong
-1562382486
-zhenghong
-用户标签表
-
-
-
-F548ED6D-4855-41E2-8FDA-D48C8AF48276
-id
-id
-1522390831
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-3206EDB9-1023-482E-939D-222E339DB150
-name
-name
-1522390831
-zhenghong
-1562382486
-zhenghong
-varchar(100)
-100
-
-
-F0DD9721-8701-416F-B694-555C29F3961F
-finish_order_count
-finish_order_count
-1522390854
-zhenghong
-1562382486
-zhenghong
-自动打标签完成订单数量
-int
-
-
-459C980D-6D76-4165-A0EC-0AED4EB45E1E
-finish_order_amount
-finish_order_amount
-1522390854
-zhenghong
-1562382486
-zhenghong
-自动打标签完成订单金额
-decimal(10,2)
-10
-2
-
-
-
-
-AF57F589-4E68-4637-A275-75507AD662B7
-Key_1
-Key_1
-1522390831
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-EE1E4097-AFA1-4C32-BE19-287286F3D90B
-ums_member_member_tag_relation
-ums_member_member_tag_relation
-1522391304
-zhenghong
-1562382486
-zhenghong
-用户和标签关系表
-
-
-
-AC2CFD0C-F3E0-43DB-B704-FA80199B7311
-id
-id
-1522391305
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-9EF90851-3443-4184-9DBC-6A6D6AA834E9
-member_id
-member_id
-1522391366
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-9C12A49E-181E-44F6-92C2-58B62EE4A35A
-tag_id
-tag_id
-1522391379
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-
-
-A9CDE250-6D8F-41FB-93DC-1336E38945BD
-Key_1
-Key_1
-1522391305
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A72F52CE-4A19-41BB-AECF-14617E474560
-ums_integration_change_history
-ums_integration_change_history
-1522396385
-zhenghong
-1562382486
-zhenghong
-积分变化历史记录表
-
-
-
-BD3D1A86-ED04-41C8-BB25-1FAC48D1F251
-id
-id
-1522396386
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-903471EB-181B-4390-9C93-4E983FAA94C9
-member_id
-member_id
-1522396648
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-EB2B6E42-071E-4E04-819D-66E8F367C0AD
-create_time
-create_time
-1522396491
-zhenghong
-1562382486
-zhenghong
-datetime
-
-
-4C96DB64-988F-4066-92AC-D66534D62351
-change_type
-change_type
-1522396491
-zhenghong
-1562382486
-zhenghong
-改变类型:0->增加;1->减少
-int(1)
-1
-
-
-AC8F19CE-2D9B-47CD-97F4-7CE0809EA5E8
-change_count
-change_count
-1522396491
-zhenghong
-1562382486
-zhenghong
-积分改变数量
-int
-
-
-E075244E-4477-4EEB-9E69-96CCCB3D8DC7
-operate_man
-operate_man
-1522396534
-zhenghong
-1562382486
-zhenghong
-操作人员
-varchar(100)
-100
-
-
-F4E92F4B-1F13-4CB1-96FC-858F35C4FA9C
-operate_note
-operate_note
-1522396606
-zhenghong
-1562382486
-zhenghong
-操作备注
-varchar(200)
-200
-
-
-5DBF699B-A4D4-4EB1-BBDB-54FB6972F19D
-source_type
-source_type
-1522396738
-zhenghong
-1562382486
-zhenghong
-积分来源:0->购物;1->管理员修改
-int(1)
-1
-
-
-
-
-C587D3FE-BA18-4EA8-898E-81CBC0AADE57
-Key_1
-Key_1
-1522396386
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D8E82848-6936-41DC-A2FA-2B84381A4599
-ums_growth_change_history
-ums_growth_change_history
-1522396385
-zhenghong
-1562382486
-zhenghong
-成长值变化历史记录表
-
-
-
-DC9F9B75-13DA-4A9B-AF88-868D4B0E4FEE
-id
-id
-1522396386
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-35CDA26C-BAAC-4AA1-A895-D6E3BF43D89E
-member_id
-member_id
-1522396864
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-64DD0F10-A252-45B9-8339-D910040D35DD
-create_time
-create_time
-1522396491
-zhenghong
-1562382486
-zhenghong
-datetime
-
-
-C8F3473D-47A0-46EB-931D-2A66D81D3E64
-change_type
-change_type
-1522396491
-zhenghong
-1562382486
-zhenghong
-改变类型:0->增加;1->减少
-int(1)
-1
-
-
-51A7BC09-5943-4FBA-AA78-55C8BEC449A7
-change_count
-change_count
-1522396491
-zhenghong
-1562382486
-zhenghong
-积分改变数量
-int
-
-
-CF7E0740-2DBC-48ED-9E73-9C55966AF639
-operate_man
-operate_man
-1522396534
-zhenghong
-1562382486
-zhenghong
-操作人员
-varchar(100)
-100
-
-
-A98A65E7-BA15-4C60-AFDB-9C2860DEDE23
-operate_note
-operate_note
-1522396606
-zhenghong
-1562382486
-zhenghong
-操作备注
-varchar(200)
-200
-
-
-C8580523-CB92-4A0D-B521-6BB32C555FBA
-source_type
-source_type
-1522396738
-zhenghong
-1562382486
-zhenghong
-积分来源:0->购物;1->管理员修改
-int(1)
-1
-
-
-
-
-10F2BB88-77F6-46FD-8ED3-831FE2117D62
-Key_1
-Key_1
-1522396386
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-5B776507-8123-4F1F-BEB9-7A4ADBFB7543
-ums_member_task
-ums_member_task
-1522397182
-zhenghong
-1562382486
-zhenghong
-会员任务表
-
-
-
-3F6F3A9B-115A-4756-A588-74ED37683842
-id
-id
-1522397183
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-4563E43A-30F5-4E6E-A329-FC79BBB9EB6E
-name
-name
-1522397207
-zhenghong
-1562382486
-zhenghong
-varchar(100)
-100
-
-
-659A4BED-6878-41DC-83C3-A8E4ED1EEE27
-growth
-growth
-1522397207
-zhenghong
-1562382486
-zhenghong
-赠送成长值
-int
-
-
-0CF004B0-7A41-43E9-AFE6-620973321AA6
-intergration
-intergration
-1522397207
-zhenghong
-1562382486
-zhenghong
-赠送积分
-int
-
-
-E6022CB6-ACA1-4AF8-A24D-CBC4DB1C000F
-type
-type
-1522397207
-zhenghong
-1562382486
-zhenghong
-任务类型:0->新手任务;1->日常任务
-int(1)
-1
-
-
-
-
-7083915C-A482-44B1-BB6F-BD52F7A301B3
-Key_1
-Key_1
-1522397183
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-2F369E78-C148-41BB-8703-A8BF078EF915
-ums_member_rule_setting
-ums_member_rule_setting
-1522397511
-zhenghong
-1562382486
-zhenghong
-会员积分成长规则表
-
-
-
-496329EC-6544-403D-97D8-7D4DACA83B25
-id
-id
-1522397511
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-70749BB2-4281-453C-BEF5-B7B602855347
-continue_sign_day
-continue_sign_day
-1522397551
-zhenghong
-1562382486
-zhenghong
-连续签到天数
-int
-
-
-EF5CB0ED-A3D7-4E40-BE73-CCD5B1B86CCE
-continue_sign_point
-continue_sign_point
-1522397620
-zhenghong
-1562382486
-zhenghong
-连续签到赠送数量
-int
-
-
-CACC49C0-62BC-45ED-9E65-86B549DCF845
-consume_per_point
-consume_per_point
-1522397671
-zhenghong
-1562382486
-zhenghong
-每消费多少元获取1个点
-decimal(10,2)
-10
-2
-
-
-D8753A80-EA62-4D18-B2AD-6032F714D6CD
-low_order_amount
-low_order_amount
-1522397671
-zhenghong
-1562382486
-zhenghong
-最低获取点数的订单金额
-decimal(10,2)
-10
-2
-
-
-FFEEDEA4-7E40-4295-B2AE-DBA340659CBF
-max_point_per_order
-max_point_per_order
-1522397799
-zhenghong
-1562382486
-zhenghong
-每笔订单最高获取点数
-int
-
-
-332E6867-AC69-4D72-AD9C-A38742757553
-type
-type
-1522397799
-zhenghong
-1562382486
-zhenghong
-类型:0->积分规则;1->成长值规则
-int(1)
-1
-
-
-
-
-C9394EBA-2696-406A-B128-8FA1C7BA0FF1
-Key_1
-Key_1
-1522397511
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-160ACF2F-749F-4755-A390-004D59826C04
-ums_integration_consume_setting
-ums_integration_consume_setting
-1522398032
-zhenghong
-1562382486
-zhenghong
-积分消费设置
-
-
-
-B05D80A7-309E-49DA-8183-A5F7588B3449
-id
-id
-1522398033
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-16A95195-1658-4C0C-B334-82DE371A32F3
-deduction_per_amount
-deduction_per_amount
-1522398071
-zhenghong
-1562382486
-zhenghong
-每一元需要抵扣的积分数量
-int
-
-
-0A7510A9-101E-46A9-9E83-C0E1A0C2B6A4
-max_percent_per_order
-max_percent_per_order
-1522398150
-zhenghong
-1562382486
-zhenghong
-每笔订单最高抵用百分比
-int
-
-
-968AD4EB-F331-4147-A08E-8A135167BF0A
-use_unit
-use_unit
-1522398194
-zhenghong
-1562382486
-zhenghong
-每次使用积分最小单位100
-int
-
-
-01842BC7-79CA-4046-B0C9-3FA260C3DBFA
-coupon_status
-coupon_status
-1522398253
-zhenghong
-1562382486
-zhenghong
-是否可以和优惠券同用;0->不可以;1->可以
-int(1)
-1
-
-
-
-
-D60CD662-E137-486B-A7E9-025BDF4BC744
-Key_1
-Key_1
-1522398033
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-8CC5C00B-1841-420B-BC00-520E3C71947F
-ums_role
-ums_role
-1538200619
-zhenghong
-1562382486
-zhenghong
-后台用户角色表
-
-
-
-1F214AD8-72E3-4E97-A5DC-81B3D9645E53
-id
-id
-1538201005
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-6FCCF048-5245-47D7-880D-A9C4A3D81B8E
-name
-name
-1538201019
-zhenghong
-1562382486
-zhenghong
-名称
-varchar(100)
-100
-
-
-B0F71952-AD0E-4B22-A837-2F81EF33A004
-description
-description
-1538201019
-zhenghong
-1562382486
-zhenghong
-描述
-varchar(500)
-500
-
-
-A4561CEF-09F4-4F13-B80C-1755ED1D0105
-admin_count
-admin_count
-1538201117
-zhenghong
-1562382486
-zhenghong
-后台用户数量
-int
-
-
-ABB19FDA-441A-4D4B-9321-EDBCF74B90BC
-create_time
-create_time
-1538201155
-zhenghong
-1562382486
-zhenghong
-创建时间
-datetime
-
-
-78BFADB8-111C-46DA-BBE9-692DF94AD73F
-status
-status
-1538201193
-zhenghong
-1562382486
-zhenghong
-启用状态:0->禁用;1->启用
-1
-int(1)
-1
-
-
-69CF0C9E-829E-49D6-9D75-83875648D5FB
-sort
-sort
-1538201211
-zhenghong
-1562382486
-zhenghong
-0
-int
-
-
-
-
-8EC68A13-D739-47AF-A3DD-B81FBAEED1E3
-Key_1
-Key_1
-1538201019
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E80F0501-7FF5-4DF4-B90F-BEEF4C3CD30D
-ums_permission
-ums_permission
-1538201545
-zhenghong
-1562382486
-zhenghong
-后台用户权限表
-
-
-
-1BBBF216-5981-4AFF-87D8-F479351B9CB3
-id
-id
-1538201548
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-{F4F16ECD-F2F1-4006-AF6F-638D5C65F35E},MYSQL50,102={9480E6AA-83DD-4AA7-9C91-E48F709C29D9},CharSet,0=
-{B314652C-DD43-4F81-8524-6F97A1BAACBA},Collate,0=
-
-
-
-
-C3DD12F3-1D8F-4FAE-9802-76CC7E077FF8
-pid
-pid
-1538202362
-zhenghong
-1562382486
-zhenghong
-父级权限id
-bigint
-
-
-22EC35C3-48D9-4970-AD88-AFB26DB4D6B6
-name
-name
-1538201932
-zhenghong
-1562382486
-zhenghong
-名称
-varchar(100)
-100
-
-
-4B677732-18CA-4680-AF89-4B2E3255E258
-value
-value
-1538201932
-zhenghong
-1562382486
-zhenghong
-权限值
-varchar(200)
-200
-
-
-FC1E2670-2A89-4CED-896D-7C3A7251C861
-icon
-icon
-1538201932
-zhenghong
-1562382486
-zhenghong
-图标
-varchar(500)
-500
-
-
-E2704E2D-8FDC-49F3-BBF2-957FC095AD6D
-type
-type
-1538202064
-zhenghong
-1562382486
-zhenghong
-权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)
-int(1)
-1
-
-
-47FE9D0A-328B-4B18-A3AC-1590B14CC688
-uri
-uri
-1538202208
-zhenghong
-1562382486
-zhenghong
-前端资源路径
-varchar(200)
-200
-
-
-862E1803-FB48-4481-95C8-1772E2CA5C42
-status
-status
-1538202092
-zhenghong
-1562382486
-zhenghong
-启用状态;0->禁用;1->启用
-int(1)
-1
-
-
-C526DD1C-112D-4EBD-9A0D-AC7870CF938B
-create_time
-create_time
-1538202257
-zhenghong
-1562382486
-zhenghong
-创建时间
-datetime
-
-
-E9B10EC9-6880-441D-85F2-A2C9E55F9A62
-sort
-sort
-1538202257
-zhenghong
-1562382486
-zhenghong
-排序
-int
-
-
-
-
-237B43FC-8E7E-4F09-B1D8-6A0B2DE4BCA2
-Key_1
-Key_1
-1538201548
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-6C41C4DC-50C3-4028-B1DD-30ABD900BACD
-ums_admin_role_relation
-ums_admin_role_relation
-1538202419
-zhenghong
-1562382486
-zhenghong
-后台用户和角色关系表
-
-
-
-4AEF2852-5DD6-49F1-83F6-1BF6F0B6F87E
-id
-id
-1538202420
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-BD68E4A6-B827-4757-BA14-D7357FC214E4
-admin_id
-admin_id
-1538202471
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-BB037113-41F9-4A4B-A55C-B923C7A1017F
-role_id
-role_id
-1538202492
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-
-
-29BFC683-1D81-48A5-9959-B2A1B37D2D8D
-Key_1
-Key_1
-1538202420
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-DC5DD2FB-AA8F-4A04-8FEA-D6DD03E85593
-ums_role_permission_relation
-ums_role_permission_relation
-1538202537
-zhenghong
-1562382486
-zhenghong
-后台用户角色和权限关系表
-
-
-
-7B891766-CB7D-4557-8CEE-07FB0A0E238F
-id
-id
-1538202538
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-9E8951DB-2179-4C29-A18B-307F60547AF5
-role_id
-role_id
-1538202586
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-26F0D498-A318-4FCF-916C-2C3CB9CF8948
-permission_id
-permission_id
-1538202588
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-
-
-52491D5D-2A3C-47DC-8526-B32A39FA74A1
-Key_1
-Key_1
-1538202538
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-CC002214-56A7-4758-987B-96B4E93EA3F6
-ums_admin_permission_relation
-ums_admin_permission_relation
-1538202617
-zhenghong
-1562382486
-zhenghong
-后台用户和权限关系表(除角色中定义的权限以外的加减权限)
-
-
-
-B04FBBE3-6EF0-428B-80CD-970CB4853E1A
-id
-id
-1538202860
-zhenghong
-1562382486
-zhenghong
-bigint
-1
-1
-
-
-0A33A1E8-C75D-45FF-B266-59B45A61255E
-admin_id
-admin_id
-1538202927
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-1A2D7C2B-5966-403A-A9AC-408E1BC1A7F8
-permission_id
-permission_id
-1538202929
-zhenghong
-1562382486
-zhenghong
-bigint
-
-
-F4377B90-FC4D-4D8F-82F0-1046999515F0
-type
-type
-1538203070
-zhenghong
-1562382486
-zhenghong
-int(1)
-1
-
-
-
-
-E25CBEFC-FC32-48DE-B34C-77E14FDA930F
-Key_1
-Key_1
-1538202860
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-5EF2C88D-3B9B-4349-AF45-A4645115EB42
-Reference_46
-Reference_46
-1522304178
-zhenghong
-1522304178
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-11F6A499-DC48-490F-8A7F-E08339D1A68E
-1522304178
-zhenghong
-1522304178
-zhenghong
-
-
-
-
-
-
-
-
-
-
-DCA0D0C2-36F4-456C-AF80-16BBE67C66D9
-Reference_47
-Reference_47
-1522386868
-zhenghong
-1522386868
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-1FEF4E49-6022-4D29-9E36-2F9B33393979
-1522386868
-zhenghong
-1522386868
-zhenghong
-
-
-
-
-
-
-
-
-
-
-E51FA904-7330-4B20-983D-360FAC015519
-Reference_48
-Reference_48
-1522387461
-zhenghong
-1522387461
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-05A2684C-8822-4777-89CB-D10E7CC9B326
-1522387461
-zhenghong
-1522387461
-zhenghong
-
-
-
-
-
-
-
-
-
-
-BB627589-799D-4450-B660-9567C8E4E170
-Reference_50
-Reference_50
-1522389232
-zhenghong
-1522389232
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-C0F162B5-948E-422C-A3D2-49332E83A284
-1522389232
-zhenghong
-1522389232
-zhenghong
-
-
-
-
-
-
-
-
-
-
-AC8BDDD3-912B-4CFF-A927-0ECE1A764640
-Reference_51
-Reference_51
-1522390434
-zhenghong
-1522390434
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-BD741524-8DB4-42EF-831F-9E8BB2F09DDC
-1522390434
-zhenghong
-1522390434
-zhenghong
-
-
-
-
-
-
-
-
-
-
-86125066-0A52-40D3-ADBC-D983A4FBE2F4
-Reference_52
-Reference_52
-1522390644
-zhenghong
-1522390644
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-9FDA14DF-3A98-492C-97FA-4778B7A27443
-1522390644
-zhenghong
-1522390644
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D2E4834C-137D-42E6-8F6B-86445D0B28FB
-Reference_53
-Reference_53
-1522391366
-zhenghong
-1522391366
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-29B57A03-A33E-4C70-8E21-BF873D1EB970
-1522391366
-zhenghong
-1522391366
-zhenghong
-
-
-
-
-
-
-
-
-
-
-1E3B87CB-2333-476E-AC25-675B445FEF9C
-Reference_54
-Reference_54
-1522391379
-zhenghong
-1562382486
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-FF484B9A-72D7-4214-8E3B-6AE2133DEA21
-1522391379
-zhenghong
-1562382486
-zhenghong
-
-
-
-
-
-
-
-
-
-
-A20965D8-E019-4885-85CE-8423D2B63F6E
-Reference_55
-Reference_55
-1522396648
-zhenghong
-1522396648
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-ECFF82A7-0704-4AA7-92C2-028C46DADCEA
-1522396648
-zhenghong
-1522396648
-zhenghong
-
-
-
-
-
-
-
-
-
-
-517FF0F9-B03A-485C-B3BD-67B6AA722F41
-Reference_56
-Reference_56
-1522396864
-zhenghong
-1522396864
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-A2BBBA18-2D70-4871-90F0-4FD1D438E46F
-1522396864
-zhenghong
-1522396864
-zhenghong
-
-
-
-
-
-
-
-
-
-
-772E9D9B-DEB1-4CE1-BD0E-AAF59D1A6721
-Reference_68
-Reference_68
-1538202362
-zhenghong
-1538202362
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-4D35AE6A-5F25-4FBD-A306-74594C3A16C2
-1538202362
-zhenghong
-1538202362
-zhenghong
-
-
-
-
-
-
-
-
-
-
-2000A9C4-8D16-451A-8066-448C9E785970
-Reference_69
-Reference_69
-1538202471
-zhenghong
-1538202471
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-F72A295B-7809-4913-959B-D94ABFEDED49
-1538202471
-zhenghong
-1538202471
-zhenghong
-
-
-
-
-
-
-
-
-
-
-4A7A0BCE-3CCF-4609-882F-A0F0494AB271
-Reference_70
-Reference_70
-1538202492
-zhenghong
-1538202492
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-15217561-EF59-4787-A0B7-7E2C91B82DB0
-1538202492
-zhenghong
-1538202492
-zhenghong
-
-
-
-
-
-
-
-
-
-
-3032B07D-A458-4032-A7ED-9ED848E19B95
-Reference_71
-Reference_71
-1538202586
-zhenghong
-1538202586
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-0DB614A1-7D11-4CED-A674-C7CDB19B0E07
-1538202586
-zhenghong
-1538202586
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D0863990-40B1-4F75-9656-3F5D9F667162
-Reference_72
-Reference_72
-1538202588
-zhenghong
-1538202588
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-EAFA9689-0F63-4988-A927-2AAFF29989A5
-1538202588
-zhenghong
-1538202588
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D5795CA5-2C51-4D56-A16B-DEB9919BD3A0
-Reference_73
-Reference_73
-1538202927
-zhenghong
-1538202927
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-80BF4511-34A7-462B-BEE0-53AC7A1CF1F1
-1538202927
-zhenghong
-1538202927
-zhenghong
-
-
-
-
-
-
-
-
-
-
-D9A57053-8524-4E66-AE91-F9FF82E6A151
-Reference_74
-Reference_74
-1538202929
-zhenghong
-1538202929
-zhenghong
-0..*
-1
-1
-
-
-
-
-
-
-
-
-
-
-
-AE0DFA41-C617-4D3C-84B4-6813E3400044
-1538202929
-zhenghong
-1538202929
-zhenghong
-
-
-
-
-
-
-
-
-
-
-
-
-E04379F5-828E-48CC-9538-0843FE3C696A
-PUBLIC
-PUBLIC
-1562382314
-zhenghong
-1562382314
-zhenghong
-
-
-
-
-51AF1659-1C8D-4CE1-A967-59D2FC12A159
-MySQL 5.0
-MYSQL50
-1562382314
-zhenghong
-1562382314
-zhenghong
-file:///%_DBMS%/mysql50.xdb
-F4F16ECD-F2F1-4006-AF6F-638D5C65F35E
-4BA9F647-DAB1-11D1-9944-006097355D9B
-1276524678
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/document/pos/app.pos b/document/pos/app.pos
new file mode 100644
index 00000000..d6d8d258
--- /dev/null
+++ b/document/pos/app.pos
@@ -0,0 +1 @@
+{"diagram":{"image":{"x":0,"width":200,"y":0,"pngdata":"iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAsUlEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8GXHmAAFMgHIEAAAAAElFTkSuQmCC","height":200},"elements":{"leftChildren":[],"children":[{"parent":"root","lineStyle":{"randomLineColor":"#02ACF4"},"children":[{"parent":"7fdaa671c089","children":[],"id":"d4cbdc7edd21","title":"轮播广告"},{"parent":"7fdaa671c089","children":[{"parent":"c7e6739c4ae6","children":[],"id":"80d6ce7cfc76","title":"专题"},{"parent":"c7e6739c4ae6","children":[],"id":"0a11d36e446c650a","title":"话题"},{"parent":"c7e6739c4ae6","children":[],"id":"340e90c4e51d1649","title":"优选"},{"parent":"c7e6739c4ae6","children":[],"id":"970241b50cc05678","title":"特惠"}],"collapsed":true,"id":"c7e6739c4ae6","title":"功能模块"},{"parent":"7fdaa671c089","note":"对应后台品牌推荐功能","children":[{"parent":"dc18f5472ea5e02b","note":"LOGO、名称、商品数量","children":[],"id":"976dfe6b0150ec33","title":"数据列表"},{"parent":"dc18f5472ea5e02b","note":"品牌大图、品牌信息、品牌故事、相关商品","children":[],"id":"00bfa14a38826172","title":"品牌详情"}],"collapsed":true,"id":"dc18f5472ea5e02b","title":"品牌制造商直供"},{"parent":"7fdaa671c089","note":"对应后台秒杀活动列表功能","children":[{"parent":"45034b1150312f55","children":[],"id":"643411ea6b72ccf2","title":"秒杀商品列表"}],"collapsed":true,"id":"45034b1150312f55","title":"秒杀专区"},{"parent":"7fdaa671c089","note":"对应后台新品推荐功能","children":[{"parent":"d6b972cbcee22066","note":"图片、名称、副标题","children":[],"id":"edaf29b58df1243f","title":"商品列表"}],"collapsed":true,"id":"d6b972cbcee22066","title":"新鲜好物"},{"parent":"7fdaa671c089","note":"对应后台人气推荐功能","children":[{"parent":"ac88582e15c2eef0","children":[],"id":"3eb8632e3642988d","title":"商品列表"}],"collapsed":true,"id":"ac88582e15c2eef0","title":"人气推荐"},{"parent":"7fdaa671c089","children":[{"parent":"8814bf9e11d41af7","children":[],"id":"32f37b2047b77095","title":"商品列表"}],"collapsed":true,"id":"8814bf9e11d41af7","title":"猜你喜欢"}],"collapsed":false,"id":"7fdaa671c089","title":"首页"},{"parent":"root","lineStyle":{"randomLineColor":"#7549C5"},"children":[{"parent":"a42d702e0ee9","note":"支持二级分类,显示LOGO及名称","children":[],"id":"9c88e281f046a24f","title":"分类"},{"parent":"a42d702e0ee9","children":[{"parent":"31c90c493bf05852","note":"图片、名称、副标题、价格、销量","children":[],"id":"e299829aa4810002","title":"数据列表"},{"parent":"31c90c493bf05852","note":"综合排序、销量优先、价格","children":[],"id":"bf810f293421a8ef","title":"排序"},{"parent":"31c90c493bf05852","note":"按分类筛选","children":[],"id":"0f4a6ff1d79bb2fb","title":"筛选"}],"collapsed":true,"id":"31c90c493bf05852","title":"商品列表"},{"parent":"a42d702e0ee9","children":[{"parent":"76628b9be31b73be","note":"商品相册图片、名称、副标题、价格、销量、库存、浏览量","children":[],"id":"d872c72a1dc426b1","title":"商品信息"},{"parent":"76628b9be31b73be","note":"对应商品SKU属性","children":[],"id":"1cf72f8a190ade90","title":"购买类型"},{"parent":"76628b9be31b73be","note":"对应后台商品参数","children":[],"id":"ae359f289b98ce59","title":"商品参数"},{"parent":"76628b9be31b73be","note":"当前商品可用优惠券","children":[],"id":"10b2645b29d024c9","title":"优惠券"},{"parent":"76628b9be31b73be","note":"当前商品优惠促销","children":[],"id":"00379bbe8835d448","title":"促销活动"},{"parent":"76628b9be31b73be","children":[],"id":"119f628802e49bc5","title":"服务"},{"parent":"76628b9be31b73be","note":"图片、名称、首字母","children":[],"id":"ef11951399728cdb","title":"品牌信息"},{"parent":"76628b9be31b73be","note":"富文本展示详情","children":[],"id":"ff50586bb4b941db","title":"图文详情"},{"parent":"76628b9be31b73be","children":[{"parent":"289f074cbc434a5a","children":[],"id":"50eef6dd3036e365","title":"首页"},{"parent":"289f074cbc434a5a","children":[],"id":"ac7f421c8669af01","title":"购物车"},{"parent":"289f074cbc434a5a","children":[],"id":"09ecbaf3dc66e6bd","title":"收藏"},{"parent":"289f074cbc434a5a","children":[],"id":"3785b6a08250a08b","title":"立即购买"},{"parent":"289f074cbc434a5a","children":[],"id":"b8eef396c751402e","title":"加入购物车"}],"id":"289f074cbc434a5a","title":"操作"}],"collapsed":true,"id":"76628b9be31b73be","title":"商品详情"}],"collapsed":false,"id":"a42d702e0ee9","title":"商品"},{"parent":"root","lineStyle":{"randomLineColor":"#0FBAB0"},"children":[{"parent":"d0697f697cfe","note":"商品图片、名称、规格、价格、数量","children":[],"id":"afa515b5f473036f","title":"数据列表"},{"parent":"d0697f697cfe","children":[],"id":"ce4e9b0baea515bf","title":"修改数量"},{"parent":"d0697f697cfe","children":[],"id":"9d64a3747a5a4dbb","title":"清空"},{"parent":"d0697f697cfe","children":[],"id":"8779753e63722334","title":"计算价格"},{"parent":"d0697f697cfe","children":[],"id":"15fed91c2bce2f7a","title":"去结算"}],"collapsed":false,"id":"d0697f697cfe","title":"购物车"},{"parent":"root","lineStyle":{"randomLineColor":"#DD489D"},"children":[{"parent":"fb065ff81be1","note":"从购物车中的去结算功能创建","children":[{"parent":"ca04b711e7949548","children":[],"id":"2f2dccd584a60ad4","title":"选择收货地址"},{"parent":"ca04b711e7949548","children":[],"id":"cafd7b8dc18e5d0a","title":"商品信息"},{"parent":"ca04b711e7949548","children":[],"id":"aac14770026fdf5c","title":"选择优惠券"},{"parent":"ca04b711e7949548","children":[],"id":"6131425fc61d3668","title":"积分抵扣"},{"parent":"ca04b711e7949548","note":"最终价格=商品合计+运费-活动优惠-优惠券-积分抵扣","children":[],"id":"83d59dcc9997c7c8","title":"价格计算"},{"parent":"ca04b711e7949548","children":[],"id":"a9211cfedc3109bc","title":"备注"}],"collapsed":true,"id":"ca04b711e7949548","title":"创建订单"},{"parent":"fb065ff81be1","children":[{"parent":"11fe4c9727debc8f","children":[],"id":"373000cec66405d8","title":"支付金额"},{"parent":"11fe4c9727debc8f","children":[],"id":"df24adab6221244a","title":"支付方式"},{"parent":"11fe4c9727debc8f","children":[],"id":"3f2edb4c5007d3b9","title":"确认支付"}],"collapsed":true,"id":"11fe4c9727debc8f","title":"订单支付"},{"parent":"fb065ff81be1","note":"创建日期、订单状态、商品信息、商品数量、价格","children":[],"id":"92a1c16202e9f0d5","title":"订单列表"},{"parent":"fb065ff81be1","children":[{"parent":"ae74ea4a5868936d","note":"会员下单后未付款状态","children":[{"parent":"e05261e1c823b51f","children":[],"id":"1d762ed3603fb5c6","title":"取消订单"},{"parent":"e05261e1c823b51f","children":[],"id":"83766b00b43fc138","title":"立即付款"}],"collapsed":true,"id":"e05261e1c823b51f","title":"待付款"},{"parent":"ae74ea4a5868936d","note":"会员付款后,后台以执行发货操作状态","children":[{"parent":"6e2cbaae4d6a3f59","children":[],"id":"98ed3cb660c4e10b","title":"查看物流"},{"parent":"6e2cbaae4d6a3f59","children":[],"id":"b0e179cf55d5761c","title":"确认收货"}],"collapsed":true,"id":"6e2cbaae4d6a3f59","title":"待收货"},{"parent":"ae74ea4a5868936d","note":"会员确认收货后的状态","children":[{"parent":"6bfda684d01cb0f0","children":[],"id":"071cd90a7aa7a8fb","title":"删除"},{"parent":"6bfda684d01cb0f0","children":[],"id":"84e48c0894bd2b7b","title":"评价商品"}],"id":"6bfda684d01cb0f0","title":"已完成"},{"parent":"ae74ea4a5868936d","note":"会员主动取消或订单超时自动取消","children":[{"parent":"80aa20d5928f9bbd","children":[],"id":"6b566d423f377756","title":"删除"}],"id":"80aa20d5928f9bbd","title":"已取消"}],"collapsed":true,"id":"ae74ea4a5868936d","title":"操作"},{"parent":"fb065ff81be1","children":[{"parent":"9000a6310c88009d","note":"订单状态、收货人信息、商品信息、价格信息、订单信息","children":[],"id":"d62bce8b55d78507","title":"显示信息"},{"parent":"9000a6310c88009d","note":"同订单操作","children":[],"id":"90d27cfe885775be","title":"操作"},{"parent":"9000a6310c88009d","note":"订单完成后可申请售后","children":[],"id":"632a21481391ada1","title":"申请售后"}],"collapsed":true,"id":"9000a6310c88009d","title":"订单详情"}],"collapsed":false,"id":"fb065ff81be1","title":"订单"},{"parent":"root","lineStyle":{"randomLineColor":"#3D5EC2"},"children":[{"parent":"3667506bcbfd","note":"头像、昵称、积分、成长值、优惠券数量","children":[],"id":"5d90a0c0a702d882","title":"会员信息"},{"parent":"3667506bcbfd","children":[{"parent":"bf2cf63ba26fb5ad","note":"名称、有效期、面值、类型","children":[],"id":"2c500f9d25ff3e51","title":"数据列表"},{"parent":"bf2cf63ba26fb5ad","note":"未使用、已使用、已过期","children":[],"id":"b4fdb51f26c1a41b","title":"优惠券状态"}],"collapsed":true,"id":"bf2cf63ba26fb5ad","title":"优惠券"},{"parent":"3667506bcbfd","children":[{"parent":"a0267688cbae9ec0","children":[],"id":"37a223bdd73eb3ea","title":"全部订单"},{"parent":"a0267688cbae9ec0","children":[],"id":"fed835b16b137e97","title":"待付款"},{"parent":"a0267688cbae9ec0","children":[],"id":"3b367f84d51347aa","title":"待收货"},{"parent":"a0267688cbae9ec0","children":[],"id":"04150d3e5153ce52","title":"退款/售后"}],"collapsed":true,"id":"a0267688cbae9ec0","title":"订单功能"},{"parent":"3667506bcbfd","children":[{"parent":"062bb5a6671bf97e","note":"地址、姓名、手机号","children":[],"id":"a9958c3f8e401d5a","title":"数据列表"},{"parent":"062bb5a6671bf97e","note":"姓名、手机号、邮政编码、所在区域、详细地址、设为默认","children":[],"id":"1592f39d4d06e3b2","title":"添加"},{"parent":"062bb5a6671bf97e","children":[{"parent":"751e583216317c3b","children":[],"id":"25fe335a7e0e0c84","title":"编辑"},{"parent":"751e583216317c3b","children":[],"id":"134e058cf79508d2","title":"删除"}],"id":"751e583216317c3b","title":"操作"}],"collapsed":true,"id":"062bb5a6671bf97e","title":"地址管理"},{"parent":"3667506bcbfd","note":"商品浏览记录","children":[{"parent":"a45a5ad8ef617b35","note":"图片、名称、副标题、价格、浏览时间","children":[],"id":"00483209f028560f","title":"数据列表"},{"parent":"a45a5ad8ef617b35","children":[],"id":"557b86dd53b224af","title":"清空"}],"collapsed":true,"id":"a45a5ad8ef617b35","title":"我的足迹"},{"parent":"3667506bcbfd","note":"关注的品牌","children":[{"parent":"e34b41b47e132443","note":"图片、名称","children":[],"id":"d531e0e51b1d8dec","title":"数据列表"},{"parent":"e34b41b47e132443","children":[],"id":"e99cc7d31e3ac24a","title":"清空"}],"collapsed":true,"id":"e34b41b47e132443","title":"我的关注"},{"parent":"3667506bcbfd","note":"收藏的商品","children":[{"parent":"ed018e9dbdd38b57","note":"图片、名称、副标题、价格","children":[],"id":"9e4222c443f50033","title":"数据列表"},{"parent":"ed018e9dbdd38b57","children":[],"id":"f93a5ed18eaa86da","title":"清空"}],"collapsed":true,"id":"ed018e9dbdd38b57","title":"我的收藏"},{"parent":"3667506bcbfd","children":[],"id":"1738b184bfa4e83d","title":"我的评价"},{"parent":"3667506bcbfd","children":[{"parent":"f20d65c05cf2cbb5","children":[],"id":"319f7a22b8a9ce0f","title":"个人资料"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"24e455087b466678","title":"收货地址"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"7ad27808644bcee9","title":"实名认证"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"10c0510057542792","title":"消息推送"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"81aa86bdc6413543","title":"清除缓存"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"2053022f05ad0ed2","title":"关于"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"755460577b262df1","title":"检查更新"},{"parent":"f20d65c05cf2cbb5","children":[],"id":"55077fb110be218a","title":"退出登录"}],"collapsed":true,"id":"f20d65c05cf2cbb5","title":"设置"}],"id":"3667506bcbfd","title":"我的"}],"root":true,"theme":"delicate_caihong","id":"root","title":"移动商城功能","version":489,"structure":"mind_free"}},"meta":{"exportTime":"2022-11-11 16:38:21","member":"5a210b2ee4b04f355d337104","diagramInfo":{"creator":"5a210b2ee4b04f355d337104","created":"2022-11-11 15:03:54","modified":"2022-11-11 16:36:49","title":"移动商城功能","category":"mind_free"},"id":"636df3da6376897f2b17dcee","type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git a/document/pos/oms.pos b/document/pos/oms.pos
new file mode 100644
index 00000000..eacfdc85
--- /dev/null
+++ b/document/pos/oms.pos
@@ -0,0 +1 @@
+{"diagram":{"image":{"x":0,"width":200,"y":0,"pngdata":"iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAsUlEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8GXHmAAFMgHIEAAAAAElFTkSuQmCC","height":200},"elements":{"leftChildren":[],"children":[{"parent":"root","lineStyle":{"randomLineColor":"#FD5155"},"children":[{"parent":"4dcde504af651f71e1d7","note":"关键字、收货人、提交时间、顶替状态、订单分类、订单来源 ","children":[],"collapsed":false,"id":"fde4bfb4e88c67ad8428","title":"筛选搜索"},{"parent":"4dcde504af651f71e1d7","note":"编号、订单编号、提交时间、用户账号、订单金额、支付方式、订单来源、订单状态","children":[],"collapsed":false,"id":"c05c9c5a7bd74b1a5df2","title":"数据列表"},{"parent":"4dcde504af651f71e1d7","children":[{"parent":"0b56a27aacfcf9e91429","children":[],"id":"6a1a5efa50bb1ef7","title":"查看订单"},{"parent":"0b56a27aacfcf9e91429","children":[],"id":"150f177484de884c3ab8","title":"订单关闭"},{"parent":"0b56a27aacfcf9e91429","children":[],"id":"99c1cc50d8297c2a98d6","title":"订单发货"},{"parent":"0b56a27aacfcf9e91429","children":[],"id":"2981f6b3025222a8c841","title":"订单跟踪"},{"parent":"0b56a27aacfcf9e91429","children":[],"id":"20c190cbe89762be15a3","title":"删除订单"}],"collapsed":true,"id":"0b56a27aacfcf9e91429","title":"操作"},{"parent":"4dcde504af651f71e1d7","children":[{"parent":"6bb87975d955845bde69","children":[],"id":"4aca17ee5d455b621b79","title":"订单状态"},{"parent":"6bb87975d955845bde69","children":[{"parent":"105e887f8df84ebf2d4d","note":"收货人姓名、手机号码、邮政编码、所在区域、详细地址 ","children":[],"collapsed":false,"id":"9f82b9bdf00ec9689ef9","title":"修改收货人信息"},{"parent":"105e887f8df84ebf2d4d","note":"运费、折扣金额","children":[],"collapsed":false,"id":"38f2b97e619f795829bc","title":"修改费用信息"},{"parent":"105e887f8df84ebf2d4d","children":[],"id":"1edfe0c33b5e5bf1c33e","title":"发送站内信"},{"parent":"105e887f8df84ebf2d4d","children":[],"id":"a1a00b251a06108ffd1d","title":"关闭订单"},{"parent":"105e887f8df84ebf2d4d","children":[],"id":"6047f31b701bb59cbedb","title":"备注订单"}],"collapsed":true,"id":"105e887f8df84ebf2d4d","title":"修改订单"},{"parent":"6bb87975d955845bde69","children":[],"id":"87c30eccd19c19b2fa21","title":"基本信息"},{"parent":"6bb87975d955845bde69","children":[],"id":"0fd2e05525ef81ccc71b","title":"收货人信息"},{"parent":"6bb87975d955845bde69","children":[],"id":"16bad996586dfb702684","title":"商品信息"},{"parent":"6bb87975d955845bde69","children":[],"id":"b7a1eb937d5a1dd829a5","title":"费用信息"},{"parent":"6bb87975d955845bde69","children":[],"id":"33ed8f34f0dcc1fd884e","title":"操作信息"}],"collapsed":true,"id":"6bb87975d955845bde69","title":"查看订单"},{"parent":"4dcde504af651f71e1d7","children":[{"parent":"ad4f7b3904a3a28913c0","children":[],"id":"ff914c59e0c91f5f","title":"批量发货"},{"parent":"ad4f7b3904a3a28913c0","children":[],"id":"ef2970a00683951a","title":"关闭订单"},{"parent":"ad4f7b3904a3a28913c0","children":[],"id":"9a0958bcf8cee447","title":"删除订单"}],"collapsed":true,"id":"ad4f7b3904a3a28913c0","title":"批量操作"}],"collapsed":false,"id":"4dcde504af651f71e1d7","title":"订单列表"},{"parent":"root","lineStyle":{"randomLineColor":"#7549C5"},"children":[{"parent":"6c3a4a0c039217397d8b","children":[],"id":"462128b57dd56195ce9c","title":"秒杀订单自动关闭时间"},{"parent":"6c3a4a0c039217397d8b","children":[],"id":"62967ff650b3f3d7b7ce","title":"正常订单自动关闭时间"},{"parent":"6c3a4a0c039217397d8b","children":[],"id":"c8d3f6fe2e16b1f9f8b0","title":"发货超过时间自动完成"},{"parent":"6c3a4a0c039217397d8b","children":[],"id":"313a5d6ebc9763801649","title":"订单完成多少天自动结束,不能申请售后"},{"parent":"6c3a4a0c039217397d8b","children":[],"id":"46b11b98a6e1122437eb","title":"订单完成超过多少天自动5星好评"}],"collapsed":false,"id":"6c3a4a0c039217397d8b","title":"订单设置"},{"parent":"root","lineStyle":{"randomLineColor":"#80BA4C"},"children":[{"parent":"a20f045e6427362f64f9","note":"服务单号、处理状态、申请时间、操作人员、处理时间","children":[],"id":"cce77724d1c597545635","title":"筛选搜索"},{"parent":"a20f045e6427362f64f9","note":"服务单号、申请时间、用户账号、退款金额、申请状态、处理时间","children":[],"id":"4dd4d82ac01825481bbb","title":"数据列表"},{"parent":"a20f045e6427362f64f9","children":[{"parent":"af645e85dfaab5269abc","children":[],"id":"f041b7db8f60966eb590","title":"退货商品"},{"parent":"af645e85dfaab5269abc","children":[{"parent":"7dd3937fa8c74d5b98b3","children":[],"id":"fb9fa92d8bcb4e85cace","title":"申请信息"},{"parent":"7dd3937fa8c74d5b98b3","children":[],"id":"cc01cd801b7518e46c6d","title":"退货信息"},{"parent":"7dd3937fa8c74d5b98b3","children":[],"id":"aac18616f56b8cc59070","title":"处理备注"},{"parent":"7dd3937fa8c74d5b98b3","note":"待处理、退货中、已完成、已拒绝","children":[],"id":"0a57c06092e8fe42","title":"处理状态"}],"id":"7dd3937fa8c74d5b98b3","title":"服务单信息"},{"parent":"af645e85dfaab5269abc","children":[{"parent":"1ef8f832bcdfc56ee072","children":[],"id":"a674fb6aaca4f93e87d3","title":"确认退货"},{"parent":"1ef8f832bcdfc56ee072","children":[],"id":"2b7c411c7e2b0614d12a","title":"确认收货"},{"parent":"1ef8f832bcdfc56ee072","children":[],"id":"e7edcdd4dd2207a4241f","title":"拒绝退货"}],"id":"1ef8f832bcdfc56ee072","title":"操作"}],"collapsed":true,"id":"af645e85dfaab5269abc","title":"查看详情"}],"collapsed":false,"id":"a20f045e6427362f64f9","title":"退货申请处理"},{"parent":"root","lineStyle":{"randomLineColor":"#0F80C4"},"children":[{"parent":"62069253fd52e628ed10","note":"编号、原因类型、排序、是否可用、添加时间","children":[],"id":"3ce7706ba9d874208588","title":"数据列表"},{"parent":"62069253fd52e628ed10","children":[],"id":"b5a558064d36c48d583d","title":"添加"},{"parent":"62069253fd52e628ed10","children":[{"parent":"a9dab4eefa926d49d008","children":[],"id":"77c1129eafd5b997","title":"编辑"},{"parent":"a9dab4eefa926d49d008","children":[],"id":"2c7b162acfb710a0","title":"删除"}],"id":"a9dab4eefa926d49d008","title":"操作"}],"collapsed":true,"id":"62069253fd52e628ed10","title":"退货原因设置"}],"root":true,"theme":"delicate_caihong","id":"root","title":"订单模块","version":289,"structure":"mind_free"}},"meta":{"exportTime":"2022-11-11 16:37:52","member":"5a210b2ee4b04f355d337104","diagramInfo":{"creator":"5a210b2ee4b04f355d337104","created":"2022-11-10 16:48:02","modified":"2022-11-11 10:37:32","title":"订单模块","category":"mind_free"},"id":"636cbac26376897f2b155b9b","type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git a/document/pos/pms.pos b/document/pos/pms.pos
new file mode 100644
index 00000000..a680c1dd
--- /dev/null
+++ b/document/pos/pms.pos
@@ -0,0 +1 @@
+{"diagram":{"image":{"x":0,"width":200,"y":0,"pngdata":"iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAsUlEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8GXHmAAFMgHIEAAAAAElFTkSuQmCC","height":200},"elements":{"leftChildren":[],"children":[{"parent":"root","lineStyle":{"randomLineColor":"#BE49C4"},"children":[{"parent":"b0193c3521eaf8a10ed6","note":"名称、货号、分类、品牌、上架状态、审核状态","children":[],"collapsed":false,"id":"afd97cc98a82ffb89757","title":"筛选搜索"},{"parent":"b0193c3521eaf8a10ed6","note":"编号、商品图片、商品名称、价格\\货号、标签、排序、SKU库存、销量、审核状态","children":[],"collapsed":false,"id":"12612e018e9a0526d448","title":"数据列表"},{"parent":"b0193c3521eaf8a10ed6","children":[{"parent":"9e3d797bcab8e3f942bd","children":[],"id":"c1e1fc1bc48de3aa","title":"查看"},{"parent":"9e3d797bcab8e3f942bd","children":[],"id":"c4f7563e8e6919d1","title":"编辑"},{"parent":"9e3d797bcab8e3f942bd","children":[],"id":"a213bd6c064b5cda","title":"日志"},{"parent":"9e3d797bcab8e3f942bd","children":[],"id":"47bdb6d8dffb2ee9","title":"删除"}],"collapsed":true,"id":"9e3d797bcab8e3f942bd","title":"操作"},{"parent":"b0193c3521eaf8a10ed6","children":[{"parent":"16914295265bdffc1064","children":[],"id":"5b6717e914b56339","title":"上下架"},{"parent":"16914295265bdffc1064","children":[],"id":"a1b7055145994b96","title":"推荐"},{"parent":"16914295265bdffc1064","children":[],"id":"1917ac40ba9149eb","title":"新品"},{"parent":"16914295265bdffc1064","children":[],"id":"213632c8ddfe63fa","title":"转移分类"}],"collapsed":true,"id":"16914295265bdffc1064","title":"批量操作"}],"collapsed":false,"id":"b0193c3521eaf8a10ed6","title":"商品列表"},{"parent":"root","lineStyle":{"randomLineColor":"#02ACF4"},"children":[{"parent":"4578b2205b9273061cb6","children":[{"parent":"150b7fae65c85ffc65c1","children":[],"id":"01e1bfb6ac3f2a34665f","title":"商品分类"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"8548078d1c762a336c8f","title":"商品名称"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"54c42179cfe1777184e8","title":"副标题"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"c2b450a1cb3f6360613b","title":"商品品牌"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"dd50b3150f3cf2c98159","title":"商品介绍"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"bad04fb4c667270ef0bc","title":"商品货号"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"628556f625622f778633","title":"商品价格"},{"parent":"150b7fae65c85ffc65c1","children":[],"id":"bde367e24e1ecec5","title":"商品库存"}],"collapsed":true,"id":"150b7fae65c85ffc65c1","title":"填写商品信息"},{"parent":"4578b2205b9273061cb6","children":[{"parent":"eb970a0ca5d901effeaa","children":[],"id":"ba7a238e5b6b0f3d","title":"积分"},{"parent":"eb970a0ca5d901effeaa","children":[],"id":"add191749e24973d","title":"成长值"},{"parent":"eb970a0ca5d901effeaa","children":[],"id":"12d896a0ff03f042","title":"上下架状态"},{"parent":"eb970a0ca5d901effeaa","children":[{"parent":"be5f56e1a733a494","children":[],"id":"d8e05c5688ffb4e4","title":"新品"},{"parent":"be5f56e1a733a494","children":[],"id":"a6e8e9c8dd6a1840","title":"推荐"}],"collapsed":true,"id":"be5f56e1a733a494","title":"商品标签"},{"parent":"eb970a0ca5d901effeaa","children":[],"id":"4790d2c6ef88240c","title":"服务保证"},{"parent":"eb970a0ca5d901effeaa","children":[],"id":"058db134cf6a8b86","title":"商品详细页内容"},{"parent":"eb970a0ca5d901effeaa","children":[{"parent":"c71531fc19b4628c","children":[],"id":"053ba4d08bbcb9e8","title":"特惠促销"},{"parent":"c71531fc19b4628c","children":[],"id":"a401f6ab1582e34d","title":"会员价格"},{"parent":"c71531fc19b4628c","children":[],"id":"877d93b933c03a3a","title":"阶梯价格"},{"parent":"c71531fc19b4628c","children":[],"id":"a42342a809f6614e","title":"满减价格"}],"collapsed":true,"id":"c71531fc19b4628c","title":"优惠方式"}],"collapsed":true,"id":"eb970a0ca5d901effeaa","title":"填写商品促销"},{"parent":"4578b2205b9273061cb6","children":[{"parent":"f39ae019cc793b23a550","children":[],"id":"80e8ec4a8d3f6f765ce8","title":"属性类型"},{"parent":"f39ae019cc793b23a550","children":[{"parent":"7338aeb3f9d92cc8","children":[],"id":"657ba1546025c843","title":"SKU属性"},{"parent":"7338aeb3f9d92cc8","children":[],"id":"94ddd46d7a557420","title":"价格"},{"parent":"7338aeb3f9d92cc8","children":[],"id":"75c053323a443450","title":"库存"}],"id":"7338aeb3f9d92cc8","title":"商品规格"},{"parent":"f39ae019cc793b23a550","children":[],"id":"d10f746e017ce12f4af7","title":"属性图片"},{"parent":"f39ae019cc793b23a550","children":[],"id":"51f591c54dd6b2f45cf3","title":"商品参数"},{"parent":"f39ae019cc793b23a550","note":"可上传5张,第一张为主图","children":[],"id":"b78ee701cb4d30b8046e","title":"商品相册"},{"parent":"f39ae019cc793b23a550","note":"使用富文本编辑器,直接批量上传切图","children":[{"parent":"0e0d32d1de9c0d89f090","children":[],"id":"c5ca9a1fc3808321","title":"电脑端详情"},{"parent":"0e0d32d1de9c0d89f090","children":[],"id":"91a414ef18e602d8","title":"移动端详情"}],"id":"0e0d32d1de9c0d89f090","title":"商品详情"}],"collapsed":true,"id":"f39ae019cc793b23a550","title":"填写商品属性"},{"parent":"4578b2205b9273061cb6","children":[{"parent":"410f282a6a011559cd7e","children":[],"id":"5e1055a2c14e6ac1333b","title":"关联专题"},{"parent":"410f282a6a011559cd7e","children":[],"id":"c0aa38689d4f6dd98e89","title":"关联优选"}],"collapsed":true,"id":"410f282a6a011559cd7e","title":"选择商品关联"}],"collapsed":false,"id":"4578b2205b9273061cb6","title":"添加商品"},{"parent":"root","lineStyle":{"randomLineColor":"#7549C5"},"children":[{"parent":"7a6d301f9278f2630c2a","note":"编号、分类名、级别、数量、单位、导航栏、是否显示、排序","children":[],"collapsed":false,"id":"38ae08dc614fc8af1ea5","title":"数据列表"},{"parent":"7a6d301f9278f2630c2a","children":[{"parent":"e4c0b0ee759251371957","children":[],"id":"2290b6f08e405c8a","title":"查看下级"},{"parent":"e4c0b0ee759251371957","children":[],"id":"54f789fb49bb8b5c","title":"转移商品"}],"collapsed":true,"id":"e4c0b0ee759251371957","title":"设置"},{"parent":"7a6d301f9278f2630c2a","children":[{"parent":"99c5cec73311b9484c09","children":[],"id":"1d9a161ad7407b18","title":"编辑"},{"parent":"99c5cec73311b9484c09","children":[],"id":"934b181044de07b1","title":"删除"}],"collapsed":true,"id":"99c5cec73311b9484c09","title":"操作"},{"parent":"7a6d301f9278f2630c2a","note":"分类名称、上级分类、数量单位、排序、是否显示、是否显示在导航栏、分类图标、筛选属性、关键字、分类描述","children":[],"collapsed":false,"id":"8442f155f8cce6ee1fd3","title":"添加分类"}],"collapsed":false,"id":"7a6d301f9278f2630c2a","title":"商品分类"},{"parent":"root","lineStyle":{"randomLineColor":"#FD5155"},"children":[{"parent":"39f28c9e5a207c982746","children":[{"parent":"e88242482ef0584009bd","note":"编号、名称、属性数量、参数数量","children":[],"collapsed":false,"id":"9a8cae1b0cb9eecab2d9","title":"数据列表"},{"parent":"e88242482ef0584009bd","children":[{"parent":"5a1a503374d30b7377e0","note":"编号、属性名称、商品类型、属性是否可选、属性录入方式、可选值列表、排序、操作","children":[],"id":"d53c5691019e3c4a1d2c","title":"属性或属性列表"},{"parent":"5a1a503374d30b7377e0","children":[{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"420dcd0e046932e4efbd","title":"属性名称"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"60cc4e6c1d2b731ecce5","title":"商品类型"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"eeec949bd8e1d5bd705d","title":"分类筛选样式"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"8e1dbcb9a5a927d63cc8","title":"能否进行检索"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"222a6dc9d98482784a28","title":"相同属性值的商品是否关联"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"a62a03df100eb0261d76","title":"属性是否可选"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"60f0394a180cfb7d8d38","title":"该属性值的录入方式"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"735a214b97ab1edffdda","title":"属性值可选值列表"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"0af81046f778a255766f","title":"是否支持手动新增"},{"parent":"4c9c4b6411a35464eb2b","children":[],"id":"4d397f72061fd8b994a4","title":"属性排序"}],"collapsed":true,"id":"4c9c4b6411a35464eb2b","title":"添加属性或参数"}],"collapsed":false,"id":"5a1a503374d30b7377e0","title":"设置"},{"parent":"e88242482ef0584009bd","children":[{"parent":"172f19e2a225095b","children":[],"id":"606c1e69b5bd85a3","title":"编辑"},{"parent":"172f19e2a225095b","children":[],"id":"fe364906958220e9","title":"删除"}],"id":"172f19e2a225095b","title":"操作"},{"parent":"e88242482ef0584009bd","children":[{"parent":"6eefb44138a35973b7c7","children":[],"id":"269fe5284562ba30","title":"编辑"},{"parent":"6eefb44138a35973b7c7","children":[],"id":"18cb5d523283607e","title":"删除"}],"collapsed":true,"id":"6eefb44138a35973b7c7","title":"操作"}],"collapsed":true,"id":"e88242482ef0584009bd","title":"商品类型"},{"parent":"39f28c9e5a207c982746","children":[],"id":"d7b41c3bc685d007","title":"添加类型"}],"collapsed":false,"id":"39f28c9e5a207c982746","title":"商品类型"},{"parent":"root","lineStyle":{"randomLineColor":"#0F80C4"},"children":[{"parent":"7d93cc9472646cd2f5eb","note":"关键字","children":[],"id":"805f7bafc84c6c2dbafd","title":"筛选搜索"},{"parent":"7d93cc9472646cd2f5eb","note":"编号、品牌名称、品牌首字母、排序、品牌制造商、是否显示、商品数量及评价数量","children":[],"id":"3dfb4349b642c35a850b","title":"数据列表"},{"parent":"7d93cc9472646cd2f5eb","children":[{"parent":"6c942115a541b0753b68","children":[],"id":"f19a25d8cb05949c","title":"显示"},{"parent":"6c942115a541b0753b68","children":[],"id":"5e62d6928cee3dfe","title":"隐藏"}],"collapsed":true,"id":"6c942115a541b0753b68","title":"批量操作"},{"parent":"7d93cc9472646cd2f5eb","children":[{"parent":"7698f312546878c2891f","children":[],"id":"7ee6e839884c9312","title":"品牌名称"},{"parent":"7698f312546878c2891f","children":[],"id":"58bf03255dc50aa1","title":"品牌首字母"},{"parent":"7698f312546878c2891f","children":[],"id":"02e832a254208c19","title":"品牌LOGO"},{"parent":"7698f312546878c2891f","children":[],"id":"9a5fd84ed7a1a2a6","title":"品牌专区大图"},{"parent":"7698f312546878c2891f","children":[],"id":"2365ee6d54460ce5","title":"品牌故事"},{"parent":"7698f312546878c2891f","children":[],"id":"824cde85b57ede2a","title":"排序"},{"parent":"7698f312546878c2891f","children":[],"id":"23839f67608c5e67","title":"是否显示"},{"parent":"7698f312546878c2891f","children":[],"id":"2e941dacd17c024a","title":"是否为品牌制造商"}],"collapsed":true,"id":"7698f312546878c2891f","title":"添加品牌"}],"collapsed":false,"id":"7d93cc9472646cd2f5eb","title":"品牌管理"}],"root":true,"theme":"delicate_caihong","id":"root","title":"商品模块","version":422,"structure":"mind_free"}},"meta":{"exportTime":"2022-11-11 16:38:12","member":"5a210b2ee4b04f355d337104","diagramInfo":{"creator":"5a210b2ee4b04f355d337104","created":"2022-11-10 16:07:31","modified":"2022-11-11 10:37:08","title":"商品模块","category":"mind_free"},"id":"636cb1431e085317c6a36b06","type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git a/document/pos/sms.pos b/document/pos/sms.pos
new file mode 100644
index 00000000..baf4f01c
--- /dev/null
+++ b/document/pos/sms.pos
@@ -0,0 +1 @@
+{"diagram":{"image":{"x":0,"width":200,"y":0,"pngdata":"iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAsUlEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8GXHmAAFMgHIEAAAAAElFTkSuQmCC","height":200},"elements":{"leftChildren":[],"children":[{"parent":"root","lineStyle":{"randomLineColor":"#FCB52A"},"children":[{"parent":"545764a25a8548f0ddf3","note":"关键字","children":[],"id":"9a3ca43a68aa95e2","title":"筛选搜索"},{"parent":"545764a25a8548f0ddf3","note":"编号、活动标题、活动状态、开始时间、结束时间、上下线状态","children":[],"collapsed":false,"id":"a0e352814d1082aafd1f","title":"数据列表"},{"parent":"545764a25a8548f0ddf3","note":"活动标题、开始时间、结束时间、上下线状态","children":[],"id":"8b248c2d5fae2bcdf4d8","title":"添加活动"},{"parent":"545764a25a8548f0ddf3","children":[{"parent":"6db653dfba561795","children":[],"id":"b71e19827bba9f4f","title":"编辑"},{"parent":"6db653dfba561795","children":[],"id":"ae8dafe8f0a89fc0","title":"删除"}],"collapsed":true,"id":"6db653dfba561795","title":"操作"},{"parent":"545764a25a8548f0ddf3","children":[{"parent":"6db45d3fe49ce8b0860d","children":[{"parent":"f777bf175fe6a34e0760","children":[],"id":"fd3d69627249b6e05f79","title":"显示商品列表"}],"collapsed":false,"id":"f777bf175fe6a34e0760","title":"显示时间段列表"},{"parent":"6db45d3fe49ce8b0860d","children":[{"parent":"d8517e5dc277361b","note":"编号、商品名称、货号、商品价格、剩余数量,设置秒杀价格、秒杀数量、限购数量、排序","children":[],"id":"2323b83d9a361b94","title":"数据列表"},{"parent":"d8517e5dc277361b","note":"直接展示上架商品信息","children":[],"id":"ccdb30253f6b63d9","title":"添加商品"}],"id":"d8517e5dc277361b","title":"选择商品"}],"collapsed":true,"id":"6db45d3fe49ce8b0860d","title":"设置商品"},{"parent":"545764a25a8548f0ddf3","children":[{"parent":"fb60edaba84f13c6bc2d","note":"编号、名称、开始时间、结束时间、启用状态","children":[],"id":"c03b022a719a0a770462","title":"数据列表"},{"parent":"fb60edaba84f13c6bc2d","note":"名称、开始时间、结束时间、启用状态","children":[],"id":"0aabec9051d8f19e","title":"添加时间段"},{"parent":"fb60edaba84f13c6bc2d","children":[{"parent":"d20e8ec6263ebadeef80","children":[],"id":"b86daff650a125dc","title":"编辑"},{"parent":"d20e8ec6263ebadeef80","children":[],"id":"3159b3d5db632aa1","title":"删除"}],"collapsed":true,"id":"d20e8ec6263ebadeef80","title":"操作"}],"collapsed":true,"id":"fb60edaba84f13c6bc2d","title":"秒杀时间段列表"}],"collapsed":false,"id":"545764a25a8548f0ddf3","title":"秒杀活动列表"},{"parent":"root","lineStyle":{"randomLineColor":"#FD5155"},"children":[{"parent":"42b2258bf954dabd6df8","note":"优惠券名称、优惠券类型","children":[],"id":"867a06d3c21fe70e","title":"筛选搜索"},{"parent":"42b2258bf954dabd6df8","note":"编号、名称、类型、可使用商品、使用门槛、面值、适用平台、有效期、状态","children":[],"id":"c061afe595360693","title":"数据列表"},{"parent":"42b2258bf954dabd6df8","note":"名称、类型、可使用商品、使用门槛、面值、适用平台、有效期、状态、总发行量、每人限领、领取时间、备注","children":[],"id":"3565eac051844296","title":"添加"},{"parent":"42b2258bf954dabd6df8","children":[{"parent":"c648f7624727f8fc","children":[],"id":"ae53acc6fc8b556e","title":"编辑"},{"parent":"c648f7624727f8fc","children":[],"id":"3847c6afc720c970","title":"删除"}],"collapsed":true,"id":"c648f7624727f8fc","title":"操作"},{"parent":"42b2258bf954dabd6df8","children":[{"parent":"8c1359eba32f936f","children":[],"id":"bc0a934e179877cc","title":"优惠券信息"},{"parent":"8c1359eba32f936f","note":"使用状态、订单编号","children":[],"id":"51466c9d2e5b4460","title":"筛选搜索"},{"parent":"8c1359eba32f936f","note":"优惠码、领取会员、领取方式、领取时间、当前状态、使用时间、订单编号 ","children":[],"id":"78f03b618041d6cb","title":"优惠券领取、使用历史"}],"collapsed":true,"id":"8c1359eba32f936f","title":"查看"}],"collapsed":false,"id":"42b2258bf954dabd6df8","title":"优惠券列表"},{"parent":"root","lineStyle":{"randomLineColor":"#7549C5"},"children":[{"parent":"dc46ba4e39fdab24","note":"品牌名称、推荐状态","children":[],"id":"58f25242fff694cf","title":"筛选搜索"},{"parent":"dc46ba4e39fdab24","note":"编号、品牌名称、是否推荐、排序、状态","children":[],"id":"f46070a601e81e48","title":"数据列表"},{"parent":"dc46ba4e39fdab24","children":[{"parent":"def2896b07bb19fc","children":[],"id":"9b1c6dbe6f6bf443","title":"设置排序"},{"parent":"def2896b07bb19fc","children":[],"id":"8ee429ee489a4e6d","title":"删除"}],"collapsed":true,"id":"def2896b07bb19fc","title":"操作"},{"parent":"dc46ba4e39fdab24","note":"从品牌列表选择品牌并添加","children":[],"id":"1c8b467481694967","title":"选择品牌"}],"id":"dc46ba4e39fdab24","title":"品牌推荐"},{"parent":"root","lineStyle":{"randomLineColor":"#F88A35"},"children":[{"parent":"22ebf929115001a4","note":"商品名称、推荐状态","children":[],"id":"49a40f8396367eb9","title":"筛选搜索"},{"parent":"22ebf929115001a4","note":"编号、商品名称、是否推荐、排序、状态","children":[],"id":"a487e128c49dc7dc","title":"数据列表"},{"parent":"22ebf929115001a4","children":[{"parent":"e6cb76fe705b439c","children":[],"id":"42ad60941e2ae867","title":"设置排序"},{"parent":"e6cb76fe705b439c","children":[],"id":"23f9ba432308714b","title":"删除"}],"collapsed":true,"id":"e6cb76fe705b439c","title":"操作"},{"parent":"22ebf929115001a4","note":"从商品列表选择商品添加","children":[],"id":"f5ca69c68f34d53f","title":"选择商品"}],"id":"22ebf929115001a4","title":"新品推荐"},{"parent":"root","lineStyle":{"randomLineColor":"#F88A35"},"children":[{"parent":"bc48cdc5b44c","note":"商品名称、推荐状态","children":[],"id":"8c6293e3bd90","title":"筛选搜索"},{"parent":"bc48cdc5b44c","note":"编号、商品名称、是否推荐、排序、状态","children":[],"id":"df2bb98bb7d3","title":"数据列表"},{"parent":"bc48cdc5b44c","children":[{"parent":"ab3036201d87","children":[],"id":"0463fc3a452e","title":"设置排序"},{"parent":"ab3036201d87","children":[],"id":"fc793528c4f9","title":"删除"}],"collapsed":true,"id":"ab3036201d87","title":"操作"},{"parent":"bc48cdc5b44c","note":"从商品列表选择商品添加","children":[],"id":"2debbb1fc80d","title":"选择商品"}],"id":"bc48cdc5b44c","title":"人气推荐"},{"parent":"root","lineStyle":{"randomLineColor":"#F88A35"},"children":[{"parent":"71d9a7e1542c","note":"专题名称、推荐状态","children":[],"id":"18bf1418a142","title":"筛选搜索"},{"parent":"71d9a7e1542c","note":"编号、专题名称、是否推荐、排序、状态","children":[],"id":"84b73f86d56d","title":"数据列表"},{"parent":"71d9a7e1542c","children":[{"parent":"c8374dd2c84f","children":[],"id":"cbabf9b4bda6","title":"设置排序"},{"parent":"c8374dd2c84f","children":[],"id":"335f63d58965","title":"删除"}],"collapsed":true,"id":"c8374dd2c84f","title":"操作"},{"parent":"71d9a7e1542c","note":"从专题列表选择商品添加","children":[],"id":"8ee248bc24ca","title":"选择专题"}],"id":"71d9a7e1542c","title":"专题推荐"},{"parent":"root","lineStyle":{"randomLineColor":"#DD489D"},"children":[{"parent":"e7481c76661d765a","note":"广告名称、广告位置、到期时间","children":[],"id":"4ee2072e0faa15db","title":"筛选搜索"},{"parent":"e7481c76661d765a","note":"编号、广告名称、广告位置、广告图片、时间、上下线状态、点击次数、生成订单 ","children":[],"id":"c67fd79aa7efe4d2","title":"数据列表"},{"parent":"e7481c76661d765a","children":[{"parent":"1f992e078b526d5d","children":[],"id":"c8b980dc234876c5","title":"编辑"},{"parent":"1f992e078b526d5d","children":[],"id":"55f98013908eba09","title":"删除"}],"collapsed":true,"id":"1f992e078b526d5d","title":"操作"},{"parent":"e7481c76661d765a","note":"广告名称、广告位置、广告图片、开始时间、到期时间、上下线状态、排序、广告链接、广告备注","children":[],"id":"1daeff8cf3eed6b7","title":"添加广告"}],"id":"e7481c76661d765a","title":"广告列表"}],"root":true,"theme":"delicate_caihong","id":"root","title":"营销模块","version":282,"structure":"mind_free"}},"meta":{"exportTime":"2022-11-11 16:38:30","member":"5a210b2ee4b04f355d337104","diagramInfo":{"creator":"5a210b2ee4b04f355d337104","created":"2022-11-11 10:39:06","modified":"2022-11-11 14:47:44","title":"营销模块","category":"mind_free"},"id":"636db5ca1e085317c6a53f00","type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git a/document/pos/ums.pos b/document/pos/ums.pos
new file mode 100644
index 00000000..4e144fd4
--- /dev/null
+++ b/document/pos/ums.pos
@@ -0,0 +1 @@
+{"diagram":{"image":{"x":0,"width":200,"y":0,"pngdata":"iVBORw0KGgoAAAANSUhEUgAAAMgAAADICAYAAACtWK6eAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAsUlEQVR4nO3BAQEAAACCIP+vbkhAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB8GXHmAAFMgHIEAAAAAElFTkSuQmCC","height":200},"elements":{"leftChildren":[],"children":[{"parent":"root","lineStyle":{"randomLineColor":"#BE49C4"},"children":[{"parent":"25ad9c354241","note":"账号、姓名","children":[],"id":"a534c5c1431d","title":"筛选搜索"},{"parent":"25ad9c354241","note":"账号、姓名、邮箱、添加时间、最后登录、是否启用","children":[],"id":"515a998fac21","title":"数据列表"},{"parent":"25ad9c354241","note":"账号、姓名、邮箱、密码、备注、是否启用","children":[],"id":"a642fabedf3e6922","title":"添加"},{"parent":"25ad9c354241","children":[{"parent":"bf1e014fe073d036","children":[],"id":"4afff98845184f42","title":"编辑"},{"parent":"bf1e014fe073d036","children":[],"id":"e2c445685b95cb5f","title":"删除"}],"collapsed":true,"id":"bf1e014fe073d036","title":"操作"},{"parent":"25ad9c354241","note":"显示可选角色分配、支持多选","children":[],"id":"a1e34965a8c6fbf5","title":"分配角色"}],"id":"25ad9c354241","title":"用户列表"},{"parent":"root","lineStyle":{"randomLineColor":"#F88A35"},"children":[{"parent":"952f1880cc08","note":"角色名称","children":[],"id":"b517aa49a95c","title":"筛选搜索"},{"parent":"952f1880cc08","note":"编号、角色名称、描述、用户数、添加时间、是否启用","children":[],"id":"22842dfed78c","title":"数据列表"},{"parent":"952f1880cc08","note":"角色名称、描述、是否启用","children":[],"id":"5bb3fe6364cc1e40","title":"添加"},{"parent":"952f1880cc08","children":[{"parent":"9b2645159961ff82","children":[],"id":"83862e5d17271f78","title":"编辑"},{"parent":"9b2645159961ff82","children":[],"id":"1272ef7243e92251","title":"删除"}],"collapsed":true,"id":"9b2645159961ff82","title":"操作"},{"parent":"952f1880cc08","note":"树形结构显示菜单,可多选","children":[],"id":"eb1e75861d5cae27","title":"分配菜单"},{"parent":"952f1880cc08","note":"按类别显示权限,可多选","children":[],"id":"3b7aba1f8357e6a1","title":"分配资源"}],"id":"952f1880cc08","title":"角色列表"},{"parent":"root","lineStyle":{"randomLineColor":"#0FBAB0"},"children":[{"parent":"3b3191eb67b3","note":"编号、菜单名称、菜单级别、前端名称、前端图标、是否显示、排序、设置","children":[],"id":"42fc29e1f387","title":"数据列表"},{"parent":"3b3191eb67b3","note":"菜单名称、上级菜单、前端名称、前端图标、是否显示、排序","children":[],"id":"00626f4222e6","title":"添加"},{"parent":"3b3191eb67b3","children":[{"parent":"3a776c35d2f021e3","children":[],"id":"f3b3af838cfef8d4","title":"编辑"},{"parent":"3a776c35d2f021e3","children":[],"id":"6d6b093b4438d8f8","title":"删除"}],"collapsed":true,"id":"3a776c35d2f021e3","title":"操作"}],"id":"3b3191eb67b3","title":"菜单列表"},{"parent":"root","lineStyle":{"randomLineColor":"#7549C5"},"children":[{"parent":"b4546a3318d6","note":"资源名称、资源路径、资源分类","children":[],"id":"412b02a45895aefd","title":"筛选搜索"},{"parent":"b4546a3318d6","note":"编号、资源名称、资源路径、描述、添加时间","children":[],"id":"0623f40ddcecbc96","title":"数据列表"},{"parent":"b4546a3318d6","children":[{"parent":"5b3fa9a2f9cc0cd5","note":"编号、名称、创建时间、排序","children":[],"id":"1b293388acc42812","title":"数据列表"},{"parent":"5b3fa9a2f9cc0cd5","note":"名称、排序","children":[],"id":"be7ac6bcba2ac473","title":"添加"},{"parent":"5b3fa9a2f9cc0cd5","children":[{"parent":"75d57415ae3b9703","children":[],"id":"7249e10514bc74a0","title":"编辑"},{"parent":"75d57415ae3b9703","children":[],"id":"75832b8fb6058bb4","title":"删除"}],"id":"75d57415ae3b9703","title":"操作"}],"collapsed":true,"id":"5b3fa9a2f9cc0cd5","title":"资源分类"},{"parent":"b4546a3318d6","note":"资源名称、资源路径、资源分类、描述","children":[],"id":"52df9a20039f228b","title":"添加"},{"parent":"b4546a3318d6","children":[{"parent":"dfe91e487b4ce974","children":[],"id":"9fa0b4dea66f1650","title":"编辑"},{"parent":"dfe91e487b4ce974","children":[],"id":"2480ed5cd92998ae","title":"删除"}],"collapsed":true,"id":"dfe91e487b4ce974","title":"操作"}],"id":"b4546a3318d6","title":"资源列表"}],"root":true,"theme":"delicate_caihong","id":"root","title":"权限模块","version":125,"structure":"mind_right","summaries":[]}},"meta":{"exportTime":"2022-11-11 16:38:03","member":"5a210b2ee4b04f355d337104","diagramInfo":{"creator":"5a210b2ee4b04f355d337104","created":"2022-11-11 14:49:00","modified":"2022-11-11 15:01:34","title":"权限模块","category":"mind_free"},"id":"636df05c5653bb3a847979ce","type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git "a/document/pos/\344\270\213\345\215\225\346\265\201\347\250\213.pos" "b/document/pos/\344\270\213\345\215\225\346\265\201\347\250\213.pos"
deleted file mode 100644
index 02a093a8..00000000
--- "a/document/pos/\344\270\213\345\215\225\346\265\201\347\250\213.pos"
+++ /dev/null
@@ -1 +0,0 @@
-{"diagram":{"image":{"height":2382,"pngdata":"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","width":438,"y":-30,"x":-30},"elements":{"page":{"showGrid":true,"gridSize":15,"orientation":"portrait","height":2440,"backgroundColor":"transparent","width":1050,"padding":20},"theme":{"linker":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fontStyle":{"bold":false,"color":"50,50,50","fontFamily":"Arial","italic":false,"size":13}},"name":"colorful_yellow","shape":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fillStyle":{"color":"255,255,237","type":"solid"},"fontStyle":{"bold":false,"color":"50,50,50","fontFamily":"Arial","italic":false,"size":13}}},"elements":{"16c13135f33fbb":{"id":"16c13135f33fbb","to":{"id":"16c13136abfa5b","y":1340.7999877929688,"angle":1.5707963267948968,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1329.7999877929688,"x":116.59999084472656},{"y":1329.7999877929688,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1312e958a92","y":1318.7999877929688,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":30}},"16c130703e9576":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"判断购物车中商品是否都有库存"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130703e94b6","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130703e967a","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130703e9314","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130703e978c","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130703e9fb1","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c130703e9576","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","title":"菱形","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":244.5999984741211,"h":80,"angle":0,"x":56.59999084472656,"zindex":4}},"16c130d5ac6c4c":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"判断积分是否可用"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130de9e6208","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130de9e6d66","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130de9e6328","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130de9e687d","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130de9e6b34","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c130d5ac6c4c","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":827.6000061035156,"zindex":19,"x":66.59999084472656}},"16c130f86951fc":{"id":"16c130f86951fc","to":{"id":"16c13076307444","y":515.6000022888184,"angle":0,"x":258.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":862.6000061035156,"x":212.59999084472656},{"y":515.6000022888184,"x":212.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c130d5ac6c4c","y":862.6000061035156,"angle":3.141592653589794,"x":166.59999084472656},"group":"","props":{"zindex":22}},"16c1316f298908":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"修改优惠券的使用状态"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1316f29874","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1316f29887f","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1316f298491","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1316f2988e5","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1316f298d2f","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1316f298908","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":50,"y":1829.800048828125,"zindex":40,"x":66.59999084472656}},"16c13076307444":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"结束,提示下单失败信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1307630797","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130763077a4","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13076307091","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130763075d9","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1307630790a","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13076307444","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":80,"y":480.60000228881836,"h":70,"angle":0,"x":258.59999084472656,"zindex":6}},"16c1307e4f8622":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"判断是否使用了优惠券"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130850e8009","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130850e8239","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130850e87e4","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130850e8985","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130850e810b","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1307e4f8622","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":370.5999984741211,"zindex":9,"x":66.59999084472656}},"16c13187cfda75":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"下单成功"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13187cfdef8","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13187cfda5c","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13187cfd71b","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c13187cfde05","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13187cfdb9f","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13187cfda75","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":40,"y":2242.800048828125,"zindex":49,"x":66.59999084472656}},"16c13177077671":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"扣除会员所用积分"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13177077da6","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13177077ed4","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1317707753e","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1317707731a","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13177077294","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13177077671","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":2034.800048828125,"zindex":45,"x":66.59999084472656}},"16c1317f388fa9":{"id":"16c1317f388fa9","to":{"id":"16c1317fefd154","y":2143.800048828125,"angle":1.5707963267948968,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":2124.300048828125,"x":116.59999084472656},{"y":2124.300048828125,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c13177077671","y":2104.800048828125,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":46}},"16c130d4ebf343":{"to":{"id":"16c130d5ac6c4c","angle":1.5707963267948968,"y":827.6000061035156,"x":116.59999084472656},"id":"16c130d4ebf343","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c130cd1ced0c","angle":4.71238898038469,"y":784.5999984741211,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":806.1000022888184,"x":116.59999084472656},{"y":806.1000022888184,"x":116.59999084472656}],"group":"","props":{"zindex":18}},"16c1312f7d7791":{"to":{"id":"16c1312e958a92","angle":1.5707963267948968,"y":1248.7999877929688,"x":116.59999084472656},"id":"16c1312f7d7791","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c1311763d8c9","angle":4.71238898038469,"y":1217.7999877929688,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1233.2999877929688,"x":116.59999084472656},{"y":1233.2999877929688,"x":116.59999084472656}],"group":"","props":{"zindex":29}},"16c1314f050e2f":{"id":"16c1314f050e2f","to":{"id":"16c1314f88e673","y":1546.800048828125,"angle":1.5707963267948968,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1529.3000183105469,"x":116.59999084472656},{"y":1529.3000183105469,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c13144cc33ae","y":1511.7999877929688,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":34}},"16c1311763d8c9":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"进行每个商品的库存锁定"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1311763d799","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1311763d77","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1311763d30f","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1311763d885","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1311763df2b","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1311763d8c9","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":1147.7999877929688,"h":70,"angle":0,"x":66.59999084472656,"zindex":26}},"16c131741a53c":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"使用了积分"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c131741a5dba","category":"default","name":"序号","value":"","type":"number"},{"id":"16c131741a550d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c131741a5005","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c131741a53d4","category":"default","name":"连接","value":"","type":"link"},{"id":"16c131741a5e6c","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c131741a53c","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","title":"菱形","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":1920.800048828125,"h":80,"angle":0,"x":56.59999084472656,"zindex":43}},"16c13144cc33ae":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"设置oms_order中收货人信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13144cc34af","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13144cc359d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13144cc30f6","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c13144cc310c","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13144cc3c31","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13144cc33ae","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":1441.7999877929688,"zindex":32,"x":66.59999084472656}},"16c13054ea7258":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"将oms_cart_item表信息转化为oms_order_item表信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13054ea7b07","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13054ea735","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13054ea7546","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c13054ea7e93","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13054ea7b43","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13054ea7258","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":160,"angle":0,"h":70,"y":141.5999984741211,"zindex":2,"x":36.59999084472656}},"16c1316c979fa6":{"id":"16c1316c979fa6","to":{"id":"16c1316b7ed7b6","y":1714.800048828125,"angle":1.5707963267948966,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1699.300048828125,"x":116.59999084472656},{"y":1699.300048828125,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1315a7c5445","y":1683.800048828125,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":39}},"16c131700d0179":{"to":{"id":"16c1316f298908","angle":1.5707963267948968,"y":1829.800048828125,"x":116.59999084472656},"id":"16c131700d0179","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c1316b7ed7b6","angle":4.71238898038469,"y":1794.800048828125,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1812.300048828125,"x":116.59999084472656},{"y":1812.300048828125,"x":116.59999084472656}],"group":"","props":{"zindex":41}},"16c1314f88e673":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"生成订单号"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1314f88f3e5","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1314f88fba8","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1314f88f82","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1314f88fa5b","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1314f88f588","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1314f88e673","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":1546.800048828125,"h":40,"angle":0,"x":66.59999084472656,"zindex":35}},"16c130b00c8dba":{"id":"16c130b00c8dba","to":{"id":"16c13076307444","y":515.6000022888184,"angle":0,"x":258.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":515.6000022888184,"x":212.59999084472656},{"y":515.6000022888184,"x":212.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c13093966a07","y":515.6000022888184,"angle":3.141592653589794,"x":166.59999084472656},"group":"","props":{"zindex":12}},"16c1318f6f8f09":{"id":"16c1318f6f8f09","to":{"id":"16c131741a53c","y":1920.800048828125,"angle":1.5707963267948966,"x":116.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1754.800048828125,"x":206.59999084472656},{"y":1890.800048828125,"x":206.59999084472656},{"y":1890.800048828125,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1316b7ed7b6","y":1754.800048828125,"angle":3.141592653589794,"x":176.59999084472656},"group":"","props":{"zindex":50}},"16c131013c6fb5":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"设置每个oms_order_item的实付金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c131013c6b75","category":"default","name":"序号","value":"","type":"number"},{"id":"16c131013c65fa","category":"default","name":"名称","value":"","type":"string"},{"id":"16c131013c6ad","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c131013c6496","category":"default","name":"连接","value":"","type":"link"},{"id":"16c131013c6085","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c131013c6fb5","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":140,"angle":0,"h":70,"y":1042.8000183105469,"zindex":24,"x":46.59999084472656}},"16c13110a4dc23":{"to":{"id":"16c131013c6fb5","angle":1.5707963267948968,"y":1042.8000183105469,"x":116.59999084472656},"id":"16c13110a4dc23","linkerType":"broken","text":"否","lineStyle":{},"name":"linker","from":{"id":"16c130cd1ced0c","angle":3.141592653589794,"y":744.5999984741211,"x":176.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":744.5999984741211,"x":206.59999084472656},{"y":1012.8000183105469,"x":206.59999084472656},{"y":1012.8000183105469,"x":116.59999084472656}],"group":"","props":{"zindex":25}},"16c1319760ea3a":{"id":"16c1319760ea3a","to":{"id":"16c1317fefd154","y":2143.800048828125,"angle":1.5707963267948968,"x":116.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1960.800048828125,"x":206.59999084472656},{"y":2113.800048828125,"x":206.59999084472656},{"y":2113.800048828125,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c131741a53c","y":1960.800048828125,"angle":3.141592653589794,"x":176.59999084472656},"group":"","props":{"zindex":51}},"16c130d17009c":{"id":"16c130d17009c","to":{"id":"16c130cd1ced0c","y":704.5999984741211,"angle":1.5707963267948966,"x":116.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":405.5999984741211,"x":196.59999084472656},{"y":674.5999984741211,"x":196.59999084472656},{"y":674.5999984741211,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1307e4f8622","y":405.5999984741211,"angle":3.141592653589794,"x":166.59999084472656},"group":"","props":{"zindex":17}},"16c1312e958a92":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"设置oms_order中金额相关信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13130c2e5e7","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13130c2e0ce","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13130c2e64a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c13130c2ef67","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13130c2e324","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1312e958a92","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":1248.7999877929688,"zindex":28,"x":66.59999084472656}},"16c1304416f59":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"获取购物车信息并计算好优惠"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1304416fa8f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1304416f671","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1304416fcc9","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1304416fbb6","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1304416f667","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1304416f59","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":35.599998474121094,"h":70,"angle":0,"x":66.59999084472656,"zindex":1}},"16c1307d75102":{"to":{"id":"16c1307e4f8622","angle":1.5707963267948968,"y":370.5999984741211,"x":116.59999084472656},"id":"16c1307d75102","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c130703e9576","angle":4.71238898038469,"y":324.5999984741211,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":347.5999984741211,"x":116.59999084472656},{"y":347.5999984741211,"x":116.59999084472656}],"group":"","props":{"zindex":8}},"16c13136abfa5b":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"设置oms_order中其他相关信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c13136abf948","category":"default","name":"序号","value":"","type":"number"},{"id":"16c13136abfff6","category":"default","name":"名称","value":"","type":"string"},{"id":"16c13136abf0f4","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c13136abff4a","category":"default","name":"连接","value":"","type":"link"},{"id":"16c13136abf104","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13136abfa5b","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":1340.7999877929688,"h":70,"angle":0,"x":66.59999084472656,"zindex":31}},"16c130cd1ced0c":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"判断是否使用了积分"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130cd1ce55","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130cd1cefad","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130cd1ce16d","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130cd1ce59","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130cd1cea24","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c130cd1ced0c","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","title":"菱形","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":704.5999984741211,"h":80,"angle":0,"x":56.59999084472656,"zindex":16}},"16c13176600d3d":{"to":{"id":"16c13177077671","angle":1.5707963267948968,"y":2034.800048828125,"x":116.59999084472656},"id":"16c13176600d3d","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c131741a53c","angle":4.71238898038469,"y":2000.800048828125,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":2017.800048828125,"x":116.59999084472656},{"y":2017.800048828125,"x":116.59999084472656}],"group":"","props":{"zindex":44}},"16c13159e90dec":{"to":{"id":"16c1315a7c5445","angle":1.5707963267948968,"y":1613.800048828125,"x":116.59999084472656},"id":"16c13159e90dec","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c1314f88e673","angle":4.71238898038469,"y":1586.800048828125,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1600.300048828125,"x":116.59999084472656},{"y":1600.300048828125,"x":116.59999084472656}],"group":"","props":{"zindex":36}},"16c130cc7c7cf1":{"id":"16c130cc7c7cf1","to":{"id":"16c130cd1ced0c","y":704.5999984741211,"angle":1.5707963267948966,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":684.1000022888184,"x":116.59999084472656},{"y":684.1000022888184,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c130b57f6116","y":663.6000061035156,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":15}},"16c130e213dc54":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"设置每个oms_order_item的积分优惠分解金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130e213e7c4","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130e213ef88","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130e213ee2a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130e213e448","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130e213e487","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c130e213dc54","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":140,"y":932.6000366210938,"h":70,"angle":0,"x":46.59999084472656,"zindex":21}},"16c130b4f3e6ed":{"to":{"id":"16c130b57f6116","angle":1.5707963267948968,"y":593.6000061035156,"x":116.59999084472656},"id":"16c130b4f3e6ed","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c13093966a07","angle":4.71238898038469,"y":550.6000022888184,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":572.100004196167,"x":116.59999084472656},{"y":572.100004196167,"x":116.59999084472656}],"group":"","props":{"zindex":13}},"16c131875296d5":{"to":{"id":"16c13187cfda75","angle":1.5707963267948968,"y":2242.800048828125,"x":116.59999084472656},"id":"16c131875296d5","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c1317fefd154","angle":4.71238898038469,"y":2213.800048828125,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":2228.300048828125,"x":116.59999084472656},{"y":2228.300048828125,"x":116.59999084472656}],"group":"","props":{"zindex":48}},"16c1316b7ed7b6":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"使用了优惠券"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1316b7ee55","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1316b7ee844","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1316b7ee60c","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1316b7ee206","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1316b7eeea4","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1316b7ed7b6","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","title":"菱形","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":1714.800048828125,"h":80,"angle":0,"x":56.59999084472656,"zindex":38}},"16c13145ca823e":{"to":{"id":"16c13144cc33ae","angle":1.5707963267948966,"y":1441.7999877929688,"x":116.59999084472656},"id":"16c13145ca823e","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c13136abfa5b","angle":4.71238898038469,"y":1410.7999877929688,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1426.2999877929688,"x":116.59999084472656},{"y":1426.2999877929688,"x":116.59999084472656}],"group":"","props":{"zindex":33}},"16c1306b54f9cd":{"to":{"id":"16c13054ea7258","angle":1.5707963267948968,"y":141.5999984741211,"x":116.59999084472656},"id":"16c1306b54f9cd","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c1304416f59","angle":4.71238898038469,"y":105.5999984741211,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":123.5999984741211,"x":116.59999084472656},{"y":123.5999984741211,"x":116.59999084472656}],"group":"","props":{"zindex":3}},"16c131004f65b5":{"to":{"id":"16c131013c6fb5","angle":1.5707963267948968,"y":1042.8000183105469,"x":116.59999084472656},"id":"16c131004f65b5","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c130e213dc54","angle":4.71238898038469,"y":1002.6000366210938,"x":116.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1022.7000274658203,"x":116.59999084472656},{"y":1022.7000274658203,"x":116.59999084472656}],"group":"","props":{"zindex":23}},"16c1307a3b800f":{"id":"16c1307a3b800f","to":{"id":"16c13076307444","y":515.6000022888184,"angle":0,"x":258.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":284.5999984741211,"x":217.59999084472656},{"y":515.6000022888184,"x":217.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c130703e9576","y":284.5999984741211,"angle":3.141592653589794,"x":176.59999084472656},"group":"","props":{"zindex":7}},"16c130b57f6116":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"设置每个oms_order_item的优惠券优惠分解金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130b57f69df","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130b57f6613","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130b57f6ac","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130b57f6d7b","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130b57f640a","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c130b57f6116","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":70,"y":593.6000061035156,"zindex":14,"x":56.59999084472656}},"16c1317fefd154":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"删除oms_cart_item表中信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1317fefe17f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1317fefe6bb","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1317fefee26","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1317fefee2","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1317fefe527","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1317fefd154","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":2143.800048828125,"h":70,"angle":0,"x":66.59999084472656,"zindex":47}},"16c13093966a07":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"判断优惠券是否可用"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c130ad00759f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c130ad0073d7","category":"default","name":"名称","value":"","type":"string"},{"id":"16c130ad00749b","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c130ad007c02","category":"default","name":"连接","value":"","type":"link"},{"id":"16c130ad007a77","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c13093966a07","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":480.60000228881836,"h":70,"angle":0,"x":66.59999084472656,"zindex":11}},"16c130e1ad7987":{"id":"16c130e1ad7987","to":{"id":"16c130e213dc54","y":932.6000366210938,"angle":1.5707963267948968,"x":116.59999084472656},"text":"是","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":915.1000213623047,"x":116.59999084472656},{"y":915.1000213623047,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c130d5ac6c4c","y":897.6000061035156,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":20}},"16c13074507ff":{"id":"16c13074507ff","to":{"id":"16c130703e9576","y":244.5999984741211,"angle":1.5707963267948966,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":228.0999984741211,"x":116.59999084472656},{"y":228.0999984741211,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c13054ea7258","y":211.5999984741211,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":5}},"16c131737499b2":{"id":"16c131737499b2","to":{"id":"16c131741a53c","y":1920.800048828125,"angle":1.5707963267948966,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1900.300048828125,"x":116.59999084472656},{"y":1900.300048828125,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1316f298908","y":1879.800048828125,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":42}},"16c1311a5713b3":{"id":"16c1311a5713b3","to":{"id":"16c1311763d8c9","y":1147.7999877929688,"angle":1.5707963267948968,"x":116.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1130.3000030517578,"x":116.59999084472656},{"y":1130.3000030517578,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c131013c6fb5","y":1112.8000183105469,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":27}},"16c13092be725a":{"id":"16c13092be725a","to":{"id":"16c13093966a07","y":480.60000228881836,"angle":1.5707963267948968,"x":116.59999084472656},"text":"是","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":460.6000003814697,"x":116.59999084472656},{"y":460.6000003814697,"x":116.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c1307e4f8622","y":440.5999984741211,"angle":4.71238898038469,"x":116.59999084472656},"group":"","props":{"zindex":10}},"16c1315a7c5445":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"保存oms_order_item表和oms_order表信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c1315a7c6353","category":"default","name":"序号","value":"","type":"number"},{"id":"16c1315a7c6583","category":"default","name":"名称","value":"","type":"string"},{"id":"16c1315a7c6255","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c1315a7c6346","category":"default","name":"连接","value":"","type":"link"},{"id":"16c1315a7c6b11","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c1315a7c5445","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":140,"angle":0,"h":70,"y":1613.800048828125,"zindex":37,"x":46.59999084472656}}}}},"meta":{"id":"5d33f858e4b065dc42ac37f6","member":"5a210b2ee4b04f355d337104","exportTime":"2019-12-21 14:39:44","diagramInfo":{"category":"flow","title":"下单流程","created":"2019-07-21 13:30:00","creator":"5a210b2ee4b04f355d337104","modified":"2019-07-21 14:01:04"},"type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git "a/document/pos/\347\224\237\346\210\220\347\241\256\350\256\244\345\215\225\346\265\201\347\250\213.pos" "b/document/pos/\347\224\237\346\210\220\347\241\256\350\256\244\345\215\225\346\265\201\347\250\213.pos"
deleted file mode 100644
index 5f8a5ffa..00000000
--- "a/document/pos/\347\224\237\346\210\220\347\241\256\350\256\244\345\215\225\346\265\201\347\250\213.pos"
+++ /dev/null
@@ -1 +0,0 @@
-{"diagram":{"image":{"height":1311,"pngdata":"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x0Oj0cDa2tqg/cn14DUaLXbvPohTp/5FxYoVDF7LyMiEq6sLqlSpbNDu6OgIADh//gLWr9+KtLT8s2NBJZCCg4NZAomIyp2yMw2TiOg5yy2xBMALQL4lluLj78PV1cVo3+zsbNjYFLz60JNOnfoXHh71DQLm/fsJqFzZqdBb+AkJidDp9Ab7sQQSEb2IGDqJ6IXWuHFja2tr6zGCIHwNwNHKyhIffdQXQ4d+aHTV0twyMjKxZs1GBAZug0ajBXJKIM0UBGFJUFDQ812GiYiolDF0EtFLwcfHx1Wr1c4SRdEXgFC5slOxSyyZGksgEdHLgKGTiF4q3t7erwiCsBhAawBo1qxRiUosPW8FlUBSqVQsgURELxSGTiJ6GQm5JZYAVBMEodgllp4XlkAiopcNQycRvbTatGnjkJGRMV0QhIkArO3sFEWWWHpWLIFERC8rhk4ieukplUp3AAsA9ASAOnVqFlhi6VkUVAJJpVKxBBIRvfAYOomIHilOiaWnwRJIREQMnUREBp5niSWWQCIieoyhk4goH89SYoklkIiIjDF0EhEVoqQlllgCiYgofwydRERFK7LEEksgEREVjqGTiKiY8iux5Os7AACwdu0mlkAiIioEQycRUQk9WWIpD5ZAIiIqAEMnEdFTelRiadGjpxNYAomIiIiITEKpVIpKpZJjNomIiiAzdweIiIiI6MXH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmx9BJRERERCbH0ElEREREJsfQSUREREQmZ2nuDhDR0xFFUXyW/QVBEJ5XX4iIiIrCK51EREUQC1HUNubsd1lU2HdZFHP3nYieDUMnEREREZkcQyfRCyw7OxszZsxAu3bt0LFjR6xYscLcXSIiopcUQyfRC+ynn35CZmYmDh48iMDAQBw6dAg7d+40d7deaDdu3EDbtm3N3Y1yS61W44cffsCbb76Jtm3bYuzYsbh37565u0VEzwFDJ1E51rZt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WUe9+uo/lZiYpL/9rWBUtehTG0q7n7hatQDddttNysk5qe3bd2ry5PHasiVaI0cOVo0aQcVGRx9//B+qXr2ali5dLpvNR/fee4d17rff/lC7dq2toFxox47deuWVuU4hMyHhYLFZA7s9X/369Sn9G+nBuNeY0AnAS1TG7QKl89/670Jrq0rCwsJKbC9tFx9PcL4z/qmpaUpOPlrq8ysbNqyvG2+83qnNx8dHNWoEa+zYyWrRouDewt27462/f3v27NX777/h9AiyFSu+01dfrZa/v5+++Watdu2K06RJ/7LOHz+eqZo1QzR37svWM24Lp9Cjo//Qc8+Nl8Nhav/+gnuw58x5XzNnTikWOjt2bKdBg+7Vp59+VeLXk5mZpZtuut5rA6fEvcYSoROAl/L27QILne/WfxdaGzzb+S4OW7p0pQ4cSNRXX63WihXfKTg40AqQe/fuV8uWzXX6dK5q1AjSdddd5XRtaVPapmk6BU5JuuOOm61djKKitut//9uqRx992KlPTEysjhxJUePGDay29PQM/f77Dk2Y8ILy8uxKTU3XV1+9Lx8fn1J3N7ruum665prLrf9mBw8e6/RLommaJW7s4C288V7j8kboBOB1StsusFat0BK3Czx48LD27TtobRcYElJDl13WSQMG9LP6nbld4N133+b0PuW9XWCh893670JqqwpKeqB2eHj4i5JekPTPqKioFyu6pvNxPovDDh8+oqZNG6lBg3q6777+1mO/CqfKz9zo4EyXXNLMerZt0b7Dh0+Q3W63Riy3b4/RzJlzrFHJXbvi1LZtKw0fPkHp6RmqWTPE+jvapk1LPfXUaOszvv76G40bN0J9+/bSli3R2rZth3x9fUsc0c3KytbTT78ku93u1L537wGn4H3iRJZSUtL1+efzz/u/M0/gjfcalzdCJwCvU5m2Czyfrf8upDZUPnv2xOv222/SihVrnNrLen/w7t1xVpgrHB09fTpXWVnZOn061wqdnTu31+LFb0uSfv55s6Kituuxx4ZJKvi7uHDhEt1zTz81auR8O0NmZpYOHkzU8eMZuv76q7Vhwy/WaGlJv0gFBwdpxoznVaNGkAzDkGmamjjxX+rbt5eefHKUAgIClJx8VFu3/qbbb/fe6XVvvNe4vBE6AXid11//V7G29u3b6MMPZzuFSj8/Xy1ZMrfUaStfX1/173+L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796932j27EXntVrRp59uUlWV56zbN278MmBmPgDUV7zTCQAh7N37jVJT31SfPgmy2yP95dXVpiZNekZ//eufzjpLfMWK1WrePFpOp+usy056PF41aBCuqKiGWrXqbf3iFz/Xa6/9WZs2bZPbXaH8fKfat69J1xQV1VAJCd1CtgMA9QVBJwCE8NlnmzRx4piAgFOqSbzerFnTswacaWnbZRiGnn12iubMeUnTpk0MOfHotdf+rO3bd6q62pTP51Na2nZFRtq0YsVCbdq0VVZrhHr37lkr5wYAdYGgEwC+p7ra1L59BzRp0vigbadXNXK5CpSbm6/4+Jv825zOAq1cuUYvvvifCgsL02OPPaJf/WqWfvObXyourpO/XmFhsbKzj2nMmBE6ebJMgwffq9279ykqqqEefjhJhmHI4YhScvIqeTxepaQsUHg4t2sA9Rt3MQD4nrS0bSovd6uyskpTp86Uz+eTxfLdK/DZ2cc0Y8YctW4do65dY2UYhgoKCrVkyZ80e/ZzatQoSlJNkvpJk8brqadmqUePrhow4B717Bmv6OgmmjNnhqZOnanycrf+8pf35XBEafHiFxQd3UTLl7+oqiqPIiIaKClpOgEngGsCdzIA+J61az9WZWWlbDarkpPnB20fPfrJgBWPMjP3KivrgAYMuEczZgSuYJSTk6eHHrpf2dnH9PLLKf72Nm78Ul27xuqOO27RRx99qqFDB8kwDBlGTXA7duxkrV69tBbPEgCuLIJOADjDF19s0QMP3KeVK9dIqllTfffufbr55tDvVxYXl+i661qoW7c4VVebSkjoJqvVqnHjpuj11xf761VVeWSa1bJarfJ6vXI4ovT442O1fPnrKisr1yefbFTbtv+msDBDpmmqYUM7TzgBXFO4owHAKRUVlXI6CzR06CB/0BkZadPOnbvlchVq4MB7gvZp3NghSZo583904oTTX37o0BElJU2XJHm9PpWVlfuD0PDwcPXsGa/16/+p/v3vVKdOHZSSslqbN29VdbUpt9vtH6IHgGsFQScAnFJd7dPQoYOCyocMGajZsxeFDDpPe/bZKTp6NEddu8ZKksaNm6Lk5AUqKSnVpk1bNGjQvf66ZWXlcjpdeuONd/yz43Nzj2vt2lV68833lJ/vUps2rSTpnDk8AaA+ITk8AJxit4dOg9SyZXPNn//7c+7rcERp27adeuONdwLK33//7yotLQtI8B4ZaVO7dm0VHd1UyckLlJy8QK1aXXcq1dJkpaVtV/fuXZSevksLFz5/6ScGAFcBgk4ACOH7qwlFRET84D6jRj2kdes2+L+73RXyen0aMeJBGYahQ4eyJUlhYTW33oKCQiUlTVdS0nR5vT7/cY4ezdF9992tyEibFixYpoqKyst1WgBQZxheB4AQPJ7AYe3ycre2bs1QaWl5wASf4uISTZ06UxERDWQYhiwWi5KSpuv48ROaOPHXslqt+vLL7TJNU4cPH1FKykK1b3+9JOnWW3tr8uQJkqT09K+0efM25eXl6+mnn5QkdenSWYmJPfT555s1YMDZh/YBoD4g6ASAEOLj4wK+2+2RuvXW3lq06I8aPXq4v7xxY4dSU1+SxWK54GOcDjglqUuXWPl8PvXte3NAnWHDBvufggJAfWbUdQcA4EwJCQmmJKWnb/ihqrgCEhN/KknKyMjg/wWAS8I7nQAAAKh1BJ0AAACodQSdAAAAqHUEnQAAAKh1BJ0AAACodQSdAAAAqHUEnQAAAKh1BJ0AAACodQSdAK42TkkqKyuv63786JWWlp3+6KzLfgC4NhB0Arja7JGk/fsP1nU/fvTO+B18XZf9AHBtuPDFggGgFrVu3Tpc0oN79uxXx47t1KhRlCIiIuq6Wz8qpaVl2r17n+bOXaKCgiKZpjk7Ly9vR133C0D9xlq6AK42YQkJCR9Iur+uOwJJ0ocZGRlDJJl13REA9RtPOgFcbczc3Ny3YmJijhqG0VhSlCR7XXfqR8YpaZtpmrN37NjxnAg4AQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcA36f8HIzsyYjG1zAAAAAElFTkSuQmCC","width":669,"y":-30,"x":-30},"elements":{"page":{"gridSize":15,"showGrid":true,"orientation":"portrait","height":1360,"backgroundColor":"transparent","width":1050,"padding":20},"theme":{"linker":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}},"name":"colorful_yellow","shape":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fillStyle":{"color":"255,255,237","type":"solid"},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}}},"elements":{"16c0fa734975f6":{"id":"16c0fa734975f6","to":{"id":"16c0fa5f734a33","y":845.5999755859375,"angle":4.71238898038469,"x":481.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":661.5999984741211,"x":569.5999908447266},{"y":875.5999755859375,"x":569.5999908447266},{"y":875.5999755859375,"x":481.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0fa4bbcde7a","y":661.5999984741211,"angle":3.1415926535897936,"x":539.5999908447266},"group":"","props":{"zindex":27}},"16c0fa720c843c":{"id":"16c0fa720c843c","to":{"id":"16c0fa5f734a33","y":845.5999755859375,"angle":4.71238898038469,"x":481.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":661.5999984741211,"x":403.09999084472656},{"y":875.5999755859375,"x":403.09999084472656},{"y":875.5999755859375,"x":481.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0fa1d926afd","y":661.5999984741211,"angle":3.1415926535897936,"x":374.59999084472656},"group":"","props":{"zindex":26}},"16c0fa11b863b2":{"id":"16c0fa11b863b2","to":{"id":"16c0fa0adbe54d","y":621.5999984741211,"angle":1.5707963267948966,"x":117.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":590.6000003814697,"x":117.59999084472656},{"y":590.6000003814697,"x":117.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9e497b275","y":559.6000022888184,"angle":4.71238898038469,"x":117.59999084472656},"group":"","props":{"zindex":15}},"16c0f9c13c31e8":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"获取该会员所有优惠券信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9c13c3741","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9c13c3309","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9c13c3d11","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9c13c39ae","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9c13c341e","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9c13c31e8","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":254.5999984741211,"zindex":4,"x":249.59999084472656}},"16c0fa6985f24a":{"to":{"id":"16c0fa59b40e03","angle":1.5707963267948968,"y":786.6000061035156,"x":299.59999084472656},"id":"16c0fa6985f24a","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c0fa4bbcde7a","angle":4.71238898038469,"y":701.5999984741211,"x":464.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":744.1000022888184,"x":464.59999084472656},{"y":744.1000022888184,"x":299.59999084472656}],"group":"","props":{"zindex":24}},"16c0f9e497b275":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"全场通用"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9e497bbf4","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9e497bd13","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9e497b16d","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9e497b2de","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9e497b56e","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9e497b275","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":509.60000228881836,"h":50,"angle":0,"x":67.59999084472656,"zindex":8}},"16c0f9cc7543d1":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"根据use_type判断每个优惠券是否可用"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9e06de1ae","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9e06dec4","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9e06de9ea","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9e06dec49","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9e06de21d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9cc7543d1","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":70,"y":365.5999984741211,"zindex":6,"x":239.59999084472656}},"16c0faa6477101":{"id":"16c0faa6477101","to":{"id":"16c0fa9ef3d8d2","y":1141.6000366210938,"angle":1.5707963267948968,"x":305.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1125.1000366210938,"x":305.59999084472656},{"y":1125.1000366210938,"x":305.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0fa93dc2092","y":1108.6000366210938,"angle":4.71238898038469,"x":305.59999084472656},"group":"","props":{"zindex":33}},"16c0fa5f734a33":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"得到用户不可用优惠券列表"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa5fccea84","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa5fcce0dd","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa5fccebe8","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa5fcce275","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa5fcce0d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa5f734a33","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":775.5999755859375,"h":70,"angle":0,"x":431.59999084472656,"zindex":21}},"16c0f9ee7f203e":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"指定商品"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9ee7f2c7f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9ee7f2e3f","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9ee7f294b","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9ee7f2f3a","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9ee7f2545","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9ee7f203e","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":512.6000022888184,"h":50,"angle":0,"x":414.59999084472656,"zindex":10}},"16c0f9e33df401":{"to":{"id":"16c0f9cc7543d1","angle":1.5707963267948966,"y":365.5999984741211,"x":299.59999084472656},"id":"16c0f9e33df401","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0f9c13c31e8","angle":4.71238898038469,"y":324.5999984741211,"x":299.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":345.0999984741211,"x":299.59999084472656},{"y":345.0999984741211,"x":299.59999084472656}],"group":"","props":{"zindex":7}},"16c0fa4bbcde7a":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"判断指定商品总金额是否满足使用起点金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa4c0e5994","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa4c0e5979","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa4c0e5168","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa4c0e56bb","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa4c0e5d61","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa4bbcde7a","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"title":"菱形","category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":150,"angle":0,"h":80,"y":621.5999984741211,"zindex":18,"x":389.59999084472656}},"16c0f9ab14f21":{"to":{"id":"16c0f99a09721f","angle":1.5707963267948968,"y":157.5999984741211,"x":299.59999084472656},"id":"16c0f9ab14f21","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0f9915c8682","angle":4.71238898038469,"y":105.5999984741211,"x":299.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":131.5999984741211,"x":299.59999084472656},{"y":131.5999984741211,"x":299.59999084472656}],"group":"","props":{"zindex":3}},"16c0fa837b46f2":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"获取用户积分"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa837b4039","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa837b4c19","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa837b48f8","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa837b4b85","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa837b44db","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa837b46f2","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":928.6000061035156,"h":70,"angle":0,"x":255.59999084472656,"zindex":28}},"16c0f9ec1ddc84":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"指定分类"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9ec1dd8ac","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9ec1ddf07","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9ec1dd497","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9ec1dd85d","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9ec1dd6cb","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9ec1ddc84","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":512.6000022888184,"h":50,"angle":0,"x":249.59999084472656,"zindex":9}},"16c0fa9cdf8fc8":{"to":{"id":"16c0fa93dc2092","angle":1.5707963267948968,"y":1038.6000366210938,"x":305.59999084472656},"id":"16c0fa9cdf8fc8","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0fa837b46f2","angle":4.71238898038469,"y":998.6000061035156,"x":305.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":1018.6000213623047,"x":305.59999084472656},{"y":1018.6000213623047,"x":305.59999084472656}],"group":"","props":{"zindex":31}},"16c0fa0adbe54d":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"判断所有商品总金额是否满足使用起点金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa0adbeb7d","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa0adbea5b","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa0adbe3d6","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa0adbe4a8","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa0adbe324","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa0adbe54d","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"title":"菱形","category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":160,"angle":0,"h":80,"y":621.5999984741211,"zindex":14,"x":37.59999084472656}},"16c0fa9ef3d8d2":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"计算总金额,活动优惠,应付金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa9ef3da1","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa9ef3df0d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa9ef3dfba","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa9ef3dbd1","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa9ef3d5a7","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa9ef3d8d2","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":1141.6000366210938,"h":70,"angle":0,"x":255.59999084472656,"zindex":32}},"16c0fa62f96bdf":{"to":{"id":"16c0fa59b40e03","angle":1.5707963267948968,"y":786.6000061035156,"x":299.59999084472656},"id":"16c0fa62f96bdf","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c0fa0adbe54d","angle":4.71238898038469,"y":701.5999984741211,"x":117.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":744.1000022888184,"x":117.59999084472656},{"y":744.1000022888184,"x":299.59999084472656}],"group":"","props":{"zindex":22}},"16c0fa59b40e03":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"得到用户可用优惠券列表"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa59b41167","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa59b4182d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa59b4159a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa59b41c9d","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa59b412c4","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa59b40e03","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":786.6000061035156,"zindex":20,"x":249.59999084472656}},"16c0f99a09721f":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"从ums_member_receive_address表中获取会员收货地址列表"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f99a0973c","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f99a097616","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f99a097631","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f99a0974ec","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f99a097f96","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f99a09721f","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":244,"angle":0,"h":55,"y":157.5999984741211,"zindex":2,"x":177.59999084472656}},"16c0f9915c8682":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"获取购物车信息并计算好优惠"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f9915c97dd","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f9915c9fdc","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f9915c96b6","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f9915c923c","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f9915c96c5","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f9915c8682","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":35.599998474121094,"h":70,"angle":0,"x":249.59999084472656,"zindex":1}},"16c0fa87cfe33c":{"id":"16c0fa87cfe33c","to":{"id":"16c0fa837b46f2","y":928.6000061035156,"angle":1.5707963267948966,"x":297.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":892.6000061035156,"x":299.59999084472656},{"y":892.6000061035156,"x":297.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0fa59b40e03","y":856.6000061035156,"angle":4.71238898038469,"x":299.59999084472656},"group":"","props":{"zindex":29}},"16c0f9f1befc58":{"id":"16c0f9f1befc58","to":{"id":"16c0f9e497b275","y":509.60000228881836,"angle":1.5707963267948968,"x":117.59999084472656},"text":"=0","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":472.6000003814697,"x":299.59999084472656},{"y":472.6000003814697,"x":117.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9cc7543d1","y":435.5999984741211,"angle":4.71238898038469,"x":299.59999084472656},"group":"","props":{"zindex":11}},"16c0fa66f9630d":{"to":{"id":"16c0fa59b40e03","angle":1.5707963267948968,"y":786.6000061035156,"x":299.59999084472656},"id":"16c0fa66f9630d","linkerType":"broken","text":"是","lineStyle":{},"name":"linker","from":{"id":"16c0fa1d926afd","angle":4.71238898038469,"y":701.5999984741211,"x":299.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":744.1000022888184,"x":299.59999084472656},{"y":744.1000022888184,"x":299.59999084472656}],"group":"","props":{"zindex":23}},"16c0fa215b7e0c":{"id":"16c0fa215b7e0c","to":{"id":"16c0fa1d926afd","y":621.5999984741211,"angle":1.5707963267948966,"x":299.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":592.1000003814697,"x":299.59999084472656},{"y":592.1000003814697,"x":299.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9ec1ddc84","y":562.6000022888184,"angle":4.71238898038469,"x":299.59999084472656},"group":"","props":{"zindex":17}},"16c0fa1d926afd":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"判断指定分类商品总金额是否满足使用起点金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa1d927c05","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa1d92758b","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa1d927116","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa1d9274d7","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa1d9277d5","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa1d926afd","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"title":"菱形","category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":150,"angle":0,"h":80,"y":621.5999984741211,"zindex":16,"x":224.59999084472656}},"16c0fa4e28fd83":{"id":"16c0fa4e28fd83","to":{"id":"16c0fa4bbcde7a","y":621.5999984741211,"angle":1.5707963267948966,"x":464.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":592.1000003814697,"x":464.59999084472656},{"y":592.1000003814697,"x":464.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9ee7f203e","y":562.6000022888184,"angle":4.71238898038469,"x":464.59999084472656},"group":"","props":{"zindex":19}},"16c0f9f311f5b7":{"id":"16c0f9f311f5b7","to":{"id":"16c0f9ec1ddc84","y":512.6000022888184,"angle":1.5707963267948968,"x":299.59999084472656},"text":"=1","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":474.1000003814697,"x":299.59999084472656},{"y":474.1000003814697,"x":299.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9cc7543d1","y":435.5999984741211,"angle":4.71238898038469,"x":299.59999084472656},"group":"","props":{"zindex":12}},"16c0f9cb4eef47":{"to":{"id":"16c0f9c13c31e8","angle":1.5707963267948968,"y":254.5999984741211,"x":299.59999084472656},"id":"16c0f9cb4eef47","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0f99a09721f","angle":4.71238898038469,"y":212.5999984741211,"x":299.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":233.5999984741211,"x":299.59999084472656},{"y":233.5999984741211,"x":299.59999084472656}],"group":"","props":{"zindex":5}},"16c0fa93dc2092":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"获取积分使用规则"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0fa93dc32d","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0fa93dc378","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0fa93dc3839","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0fa93dc3271","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0fa93dc3c4d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0fa93dc2092","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":1038.6000366210938,"zindex":30,"x":255.59999084472656}},"16c0f9f3b8e634":{"id":"16c0f9f3b8e634","to":{"id":"16c0f9ee7f203e","y":512.6000022888184,"angle":1.5707963267948968,"x":464.59999084472656},"text":"=2","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":474.1000003814697,"x":299.59999084472656},{"y":474.1000003814697,"x":464.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f9cc7543d1","y":435.5999984741211,"angle":4.71238898038469,"x":299.59999084472656},"group":"","props":{"zindex":13}},"16c0fa706e9412":{"id":"16c0fa706e9412","to":{"id":"16c0fa5f734a33","y":845.5999755859375,"angle":4.71238898038469,"x":481.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":661.5999984741211,"x":227.59999084472656},{"y":875.5999755859375,"x":227.59999084472656},{"y":875.5999755859375,"x":481.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0fa0adbe54d","y":661.5999984741211,"angle":3.1415926535897936,"x":197.59999084472656},"group":"","props":{"zindex":25}}}}},"meta":{"id":"5d3318c1e4b02015bd8448eb","member":"5a210b2ee4b04f355d337104","exportTime":"2019-12-21 14:39:37","diagramInfo":{"category":"flow","title":"生成确认单流程","created":"2019-07-20 21:36:01","creator":"5a210b2ee4b04f355d337104","modified":"2019-07-21 18:53:12"},"type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git "a/document/pos/\350\264\255\347\211\251\345\212\237\350\203\275\346\265\201\347\250\213\345\233\276.pos" "b/document/pos/\350\264\255\347\211\251\345\212\237\350\203\275\346\265\201\347\250\213\345\233\276.pos"
deleted file mode 100644
index 61ea06ef..00000000
--- "a/document/pos/\350\264\255\347\211\251\345\212\237\350\203\275\346\265\201\347\250\213\345\233\276.pos"
+++ /dev/null
@@ -1 +0,0 @@
-{"diagram":{"image":{"height":414,"pngdata":"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vwGk6S1KEwThcGGVh94sBklERERERM/h5+eXBuCvnPeCIBx6soxKIAZJRERERET5IIqi1L0un5PMUjHFIImIiIiIKB/MzMwO5ry2srI6mNe6REREREREpYJKpdqvUqn2FXY56M0yKewCEBEREREVI7sEQRALuxD0ZgmFXYBSROHh4eEpimJ/APUBVCzsAtEruQ8gWBCEjX5+fusAaAu7QMUQz4mShefE87HOlyys83Ks3yVLqa/fDJIKhkKlUu0F0KmwC0JvxH5/f//PUAovIK+A50TJxnPCEOt8yVba6zzrd8lWKus3g6QC4OHhMVgUxdUuLrUwadIouLo6w9raqrCLRa8gNTUN4eFR8PZeisjI6xBFcXBAQMDawi5XccFzouThOZE31vmSh3X+Kdbvkof1m9ntCsSTpmdMmjQK7u6NeOEoAaytreDu3ggTJ44EAAiC0L+Qi1Ss8JwoeXhO5I11vuRhnX+K9bvkYf1mkFRQ6gOAq6tzYZeDXjO9f9MGhVmOYojnRAnFcyJXrPMlFOs8ANbvEqs0128GSQWjIgA+WSmBbGysc15ygOqL4TlRQvGcyBXrfAnFOg+A9bvEKs31m0ESERERERGRHgZJREREREREehgkERERERER6WGQREREREREpIdBEhERERERkR4GSURERERERHoYJBEREREREelhkERERERERKSHQRIREREREZEeBklERERERER6GCQRUYlx4MARJCc/znMdb++lSEpKNvpZfPxdo8vDw6MNlgUEBEIUxRcvJIATJ85Co9EYLI+JuYN167bKls2cuRAZGZlG9xMSEpHncXx9/ZCdrTZYfu1aKL7+eixu3owx+vnjxyl57peIiKikMynsAhARvaioqBsICYlAp07tAABbtuxG27bvY//+o+jQoU2e2165EoQyZezwxx97cOjQP7CwMJM+Cw2NxMqV81C/vqtsG2/vJTAxUcqWhYREwsdnPurVqyNbvn79Npw6dQ6mpk8vr/Hxd1Gpkj0UCgEAEBeXgAcPEtGjR2fZtidOnEHNmtVly2Jj42BhYQ4AePQoCba2NlAqdWWZN2+ZrFwREdGoU6e27O9ZvXoB3NxcAACbN+9CSkoqTp06hzVrFsLKygqjR3+PjIwMaRtRFHHrVix27FgDOzvbvL5KIiKiEotBEhEVO87ONTFjxgK0adMSVlZWCAwM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","width":841,"y":-30,"x":-30},"elements":{"page":{"gridSize":15,"showGrid":true,"orientation":"portrait","height":1000,"backgroundColor":"transparent","width":1050,"padding":20},"theme":{"linker":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}},"name":"colorful_yellow","shape":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fillStyle":{"color":"255,255,237","type":"solid"},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}}},"elements":{"16c0d372c033ee":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"选择购物车中商品去结算"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d372c03726","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d372c035be","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d372c03c3c","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d372c03323","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d372c03c6","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d372c033ee","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":60,"y":54.599998474121094,"zindex":4,"x":435.2666575113932}},"16c0d3983516c6":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"选择收货地址"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d3983527c9","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d3983520df","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d398352b6c","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d398352159","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d3983525a","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d3983516c6","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":60,"y":146.5999984741211,"zindex":10,"x":621.5999908447266}},"16c0d3c09cc4d4":{"id":"16c0d3c09cc4d4","to":{"id":"16c0d3a53662ca","y":176.59999847412107,"angle":3.141592653589793,"x":172.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":176.5999984741211,"x":210.5166575113932},{"y":176.59999847412107,"x":210.5166575113932}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d39d450c39","y":176.5999984741211,"angle":0,"x":248.93332417805988},"group":"","props":{"zindex":20}},"16c0d36397e3e5":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"会员选择商品规格"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d36397e4d9","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d36397ef25","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d36397e9f8","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d36397eb46","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d36397e2fc","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d36397e3e5","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":54.599998474121094,"h":60,"angle":0,"x":52.09999084472656,"zindex":1}},"16c0d3bb72b1dc":{"id":"16c0d3bb72b1dc","to":{"id":"16c0d387d43151","y":84.5999984741211,"angle":0,"x":621.5999908447266},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":84.5999984741211,"x":588.4333241780598},{"y":84.5999984741211,"x":588.4333241780598}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d372c033ee","y":84.5999984741211,"angle":3.141592653589793,"x":555.2666575113932},"group":"","props":{"zindex":16}},"16c0d3bf33349f":{"id":"16c0d3bf33349f","to":{"id":"16c0d3983516c6","y":146.5999984741211,"angle":1.5707963267948968,"x":681.5999908447266},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":130.5999984741211,"x":681.5999908447266},{"y":130.5999984741211,"x":681.5999908447266}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d387d43151","y":114.5999984741211,"angle":4.71238898038469,"x":681.5999908447266},"group":"","props":{"zindex":17}},"16c0d3a7233a2e":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"支付订单"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d3a72338c5","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d3a723328f","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d3a72335c8","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d3a7233c65","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d3a7233752","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d3a7233a2e","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":254.5999984741211,"h":60,"angle":0,"x":52.09999084472656,"zindex":14}},"16c0d3bf9bdd59":{"to":{"id":"16c0d39b5625ef","angle":3.141592653589793,"y":176.5999984741211,"x":557.5999908447266},"id":"16c0d3bf9bdd59","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0d3983516c6","angle":0,"y":176.5999984741211,"x":621.5999908447266},"dataAttributes":[],"locked":false,"points":[{"y":176.5999984741211,"x":589.5999908447266},{"y":176.5999984741211,"x":589.5999908447266}],"group":"","props":{"zindex":18}},"16c0d3a900429f":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"查看订单"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d3a9004f13","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d3a90045a8","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d3a9004bcb","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d3a90048ba","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d3a900491","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d3a900429f","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":60,"y":254.5999984741211,"zindex":15,"x":252.59999084472656}},"16c0d3c193cf4d":{"to":{"id":"16c0d3a900429f","angle":0,"y":284.5999984741211,"x":252.59999084472656},"id":"16c0d3c193cf4d","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0d3a7233a2e","angle":3.141592653589793,"y":284.5999984741211,"x":172.09999084472656},"dataAttributes":[],"locked":false,"points":[{"y":284.5999984741211,"x":212.34999084472656},{"y":284.5999984741211,"x":212.34999084472656}],"group":"","props":{"zindex":22}},"16c0d39b5625ef":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"选择优惠券"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d39b562da1","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d39b562897","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d39b56289d","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d39b56298a","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d39b562f88","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d39b5625ef","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":146.5999984741211,"h":60,"angle":0,"x":437.59999084472656,"zindex":11}},"16c0d3c1153c2d":{"id":"16c0d3c1153c2d","to":{"id":"16c0d3a7233a2e","y":254.5999984741211,"angle":1.5707963267948968,"x":112.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":230.5999984741211,"x":112.09999084472656},{"y":230.5999984741211,"x":112.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d3a53662ca","y":206.5999984741211,"angle":4.71238898038469,"x":112.09999084472656},"group":"","props":{"zindex":21}},"16c0d3c0253ff6":{"id":"16c0d3c0253ff6","to":{"id":"16c0d39d450c39","y":176.5999984741211,"angle":3.141592653589793,"x":368.9333241780599},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":176.5999984741211,"x":403.2666575113932},{"y":176.5999984741211,"x":403.2666575113932}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d39b5625ef","y":176.5999984741211,"angle":0,"x":437.59999084472656},"group":"","props":{"zindex":19}},"16c0d38558af2e":{"to":{"id":"16c0d372c033ee","angle":0,"y":84.5999984741211,"x":435.2666575113932},"id":"16c0d38558af2e","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0d36e4b72e9","angle":3.141592653589793,"y":84.5999984741211,"x":368.9333241780599},"dataAttributes":[],"locked":false,"points":[{"y":84.5999984741211,"x":402.09999084472656},{"y":84.5999984741211,"x":402.09999084472656}],"group":"","props":{"zindex":5}},"16c0d3a53662ca":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"提交订单"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d3a5366da5","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d3a5366df7","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d3a5366b7c","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d3a53660db","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d3a5366a67","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d3a53662ca","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":146.5999984741211,"h":60,"angle":0,"x":52.09999084472656,"zindex":13}},"16c0d387d43151":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"查看确认单"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d387d436b4","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d387d43c0f","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d387d43623","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d387d4306b","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d387d4361a","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d387d43151","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":120,"y":54.599998474121094,"h":60,"angle":0,"x":621.5999908447266,"zindex":6}},"16c0d36e4b72e9":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"加入购物车"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d36e4b7b27","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d36e4b73fa","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d36e4b73fa","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d36e4b73f9","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d36e4b796e","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d36e4b72e9","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":60,"y":54.599998474121094,"zindex":2,"x":248.93332417805988}},"16c0d39d450c39":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"选择是否使用积分抵扣"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0d39d450ca7","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0d39d45043f","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0d39d450678","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0d39d4504b9","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0d39d450c4","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0d39d450c39","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":120,"angle":0,"h":60,"y":146.5999984741211,"zindex":12,"x":248.93332417805988}},"16c0d371d7aba7":{"id":"16c0d371d7aba7","to":{"id":"16c0d36e4b72e9","y":84.5999984741211,"angle":0,"x":248.93332417805988},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":84.5999984741211,"x":210.5166575113932},{"y":84.5999984741211,"x":210.5166575113932}],"locked":false,"dataAttributes":[],"from":{"id":"16c0d36397e3e5","y":84.5999984741211,"angle":3.141592653589793,"x":172.09999084472656},"group":"","props":{"zindex":3}}}}},"meta":{"id":"5d327c66e4b02015bd83e45d","member":"5a210b2ee4b04f355d337104","exportTime":"2019-12-21 14:39:26","diagramInfo":{"category":"flow","title":"购物功能流程图","created":"2019-07-20 10:28:54","creator":"5a210b2ee4b04f355d337104","modified":"2019-07-20 10:42:38"},"type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git "a/document/pos/\350\264\255\347\211\251\350\275\246\344\274\230\346\203\240\350\256\241\347\256\227\346\265\201\347\250\213.pos" "b/document/pos/\350\264\255\347\211\251\350\275\246\344\274\230\346\203\240\350\256\241\347\256\227\346\265\201\347\250\213.pos"
deleted file mode 100644
index 5ecc9fb5..00000000
--- "a/document/pos/\350\264\255\347\211\251\350\275\246\344\274\230\346\203\240\350\256\241\347\256\227\346\265\201\347\250\213.pos"
+++ /dev/null
@@ -1 +0,0 @@
-{"diagram":{"image":{"height":1254,"pngdata":"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N/e4brmluzZu/F69e99a6TkqW/q5tNTpsz1lykw1b95MkuR0lkqSateupdq1ayk397j++9/vNGnSOH3wweqLfYsAAOAcCDgALKNNm5a66qp2kqQaNcI0evRE775ataJUv35dde7cocJxLtfPiwU0btxQU6ZM8Nn/5JO+K6uNHv0P73txunbtooceesK7KIHb7dZvftNJkjR9+qSLcFcAAOB8MDkcwEXjcDhMSYqP/8LfpZyXvXv3Kyamib/LuOi6dPGMUiUkJPBdDwAIGDyDAyDgWTHcAAAQqAg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AAAAACyDgAMAAADAMgg4AC6mI5KUn1/g7zoCXl5eftnHI/6sAwCA6kbAAXAxJUpSSkqav+sIeOX+Dnb4sw4AAKqb3d8FALCOxo0bB0nqk5iYotjYGEVGRigkJMTfZQWUvLx8bd+epOnTX1FOTq5M05ySnZ292d91AQBQXQx/FwDAUmwOh2OFpN7+LgSSpFUJCQl9JZn+LgQAgOrCCA6Ai8nMysp6t2HDhhmGYdSSFCEp3N9FBZgjkn4wTXPK5s2bJ4hwAwAAAAQ2h8NhOhwOggEAAL9CLDIAAAAAwDIIOAAAAAAsg4ADAAAAwDIIOAAAAAAsg4ADAAAAwDIIOAAAAAAsg4ADAAAAwDIIOAAAAAAsg4ADAAAAwDIIOAAAAAAsg4CD/8fenYdFWbZtAD/vGTZBxA033AX31Bkwy0yp1zazXHLtyzVFxV1MTa3eejXFNTfMJVMzTc1KzczccC21mUHcFVAURBQQkEVgZu7vD5zJiUVUZGA4f8fBIXM/2zUPA8419/VcDxERERGRzWCCQ0RERERENoMJDhERERER2QwmOEREREREZDOY4BARERERkc1ggkNERERERDaDCQ4REREREdkMJjhERERERGQzmOAQEREREZHNYIJDREREREQ2gwkOERERERHZDCY4RERERERkM5jgEBERERGRzWCCQ0RERERENoMJDhERERER2QwmOEREREREZDOY4BARERERkc1ggkNERERERDaDCQ4REREREdkMYe0AiIisqUWLFjXt7Oym/2t42IN/Vzw8qNfrZ4SGhkYVTWRERET0JJjgEFGp1rNnT2VYWFi0EKJqfutJKWM9PT09tm7daiiq2IiIiOjxKa0dABGRNZ0/f156eHg0AODziFW/279//69FERMRERE9OV6DQ0SlntFo3FaA1QqyDhEREVkZExwiKvUUCsUhKWVCPqvEu7m5HSqygIiIiOiJMcEholJPo9FkCSG257PK9uDgYH2RBURERERPjAkOEREAIUSeJWgKhYLlaURERCUEExwiIgBJSUn7ACTnsig5MTFxf1HHQ0RERE+GCQ4REYCwsLAMKWVuXdJ2hoWFZRR5QERERPREmOAQET2QR5kay9OIiIhKECY4REQPCCF+B5D20FCaEGKPteIhIiKix8cEh4joAY1GkwZgt+mxEOK3B2NERERUQjDBISJ6iJTSXJJWwBuAEhERUTHCBIeI6CEODg67TN87Ozvvym9dIiIiIiKiYk+tVu9Uq9U7rB0HERERPT47awdARFQMbRNCSGsHQURERI9PWDsAIqLiolmzZmWdnJzmSimHSynPZWZmvnDu3LkUa8dFREREBccEh4gIgEqlelcIsRRArYeGbwAYqdVqd1opLCIiInpMSmsHQERkTS1btvTw8PBYK4T4AoBb06YNMWLEQNy5E487d+LdAPStXr16iypVqhyLjY29Z+14iYiIKH9McIioVOrZs6fS0dFxlEKh+AlAK2fnMhg3bhimTx+PJk280LXrWyhf3g0hIWeRlaVvolAohlavXv1eu3btNOfPn+f1OURERMUUS9SIqNRp1apVK4VCsRJAawB49dV2mDjRH1WruudYNzb2DubOXYaDB4+Zhk4ZjUa/kJCQkKKLmIiIiAqKCQ4RlRrNmjUr6+Dg8F8hxDgAyqpV3TF58mh06PDiI7cNDj6OOXOWIjb2DgAYpJRfGQyGz0JDQ1OfddxERERUcExwiKhUUKvVnQEsA1BboVCgb99uGD58AJydyxR4H2lp6fj663XYtOlnGI1GALguhPDXaDS8ISgREVExwQSHiGyaSqWqoVAoFkkpewBAkyZemD59Aho39nzifV64cAUzZizAxYthAAAhxI9Go3GsTqe7WThRExER0ZNikwEiskk9e/ZUOjk5+QshfgGgeriJgLt7pafat7t7JXTt+hbc3Mo9aEKQ1VQIMbRGjRrJ7dq107IJARER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REREDoMJDhEREREROQwmOERERERE5DCY4BARERERkcNggkNERERERA7D1doBEBERkeOIiBho7RCIyMlxBMf+ZANAUZHK2nE4vcLCIv2f2daMg4jIFoiiGG3tGMiQKIonrR0DkTVwBMf+XADQOyEhCd2732ftWJxaQkKS/s/z1oyDiMgWxMTE9LN2DHVBLpeLAKBUKgVrx0JEtcMRHDsjCMJWAFixYi2UytjyowhkIYWFRVAqY/Hee/8FAIiiuNXKIRERERHRbbw6YX9kcrl8D4Bh1g6EAAD7lErlCACitQOxBforn2RbeCWaqPo4gkNk/ziCY3+0SqVyhCiK0wEcBe//sIZsAEdFUZyuVCpHgsmNhDX4toc1+EREREQWIJfLRV7tJ1vF7yeR8+LxT2T/OIJDREREREQOgwkOERERERE5DCY4RERERETkMJjgEBERERGRw2CCQ0REREREDoMJDhEREREROQwmOERERERE5DCY4BARERERkcNggkNERERERA6DCQ4RERERETkMJjhEREREROQwmOAQEREREZHDYIJDREREREQOgwkOERERERE5DCY4RERERETkMJjgEBERERGRw2CCQ0REREREDoMJDhEREREROQwmOERERERE5DCY4BARERERkcNggkNERERERA6DCQ4RERERETkMJjhEREREROQwmOAQEREREZHDYIJDREREREQOgwkOERERERE5DCY4RERERETkMJjgEBERERGRw2CCQ0REREREDoMJDhEREREROQwmOERERERE5DCY4BARERERkcNggkNERERERA6DCQ4RERERETkMJjhEREREROQwmOAQEREREZHDYIJDREREREQOgwkOERERERE5DFdrB0COr0uXLi1cXV1fNzVPLpf/r/xrtVq9LDY2NtUykRERERGRo2GCQ/UuLCwsIzExcaQgCE1NzH5G/4coillhYWFzY2NjLRgdERERETkSwdoBkHOIiIhYL4riLHPLiKK4PiYmZo6lYiKqjFwuFwFAqVTy30giBxYaGuoREBAQUH6aRqPJAAAXF5dm5afn5ubmJiYmllgyPiKqHY7gkEVotdpdgiCYTXAA7LJIMERERAACAgICNBpNOkxc8NUnOrdpAwICggFkWiw4Iqo1Nhkgi5DJZEdFUbxhZpEcf3//oxYLiIiInN7ff/+dCeBYNRb97fayRGQHOIJDFqFQKMrkcvkeAFMrWWRPdHS02pIxEQFsgkHk7ERR3CUIQp8qFvvWIsEQUZ1ggkMWIwjCLlEUTSY4MpmM5WlkFWyCQeTctFrtbhcXlzXmltFoNN9ZKh4iunssUSOLuXnz5iEA+SZm5efl5R22dDxEALBz506NTCarzsnL7p07d2rqPSAisqgzZ86kAfjLzCJ/3l6GiOwEExyymMTExBJRFPebmLWPnWnImrRabXVGEDnKSOSgBEGo9Pg2N4+IbBMTHLKoSn4o+ONBVsUmGETOraysrNLfobKyst2WjIWI7h4THLIoQRAOAFCVm6QSBOFna8VDBOiaYAiCsMfMImyCQeTAYmNjLwGIMTFLeXseEdkRJjhkUQqFQgXgJ/1rQRB+vD2NyKrMlaGwCQaRU2CFAZGDYIJDFieKovSDUc17H4jqHZtgEDk3Uxc5eHGDyD4xwSGLc3d3/0H/t7e39w/mliWyFDbBIHJuCoUiDsAF/WtBEM6fOnUq3oohEVEtMcEhiztx4kQ+gP0A9h0/frzA2vEQ6bEJBpFzY4UBkWNggkPWsoutN8nWsAkGkdOTfpf4G0VkvwRrB+AkZBEREdNEUfw3gE4AGlk7ILIp2QAuCIKwVaFQbAGgtXZAzkwul38LYDQACILwrUKhGGvlkIjIcgS5XH4RgKhUKtsDEK0dEBHVHEdw6p9MLpfvEUVxI4DeYHJDxhoB6C2K4ka5XP49eFxaFUtUiJyaiDsVBkxuiOwUR3DqWURExHRRFDeGhoZg0aJ5aN++LXx8vK0dFtmQoiIVEhKSsGLFWiQmXoIoitNjYmI2WzsuZxUZGdmgrKzsJgB4eXk14H1iZKdYOUCWxEoEsilMcOqZXC4/CqD3pk0fonv3+6wdDtkwpTIWM2YsAICjSqWyr5XDcWpyuXwfdCUqw60dC1EtyORy+R4Aw6wdCDmlfUqlciSY5JAVuVo7ACfQCQDat29r7TjIxpX7joRbMw4CoCtRYXkK2aXbIzfDWDlAllKhEuGJ7t27T2UlAlkTE5z61wgAf1yoSr6+Pvo/66qUhCUqd0EURcjl8s+sHYcdYYmKjbh9zGPRonmsHCCL8PHxRvfu92HhwmcxY8YCCILwbwBMcMhqeDMzkWNicwuyNDbLsB2sHCCrYCUC2QqO4BA5IJaokKWxRMWmsHKgFk6dOo377+8mvf7rLwV69OgGFxcXK0ZlX+qhEoGoVniFjcgBVSxR4YkO1bfyJSoA9CUqRHZBo9Fg0aJlKCgolKatWLEGqanpVoyKiGqLCQ6RY2KJClkFS1TIHpWWliEoqAn8/HylaaIIBAU1sWJURFRbTHCIHBNLVMgqWKJC9qiwsAgNG/obTFOpVCgpKbNSRER0N5jgEBERkVPLybmBRo0CpddarRZubm7IyMi0YlREVFtMcIiIiMipXb2ahgYN/KTXWVnX0alTe1y+nGLFqIiotpjgEBERkVP755+L8PdvgG3bvgUAJCQkIywsFNeuZVs5MiKqDSY4RERE5NQSEpIwZcrTiI9PxOHDv+HkSSV69OgGlaoYKpXK2uERUQ0xwSEiIiKndeVKKsLCQuHi4oIJE0bj0qWriItLRNeu4ejT5yHs3LnP2iESUQ0xwSEiIiKntW/fL5g8+SkAQMeO7QCImDp1HARBQIcO7aBUnkVm5jXrBklENcIEh4iIiJzS+fNxePBBOfz9GwAA/vjjb7i7u+ORRyKlZWbOnIjnnlvMh34S2REmOERk0qlTpw1e//WXAhqNxkrREBHVPa1WxP33dwMAnDihgFqtwaRJTxksEx7eAePGjcS5c3HWCJGIaoEJDhEZ0Wg0WLRoGQoKCqVpK1ascYormFeupFo7hFozF7s9fy6i+nLffR0BAKIoomPH9ujd+0GTyz355OMYPLi/JUMjorvABIeIjJSWliEoqAn8/HylaaIIBAU1sWJU9e/ECSWefXaRVbZ99WoaDh/+DcOHT6rV+uZit+bnIrIHgiAYPAeHiOwbExw7wFIh26XVavHxxxtQVqa2dih1qrCwCA0b+htMU6lUKCkps1JElhEZKYevr0+dvNc//1ys0fKtWgXj0Ud7wcfHq1bbMxd7XX4uIiIiW8cEx8Y5c6mQPZDJZFAqY+Hm5ipN++mnw1Cpiq0Y1d3LybmBRo0CpddarRZubm7IyMi0YlT2Izv7Btav/8zaYRARETkl16oXIWuyt1Kh2NgLeP31Fdi79wtrh1IrVcV//nw8Vq5cZ5DQXLqUgpkzFxgsp1Zr8MQTg+o11vp09WqaQblGVtZ1dOrUHpcvpyAsLFSafvz4Sbz77hpMn/4vqNVqXLqUggkTnkRwcBCuXk3DrFkvY8aMiTh48Cj69XsYCkUsVqx4Hb/8Eo2CgkL4+vpg//6D6NSpPWbPnmI2JnPbSkvLwO+/n8TWrTvx3/++i9jYC/juux+xbNkiBAc3g0pVjM8/34F27drg4sVkTJ78FLy9vQEABQWF2LTpS7Ro0QyA7pgDdN2VXn11ufRdUCjO4K23VmLv3q0AgFu3SvDFF9+gTZvWSE6+gv79H0FoaAjS0jKRnHwZly9fxW+//QVXV1c89ND9tf5/ER+fBIXiDFq0aI6cnBvQaLQYM2aY2dirmqdSFWPXrv0IDAxAcvJlDB06AG3b3lvlfiQiIrIHHMGxcfZWKtSlS6dal9jcjZqWA1WmqvjDw8OMOuyUl59fiMjICLtObgDd/vT3b4Bt274FACQkJCMsLBTXrmUbLPfwww9AJpOhT5+eGDPmCUyaNBarV28AoCu58vLyxMiRQ5CVdR1jxw7H1au6G903b96OUaOG4rHH+mH16mVo0qRRlTGZ21ZwcDM8/fQIuLu7Iy4uEcOHP4ZFi55D48b3AACior7AY4/1w4ABvTF4cH9ERW2V3nft2s0YNKgPxo4djrFjh8PFxQWArnNS+e9CRERX+Ph4S6/Xr/8MDz/8AAYM6I2uXcNx6NCx27EEoVevB+Hj441evR68q+QGAI4d+xORkXL07v0gRo0ait2791cZe1Xz1q//DI8/PhCPPz4AkyePw0cfRVVrPxLZCzbVqDvcl2SPmODYOJYKVc3S5UC9ekVi7drl2LBhFTZsWIU2bVpJf3/9dRSmTRtv9yWECQlJmDLlacTHJ+Lw4d9w8qQSPXp0g0pVDJVKZbCsj48XAgJ0SXjTpo2RmpohzXN3d4MgCHB3dwOg61QEACNHDsG0afOxbdu3uH49B6NHD6tWXOa2BQCCAAwa1AcAEBbWFu7u7gAApTIWbdq0BgCEhLSCUhkrrXP69DmEh3eQXru4VO+fxVOnziA8PAyA7h6XWbMmV2u9mpoxYyKysq7j++9/wsGDR1FSUirNMxe7uXlK5VnExp5HdPRxKJVn0LbtvQbbrGw/EtkDazfVOHv2H2zfvhtHjhzHkiUroNVqq1zHXJORu21AcjesvS+JaoslajbOFkuFAFRrvbS0TLz11geYM2cqunXrXGXJT222Z64cyFxZUmXlRebiLywswiuvvA212rChQHLyVYMStYKCQmRn52LHjg0IDGxY5WezNVeupCIsLBQuLi6YMGE0jh8/ibi4RLz00hx4enpg5859mDz56UrXFwShym2MHz8KI0YMxq+//oZFi5ahT5+HMGXKuBrHWnFb7u5ukMmMExRzMemTr5qyVKOPtWs3ITy8A0aOHAIA2LJluzTPXOzm5pWVlaFv34el1+X/1q9raj8S2YO6bhbSsWO7Gq2zZs1GREWtgkwm4MaNXGi12iqPp1atgtGqVTA2bdpWo3n1jQ1KyF7xF8zG2WKpUHXXO3Lkd7z33lJ069YZQNUlP7XZnrlyIHNlSZWVF5mL39fXBytWLEFU1Eps2LAKUVEr0bChPwYP7ieN6Lz99kL861+jcfDgN3aZ3ADAvn2/YPJkXRme7oddxNSp4yAIAjp0aAel8iwyM69Jy5eUlElJX1LSZXToEGrqbSX5+YXYtWs/vL29MGzYIGzcuAoHDhypVmw13ZZep05hyMq6DgBIT89Cp05h0rx7720lfZ4bN/KQn3+noYcgCNBqdaNOWVnXUVBQJM0LCwvFxYvJ0uvo6D8MtimT6UrCNBoN4uJqX0L5++8n0b//IwbT8vMLqozd3LxOndobPLTwjz/+rnV8RI6qttUBRUUqyGS6iyqjRw+DqyuvJRNZGo86G5eQkIQ1a97Bm29+gMOHf4NSGYuBA/vgxAklVCqVNCIB3F2p0IABvTFwYJ9qlwpVtd7u3T/g3Lk4TJw45q4+f3W3Z4pSGYsXXngGgHFZ0qlTZ6R5kZFyREbKqxV/gwa6Zg+iKGLFirV44AE5Hn20F/bu/Rn9+z+CDRu2Slfa7dH583F48EE5/P0bANCd+Lq7u+ORRyKlZWbOnIjnnluMDz98Cy1aNIcgAPv3H4SLiwvi4i5i3rz/AwCkpWXgxo08xMcnIjf3JuLjE3HjRh5u3ryJtWs34+bNAoSEtEJOzg1Mmza+WvFVtq3MzGs4fz4e16/n4NChY2jXrg1at24hrTd37lTs3LlPGrGbO3eaNG/+/Jn49NOvERLSCm5urmjevKl01Xbs2OF444330LbtvbjnnkA0b94U58/HIzw8DM8/PwObN29Hy5bNIYoiIiK6GsQ6ZEh/rF69EcHBzTB8+GNVfrbk5Cu4dOkqsrNv4PDh3xAS0gpt2rTGuHEjsWHDVrRs2RyCIMDPzw9HjhzHiBGDzcZe1bxPPvkUZ8/+AwAYOLBPtfYjOSY2C6mbZiGpqem4dOkqCguL8NtvfwEAevbsARcXl7uqYKiN6uxLU41GAPMNSojsBRMcG2bLpULm1isqUiEsrC3i45Nw8mQMHnige/U/dB3Gae7zmysvqip+lUqF1as34ty5eLz66nMAdKMSv/76O15//UXpyp090mpF3H9/NwDAiRMKqNUao6YK4eEdMG7cSJw7F4cWLZrD3d1NSurKN1cIDm6Gn3/eAQA4cOBrAJBeR0d/V6v4KttWUFATBAU1waOP9jK5np+fr5RE9e3b02Beo0aBePnlOdLrESMGS3+PGjUUo0YNlV6X32ZgYEOD9SqqaXLfpk1rtGnT2ugzlN8+AIOnqZuL3dy8hg39sXjxfKMYqtqP5JjKVwAEBPgjK+s6Vq1aj/ffX2pQAbBt27cYO3Y4vvvuRwC6kfWvvvofZDIZBg7sI02v7bb0TS527NgjNbkICws1aBYyYsRgtGnTGm3b3ouoqK3Shaq1azdjxIjHpPvOdu7cB6B6zUIGDeqL8PAwnDihxKFDxxAaGoLg4CAEBwdh3bpP0avXg9Xajy1aNEeLFs1NrnM3FQy1UdW+XL/+M0ydOh6BgQ2Rn1+I1157B//977sAKt+XRPaEJWo2zFZLhapaz8fHG+HhHTB37lRs2LDV4J4VcyU/dxOnqXIgc2VJ5sqLKotfq9UiOvoP7N79I2bNmoLy+dPEiaNx8mQMEhISq/w8tuy++zoC0I1QdezYHr17m/5hf/LJxzF4cH+cPx+Ha9dyoFSerZPtR0cfN/lfSkp6nW/L0sx9NiJrY7OQ+m0WYi2V78vKG43Udl8S2RKO4NgoWy4V8vPzqXQ9fXnL+fNxCA/vgEaNAvHBB5/ghRdmwdPTw2zJT222p2eqHMhcWVJl5UXm4i8qKkJkpBx9+/aUfuCTki5DoYhFZGR3LF26AG+88T68vb3Ru/eD6Natc7XvabI1giAYNLeoTHh4Bxw+/G2dbbfize6GmtfptizN/Gcjsi1sFuIYKtuX5hqN1HZfEtkSJjg2ypZLhQRBqHS98PAwHDp05yR0xYrXDeabK/mpzfb0TJUDmStLqqy8yFz8np4e0t85Obm4ciUVv/76O6ZOHSfdRPrhh2/j4MGjuHIlxSAZJSKyZfoKAFdX12pXABw8GI3Ro4dh2LBBGDy4PyZOnFutBKem29LTj8o3bdq40mYhQUFNKm0WIpMJlTYLadeuDQDdaH7534vy1QEXLyajQ4eadVQrz1wclqZvNNK5s26k5o8//kbPnj0AmN+XRPaCCY6NqlgqVNnV9CeffBwADMp35PL77nr70dHHTU5v2zYELVs2v+v3t/b27lajRoHYs+dzBAYGGM3T37BNZA9EUazW1XpybGwWcvfNQvLzC/H33zFS/C1bBiMsrK0031wclTUZASpvQGJOVfuyskYjVe1LInvBX7V6JpfLRQBQKA5aOxSyAxERAwEASqXyro7N+vjeabVarFmzCXPnToObW/WvjaxcuQ4TJoxG8+ZNq1x28+btGDZsIJo2bYxPP/0Kjz3Wv1rr5ecXICUl3WypY0XnzsXB19cH997bssplExKS0b59G6P19Vc/Tdm+fTeGDn0UDRv6Vzum99//L2bNmmx0QaOsTI0DB37FQw/dX+HBvyJWrVqPZ5+dBi8vT2zb9i169XoQzZo1rXaZycsvv4UlS16UtpmYeMnomVA1VVffY6qd2hz/48c/g6++iqq3mKy1LbI8Hv9kCziCQ0TVIpPJoFTGGiQ3P/10GH369IS3t1el6507F1etJAUAjh79A1On6q4CHz/+NyZP1pW77N37MwYP7g93dzdcu5aN115bjsuXr0pXMS9evIQHH4zAO++8Vu0udu3bt8Xkyc/is8/WwMNDV3545sx5aDRao1HQFSvWwNXVxWDaP/8kYtu2Typto/zTT4cxbtzISrd/8OBR9O79oLRtQLev9InG5s3bERbWFjk5uUhNTUeDBn7IzLxmkODExJxFdnYOvLw8AejKa8aMeQK5uXn45JMteOKJx9CjRzdpeYUiFlFRnxvEER+fhJdeehMAoNFoERt7ARs3rpKe/0SOz5IVAPn5+XW6LUuzpWoDW4qFyNYwwSEik86fj8fKlesMEppLl1Iwc+YCg+XUao3BvVTXr+dIrUgBmLzBVX9yc+KEAmvWbJbap166lIJZs14CAFy8mCz9rVIVQxAEPPHEIDRp0gibNn2ImTMXYMOGVQCAmTMXoEWLZtLyAJCXl48pU8Zh6NBHodWKmD//dRQXF6O4+JaUkPn5+WLevNdQWKiCr6+uZWtQUBN069bZIFFycZFJ29KbPHme2WfEuLq6QiaTobCwCK+9thy3bt0CYPhkdLVajSFDHi23HRfk5xeitLQUf/55CuPHjzKbPP7002EsWDC73L4W4OnpAU/Pxpg1awpWrvzEIMHp1i0cq1a9hbS0DOlegvL7MSnpskE3JXIObBZSfbbULMSWYiGyNUxwHJgzlgZdunQVISGtKn2/rVt34sknHzd6/sD16zm4eTNfKs2JiTmL1q1bmLzHxlmEh4dh0qSn8NVXu03Oz88vxMCBfYwaRYwf/4xBfXhi4iWDpEgURVy4kICffvoakZER+PLLCGneRx9FGTzXQl+bb0p8fJLB+86ZMxV//nlKulF2yZIVUv27TCZgzZp3UFJSApXqFqKivsCiRfMAAKWlpdiy5Ss89dQIeHq6Gzw8907Mxts3Ne369Ry88srbcHPT3Tw9ffqLcHV1wcqVb8LX1wcAMHHiHINk6erVNCxd+h7c3d2QlHQZc+cuhFzepdLPrZeTcwOZmdcqLYFr1qwJBgwwvB/MxcXldlK3GCEhuuOv/H5MSEjGli0fV1nfT0REZMuY4DgwZywNevPND+Dh4S69Vqs1uHWrRLo6DwBeXp4YM+YJg/Wio4+jqEglJTgffRSFoUMfxbhxo6r1mRxVr16R6Nnzfun/0+TJ8wxOzkVRRGpqOlq0uFMOERLSymCZadPmmxz9aNDAF4DuBD85+Yo02qHvMpSUdBkXLybj+PGTmDTpKaORoLCwtgYjOIIgoKhIJc1PS8s0Go0YPnwSWrduAYUiFsnJlwEAt26VwsPDDUplLC5eTMaGDaukjkp6Wq3WaOTq8uWrRvurceN78Omnq6XPvWnTh0bLVNSqVTA++2yNtM6WLR8DAP7v/14wWC4/vxCJiZekY+Sbb/bh6tU07N79A/bu/Rm+vt5SspKcfAVt2rRGSUkp/Px8jB46WNk9VKIoMrkhIiK7xwTHgbA0SHeFesOGVcjNvYmAAH8cOnQM7u7u0gMrK56M6508GYP//GcRAEChOIP27dvC19cX165l2+2zbO5GYWERXnnlbYOHtAJAcvJVgxP9goJCZGfnYseODQgMbAiges/PKK9Vq2D88MNBXLp0Fe+/v1SaXlRUhHbt2uCHHw7hu+9+xPDhg6tsbuDj441r17Kh1WpNfkfatGmN9evfx+HDv6G4uBjDhg1CQkIyrl5NRZ8+PTF37kKD5EbfYWzQoL546qkR0ndTqxVx+PAx6e/KkvuiIhViYs7i/vu7GbQZN0cURVy9mgq1Wo3nnlsMmUyQRjIbNPBDeHh75OTkoWXL5ggKaoxx40ZK9/roj83yx6gp997bCuvWrTBYR/+3vn0vkT1hE5TqVTrk5NxAw4b+cHG5c+Hw3XdXY8GC2diy5Sv07v0QOnVqX+04iWwVf8UciDOXBlW0cOF/AIjSCeq2bTsBAKmpGdi/f5tB8nflSgqaNw+Cp6cHtFotvv76eyxZsgA+Pl5Yvnw1ZsyYiKCgJlVv1IH4+vpgxYol8PPzgSAIEEURCxf+B4MH98NLL82Gh4cHMjOv4dSp0xg2zLBETazO/6DbbtzIxZkzFzB+/CgsX74ahw4dw9atO+Hh4Y6EhGT83/+9AFEUsW/fL8jIuIZnn73TFrbi9xAAunTphEOHjuHWrRI8+mgvo+3JZDKkpWXiyJHjeO215wEA7du3QWzsBbz11kqj5V94YSlUKt2o0Pbtu/Dee0vRsWM7jB49FY0b34OdO/ciPT0LUVErERwcBAAoKSnB77+fRGbmNRw8eBRDhz4qPT3cnMzMa8jJycWuXfsxaFBfqFTF2LFjDWQyAbNnv4L169+Xlk1ISMKwYQOxd+8Bg/fQaqu37+PjE6V9p9+PJSWlKCwsQklJKRMcsjtsglK9SgdXV1fMm7cYK1YslhqaJCdfgbu7O5TKWMyaNRmiKOLkSSUiIyNAZK/4K+ZAnLk0qCI3N1d88skKo+kzZy4w+jx79/6Mv/+OAQDs2rUfM2b8W9pHc+dOxZtvrsQDD3TH448PREBA9Vv+2jv9PhBFEStWrMUDD8jx6KO9sHfvz+jf/xFs2LBVerBseZcuGY7yVEy09e8JAH5+rRCXPQAAIABJREFUfujX72GoVCqkp2dCq9Vi8+aP4OrqimeeeRmTJo3Fww8/YDK+it9DQJeYXb6cgqtXUzF27BtG6wiCAIXiDG7cyMP8+a9LsRQWFuHjj5dhyRLD70xhYZFUZjZt2ny0a6crYWzcuBE2bNAlRJMmzZOSm5s38zF79iuYNOlpBAU1Mbl/KrpyJRXLl69Gmzat4OvrgzFjnpD2T2UnQxUfXAsAN27kSaNolbl6NQ0ZGZl44YWZAICCgiIUFRVj6NABUKvVyM8vxOrVG/Hvf49lFyaqUwrFGSxfvhq7dm2pk/djE5TaVTr4+zfAgAG9UFx8C++9txZZWdm4eDEZM2cukC52iKKIkpIytGzZotrJH5GtYYLjQFgaZLgvKv7QmXL+fBx69OiOs2f/QUzMWTzwQHesWvU/LFz4LIKDm+HNN1fi+edn4JdfopGamu5UCQ4AqFQqrF69EefOxePVV58DoLsX5Ndff8frr79ocv9PmzYBEyY8We61caK9c+deALpE9MaNXGzZ8hWmTZuAxMRLcHV1hVYrws3NFQUFhSgrU5v8/mm1IpKSLuOffy4iO/sGjhw5joiILmjYsAFEMdigBENPFEUMH/4YfvzxkEFMM2cuQNOmjY2Wr/j59CMbLi53TorKH3b+/g2wbds6yGQyfPPNHqP3M6VVq2AsWjQPISGtMG3afABASkq62Q5tppR/Enl558/HITxcV6qSm5uHjIxraN26BYqLb6Fnzwfg6emBESMGQxAEXL+eAzc3V9y8WVCjbRPpVfZAyK5dw7Fy5Zt1th02QbmjupUOWVnX0aRJIzz55ONISrqMd955DQCwadOXmD79X/j66+8wduxwuLi4VOuCCZEtY4LjQJy9NEi/HUA38mNK+RIeURRx40YeevV6EFu2bEfXruGQyWTIy7uJ4OBmAICSklK0bXsvZs+eUp3d6jC0Wi2OHfsLqanpmDVrCubNe1WaN3HiaLz++grcd19HqdVweeWTm8qMHTscAJCenoXk5Mt48cXZSElJxZkz5wHg9n0rXdG1azi+++5HPPXUcGndrKzrWLz4Xfj6+iA+Pgm9ekVi794D6NfvYZSWliE+PgmFhUWIj08yeIo4cOcYEUVUKwGueExptVrIZDKzx5qpK8LmCIJg1Pnvr78U6NfvkRq9z7Fjf+LNN18ymFZWpsYHH6yTmhh06dIJGRnX0L37fRg//hl8+eX/UFJSil9+icbRo39ixoyJ2LTpS7z00pwabZsIALKzb2D9+s+wZs07RvNEESgtLavT7bEJik51Kx3Uag2ef/51vPfeEvzzz0W89dYqeHq6o7CwCCdPKlFYWIRff/1dim/RonlGDUqI7AUTHAfizKVBevofmcce64cRIwZLMerj/emnwwYxlf/HW79u+ZGw6tZLO5rc3DxERsrRt29P6TuTlHQZCkUsIiO7Y+nSBXjjjffh7e2N3r0fRLdunSttxqDVaisdbWvevKlUApGZeQ0BAf7QakV8992PeOWVZ9GggS8SEy/hzz9P4aGH7gcANG3aGEuXLkCrVsG331+UEtdPP/0Kc+dOhYeHB5599lWMHDkEI0YMlko+NBpd4tuiRTMsWfKiFMeOHXuk9yqvfCKUmHgJarUG7u4yg2MtJSW90s9dUXUvQpw6dRrLlr1a5XKiqLvP7Oefj2Do0AHS1d3iYt0zdzIyspCamg6VSgVvb2/s2PE9vLx0+yIwMAAymYCnnhoOjUaLLVu+Ql7eTQwY0BvHj5/EsGEDqxUrOZbz5+Pw6qvLsXfvFwB0pWVvvbUSe/duBQDculWCL774Bm3atEZy8hX07/8IQkNDkJaWieTky7h8+Sp+++0vuLq6SsdsenoWEhIS8eGHUdL76qlUxfj88x1o164NLl5MxuTJT8Hb2xunT5/D0qXvY/bsySgoKEJaWgZCQlph5MghbIJyW00rHYKDgxAR0QXXrmWjefMgfPDBUjRt2tioOYm+0Unr1lU3OCCyVUxwHIgzlwbp6VtEDxnyKF58cSkWL9aV/Fy7lo2zZ//BwIF9jFeqwM3NrcplHN099wRKf+fk5OLKlVT8+uvvmDp1nPT/4sMP38bBg0dx5UoKHnkkstL30mg0UKvVcHc3vV/T0jLw1VffITb2H7z99ivYvPlLTJs2XrqCOn/+DDz77Gs4ffo8Zs+eDABSclP+/Q8cOILBg/tLV2vXrl2O9es/Q0ZGlnSlVKvVAIBBcgMAo0YNxZYtX0GlKjaKfdMmXdvnjz6KkqaHhYVKV6krJucnTijw5Ze7UVBQaDD9l1+i8fXX30ujg+UpFGdw5MhxqNUaHD9+EqNHDzPYX2q12mSSqNWKOH36HDw8PAzuy+ncuQOee24x1GoNunbtjNLSMnh76+Lu3LkjAF279Oeff11ax9+/ARo3vgfdu9vf0+Wp7oSHd5DuOQGAiIiuBs8NW7/+Mwwa1Bfh4WE4cUKJQ4eOITQ0BMHBQQgODsK6dZ8aXfXXX8iIijJMbgAgKuoLjBgxGG3atEbbtvciKmorXnjhGXTr1hkA0KVLOIKDgyCKIiZPnoeRI4ewCcpttal0mDz5aRw6dAwPP/wA5s9fAlHUoqio2OAeHEB3wfSHH7ZX+u82ka1jguNAnL006PLlFHToEAqtVov33/8vRowYIp2oN2nSCCEhrTBnzkJMnDhWahtdcXupqel8DkgFjRoFYs+ez00+9LQ6CeOIEYONOvyUFxzcDJMnPw2ZTEBaWiamTBlnkFh7e3tjw4aV0Gg0JteXyQQsWjQPrVq1MOiW1KRJI7zxhmHJ1urVy0y+h7u7G6ZMeRoTJ46udHl97T0AfPzxnen69uJ6kZERaNEiGIDhd3XQoL5o06a1yQQnIqIr1GoNhg0biJKSUnTtGm4wv2fPHhBFLQDD/fjRR29DpSo2SkoWLpxn8nOWX64u74cg53Hq1BnpWIiMlCMyUn5X76dUxkrvFxLSCkplrDTPx8dLOjEXBAFlZXdK3NgEpfaVDqmp6fDy8oSLiwvWrfsAv/32FyIj5Zg+fQHWrXsPrq6umDlzAZMbsmtMcByYs5UGHTnyO8aMeQJffrkLkyc/DRcXFxw/fhI5ObkAdMP/b7+9EK+9ttwowSkr05U67N79IyZPfrpcHHdaTTszU8lNdVV8qKop+q5G5UeOynN1da20dbGLi4vJe4FMMXWDrp5MJjNq56xvo2q8rPnvQ8UTCj39g2RNMXeiqG9NW1GDBn6VxkhUHyq70FBbd/NvK5ug1KzSISUlHfHxibh2LdtgXklJKdat+wwFBQX4+edoDBnS32hbRPamZnfDkl3Rl+5UJi0tAytXrsMnn3yGvn0fNlkatHHjNqxf/7m0TlWlQY0b34O1a5cjISEJGRlZ0rK1KQ3asGEVNmxYhVGjhkrTw8JCpekPP3ynY1Re3k3I5V3g4eGOf/1rDFq2bI7mzZuioKAQgwff+cc6KKgJ/vvfdw22pdVqUVpaiuPHT2LAgN4GJ6cajUZKfoiInIEgCNJFp6ys6ygoKJLmhYWF4uLFZOl1dPQfBuvKZLoTd41Gg7i4i1Vuq1OnMGRlXQegqyzo1Knqh2FqtVpER/+B3bt/xKxZUwxO4idOHI2TJ2OQkJBoct2aVjpcuJCAF1+cjbZtW0tNAipWOpSXlXUd06e/aFDp0KhRIPr1exienp6Ij09CcvIVxMcnGW23YqWD/r/KmKp0MDVdLzi4GeLiEtGoke6CkiAIyM8vQIMGfuje/T707/8ImjRphF279le5j4hsHUdwHJgzlQY1bOiPhg2NWziXT27ufK6KD30TEBW1Et7eXkZX1RYunMdhepIUF9+Ch4d7jTulEdmTsWOH44033kPbtvfinnsC0bx5U5w/H4/w8DA8//wMbN68HS1bNocoioiI6Gqw7pAh/bF69UYEBzfD8OGPAdB15IqLu4jr13Nw6NAxdOzYXrqQNHfuVOzcuU9qWjB3ru4+lvPn43H9eg5iYs6ie/f7cPr0OVy/noMLFxLQtGkjNkFBzSsdZDIBgYEN4eXleXt9EUplLPr2fRg7duzBM89Mhru7G7p164yDB4+a3F9E9oIJjgNzxtKg2pDJBPj5+ZqcZ66kiOzT2rWbMGbME2jWrClUqmLs3fsznn56hNlSmZKSEnh4eODHHw/B19cHjz3WDwCQm3vT6Z6NRI5v1KihBiPn5Z8lExjYEC+/XHkb8YkTxxhN0zcgMHVjvZ+fL6ZN05Vglm+UER4ehkOHvpVed+vW2eC1Hpug1KwJSm5uHgIDQ6T1e/fW7fMxY4bBxcUF8fFJ2LVrPwIC+Awcsm/OfWOBBcjlchEAFIqD1g6F7EBEhK41r1KpvKtjk98700pKSjBv3mLpBlxA1xUqNDQEAwf2QWFhEWQywSghnzBhNnx9vY0efhcXl4ioqJUmH2zozOrqe0y142zH/40bubW+T/Dbb/fhyScfNzsqe/16jlTp0LFje6N7btRqNTQajfQ8nvI0Gg0uXkw2qnQwRd/O3RStVns7EbtzMVBfXma8bOUPwda9jwbu7m5ITLxk8iLe+fNxaNasaa33KY9/sgUcwSEip3HkyB8YPnwQFi9ejuvXcwAA2dm5+PNPBXbu3IuMjCz06KErcSnPzc3V6EZkAJg4cQ46dAi1SOxEZBqboFRctvK8Qvc+umSusgqF8PAOVYVKZPOY4BCR0zh06CiWL38Njz7aGx4eHkYnApVdCS4uvmXyZt8rV1KdvsMeERGRrWGCQ0ROIT4+CUeOHMe1a9lo0qQxZs9+5fazZXRKSkohiiL+978PjEpJfH19Kh3BISLL0t8TV18s8WgANiwhql9McIjIKezdewDh4WHSTb5RUR8YzNdqRaSkpJmsky8sLKp0BIfPSSKqW0VFKri7u5t8vgwAPPvsq5g+/V84c+YCZsyYaHD8abUiVq1aj2efnQYvL09s2/YtevV6EM2aNa12R8xXXnkbS5a8KJWAVXavChuWENkuJjhE5PBOnz6HkSOHIDn5CgDdzblz5y6Cp6eHdDKi0Wjh4uKClSvfMKptV6srf7ihWq2p9ESMiGrOw8Md//nPh5g2bQJat26BW7dK4Ol5Z8RGrdYgMjICZ8/GISUl3aBrWUzMWWRn50itkKOj/8CYMU8gNzcPn3yyBU888Rh69OgmLa9QxCIq6s6z3gDdaO9LL70JQPfvQmzsBWzcuArdunWWlikpKcHZs3GYN286AN3jB3Jz83Do0DGzDUumTp1v0LBE/8wZNiwhqlv8VSYih9e+fVuDkZkGDfywfPlitGzZ3GC5+PhEkzfujh37BMaPH4UbN/Lwxx9/4/HHB0AQBBw8eNTgqeFEdPdcXV0xYsQQnDlzHp6eHpg69Xm0aNFMmp+UdBkzZy6AWq3Brl37sXPnJvj6+gAAfvrpMBYsmC0tK5MJ8PT0gKdnY8yaNQUrV35ikOB06xaOVaveQlpahtQMYObMBVJJalLSZamNc3lsWEJk25jgEJHDM1V2tnjxu/D0NOxKdOnSVezbt83ganFKSjrGjx+FOXMW4eOP/4PExEvYseN7jBs3CgMH9sGJE0r06NG9Xp7RROSs5PL70LVrJ5w8GYMmTRpJSUFpaRnmzFmIqKiVRqVgOTk3kJl5zeRDnwGgWbMmGDCgj8E0FxcX+Pn5Yt68xQgJaQlAN4KjL0lNSEjGli0fo02b1gbrsWEJkW1jgkNETsnPzweffGL4ELyZMxcYJDelpaX49tt9eOGFZ1BYWAR3dzdMmfI0iopUAIDo6OPw8vLCokX/wfvvL7Vo/ESO7tSp0+jQoR1EUcQbb3yA1NR0ALoRHo1Gg7S0TPzzz0UMHqy7j+Wbb/bh6tU07N79A/bu/Rm+vt5SspKcfAVt2rRGSUkp/Px80KvXgwbbqqzMVBRFo+SGDUuIbB8THCJySqaupJaVqQ1eL1v2EUJCWgEA1OoyAEDDhv5o2NAfeXk38dtvJ7BkyYvYvfsHywRN5EQuX05FZGQEZDIZXnzxGTRo4IeyMjVeffUd3LpVgkOHjiE9PRODB/dDenoWWrZsjqCgxhg3biTGjRsJ4E65WfmyM1PuvbcV1q1bYbCO/m+1Wm3wnBs2LCGyfUxwiMhpaDR3mgU0bx6EZcsWGcx/4w3DE5Xnn58hlZlERkbguecWSycgWq0W99/fFQDw3ntL6jNsIqeTl3cTZWVlKC0thaenB+bMWQQfHy9kZGThgQfkyM29iaNH/8CaNe8AABISkjBs2EDs3XvA4H20WrFa24uPT5QSD/2oT0lJKQoLi1BSUiolOGxYQmQfeCQRkdNYvPgF6e+KyQ0AvPXWywavyz+5/PnnZ9RfYEQkuXAhAe+88zGWLl2AjIxraNKkEdzc3LBmzTuYOXMB2rVrg50796J374ek+2369u1p9D76TmXmXL2ahoyMTLzwwkwAQEFBEYqKijF06ACo1Wrk5xdi9eqN+Pe/x6Jly+ZsWEJkJ5jgEJHTaN26hbVDIKIqdOrUHh4e7ggNvRcHDx5Ft26dER39hzS/S5dO2L59N779djNEUYRWqxsxqeiPP/5Gz549jKafPx+H8PAOAIDc3DxkZFxD69YtUFx8Cz17PgBPTw+MGDEYgiDg+vUcuLm54ubNAgBsWEJkL3i5gIiIiGxKTk4uysrUOHFCib59H0Zm5jXMnLkA2dm5+OGHgygsLMKtW7eQnHwFWVnZJt/j2LE/MWiQYde0sjI1PvhgnfS6S5dO8PT0RPfu92Ht2k1o2NAfJSWl+OWXaLz22nIUFhbhgw/WmRyN0fPz0zUOKP9fSEgrkw1LABg0LNE3O4iOPg4AWLToP7XbYURkgCM4REREZFPCw8OQmpqOZs2aIiDAH2PHDseYMcPwzTd7ceVKCl5+eQ7eemsVeva8H4MG9ZXWE0URoiji55+PYOjQAdKDNouLbwEAMjKykJqaDpVKBW9vb+zY8T28vHSjMoGBAZDJBDz11HBoNFps2fIV8vJuYsCA3jh+/CSGDRtoMlY2LCGyPUxwiIiIyKYsW/YqvvjiG0ybNh4AMGbMMERHH4eHhztefnkuACA7+wZWr96IPn16wu/2AItWK+L06XPw8PAwuC+nc+cOeO65xVCrNejatTNKS8vg7Q2EhYWic+eOAAAvL088//zr0jr+/g3QuPE96N79PqP42LCEyLax0LOeyeXy6wAaHTu2Bz4+3tYOh2xYYWER+vQZCQDZSqWy8d28l1wuFwFAoThYF6ER1UhEhO5Kt1Kp5G+MFTjC8X/jRi68vb2lMi+tVosbN/LQqFGgwXIZGVnw9/eTRmry8wugUhUjKKhJvcZ35Uoq7+mrBI9/sgW8B6f+XQB0LSyJzCn3HTlvzTiIiKwtMDDA4B4WmUxmlNwAQLNmTaXkBtB1Navv5AZgwxIiW8cEp54JgrAVAFasWAulMhaFhUXWDolsTGFhEZTKWLz33n8BAKIobrVySERk37IBoKhIZe04yMmUO8cx3fmByEJ4D049UygUW+Ry+YjExEvDZswwfnoxUQX7YmJitlg7CCKyaxcA9E5ISDJ5/whRfWElAtkKjuDUP61SqRwhiuJ0AEfBqxpkLBvAUVEUpyuVypEAqvfobSIiE1g5QJbGSgSyNbwBjKxCfxMsb0KsH2xuQdZSl80yqNZkcrl8D4Bh1g6EnNI+pVI5ArxYR1bEERwix8TmFmQVLFGxCawcIEtjJQLZFN6DQ+SABEHYKopi7xUr1mLhwmfRvn1b+Pr6WDsscmCFhUVISEhiiYrt0MbExGwGsNnagdgbVhgQ2T8evGQV/AGpdyxRIWtiiQrZLf4+Edk/lqgROSaWqJClsUSFiIhsAkvUiBwXS1RqiVdwiYiI7BdHcIiIiIiIyGEwwSEiIiIiIofBBIeIiIiIiBwGExwiIiIiInIYTHCIiIiIiMhhMMEhIiIiIiKHwQSHiIiIiIgcBhMcIiIiIiJyGExwiIiIiIjIYTDBISIiIiIih8EEh4iIiIiIHAYTHCIiIiIichhMcIiIiIiIyGEwwSEiIiIiIofBBIeIiIiIiByGq7UDICIiIrKG0NBQj4CAgIDy0zQaDQCgR48eQeWn5+bm5iYmJpZYMDwiqiUmOFTvunTp0sLV1fV1U/Pkcvn/yr9Wq9XLYmNjUy0TGRG/n0TOLCAgIECj0aQDECrO02g0GeVeagMCAoIBZFosOCKqNaMDmqiujR071iUxMTFNEISm5pYTRTErNDQ0eOfOnRpLxUbE7yeRc5PL5dEA+lSx2FGlUtm3/qMhorrAe3Co3u3cuVMjk8m+q8aiu3nySJbG7yeRcxNFcVc1Fvu23gMhojrDBIcsQqvVVucHpDrLENU5fj+JnJdWq91d1TIajaY6F0GIyEYwwSGLkMlkR0VRvGFmkRx/f/+jFguIqBx+P4mc15kzZ9IA/GVmkT9vL0NEdoIJDlmEQqEoEwRhj5lF9kRHR6stFhBROfx+Ejk3QRAqHaE1N4+IbBMTHLIYcz8SMpmMPyBkVfx+EjmvsrKySo/xsrKyKkvYiMi2MMEhi7l58+YhAPkmZuXn5eUdtnQ8ROXx+0nkvGJjYy8BiDExS3l7HhHZESY4ZDGJiYkloijuNzFrHx+eRtbG7yeR0zM1isPRWyI7xASHLKqSMiD+gJBN4PeTyHmZOv5Znkpkn5jgkEUJgnAAgKrcJJUgCD9bKx6i8vj9JHJeCoUiDsAF/WtBEM6fOnUq3oohEVEtMcEhi1IoFCoAP+lfC4Lw4+1pRFbH7yeRcyv/0M9qPh+LiGwQExyyOP6AkC3j95PIqUnHPNtDE9kvJjhkce7u7j/o//b29v7B3LJElsbvJ5HziomJiQWQBCBRqVSetXY8RFQ7THDI4k6cOJEPYD+AfcePHy+wdjxE5fH7SeTURAC7bo/eiNYOhohqx9XaAZDT2iUIAn88yFbx+0nkpGQy2S61Ws3jn8iOCdYOwEnIIiIipomi+G8AnQA0snZAZFOyAVwQBGGrQqHYAkBr7YCcVUREhL9Wq/0/QRBWAYAoigtkMtlmhUJx09qxEVH94vFP5DiY4NQ/mVwu3wNgmLUDIbuwT6lUjgSTHIvq1q1bOxcXl3miKE4F4FthdqEgCJ+KorhGqVQmWiM+Iqo/PP6JHA8TnHoWERExXRTFjaGhIVi0aB7at28LHx9va4dFNqSoSIWEhCSsWLEWiYmXIIri9JiYmM3WjssJCHK5vB+A+dBdgBAAQC7vgqefHgEA2LFjD5TKWP3yInT35nysVCqPgPX5RPaMxz+RA2OCU8/kcvlRAL03bfoQ3bvfZ+1wyIYplbGYMWMBABxVKpV9rRyOw+rbt6/nzZs3JwiCMB/AfQDg6uqCwYP7Y/z4J9GhQ6jB8nFxifjqq904cOBXqNUa/eSzoih+7O/vvz06OvqWZT8BEdUWj38i58AEp57J5fLrABodO7aHIzdkVmFhEfr0GQkA2UqlsrG143E0ERERzbRa7WxBEGYBaAwAAQENMWbMMIwdOxz33BNgdv2cnFzs3LkX3367H7m5efrJ10VR/J9MJluvUCgy6vcTEFFt8fgnci5McOqZXC4XAUChOGjtUMgOREQMBAAolUoem3VELpdHAHgewDgAbgDQrl0bTJjwJAYP7g93d7cavV9paRkOHPgV27fvxsWLyfrJZQC+FgThY4VCoazD8InoLvD4J3JOPImqZ0xwqCaY4NSNsWPHuiQlJY2Arr6+FwAIgoDevR/EhAmjERHRBYJwd7tYFEUoFLHYvn0Xjh37C6IoleT/BuDjtm3b7tm5c6fGzFsQUT3g8U9EPImqZ0xwqCaY4Nydcm1e5wG4FwC8vb0wfPhjGDduFFq2bF4v201JScfXX3+HvXt/hkpVrJ98WRTFtWwzS2QZPP6JSI8nUfWMCQ7VBBOc2jHV5rV58yCMGzcSI0YMhq+vj0XiKCwswp49B/D1198jPT1Tmsw2s0T1h8c/EVXEk6h6xgSHaoIJTo1U2uZ1woQn0afPQ5DJZFYJTKvV4ujRP7F9+262mSWqHzz+iahSPImqZ0xwqCaY4FStpm1erY1tZonqDo9/IqoOnkTVMyY4VBNMcCp3t21erY1tZolqj8c/EdUET6LqGRMcqgkmOMbqus2rtbHNLFH18fgnotrgSVQ9Y4JDNcEER8cSbV6tjW1miUzj8c/jn+hu2fe/EHaACQ7VhLMnONZq82ptbDNLxOOfxz9R3XHKkyhLYoJDNeGsCY6ttHm1NraZJWfE41+Hxz9R3XGqkyhrYIJDNeFkCY7Ntnm1NraZJSfA478SPP6J7p4znERZFRMcqglnSHDsrc2rtbHNLDkSHv81w+OfqHYc9iTKVjDBoZpw5ATH3tu8WhvbzJI94/F/d3j8E9WMw51E2RomOFQTjpjgOFqbV2tjm1myJzz+6xaPf6LqcZiTKFvFBIdqwlESHGdo82ptbDNLtorHf/3j8U9knnPewWdnTp06bfD6r78U0Gj475Yt0Gq1+PjjDSgrU1s7lHoVFBT0CgBPE7M8mjVr9joAV0DX5rV79+4vJiUlJQLYBaCXt7cXxo0bie+++wwffvg2IiK6VLm/Dh06Bq1WW2Vcubk3UVSkMph2/XoO8vMLjJat+H4lJSUAgHPn4rBt27dVbqsyZWVq3LiRV+n8c+ficPlySrXeKyEh2WjauXNxJpctLr6F7t07Y8WK1/+fvfsOj6L6Gjj+3d30RidA6B0CAgkC4kuzACpNigLyA4kapElTQQREBQFFQUCagDQpIqAoYEOaSE0ioQRI7yGEhIT07O68fywZsiSBUELa+TyPj2Qys3Oz997dOTP3nstTT7Xl1Vf7YmtrA6YLyp2BgYHhbdq0mezu7l7uzmNtbGzq5/Wa9vb2ra2trRsUqLCizJD+n7+i6v8ajYa2bVvx1VefsHv3erp374qFhQXc7v8B+fX/8uXLvwxY51eOChWVSVLQAAAgAElEQVQq9EZugIsSzqKoCyDuzmAwMG3aHHbvXo+jowMA8+cv4euv51CnTq0iLp3QarV4e/tiaXm7K+3ff4AuXTpiZ2dbhCV7eDY2NnXT09MjgSwnJ6c+MTExnzs4OHRLTk4+CmRfoWQ5Ojr2dHZ23n4rzetojUZjAWBpacmoUf9j0KA+BAWFEh+fwPHjZzh79jzNmjVm2LCB6rm8vc/Rpk0L9a7uqlUbeeqpttjb2/HTT/t56aXnzd7jbOXKOTJp0izee28MNWua1sjYunU37du70b69m9m+kyd/RGrq7YuhuLh4duxYw7lzfrRu3SLP90BRFCZNmkVycgpabd7f94mJN6lYsTzLly/I865048YNGDFiHOvXL8Ha2nRNcfbsBQwGI25uLc32nT9/CRYWOrNtfn4BbN78DXXq1DTbbmGhY9asz5k+fQIZGRmMGjWcmJhYWrVyZeXKDWRmZlXXaDRfKorysbu7u1ma2bp1625TFMX8yhCwsbFpHR0d/WlsbOyXef6xosyQ/l+8+39OtWrVIDMzk5deeg5n5yr8+uufREXF1M2j/4cBmXq9PrF69ervRkdHz3V2dv6gXLlyL2i1WntLS0uXzMzMSwBZWVmJycnJR/I9qRDFnAQ4xVxmZhbVqlVVgxsARYFq1aoWYany5+t7kRkz5rNnz8aiLsoDuVf5L1y4zMKFy82+bIODw/H0nGK2n15voHfv7oVa1sKWnp6eUq9evU3BwcFDFEVJB3TVqlWbHBAQ4FO9evWx8fHx21xdXesATYHLiqJowPSFPnhwP/bu/ZOnn27Pvn0HOHToGPPmfUirVq688kqfXOdycLBn7NhpfPbZdMqXL0eFCuWwt7fj0iV//vjjMM880wlLS4dcx2m1Wnr27Mb16wnUrFmDyMhoWrVypX17N1JSUtm9e596IZWens7KlQvJyMjA1tYGT88p6HQ6Tpzw4uDBf9TXzMrS89ln06le3RmNRsOXX84mJuYaFSuWz35CwuHDx+nUqT1arZZFi1bRrFkjDAYDWq2OiRNnkJaWRlpauhrkOjo6MH78dJKTU3FwsANMfbh16xZmF046nZbVq81jixEjxud5cWNlZcUTTzRX71Z7efny/vvj0Ov1JCYm0bJl8+w0sw6KoowHxrm5uf0KLE5NTc339nhsbOyS/H4nyg7p/8W7/+d0/PgZNBoNM2ZMYu7cxWzatAwfn/N59f8rQHpycnKSRqOxcHR07GE0GlOuXLnS2cnJ6UWj0ZiWnJx88K4nE6KEkACnmEtOTqF8efMnzKmpqWRkZKl3g4qTJ55ojr39439y4efnT7NmjR76de5VflfXJgwf/gpbt+7K8/dJSck8/3yXEh/c3HJNq9XaWltbNwSoUKHCi2FhYe937do1PSkp6bXq1au/yh1pXkNDI1ix4nNmz/4CrVbLxYuX6dnzGf799zTlyjnle6LGjevj7t6KEye86NnzGQCMRoVDh/5l8eJPsLKyUveNj7/Bu+/OznWnM6fvv/8Rvd6AhYUFHTq407BhPbRaLUajAQ+PCWzc+M2t10qgadNGjB49Qj128OBRODtXUX/W6XRUrVqZzz5bzNNPt+PZZzvx+efLaNeuDTdvJtOnTw8aNKir7r9kyVwyMjJITU1n1aqNTJs2HoDMzEzWrdvKK6/0xcbGCjs7u1zlVvJY2SKvbQBz5y4mNDScAweOcPlyINu27cbfP5ju3bvw338XOH/+EhoN2Nvb0aRJQ3x9L2j0ekNvoLednV0aEKbT6WKTkpJyBjtGGxubGunp6aH5vrmirJD+T/Ht/9ni4uLZuPEHPv98FlqtlpEjBzN58ke8995Yvv32y5xppjV6vaEJgIODQ7iiKLOdnJz8jx8/fq1Zs2a+gGI0GhOAjwCry5cvd8GUvECIEkkCnGLu+vV4KleuqP5sNBqxtLQkOjoGJydZLwBMH/ArVqxnyZK5j+V8nTq1p2PHtmqAOWLEeLO7boqiEBERpQ6ZKMkCAwPfAmIB6tatG63RaD5MSkrqTo40rzY21mzYsJRKlSowbtwH2NraMHGiJ5988iWtWrly7VocOUduKIqCj8/5XMMzPDyGmA3xSEhIYOTIwVhZWXHypBft2rmh0WioWLE869YtxsNjonqRk5CQyFdffUKtWjXYv/8AL7zwLH37jmDr1hXqhYRWq0Wn01GpUkX1Cdzffx9j6NCX+eGHPeqdZQsLndkCg2fPXqBRo3pMmTKa777bRpcuHSlfvhy2tjbY2tpQtWrlXO9bnz7DqVOnJl5evgQFhQCQnp6JtbUl3t6++PsHsXr1lzRqZD4Vxmg05noaGBISlmfdTJo0CqPRyPz5S0lMvEnPns+wePEzzJv3Ne+/Pw539yf49NOvmDFjMrVruxAREc24cdOIjo5Fr9fbAk0MBkN9e3v7KCAqJSUlMy0t7XydOnU2AFYGg+FGQEBAX+Qip8yS/l98+z+YArRly9YyZ840dZRHzZo1GD36dSZNmkmrVq706NGNCRM8eeedt9ixYw/r128nKyurlkajWXvz5s1MV1fXBRqNJtHb27sTpnk5GU2aNDmE9HtRwkmAU8yFhUXi5OSo/nz16jWaN29MSEg4TZrcDnCOHTvFvHlLePPN19Dr9QQHhzN0aH9cXKoRFhbJ22+/x1tvDePPPw/TrdvTeHn5Mn/+DP744xA3bybj4GDPr7/+SfPmjRk9+vV7lqsgx0VGxvDxx18wZsxIWrduwYULl/jgg8/U4V9eXmf5+OOF7Nmz6YHPFxkZQ1BQCCEhYRw9egILCwueeqotAKmpaWzYsJ1Gjerj7x/EiBGvqF926ekZbNz4A/Xr1yEoKJRnnvk/Gjasd9fyJyen8P77n6DXm0+QDQoKM/tSunkzmbi4BLZvX03FiuXv+bcVV5UrVx5VqVKlEfb29tZAC+AUtyae2tnZ8t57Y+nZ8xnGjZtmtobF0qVrOX3ah8uXA5k372saNqxHZmaW+h75+wfRtGkjPv74fapWrUxoaATTpn1qNgwT4IMPbgesfn7+LFs2j1atXNVttrY2fPPNfAA8PadQq5YpoPzhhz288MKzuLhUN7tLajQqZhdQer0BV9cmREdfJSYmVt2u05nfGW7UqD7Tps3hrbeGMX78G6SkpGJjc/enp/Xr12HFis85cOAoaWlp9OrVnStXgggLi6BLl46MHTvV7OJGUUxl6969K6+80lcdtmI0Khw4cET9d87hLDdvJvPLL3/w3ntjeO+9T6hRoxpLlqzhpZee58aNRMA04drZ2XQBVrNmdXbuXIfBYGTgwDeIj08gLS3dEqgD1Lazs4vVaDQxcXFx/4WFhXkA957lLUot6f8mxbX/nzvnx+XLAfTo0c3svQLTd9eAAb0IDY3g66+/ZfXqhTg7V6F5c9MIBI0GfvzxV27cSLTSaDQzAcXNzW0j0MHb29sVIUoBCXCKOT8/f8qVc2Lz5h8ZNmwgV64E0aRJQ2Jj48z2e/rpdmi1Wrp06UiFCuW4evUaX365gs8/n0Xt2i7Y2trQr98LbN78I4MG9WH37n0ArF27ha1bV6LVann++S7q9nspyHEHD/7DggWzqFDBNMTO1bWp2fAvd/dW2Nvnfkx/P+dzcamGi0s1li//jk6dOpgds2rVRvr27Un9+nVo0KAuq1ZtYtKkUQCsWGHKOuPq2oSTJ735668juQKcO8vv4GDP/PkzcXS0R6PRoCgKU6d+Ss+e3Xj33dFYW1sTExPLmTP/0atXyR6idivN6zVMk4mfAlPWnv/7v3a89tpA1q/fRp8+PfI8dvz4N/jllz9YsmQNL7/8It27d2Xy5I/Ui5GxY6ep/waoU6cmW7euumt5hg0bY3ZxAxAdfVW9aAoPj1K3Z497zz0pWEGv16sXMBYWOpo1a8SaNd/Tv/+L3LyZjKOjQ64LHDs7WyZMeIvjx8/QsmUzbt5MxsnJ/GIsICDYrP1otVoiI2M4ePAY06dPAEzDcHx9L/Lxxwtz/X2TJs1SJ0Bv2bKTBQtm0axZIwYMGEmVKpXYsWMPUVFXWbVqIS4u1UhLS+fateu8+eZrHDlygg4d3OnQwZ26dWtRrVpVtX9kZZkPZdXpdOh0OmrWrMHPP2/Ay8uXqVM/ITHxpgZwBpwrV65ct3LlynskzWzZJf0fs9crbv0/MTEJZ+cqtGzZDKNRwc2tJdbW1owYMZ4NG5aqr5uZmYWiGLG2tkav1+Pk5MCYMa+zYsUGOnfugNGokJiYyNGjJzXA/wDc3NwOaDSaioMGDdJJ/xclmQQ4xdyVK4EsWTKX2bO/4MCBo3h7+/L88104edKb1NRUsztU9va26sW4s3MVIiJuL2xsZWWJRqNRF1XLzpnfr98LeHhM5LnnOvP8810YMKBXgcp1r+N27drL+fOXzDLlPIwHKae3t68a0NSrVxtvb1/1d2fOnFV/l1fGnfzKn/3FpigK8+cvpV07N559thN79vzOM8/8H6tXb6Jfvxce6m8tSu7u7uWMRuMbQUFBk4CaYPqytrS0pGHDegQFhXH+vN9dX0NRFIKDw2jQoA516tTiww/nFSjl6/2qUaMay5bNAzB7gpbf+hpZWVlcv56gzmkzGIykpqZRoUI5ataswbx5XzNmzEizsf2LF6/G1/eiuu3IkeOkpqYRG3tdPWdGRiahoRFs2LBUnQys0Wjw8jpLfPwNJk6cAZjel+TkFBYvnsPMmfNzFo3k5BTWrPkKAA+PiTRqZLpYqlKlMqtXmy6Ihg8fj4tLNQCsra3ZtGkHCQk3CA2NoFKlihw5cpzGjRswffoEEhISuXr1GpUqVSQvQUEhjBr1LmC6k928eROuXYsjLi4eo9FYDlOa2ZA2bdos1Wq1a728vBLvWSGixJP+XzL6f/Z8pg8/nMe1a7dvduYcTaDXG0hJSVUDHgsLC1q3bsH+/Qd47rlONGpUn2+/3Uy3bh25eTOFhg3rsnv3fgwGQydFUbiVZlr6vyixJMApxkJDI2jSpCE6nY6hQwdw7NgpLl0K4N13x2BjY82OHb8wYsSr+R5fkIXUhgx5mb59e/L330eZNm0OXbo8xeuvD36o41JSUmnSpAGXLwdy6pQP7dq1Kfgf/QjLebe//27rCN2r/KmpqXz99becP3+ZDz54BzAlF/j773+YMWNyvulEi7PWrVs3upXmdaRGo3FQFIVq1aoydGh/qlWrSkxMLK+9NkDd/9QpH3VYxZ1OnPDitdf6M3XqHJo3b8zzz3fh559/U3+f16TZbdt28/vvh/JMBQumvnCnqKiYPO/gKvnMyu3btyfnzvnh6toEo1FhyJCX2bnzVy5d8sfS0pI6dWpx6NC/Zndw3357BNbWVmZ/57p1W3F2rsJLLz2X53myy9CnTw/27fvLbH6Wp+cUswnM2e5sM7fWs0Cnuz0XIOdbrdVqmDlzMhkZGaxatYnp0yewYcN22rQxzWuoV6828+YtoVev5/Ms353t38bGilq1alCjhjOxsdcB8kszG5DvHy1KLOn/Jav/Z5s6dTzh4ZG4ujYBbs8HTUpK5tixk7zwwrPqvikpqcTFXef773eqT7mio6+yZ88mtmzZzZAh/QENtWu7sGzZWjIzs6T/ixJNApxi7Jdf/mDEiFcAaNasEceOnWTkyMFoNBqaNm3EihUb6NGjm5oyOiMjC71ej4WFBYGBITRtevckBElJyfz55yEGDOhFr17d6dnzGYYNG3vPwOFex9nb2+Hq2pRatVyYPPkj3Nxaqh/YGo1GHUt89eo1bt5Muef7UJByarWmLyWDwaCO8W7evAlXr17D2bkKUVFXad68ibp/kyYN8fcPUsdBHzr0L127drxr+Y1GI0eOnCAiIoq3336d8eM/UF9v2LABzJgxn5Ytm9G06cNnc3tMNG5ubt0wrTbeKzvNq5vbEwwd2p8uXZ5Cq9Xy4YefMXXqeLMDq1d3Rq835HlB0qZNS2xsrKlSpRI3biTStm0rjh49kWOP3Bcggwe/zODBL+db0GHDxuTalt8d3KysvOfG9urVnVmzFvDuu2PYvHkHrq5N6dy5AxYWFrcyLCncuJHI8eNn1GPuHGsfGBiCr+9FJk3y5LvvttKqVYtck6Xh9kWWopBr0nBe7rwoMxqNaLXafC/WwDRk0t8/iPr1a/PDD3s4dcqH//3P9HlRv34djh8/w+zZ7+Z57OzZ7/H00+0AU/lyXoRt2LCdvn1fwMfnXL5ppr29vQ+SV0WKkkT6fwnu/2AaUXD69H/89995swD0p5/2YWtrYxaE2traUKdOLSpWrKAm5PH0nIJGo2Hq1HEcP34Gd/cnqFSpIr/8splz5/yk/4sSTQKcYurChUt06OCmPor+99/TWFlZ8X//117dx9NzGO+88yFfffUxNWvWQKOBX3/9E51Ox6VL/owf/wYAkZHRxMff4PLlABISErl8OYD4+BskJiaydOlaEhNvUq9eba5fj8fDY8g9y+boaJ/vcRcuXObatetcuHAJV9emVK5ckS+++IZJk97GxsaaQYP68NFHC2jQoC6VKlWkRg1nLly4rN6But/zZXvhhWf4+utvcXGpro4NHzt2JDt2/KImEhg71kPdf8KEt1i7dgu1atVAURTc3Vvds/wpKSm0b+9G164d1S+ewMAQvLx8ad++DbNmTeGjjz7Hzs6Ozp070Lp1izwz7BS1rl272iQmJg7VaDQTuSPN65Ah/c0C4507f+XFF58zS3QBMGuW6UvbaFTIXvA6O7h8553p6n6jRr3H8893YdCg3uq2O5M0FFR+d4zv9Oabw9T9czp1yoeOHdvh5OTIa68N4I03JjF37ge4uFTn6tVrxMTE4ufnT5MmDfJ8XS8vX3bs2MMnn0zFycmB4cNfYenStSxbtpbZs9+jdm0XdV+DwTQkp2bN6sycOVndvn37z0D2+5bzb7t9IRQQEIxeb8DKSktwcFied6mztWnTkps3Uzhx4gxPP92OadM+ZcIET9at28LChR8xZcpsZs6cTN26txcF/uqrlfj5XWHDhu0AXL4cmOsizMnJkX79XqBbt6fvTDPbG+jt5uZ2TlGUxeXKldty6NCh9HyqQhRD0v9LT/8HeO21AYwYMU4NcNLS0tHrDQwaZMoKFxQUSv36ddTMcPHxCWbD2MC0plZ4eCRDhrzMxYtXWLRoJTNnTpH+L0q0kjeWpoRxc3NTALy8/ryv486d86Nly2YAnDzpRUZGFp07d8i1365de7Gzs7315TTqnpM1xaMRFxfPyy+/zvDhrzBy5GD1CRXAn38eJjQ0nKFDB6hDAQrK3d00pMjb2/uR9013d/fqRqNxtEajeZscaV4HDuzFoEF9zDIhAezbd4BKlSrkmp8EpouHX375gy1bdtG2bSvefdd0hzUq6io1ajir+0VFXeXff08zcODtOVPDho1h8+bl6s8//vgLe/b8gY3N7bUu7uTn58+hQ7vNho94er7LsmXz+PHHX/j11z/YsmUlBoOB338/xIYN23F3f4L33x8HmIa4hISE06XLU+rxoaERVKtWRZ2Ef+TICdav38bixXPMJhFfuuTPqVM+VKxYgZdeei7XRdb27T8TEhJmdpf7rbcm8+23X+X6OzIzs9i8+Uf++usIW7asULePHDmB7777GoBFi1YxdqwHVlaWvPPOh+rd1pkz5/Ppp9MA00Xi2bMXiYyMpl692rRs2QxFUdi//2/S09Pp27cnOp2Os2cvMHfuYqZPn0Dr1i2YMWM+MTGxZkNi/P2D1TH/2W7eTKZ58yZmF2fXryewY8cefvzxVxISbmRvvqYoykqtVrvCy8srGlFsSf8vPf0/MTGJd975UJ1bm5aWjq2tDWFhkVSuXBFra2t0Oq06H+rbb7+iXr3aACxbto5x40w3+7y8zpKRkUlMTCz9+r2gBkG7du3F3t6OHj26qWWU/i9KGglwCtmDBjjZFEW5lbXF8a77XbhwiXfemcEXX3yU5yPz+3Xo0LE8tzdoUE9Nx/koPe7zPQrx8QlUrFjh3jveh8IIcNzc3NyBCcBgwBJMqU+HDu1Pz57PqIkncoqJicXBwR4HB/u7vvb585do1qxRrsxD2a5cCaJxY/O1HmJj4+77ydamTTsYOrS/2XmyhxhmZGQQH3+D6tVvX1gFBoZQp05NNfDMHrp5v86evUD58k7UqVPrrvulpqaZBbN3JgDJyWg0otfrzRYvTEq6mWcfvzM1bDaDwYBGozX7XfbFzZ1Bdc7XSE1NxdbWtkB3wvOTmZnFb7/9zZYtu/D3D8renAVs02g0i728vLwf+MXFIyf9v/T1fzB9BuT3vhdUWlo6BoMhVz0ripLvEETp/6KkkACnkD1sgCPKlkcV4NxK89oX0/j6TmCa/9S5cweGDh2Au/sTD3WRK4SiKHh5+bJly06OHDmRc0jQUWCxpJkuOtL/RWGT/i+KO/mEK2QS4Ij78agCHDc3t1PAk9k/Dx7cj8GDXy62T8NEyRYeHsW2bbvZtu2nnJtPk6MNlmSKohzy8fHpdu89iwfp/+JxKs39v6T1fXGb9t67CCGEEPm7V7ankk6j0XQt6jKIki8jI6Ooi1AoSnP/l75fckkWtVJg4cLlDB06wGxyZ37Wrt1Cr17P4+xche++20qPHs8U6LikpJuEh0fdNdvZnc6fv4SDg71ZBqf85DVW+/z5S7Ro0TTfY5Yv/44BA3pRvryT2WrtAOnpGblSfIJpLQB7+9xjo++2Xs+1a9dJTExSV6r28TlHnTo1H/n8m0epQYMGTwUGBvbBNESl87ZtP7F9+8906tSBoUP707Ztq0IdopJXffr4nKN16xYPdN6DB4/RuXMHdcz59evxlC9fzmwM+rx5XzNlymjWrdtK585P0bx54zxfKzQ0PM8x9ceOneKpp9qqE21z2rJlFy+++Ky6SGBBfP75Mt5+e0SusfVZWXp+++1vnnqqLZUr570QZ16uXr1GVFSMutbNnbKy9Cxf/h2jR7/OlSuBuLo2KdQ6VhSFM2fOsmXLLo4eNRuicgTTEJU9pWGISvZT+JJE+v+j6f/3e56UlFSsrKzyXc9n3LgPePPN1zh79iJvvTXsvt4L6f+PX0ns++I2CXBKgfPnLxUoSAE4fPhfRo40pVg+duw0I0aY1pLZs+d3dcJpbGwc06d/RkhIGPXr1wFMmZY6dHBn7tzpBV7IsnHjBowYMY7165eoAcjZsxcwGIy5EiHMn7/EbAVpAD+/ADZv/kZdHTqnpKRkTp/+j1GjhjNu3Ae5Fi6Mjr7Kzp3rzCZyxsXFM2rUu2zduhILC0sCA4PVdXAWLFjKjh1r+PPPw3Tr9n9mE28PHTpGSkqqGuAsWrSKF1989q7rNhS1W18su4Hd7u7ubsAERVGGHDly3PLIkeM0bFiPoUP788ILz+Y5yfhh5Vefq1cvpFkz83WC1q/fzuHD/5pdFMTExFK1ahW1rUVHX+X69XgGDjSlm7WwsGD8+A+ZP/9DNYAICgrFysoKb29f3n57BIqicOqUN+3bu5udb+7cxXmW+fLlQDZuXJrnxc/+/QcYPLhfvn/vn38epnPnDmaB9vnzl9SyrV27hSZNGnD9egIREVE4OTkSExOrBjgzZ84nOvp2drO4uAQqV66g/h8gMfEm9vZ2rFz5uVm7zqbT6fj339NMmPAWmZlZDB8+juXLF+Do6JBr34eRmZnF/v0H2LJlFwEBwdmbszQazVbg6+xJxt7eMte4qEj/fzT9/37PY21txaeffoWHx1Dq1KmZ60abXm+gfXt3zp27RHh4lJpaWvq/EI+eBDgl0LVr16lSpZL6c153nL29z+Hm1pKTJ71YsmQt9vamDC/BweG8/bZp8T9//yD136mpaWg0Gnr37k7VqpVZs+YrswUAPT2nULNmdXV/gBs3knj99cG8+OKzGI0KEyfOIC0tjbS0dDWjjKOjA+PHTyc5ORUHB9OTk2rVqtK6dQuzQEmn05otNgimVZnzCm4A/vrrMCNGvIJOp0On07Fixedmv3/jjUm5vgSOHj3B8OGvcPNmMsHBYZw9exFv73O8+mpfKlQoT3JyCvv3/0379m5YWd2+U3/qlI+antPL6yyNGzfAwcHhgbIBFYVbXzgjnnzyyal6vX60RqMZHRAQXOWTT75k6dK1DBjwEoMG9bmvpwn3klebBHJd3AC8/vqrvP76q+rP27bt5u+//2Hlyi/yfZ1y5Zx47rlOpKWls2DBUq5ejcPfPwhPzynqui6KopCRkUWtWjXNbgBotVpWrvwi12t6ek7JN1tS9mKAyckpTJ/+GenppqUf/Pz81b9Jr9ebrRyu0+lISkomMzOT48fPMGTIy/mmDf/002lmKXaz+172/xVF4eLFK3d9gqrRoF4kurm1ZOjQ/oSFRWBlZaUG8g8jLi6eHTv2sHPn3jvTxK6wsLBYcfr06ZiHPol45KT/P3j/f5Dz9O37AmfPXsDGxpqRIydQs2Z19fUCA0Pw9JyCXm9g585f2bFjDQ4O9tL/hSgEEuCUQEOGjFKfrIBpYbCcC/Vlfxju37+N9u3d+f7723ewFi1axaRJowBYunStuhhoXu5cAHDMmJEcP36Gjh1N8wZnzpyvLoqm1WpYsmQuGRkZpKams2rVRqZNM60LkJmZybp1W3nllb7Y2FjlmT4zryG8dxvWe+DAURYsmJnv73W63F+M+/f/DSjs3fsntWvXZPLkUcyfvxToi0ZjCgo/+2y62UVoaGg4NWpUw8bGGqPRyLZtPzFz5hTs7W357LOveeutYVSrVjX/ghYjt76APurateu8pKSkIcDEhIQbT6xZ8z3r12+jR49uDB06wGyhvwel0ZBnwHqvxfr27z9AdHQsBoORyMgY4uKu5xrWcvXqNapWrUz//i8RGBjC3LmmhQXXrPmeN998jW3bdjNoUB90Oh3x8TeoWLH8HWXL+/x3jiO/du0677//CZaWFgQGhvDmm5OxsNCxcOFsNQdD+tYAACAASURBVK3qsGFjzP7OsLBIZs1agJWVJYGBIYwdOxU3tycK8I7Bxx8vRFFMCwRm972cfTAkJIJff92s3nF/993ZJCQkmrX1nAsDgmk9m1q1XFiwYOYDD1fx8/Nn69Zd/P77QXVhQMAXWOzk5LRVFvorGaT/Z5etYP3/Qc/j5taSVq2ac+qUD1WrVlbfh8zMLMaMmcqqVQvzLIP0fyEeLQlwSqB69WqbfXl4eEzM88ske7GysLBIgoJC1TvQ2bn1AwND8PcP4tixUwwf/kquu2VNmjQwe4Kj0WhISUlVfx8ZGUODBnXNjunTZzh16tTEy8uXoKAQANLTM7G2tsTb2xd//yBWr/4y1x0lo9GYazX1kJCwPP9+H59znD17AVtbG8D09OnOY3N8EAOmD+nWrV0ZM2YkPj7ncHR0YOrUOWRkZODpOYWoqKts2bKTRYtW8f33y9UL2D17fuf0aR/AtKr3W2/9T31fx44dyezZC2nXrg0vvfQ8FSoUfH5GUbr1hfQdsN7d3b2roigT9XpD7717/9Ls3fsXbdqY7v517dox3zuo92Iw5K7PoKAwDAZDnutRGI1GNm78ARsbayZNGsXbb79HrVo1UBSFOXMW0aBBXQYO7I2VlSV6vYEJE2awYMFM/Pz8+fjjL7GxsSI5OYVTp7xJTk7h77//AUxtdNq08XTqdHuR3LzKBhAYGGr2c5UqldTF9zw8JrJmTe6F++5Uu7YL69cvUY9Zt840HOaNNyaZ7ZeUlExAQLDZUE0LCx3ffGO6s3znHdzsbTmHEy1cOJsbNxLN5gV16tSHL774iHLlnNT39UHq0Gg0cujQv2zZsgsfn3PZmxXgl1trXRy69bMoYaT/F6z/P8x5zpz5j6ZNG6EoCh999AUREVGA6UmwwWAgMjIGPz9/eva8nZxL+r8Qj5YEOCXQ/d6JqV3bhb17/yQ4OIzPP5+lbk9JSaFRo/rs3fsXu3fvo0+fnvlOjsxmb29HbGwcRqMxz+Fj9evXYcWKzzlw4ChpaWn06tWdK1eCCAuLoEuXjowdO9UsuMm+o9e9e1deeaWvOmzNaFQ4cOCI+u+cw9n+++88rVu3UCd+9u//Er16PW/2ZRAaGm5Wrk2bdhAXd51OnfrSrFlDunZ9mpSUVPUCNJuHx0Q1uLlw4RJPPtmGc+f88PE5R7t2bfjyy5VMnToOF5fqzJ69kAkT3uKPPw4RERFVYgKcHBQvL6+DwEE3N7eGiqKM12g0Hj4+5xx8fM5Ro0Y1Xn21L/36vXDPBf/u1KdPD/r1e8Fs2z//nESr1XL06AmzCw4/P3+8vX159tnOahrb1FTTTcHatV2YMWMSa9d+z6xZC5g/fwYuLtVwd3+C2Ng4atSoxhdfzMLZuUqewzrCwiJyDTsZPLgfzzzzf4B5EPLrr3dP5Z6SkoqPzznatm2dZwKLvGSXQa/X8847H6LVatQJ2E5Ojri6Nlbn7RgMBvXCKzY2Dk/PKer/IXfQDnDmzFmOHj3J+++Pxd7ejpo1q3PkyAl69+5OZGQM77//CStWfG62MvvdJCen8NNP+9m+/WeiotQRJ8mKoqzTaDRLvb29Awr0QqIkkP5/l/7/MOcJCYmgfXt3tFotkyePwsnJkawsPR98MJf09Az++usIUVExZgGO9H8hHi0JcEqg+0nJGB+fwNmzFxky5GU+++xr/vrrCJs27cDa2oorV4J4441JKIrCL7/8QXR0LOPGeajH3jlEDeCJJ5rz119HSE/P4NlnO+U6n1arJTIyhoMHjzF9+gQAGjeuj6/vRT7+eGGu/SdNmkVqqump0JYtO1mwYBbNmjViwICRVKlSiR079hAVdZVVqxbi4lINb+9z9Ov3Il5evuprhIdH5UoyYG1tbZYxbc6caWi1WkaMGM/y5QtITU3j4MF/cv19yckp6nscH3+DTp06sG7dFlq1ckWr1XLjRiIuLqYx1RkZmTRoUJfRo18vUF0UZ7e+uCa4u7vPUhTFA3gnKiqm7qJFq1i1aiN9+vS45zoaZ89eYOHC5eqTtX37/gJM9ZN93Pr120lJScHa2pp27dpgMBioUqUSr702gODg20/shg7tr/7bz8+fN98cxoULl9VtI0a8yl9/HeHpp9sxceJMFMVISkparmEdwcFh7N27xezOZ0LCDTIzM3PN0Xruuc6cO+dHy5bN1G0ZGRn8888pYmJi+fPPw7z44rN5TvC9U0xMLNevJ7Bz5690796V1NQ0tm9fglarYfTo93PNGQMYPfp1WrVyJTMzk/fe+4R58z68Y7hkBIGBIWZPTZ97rjOnT//H778fpH//l9DpdERERBEUFMq2bT8xZ860Al3chIVFsn37T+zZ8zupqWnZm0OAJRqNZp23t3fiPV9ElFjS//Pu/w9ynhs3EsnKyiIzMxMbG2vGjJmGvb0t0dFXadfOjYSERA4f/pclS+aanV/6vxCPlgQ4JdCd42zvnIMDt4MgR0dHunV7mtTUVKKiYjAajaxduwgLCwtGjXqP4cMH8fTT7fI8z51D1AAcHOwJCQknLCyCQYM+ynWMRqPBy+ss8fE3mDhxhlqW5OQUFi+ew8yZ8832T05OUYf+eHhMpFEjU6ayKlUqs3q1KSAaPnw8Li7VAHJlXzMYDHh7n0WnG2FWzsTEm/To0Q0PD1PGuHnzlhASEkZQUBhjxkylVStXIPc4cQ+PierfkfMuY/Zj/pxPzwqaTa4k8fLySgQWDRo0aEl2mtnU1LQCpZlt1cqVTZu+Qa/X4+ExiW++mYejo4PZEMrQ0HBq1aqpvnc6nU6d3Pzhh/PURBQAu3b9CpgucNauXZxrgm1ERBS2tjbodDqWL/+Co0dP0L69G2++OYXlyxdgYWGRa1hHZGQ0mzbtoE+fngCkpd0e3piSkoaiGFm5ciFOTg4kJiYxevT7DB/+KtWqVc11RzovoaERfPbZ19SvXxsHB3sGDuyt9sX82ouPzzm++mqlemF4/XoC6ekZav9JSkrGwcGe9PR0rl9PYNmyeWYXOePHv4FOp8PX9yIA7du7s337T+oNhvyUhTSv4v5I/7/d/x/kPBcvXmHu3MXMmjWF6OhYqlatjKWlJUuWzMXTcwqNGtVnx449dO78lDq0TPq/EIVDApwSyMNjqNkdrrzm4OzYsQcwZVWJj09g3bqteHgMJSAgGAsLC4xGBUtLC27eTCYrS5/n0DSjUSEwMAQ/P3/i4uI5ePAY7u5PUL68E4riYrY2QDZFUejTpwf79v1lViZPzyk4O1fJtf+dF33Z47NzTpy824i8yMgYatSopv585/uQ7cMPTYHLiBHjzYK2/J7g5MfS8tGnVC2OHibN7NmzF6lTx0VNT5ozAE9MvMlrrw2gT58euc5pYaHLs/6GDRtjtqZGeHgUly8HEBsbB9xuHxkZmSxfvp6bN2/y+++HeOGFZ3K91r//nqZLl45qe7e1tc23zZQr58TmzcvRarX88MPPd32/stWu7cK0aeOpV6+2GiyHh0flmw0QoE2blmzcuAyNRkNqahqTJ89iwYKZlCvnRGBgCF988Q0rVnye79DUwMAQvLx86dHDNNzFza0l27f/lO/aTpLmVdyL9P8HO0/z5o2xtraiYcO6/PnnYVq3bsGhQ/+qv3/iieZs2bKLH39ci6IoGI1G6f9CFBIJcEqgnMFNfgYN6gNAVNRVgoJCmDx5NOHhEZw9ewHg1lyCVrRq5cru3ft45ZU+6rFXr167dTfNnsuXA+nUqT179vxGt25Pk5mZxeXLgSQnp3D5cqCaRS1b9l0gRSFX8JCXO4fbZU+KvNcwPKPR9Pv//jtPlSqVuX49/p7nypaRkcHVq3EoisK335pPHM++KM2rjBERUWbZ68qK+00zu3v3Plq0aMqlS/40bdqIhg3r5XsRkVNB55a5uFTn559/o3LlSupxSUk3cXJypE2bluh0WqpWrczOnb/mOvbAgaP07PkMZ878R9u2re95rvudoKvRaKhXr7bZthMnvOjW7f/ueRzAkSMnaNXKlcOHj+PsXJnvv9/Fxx+/n+u9MRqNnDzpzU8/7adjxyfVJ5XZpk4dz5tvTuKVV/rcmtumlTSv4oGU1f7/oOe5fj2BrCw9J0968847b7Ft2094ek4hLi6BvXv/JDk5hfT0dMLDr2Nra0uNGs7S/4UoBBLglAJGozHXRPxsNWo4q7n1Y2JiqVChHEajwu7d+3j//XE4OTkQEBDM8eNneOqptgA4O1dh1qwp6iJkRqOiBhTffbeVsWNHYm1tzbhxH9Cv3wv07dtTHStsMJjSXNasWZ2ZMyer5di+/Wf1tXLKGQgFBASj1xuwstKaDcMLD4/K46823f3y8TnHhx9OxNv7HNevJ5CYmKRmkLmTXq8nJiaW1as3MXr06/mkps69MStLD8CuXfsYMeJVs33vlfa0NClImtmWLZvTuHF9Bg/ux2+//c3u3ftITk4hPDyKSpUqYG1thcFgICUlLVdSBkVR8gyKQ0MjzN5nrVZDxYrl1SEdiqLg7e1L165Ps337z4waNQIrK0tat27Bn38eVl/H1/cibdu2pl+/F9i37wCLFq0iJSUVg8GQ59PInIxGY65tBZ0Ld+bMf8yZ80GB9s2edHz5cgDr1m2lbt1afPHFN9SsWYPnn++iDtNJTk5l69bdTJv2jtq/DQaD+h5VrFieZcvmM2nSTLZs2U3DhnU5duyUpHkVD6ys9f8HPY+raxMiIqKoXt2ZChXKMWhQHwYO7MUPP+whNDSc994bw8cff0nHjm3p3r2r2Tml/wvx6EiAUwoYDAb0en2+K1JHRkazdetufH39+OST91m79ns8PIao44wnTnyLceOm899/Fxg92jSXJTu4yfn6v/12kJ49n6FmTdOE0aVLP2PFivVER19VxwQbjaYP0JzBDcDLL7/IunVbc05gVF97zRpTKt5Fi1ap25s0aahOwrxz3g6YgpV//jlF//4vYWFhQbt2bVi06FM2bPiBkJAw4uISqFSpPDNnTlHXJ0hNTaNt21aMGTMSnU5nlpjg0iV/Nmz4IdfEU6PRSGZmJseOneK55zqrc4Gyy56Vlf/7XloVJM1szZo16N69K507d+DAgX9Yu/Z7IiKiiY+/QUZGBp98MhV3d/P1YfR6PatXL8t1Pg+PiWRlZZnVTULCDSpWNM3XMhgMdO7cEYCBA3uh0+m4fDmQnTt/pUKF8uo+p0//p97pfPHFZ2nRoimZmZkMHTqa9PQMdVhko0b1mTjRk+rVnTl50ovvv9/FzZvJZmX6449DbNv2k5pwIicvr7McPHgMvd7AsWOnGDCgl1kb0ev1uW5IZGXpuXIlgKCgMG7eTKZmzRrMmzcDrVaD0ahw8qQXCxcux8NjCJ06dcDJyUHtH4piWttpw4YfaNzY9ETVaDRy6ZI/Dg72BAQEExkZDZLmVTwCZan/3+95AObM+YCNG39QzzVwYC8OHTqGtbUV7703FjAtmvn119/SpUtHHB2l/wtRGMrGreci5ObmpgB4ed09Be3D+PHHX+jf/6W7Dqe5du06Wq2GyMgYmjVrnGvOjV6vx2AwqClrczIYDPj7B1G7ds18V2LPlpqamudCnmD60DUFYre/qLIf+efeN+8nUtnCw6Ows7OhUqUHX337/PlLtGjRVP05NjYOS0tLszuLRqNCSkoKdna2ue7yBQQE07BhvQc+f17c3Z8HwNvbu0T1zZxpZgEH4L7TzF69ei3PeVoZGRm52qWpLRmwsrLMtx4uXLhE9erOVKxYgaSkZOztc9fhnedJT8/Axsba7HyRkTGAkiuYCQgIxsWlunqHN6eTJ70pV86RjIxMNaFFtu++28rw4a+oZUlKSiY4OBQXl+p3XU1eURTS0tLy7V8XL16hatVK/PbbQUnz+ghlf4aXtD75OJXW/n+/5wFT5lI7Ozs1lbzRaCQ+/kauvh0dfZVy5RzR643S/4sp6fslm1RaIXscAY4oPUpqgJPN3d29XHaaWaAugJ2dbYHSzIoHd680r7eyY4kHIBc5BSf9v2hI/y8c0vdLNqm0QiYBjrgfJT3AyTZo0CBddppZoDPcTr2dX5pZcX8kzevjIRc590/6f+GT/l/4pO+XbFJphUwCHHE/SkuAk1PONLOAJXDXNLPi7gqa5lU8GnKR83Ck/z9a0v8fH+n7JZtUWiGTAEfcj9IY4GR78sknq2WnmQWqAFSoUD5XmlmRN0nzWjTkIufRkP7/cKT/P37S90s2qbRCJgGOuB+lOcDJ1rVrV5vsNLPAE2Ba5K9Hj24MHTqApk0bFm0Bixk/P3+2bt3F778flDSvRUAuch4t6f/3R/p/0ZG+X7JJpRUyCXDE/SgLAU4Omuw0s0Bvbn0etWnTkqFD+9O1a8f7XmiztDAajRw69C9btuzCx+dc9mZJ81oE5CKn0Ej/z4f0/+JB+n7JJpVWyCTAEfejjAU4qkeRZrY0SE5O4aef9kua1yKgFHTl1hw0MlP+kZD+byL9v3iRAKdkk0orZBLgiPtRVgOcbGU1zaykeS16BQ1wDh48SOfOndHpdBLgPGLS/6X/FycS4JRsUmmFTAIccT/KeoCTrSykmZU0r8WLoijK+vXrOXz4MJaWtzN7xcTEULVqVXW4VHR0NCNGjGDgwIES4BQS6f/S/4sDCXBKNqm0QiYBjrgfEuDkVtrSzEqa1+Ipryc427Zt4++//2blypV5zgeRAKfwSf8XRUUCnJJNKq2QSYAj7ocEOPkr6WlmJc1r8XZngLN//34uXbrE+fPnmT17NnFxcbRu3drsyYEEOI+P9H/xuEmAU7JJpRUyCXDE/ZAA595KWppZSfNaMmQHOEajkY0bN2JjY8PgwYN5++23WblyJWFhYWzYsIEGDRowcOBArKysJMApAtL/xeMiAU7JJpVWyCTAEfdDApz7UmzTzEqa15JHURTFz88Pb29vOnfuTK1atQAYPnw4GzduzN6HtWvXEhAQwPz58yXAKVrS/0WhkgCnZJNKK2QS4Ij7IQHOgykuaWYlzWvJpdfrlYSEBCpXrkxwcDD16tUD4LfffqNnz54AXLx4kebNm3PhwgVcXV0lwCkmpP+LwiABTskmlVbIJMAR90MCnIdTVGlmJc1ryZdzDs7QoUNxcHDItY+fnx9r166lcePGgMzBKW6k/4tHSQKckk0qrZBJgCPuhwQ4j8bjSDMraV5Ll5wBTs5haTkNGzaMzZs3qz9LgFM8Sf8Xj4IEOCWbRVEXQAghHrVbFxa7gd0508weOXLc8siR4w+VZragaV69vSXba0klcUvJJv1fCCGf4oXMzc3tGlD5yJGfsbe3K+riiGIsOTmFLl36AcR5e3tXKerylDYPm2ZW0ryWbnc+wbGxscm1j5+fH0eOHFEDIHmCU3JI/xf3S57glGxSaYXMzc3tMNB5zZqvaNOmZVEXRxRj3t6+vPXWFIDD3t7eXYu4OKXW/aaZlTSvZcOdc3C2bNmSax8PDw9WrlyJlZUVIAFOSST9XxSUBDglm1RaIXN3d39TUZRvGzasx9Sp42jcuMFjy+giSobk5BSuXAlkwYJlBAQEoyjKmz4+PmuLulxlQL5pZgcP7gfAtm0/SZrXMiJngHP16lWcnZ1z7ZORkYG1tbX6swQ4JZr0f3FXEuCUbFJphU/r5ub2M9CrqAsiSoRfvL29+yJfno9VXmlmc5A0r2VAzgCnoCTAKR2k/4u8SIBTskmlPR7aNm3ajNRoNP8DXIHKRV0gUazEARcURdnk4+PzHWAs6gKVVdlpZjUazXgARVGWSprXskECHCH9X+QkAY4Q4r65ubkp2R8eQhQ30j5FNmkLZY/UuQBpByWdtqgLIIQQQgghhBCPigQ4QgghhBBCiFJDAhwhhBBCCCFEqSEBjhBCCCGEEKLUkABHCCGEEEIIUWpIgCOEEEIIIYQoNSTAEUIIIYQQQpQaEuAIIYQQQgghSg0JcIQQQgghhBClhgQ4QgghhBBCiFJDAhwhhBBCCCFEqSEBjhBCCCGEEKLUkABHCCGEEEIIUWpIgCOEEEIIIYQoNSTAEUIIIYQQQpQaEuAIIYQQQgghSg0JcIQQQgghhBClhgQ4QgghhBBCiFJDAhwhhBBCCCFEqSEBjhBCCCGEEKLUkABHCCGEEEIIUWpIgCOEEEIIIYQoNSTAEUIIIYQQQpQaEuAIIYQQQgghSg0JcIQQQgghhBClhgQ4QgghhBBCiFLDoqgLIIQQRU1RFCW/X+V3jEaj0RRScYQQQgjxEOQJjhBC5HDlypVc23x8fMg/BhJCCCFEcSJPcIQQIof58+djYWH+0ejn58fq1atp1qxZEZVKCCGEEAUlT3CEECIHrTbvj0UJboQQQoiSQZ7gCCFEDhqNhtWrV5ttGzFiBIqiINNuhBBCiOJPAhwhhMjBYDDg6elpti0oKAiDwZBr6JoQQgghih/5thZCiBz69OlDv379zLb9888/aLVajh49SqdOnYqoZEIIIYQoCAlwhBBl3tmzZ1m4cCG2trYA7Nu3D4Dw8HBq1aoFwPr160lJScHa2pp27doVWVmFEEIIcXcS4AghyrxWrVqxadMm9Ho9Hh4efPPNNzg6OuLh4aHOxwkNDaVWrVr5JiEQQgghRPEgAY4QQtxy9uxZ6tSpg6OjIwABAQHqfJzExERee+01+vTpU5RFFEIIIcQ9SIAjhBC37N69mxYtWnDp0iWaNm1Kw4YNc2VUE0IIIUTxJmMthBACOHHiBI0bN2bw4MGEhIQwb948kpOTCQ8PJzU1FYPBQGZmJgkJCUVdVCGEEELchTzBEUKUef7+/iQkJDB8+HAAevbsSefOnTlw4ABr164lIiKC+Ph4MjIy+OSTT3B3dy/iEgshhBAiPxLgCCHKvIYNG9KoUSOzbXZ2dvTu3ZvevXsXUamEEEII8SBkiJoQoszTaDRFXQQhhBBCPCIS4AghhBBCCCFKDRmiJoQo8zR3eYTj5uamAHh7e8tjHiGEEKIEkCc4QgghhBBCiFJDAhwhhBBCCCFEqSEBjhBCCCGEEKLUkABHCCGEEEIIUWpIgCOEEEIIIYQoNSTAEUIIIYQQQpQaEuAIIYQQQgghSg0JcIQQQgghhBClhgQ4QgghhBBCiFJDAhwhhBBCCCFEqaEp6gKI0u+JJ56oaWFhMeOOzaNu/X9Vzo16vX6Or69vxOMpmRDmpK2WbVL/ZY/UuQBpB6WRBDii0A0aNEgXEBAQqdFonO+2n6IoVxs2bOiyY8cOw+MqmxA5SVst26T+yx6pcwHSDkojXVEXQJR+Fy9eVFxcXBoAbe+x66YDBw78+jjKJERepK2WbVL/ZY/UuQBpB6WRzMERj4XRaNxZgN0Kso8QhUraatkm9V/2SJ0LkHZQ2kiAIx4LrVZ7WFGU+Lvscr1cuXKHH1uBhMiHtNWyTeq/7JE6FyDtoLSRAEc8Fl5eXlkajebnu+zy86FDh/SPrUBC5EPaatkm9V/2SJ0LkHZQ2kiAIx4bjUaT76NdrVYrj31FsSFttWyT+i97pM4FSDsoTSTAEY9NYmLiX0BSHr9KunHjxoHHXR4h8iNttWyT+i97pM4FSDsoTSTAEY9NQEBAhqIoeWUf+SUgICDjsRdIiHxIWy3bpP7LHqlzAdIOShMJcMRjlc/jX3nsK4odaatlm9R/2SN1LkDaQWkhAY54rDQazW9Aao5NqRqN5veiKo8Q+ZG2WrZJ/Zc9UucCpB2UFhLgiMfKy8srFdif/bNGo9l3a5sQxYq01bJN6r/skToXIO2gtJAARzx2iqKoj3oLuLCWEEVC2mrZJvVf9kidC5B2UBpIgCMeOysrq73Z/7azs9t7t32FKErSVss2qf+yR+pcgLQDIcQDcnNz+8XNzW1PUZdDiHuRtlq2Sf2XPVLnAqQdlHQWRV0AUWbt1Gg0SlEXQogCkLZatkn9lz1S5wKkHZRomqIuQBmhdXd391AU5X9Ac6ByURdIFCtxwEWNRrPJy8trHWAs6gI9QtL2i1ZRti2p+6JVVHUv9V60isv3ibSDolVc2kGRkQCn8Gnd3Nx+BnoVdUFEifCLt7d3P0rHh5G0/eLlcbYtqfvi5XHVvdR78VJU3yfSDoqX0nRdUWAS4BQyd3f3NxVF+bZhw3pMmzaexo0bYG9vV9TFEsVISkoqV64EMn/+UgICglEU5U0fH5+1RV2uhyVtv+gVVduSui96RVH3Uu9Frzh8n0g7KHrFoR0UNcmiVshuPZ5l2rTxtGnTUjq5yMXe3o42bVoydeo4ADQazf+KuEiPhLT9oldUbUvqvugVRd1LvRe94vB9Iu2g6BWHdlDUJMApfM0BGjduUNTlEMVcjjbiWpTleISk7RcTRdC2pO6Licdc91LvxUQRf59IOygmSuF1RYFJgFP4KgNyB0Pck4ODffY/S8tkTGn7xUQRtC2p+2LiMde91HsxUcTfJ9IOiolSeF1RYBLgCCGEEEIIIUoNCXCEEEIIIYQQpYYEOEIIIYQQQohSQwIcIYQQQgghRKkhAY4QQgghhBCi1JAARwghhBBCCFFqSIAjhBCPmKIoRV0EIcRjJH1eiOJFAhwhRIlw4cJlkpKSc23fufNXkpNT8j3u559/IzU17Y7XupTv/kajwhdfLCctLR2AzZt/JDQ0gszMrAKX9f33PyEp6ab6c0BA8F339/PzZ86cRRiNcpEkRDbp80KIByUBjhCiRGjYsC7vvvsRQUGhZtt37tyLlZVlnsecPv0f//xzEq1Wi6IonDzpTXT0VbZv/xmjUcFoVPD1vWh2jI/POeLirmNrawPAoUP/4uxchYSEG8yatYDTp/8z29/LyxdPzylm/5065cO7787G03MKb7wxiSFD3ua//87n+7etWbMZnU5LXNz1B3lrhCiVpM8LIR6URVEXQAghCsLa2pq3334dvd5gtt3KyhIrK6tc+yuKwurVG9FoNLz88uvUqlUDa2trNBoNaWlp9O49do1meQAAIABJREFUjBo1nLG3t2fBghlYW1sDsH//AaZMGa2+jlarwcbGGhubKrz99ussXPgNTz7ZWv1969aufPnlx0RGRtO0aSMAPD2nsHr1lwAEBobQoEHdfP+u48fPoNFomDp1PHPnLmbChLdwcnJ84PdJiNJC+rwQ4kFJgCOEKDHc3Frm2qbV5v0geuvW3Qwc2JuNG3cQGxtHbGwcrq5NUBQFW1sbEhISqVHDmcWLP1WPuX49npiYWMqXL5fna1avXpXnnutitk2n0+Ho6MD48R9Sr14tAC5fDsTTcwoAV64EsW7dYurXr5Pr9eLi4tm48Qc+/3wWWq2WkSMHM3HiTN57byzNmjUq2JsiRCkmfV4I8SAkwBFCFGtGo5Fjx05hMBjw8TnPpEmj8t13z57fadXKlerVq9Kly1O4uFRn69bdHD++j6ysLOzt7dR9PTwmsmjRp2bH//DDL4SFRbJr11727PkdBwc79cIlKCiU+vXrkJGRiaOjPZ06dTA71tIy749TRVHyvNCJj09g2bK1zJkzDUdHBwBq1qzB6NGvM2nSTFq1cqVHj260bt2CihXLF/j9EqKkkz4vfV6IhyUBjhCiWDONpYcDB44SHBxGamoahw79i79/EDExsQQGhqh3TgESE5P43/8G4eJSHYCIiCjGjZuW63WDg0NxcLBXf46KukqtWjWoVq0Kgwf3Y/DgfsDtoSc5h6DkpW7d2ixfPt/smOx/6/V6LCxuf9yeO+fH5csB9OjRjQ8+mGv2OpGRMQwY0IvQ0Ai+/vpbVq9eeL9vmRAlmvR56fNCPCwJcIQQxV7nzh3o3LkDnp5TsLOz5cUXnwWeBUx3Ze92EaLRFCyXypUrgfTq9Tx79vxmtr2gWY4uXw5QL7qy7wBnZGSSnJxCRkamerGTmJiEs3MVWrZshtGo4ObWEmtra0aMGM+GDUvV18vMzEJRjOo8ASHKEunzQoiHIQGOKFSKoqDRaIq6GKIMMxqNeW43GIxm7bNr14659omPv3HPoSJhYZFER8cwaZInADdvppCSksaLLz6HXq8nKSmZr7/+lv/9bxC1atWgXDknAD78cB7XrsWprxMUFKZeLOn1BlJSUs0ufkTJIJ95RU/6vCgq0v+LD0kTXQLJ2gAmBw8eu2tZjhw58dCLrwUHh93195s27SAlJfWhziHuT1aWnhMnvAq8//TpE1i+fAGZmVmsXv0lq1d/SUZGJsuWzQPg2rX807T+++9pOnZ8Mtf2nP0mIeEG0dGxuLhUp2LFCvTo0Y2BA3vRt29PBg7sTe/e3Rkz5vVcF11Tp45nwgRPtUz169dm9eovWbjwYwYN6s327auxsZE7uSCfeWWd9PmyTfq/eBDyBKcEatiwLuPHT2fatHfMJjLu3LmX3r2753lM9toAPXp0Q1EUTp3yoXZtF7Zv/5nZs5sAcP68H0880Vw9Jq+1AQYO7E1Cwg2++WYdvXv3MEud6eXly6pVG8zOe/lyIO++Oxsw3T3z9b3It99+SevWLfIs55o1m6lcuSJxcdepWrVynvtkZemxtLTAwcGeTZt28MYbQ/nuu60cO3aatLR0YmPj1Mw2Dg72eWbhKajZs7/A2vp2OlK93kB6egYODrcnrtra2jBwYO8HPocoGEVR+P/27jwuqrL///j7sAw7KrmvaZblLpZtd1lfK8tbs0VtsaRMscwlo24ts1UzNeuu1O7QbDFt+9ld3nm33JZmoaYC7vuGoiLiArIzM+f3BzEyAgqIDBxez8fDh8zhnDPXMHPNzPtc51yf9PQMTZ78jtuUrsXZtWuvpk6d4bo9b97XSkhIdB0t3bNnv2bM+FAOh1MHDhzSJ5+8q0aNGhTZz/LlK/Xyy8+4LcvLs2vatFn6+ON3JUkdO7bV4cPJ6tKlgx54YJjmz/+XcnJy9fPPy/Tbbys1dOhDmjNnvp55ZrjbfkJDg7VmzTqtW7dJAwfe61r+7bf/VUCAP0cCC6np73k1FX0eEv0f5UPAqYZqem2Ajz76XGvXrpPTacrhcGjlyrUKCPDXnDlvKSZmtfz8bLryys7F3EPZeXt7Kzp6uk6cSFWdOrW0ZMly2Ww23Xhj/mw6iYmH1LRp4wq5L5zdqVPpOngwSePHj3GbGclutxdZt3Xrlpo27SWFhobIMAzNnDlXAwb0Va9ePWSaph55ZFSJ5/CbpinTNPXTT0vVq9ctCgzMv6+Co3qHDx9RYuIhZWZmKjAwUF9++a0CAgIkSWFhdeTlZWjAgDvlcDg1d+7nOnkyVbfccqNiYlard+9b3e5r4MB7FRExwvVlJysrW3a7Q/373ylJrlmcarqa/p5XU9HnIdH/UT4EnGqqptYGOHEiVQkJiXr44f46dSpDvXr10KZN2xQcHKT77ouUYRgKDQ1WdPQ85eXZNXv2dLeZbMpr7NjXJJmuI2yfffa1JCkx8bC+//6zEv/2qDihoSFauHCu6tYNc1verl2bYtevVStUyckp+u67H9WkSaO/LlKWHA7HWU9ddDpNrVu3SX5+fm7n6Ldvf7lGjRovu92hTp3aKzc3T4GBUps2rdW+/RWS8kfzRo9+wa0N9epdpC5dTvfX1NQ0jRo1XjabrwzDkLe3tyIjo3TkyFENHfq0/Pz8tGrVWpmmqb1792v27LfUsmXzsv/BLKamvufVZPR5FKD/o6wIONUItQHyawNMmvScRo0ar8zMLH3xxbcKDQ3We++9rrCw2nr//anKzc2TzearyMioCgk3BY9p5sw3iiyPjIwi3FSiM7/oSPnntRdn9+59OnkyTY899mCR52jYsEEl3sfbb7+qzMwsty8oZ7ufwuu9+ebLJe63QK1aoZo795/y9vY+57o1He951EOhz9dc9H/6//kg4FQj1AbIrw2wfPkqtWvXRn/7Wzf9+ONS3XXXHTIMwzU16KBBI/TZZzNL/4ctBcMw3P62qPpKOjXAx8dH11/frcTtQkNDLvhpAnzRKR3e86iHUhb0eWuh/9P/zwcBp5qp6bUB7Ha7QkODNWzYIL3//ifKyMjUkiXL1axZE3l5GTJNU0FBgcWO3HzzzWIFBQWqZ8+bS/U4pNND4CVNO8rMJ8CFVdPf84CajP6P8iLg1CBWqA3g4+Ojzp3b64cfftEtt9ygSy9tpdmzP9OKFavldJrKyspyDfme6eOPv1DduheVK+D07Hmz+va9XZL7EZoffvil1PsCULms8J4HoHzo/zUbAacay8uzKzZ2va65pmup1n/++dHq3v1aDRnytGu6y4iIkW61AerVu6jYbc9WG6Bdu8slna4N0KJFU2VlZeu667rJ399PffveLsMwdPToMfn6+ig19ZTbPsaOHakDBw66LhyNiBip6OjpSktLV0zMn7rjjh6udTMyMpWSckzz5y9UYGD+LDaHDx/RokXztGDBv5WcfExNm+YPT585d/2XX84u8zU5BVNE33FHDz399IsaP/4pSVJycoo2btyqW2/tfrbNUQGWLo3R9dd3k83mW+zvly9fpRtuuPq8plfdu3f/WS/qnTfva91zz9/dzuOW8vtMamqaWrduKSl/mtEWLZoqLKxOudoxdeoMPf54RJHTZfLy7Prxx1917bVXFntNQk1RE9/zaoLK6OOFJSUlKyQk2NWfPdH/nU5nsddv/vlnnK6+Otx1Ozp6nh555P4S/zY1Cf0fZUHAqYZqcm2AgAB/tWjRTGFhdfTuu/nnr0ZGRv011eIIrVy5Vh07tlVs7Aa99darbvezePES1a9f1zXF87ns23dAl1/eWk6nU1OnzlDfvnfooovyv1zWr19XLVs21/DhY/XQQ/1LvU+UXnWod7RsWYwyMjJdX3DefvsD9erVQ/fff3e52rFp0zZXuPnwwwVq0+YSHTt2QomJhxQaGqKkpOQaGXBq8nuelVVmHy9w8mSq/vOfnzV06EOuZZ7o/wsWfKOHHupXZPnhw0f0r399oscfj1BCwgH5+PjU+HBD/0d5EHCqoZpcG6DgiNfx4yfchnQlyWaz6cCBg3rggbu1ZcsOTZ8+SxMmRLkqQ3/00edq0+aSUoeRpUv/UL9+fTR//kJFRNwnb29vxcSs1rFjJyRJrVq10KuvjtXzz79OwLkAqkO9o9Wr4/Xaa/kXscbGrtdll12i4OBgJSenlKtom7e3t9LS0pWbm6uVK9fqgQfudo1U1mQ1+T3PyiqzjxeYOfOjIrNxVXb/P3DgkOtMg8Ly8uzq0eMGzZ+/8K99blBExABlZWW7ik/WRPR/lAcBpxqiNoB0zTVXasSIwZLyP1hWrFijpKRk15GStm0vU9eunfTbbytc19wsWPB+sUXBinPyZKrCwzvKz8+mgQP7ycsr/2jKhg2bdfvt/+dar2HD+q7hblSc6lDvKCHhgBo3bih/fz85nU598cW3mjAhSkFBAXr99Xc0dOhDatiw/jnvc//+g3rxxSmy2Xy1e/c+PfnkWIWHdzzvx2IlvOdZjyf6+OrV8WrWrHGJBw0qq///9tsKPfjgvUWW33vvo65tIiOjdPJkmn788VclJR3VtGkvqk2b1uf1+Ksr+j/KgzGwCyw8PNyUpNjY/3msDQW1Abp0ae/2Bm232/Xnn3ElTp+ZlnZKmZlZpfqSVl4Oh+O8p8/MysqWw+Fwm/ZRyj8aY7c7Spyjvirq2jX/KE9cXFy175sV8dovqHeUm5vnqnc0fPjYIvWOzjaTTmkMHvyU5s79p558clyJ9Y7OvI/33pujlSvXasGCf+nrrxepU6f2uuyyVpLyRxhffvlNdevWRX//+62qU6f44nEltUOSHntsjN5773XXl7G0tHTt2rW33KfpVOZry9Pve1Z/zyurynruy/O8V1Yfl6QJE97Q449HuKYRLlCZ/T85OUXx8RuLnexmyJCnNWfOW0WWF35fKAtPfZ7Q/0tm5f5f1VSfb34oN6vXBihp6N4wjGoVbuCuKtc72rx5m666qos2btyq+PiN6tati6ZP/5fGjh2hJk0a6eWX39To0UP188/LlJh4qNQBR8oP5vv3J8put2vUqPHy8jK0Y8ceXXZZK4WGhqhdu8uYPvQcrP6eZxWV3cf37t1fJNwUVhn9/5dffteAAXeWcP8l3yfXZZQe/R8SAQdAFVSV6x2Zpqnjx0/qhhuu0dy5C9SpUzt5eXnp5MlU15ennJxcXXLJxXriiUckSStXrtX27buK7Pehh/q5HkNSUrKOHTuhhQu/12233aTMzCx9+eW78vIy9MQT/9D7708t9eMBqrrK7uNSyf37Qvf/AidPpiokJKjEL7mFpwsubNeuvcrLs9f4yQaAsiDgAKhyqnK9I8MwdMMN1xTZtvDR1YJrtgpce+2VuvbaK4u974SERL3++jtq1aq5goOD1K9fH9d54mfuB7CKyu7jUv5ENMWdInSh+3+Bn35aprvvvqPE9kVGPqz77uurvXv3a//+g+re/VpJ0q+//iEfH478A2VRujKvqDGOHj2mXbv2um7Hx2/U8eMnyr2/WbM+0pEjR5WTk1Pkd9nZRZdJ+bVuirN6dXyJ91PR7YZnZWRkKiHhgObPX6hp02YqMjJKixb9qO7dr5Pdbj9nvaMPPnizTPd3Zr2jY8eOS8o/X/6XX34vVb0jX9/yHV1t3ryJxo0bqbFjR7raceDAIbVo0bRc+0Pxli6NKfJaKWz58lVnvQAZFauy+7gkderUTlu27CiyvDL6f0ZGpnx9fUqc6Gbz5m26886eGjbsWTVv3kSrVq3VN98slpQ/svTf/y5xG0lC2dD/ax4CDtwsWxajP/7403X77bc/0M8/LyvXvtLS0rVmzTrVrRump56aoMjIKLd//fs/ptzcXLdtUlKOa9CgEcrNzZXTaWrnzj2u302Z8p6cTqd++mlpkTeqimw3PK9wvaPo6OmKjp6uRo0alLre0cqVa0t9X6Wtd7R8+aoi2xZ8ICYmHir3lJ6GYRSZKWfVqljdfPPfyrU/uMvLy59KtqDWipQ/PfGQIU9r4MDhuvXWAYqMjNJnn32t+PhNnmxqjVKZfbxAv3593EZjpMrr/z/++Ktuv734Eac//4zV1q075ednU3Z2try9vfXEE4+qU6d2cjpNzZ+/UIcOHdGkSW+X+THXdPT/motT1OCmIut6LFnymyIiBsjb21ve3t5FriF47LExRY5m/f77Kg0aNECnTqVr7979Wr9+i+LiNuq++/qqTp3aSk/P0A8//Kqrrw6XzXb6ws2KrkcCz6ou9Y4KPjy/+ea/ioi4z7W8oJ5CeS8KXrt2nSZOfK5c28JdZdVaMU1TM2bMVb16YTp5Mk3Dhg3iovCzqMw+XqBZs8a66KIw7dq111WcszL6f25urhwOp6uuSmFZWdl6//1P9MYbL8jLy0tZWdlyOk2FhgYrNDRYmzdvV3Z2tgYPfkA//vhrmR4v6P81GQEHLhVV16PAL7/8rilTJpT4e2/vogOIP/zwqyRTixf/T82bN9XTTw/TG2+8J6mvDEOKi9uo119/3q2OQUW3G1VHVa535HQ6lZubq5iY1brllhvVpElD1+8cDkeZLgqOjV2vpUtjZLc7FBOzWvfe29ttW7vdLqfT5JqcMqrMWis//7xMTZo01D33/F2//PK7Fi9eUqS4H4q60H38TI8++oA+/HC+GjduoNzcvErp/zExa3TbbcWf5hYQ4K+PP37XdfvKKzvp8cefcd02DC9FRNwnHx8f9e59W7kec01F/6/Z+LS8wDw9H3xZVGRdj/j4jRo58nn99tu38vb21uDBTxW5SNJud7jN7b91604tXfqHhg9/VPHxGxUSEqx33pntun7n4MEkNWnSUEeOpGj+/FmuujcXoh6Jp1hpvvqKfu1XtXpHTqepjIwMBQYGFLloufAR4tL688841aoVopycXHXq1M7tdx999LkGDRpwXlOM1qQ6OGeqjForUVEvafz4MQoLyx9pnjDhDb399msV+CjKryrXwSmssvq402nKMHReR9gruv9fCDW1Ds6Z6P/W+V5RFozgQFLF1/VYt26TOndu73rjv+eev6t371vd3kQSEg64bTNv3tdKSTmmG27oqyuuaK2bbrpeGRmZRQqcDR78lOsD8ELWI0HVUtXqHXl5GSXO8lSeLzdXXx1e4u8effSBMu8P+Sqr1kpS0lGFhdWWlH++/9Gjx857nzVNZfXxihgJrej+jwuD/l9zEXBQ4XU9NmzYqrvu6qXY2A2u5QcOHJLD4XBb18/PTxkZmQoKyj8veeLEcfLy8lJExEjNmjVFmZlZWrr0jyJ1AdLTM8rdbgA1R2XWWjFN9xoqJdVUAVA56P81GwEHFV7XIzy8g9tth8OhuLj18vaOkCRXYElNPaWePW/W4MH5R6cnT35X+/bt1549+zV8+FjXaTpnDhsPHvxUudsNoOaozForBe8/Jd2GteTk5MjPz8/TzcBZ0P9rNgIOSlTeuh5nOngwSY0bn74As6TzXMePzw8uEREjXesUTCldWMEITkkqqt2ovuLjN6pz5/YVMovN3r37i0zjXNi8eV/rnnv+7hqJLHD06DGlpqa5TleJj9+oFi2aKiysznm3CaWTkZGplJRjmj9/oWtiksOHj2jRonlasODf56y1UpYLjhs0qKcTJ1JVp04tpaWlq0GDehX3QCyutH0lPT1D6ekZ5Zo05tix46pdu5bb9TKTJ7+jqKgnNHfu57rxxmvVtu1lrt9lZGTKZrOVeGrciBHPaciQgVq/fouGDn2oxPearVt3auHC7/X880+d84Db0qUxuv76biVOTrJ8+SrdcMPVzM5VSvT/mo2AAzcVUdejQEFRsnXrNqlevbqu4mmlkZOToyNHUmSapmbPfsvtdwUjOIVVZLtR/U2bNlPvvfe6q57F+Xj55WmuQoBS/uQY2dk5Cg4+HWgCAvzVr18ft+2WLYtRRkam60vb229/oF69euj+++8+7zahdArXWnn33UmS8g+alLbWSv36dUs9FfGtt3bXb7+t0F133aGVK9eoR48bK/zxWFVp+0pwcJDmz1+oAQP6lvl6Sh8fH40cOV5vvDFeoaEhkqQ9exJks9kUF7dBjz8eIdM0tXp1nK6+uqv8/Gx67bW3NHjwg2rRoqmys3Nc01RL+e8DV1/dVRs3btOBA4fUvHmTYu93zpzPVLdumFJSjpVYsiAvzy5fXx9XrZbHHntQH330uWJi1igrK1vJySlq2bKZ629w5lkSKB79v2Yj4MBNxdb1MOV0OhUfv1Hjxz+luLiNOnbshFJT01SrVmixW9jtdiUlJSs6ep6eeOIRFVdYuLhqwxeqHgmqJz8/P7dws3XrTl1xxaWS8l8T69ZtUpcupfuS4O3trejo6a6jc0uWLJfNZnN98CUmHlLTpo2LbEdtJs+rzForPXverH/96xN98cW/deJEmh5/fNAFeETWVJa+8vDD/fTWWx/ohRfGlOk+atUK1S233KCsrGxNmfKejhxJ0c6dexQZGaXt23crMjJKpmkqJydPzZo1VePGDdS37x1av36z/P399Oijo11H+yVp9+59ioyMkt3u0MKF3+vrr+cUmf1t5cq1f32ZHqlJk/6p0aOHusJVYZVVq6Wmof/XbAQcuFRkXQ8pP6z88cdq3XPP3+Xj46Nu3bro7bdf0yeffKV9+/YrJeWELrqotiZMiHLNPpKZmaUrr+yk4cMflbe3t9vEBNu27dQnn3xVpP5BRbcb1dPRo8c0fvxkSabry0dQUKAmTnxOTz45Tq1bX+xaNzk5Rf/v/33odgrCp59+pUGDBpS4/7FjX5N0OjB/9ll+VezExMP6/vvP3M65pjZT1VIZtVYMw2Ayk3Ioa18JDAxUs2aNtWbNOl11VfFf+s/sy0eOHFX9+nV1zz1/1+7d+zRp0vOSpDlz5mvIkIH64ot/q3//O+Xt7a3jx0+6Po/CwzuoU6e2Wr06XvXr13WdOp2bm6fhw8fqgw/eLPHgWUrKcX366VeaOvVFeXl56dFH79dTT03Qs88+6TrYIlVurZaaiv5fM9FLUIihDz54s9h5/ceOHVnmkDBhQpQCA/3djqQ3b95Eo0YNKXGb0NAQ14ePJEVFPeH6+fLLL9WYMcOKucamYtuN6qlevYs0Y8Zk2Wy+Gjz4KbdrvVq3vtjtdkTEyCJfEubPX6iHH+5f4hcWX18fzZz5RpHlkZFRRS4oXbToJ61ZEy9JWrjwew0d+rBCQ/MvZn3yyUerVW0mKyj4ciNJbdu2kcPh0HXXXeW2zt1393Id3ZVU4igzKlZ5+kqPHjcoOnpeiQHnzL5stzs0evQLmjJlgrZu3alXXpkuf3+b0tMztHp1nNLTM/Trr39Iyr9mdNy4ka4JbNauXafLL79UpmnqpZemKTHxkKT8U94cDocOHkzS1q07dfvtpy9GP378hGbM+FATJ45zXcTetGljPfHEIxozZoI6dWqnnj1vVufO7RUWVluTJj3nqtXyxRffumq1hIXVLlKrhXBTdvT/molpHuBSMK9/ccUEyzOvf7Nmjc/7Goj27S93u12/ft0iXwgrut2ovgqHWdM0tW3bTuXm5rpqHpxp+/Zd6ts3Qnv2JOjWW7trx47d6tXrQSUkJBZZ1zAM16QXhf+dqaA2U3BwkKs204wZH+rgwcOS5KrNdOpUuuvLEipPQIB/kVOJJM/VU6rJyttXmjZtrD17Etz2dba+3KRJQ3Xt2lHJySlq3Lihpk17UdHR0xUcHOT2/wcfvKlZs95wm51z375E1alTS15eXnr66WGaM+ctvf/+VAUHByk7O0dLlix3BTRJ2rhxq3799Q/17Hmznntuktt7xcsvT9O99/aWr6+v3nlntvLy8i9sL6jVMmZMpDp1aqsxY4YVqdVit9sv2PNQk9D/aw6eTQCWkZdn19q165ScnKIvv/xWN910vWw2m0q6BKtNm9Z6882X9L///SbDMLRs2QrNmDFZLVo0da1TMDpTUl2Dgsk0JGozAaV1vn3lzP54rr4cEXGflixZruuv76annpog03QqIyPL7RocKX/WxMWLF8hm89XJk6nKy8tTbm6u/P39NHz4OAUFBejw4SPq1i1cJ06k6rffVrguYE9NTVODBvXUocMVcjpNhYd3kJ+fnyIiRuqTT95ztTU3N0+m6ZSfn9951WoBUDJ6DABLOHEiVU888Q8NGHCnwsLquM3AdOZpZwUTVeTl2RUbu15JScmqX7+eDh06ori4DWrRoqlrRLAg4PTsebP69r1dUv5paQWnvP3wwy9u90NtJuDczqevOByOIjVoStOXExMPKSDAX97e3po1a5p+/32Vrr46XEOGRGnWrCny8fFRZGSUbDZfbdmyQ5Mm/VMvvhilw4eTVb9+Xfn6+urdd/NHZS69tJW+/nqRbrzxWtWunX9WQcFpTePHT9bRoymutu3Zs9/tIveMjExX4DmfWi0ASsYpagAsoU6dWvr00xl/TWrhfrrimTPvFRz93b8/Ubt27dOzzz6pXbv26JlnntDGjVuVmHjYtW7BFNF33NFDTz/9omu68+TkFP3yy++69dbu52wbtZmA0ilNX9m8eXuRWRDP1pcPHDikJUuWKzk5P3QUZKicnFzNmvWxTp06pZ9+WuY2KtS27WXy87OpdeuLtXXrjiJ1tTp2bKtly1Zo0KABMk3TbUKcsWNHavToSEVHT1d09HS1atVc0dHT9eabr6h//z768sto12xdGRmZSkg4oPnzF2ratJmKjIzSokU/qnv362S3289aqwVAyQg4ACyjpAklCp9GVvj2JZdcrBdeGCObzVc7d+5VSEiwXnnlH67TWvbtO6DLL28tp9OpqVNnqG/fO1zXldWvX1ctWzbX8OFjtXz5qiL3SW0moHTK2ld++mmp7r23t9uys/XlJk0aadu2Xapb9yJJ+aNEaWmnFBoaoi5dOuj//u9vql+/rhYu/N5tn8eOnVBenl1//hmnm266XklJyYqMjFJKygktXvw/padnKDs7W3v2JOjIkdPLrfcFAAAZwUlEQVQjNqGhwVqzZp3mz1/otr9vv/2v0tMz3A64FK7VUhCIGjVqUKpaLQBKRsABYHl79+53u9j3zAt2fXx8tGjRp0W2W7r0D/Xr10fz5y9URMR9uvTSVoqJWa1jx05Iklq1aqFXXx2rjz/+osi256rNBCBfWfrKrl17Va9eXbdyAIUV15e9vAyFhdV2TVBjmqbi4jaoW7cuSkpK1rBhEbrqqs66665ebtu1a9dGiYmH1KhRA9WpU0v9+9+p6Ojpuv/+uyRJzz47XK+8Ml3r1m1SSIj7hesDB96rxYv/57qdlZUtu92h/v3vlGEYrkkSzqzVUlBbRzpdq+W2225SQIC/pk+fpezsnFL8RQFwDQ4Ay1i3bpO2bdupU6fS3ZY3bdrIbZroe+559Jz7OnkyVeHhHeXnZ9PAgf1c1wNs2LBZt9/+f671GjasrxkzJrttS20moHTK0lcyMzO1bNkKPfbYg2W+nxMnTiosrKVrvzfeeJ0kqV+/3vL29tb27bu1cOH3qlOntmubiROf06effqXBgx9wrbtsWYz8/Gx69tknJeXXu3nnndnq3v06OZ1pGjVqvGw2XxmGIW9vb0VGRunIkaMaOvRp+fn5adWqtTJNU3v37tfs2W+pZcvmkspXqwVAybja9QILDw83JSk29n/nWhVQ1663SpLi4uKqfd/01Gv/P//5Wf7+fm7XxmzbtlOXX366uN7Bg0klHgGuCE6nqYyMjGJrM+3atdcj05dX5muL972qpbKe+/I872XpK/kjOuWbqMPpdMpud8hm8y2xD27evE2NGjVQWFgdSfmjKoGBga7rZZxOp44fP6m6dd3LHxw+fES1aoUoMDBQDoej2JIFZZGVlS2Hw1FkOmPTNGW3O0o9nbGnPk/o/1WLlb5XlAUjOAAspU+f24osKxxuJF3QcCOdrs1UHGozAaeVpa/k14Yp7/14yWbzKna/Bdq1c6+7VhB0Cu/jzHAjSY0aNXD9fL7hRsq/Lqc41GoBSo9rcAAAAABYBgEHAAAAgGUQcAAAAABYBgEHAAAAgGUQcAAAAABYBgEHAAAAgGUQcAAAAABYBgEHAAAAgGUQcC68FEnKyMj0dDtQxaWnZxT8mOLJdlQgXvtVhAdeWzz3VUQlP/c871WEhz9PeB1UERb8XlFqBJwLb4sk7dix29PtQBVX6DWy2ZPtqEC89qsID7y2eO6riEp+7nneqwgPf57wOqgiLPi9otS8Pd0Aq2vcuLGPpDu3bNmhSy5poZCQYNlsNk83C1VIenqGNm3apilTZuj48ZMyTXNiUlJSvKfbdb547Xuep15bPPee54nnnufd86rC5wmvA8+rCq8DTzM83YAawCs8PPw7Sb093RBUC/+Ji4vrK8n0dEMqAK/9qqUyX1s891VLZT33PO9Vi6c+T3gdVC1W+l5RaozgXHjm4cOHv2zYsOEBwzBqSQqWFOjpRqFKSZG0xjTNifHx8eNknTchXvue56nXFs+953niued597yq8HnC68DzqsLrAKh5wsPDzfDwcDocqjxeqzVTeHj4y3899y97ui2oPDzvkHgdWAGTDAAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDAIOAAAAAMsg4AAAAACwDMPTDUDNFB4ebv714ysebQhwbi9Jkmmav3m6IRZzmaQQwzBOmKbp9HRjzmQYRgtJMk0zQdI+z7YGlcUwjO5Sfn83DGOZh5sDz3npr/9fiYuLe9mTDUH5+Hi6Aaix7Mp//b10rhWBqqDgiw8qXLBhVN1jbX8FnRaebgcq11/9nT6PPE83AOVDwIFHmKZ5h2EYf/N0O4BzMU2zlaTmnm6H1RQKjKdM0zzu0caUzCnpsPiSU6MYhpEjaZ2kLE+3BZ5jGMYpm832kafbgfKpuofNAACWVfg0VU4BAQBUJCYZAAAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZBBwAAAAAlkHAAQAAAGAZhqcbAACwto4dO0b4+PjMMQzD9ZljmqZ3wY+GYTgLlufl5c3fsGFDRKU3EgBgGYzgAAAuqDZt2iw0TdPHNE3vgn+Ffm0UXh4YGLjeYw0FAFgCAQcAcEF9/fXX6V5eXrmlWdfhcCy40O0BAFgbAQcAcME5nc5fzrWOaZrH16xZk1QZ7QEAWBcBBwBwwXl5eQ0yTfOs69hstmmV1BwAgIURcAAAF1xsbGyKYRh5Z1vHbrdzehoA4LwRcAAAlcIwjJiSfufl5XUqNjZ2f2W2BwBgTQQcAEClOHXq1EMl/S43N3dGZbYFAGBdBBwAQKXYsWPHQUn24n7n4+Mzt5KbAwCwKAIOAKDSmKYZV8zizLi4uF2V3hgAgCURcAAAlcbX1/fhM5cZhjHHE20BAFgTAQcAUGlWr169Q5Kz8DK73R7toeYAACyIgAMAqFSmaW4qfHv9+vVbPNUWAID1EHAAAJUqMDDwsYKfDcP4VdLZK4ACAFAGBBwAQKWKiYlZq9Oh5llPtgUAYD0EHABApTMMY4ekzNjY2HhPtwUAYC2GpxsAACgzr65duw42TfNhSW0l1fV0g2qYFElbDMOYFxsbO1dnTJoAAPAsAg4AVC9e4eHh30nq7emGQJL0n7i4uLtEyAGAKoOAAwDVSNeuXYeYpjm7deuWGjdupC677BIFBQV6ulk1SkZGpnbs2K033nhPu3btlWmaQ+Lj4z/0dLsAAPm4BgcAqpG/TkvTuHEj1aVLB8KNBwQFBapLlw4aO3aEJMkwjCLFSwEAnkPAAYDqpa0kXXbZJZ5uR41X6Dlo58l2AADcEXAAoHqpK4mRmyogODio4EcmeQCAKoSAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAoFdM0Pd0EAADOiYADADWA02lq2rRZysrKliR99tn/U0JConJz80q9j3/841WlpZ1y3d61a+9Z19+6dacmTnxbTue5g9HSpTFnbcvy5avcAtbmzduVlpZeZL2FC79XenpGifv57rsflZmZ5bZs8+Zt52wfAKD68PF0AwAAF158/EalpBxTQIC/JGnZshXq16+PTpw4qZkz56pPn5666qrOrvVjYzfogw8+cdvH9u279cwzL0uSHA6nNmzYotmzp6tz5/bF3uecOZ+pbt0wpaQcU/36dYtdJy/PLl9fHwUHB2nevK/12GMP6qOPPldMzBplZWUrOTlFLVs2kyQFBwcpPLyDJKl164s1cuTzGjdulFq1auHa38KFi9Wnz23F3teaNev0xx9/qmfPm2Waplavjlfz5k305Zff6eWX20iSNm3aqo4d257rzwkAqMIIOABQA/zwwy+KinrCddvLy5C/v5/8/evp8ccf0ZtvznQLOJ07t9P06a/o4MHDuvzySyVJkZFRio6eLknavXufLrnk4hLvb+XKtTIMQ2PHjtSkSf/U6NFDFRoaUmS9jz76XGvXrpPTacrhcGjlyrUKCPDXnDlvKSZmtfz8bLryys5FtvPz89Pjjz8iu93httxm85XNZiuyvmmaio7+VIZh6O67H1GzZo3l5+cnwzCUlZWlPn0eUuPGDRQUFKQpU16Qn5/f2f+gAIAqi4ADABZ37NhxJSUlq3btWsX+vlGj+rrllu5uy7y9vRUSEqyRI8e7RlC2b9+tyMgoSdKOHXs0d+4/3UZPCqSkHNenn36lqVNflJeXlx599H499dQEPfvsk7riiktd6504kaqEhEQ9/HB/nTqVoV69emjTpm0KDg7SffdFyjAMhYYGKzp6nvLy7Jo9e7p8fE5/bBWM5hTm5VX8mdeff/5v9evXR59++rWSk1OUnJyidu3ayDRNBQT468SJVDVu3ED//Odr5/hrAgCqOgIOAFjcV1/9R/v3H9Q33yzWokU/KTg40BVW9uxJUKtWLZSTk6uQkCDdcMM1btv6+hb/MWGaZrHh5vjxE5ox40NNnDhOISHBkqSmTRvriSce0ZgxE9SpUzv17HmzOndur7Cw2po06TmNGjVemZlZ+uKLbxUaGqz33ntdYWG19f77U5WbmyebzVeRkVHy8fGR0+lUTMxqORwOxcdv0pgxw0p83IsW/aROndqpUaP66t79WjVp0kiff/5vrVz5X+Xl5SkoKNC17uDBT+nttwk3AGAFBBwAsLBDh46oWbPGatiwnu6//y7df/9dkk6fblb4tLPiXHxxc82a9YbbNgU/2+12txGVjRu3avv2XerZ82Y999wkt/0cPJike+/trYSERL3zzmxFR78pKX/ygHbt2uhvf+umH39cqrvuukOGYcgw8kdiBg0aoc8+m+naj5eXl0xT+uWX37V3735lZmZp2bIV2rlzj5KSkrV79z7XKJMkpaam6eGH+6tJk0aSpMTEQxoxYlyRx7l3b4KCg4NK/4cFAFRZBBwAsLAdO3ard+9btWjRj27LSzOzmSRt377LFRgKRn1ycnKVnp6hnJxcV8BJTU1Tgwb11KHDFXI6TYWHd5Cfn58iIkbqk0/ec+0vNzdPpumUn5+f7Ha7QkODNWzYIL3//ifKyMjUkiXL1axZE3l5GTJNU0FBgW4hSpJuvPEa3XjjNYqMjFJgYIB69eohqYek/JGYswW2guAEALAuAg4AWNhNN11XZNnx4ycVFlb7rNvt339Qhw8nacyYSEnSqVMZysjIUq9et8hutystLV3vvDNbDz/cX82aNVatWqGSpPHjJ+vo0RTXfvbs2e8KSHa7QxkZma7A4+Pjo86d2+uHH37RLbfcoEsvbaXZsz/TihWr5XSaysrKcp3mVlGcTmexyx0Op0zTlGEYFXp/AIDKR8ABgBpmxYo1uu66q4os37x5m9q1u1ySdOLESR0+nKwWLZoqKytb113XTf7+furb93YZhqGjR4/J19dHqamn3PYxduxIHThwUO3a5U+7HBExUtHR05WWlq6YmD91xx09XOtmZGQqJeWY5s9fqMDAAEnS4cNHtGjRPC1Y8G8lJx9T06b5p5aVVCMnL8+u2Nj1uuaarqV67M8/P1rdu1+rIUOe1scfv+tq44wZkyVJR48eU716F5VqXwCAqomxegCoYZYvX6nbbnOfNS0vz65p02a5bnfs2Fb+/v7q0qWD3ntvjmrXrqWcnFz9/PMyPf/860pPz9C0abOKTP0cGhqsNWvWaf78hW7Lv/32v0pPz3Ar1hkQ4K8WLZopLKyOoqOnKzp6uho1avDX9NIjtHLlWnXs2FaxsRv01luvuu3PNE2lp2do8uR31KHDFWd9vLt27VVkZJQiI6P05ZffasiQp5WQkOhatmfPfs2Y8aGGDHlaAwcO1+HDR8r09wQAVC2M4ABADWCapkzT1E8/LVWvXrcoMDB/BrGsrGxJ+SMniYmHlJmZqcDAQH355bcKCMgfVQkLqyMvL0MDBtwph8OpuXM/18mTqbrllhsVE7NavXvf6nZfAwfeq4iIERo48F7XfdjtDvXvf6ckuWZuK5jS+fjxE26nsUmSzWbTgQMH9cADd2vLlh2aPn2WJkyIkr9/fn2aU6fSdfBgksaPH+M2G5rdbi/y2Fu3bqlp015SaGiIDMPQzJlzNWBAX/Xq1UOmaeqRR0ad9bodAED1QsABgBrA6TS1bt0m+fn5uV2X07795Ro1arzsdoc6dWqv3Nw8BQZKbdq0Vvv2+SMjAQH+Gj36Bdc2tWqFql69i9Sly+k6NKmpaRo1arxsNl8ZhiFvb29FRkbpyJGjGjr0afn5+WnVqrUyTVN79+7X7NlvqWXL5pKka665UiNGDJYkxcau14oVa5SUlKxnnhkuSWrb9jJ17dpJv/22Qj173ixJCg0N0cKFc1W3bpjb4yw4Ne5MtWqFKjk5Rd9996OaNGn018QEksPhcBtVAgBUf1xNCQDVSHh4uClJsbH/K9N2aWmnlJmZpYYN61+Qdkn5YcHb2/u89pGVlS2Hw1FkymbTNGW3O0qsy3Muu3fv08mTaerSpb1bMVC73a4//4zT9dd3K9d+u3bNH72Ki4vj8xQAqghGcACgBggNDSlyvUxFO99wI+WPFhXHMIxyhxtJuuSSi4td7uPjU+5wAwComphkAAAAAIBlEHAAAAAAWAYBBwBQYZxOp9auXVdk+RdffKv09Ixzbp+XZ9dLL01TTk7OhWgeAKAGIOAAACpMbOwGLV68RE6n+8xkP/20VDab7Zzb+/h4a9euvfLz83MtW79+s1auXFvhbQUAWBOTDAAAKsyyZTEaM2aYvLzcJxXz9fWRzear1NQ07dmToC5dOmjduk2aPv39IhML7N+f6KqLUyA4OEjt21+ukJDgC/4YAADVGwEHAFAhjhw5qtatWyo0NET//vd/dehQkmJjN8jHx1vbt+92hZb69eupU6f26ty5vebNm6mEhANq0aKZaz8PPTTcVXhz06ZtateujQyDWZgBAKVDwAEAnLfs7BzNnbtAffr01JIly/XVV99p5sw39OST+QU8IyOjFB09Xbm5ebLZfN22ff75yQoKCnDdTkg4PYKzdetOzZo1RR06XFF5DwYAUK0RcAAA583Hx1u5uXnKzs7Wp59+ralTX5JheOnxx5+V0+l0jeDs3btfU6e+qC5dOri29fb2do3YSO4jOA89NJxwAwAoE8b8AaAaCQ8PNyUpNvZ/nm5KsT78cIHat2+jq6/uKklKS0tXaOjp62acTqe8vNzntxk0aIT8/U9PKrB1605dccWlrp+XLv1GPj5V83hc1663SpLi4uL4PAWAKqJqfmIAAKqdP/+MVU5Ojry9vbV9+y41atRAI0Y8L3//07OnHTp0RG+//aouvbSVa1nt2rX07ruTtH//QY0f/7patGiqBx+8VzfddJ2++OJbrr8BAJQJAQcAUCHi4zfpmmuuVHj46dPPgoMDNWvWFNftyMgotwkFJOmddyYqKytbkye/o9deG6cXXpiskJAg/fzzMt1//12V1n4AgDVQBwcAUCGGDn1ItWuHavHiJVqw4Bvt2ZNQ7OjLmZMMZGfnaOLEtzR69FA1b95UktS1ayft2rVX77//MUU/AQBlwggOAOC8paWl6/bb71ebNpcoIuI+3XFHD3l5GTp+/IRbTZvt23e7bXfwYJK++uo7jRw5RA0b1pfD4ZDT6ZQkDR/+qGbOnKvevR9Snz499dhjDyooKLBSHxcAoPoh4AAAzltoaLDmzHlLbdte5rb8oovCNGPGZNft556bJIfDIW9vb+3evU/JySl66qlI10iPw+Fwm4TgyScH65prrtQVV7RWYCDhBgBwbly5CQDVSFWfRe1Mubm5stls517xL06nqezsbAUGBpx75SqAWdQAoOrhGhwAwAVTlnAjSV5eRrUJNwCAqomAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwAAAMAyCDgAAAAALIOAAwDVS4okZWRkerodNV56ekbBjymebAcAwB0BBwCqly2StGPHbk+3o8Yr9Bxs9mQ7AADuvD3dAABA6TVu3NhH0p1btuzQJZe0UEhIsGw2m6ebVaOkp2do06ZtmjJlho4fPynTNCcmJSXFe7pdAIB8hqcbAAAoE6/w8PDvJPX2dEMgSfpPXFxcX0mmpxsCAMjHCA4AVC/m4cOHv2zYsOEBwzBqSQqWFOjpRtUwKZLWmKY5MT4+fpwINwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAq0P8HyM3Y7kRi0+sAAAAASUVORK5CYII=","width":824,"y":-30,"x":-30},"elements":{"page":{"showGrid":true,"gridSize":15,"orientation":"portrait","height":1240,"backgroundColor":"transparent","width":1050,"padding":20},"theme":{"linker":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}},"name":"colorful_yellow","shape":{"lineStyle":{"lineColor":"50,50,50","lineWidth":2},"fillStyle":{"color":"255,255,237","type":"solid"},"fontStyle":{"bold":false,"color":"50,50,50","italic":false,"fontFamily":"Arial","size":13}}},"elements":{"16c0f80b0693b4":{"id":"16c0f80b0693b4","to":{"id":"16c0f7f54cf74b","y":669.5999984741211,"angle":1.5707963267948966,"x":121.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":641.0999984741211,"x":121.09999084472656},{"y":641.0999984741211,"x":121.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7c839e4ba","y":612.5999984741211,"angle":4.71238898038469,"x":121.09999084472656},"group":"","props":{"zindex":15}},"16c0f8760b22f9":{"id":"16c0f8760b22f9","to":{"id":"16c0f870fb9d6d","y":921.6000061035156,"angle":1.5707963267948968,"x":674.5999908447266},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":814.6000061035156,"x":674.5999908447266}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f870fb9a2b","y":814.6000061035156,"angle":3.1415926535897936,"x":624.5999908447266},"group":"","props":{"zindex":35}},"16c0f7f54cf74b":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"从pms_sku_stock表中获取商品原价"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7f54cf835","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7f54cfb74","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7f54cfb4b","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7f54cf7e9","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7f54cf54c","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7f54cf74b","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":140,"y":669.5999984741211,"h":70,"angle":0,"x":51.09999084472656,"zindex":14}},"16c0f7cb62ca87":{"id":"16c0f7cb62ca87","to":{"id":"16c0f7c839e4ba","y":542.5999984741211,"angle":1.5707963267948968,"x":121.09999084472656},"text":"=1","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":508.0999984741211,"x":288.59999084472656},{"y":508.0999984741211,"x":121.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7ae343607","y":473.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":11}},"16c0f80d1e0bcf":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"从pms_sku_stock表中获取商品促销价"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f80d1e0b1a","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f80d1e0278","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f80d1e0458","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f80d1e09a9","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f80d1e0c86","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f80d1e0bcf","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":140,"y":779.6000061035156,"h":70,"angle":0,"x":51.09999084472656,"zindex":16}},"16c0f8580d9773":{"id":"16c0f8580d9773","to":{"id":"16c0f859048d37","y":921.6000061035156,"angle":1.5707963267948968,"x":419.59999084472656},"text":"否","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":814.6000061035156,"x":419.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f84369f106","y":814.6000061035156,"angle":3.1415926535897936,"x":368.59999084472656},"group":"","props":{"zindex":26}},"16c0f870fb9d6d":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"计算优惠金额:0"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f871b80498","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f871b80c53","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f871b80a0a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f871b804c3","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f871b8024","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f870fb9d6d","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":921.6000061035156,"h":70,"angle":0,"x":624.5999908447266,"zindex":31}},"16c0f7920daa28":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"根据商品id将购物车中商品分组"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7beb8933f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7beb89cd2","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7beb89573","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7beb89bf","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7beb89cdf","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7920daa28","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":145.5999984741211,"h":70,"angle":0,"x":238.59999084472656,"zindex":2}},"16c0f8bc012364":{"id":"16c0f8bc012364","to":{"id":"16c0f891ba976","y":1084.6000061035156,"angle":1.5707963267948966,"x":378.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1038.1000061035156,"x":674.5999908447266},{"y":1038.1000061035156,"x":378.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f870fb9d6d","y":991.6000061035156,"angle":4.71238898038469,"x":674.5999908447266},"group":"","props":{"zindex":42}},"16c0f870fb990c":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"计算优惠金额:(原价/总价)*满减金额"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f871b80035","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f871b80028","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f871b802b9","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f871b80ebb","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f871b8065d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f870fb990c","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"圆角矩形","category":"basic","name":"roundRectangle","path":[{"actions":[{"action":"move","y":"4","x":"0"},{"y1":"0","action":"quadraticCurve","y":"0","x":"4","x1":"0"},{"action":"line","y":"0","x":"w-4"},{"y1":"0","action":"quadraticCurve","y":"4","x":"w","x1":"w"},{"action":"line","y":"h-4","x":"w"},{"y1":"h","action":"quadraticCurve","y":"h","x":"w-4","x1":"w"},{"action":"line","y":"h","x":"4"},{"y1":"h","action":"quadraticCurve","y":"h-4","x":"0","x1":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":921.6000061035156,"zindex":30,"x":494.59999084472656}},"16c0f82581024d":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"从pms_product_ladder表中获取商品打折优惠信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f8261f8959","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f8261f81de","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f8261f8ddb","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f8261f89dc","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f8261f817d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f82581024d","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":160,"y":674.5999984741211,"h":70,"angle":0,"x":208.59999084472656,"zindex":20}},"16c0f7c839e4ba":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"单品促销"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7c839f37f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7c839fe37","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7c839f0d4","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7c839f0c4","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7c839f7a4","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7c839e4ba","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":542.5999984741211,"h":70,"angle":0,"x":71.09999084472656,"zindex":8}},"16c0f8759724c7":{"to":{"id":"16c0f870fb990c","angle":1.5707963267948968,"y":921.6000061035156,"x":544.5999908447266},"id":"16c0f8759724c7","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0f870fb9a2b","angle":4.71238898038469,"y":849.6000061035156,"x":544.5999908447266},"dataAttributes":[],"locked":false,"points":[{"y":885.6000061035156,"x":544.5999908447266},{"y":885.6000061035156,"x":544.5999908447266}],"group":"","props":{"zindex":34}},"16c0f8b8ad3389":{"id":"16c0f8b8ad3389","to":{"id":"16c0f891ba976","y":1084.6000061035156,"angle":1.5707963267948966,"x":378.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1038.1000061035156,"x":121.09999084472656},{"y":1038.1000061035156,"x":378.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f818bd363e","y":991.6000061035156,"angle":4.71238898038469,"x":121.09999084472656},"group":"","props":{"zindex":38}},"16c0f7c8ef5b79":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"打折优惠"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7c8ef5654","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7c8ef54a2","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7c8ef5c9a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7c8ef5c58","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7c8ef59ce","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7c8ef5b79","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"矩形","name":"rectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"0","x":"0"},{"action":"line","y":"0","x":"w"},{"action":"line","y":"h","x":"w"},{"action":"line","y":"h","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":542.5999984741211,"h":70,"angle":0,"x":238.59999084472656,"zindex":9}},"16c0f8277e2142":{"id":"16c0f8277e2142","to":{"id":"16c0f82581024d","y":674.5999984741211,"angle":1.5707963267948966,"x":288.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":643.5999984741211,"x":288.59999084472656},{"y":643.5999984741211,"x":288.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7c8ef5b79","y":612.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":21}},"16c0f7ceb24366":{"to":{"id":"16c0f7c9c6c1bb","angle":1.5707963267948968,"y":538.5999984741211,"x":544.5999908447266},"id":"16c0f7ceb24366","linkerType":"broken","text":"=4","lineStyle":{},"name":"linker","from":{"id":"16c0f7ae343607","angle":4.71238898038469,"y":473.5999984741211,"x":288.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":506.0999984741211,"x":288.59999084472656},{"y":506.0999984741211,"x":544.5999908447266}],"group":"","props":{"zindex":13}},"16c0f823f5a25a":{"id":"16c0f823f5a25a","to":{"id":"16c0f818bd363e","y":921.6000061035156,"angle":1.5707963267948968,"x":121.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":885.6000061035156,"x":121.09999084472656},{"y":885.6000061035156,"x":121.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f80d1e0bcf","y":849.6000061035156,"angle":4.71238898038469,"x":121.09999084472656},"group":"","props":{"zindex":19}},"16c0f859048d37":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"计算优惠金额:0"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f859049894","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f85904909d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f859049e65","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f859049904","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f85904981e","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f859048d37","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":921.6000061035156,"h":70,"angle":0,"x":368.59999084472656,"zindex":27}},"16c0f7c9c6c1bb":{"textBlock":[{"position":{"w":"w-20","h":"h","y":0,"x":10},"text":"满减优惠"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7c9c6d6be","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7c9c6d62b","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7c9c6d7a7","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7c9c6de9e","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7c9c6d39c","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7c9c6c1bb","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"title":"矩形","category":"basic","name":"rectangle","path":[{"actions":[{"action":"move","y":"0","x":"0"},{"action":"line","y":"0","x":"w"},{"action":"line","y":"h","x":"w"},{"action":"line","y":"h","x":"0"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":100,"angle":0,"h":70,"y":538.5999984741211,"zindex":10,"x":494.59999084472656}},"16c0f78ba50abd":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"获取购物车列表"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7bcfbacc7","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7bcfba558","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7bcfbad95","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7bcfba11e","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7bcfbae64","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f78ba50abd","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":39.599998474121094,"h":70,"angle":0,"x":238.59999084472656,"zindex":1}},"16c0f7b2fe13b8":{"id":"16c0f7b2fe13b8","to":{"id":"16c0f7ae343607","y":381.5999984741211,"angle":1.5707963267948968,"x":288.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":357.5999984741211,"x":288.59999084472656},{"y":357.5999984741211,"x":288.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7a2847236","y":333.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":7}},"16c0f870fb9a2b":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"判断当前购买商品金额是否满足满减要求"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f871b80f39","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f871b80c37","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f871b80a27","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f871b808a6","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f871b80857","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f870fb9a2b","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":160,"y":779.6000061035156,"h":70,"angle":0,"x":464.59999084472656,"zindex":29}},"16c0f8ace59705":{"id":"16c0f8ace59705","to":{"id":"16c0f7a2847236","y":263.5999984741211,"angle":1.5707963267948968,"x":288.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":239.5999984741211,"x":288.59999084472656},{"y":239.5999984741211,"x":288.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7920daa28","y":215.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":37}},"16c0f7a2847236":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"查询商品的优惠信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7c03c15bb","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7c03c1685","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7c03c1649","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7c03c12e1","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7c03c1c33","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7a2847236","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":263.5999984741211,"h":70,"angle":0,"x":238.59999084472656,"zindex":4}},"16c0f8b9903fb3":{"id":"16c0f8b9903fb3","to":{"id":"16c0f891ba976","y":1084.6000061035156,"angle":1.5707963267948966,"x":378.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1038.1000061035156,"x":291.59999084472656},{"y":1038.1000061035156,"x":378.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f856d98f2c","y":991.6000061035156,"angle":4.71238898038469,"x":291.59999084472656},"group":"","props":{"zindex":39}},"16c0f7cc7452dc":{"to":{"id":"16c0f7c8ef5b79","angle":1.5707963267948968,"y":542.5999984741211,"x":288.59999084472656},"id":"16c0f7cc7452dc","linkerType":"broken","text":"=3","lineStyle":{},"name":"linker","from":{"id":"16c0f7ae343607","angle":4.71238898038469,"y":473.5999984741211,"x":288.59999084472656},"dataAttributes":[],"locked":false,"points":[{"y":508.0999984741211,"x":288.59999084472656},{"y":508.0999984741211,"x":288.59999084472656}],"group":"","props":{"zindex":12}},"16c0f85585ad7d":{"id":"16c0f85585ad7d","to":{"id":"16c0f856d98f2c","y":921.6000061035156,"angle":1.5707963267948968,"x":291.59999084472656},"text":"是","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":885.6000061035156,"x":288.59999084472656},{"y":885.6000061035156,"x":291.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f84369f106","y":849.6000061035156,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":24}},"16c0f891ba976":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"优惠金额计算结束"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f896a088f8","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f896a0846d","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f896a0836","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f896a080da","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f896a081f6","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f891ba976","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":1084.6000061035156,"h":70,"angle":0,"x":328.09999084472656,"zindex":36}},"16c0f87508128a":{"id":"16c0f87508128a","to":{"id":"16c0f870fb9a2b","y":779.6000061035156,"angle":1.5707963267948966,"x":544.5999908447266},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":760.8500022888184,"x":544.5999908447266},{"y":760.8500022888184,"x":544.5999908447266}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f870fb915a","y":742.0999984741211,"angle":4.71238898038469,"x":544.5999908447266},"group":"","props":{"zindex":33}},"16c0f818bd363e":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"计算优惠金额:原价-促销价"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f894e7028f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f894e701f7","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f894e7026d","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f894e70ae3","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f894e70cd2","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f818bd363e","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":140,"y":921.6000061035156,"h":70,"angle":0,"x":51.09999084472656,"zindex":18}},"16c0f8baed3161":{"to":{"id":"16c0f891ba976","angle":1.5707963267948966,"y":1084.6000061035156,"x":378.09999084472656},"id":"16c0f8baed3161","linkerType":"broken","text":"","lineStyle":{},"name":"linker","from":{"id":"16c0f870fb990c","angle":4.71238898038469,"y":991.6000061035156,"x":544.5999908447266},"dataAttributes":[],"locked":false,"points":[{"y":1038.1000061035156,"x":544.5999908447266},{"y":1038.1000061035156,"x":378.09999084472656}],"group":"","props":{"zindex":41}},"16c0f813af30de":{"id":"16c0f813af30de","to":{"id":"16c0f80d1e0bcf","y":779.6000061035156,"angle":1.5707963267948968,"x":121.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":759.6000022888184,"x":121.09999084472656},{"y":759.6000022888184,"x":121.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7f54cf74b","y":739.5999984741211,"angle":4.71238898038469,"x":121.09999084472656},"group":"","props":{"zindex":17}},"16c0f7ae343607":{"textBlock":[{"position":{"w":"w-20","h":"h*0.75","y":"h*0.13","x":"10"},"text":"根据商品促销类型promotion_type计算商品优惠"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f7c3e41887","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f7c3e415a7","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f7c3e41aac","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f7c3e41383","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f7c3e41eae","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f7ae343607","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"fillStyle":{},"locked":false,"group":"","props":{"w":147,"angle":0,"h":92,"y":381.5999984741211,"zindex":6,"x":215.09999084472656}},"16c0f870fb915a":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"从pms_product_full_reduction表中获取商品满减优惠信息"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f871b7ff47","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f871b7f8d3","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f871b7f67a","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f871b7f492","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f871b7f31b","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f870fb915a","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":160,"y":672.0999984741211,"h":70,"angle":0,"x":464.59999084472656,"zindex":28}},"16c0f84369f106":{"textBlock":[{"position":{"w":"w-20","y":"h*0.13","h":"h*0.75","x":"10"},"text":"判断当前购买商品数量是否满足打折要求"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f84e3200f1","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f84e32028e","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f84e320c16","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f84e32060c","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f84e320d3d","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f84369f106","anchors":[{"y":"h/2","x":"0"},{"y":"0","x":"w/2"},{"y":"h/2","x":"w"},{"y":"h","x":"w/2"}],"category":"basic","name":"diamond","fillStyle":{},"path":[{"actions":[{"action":"move","y":"h/2","x":"0"},{"action":"line","y":"0","x":"w/2"},{"action":"line","y":"h/2","x":"w"},{"action":"line","y":"h","x":"w/2"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":160,"y":779.6000061035156,"h":70,"angle":0,"x":208.59999084472656,"zindex":22}},"16c0f792d1af73":{"id":"16c0f792d1af73","to":{"id":"16c0f7920daa28","y":145.5999984741211,"angle":1.5707963267948968,"x":288.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":127.5999984741211,"x":288.59999084472656},{"y":127.5999984741211,"x":288.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f78ba50abd","y":109.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":3}},"16c0f846659f15":{"id":"16c0f846659f15","to":{"id":"16c0f84369f106","y":779.6000061035156,"angle":1.5707963267948968,"x":288.59999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":762.1000022888184,"x":288.59999084472656},{"y":762.1000022888184,"x":288.59999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f82581024d","y":744.5999984741211,"angle":4.71238898038469,"x":288.59999084472656},"group":"","props":{"zindex":23}},"16c0f8746f9833":{"id":"16c0f8746f9833","to":{"id":"16c0f870fb915a","y":672.0999984741211,"angle":1.5707963267948968,"x":544.5999908447266},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":640.3499984741211,"x":544.5999908447266},{"y":640.3499984741211,"x":544.5999908447266}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f7c9c6c1bb","y":608.5999984741211,"angle":4.71238898038469,"x":544.5999908447266},"group":"","props":{"zindex":32}},"16c0f8ba51a03b":{"id":"16c0f8ba51a03b","to":{"id":"16c0f891ba976","y":1084.6000061035156,"angle":1.5707963267948966,"x":378.09999084472656},"text":"","linkerType":"broken","name":"linker","lineStyle":{},"points":[{"y":1038.1000061035156,"x":418.59999084472656},{"y":1038.1000061035156,"x":378.09999084472656}],"locked":false,"dataAttributes":[],"from":{"id":"16c0f859048d37","y":991.6000061035156,"angle":4.71238898038469,"x":418.59999084472656},"group":"","props":{"zindex":40}},"16c0f856d98f2c":{"textBlock":[{"position":{"w":"w-20","y":0,"h":"h","x":10},"text":"计算优惠金额:原价-折扣*原价"}],"lineStyle":{},"link":"","children":[],"parent":"","attribute":{"linkable":true,"visible":true,"container":false,"rotatable":true,"markerOffset":5,"collapsable":false,"collapsed":false},"fontStyle":{},"resizeDir":["tl","tr","br","bl"],"dataAttributes":[{"id":"16c0f856d9951f","category":"default","name":"序号","value":"","type":"number"},{"id":"16c0f856d99236","category":"default","name":"名称","value":"","type":"string"},{"id":"16c0f856d99afa","category":"default","name":"所有者","value":"","type":"string"},{"id":"16c0f856d99afc","category":"default","name":"连接","value":"","type":"link"},{"id":"16c0f856d99ef","category":"default","name":"便笺","value":"","type":"string"}],"shapeStyle":{"alpha":1},"id":"16c0f856d98f2c","anchors":[{"y":"0","x":"w/2"},{"y":"h","x":"w/2"},{"y":"h/2","x":"0"},{"y":"h/2","x":"w"}],"category":"basic","title":"圆角矩形","name":"roundRectangle","fillStyle":{},"path":[{"actions":[{"action":"move","y":"4","x":"0"},{"action":"quadraticCurve","y1":"0","y":"0","x1":"0","x":"4"},{"action":"line","y":"0","x":"w-4"},{"action":"quadraticCurve","y1":"0","y":"4","x1":"w","x":"w"},{"action":"line","y":"h-4","x":"w"},{"action":"quadraticCurve","y1":"h","y":"h","x1":"w","x":"w-4"},{"action":"line","y":"h","x":"4"},{"action":"quadraticCurve","y1":"h","y":"h-4","x1":"0","x":"0"},{"action":"close"}]}],"locked":false,"group":"","props":{"w":100,"y":921.6000061035156,"h":70,"angle":0,"x":241.59999084472656,"zindex":25}}}}},"meta":{"id":"5d331068e4b065dc42abfd25","member":"5a210b2ee4b04f355d337104","exportTime":"2019-12-21 14:39:14","diagramInfo":{"category":"flow","title":"购物车优惠计算流程","created":"2019-07-20 21:00:24","creator":"5a210b2ee4b04f355d337104","modified":"2019-07-21 18:49:33"},"type":"ProcessOn Schema File","version":"1.0"}}
\ No newline at end of file
diff --git a/document/ppt/mall-slidev.md b/document/ppt/mall-slidev.md
deleted file mode 100644
index 648d2578..00000000
--- a/document/ppt/mall-slidev.md
+++ /dev/null
@@ -1,235 +0,0 @@
----
-# 配置主题
-theme: penguin
-# 幻灯片的配色方案,可以使用 'auto','light' 或者 'dark'
-colorSchema: 'auto'
-layout: intro
-# 代码语法高亮设置,可以使用 'prism' 或 'shiki' 方案
-highlighter: shiki
-# 用于主题定制
-themeConfig:
- # 配置封面页左上角Logo
- logoHeader: '/logo_round.png'
- # 配置全局左下角Logo
- eventLogo: '/github.png'
- # 配置全局左下角Logo跳转路径
- eventUrl: 'https://github.com/macrozheng'
-css: unocss
----
-
-# Mall开源电商项目
-
-`mall`项目致力于打造一个完整的电商系统,采用现阶段流行技术实现。
-
-
-
- 快速开始
-
-
-
----
-layout: presenter
-presenterImage: '/logo.png'
----
-
-# macrozheng的个人介绍
-
-SpringBoot实战电商项目mall(50K+Star)的作者。
-
-- Github:https://github.com/macrozheng
-- Gitee:https://gitee.com/macrozheng
-- 掘金:https://juejin.cn/user/958429871749192
-- 知乎:https://www.zhihu.com/people/macrozheng
-
----
-layout: default
----
-
-# 项目介绍
-
-`mall`项目是一套电商系统,包括前台商城系统及后台管理系统,基于SpringBoot+MyBatis实现,采用Docker容器化部署。前台商城系统包含首页门户、商品推荐、商品搜索、商品展示、购物车、订单流程、会员中心、客户服务、帮助中心等模块。后台管理系统包含商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等模块。
-
-- 文档地址:[https://www.macrozheng.com](https://www.macrozheng.com)
-- 备用地址:[https://macrozheng.github.io/mall-learning](https://macrozheng.github.io/mall-learning)
-
----
-layout: text-image
-media: 'http://img.macrozheng.com/mall/project/mall_admin_show.png'
----
-
-# 项目演示
-
-### 后台管理系统
-
-mall-admin-web是一个电商后台管理系统的前端项目,基于Vue+Element实现。 主要包括商品管理、订单管理、会员管理、促销管理、运营管理、内容管理、统计报表、财务管理、权限管理、设置等功能。
-
-- 前端项目mall-admin-web地址:https://github.com/macrozheng/mall-admin-web
-
-- 项目演示地址: [https://www.macrozheng.com/admin/index.html](https://www.macrozheng.com/admin/index.html)
-
----
-layout: default
----
-
-### 组织结构
-
-``` lua
-mall
-├── mall-common -- 工具类及通用代码
-├── mall-mbg -- MyBatisGenerator生成的数据库操作代码
-├── mall-security -- SpringSecurity封装公用模块
-├── mall-admin -- 后台商城管理系统接口
-├── mall-search -- 基于Elasticsearch的商品搜索系统
-├── mall-portal -- 前台商城系统接口
-└── mall-demo -- 框架搭建时的测试代码
-```
-
----
-
-# 技术选型-后端
-
-| 技术 | 说明 | 官网 |
-| -------------------- | ------------------- | ---------------------------------------------- |
-| SpringBoot | 容器+MVC框架 | https://spring.io/projects/spring-boot |
-| SpringSecurity | 认证和授权框架 | https://spring.io/projects/spring-security |
-| MyBatis | ORM框架 | http://www.mybatis.org/mybatis-3/zh/index.html |
-| MyBatisGenerator | 数据层代码生成 | http://www.mybatis.org/generator/index.html |
-| Elasticsearch | 搜索引擎 | https://github.com/elastic/elasticsearch |
-| RabbitMQ | 消息队列 | https://www.rabbitmq.com/ |
-| Redis | 分布式缓存 | https://redis.io/ |
-| MongoDB | NoSql数据库 | https://www.mongodb.com |
-| LogStash | 日志收集工具 | https://github.com/elastic/logstash |
-| Kibana | 日志可视化查看工具 | https://github.com/elastic/kibana |
-| Nginx | 静态资源服务器 | https://www.nginx.com/ |
-| Docker | 应用容器引擎 | https://www.docker.com |
-| Jenkins | 自动化部署工具 | https://github.com/jenkinsci/jenkins |
-| Druid | 数据库连接池 | https://github.com/alibaba/druid |
-| OSS | 对象存储 | https://github.com/aliyun/aliyun-oss-java-sdk |
-| MinIO | 对象存储 | https://github.com/minio/minio |
-| JWT | JWT登录支持 | https://github.com/jwtk/jjwt |
-| Lombok | 简化对象封装工具 | https://github.com/rzwitserloot/lombok |
-| Hutool | Java工具类库 | https://github.com/looly/hutool |
-| PageHelper | MyBatis物理分页插件 | http://git.oschina.net/free/Mybatis_PageHelper |
-| Swagger-UI | 文档生成工具 | https://github.com/swagger-api/swagger-ui |
-| Hibernator-Validator | 验证框架 | http://hibernate.org/validator |
-
----
-
-# 技术选型-前端
-
-| 技术 | 说明 | 官网 |
-| ---------- | --------------------- | -------------------------------------- |
-| Vue | 前端框架 | https://vuejs.org/ |
-| Vue-router | 路由框架 | https://router.vuejs.org/ |
-| Vuex | 全局状态管理框架 | https://vuex.vuejs.org/ |
-| Element | 前端UI框架 | https://element.eleme.io |
-| Axios | 前端HTTP框架 | https://github.com/axios/axios |
-| v-charts | 基于Echarts的图表框架 | https://v-charts.js.org/ |
-| Js-cookie | cookie管理工具 | https://github.com/js-cookie/js-cookie |
-| nprogress | 进度条控件 | https://github.com/rstacruz/nprogress |
-
----
-layout: new-section
----
-
-# 系统架构
-
-
-![系统架构图](http://img.macrozheng.com/mall/project/mall_micro_service_arch.jpg)
-
----
-layout: text-window
----
-
-# 业务架构
-
-- 商品管理:[功能结构图-商品.jpg](document/resource/mind_product.jpg)
-- 订单管理:[功能结构图-订单.jpg](document/resource/mind_order.jpg)
-- 促销管理:[功能结构图-促销.jpg](document/resource/mind_sale.jpg)
-- 内容管理:[功能结构图-内容.jpg](document/resource/mind_content.jpg)
-- 用户管理:[功能结构图-用户.jpg](document/resource/mind_member.jpg)
-
-::window::
-
-![业务架构图](http://img.macrozheng.com/mall/project/mall_business_arch.png)
-
-
----
-
-# Windows环境部署
-
-- Windows环境搭建请参考:[mall在Windows环境下的部署](https://www.macrozheng.com/mall/deploy/mall_deploy_windows.html);
-- 注意:只启动mall-admin,仅需安装Mysql、Redis即可;
-- 克隆`mall-admin-web`项目,并导入到IDEA中完成编译:[前端项目地址](https://github.com/macrozheng/mall-admin-web);
-- `mall-admin-web`项目的安装及部署请参考:[mall前端项目的安装与部署](https://www.macrozheng.com/mall/deploy/mall_deploy_web.html) 。
-
----
-
-# Docker环境部署
-
-- 使用虚拟机安装CentOS7.6请参考:[虚拟机安装及使用Linux,看这一篇就够了](https://www.macrozheng.com/tool/linux_install.html);
-- Docker环境的安装请参考:[开发者必备Docker命令](https://www.macrozheng.com/mall/reference/linux_command.html);
-- 本项目Docker镜像构建请参考:[使用Maven插件为SpringBoot应用构建Docker镜像](https://www.macrozheng.com/project/maven_docker_fabric8.html);
-- 本项目在Docker容器下的部署请参考:[mall在Linux环境下的部署(基于Docker容器)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker.html);
-- 本项目使用Docker Compose请参考: [mall在Linux环境下的部署(基于Docker Compose)](https://www.macrozheng.com/mall/deploy/mall_deploy_docker_compose.html);
-- 本项目在Linux下的自动化部署请参考:[mall在Linux环境下的自动化部署(基于Jenkins)](https://www.macrozheng.com/mall/deploy/mall_deploy_jenkins.html);
-
----
-layout: two-cols
----
-
-# 相关代码展示
-
-```yaml
-spring:
- datasource:
- url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai&useSSL=false
- username: root
- password: root
- druid:
- initial-size: 5 #连接池初始化大小
- min-idle: 10 #最小空闲连接数
- max-active: 20 #最大连接数
- web-stat-filter:
- exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*" #不统计这些请求数据
- stat-view-servlet: #访问监控网页的登录用户名和密码
- login-username: druid
- login-password: druid
- redis:
- host: localhost # Redis服务器地址
- database: 0 # Redis数据库索引(默认为0)
- port: 6379 # Redis服务器连接端口
- password: # Redis服务器连接密码(默认为空)
- timeout: 300ms # 连接超时时间(毫秒)
-```
-
-::right::
-
-```java
-/**
- * 全局跨域配置
- * Created by macro on 2019/7/27.
- */
-@Configuration
-public class GlobalCorsConfig {
-
- /**
- * 允许跨域调用的过滤器
- */
- @Bean
- public CorsFilter corsFilter() {
- CorsConfiguration config = new CorsConfiguration();
- //允许所有域名进行跨域调用
- config.addAllowedOriginPattern("*");
- //允许跨越发送cookie
- config.setAllowCredentials(true);
- //放行全部原始头信息
- config.addAllowedHeader("*");
- //允许所有请求方法跨域调用
- config.addAllowedMethod("*");
- UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource();
- source.registerCorsConfiguration("/**", config);
- return new CorsFilter(source);
- }
-}
-```
\ No newline at end of file
diff --git a/document/redis-cluster/config/nodes-6391.conf b/document/redis-cluster/config/nodes-6391.conf
deleted file mode 100644
index b9d38c81..00000000
--- a/document/redis-cluster/config/nodes-6391.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6391
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6391.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6392.conf b/document/redis-cluster/config/nodes-6392.conf
deleted file mode 100644
index c2b10795..00000000
--- a/document/redis-cluster/config/nodes-6392.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6392
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6392.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6393.conf b/document/redis-cluster/config/nodes-6393.conf
deleted file mode 100644
index 5d322b93..00000000
--- a/document/redis-cluster/config/nodes-6393.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6393
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6393.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6394.conf b/document/redis-cluster/config/nodes-6394.conf
deleted file mode 100644
index f71a0667..00000000
--- a/document/redis-cluster/config/nodes-6394.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6394
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6394.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6395.conf b/document/redis-cluster/config/nodes-6395.conf
deleted file mode 100644
index d0fd8b81..00000000
--- a/document/redis-cluster/config/nodes-6395.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6395
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6395.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6396.conf b/document/redis-cluster/config/nodes-6396.conf
deleted file mode 100644
index efcf451c..00000000
--- a/document/redis-cluster/config/nodes-6396.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6396
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6396.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6397.conf b/document/redis-cluster/config/nodes-6397.conf
deleted file mode 100644
index 80c7354c..00000000
--- a/document/redis-cluster/config/nodes-6397.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6397
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6397.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/nodes-6398.conf b/document/redis-cluster/config/nodes-6398.conf
deleted file mode 100644
index cdda9645..00000000
--- a/document/redis-cluster/config/nodes-6398.conf
+++ /dev/null
@@ -1,1372 +0,0 @@
-# Redis configuration file example.
-#
-# Note that in order to read the configuration file, Redis must be
-# started with the file path as first argument:
-#
-# ./redis-server /path/to/redis.conf
-
-# Note on units: when memory size is needed, it is possible to specify
-# it in the usual form of 1k 5GB 4M and so forth:
-#
-# 1k => 1000 bytes
-# 1kb => 1024 bytes
-# 1m => 1000000 bytes
-# 1mb => 1024*1024 bytes
-# 1g => 1000000000 bytes
-# 1gb => 1024*1024*1024 bytes
-#
-# units are case insensitive so 1GB 1Gb 1gB are all the same.
-
-################################## INCLUDES ###################################
-
-# Include one or more other config files here. This is useful if you
-# have a standard template that goes to all Redis servers but also need
-# to customize a few per-server settings. Include files can include
-# other files, so use this wisely.
-#
-# Notice option "include" won't be rewritten by command "CONFIG REWRITE"
-# from admin or Redis Sentinel. Since Redis always uses the last processed
-# line as value of a configuration directive, you'd better put includes
-# at the beginning of this file to avoid overwriting config change at runtime.
-#
-# If instead you are interested in using includes to override configuration
-# options, it is better to use include as the last line.
-#
-# include /path/to/local.conf
-# include /path/to/other.conf
-
-################################## MODULES #####################################
-
-# Load modules at startup. If the server is not able to load modules
-# it will abort. It is possible to use multiple loadmodule directives.
-#
-# loadmodule /path/to/my_module.so
-# loadmodule /path/to/other_module.so
-
-################################## NETWORK #####################################
-
-# By default, if no "bind" configuration directive is specified, Redis listens
-# for connections from all the network interfaces available on the server.
-# It is possible to listen to just one or multiple selected interfaces using
-# the "bind" configuration directive, followed by one or more IP addresses.
-#
-# Examples:
-#
-# bind 192.168.1.100 10.0.0.1
-# bind 127.0.0.1 ::1
-#
-# ~~~ WARNING ~~~ If the computer running Redis is directly exposed to the
-# internet, binding to all the interfaces is dangerous and will expose the
-# instance to everybody on the internet. So by default we uncomment the
-# following bind directive, that will force Redis to listen only into
-# the IPv4 loopback interface address (this means Redis will be able to
-# accept connections only from clients running into the same computer it
-# is running).
-#
-# IF YOU ARE SURE YOU WANT YOUR INSTANCE TO LISTEN TO ALL THE INTERFACES
-# JUST COMMENT THE FOLLOWING LINE.
-# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-bind 0.0.0.0
-
-# Protected mode is a layer of security protection, in order to avoid that
-# Redis instances left open on the internet are accessed and exploited.
-#
-# When protected mode is on and if:
-#
-# 1) The server is not binding explicitly to a set of addresses using the
-# "bind" directive.
-# 2) No password is configured.
-#
-# The server only accepts connections from clients connecting from the
-# IPv4 and IPv6 loopback addresses 127.0.0.1 and ::1, and from Unix domain
-# sockets.
-#
-# By default protected mode is enabled. You should disable it only if
-# you are sure you want clients from other hosts to connect to Redis
-# even if no authentication is configured, nor a specific set of interfaces
-# are explicitly listed using the "bind" directive.
-protected-mode no
-
-# Accept connections on the specified port, default is 6379 (IANA #815344).
-# If port 0 is specified Redis will not listen on a TCP socket.
-port 6398
-
-# TCP listen() backlog.
-#
-# In high requests-per-second environments you need an high backlog in order
-# to avoid slow clients connections issues. Note that the Linux kernel
-# will silently truncate it to the value of /proc/sys/net/core/somaxconn so
-# make sure to raise both the value of somaxconn and tcp_max_syn_backlog
-# in order to get the desired effect.
-tcp-backlog 511
-
-# Unix socket.
-#
-# Specify the path for the Unix socket that will be used to listen for
-# incoming connections. There is no default, so Redis will not listen
-# on a unix socket when not specified.
-#
-# unixsocket /tmp/redis.sock
-# unixsocketperm 700
-
-# Close the connection after a client is idle for N seconds (0 to disable)
-timeout 0
-
-# TCP keepalive.
-#
-# If non-zero, use SO_KEEPALIVE to send TCP ACKs to clients in absence
-# of communication. This is useful for two reasons:
-#
-# 1) Detect dead peers.
-# 2) Take the connection alive from the point of view of network
-# equipment in the middle.
-#
-# On Linux, the specified value (in seconds) is the period used to send ACKs.
-# Note that to close the connection the double of the time is needed.
-# On other kernels the period depends on the kernel configuration.
-#
-# A reasonable value for this option is 300 seconds, which is the new
-# Redis default starting with Redis 3.2.1.
-tcp-keepalive 300
-
-################################# GENERAL #####################################
-
-# By default Redis does not run as a daemon. Use 'yes' if you need it.
-# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.
-daemonize no
-
-# If you run Redis from upstart or systemd, Redis can interact with your
-# supervision tree. Options:
-# supervised no - no supervision interaction
-# supervised upstart - signal upstart by putting Redis into SIGSTOP mode
-# supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
-# supervised auto - detect upstart or systemd method based on
-# UPSTART_JOB or NOTIFY_SOCKET environment variables
-# Note: these supervision methods only signal "process is ready."
-# They do not enable continuous liveness pings back to your supervisor.
-supervised no
-
-# If a pid file is specified, Redis writes it where specified at startup
-# and removes it at exit.
-#
-# When the server runs non daemonized, no pid file is created if none is
-# specified in the configuration. When the server is daemonized, the pid file
-# is used even if not specified, defaulting to "/var/run/redis.pid".
-#
-# Creating a pid file is best effort: if Redis is not able to create it
-# nothing bad happens, the server will start and run normally.
-pidfile /var/run/redis_6379.pid
-
-# Specify the server verbosity level.
-# This can be one of:
-# debug (a lot of information, useful for development/testing)
-# verbose (many rarely useful info, but not a mess like the debug level)
-# notice (moderately verbose, what you want in production probably)
-# warning (only very important / critical messages are logged)
-loglevel notice
-
-# Specify the log file name. Also the empty string can be used to force
-# Redis to log on the standard output. Note that if you use standard
-# output for logging but daemonize, logs will be sent to /dev/null
-logfile ""
-
-# To enable logging to the system logger, just set 'syslog-enabled' to yes,
-# and optionally update the other syslog parameters to suit your needs.
-# syslog-enabled no
-
-# Specify the syslog identity.
-# syslog-ident redis
-
-# Specify the syslog facility. Must be USER or between LOCAL0-LOCAL7.
-# syslog-facility local0
-
-# Set the number of databases. The default database is DB 0, you can select
-# a different one on a per-connection basis using SELECT where
-# dbid is a number between 0 and 'databases'-1
-databases 16
-
-# By default Redis shows an ASCII art logo only when started to log to the
-# standard output and if the standard output is a TTY. Basically this means
-# that normally a logo is displayed only in interactive sessions.
-#
-# However it is possible to force the pre-4.0 behavior and always show a
-# ASCII art logo in startup logs by setting the following option to yes.
-always-show-logo yes
-
-################################ SNAPSHOTTING ################################
-#
-# Save the DB on disk:
-#
-# save
-#
-# Will save the DB if both the given number of seconds and the given
-# number of write operations against the DB occurred.
-#
-# In the example below the behaviour will be to save:
-# after 900 sec (15 min) if at least 1 key changed
-# after 300 sec (5 min) if at least 10 keys changed
-# after 60 sec if at least 10000 keys changed
-#
-# Note: you can disable saving completely by commenting out all "save" lines.
-#
-# It is also possible to remove all the previously configured save
-# points by adding a save directive with a single empty string argument
-# like in the following example:
-#
-# save ""
-
-save 900 1
-save 300 10
-save 60 10000
-
-# By default Redis will stop accepting writes if RDB snapshots are enabled
-# (at least one save point) and the latest background save failed.
-# This will make the user aware (in a hard way) that data is not persisting
-# on disk properly, otherwise chances are that no one will notice and some
-# disaster will happen.
-#
-# If the background saving process will start working again Redis will
-# automatically allow writes again.
-#
-# However if you have setup your proper monitoring of the Redis server
-# and persistence, you may want to disable this feature so that Redis will
-# continue to work as usual even if there are problems with disk,
-# permissions, and so forth.
-stop-writes-on-bgsave-error yes
-
-# Compress string objects using LZF when dump .rdb databases?
-# For default that's set to 'yes' as it's almost always a win.
-# If you want to save some CPU in the saving child set it to 'no' but
-# the dataset will likely be bigger if you have compressible values or keys.
-rdbcompression yes
-
-# Since version 5 of RDB a CRC64 checksum is placed at the end of the file.
-# This makes the format more resistant to corruption but there is a performance
-# hit to pay (around 10%) when saving and loading RDB files, so you can disable it
-# for maximum performances.
-#
-# RDB files created with checksum disabled have a checksum of zero that will
-# tell the loading code to skip the check.
-rdbchecksum yes
-
-# The filename where to dump the DB
-dbfilename dump.rdb
-
-# The working directory.
-#
-# The DB will be written inside this directory, with the filename specified
-# above using the 'dbfilename' configuration directive.
-#
-# The Append Only File will also be created inside this directory.
-#
-# Note that you must specify a directory here, not a file name.
-dir "/data"
-
-################################# REPLICATION #################################
-
-# Master-Replica replication. Use replicaof to make a Redis instance a copy of
-# another Redis server. A few things to understand ASAP about Redis replication.
-#
-# +------------------+ +---------------+
-# | Master | ---> | Replica |
-# | (receive writes) | | (exact copy) |
-# +------------------+ +---------------+
-#
-# 1) Redis replication is asynchronous, but you can configure a master to
-# stop accepting writes if it appears to be not connected with at least
-# a given number of replicas.
-# 2) Redis replicas are able to perform a partial resynchronization with the
-# master if the replication link is lost for a relatively small amount of
-# time. You may want to configure the replication backlog size (see the next
-# sections of this file) with a sensible value depending on your needs.
-# 3) Replication is automatic and does not need user intervention. After a
-# network partition replicas automatically try to reconnect to masters
-# and resynchronize with them.
-#
-# replicaof
-
-# If the master is password protected (using the "requirepass" configuration
-# directive below) it is possible to tell the replica to authenticate before
-# starting the replication synchronization process, otherwise the master will
-# refuse the replica request.
-#
-# masterauth
-
-# When a replica loses its connection with the master, or when the replication
-# is still in progress, the replica can act in two different ways:
-#
-# 1) if replica-serve-stale-data is set to 'yes' (the default) the replica will
-# still reply to client requests, possibly with out of date data, or the
-# data set may just be empty if this is the first synchronization.
-#
-# 2) if replica-serve-stale-data is set to 'no' the replica will reply with
-# an error "SYNC with master in progress" to all the kind of commands
-# but to INFO, replicaOF, AUTH, PING, SHUTDOWN, REPLCONF, ROLE, CONFIG,
-# SUBSCRIBE, UNSUBSCRIBE, PSUBSCRIBE, PUNSUBSCRIBE, PUBLISH, PUBSUB,
-# COMMAND, POST, HOST: and LATENCY.
-#
-replica-serve-stale-data yes
-
-# You can configure a replica instance to accept writes or not. Writing against
-# a replica instance may be useful to store some ephemeral data (because data
-# written on a replica will be easily deleted after resync with the master) but
-# may also cause problems if clients are writing to it because of a
-# misconfiguration.
-#
-# Since Redis 2.6 by default replicas are read-only.
-#
-# Note: read only replicas are not designed to be exposed to untrusted clients
-# on the internet. It's just a protection layer against misuse of the instance.
-# Still a read only replica exports by default all the administrative commands
-# such as CONFIG, DEBUG, and so forth. To a limited extent you can improve
-# security of read only replicas using 'rename-command' to shadow all the
-# administrative / dangerous commands.
-replica-read-only yes
-
-# Replication SYNC strategy: disk or socket.
-#
-# -------------------------------------------------------
-# WARNING: DISKLESS REPLICATION IS EXPERIMENTAL CURRENTLY
-# -------------------------------------------------------
-#
-# New replicas and reconnecting replicas that are not able to continue the replication
-# process just receiving differences, need to do what is called a "full
-# synchronization". An RDB file is transmitted from the master to the replicas.
-# The transmission can happen in two different ways:
-#
-# 1) Disk-backed: The Redis master creates a new process that writes the RDB
-# file on disk. Later the file is transferred by the parent
-# process to the replicas incrementally.
-# 2) Diskless: The Redis master creates a new process that directly writes the
-# RDB file to replica sockets, without touching the disk at all.
-#
-# With disk-backed replication, while the RDB file is generated, more replicas
-# can be queued and served with the RDB file as soon as the current child producing
-# the RDB file finishes its work. With diskless replication instead once
-# the transfer starts, new replicas arriving will be queued and a new transfer
-# will start when the current one terminates.
-#
-# When diskless replication is used, the master waits a configurable amount of
-# time (in seconds) before starting the transfer in the hope that multiple replicas
-# will arrive and the transfer can be parallelized.
-#
-# With slow disks and fast (large bandwidth) networks, diskless replication
-# works better.
-repl-diskless-sync no
-
-# When diskless replication is enabled, it is possible to configure the delay
-# the server waits in order to spawn the child that transfers the RDB via socket
-# to the replicas.
-#
-# This is important since once the transfer starts, it is not possible to serve
-# new replicas arriving, that will be queued for the next RDB transfer, so the server
-# waits a delay in order to let more replicas arrive.
-#
-# The delay is specified in seconds, and by default is 5 seconds. To disable
-# it entirely just set it to 0 seconds and the transfer will start ASAP.
-repl-diskless-sync-delay 5
-
-# Replicas send PINGs to server in a predefined interval. It's possible to change
-# this interval with the repl_ping_replica_period option. The default value is 10
-# seconds.
-#
-# repl-ping-replica-period 10
-
-# The following option sets the replication timeout for:
-#
-# 1) Bulk transfer I/O during SYNC, from the point of view of replica.
-# 2) Master timeout from the point of view of replicas (data, pings).
-# 3) Replica timeout from the point of view of masters (REPLCONF ACK pings).
-#
-# It is important to make sure that this value is greater than the value
-# specified for repl-ping-replica-period otherwise a timeout will be detected
-# every time there is low traffic between the master and the replica.
-#
-# repl-timeout 60
-
-# Disable TCP_NODELAY on the replica socket after SYNC?
-#
-# If you select "yes" Redis will use a smaller number of TCP packets and
-# less bandwidth to send data to replicas. But this can add a delay for
-# the data to appear on the replica side, up to 40 milliseconds with
-# Linux kernels using a default configuration.
-#
-# If you select "no" the delay for data to appear on the replica side will
-# be reduced but more bandwidth will be used for replication.
-#
-# By default we optimize for low latency, but in very high traffic conditions
-# or when the master and replicas are many hops away, turning this to "yes" may
-# be a good idea.
-repl-disable-tcp-nodelay no
-
-# Set the replication backlog size. The backlog is a buffer that accumulates
-# replica data when replicas are disconnected for some time, so that when a replica
-# wants to reconnect again, often a full resync is not needed, but a partial
-# resync is enough, just passing the portion of data the replica missed while
-# disconnected.
-#
-# The bigger the replication backlog, the longer the time the replica can be
-# disconnected and later be able to perform a partial resynchronization.
-#
-# The backlog is only allocated once there is at least a replica connected.
-#
-# repl-backlog-size 1mb
-
-# After a master has no longer connected replicas for some time, the backlog
-# will be freed. The following option configures the amount of seconds that
-# need to elapse, starting from the time the last replica disconnected, for
-# the backlog buffer to be freed.
-#
-# Note that replicas never free the backlog for timeout, since they may be
-# promoted to masters later, and should be able to correctly "partially
-# resynchronize" with the replicas: hence they should always accumulate backlog.
-#
-# A value of 0 means to never release the backlog.
-#
-# repl-backlog-ttl 3600
-
-# The replica priority is an integer number published by Redis in the INFO output.
-# It is used by Redis Sentinel in order to select a replica to promote into a
-# master if the master is no longer working correctly.
-#
-# A replica with a low priority number is considered better for promotion, so
-# for instance if there are three replicas with priority 10, 100, 25 Sentinel will
-# pick the one with priority 10, that is the lowest.
-#
-# However a special priority of 0 marks the replica as not able to perform the
-# role of master, so a replica with priority of 0 will never be selected by
-# Redis Sentinel for promotion.
-#
-# By default the priority is 100.
-replica-priority 100
-
-# It is possible for a master to stop accepting writes if there are less than
-# N replicas connected, having a lag less or equal than M seconds.
-#
-# The N replicas need to be in "online" state.
-#
-# The lag in seconds, that must be <= the specified value, is calculated from
-# the last ping received from the replica, that is usually sent every second.
-#
-# This option does not GUARANTEE that N replicas will accept the write, but
-# will limit the window of exposure for lost writes in case not enough replicas
-# are available, to the specified number of seconds.
-#
-# For example to require at least 3 replicas with a lag <= 10 seconds use:
-#
-# min-replicas-to-write 3
-# min-replicas-max-lag 10
-#
-# Setting one or the other to 0 disables the feature.
-#
-# By default min-replicas-to-write is set to 0 (feature disabled) and
-# min-replicas-max-lag is set to 10.
-
-# A Redis master is able to list the address and port of the attached
-# replicas in different ways. For example the "INFO replication" section
-# offers this information, which is used, among other tools, by
-# Redis Sentinel in order to discover replica instances.
-# Another place where this info is available is in the output of the
-# "ROLE" command of a master.
-#
-# The listed IP and address normally reported by a replica is obtained
-# in the following way:
-#
-# IP: The address is auto detected by checking the peer address
-# of the socket used by the replica to connect with the master.
-#
-# Port: The port is communicated by the replica during the replication
-# handshake, and is normally the port that the replica is using to
-# listen for connections.
-#
-# However when port forwarding or Network Address Translation (NAT) is
-# used, the replica may be actually reachable via different IP and port
-# pairs. The following two options can be used by a replica in order to
-# report to its master a specific set of IP and port, so that both INFO
-# and ROLE will report those values.
-#
-# There is no need to use both the options if you need to override just
-# the port or the IP address.
-#
-# replica-announce-ip 5.5.5.5
-# replica-announce-port 1234
-
-################################## SECURITY ###################################
-
-# Require clients to issue AUTH before processing any other
-# commands. This might be useful in environments in which you do not trust
-# others with access to the host running redis-server.
-#
-# This should stay commented out for backward compatibility and because most
-# people do not need auth (e.g. they run their own servers).
-#
-# Warning: since Redis is pretty fast an outside user can try up to
-# 150k passwords per second against a good box. This means that you should
-# use a very strong password otherwise it will be very easy to break.
-#
-# requirepass foobared
-
-# Command renaming.
-#
-# It is possible to change the name of dangerous commands in a shared
-# environment. For instance the CONFIG command may be renamed into something
-# hard to guess so that it will still be available for internal-use tools
-# but not available for general clients.
-#
-# Example:
-#
-# rename-command CONFIG b840fc02d524045429941cc15f59e41cb7be6c52
-#
-# It is also possible to completely kill a command by renaming it into
-# an empty string:
-#
-# rename-command CONFIG ""
-#
-# Please note that changing the name of commands that are logged into the
-# AOF file or transmitted to replicas may cause problems.
-
-################################### CLIENTS ####################################
-
-# Set the max number of connected clients at the same time. By default
-# this limit is set to 10000 clients, however if the Redis server is not
-# able to configure the process file limit to allow for the specified limit
-# the max number of allowed clients is set to the current file limit
-# minus 32 (as Redis reserves a few file descriptors for internal uses).
-#
-# Once the limit is reached Redis will close all the new connections sending
-# an error 'max number of clients reached'.
-#
-# maxclients 10000
-
-############################## MEMORY MANAGEMENT ################################
-
-# Set a memory usage limit to the specified amount of bytes.
-# When the memory limit is reached Redis will try to remove keys
-# according to the eviction policy selected (see maxmemory-policy).
-#
-# If Redis can't remove keys according to the policy, or if the policy is
-# set to 'noeviction', Redis will start to reply with errors to commands
-# that would use more memory, like SET, LPUSH, and so on, and will continue
-# to reply to read-only commands like GET.
-#
-# This option is usually useful when using Redis as an LRU or LFU cache, or to
-# set a hard memory limit for an instance (using the 'noeviction' policy).
-#
-# WARNING: If you have replicas attached to an instance with maxmemory on,
-# the size of the output buffers needed to feed the replicas are subtracted
-# from the used memory count, so that network problems / resyncs will
-# not trigger a loop where keys are evicted, and in turn the output
-# buffer of replicas is full with DELs of keys evicted triggering the deletion
-# of more keys, and so forth until the database is completely emptied.
-#
-# In short... if you have replicas attached it is suggested that you set a lower
-# limit for maxmemory so that there is some free RAM on the system for replica
-# output buffers (but this is not needed if the policy is 'noeviction').
-#
-# maxmemory
-
-# MAXMEMORY POLICY: how Redis will select what to remove when maxmemory
-# is reached. You can select among five behaviors:
-#
-# volatile-lru -> Evict using approximated LRU among the keys with an expire set.
-# allkeys-lru -> Evict any key using approximated LRU.
-# volatile-lfu -> Evict using approximated LFU among the keys with an expire set.
-# allkeys-lfu -> Evict any key using approximated LFU.
-# volatile-random -> Remove a random key among the ones with an expire set.
-# allkeys-random -> Remove a random key, any key.
-# volatile-ttl -> Remove the key with the nearest expire time (minor TTL)
-# noeviction -> Don't evict anything, just return an error on write operations.
-#
-# LRU means Least Recently Used
-# LFU means Least Frequently Used
-#
-# Both LRU, LFU and volatile-ttl are implemented using approximated
-# randomized algorithms.
-#
-# Note: with any of the above policies, Redis will return an error on write
-# operations, when there are no suitable keys for eviction.
-#
-# At the date of writing these commands are: set setnx setex append
-# incr decr rpush lpush rpushx lpushx linsert lset rpoplpush sadd
-# sinter sinterstore sunion sunionstore sdiff sdiffstore zadd zincrby
-# zunionstore zinterstore hset hsetnx hmset hincrby incrby decrby
-# getset mset msetnx exec sort
-#
-# The default is:
-#
-# maxmemory-policy noeviction
-
-# LRU, LFU and minimal TTL algorithms are not precise algorithms but approximated
-# algorithms (in order to save memory), so you can tune it for speed or
-# accuracy. For default Redis will check five keys and pick the one that was
-# used less recently, you can change the sample size using the following
-# configuration directive.
-#
-# The default of 5 produces good enough results. 10 Approximates very closely
-# true LRU but costs more CPU. 3 is faster but not very accurate.
-#
-# maxmemory-samples 5
-
-# Starting from Redis 5, by default a replica will ignore its maxmemory setting
-# (unless it is promoted to master after a failover or manually). It means
-# that the eviction of keys will be just handled by the master, sending the
-# DEL commands to the replica as keys evict in the master side.
-#
-# This behavior ensures that masters and replicas stay consistent, and is usually
-# what you want, however if your replica is writable, or you want the replica to have
-# a different memory setting, and you are sure all the writes performed to the
-# replica are idempotent, then you may change this default (but be sure to understand
-# what you are doing).
-#
-# Note that since the replica by default does not evict, it may end using more
-# memory than the one set via maxmemory (there are certain buffers that may
-# be larger on the replica, or data structures may sometimes take more memory and so
-# forth). So make sure you monitor your replicas and make sure they have enough
-# memory to never hit a real out-of-memory condition before the master hits
-# the configured maxmemory setting.
-#
-# replica-ignore-maxmemory yes
-
-############################# LAZY FREEING ####################################
-
-# Redis has two primitives to delete keys. One is called DEL and is a blocking
-# deletion of the object. It means that the server stops processing new commands
-# in order to reclaim all the memory associated with an object in a synchronous
-# way. If the key deleted is associated with a small object, the time needed
-# in order to execute the DEL command is very small and comparable to most other
-# O(1) or O(log_N) commands in Redis. However if the key is associated with an
-# aggregated value containing millions of elements, the server can block for
-# a long time (even seconds) in order to complete the operation.
-#
-# For the above reasons Redis also offers non blocking deletion primitives
-# such as UNLINK (non blocking DEL) and the ASYNC option of FLUSHALL and
-# FLUSHDB commands, in order to reclaim memory in background. Those commands
-# are executed in constant time. Another thread will incrementally free the
-# object in the background as fast as possible.
-#
-# DEL, UNLINK and ASYNC option of FLUSHALL and FLUSHDB are user-controlled.
-# It's up to the design of the application to understand when it is a good
-# idea to use one or the other. However the Redis server sometimes has to
-# delete keys or flush the whole database as a side effect of other operations.
-# Specifically Redis deletes objects independently of a user call in the
-# following scenarios:
-#
-# 1) On eviction, because of the maxmemory and maxmemory policy configurations,
-# in order to make room for new data, without going over the specified
-# memory limit.
-# 2) Because of expire: when a key with an associated time to live (see the
-# EXPIRE command) must be deleted from memory.
-# 3) Because of a side effect of a command that stores data on a key that may
-# already exist. For example the RENAME command may delete the old key
-# content when it is replaced with another one. Similarly SUNIONSTORE
-# or SORT with STORE option may delete existing keys. The SET command
-# itself removes any old content of the specified key in order to replace
-# it with the specified string.
-# 4) During replication, when a replica performs a full resynchronization with
-# its master, the content of the whole database is removed in order to
-# load the RDB file just transferred.
-#
-# In all the above cases the default is to delete objects in a blocking way,
-# like if DEL was called. However you can configure each case specifically
-# in order to instead release memory in a non-blocking way like if UNLINK
-# was called, using the following configuration directives:
-
-lazyfree-lazy-eviction no
-lazyfree-lazy-expire no
-lazyfree-lazy-server-del no
-replica-lazy-flush no
-
-############################## APPEND ONLY MODE ###############################
-
-# By default Redis asynchronously dumps the dataset on disk. This mode is
-# good enough in many applications, but an issue with the Redis process or
-# a power outage may result into a few minutes of writes lost (depending on
-# the configured save points).
-#
-# The Append Only File is an alternative persistence mode that provides
-# much better durability. For instance using the default data fsync policy
-# (see later in the config file) Redis can lose just one second of writes in a
-# dramatic event like a server power outage, or a single write if something
-# wrong with the Redis process itself happens, but the operating system is
-# still running correctly.
-#
-# AOF and RDB persistence can be enabled at the same time without problems.
-# If the AOF is enabled on startup Redis will load the AOF, that is the file
-# with the better durability guarantees.
-#
-# Please check http://redis.io/topics/persistence for more information.
-
-appendonly no
-
-# The name of the append only file (default: "appendonly.aof")
-
-appendfilename "appendonly.aof"
-
-# The fsync() call tells the Operating System to actually write data on disk
-# instead of waiting for more data in the output buffer. Some OS will really flush
-# data on disk, some other OS will just try to do it ASAP.
-#
-# Redis supports three different modes:
-#
-# no: don't fsync, just let the OS flush the data when it wants. Faster.
-# always: fsync after every write to the append only log. Slow, Safest.
-# everysec: fsync only one time every second. Compromise.
-#
-# The default is "everysec", as that's usually the right compromise between
-# speed and data safety. It's up to you to understand if you can relax this to
-# "no" that will let the operating system flush the output buffer when
-# it wants, for better performances (but if you can live with the idea of
-# some data loss consider the default persistence mode that's snapshotting),
-# or on the contrary, use "always" that's very slow but a bit safer than
-# everysec.
-#
-# More details please check the following article:
-# http://antirez.com/post/redis-persistence-demystified.html
-#
-# If unsure, use "everysec".
-
-# appendfsync always
-appendfsync everysec
-# appendfsync no
-
-# When the AOF fsync policy is set to always or everysec, and a background
-# saving process (a background save or AOF log background rewriting) is
-# performing a lot of I/O against the disk, in some Linux configurations
-# Redis may block too long on the fsync() call. Note that there is no fix for
-# this currently, as even performing fsync in a different thread will block
-# our synchronous write(2) call.
-#
-# In order to mitigate this problem it's possible to use the following option
-# that will prevent fsync() from being called in the main process while a
-# BGSAVE or BGREWRITEAOF is in progress.
-#
-# This means that while another child is saving, the durability of Redis is
-# the same as "appendfsync none". In practical terms, this means that it is
-# possible to lose up to 30 seconds of log in the worst scenario (with the
-# default Linux settings).
-#
-# If you have latency problems turn this to "yes". Otherwise leave it as
-# "no" that is the safest pick from the point of view of durability.
-
-no-appendfsync-on-rewrite no
-
-# Automatic rewrite of the append only file.
-# Redis is able to automatically rewrite the log file implicitly calling
-# BGREWRITEAOF when the AOF log size grows by the specified percentage.
-#
-# This is how it works: Redis remembers the size of the AOF file after the
-# latest rewrite (if no rewrite has happened since the restart, the size of
-# the AOF at startup is used).
-#
-# This base size is compared to the current size. If the current size is
-# bigger than the specified percentage, the rewrite is triggered. Also
-# you need to specify a minimal size for the AOF file to be rewritten, this
-# is useful to avoid rewriting the AOF file even if the percentage increase
-# is reached but it is still pretty small.
-#
-# Specify a percentage of zero in order to disable the automatic AOF
-# rewrite feature.
-
-auto-aof-rewrite-percentage 100
-auto-aof-rewrite-min-size 64mb
-
-# An AOF file may be found to be truncated at the end during the Redis
-# startup process, when the AOF data gets loaded back into memory.
-# This may happen when the system where Redis is running
-# crashes, especially when an ext4 filesystem is mounted without the
-# data=ordered option (however this can't happen when Redis itself
-# crashes or aborts but the operating system still works correctly).
-#
-# Redis can either exit with an error when this happens, or load as much
-# data as possible (the default now) and start if the AOF file is found
-# to be truncated at the end. The following option controls this behavior.
-#
-# If aof-load-truncated is set to yes, a truncated AOF file is loaded and
-# the Redis server starts emitting a log to inform the user of the event.
-# Otherwise if the option is set to no, the server aborts with an error
-# and refuses to start. When the option is set to no, the user requires
-# to fix the AOF file using the "redis-check-aof" utility before to restart
-# the server.
-#
-# Note that if the AOF file will be found to be corrupted in the middle
-# the server will still exit with an error. This option only applies when
-# Redis will try to read more data from the AOF file but not enough bytes
-# will be found.
-aof-load-truncated yes
-
-# When rewriting the AOF file, Redis is able to use an RDB preamble in the
-# AOF file for faster rewrites and recoveries. When this option is turned
-# on the rewritten AOF file is composed of two different stanzas:
-#
-# [RDB file][AOF tail]
-#
-# When loading Redis recognizes that the AOF file starts with the "REDIS"
-# string and loads the prefixed RDB file, and continues loading the AOF
-# tail.
-aof-use-rdb-preamble yes
-
-################################ LUA SCRIPTING ###############################
-
-# Max execution time of a Lua script in milliseconds.
-#
-# If the maximum execution time is reached Redis will log that a script is
-# still in execution after the maximum allowed time and will start to
-# reply to queries with an error.
-#
-# When a long running script exceeds the maximum execution time only the
-# SCRIPT KILL and SHUTDOWN NOSAVE commands are available. The first can be
-# used to stop a script that did not yet called write commands. The second
-# is the only way to shut down the server in the case a write command was
-# already issued by the script but the user doesn't want to wait for the natural
-# termination of the script.
-#
-# Set it to 0 or a negative value for unlimited execution without warnings.
-lua-time-limit 5000
-
-################################ REDIS CLUSTER ###############################
-
-# Normal Redis instances can't be part of a Redis Cluster; only nodes that are
-# started as cluster nodes can. In order to start a Redis instance as a
-# cluster node enable the cluster support uncommenting the following:
-#
-cluster-enabled yes
-
-# Every cluster node has a cluster configuration file. This file is not
-# intended to be edited by hand. It is created and updated by Redis nodes.
-# Every Redis Cluster node requires a different cluster configuration file.
-# Make sure that instances running in the same system do not have
-# overlapping cluster configuration file names.
-#
-cluster-config-file nodes-6398.conf
-
-# Cluster node timeout is the amount of milliseconds a node must be unreachable
-# for it to be considered in failure state.
-# Most other internal time limits are multiple of the node timeout.
-#
-cluster-node-timeout 15000
-
-# A replica of a failing master will avoid to start a failover if its data
-# looks too old.
-#
-# There is no simple way for a replica to actually have an exact measure of
-# its "data age", so the following two checks are performed:
-#
-# 1) If there are multiple replicas able to failover, they exchange messages
-# in order to try to give an advantage to the replica with the best
-# replication offset (more data from the master processed).
-# Replicas will try to get their rank by offset, and apply to the start
-# of the failover a delay proportional to their rank.
-#
-# 2) Every single replica computes the time of the last interaction with
-# its master. This can be the last ping or command received (if the master
-# is still in the "connected" state), or the time that elapsed since the
-# disconnection with the master (if the replication link is currently down).
-# If the last interaction is too old, the replica will not try to failover
-# at all.
-#
-# The point "2" can be tuned by user. Specifically a replica will not perform
-# the failover if, since the last interaction with the master, the time
-# elapsed is greater than:
-#
-# (node-timeout * replica-validity-factor) + repl-ping-replica-period
-#
-# So for example if node-timeout is 30 seconds, and the replica-validity-factor
-# is 10, and assuming a default repl-ping-replica-period of 10 seconds, the
-# replica will not try to failover if it was not able to talk with the master
-# for longer than 310 seconds.
-#
-# A large replica-validity-factor may allow replicas with too old data to failover
-# a master, while a too small value may prevent the cluster from being able to
-# elect a replica at all.
-#
-# For maximum availability, it is possible to set the replica-validity-factor
-# to a value of 0, which means, that replicas will always try to failover the
-# master regardless of the last time they interacted with the master.
-# (However they'll always try to apply a delay proportional to their
-# offset rank).
-#
-# Zero is the only value able to guarantee that when all the partitions heal
-# the cluster will always be able to continue.
-#
-# cluster-replica-validity-factor 10
-
-# Cluster replicas are able to migrate to orphaned masters, that are masters
-# that are left without working replicas. This improves the cluster ability
-# to resist to failures as otherwise an orphaned master can't be failed over
-# in case of failure if it has no working replicas.
-#
-# Replicas migrate to orphaned masters only if there are still at least a
-# given number of other working replicas for their old master. This number
-# is the "migration barrier". A migration barrier of 1 means that a replica
-# will migrate only if there is at least 1 other working replica for its master
-# and so forth. It usually reflects the number of replicas you want for every
-# master in your cluster.
-#
-# Default is 1 (replicas migrate only if their masters remain with at least
-# one replica). To disable migration just set it to a very large value.
-# A value of 0 can be set but is useful only for debugging and dangerous
-# in production.
-#
-# cluster-migration-barrier 1
-
-# By default Redis Cluster nodes stop accepting queries if they detect there
-# is at least an hash slot uncovered (no available node is serving it).
-# This way if the cluster is partially down (for example a range of hash slots
-# are no longer covered) all the cluster becomes, eventually, unavailable.
-# It automatically returns available as soon as all the slots are covered again.
-#
-# However sometimes you want the subset of the cluster which is working,
-# to continue to accept queries for the part of the key space that is still
-# covered. In order to do so, just set the cluster-require-full-coverage
-# option to no.
-#
-# cluster-require-full-coverage yes
-
-# This option, when set to yes, prevents replicas from trying to failover its
-# master during master failures. However the master can still perform a
-# manual failover, if forced to do so.
-#
-# This is useful in different scenarios, especially in the case of multiple
-# data center operations, where we want one side to never be promoted if not
-# in the case of a total DC failure.
-#
-# cluster-replica-no-failover no
-
-# In order to setup your cluster make sure to read the documentation
-# available at http://redis.io web site.
-
-########################## CLUSTER DOCKER/NAT support ########################
-
-# In certain deployments, Redis Cluster nodes address discovery fails, because
-# addresses are NAT-ted or because ports are forwarded (the typical case is
-# Docker and other containers).
-#
-# In order to make Redis Cluster working in such environments, a static
-# configuration where each node knows its public address is needed. The
-# following two options are used for this scope, and are:
-#
-# * cluster-announce-ip
-# * cluster-announce-port
-# * cluster-announce-bus-port
-#
-# Each instruct the node about its address, client port, and cluster message
-# bus port. The information is then published in the header of the bus packets
-# so that other nodes will be able to correctly map the address of the node
-# publishing the information.
-#
-# If the above options are not used, the normal Redis Cluster auto-detection
-# will be used instead.
-#
-# Note that when remapped, the bus port may not be at the fixed offset of
-# clients port + 10000, so you can specify any port and bus-port depending
-# on how they get remapped. If the bus-port is not set, a fixed offset of
-# 10000 will be used as usually.
-#
-# Example:
-#
-# cluster-announce-ip 10.1.1.5
-# cluster-announce-port 6379
-# cluster-announce-bus-port 6380
-
-################################## SLOW LOG ###################################
-
-# The Redis Slow Log is a system to log queries that exceeded a specified
-# execution time. The execution time does not include the I/O operations
-# like talking with the client, sending the reply and so forth,
-# but just the time needed to actually execute the command (this is the only
-# stage of command execution where the thread is blocked and can not serve
-# other requests in the meantime).
-#
-# You can configure the slow log with two parameters: one tells Redis
-# what is the execution time, in microseconds, to exceed in order for the
-# command to get logged, and the other parameter is the length of the
-# slow log. When a new command is logged the oldest one is removed from the
-# queue of logged commands.
-
-# The following time is expressed in microseconds, so 1000000 is equivalent
-# to one second. Note that a negative number disables the slow log, while
-# a value of zero forces the logging of every command.
-slowlog-log-slower-than 10000
-
-# There is no limit to this length. Just be aware that it will consume memory.
-# You can reclaim memory used by the slow log with SLOWLOG RESET.
-slowlog-max-len 128
-
-################################ LATENCY MONITOR ##############################
-
-# The Redis latency monitoring subsystem samples different operations
-# at runtime in order to collect data related to possible sources of
-# latency of a Redis instance.
-#
-# Via the LATENCY command this information is available to the user that can
-# print graphs and obtain reports.
-#
-# The system only logs operations that were performed in a time equal or
-# greater than the amount of milliseconds specified via the
-# latency-monitor-threshold configuration directive. When its value is set
-# to zero, the latency monitor is turned off.
-#
-# By default latency monitoring is disabled since it is mostly not needed
-# if you don't have latency issues, and collecting data has a performance
-# impact, that while very small, can be measured under big load. Latency
-# monitoring can easily be enabled at runtime using the command
-# "CONFIG SET latency-monitor-threshold " if needed.
-latency-monitor-threshold 0
-
-############################# EVENT NOTIFICATION ##############################
-
-# Redis can notify Pub/Sub clients about events happening in the key space.
-# This feature is documented at http://redis.io/topics/notifications
-#
-# For instance if keyspace events notification is enabled, and a client
-# performs a DEL operation on key "foo" stored in the Database 0, two
-# messages will be published via Pub/Sub:
-#
-# PUBLISH __keyspace@0__:foo del
-# PUBLISH __keyevent@0__:del foo
-#
-# It is possible to select the events that Redis will notify among a set
-# of classes. Every class is identified by a single character:
-#
-# K Keyspace events, published with __keyspace@__ prefix.
-# E Keyevent events, published with __keyevent@__ prefix.
-# g Generic commands (non-type specific) like DEL, EXPIRE, RENAME, ...
-# $ String commands
-# l List commands
-# s Set commands
-# h Hash commands
-# z Sorted set commands
-# x Expired events (events generated every time a key expires)
-# e Evicted events (events generated when a key is evicted for maxmemory)
-# A Alias for g$lshzxe, so that the "AKE" string means all the events.
-#
-# The "notify-keyspace-events" takes as argument a string that is composed
-# of zero or multiple characters. The empty string means that notifications
-# are disabled.
-#
-# Example: to enable list and generic events, from the point of view of the
-# event name, use:
-#
-# notify-keyspace-events Elg
-#
-# Example 2: to get the stream of the expired keys subscribing to channel
-# name __keyevent@0__:expired use:
-#
-# notify-keyspace-events Ex
-#
-# By default all notifications are disabled because most users don't need
-# this feature and the feature has some overhead. Note that if you don't
-# specify at least one of K or E, no events will be delivered.
-notify-keyspace-events ""
-
-############################### ADVANCED CONFIG ###############################
-
-# Hashes are encoded using a memory efficient data structure when they have a
-# small number of entries, and the biggest entry does not exceed a given
-# threshold. These thresholds can be configured using the following directives.
-hash-max-ziplist-entries 512
-hash-max-ziplist-value 64
-
-# Lists are also encoded in a special way to save a lot of space.
-# The number of entries allowed per internal list node can be specified
-# as a fixed maximum size or a maximum number of elements.
-# For a fixed maximum size, use -5 through -1, meaning:
-# -5: max size: 64 Kb <-- not recommended for normal workloads
-# -4: max size: 32 Kb <-- not recommended
-# -3: max size: 16 Kb <-- probably not recommended
-# -2: max size: 8 Kb <-- good
-# -1: max size: 4 Kb <-- good
-# Positive numbers mean store up to _exactly_ that number of elements
-# per list node.
-# The highest performing option is usually -2 (8 Kb size) or -1 (4 Kb size),
-# but if your use case is unique, adjust the settings as necessary.
-list-max-ziplist-size -2
-
-# Lists may also be compressed.
-# Compress depth is the number of quicklist ziplist nodes from *each* side of
-# the list to *exclude* from compression. The head and tail of the list
-# are always uncompressed for fast push/pop operations. Settings are:
-# 0: disable all list compression
-# 1: depth 1 means "don't start compressing until after 1 node into the list,
-# going from either the head or tail"
-# So: [head]->node->node->...->node->[tail]
-# [head], [tail] will always be uncompressed; inner nodes will compress.
-# 2: [head]->[next]->node->node->...->node->[prev]->[tail]
-# 2 here means: don't compress head or head->next or tail->prev or tail,
-# but compress all nodes between them.
-# 3: [head]->[next]->[next]->node->node->...->node->[prev]->[prev]->[tail]
-# etc.
-list-compress-depth 0
-
-# Sets have a special encoding in just one case: when a set is composed
-# of just strings that happen to be integers in radix 10 in the range
-# of 64 bit signed integers.
-# The following configuration setting sets the limit in the size of the
-# set in order to use this special memory saving encoding.
-set-max-intset-entries 512
-
-# Similarly to hashes and lists, sorted sets are also specially encoded in
-# order to save a lot of space. This encoding is only used when the length and
-# elements of a sorted set are below the following limits:
-zset-max-ziplist-entries 128
-zset-max-ziplist-value 64
-
-# HyperLogLog sparse representation bytes limit. The limit includes the
-# 16 bytes header. When an HyperLogLog using the sparse representation crosses
-# this limit, it is converted into the dense representation.
-#
-# A value greater than 16000 is totally useless, since at that point the
-# dense representation is more memory efficient.
-#
-# The suggested value is ~ 3000 in order to have the benefits of
-# the space efficient encoding without slowing down too much PFADD,
-# which is O(N) with the sparse encoding. The value can be raised to
-# ~ 10000 when CPU is not a concern, but space is, and the data set is
-# composed of many HyperLogLogs with cardinality in the 0 - 15000 range.
-hll-sparse-max-bytes 3000
-
-# Streams macro node max size / items. The stream data structure is a radix
-# tree of big nodes that encode multiple items inside. Using this configuration
-# it is possible to configure how big a single node can be in bytes, and the
-# maximum number of items it may contain before switching to a new node when
-# appending new stream entries. If any of the following settings are set to
-# zero, the limit is ignored, so for instance it is possible to set just a
-# max entires limit by setting max-bytes to 0 and max-entries to the desired
-# value.
-stream-node-max-bytes 4096
-stream-node-max-entries 100
-
-# Active rehashing uses 1 millisecond every 100 milliseconds of CPU time in
-# order to help rehashing the main Redis hash table (the one mapping top-level
-# keys to values). The hash table implementation Redis uses (see dict.c)
-# performs a lazy rehashing: the more operation you run into a hash table
-# that is rehashing, the more rehashing "steps" are performed, so if the
-# server is idle the rehashing is never complete and some more memory is used
-# by the hash table.
-#
-# The default is to use this millisecond 10 times every second in order to
-# actively rehash the main dictionaries, freeing memory when possible.
-#
-# If unsure:
-# use "activerehashing no" if you have hard latency requirements and it is
-# not a good thing in your environment that Redis can reply from time to time
-# to queries with 2 milliseconds delay.
-#
-# use "activerehashing yes" if you don't have such hard requirements but
-# want to free memory asap when possible.
-activerehashing yes
-
-# The client output buffer limits can be used to force disconnection of clients
-# that are not reading data from the server fast enough for some reason (a
-# common reason is that a Pub/Sub client can't consume messages as fast as the
-# publisher can produce them).
-#
-# The limit can be set differently for the three different classes of clients:
-#
-# normal -> normal clients including MONITOR clients
-# replica -> replica clients
-# pubsub -> clients subscribed to at least one pubsub channel or pattern
-#
-# The syntax of every client-output-buffer-limit directive is the following:
-#
-# client-output-buffer-limit
-#
-# A client is immediately disconnected once the hard limit is reached, or if
-# the soft limit is reached and remains reached for the specified number of
-# seconds (continuously).
-# So for instance if the hard limit is 32 megabytes and the soft limit is
-# 16 megabytes / 10 seconds, the client will get disconnected immediately
-# if the size of the output buffers reach 32 megabytes, but will also get
-# disconnected if the client reaches 16 megabytes and continuously overcomes
-# the limit for 10 seconds.
-#
-# By default normal clients are not limited because they don't receive data
-# without asking (in a push way), but just after a request, so only
-# asynchronous clients may create a scenario where data is requested faster
-# than it can read.
-#
-# Instead there is a default limit for pubsub and replica clients, since
-# subscribers and replicas receive data in a push fashion.
-#
-# Both the hard or the soft limit can be disabled by setting them to zero.
-client-output-buffer-limit normal 0 0 0
-client-output-buffer-limit replica 256mb 64mb 60
-client-output-buffer-limit pubsub 32mb 8mb 60
-
-# Client query buffers accumulate new commands. They are limited to a fixed
-# amount by default in order to avoid that a protocol desynchronization (for
-# instance due to a bug in the client) will lead to unbound memory usage in
-# the query buffer. However you can configure it here if you have very special
-# needs, such us huge multi/exec requests or alike.
-#
-# client-query-buffer-limit 1gb
-
-# In the Redis protocol, bulk requests, that are, elements representing single
-# strings, are normally limited ot 512 mb. However you can change this limit
-# here.
-#
-# proto-max-bulk-len 512mb
-
-# Redis calls an internal function to perform many background tasks, like
-# closing connections of clients in timeout, purging expired keys that are
-# never requested, and so forth.
-#
-# Not all tasks are performed with the same frequency, but Redis checks for
-# tasks to perform according to the specified "hz" value.
-#
-# By default "hz" is set to 10. Raising the value will use more CPU when
-# Redis is idle, but at the same time will make Redis more responsive when
-# there are many keys expiring at the same time, and timeouts may be
-# handled with more precision.
-#
-# The range is between 1 and 500, however a value over 100 is usually not
-# a good idea. Most users should use the default of 10 and raise this up to
-# 100 only in environments where very low latency is required.
-hz 10
-
-# Normally it is useful to have an HZ value which is proportional to the
-# number of clients connected. This is useful in order, for instance, to
-# avoid too many clients are processed for each background task invocation
-# in order to avoid latency spikes.
-#
-# Since the default HZ value by default is conservatively set to 10, Redis
-# offers, and enables by default, the ability to use an adaptive HZ value
-# which will temporary raise when there are many connected clients.
-#
-# When dynamic HZ is enabled, the actual configured HZ will be used as
-# as a baseline, but multiples of the configured HZ value will be actually
-# used as needed once more clients are connected. In this way an idle
-# instance will use very little CPU time while a busy instance will be
-# more responsive.
-dynamic-hz yes
-
-# When a child rewrites the AOF file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-aof-rewrite-incremental-fsync yes
-
-# When redis saves RDB file, if the following option is enabled
-# the file will be fsync-ed every 32 MB of data generated. This is useful
-# in order to commit the file to the disk more incrementally and avoid
-# big latency spikes.
-rdb-save-incremental-fsync yes
-
-# Redis LFU eviction (see maxmemory setting) can be tuned. However it is a good
-# idea to start with the default settings and only change them after investigating
-# how to improve the performances and how the keys LFU change over time, which
-# is possible to inspect via the OBJECT FREQ command.
-#
-# There are two tunable parameters in the Redis LFU implementation: the
-# counter logarithm factor and the counter decay time. It is important to
-# understand what the two parameters mean before changing them.
-#
-# The LFU counter is just 8 bits per key, it's maximum value is 255, so Redis
-# uses a probabilistic increment with logarithmic behavior. Given the value
-# of the old counter, when a key is accessed, the counter is incremented in
-# this way:
-#
-# 1. A random number R between 0 and 1 is extracted.
-# 2. A probability P is calculated as 1/(old_value*lfu_log_factor+1).
-# 3. The counter is incremented only if R < P.
-#
-# The default lfu-log-factor is 10. This is a table of how the frequency
-# counter changes with a different number of accesses with different
-# logarithmic factors:
-#
-# +--------+------------+------------+------------+------------+------------+
-# | factor | 100 hits | 1000 hits | 100K hits | 1M hits | 10M hits |
-# +--------+------------+------------+------------+------------+------------+
-# | 0 | 104 | 255 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 1 | 18 | 49 | 255 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 10 | 10 | 18 | 142 | 255 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-# | 100 | 8 | 11 | 49 | 143 | 255 |
-# +--------+------------+------------+------------+------------+------------+
-#
-# NOTE: The above table was obtained by running the following commands:
-#
-# redis-benchmark -n 1000000 incr foo
-# redis-cli object freq foo
-#
-# NOTE 2: The counter initial value is 5 in order to give new objects a chance
-# to accumulate hits.
-#
-# The counter decay time is the time, in minutes, that must elapse in order
-# for the key counter to be divided by two (or decremented if it has a value
-# less <= 10).
-#
-# The default value for the lfu-decay-time is 1. A Special value of 0 means to
-# decay the counter every time it happens to be scanned.
-#
-# lfu-log-factor 10
-# lfu-decay-time 1
-
-########################### ACTIVE DEFRAGMENTATION #######################
-#
-# WARNING THIS FEATURE IS EXPERIMENTAL. However it was stress tested
-# even in production and manually tested by multiple engineers for some
-# time.
-#
-# What is active defragmentation?
-# -------------------------------
-#
-# Active (online) defragmentation allows a Redis server to compact the
-# spaces left between small allocations and deallocations of data in memory,
-# thus allowing to reclaim back memory.
-#
-# Fragmentation is a natural process that happens with every allocator (but
-# less so with Jemalloc, fortunately) and certain workloads. Normally a server
-# restart is needed in order to lower the fragmentation, or at least to flush
-# away all the data and create it again. However thanks to this feature
-# implemented by Oran Agra for Redis 4.0 this process can happen at runtime
-# in an "hot" way, while the server is running.
-#
-# Basically when the fragmentation is over a certain level (see the
-# configuration options below) Redis will start to create new copies of the
-# values in contiguous memory regions by exploiting certain specific Jemalloc
-# features (in order to understand if an allocation is causing fragmentation
-# and to allocate it in a better place), and at the same time, will release the
-# old copies of the data. This process, repeated incrementally for all the keys
-# will cause the fragmentation to drop back to normal values.
-#
-# Important things to understand:
-#
-# 1. This feature is disabled by default, and only works if you compiled Redis
-# to use the copy of Jemalloc we ship with the source code of Redis.
-# This is the default with Linux builds.
-#
-# 2. You never need to enable this feature if you don't have fragmentation
-# issues.
-#
-# 3. Once you experience fragmentation, you can enable this feature when
-# needed with the command "CONFIG SET activedefrag yes".
-#
-# The configuration parameters are able to fine tune the behavior of the
-# defragmentation process. If you are not sure about what they mean it is
-# a good idea to leave the defaults untouched.
-
-# Enabled active defragmentation
-# activedefrag yes
-
-# Minimum amount of fragmentation waste to start active defrag
-# active-defrag-ignore-bytes 100mb
-
-# Minimum percentage of fragmentation to start active defrag
-# active-defrag-threshold-lower 10
-
-# Maximum percentage of fragmentation at which we use maximum effort
-# active-defrag-threshold-upper 100
-
-# Minimal effort for defrag in CPU percentage
-# active-defrag-cycle-min 5
-
-# Maximal effort for defrag in CPU percentage
-# active-defrag-cycle-max 75
-
-# Maximum number of set/hash/zset/list fields that will be processed from
-# the main dictionary scan
-# active-defrag-max-scan-fields 1000
-
diff --git a/document/redis-cluster/config/redis.sh b/document/redis-cluster/config/redis.sh
deleted file mode 100644
index e2261206..00000000
--- a/document/redis-cluster/config/redis.sh
+++ /dev/null
@@ -1 +0,0 @@
-redis-server /config/nodes-${PORT}.conf
\ No newline at end of file
diff --git a/document/redis-cluster/docker-compose.yml b/document/redis-cluster/docker-compose.yml
deleted file mode 100644
index 9d47c5ab..00000000
--- a/document/redis-cluster/docker-compose.yml
+++ /dev/null
@@ -1,110 +0,0 @@
-version: "3"
-services:
- redis-master1:
- image: redis:5.0 # 基础镜像
- container_name: redis-master1 # 容器名称
- working_dir: /config # 切换工作目录
- environment: # 环境变量
- - PORT=6391 # 会使用config/nodes-${PORT}.conf这个配置文件
- ports: # 映射端口,对外提供服务
- - 6391:6391 # redis的服务端口
- - 16391:16391 # redis集群监控端口
- stdin_open: true # 标准输入打开
- tty: true # 后台运行不退出
- network_mode: host # 使用host模式
- privileged: true # 拥有容器内命令执行的权限
- volumes:
- - /mydata/redis-cluster/config:/config #配置文件目录映射到宿主机
- entrypoint: # 设置服务默认的启动程序
- - /bin/bash
- - redis.sh
- redis-master2:
- image: redis:5.0
- working_dir: /config
- container_name: redis-master2
- environment:
- - PORT=6392
- ports:
- - 6392:6392
- - 16392:16392
- stdin_open: true
- network_mode: host
- tty: true
- privileged: true
- volumes:
- - /mydata/redis-cluster/config:/config
- entrypoint:
- - /bin/bash
- - redis.sh
- redis-master3:
- image: redis:5.0
- container_name: redis-master3
- working_dir: /config
- environment:
- - PORT=6393
- ports:
- - 6393:6393
- - 16393:16393
- stdin_open: true
- network_mode: host
- tty: true
- privileged: true
- volumes:
- - /mydata/redis-cluster/config:/config
- entrypoint:
- - /bin/bash
- - redis.sh
- redis-slave1:
- image: redis:5.0
- container_name: redis-slave1
- working_dir: /config
- environment:
- - PORT=6394
- ports:
- - 6394:6394
- - 16394:16394
- stdin_open: true
- network_mode: host
- tty: true
- privileged: true
- volumes:
- - /mydata/redis-cluster/config:/config
- entrypoint:
- - /bin/bash
- - redis.sh
- redis-slave2:
- image: redis:5.0
- working_dir: /config
- container_name: redis-slave2
- environment:
- - PORT=6395
- ports:
- - 6395:6395
- - 16395:16395
- stdin_open: true
- network_mode: host
- tty: true
- privileged: true
- volumes:
- - /mydata/redis-cluster/config:/config
- entrypoint:
- - /bin/bash
- - redis.sh
- redis-slave3:
- image: redis:5.0
- container_name: redis-slave3
- working_dir: /config
- environment:
- - PORT=6396
- ports:
- - 6396:6396
- - 16396:16396
- stdin_open: true
- network_mode: host
- tty: true
- privileged: true
- volumes:
- - /mydata/redis-cluster/config:/config
- entrypoint:
- - /bin/bash
- - redis.sh
diff --git a/document/sql/mall.sql b/document/sql/mall.sql
deleted file mode 100644
index ec1a3af9..00000000
--- a/document/sql/mall.sql
+++ /dev/null
@@ -1,3257 +0,0 @@
-/*
- Navicat Premium Data Transfer
-
- Source Server : localhost
- Source Server Type : MySQL
- Source Server Version : 50719
- Source Host : localhost:3306
- Source Schema : mall
-
- Target Server Type : MySQL
- Target Server Version : 50719
- File Encoding : 65001
-
- Date: 11/05/2023 15:48:15
-*/
-
-SET NAMES utf8mb4;
-SET FOREIGN_KEY_CHECKS = 0;
-
--- ----------------------------
--- Table structure for cms_help
--- ----------------------------
-DROP TABLE IF EXISTS `cms_help`;
-CREATE TABLE `cms_help` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `category_id` bigint(20) NULL DEFAULT NULL,
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `title` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `read_count` int(1) NULL DEFAULT NULL,
- `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '帮助表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_help
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_help_category
--- ----------------------------
-DROP TABLE IF EXISTS `cms_help_category`;
-CREATE TABLE `cms_help_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类图标',
- `help_count` int(11) NULL DEFAULT NULL COMMENT '专题数量',
- `show_status` int(2) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '帮助分类表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_help_category
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_member_report
--- ----------------------------
-DROP TABLE IF EXISTS `cms_member_report`;
-CREATE TABLE `cms_member_report` (
- `id` bigint(20) NULL DEFAULT NULL,
- `report_type` int(1) NULL DEFAULT NULL COMMENT '举报类型:0->商品评价;1->话题内容;2->用户评论',
- `report_member_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '举报人',
- `create_time` datetime NULL DEFAULT NULL,
- `report_object` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `report_status` int(1) NULL DEFAULT NULL COMMENT '举报状态:0->未处理;1->已处理',
- `handle_status` int(1) NULL DEFAULT NULL COMMENT '处理结果:0->无效;1->有效;2->恶意',
- `note` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL
-) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用户举报表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_member_report
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_prefrence_area
--- ----------------------------
-DROP TABLE IF EXISTS `cms_prefrence_area`;
-CREATE TABLE `cms_prefrence_area` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `sub_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `pic` varbinary(500) NULL DEFAULT NULL COMMENT '展示图片',
- `sort` int(11) NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优选专区' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_prefrence_area
--- ----------------------------
-INSERT INTO `cms_prefrence_area` VALUES (1, '让音质更出众', '音质不打折 完美现场感', NULL, NULL, 1);
-INSERT INTO `cms_prefrence_area` VALUES (2, '让音质更出众22', '让音质更出众22', NULL, NULL, NULL);
-INSERT INTO `cms_prefrence_area` VALUES (3, '让音质更出众33', NULL, NULL, NULL, NULL);
-INSERT INTO `cms_prefrence_area` VALUES (4, '让音质更出众44', NULL, NULL, NULL, NULL);
-
--- ----------------------------
--- Table structure for cms_prefrence_area_product_relation
--- ----------------------------
-DROP TABLE IF EXISTS `cms_prefrence_area_product_relation`;
-CREATE TABLE `cms_prefrence_area_product_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `prefrence_area_id` bigint(20) NULL DEFAULT NULL,
- `product_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 25 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优选专区和产品关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_prefrence_area_product_relation
--- ----------------------------
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (1, 1, 12);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (2, 1, 13);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (3, 1, 14);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (4, 1, 18);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (5, 1, 7);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (6, 2, 7);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (7, 1, 22);
-INSERT INTO `cms_prefrence_area_product_relation` VALUES (24, 1, 23);
-
--- ----------------------------
--- Table structure for cms_subject
--- ----------------------------
-DROP TABLE IF EXISTS `cms_subject`;
-CREATE TABLE `cms_subject` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `category_id` bigint(20) NULL DEFAULT NULL,
- `title` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `pic` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专题主图',
- `product_count` int(11) NULL DEFAULT NULL COMMENT '关联产品数量',
- `recommend_status` int(1) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `collect_count` int(11) NULL DEFAULT NULL,
- `read_count` int(11) NULL DEFAULT NULL,
- `comment_count` int(11) NULL DEFAULT NULL,
- `album_pics` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '画册图片用逗号分割',
- `description` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',
- `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
- `forward_count` int(11) NULL DEFAULT NULL COMMENT '转发数',
- `category_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专题分类名称',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '专题表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_subject
--- ----------------------------
-INSERT INTO `cms_subject` VALUES (1, 1, 'polo衬衫的也时尚', NULL, NULL, NULL, '2018-11-11 13:26:55', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '服装专题');
-INSERT INTO `cms_subject` VALUES (2, 2, '大牌手机低价秒', NULL, NULL, NULL, '2018-11-12 13:27:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '手机专题');
-INSERT INTO `cms_subject` VALUES (3, 2, '晓龙845新品上市', NULL, NULL, NULL, '2018-11-13 13:27:05', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '手机专题');
-INSERT INTO `cms_subject` VALUES (4, 1, '夏天应该穿什么', NULL, NULL, NULL, '2018-11-01 13:27:09', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '服装专题');
-INSERT INTO `cms_subject` VALUES (5, 1, '夏季精选', NULL, NULL, NULL, '2018-11-06 13:27:18', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '服装专题');
-INSERT INTO `cms_subject` VALUES (6, 2, '品牌手机降价', NULL, NULL, NULL, '2018-11-07 13:27:21', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, '手机专题');
-
--- ----------------------------
--- Table structure for cms_subject_category
--- ----------------------------
-DROP TABLE IF EXISTS `cms_subject_category`;
-CREATE TABLE `cms_subject_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类图标',
- `subject_count` int(11) NULL DEFAULT NULL COMMENT '专题数量',
- `show_status` int(2) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '专题分类表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_subject_category
--- ----------------------------
-INSERT INTO `cms_subject_category` VALUES (1, '服装专题', NULL, NULL, NULL, NULL);
-INSERT INTO `cms_subject_category` VALUES (2, '手机专题', NULL, NULL, NULL, NULL);
-
--- ----------------------------
--- Table structure for cms_subject_comment
--- ----------------------------
-DROP TABLE IF EXISTS `cms_subject_comment`;
-CREATE TABLE `cms_subject_comment` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `subject_id` bigint(20) NULL DEFAULT NULL,
- `member_nick_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `member_icon` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `content` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '专题评论表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_subject_comment
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_subject_product_relation
--- ----------------------------
-DROP TABLE IF EXISTS `cms_subject_product_relation`;
-CREATE TABLE `cms_subject_product_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `subject_id` bigint(20) NULL DEFAULT NULL,
- `product_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 71 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '专题商品关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_subject_product_relation
--- ----------------------------
-INSERT INTO `cms_subject_product_relation` VALUES (1, 1, 12);
-INSERT INTO `cms_subject_product_relation` VALUES (2, 1, 13);
-INSERT INTO `cms_subject_product_relation` VALUES (3, 1, 14);
-INSERT INTO `cms_subject_product_relation` VALUES (4, 1, 18);
-INSERT INTO `cms_subject_product_relation` VALUES (5, 1, 7);
-INSERT INTO `cms_subject_product_relation` VALUES (6, 2, 7);
-INSERT INTO `cms_subject_product_relation` VALUES (7, 1, 22);
-INSERT INTO `cms_subject_product_relation` VALUES (29, 1, 23);
-INSERT INTO `cms_subject_product_relation` VALUES (30, 4, 23);
-INSERT INTO `cms_subject_product_relation` VALUES (31, 5, 23);
-INSERT INTO `cms_subject_product_relation` VALUES (68, 2, 26);
-INSERT INTO `cms_subject_product_relation` VALUES (69, 3, 26);
-INSERT INTO `cms_subject_product_relation` VALUES (70, 6, 26);
-
--- ----------------------------
--- Table structure for cms_topic
--- ----------------------------
-DROP TABLE IF EXISTS `cms_topic`;
-CREATE TABLE `cms_topic` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `category_id` bigint(20) NULL DEFAULT NULL,
- `name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `start_time` datetime NULL DEFAULT NULL,
- `end_time` datetime NULL DEFAULT NULL,
- `attend_count` int(11) NULL DEFAULT NULL COMMENT '参与人数',
- `attention_count` int(11) NULL DEFAULT NULL COMMENT '关注人数',
- `read_count` int(11) NULL DEFAULT NULL,
- `award_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '奖品名称',
- `attend_type` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '参与方式',
- `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '话题内容',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '话题表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_topic
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_topic_category
--- ----------------------------
-DROP TABLE IF EXISTS `cms_topic_category`;
-CREATE TABLE `cms_topic_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类图标',
- `subject_count` int(11) NULL DEFAULT NULL COMMENT '专题数量',
- `show_status` int(2) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '话题分类表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_topic_category
--- ----------------------------
-
--- ----------------------------
--- Table structure for cms_topic_comment
--- ----------------------------
-DROP TABLE IF EXISTS `cms_topic_comment`;
-CREATE TABLE `cms_topic_comment` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_nick_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `topic_id` bigint(20) NULL DEFAULT NULL,
- `member_icon` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `content` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '专题评论表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of cms_topic_comment
--- ----------------------------
-
--- ----------------------------
--- Table structure for oms_cart_item
--- ----------------------------
-DROP TABLE IF EXISTS `oms_cart_item`;
-CREATE TABLE `oms_cart_item` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_sku_id` bigint(20) NULL DEFAULT NULL,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `quantity` int(11) NULL DEFAULT NULL COMMENT '购买数量',
- `price` decimal(10, 2) NULL DEFAULT NULL COMMENT '添加到购物车的价格',
- `product_pic` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品主图',
- `product_name` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品名称',
- `product_sub_title` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品副标题(卖点)',
- `product_sku_code` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品sku条码',
- `member_nickname` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '会员昵称',
- `create_date` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `modify_date` datetime NULL DEFAULT NULL COMMENT '修改时间',
- `delete_status` int(1) NULL DEFAULT 0 COMMENT '是否删除',
- `product_category_id` bigint(20) NULL DEFAULT NULL COMMENT '商品分类',
- `product_brand` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_sn` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_attr` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 115 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '购物车表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_cart_item
--- ----------------------------
-INSERT INTO `oms_cart_item` VALUES (12, 26, 90, 1, 1, 3788.00, NULL, '华为 HUAWEI P20', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2018-08-27 16:53:44', NULL, 1, 19, NULL, NULL, NULL);
-INSERT INTO `oms_cart_item` VALUES (13, 27, 98, 1, 3, 2699.00, NULL, '小米8', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2018-08-27 17:11:53', NULL, 1, 19, NULL, NULL, NULL);
-INSERT INTO `oms_cart_item` VALUES (14, 28, 102, 1, 1, 649.00, NULL, '红米5A', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '201808270028001', 'windir', '2018-08-27 17:18:02', NULL, 1, 19, NULL, NULL, NULL);
-INSERT INTO `oms_cart_item` VALUES (15, 28, 103, 1, 1, 699.00, NULL, '红米5A', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '201808270028001', 'windir', '2018-08-28 10:22:45', NULL, 1, 19, NULL, NULL, NULL);
-INSERT INTO `oms_cart_item` VALUES (16, 29, 106, 1, 1, 5499.00, NULL, 'Apple iPhone 8 Plus', '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '201808270029001', 'windir', '2018-08-28 10:50:50', NULL, 1, 19, NULL, NULL, NULL);
-INSERT INTO `oms_cart_item` VALUES (19, 36, 163, 1, 3, 100.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '202002210036001', 'windir', '2020-02-25 15:51:59', NULL, 1, 29, 'NIKE', '6799345', '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `oms_cart_item` VALUES (20, 36, 164, 1, 2, 120.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '202002210036001', 'windir', '2020-02-25 15:54:23', NULL, 1, 29, 'NIKE', '6799345', '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `oms_cart_item` VALUES (21, 36, 164, 1, 2, 120.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '202002210036001', 'windir', '2020-02-25 16:49:53', NULL, 1, 29, 'NIKE', '6799345', '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `oms_cart_item` VALUES (22, 26, 110, 1, 3, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-04 15:34:24', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (23, 27, 98, 1, 7, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-04 15:35:43', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (24, 26, 110, 1, 4, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-04 16:58:17', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (25, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-04 16:58:23', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (26, 28, 102, 1, 4, 649.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '201808270028001', 'windir', '2020-05-04 16:58:26', NULL, 1, 19, '小米', '7437789', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (27, 29, 106, 1, 1, 4999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '201808270029001', 'windir', '2020-05-04 16:58:29', NULL, 1, 19, '苹果', '7437799', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (28, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-04 17:07:20', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (29, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-04 17:07:23', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (30, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-04 17:08:14', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (31, 29, 106, 1, 1, 4999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '201808270029001', 'windir', '2020-05-04 17:09:56', NULL, 1, 19, '苹果', '7437799', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (32, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-04 17:13:50', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (33, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-04 17:16:15', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (34, 36, 164, 1, 1, 120.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '202002210036002', 'windir', '2020-05-04 17:19:20', NULL, 1, 29, 'NIKE', '6799345', '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `oms_cart_item` VALUES (35, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-05 10:41:39', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (36, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-05 10:41:55', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (37, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-05 10:42:57', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (38, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-05 14:29:28', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (39, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-05 14:32:52', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (40, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-05 14:33:20', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (41, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-05 14:49:13', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (42, 26, 111, 1, 1, 3999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026002', 'windir', '2020-05-05 15:26:05', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (43, 28, 102, 1, 1, 649.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '201808270028001', 'windir', '2020-05-16 15:16:04', NULL, 1, 19, '小米', '7437789', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (44, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-16 15:18:00', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (45, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 15:00:16', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (46, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-17 15:00:22', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (47, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 15:14:14', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (48, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 15:20:03', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (49, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 15:21:54', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (50, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 16:07:22', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (51, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-17 16:07:26', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (52, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 19:33:36', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (53, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-17 19:33:39', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (54, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 19:39:07', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (55, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-17 19:41:26', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (56, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-18 16:50:00', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (57, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-18 20:22:04', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (58, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-18 20:22:08', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (59, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-23 16:21:13', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (60, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-05-23 17:01:28', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (61, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-24 09:36:50', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (62, 26, 110, 1, 2, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-05-24 09:44:39', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (63, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-06-07 17:01:48', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (64, 27, 98, 1, 2, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-06-14 15:24:40', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (65, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-06-21 14:27:13', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (66, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-06-21 15:12:14', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (67, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-06-21 15:12:53', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (68, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'windir', '2020-06-21 15:15:10', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (69, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2020-06-27 10:27:48', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (70, 27, 98, 1, 1, 2699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '201808270027001', 'windir', '2022-10-28 14:50:46', NULL, 1, 19, '小米', '7437788', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (71, 37, 201, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 紫色 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'windir', '2022-10-28 15:27:32', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (72, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'windir', '2022-11-09 15:14:46', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (73, 38, 213, 1, 1, 3599.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '202210280038001', 'windir', '2022-11-09 15:25:28', NULL, 1, 53, '苹果', '100044025833', '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_cart_item` VALUES (74, 37, 201, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'windir', '2022-11-09 15:26:04', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (75, 45, 239, 1, 1, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄 3200万前置索尼镜头 5G手机', '【11.11提前购机享价保,好货不用等,系统申请一键价保补差!】【Reno8Pro爆款优惠】 ', '202211080045001', 'windir', '2022-11-09 16:16:23', NULL, 1, 19, 'OPPO', '10052147850350', '[{\"key\":\"颜色\",\"value\":\"鸢尾紫\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (76, 45, 239, 1, 1, 2299.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄 3200万前置索尼镜头 5G手机', '【11.11提前购机享价保,好货不用等,系统申请一键价保补差!】【Reno8Pro爆款优惠】 ', '202211080045001', 'windir', '2022-11-09 16:18:36', NULL, 1, 19, 'OPPO', '10052147850350', '[{\"key\":\"颜色\",\"value\":\"鸢尾紫\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (77, 41, 225, 1, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量 墨羽 12GB+256GB 5G智能手机 小米 红米', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'windir', '2022-11-10 15:19:36', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (78, 37, 201, 1, 2, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'windir', '2022-11-10 15:19:44', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (79, 38, 213, 1, 1, 3599.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '202210280038001', 'windir', '2022-11-11 15:37:40', NULL, 1, 53, '苹果', '100044025833', '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_cart_item` VALUES (80, 38, 213, 1, 1, 3599.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '202210280038001', 'windir', '2022-11-11 15:38:12', NULL, 1, 53, '苹果', '100044025833', '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_cart_item` VALUES (81, 38, 213, 1, 3, 3599.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '202210280038001', 'windir', '2022-11-11 15:38:22', NULL, 1, 53, '苹果', '100044025833', '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_cart_item` VALUES (82, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'windir', '2022-11-11 16:07:23', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (83, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'windir', '2022-11-11 16:13:11', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (84, 37, 201, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'windir', '2022-11-11 16:15:05', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (85, 28, 102, 1, 1, 649.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '201808270028001', 'windir', '2022-11-11 16:21:05', NULL, 1, 19, '小米', '7437789', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (86, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'windir', '2022-11-16 10:22:47', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (87, 41, 225, 1, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'windir', '2022-11-16 10:22:51', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (88, 39, 217, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', '【双十一大促来袭】指定型号至高优惠1000,以旧换新至高补贴1000元,晒单赢好礼', '202210280039001', 'windir', '2022-11-16 10:22:54', NULL, 1, 54, '小米', '100023207945', '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `oms_cart_item` VALUES (89, 37, 201, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'windir', '2022-11-16 10:23:16', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (90, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'test', '2022-12-21 15:49:00', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (91, 37, 201, 1, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'test', '2022-12-21 15:49:42', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (92, 41, 225, 1, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'test', '2022-12-21 15:49:53', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (93, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'test', '2022-12-21 15:51:03', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (94, 41, 225, 1, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'test', '2022-12-21 15:51:28', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (95, 41, 225, 1, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'test', '2022-12-21 16:45:16', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (96, 40, 221, 1, 2, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'test', '2022-12-21 16:46:41', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (97, 40, 221, 1, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'test', '2022-12-21 16:50:10', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (98, 40, 221, 1, 2, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'test', '2022-12-23 09:55:11', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (99, 26, 110, 1, 1, 3788.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'test', '2023-01-10 15:39:03', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (100, 26, 111, 1, 1, 3899.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026002', 'test', '2023-01-10 16:58:08', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_cart_item` VALUES (101, 26, 110, 1, 1, 3699.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '201806070026001', 'test', '2023-01-10 17:10:26', NULL, 1, 19, '华为', '6946605', '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_cart_item` VALUES (102, 40, 221, 11, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'member', '2023-05-11 15:24:33', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (103, 41, 225, 11, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'member', '2023-05-11 15:24:37', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (104, 38, 213, 11, 1, 3599.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款', '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '202210280038001', 'member', '2023-05-11 15:30:32', NULL, 1, 53, '苹果', '100044025833', '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_cart_item` VALUES (105, 39, 217, 11, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', '【双十一大促来袭】指定型号至高优惠1000,以旧换新至高补贴1000元,晒单赢好礼', '202210280039001', 'member', '2023-05-11 15:31:38', NULL, 1, 54, '小米', '100023207945', '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `oms_cart_item` VALUES (106, 44, 235, 11, 1, 369.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议)', '【满血无缓存!进店抽百元E卡,部分型号白条三期免息】兼具速度与可靠性!读速高达3500MB/s,全功率模式!点击 ', '202211080044001', 'member', '2023-05-11 15:32:16', NULL, 1, 55, '三星', '100018768480', '[{\"key\":\"颜色\",\"value\":\"新品980|NVMe PCIe3.0*4\"},{\"key\":\"版本\",\"value\":\"512GB\"}]');
-INSERT INTO `oms_cart_item` VALUES (107, 42, 229, 11, 1, 4999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', 'HUAWEI Mate 50 直屏旗舰 超光变XMAGE影像 北斗卫星消息', '【华为Mate50新品上市】内置66W华为充电套装,超光变XMAGE影像,北斗卫星消息,鸿蒙操作系统3.0!立即抢购!华为新品可持续计划,猛戳》 ', '202211040042001', 'member', '2023-05-11 15:32:44', NULL, 1, 19, '华为', '100035295081', '[{\"key\":\"颜色\",\"value\":\"曜金黑\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (108, 37, 201, 11, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '202210280037001', 'member', '2023-05-11 15:34:32', NULL, 1, 19, '苹果', '100038005189', '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (109, 40, 221, 11, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'member', '2023-05-11 15:35:02', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (110, 41, 225, 11, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'member', '2023-05-11 15:35:21', NULL, 1, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (111, 40, 221, 11, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'member', '2023-05-11 15:36:57', NULL, 1, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (112, 39, 217, 11, 1, 5999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', '【双十一大促来袭】指定型号至高优惠1000,以旧换新至高补贴1000元,晒单赢好礼', '202210280039001', 'member', '2023-05-11 15:37:04', NULL, 1, 54, '小米', '100023207945', '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `oms_cart_item` VALUES (113, 40, 221, 11, 1, 2999.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '202211040040001', 'member', '2023-05-11 15:37:57', NULL, 0, 19, '小米', '100027789721', '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_cart_item` VALUES (114, 41, 225, 11, 1, 2099.00, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '202211040041001', 'member', '2023-05-11 15:38:03', NULL, 0, 19, '小米', '100035246702', '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-
--- ----------------------------
--- Table structure for oms_company_address
--- ----------------------------
-DROP TABLE IF EXISTS `oms_company_address`;
-CREATE TABLE `oms_company_address` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `address_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '地址名称',
- `send_status` int(1) NULL DEFAULT NULL COMMENT '默认发货地址:0->否;1->是',
- `receive_status` int(1) NULL DEFAULT NULL COMMENT '是否默认收货地址:0->否;1->是',
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收发货人姓名',
- `phone` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收货人电话',
- `province` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '省/直辖市',
- `city` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '市',
- `region` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区',
- `detail_address` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '详细地址',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '公司收发货地址表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_company_address
--- ----------------------------
-INSERT INTO `oms_company_address` VALUES (1, '深圳发货点', 1, 1, '大梨', '18000000000', '广东省', '深圳市', '南山区', '科兴科学园');
-INSERT INTO `oms_company_address` VALUES (2, '北京发货点', 0, 0, '大梨', '18000000000', '北京市', NULL, '南山区', '科兴科学园');
-INSERT INTO `oms_company_address` VALUES (3, '南京发货点', 0, 0, '大梨', '18000000000', '江苏省', '南京市', '南山区', '科兴科学园');
-
--- ----------------------------
--- Table structure for oms_order
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order`;
-CREATE TABLE `oms_order` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '订单id',
- `member_id` bigint(20) NOT NULL,
- `coupon_id` bigint(20) NULL DEFAULT NULL,
- `order_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '订单编号',
- `create_time` datetime NULL DEFAULT NULL COMMENT '提交时间',
- `member_username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户帐号',
- `total_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '订单总金额',
- `pay_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '应付金额(实际支付金额)',
- `freight_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '运费金额',
- `promotion_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '促销优化金额(促销价、满减、阶梯价)',
- `integration_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '积分抵扣金额',
- `coupon_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '优惠券抵扣金额',
- `discount_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '管理员后台调整订单使用的折扣金额',
- `pay_type` int(1) NULL DEFAULT NULL COMMENT '支付方式:0->未支付;1->支付宝;2->微信',
- `source_type` int(1) NULL DEFAULT NULL COMMENT '订单来源:0->PC订单;1->app订单',
- `status` int(1) NULL DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',
- `order_type` int(1) NULL DEFAULT NULL COMMENT '订单类型:0->正常订单;1->秒杀订单',
- `delivery_company` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '物流公司(配送方式)',
- `delivery_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '物流单号',
- `auto_confirm_day` int(11) NULL DEFAULT NULL COMMENT '自动确认时间(天)',
- `integration` int(11) NULL DEFAULT NULL COMMENT '可以获得的积分',
- `growth` int(11) NULL DEFAULT NULL COMMENT '可以活动的成长值',
- `promotion_info` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '活动信息',
- `bill_type` int(1) NULL DEFAULT NULL COMMENT '发票类型:0->不开发票;1->电子发票;2->纸质发票',
- `bill_header` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '发票抬头',
- `bill_content` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '发票内容',
- `bill_receiver_phone` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收票人电话',
- `bill_receiver_email` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收票人邮箱',
- `receiver_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '收货人姓名',
- `receiver_phone` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '收货人电话',
- `receiver_post_code` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收货人邮编',
- `receiver_province` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '省份/直辖市',
- `receiver_city` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '城市',
- `receiver_region` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区',
- `receiver_detail_address` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '详细地址',
- `note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '订单备注',
- `confirm_status` int(1) NULL DEFAULT NULL COMMENT '确认收货状态:0->未确认;1->已确认',
- `delete_status` int(1) NOT NULL DEFAULT 0 COMMENT '删除状态:0->未删除;1->已删除',
- `use_integration` int(11) NULL DEFAULT NULL COMMENT '下单时使用的积分',
- `payment_time` datetime NULL DEFAULT NULL COMMENT '支付时间',
- `delivery_time` datetime NULL DEFAULT NULL COMMENT '发货时间',
- `receive_time` datetime NULL DEFAULT NULL COMMENT '确认收货时间',
- `comment_time` datetime NULL DEFAULT NULL COMMENT '评价时间',
- `modify_time` datetime NULL DEFAULT NULL COMMENT '修改时间',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 77 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '订单表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order
--- ----------------------------
-INSERT INTO `oms_order` VALUES (12, 1, 2, '201809150101000001', '2018-09-15 12:24:27', 'test', 18732.00, 16377.75, 20.00, 2344.25, 0.00, 10.00, 10.00, 0, 1, 4, 0, '', '', 15, 13284, 13284, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '江苏省', '常州市', '天宁区', '东晓街道', '111', 0, 0, NULL, NULL, NULL, NULL, NULL, '2019-11-09 16:50:28');
-INSERT INTO `oms_order` VALUES (13, 1, 2, '201809150102000002', '2018-09-15 14:24:29', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 1, 1, 1, 0, '', '', 15, 13284, 13284, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, 1000, '2018-10-11 14:04:19', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (14, 1, 2, '201809130101000001', '2018-09-13 16:57:40', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 3, 0, '顺丰快递', '201707196398345', 15, 13284, 13284, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2018-10-13 13:44:04', '2018-10-16 13:43:41', '2022-11-11 16:19:34', NULL, NULL);
-INSERT INTO `oms_order` VALUES (15, 1, 2, '201809130102000002', '2018-09-13 17:03:00', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 1, 1, 3, 0, '顺丰快递', '201707196398346', 15, 13284, 13284, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 1, NULL, '2018-10-13 13:44:54', '2018-10-16 13:45:01', '2018-10-18 14:05:31', NULL, NULL);
-INSERT INTO `oms_order` VALUES (16, 1, 2, '201809140101000001', '2018-09-14 16:16:16', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 4, 0, NULL, NULL, 15, 13284, 13284, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (17, 1, 2, '201809150101000003', '2018-09-15 12:24:27', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 0, 1, 4, 0, '顺丰快递', '201707196398345', 15, NULL, NULL, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, '2018-10-12 14:01:28', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (18, 1, 2, '201809150102000004', '2018-09-15 14:24:29', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 1, 1, 1, 0, '圆通快递', 'xx', 15, NULL, NULL, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, 1000, NULL, '2018-10-16 14:42:17', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (19, 1, 2, '201809130101000003', '2018-09-13 16:57:40', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 2, 0, NULL, NULL, 15, NULL, NULL, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (20, 1, 2, '201809130102000004', '2018-09-13 17:03:00', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 1, 1, 3, 0, NULL, NULL, 15, NULL, NULL, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (21, 1, 2, '201809140101000002', '2018-09-14 16:16:16', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 4, 0, NULL, NULL, 15, 18682, 18682, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (22, 1, 2, '201809150101000005', '2018-09-15 12:24:27', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 0, 1, 4, 0, '顺丰快递', '201707196398345', 15, 0, 0, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, '2018-10-12 14:01:28', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (23, 1, 2, '201809150102000006', '2018-09-15 14:24:29', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 1, 1, 1, 0, '顺丰快递', 'xxx', 15, 0, 0, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, 1000, NULL, '2018-10-16 14:41:28', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (24, 1, 2, '201809130101000005', '2018-09-13 16:57:40', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 2, 0, NULL, NULL, 15, 18682, 18682, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (25, 1, 2, '201809130102000006', '2018-09-13 17:03:00', 'test', 18732.00, 16377.75, 10.00, 2344.25, 0.00, 10.00, 5.00, 1, 1, 4, 0, NULL, NULL, 15, 18682, 18682, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨22', '18033441849', '518000', '北京市', '北京城区', '东城区', '东城街道', 'xxx', 0, 1, NULL, NULL, NULL, NULL, NULL, '2018-10-30 15:08:31');
-INSERT INTO `oms_order` VALUES (26, 1, 2, '201809140101000003', '2018-09-14 16:16:16', 'test', 18732.00, 16377.75, 0.00, 2344.25, 0.00, 10.00, 0.00, 2, 1, 4, 0, NULL, NULL, 15, 18682, 18682, '单品促销,打折优惠:满3件,打7.50折,满减优惠:满1000.00元,减120.00元,满减优惠:满1000.00元,减120.00元,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (27, 1, NULL, '202002250100000001', '2020-02-25 15:59:20', 'test', 540.00, 540.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, NULL, 0, 0, '无优惠,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '南山区', '科兴科学园', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (28, 1, NULL, '202002250100000002', '2020-02-25 16:05:47', 'test', 540.00, 540.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, NULL, 0, 0, '无优惠,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '南山区', '科兴科学园', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (29, 1, NULL, '202002250100000003', '2020-02-25 16:07:58', 'test', 540.00, 540.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, NULL, 0, 0, '无优惠,无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '南山区', '科兴科学园', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (30, 1, NULL, '202002250100000004', '2020-02-25 16:50:13', 'test', 240.00, 240.00, 20.00, 0.00, 0.00, 0.00, 10.00, 0, 1, 3, 0, '顺丰快递', '12333333', NULL, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '南山区', '科兴科学园', NULL, 1, 0, NULL, '2020-02-25 16:53:29', '2020-02-25 16:54:03', '2020-05-17 19:38:15', NULL, '2020-02-25 16:52:51');
-INSERT INTO `oms_order` VALUES (31, 1, 26, '202005160100000001', '2020-05-16 15:16:54', 'test', 13623.00, 11842.40, 0.00, 1629.60, 1.00, 150.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 13623, 13623, '满减优惠:满5000.00元,减500.00元;打折优惠:满2件,打8.00折;满减优惠:满500.00元,减50.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (32, 1, NULL, '202005170100000001', '2020-05-17 15:00:38', 'test', 6487.00, 6187.00, 0.00, 300.00, 0.00, 0.00, 0.00, 1, 1, 1, 0, NULL, NULL, 15, 6487, 6487, '满减优惠:满3000.00元,减300.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2020-05-17 15:33:28', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (33, 1, NULL, '202005170100000002', '2020-05-17 15:14:18', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (34, 1, NULL, '202005170100000003', '2020-05-17 15:20:10', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 1, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (35, 1, NULL, '202005170100000004', '2020-05-17 15:22:03', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 2, 1, 3, 0, '顺丰快递', '123', 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2020-05-17 15:29:07', '2020-05-17 15:30:24', '2020-05-17 15:41:45', NULL, NULL);
-INSERT INTO `oms_order` VALUES (36, 1, NULL, '202005170100000005', '2020-05-17 16:59:26', 'test', 10275.00, 9775.00, 0.00, 500.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 10275, 10275, '满减优惠:满5000.00元,减500.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (37, 1, NULL, '202005170100000006', '2020-05-17 19:33:48', 'test', 6487.00, 6187.00, 0.00, 300.00, 0.00, 0.00, 0.00, 1, 1, 3, 0, '顺丰快递', 'aadd', 15, 6487, 6487, '满减优惠:满3000.00元,减300.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2020-05-17 19:33:59', '2020-05-17 19:34:59', '2020-05-17 19:35:50', NULL, NULL);
-INSERT INTO `oms_order` VALUES (38, 1, NULL, '202005170100000007', '2020-05-17 19:39:10', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (39, 1, NULL, '202005170100000008', '2020-05-17 19:41:30', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 1, 1, 3, 0, '顺丰快递', 'sdf', 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 1, NULL, '2020-05-17 19:41:41', '2020-05-17 19:42:07', '2020-05-17 19:42:36', NULL, NULL);
-INSERT INTO `oms_order` VALUES (40, 1, NULL, '202005180100000001', '2020-05-18 16:50:03', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2020-05-18 16:50:29', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (41, 1, 26, '202005180100000002', '2020-05-18 20:22:24', 'test', 6487.00, 6037.00, 0.00, 300.00, 0.00, 150.00, 0.00, 1, 1, 3, 0, '顺丰快递', '12313', 15, 6487, 6487, '满减优惠:满3000.00元,减300.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 1, 0, NULL, '2020-05-18 20:22:29', '2020-05-18 20:23:03', '2020-05-18 20:23:20', NULL, NULL);
-INSERT INTO `oms_order` VALUES (42, 1, NULL, '202005230100000001', '2020-05-23 16:21:27', 'test', 5398.00, 4318.40, 0.00, 1079.60, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 5398, 5398, '打折优惠:满2件,打8.00折', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 0, 0, NULL, '2020-05-23 16:21:30', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (43, 1, NULL, '202005230100000002', '2020-05-23 17:01:33', 'test', 5398.00, 4318.40, 0.00, 1079.60, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 5398, 5398, '打折优惠:满2件,打8.00折', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (44, 1, NULL, '202005240100000001', '2020-05-24 09:37:07', 'test', 7576.00, 7076.00, 0.00, 500.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 7576, 7576, '满减优惠:满5000.00元,减500.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (45, 1, 25, '202006070100000001', '2020-06-07 17:02:04', 'test', 10275.00, 9674.90, 0.00, 500.00, 0.00, 100.10, 0.00, 1, 1, 1, 0, NULL, NULL, 15, 10275, 10275, '满减优惠:满5000.00元,减500.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 0, 0, NULL, '2020-06-07 17:02:17', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (46, 1, 24, '202006210100000001', '2020-06-21 14:27:34', 'test', 9186.00, 7796.40, 0.00, 1379.60, 0.00, 10.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 9186, 9186, '满减优惠:满3000.00元,减300.00元;打折优惠:满2件,打8.00折', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2020-06-21 14:27:38', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (47, 1, NULL, '202006210100000002', '2020-06-21 15:13:06', 'test', 6487.00, 6187.00, 0.00, 300.00, 0.00, 0.00, 0.00, 1, 1, 3, 0, '顺丰快递', '123131', 15, 6487, 6487, '满减优惠:满3000.00元,减300.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 1, 0, NULL, '2020-06-21 15:13:12', '2020-06-21 15:13:44', '2020-06-21 15:13:58', NULL, NULL);
-INSERT INTO `oms_order` VALUES (48, 1, 26, '202006210100000003', '2020-06-21 15:15:18', 'test', 3788.00, 3338.00, 0.00, 300.00, 0.00, 150.00, 0.00, 2, 1, 3, 0, '圆通快递', '12313', 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2020-06-21 15:15:20', '2020-06-21 15:15:48', '2020-06-21 15:15:58', NULL, NULL);
-INSERT INTO `oms_order` VALUES (49, 1, NULL, '202006270100000001', '2020-06-27 10:27:56', 'test', 2699.00, 2699.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 2699, 2699, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 0, 0, NULL, '2020-06-27 10:27:58', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (50, 1, NULL, '202210280100000001', '2022-10-28 14:50:58', 'test', 2699.00, 2699.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 2699, 2699, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '清水河街道', NULL, 0, 0, NULL, '2022-10-28 14:51:02', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (51, 1, NULL, '202210280100000002', '2022-10-28 15:27:41', 'test', 5999.00, 5999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-10-28 15:27:44', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (52, 1, 30, '202211090100000001', '2022-11-09 15:14:58', 'test', 2999.00, 2799.00, 0.00, 0.00, 0.00, 200.00, 0.00, 2, 1, 3, 0, '顺丰快递', '1233', 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2022-11-09 15:15:00', '2022-11-09 15:16:12', '2022-11-09 15:16:31', NULL, NULL);
-INSERT INTO `oms_order` VALUES (53, 1, 27, '202211090100000002', '2022-11-09 15:25:38', 'test', 3599.00, 3589.00, 0.00, 0.00, 0.00, 10.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-11-09 15:25:41', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (54, 1, 29, '202211090100000003', '2022-11-09 15:26:11', 'test', 5999.00, 5399.00, 0.00, 0.00, 0.00, 600.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-11-09 15:26:13', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (55, 1, NULL, '202211100100000001', '2022-11-10 16:57:59', 'test', 11998.00, 11998.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (56, 1, 28, '202211110100000001', '2022-11-11 16:12:42', 'test', 2999.00, 2899.00, 0.00, 0.00, 0.00, 100.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-11-11 16:12:48', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (57, 1, NULL, '202211110100000002', '2022-11-11 16:13:14', 'test', 2999.00, 2999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-11-11 16:13:21', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (58, 1, NULL, '202211110100000003', '2022-11-11 16:15:08', 'test', 5999.00, 5999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-11-11 16:17:46', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (59, 1, NULL, '202211110100000004', '2022-11-11 16:21:12', 'test', 649.00, 599.00, 0.00, 50.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 649, 649, '满减优惠:满500.00元,减50.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (60, 1, NULL, '202211160100000001', '2022-11-16 10:36:08', 'test', 11097.00, 11097.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 3, 0, '顺丰快递', '1234555', 15, 0, 0, '无优惠;无优惠;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2022-11-16 10:37:25', '2022-11-16 10:42:50', '2022-11-16 10:44:40', NULL, NULL);
-INSERT INTO `oms_order` VALUES (61, 1, NULL, '202212210100000001', '2022-12-21 15:49:08', 'test', 2999.00, 2999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (62, 1, NULL, '202212210100000002', '2022-12-21 15:49:57', 'test', 8098.00, 8098.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 3, 0, '顺丰快递', 'SDFERR7845', 15, 0, 0, '无优惠;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2022-12-21 15:50:00', '2022-12-21 15:50:23', '2022-12-21 15:50:33', NULL, NULL);
-INSERT INTO `oms_order` VALUES (63, 1, NULL, '202212210100000003', '2022-12-21 15:51:09', 'test', 2999.00, 2999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 2, 0, '顺丰快递', '112', 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-12-21 15:51:11', '2023-01-10 10:14:12', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (64, 1, NULL, '202212210100000004', '2022-12-21 15:51:35', 'test', 2099.00, 2099.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (65, 1, 28, '202212210100000005', '2022-12-21 16:53:07', 'test', 5098.00, 4788.00, 0.00, 200.00, 10.00, 100.00, 0.00, 2, 1, 2, 0, '圆通快递', '115', 15, 0, 0, '满减优惠:满2000.00元,减200.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2022-12-21 16:53:58', '2023-01-10 10:14:12', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (66, 1, NULL, '202301100100000001', '2023-01-10 15:34:59', 'test', 5998.00, 5798.00, 0.00, 200.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 0, 0, '满减优惠:满2000.00元,减200.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (67, 1, NULL, '202301100100000002', '2023-01-10 15:39:07', 'test', 3788.00, 3488.00, 0.00, 300.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 3788, 3788, '满减优惠:满3000.00元,减300.00元', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2023-01-10 15:39:16', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (68, 1, NULL, '202301100100000003', '2023-01-10 16:58:19', 'test', 3999.00, 3899.00, 0.00, 100.00, 0.00, 0.00, 0.00, 2, 1, 1, 0, NULL, NULL, 15, 3788, 3788, '单品促销', NULL, NULL, NULL, NULL, NULL, '大梨', '18033441849', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2023-01-10 16:58:21', NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (69, 11, 30, '202305110100000001', '2023-05-11 15:28:56', 'member', 5098.00, 4698.00, 0.00, 200.00, 0.00, 200.00, 0.00, 2, 1, 3, 0, '顺丰快递', '1231313', 15, 0, 0, '满减优惠:满2000.00元,减200.00元;无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2023-05-11 15:28:59', '2023-05-11 15:30:08', '2023-05-11 15:30:16', NULL, NULL);
-INSERT INTO `oms_order` VALUES (70, 11, NULL, '202305110100000002', '2023-05-11 15:30:36', 'member', 3599.00, 3599.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 3, 0, '顺丰快递', '232342', 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2023-05-11 15:30:40', '2023-05-11 15:31:22', '2023-05-11 15:31:30', NULL, NULL);
-INSERT INTO `oms_order` VALUES (71, 11, NULL, '202305110100000003', '2023-05-11 15:31:55', 'member', 5999.00, 5999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 4, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (72, 11, NULL, '202305110100000004', '2023-05-11 15:33:13', 'member', 5368.00, 5368.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 2, 0, '圆通快递', '1231434', 15, 0, 0, '无优惠;无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2023-05-11 15:33:21', '2023-05-11 15:33:43', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (73, 11, NULL, '202305110100000005', '2023-05-11 15:34:39', 'member', 5999.00, 5999.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0, 1, 0, 0, NULL, NULL, 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (74, 11, NULL, '202305110100000006', '2023-05-11 15:35:05', 'member', 2999.00, 2799.00, 0.00, 200.00, 0.00, 0.00, 0.00, 2, 1, 2, 0, '顺丰快递', '123131', 15, 0, 0, '满减优惠:满2000.00元,减200.00元', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 0, 0, NULL, '2023-05-11 15:35:08', '2023-05-11 15:36:00', NULL, NULL, NULL);
-INSERT INTO `oms_order` VALUES (75, 11, NULL, '202305110100000007', '2023-05-11 15:35:24', 'member', 2099.00, 2099.00, 0.00, 0.00, 0.00, 0.00, 0.00, 2, 1, 3, 0, '顺丰快递', '123131311', 15, 0, 0, '无优惠', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2023-05-11 15:35:26', '2023-05-11 15:36:11', '2023-05-11 15:36:34', NULL, NULL);
-INSERT INTO `oms_order` VALUES (76, 11, 28, '202305110100000008', '2023-05-11 15:37:16', 'member', 8998.00, 8698.00, 0.00, 200.00, 0.00, 100.00, 0.00, 2, 1, 3, 0, '顺丰快递', '1231313', 15, 0, 0, '无优惠;满减优惠:满2000.00元,减200.00元', NULL, NULL, NULL, NULL, NULL, '小李', '18961511111', '518000', '广东省', '深圳市', '福田区', '东晓街道', NULL, 1, 0, NULL, '2023-05-11 15:37:18', '2023-05-11 15:37:33', '2023-05-11 15:37:48', NULL, NULL);
-
--- ----------------------------
--- Table structure for oms_order_item
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order_item`;
-CREATE TABLE `oms_order_item` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单id',
- `order_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '订单编号',
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_pic` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_brand` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '销售价格',
- `product_quantity` int(11) NULL DEFAULT NULL COMMENT '购买数量',
- `product_sku_id` bigint(20) NULL DEFAULT NULL COMMENT '商品sku编号',
- `product_sku_code` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品sku条码',
- `product_category_id` bigint(20) NULL DEFAULT NULL COMMENT '商品分类id',
- `promotion_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品促销名称',
- `promotion_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品促销分解金额',
- `coupon_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '优惠券优惠分解金额',
- `integration_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '积分优惠分解金额',
- `real_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '该商品经过优惠后的分解金额',
- `gift_integration` int(11) NULL DEFAULT 0,
- `gift_growth` int(11) NULL DEFAULT 0,
- `product_attr` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品销售属性:[{\"key\":\"颜色\",\"value\":\"颜色\"},{\"key\":\"容量\",\"value\":\"4G\"}]',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 115 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '订单中所包含的商品' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order_item
--- ----------------------------
-INSERT INTO `oms_order_item` VALUES (21, 12, '201809150101000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '6946605', 3788.00, 1, 90, '201806070026001', 19, '单品促销', 200.00, 2.02, 0.00, 3585.98, 3788, 3788, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (22, 12, '201809150101000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '7437788', 2699.00, 3, 98, '201808270027001', 19, '打折优惠:满3件,打7.50折', 674.75, 1.44, 0.00, 2022.81, 2699, 2699, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (23, 12, '201809150101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 57.60, 0.35, 0.00, 591.05, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (24, 12, '201809150101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 699.00, 1, 103, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 62.40, 0.37, 0.00, 636.23, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (25, 12, '201809150101000001', 29, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus', '苹果', '7437799', 5499.00, 1, 106, '201808270029001', 19, '无优惠', 0.00, 2.94, 0.00, 5496.06, 5499, 5499, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (26, 13, '201809150102000002', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '6946605', 3788.00, 1, 90, '201806070026001', 19, '单品促销', 200.00, 2.02, 0.00, 3585.98, 3788, 3788, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (27, 13, '201809150102000002', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '7437788', 2699.00, 3, 98, '201808270027001', 19, '打折优惠:满3件,打7.50折', 674.75, 1.44, 0.00, 2022.81, 2699, 2699, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (28, 13, '201809150102000002', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 57.60, 0.35, 0.00, 591.05, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (29, 13, '201809150102000002', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 699.00, 1, 103, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 62.40, 0.37, 0.00, 636.23, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (30, 13, '201809150102000002', 29, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus', '苹果', '7437799', 5499.00, 1, 106, '201808270029001', 19, '无优惠', 0.00, 2.94, 0.00, 5496.06, 5499, 5499, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (31, 14, '201809130101000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '6946605', 3788.00, 1, 90, '201806070026001', 19, '单品促销', 200.00, 2.02, 0.00, 3585.98, 3788, 3788, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (32, 14, '201809130101000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '7437788', 2699.00, 3, 98, '201808270027001', 19, '打折优惠:满3件,打7.50折', 674.75, 1.44, 0.00, 2022.81, 2699, 2699, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (33, 14, '201809130101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 57.60, 0.35, 0.00, 591.05, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (34, 14, '201809130101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 699.00, 1, 103, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 62.40, 0.37, 0.00, 636.23, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (35, 14, '201809130101000001', 29, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus', '苹果', '7437799', 5499.00, 1, 106, '201808270029001', 19, '无优惠', 0.00, 2.94, 0.00, 5496.06, 5499, 5499, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (36, 15, '201809130101000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '6946605', 3788.00, 1, 90, '201806070026001', 19, '单品促销', 200.00, 2.02, 0.00, 3585.98, 3788, 3788, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (37, 15, '201809130101000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '7437788', 2699.00, 3, 98, '201808270027001', 19, '打折优惠:满3件,打7.50折', 674.75, 1.44, 0.00, 2022.81, 2699, 2699, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (38, 15, '201809130101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 57.60, 0.35, 0.00, 591.05, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (39, 15, '201809130101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 699.00, 1, 103, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 62.40, 0.37, 0.00, 636.23, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (40, 15, '201809130101000001', 29, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus', '苹果', '7437799', 5499.00, 1, 106, '201808270029001', 19, '无优惠', 0.00, 2.94, 0.00, 5496.06, 5499, 5499, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (41, 16, '201809140101000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '6946605', 3788.00, 1, 90, '201806070026001', 19, '单品促销', 200.00, 2.02, 0.00, 3585.98, 3788, 3788, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (42, 16, '201809140101000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '7437788', 2699.00, 3, 98, '201808270027001', 19, '打折优惠:满3件,打7.50折', 674.75, 1.44, 0.00, 2022.81, 2699, 2699, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (43, 16, '201809140101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 57.60, 0.35, 0.00, 591.05, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (44, 16, '201809140101000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '7437789', 699.00, 1, 103, '201808270028001', 19, '满减优惠:满1000.00元,减120.00元', 62.40, 0.37, 0.00, 636.23, 649, 649, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (45, 16, '201809140101000001', 29, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', 'Apple iPhone 8 Plus', '苹果', '7437799', 5499.00, 1, 106, '201808270029001', 19, '无优惠', 0.00, 2.94, 0.00, 5496.06, 5499, 5499, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (46, 27, '202002250100000001', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 100.00, 3, 163, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 100.00, 0, 0, NULL);
-INSERT INTO `oms_order_item` VALUES (47, 27, '202002250100000001', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 120.00, 2, 164, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 120.00, 0, 0, NULL);
-INSERT INTO `oms_order_item` VALUES (48, 28, '202002250100000002', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 100.00, 3, 163, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 100.00, 0, 0, NULL);
-INSERT INTO `oms_order_item` VALUES (49, 28, '202002250100000002', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 120.00, 2, 164, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 120.00, 0, 0, NULL);
-INSERT INTO `oms_order_item` VALUES (50, 29, '202002250100000003', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 100.00, 3, 163, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 100.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `oms_order_item` VALUES (51, 29, '202002250100000003', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 120.00, 2, 164, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 120.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `oms_order_item` VALUES (52, 30, '202002250100000004', 36, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'NIKE', '6799345', 120.00, 2, 164, '202002210036001', 29, '无优惠', 0.00, 0.00, 0.00, 120.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `oms_order_item` VALUES (53, 31, '202005160100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 2, 110, '201806070026001', 19, '满减优惠:满5000.00元,减500.00元', 250.00, 75.00, 0.28, 3462.72, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (54, 31, '202005160100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 2, 98, '201808270027001', 19, '打折优惠:满2件,打8.00折', 539.80, 0.00, 0.20, 2159.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (55, 31, '202005160100000001', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满500.00元,减50.00元', 50.00, 0.00, 0.05, 598.95, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (56, 32, '202005170100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (57, 32, '202005170100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (58, 33, '202005170100000002', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (59, 34, '202005170100000003', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (60, 35, '202005170100000004', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (61, 36, '202005170100000005', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 2, 110, '201806070026001', 19, '满减优惠:满5000.00元,减500.00元', 250.00, 0.00, 0.00, 3538.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (62, 36, '202005170100000005', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (63, 37, '202005170100000006', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (64, 37, '202005170100000006', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (65, 38, '202005170100000007', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (66, 39, '202005170100000008', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (67, 40, '202005180100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (68, 41, '202005180100000002', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 150.00, 0.00, 3338.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (69, 41, '202005180100000002', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (70, 42, '202005230100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 2, 98, '201808270027001', 19, '打折优惠:满2件,打8.00折', 539.80, 0.00, 0.00, 2159.20, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (71, 43, '202005230100000002', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 2, 98, '201808270027001', 19, '打折优惠:满2件,打8.00折', 539.80, 0.00, 0.00, 2159.20, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (72, 44, '202005240100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 2, 110, '201806070026001', 19, '满减优惠:满5000.00元,减500.00元', 250.00, 0.00, 0.00, 3538.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (73, 45, '202006070100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 2, 110, '201806070026001', 19, '满减优惠:满5000.00元,减500.00元', 250.00, 36.90, 0.00, 3501.10, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (74, 45, '202006070100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 26.30, 0.00, 2672.70, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (75, 46, '202006210100000001', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 4.12, 0.00, 3483.88, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (76, 46, '202006210100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 2, 98, '201808270027001', 19, '打折优惠:满2件,打8.00折', 539.80, 2.94, 0.00, 2156.26, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (77, 47, '202006210100000002', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (78, 47, '202006210100000002', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (79, 48, '202006210100000003', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 150.00, 0.00, 3338.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (80, 49, '202006270100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (81, 50, '202210280100000001', 27, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '小米', '7437788', 2699.00, 1, 98, '201808270027001', 19, '无优惠', 0.00, 0.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (82, 51, '202210280100000002', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 紫色 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (83, 52, '202211090100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 200.00, 0.00, 2799.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (84, 53, '202211090100000002', 38, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', '苹果', '100044025833', 3599.00, 1, 213, '202210280038001', 53, '无优惠', 0.00, 10.00, 0.00, 3589.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_order_item` VALUES (85, 54, '202211090100000003', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 600.00, 0.00, 5399.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (86, 55, '202211100100000001', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 2, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (87, 56, '202211110100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 100.00, 0.00, 2899.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (88, 57, '202211110100000002', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 0.00, 0.00, 2999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (89, 58, '202211110100000003', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (90, 59, '202211110100000004', 28, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', '小米', '7437789', 649.00, 1, 102, '201808270028001', 19, '满减优惠:满500.00元,减50.00元', 50.00, 0.00, 0.00, 599.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (91, 60, '202211160100000001', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (92, 60, '202211160100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 0.00, 0.00, 2999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (93, 60, '202211160100000001', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 0.00, 0.00, 2099.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (94, 61, '202212210100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 0.00, 0.00, 2999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (95, 62, '202212210100000002', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (96, 62, '202212210100000002', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 0.00, 0.00, 2099.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (97, 63, '202212210100000003', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '无优惠', 0.00, 0.00, 0.00, 2999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (98, 64, '202212210100000004', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 0.00, 0.00, 2099.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (99, 65, '202212210100000005', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '满减优惠:满2000.00元,减200.00元', 200.00, 58.80, 5.88, 2734.32, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (100, 65, '202212210100000005', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 41.20, 4.12, 2053.68, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (101, 66, '202301100100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 2, 221, '202211040040001', 19, '满减优惠:满2000.00元,减200.00元', 100.00, 0.00, 0.00, 2899.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (102, 67, '202301100100000002', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3788.00, 1, 110, '201806070026001', 19, '满减优惠:满3000.00元,减300.00元', 300.00, 0.00, 0.00, 3488.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `oms_order_item` VALUES (103, 68, '202301100100000003', 26, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20 ', '华为', '6946605', 3999.00, 1, 111, '201806070026002', 19, '单品促销', 100.00, 0.00, 0.00, 3899.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `oms_order_item` VALUES (104, 69, '202305110100000001', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '满减优惠:满2000.00元,减200.00元', 200.00, 117.60, 0.00, 2681.40, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (105, 69, '202305110100000001', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 82.40, 0.00, 2016.60, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (106, 70, '202305110100000002', 38, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', 'Apple iPad 10.9英寸平板电脑 2022年款', '苹果', '100044025833', 3599.00, 1, 213, '202210280038001', 53, '无优惠', 0.00, 0.00, 0.00, 3599.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `oms_order_item` VALUES (107, 71, '202305110100000003', 39, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', '小米', '100023207945', 5999.00, 1, 217, '202210280039001', 54, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `oms_order_item` VALUES (108, 72, '202305110100000004', 42, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', 'HUAWEI Mate 50 直屏旗舰 超光变XMAGE影像 北斗卫星消息', '华为', '100035295081', 4999.00, 1, 229, '202211040042001', 19, '无优惠', 0.00, 0.00, 0.00, 4999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"曜金黑\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (109, 72, '202305110100000004', 44, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议)', '三星', '100018768480', 369.00, 1, 235, '202211080044001', 55, '无优惠', 0.00, 0.00, 0.00, 369.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"新品980|NVMe PCIe3.0*4\"},{\"key\":\"版本\",\"value\":\"512GB\"}]');
-INSERT INTO `oms_order_item` VALUES (110, 73, '202305110100000005', 37, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '苹果', '100038005189', 5999.00, 1, 201, '202210280037001', 19, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (111, 74, '202305110100000006', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '满减优惠:满2000.00元,减200.00元', 200.00, 0.00, 0.00, 2799.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (112, 75, '202305110100000007', 41, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', '小米', '100035246702', 2099.00, 1, 225, '202211040041001', 19, '无优惠', 0.00, 0.00, 0.00, 2099.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `oms_order_item` VALUES (113, 76, '202305110100000008', 39, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', '小米', '100023207945', 5999.00, 1, 217, '202210280039001', 54, '无优惠', 0.00, 0.00, 0.00, 5999.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `oms_order_item` VALUES (114, 76, '202305110100000008', 40, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', '小米', '100027789721', 2999.00, 1, 221, '202211040040001', 19, '满减优惠:满2000.00元,减200.00元', 200.00, 100.00, 0.00, 2699.00, 0, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-
--- ----------------------------
--- Table structure for oms_order_operate_history
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order_operate_history`;
-CREATE TABLE `oms_order_operate_history` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单id',
- `operate_man` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作人:用户;系统;后台管理员',
- `create_time` datetime NULL DEFAULT NULL COMMENT '操作时间',
- `order_status` int(1) NULL DEFAULT NULL COMMENT '订单状态:0->待付款;1->待发货;2->已发货;3->已完成;4->已关闭;5->无效订单',
- `note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 44 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '订单操作历史记录' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order_operate_history
--- ----------------------------
-INSERT INTO `oms_order_operate_history` VALUES (5, 12, '后台管理员', '2018-10-12 14:01:29', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (6, 13, '后台管理员', '2018-10-12 14:01:29', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (7, 12, '后台管理员', '2018-10-12 14:13:10', 4, '订单关闭:买家退货');
-INSERT INTO `oms_order_operate_history` VALUES (8, 13, '后台管理员', '2018-10-12 14:13:10', 4, '订单关闭:买家退货');
-INSERT INTO `oms_order_operate_history` VALUES (9, 22, '后台管理员', '2018-10-15 16:31:48', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (10, 22, '后台管理员', '2018-10-15 16:35:08', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (11, 22, '后台管理员', '2018-10-15 16:35:59', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (12, 17, '后台管理员', '2018-10-15 16:43:40', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (13, 25, '后台管理员', '2018-10-15 16:52:14', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (14, 26, '后台管理员', '2018-10-15 16:52:14', 4, '订单关闭:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (15, 23, '后台管理员', '2018-10-16 14:41:28', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (16, 13, '后台管理员', '2018-10-16 14:42:17', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (17, 18, '后台管理员', '2018-10-16 14:42:17', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (18, 26, '后台管理员', '2018-10-30 14:37:44', 4, '订单关闭:关闭订单');
-INSERT INTO `oms_order_operate_history` VALUES (19, 25, '后台管理员', '2018-10-30 15:07:01', 0, '修改收货人信息');
-INSERT INTO `oms_order_operate_history` VALUES (20, 25, '后台管理员', '2018-10-30 15:08:13', 0, '修改费用信息');
-INSERT INTO `oms_order_operate_history` VALUES (21, 25, '后台管理员', '2018-10-30 15:08:31', 0, '修改备注信息:xxx');
-INSERT INTO `oms_order_operate_history` VALUES (22, 25, '后台管理员', '2018-10-30 15:08:39', 4, '订单关闭:2222');
-INSERT INTO `oms_order_operate_history` VALUES (23, 12, '后台管理员', '2019-11-09 16:50:28', 4, '修改备注信息:111');
-INSERT INTO `oms_order_operate_history` VALUES (24, 30, '后台管理员', '2020-02-25 16:52:37', 0, '修改费用信息');
-INSERT INTO `oms_order_operate_history` VALUES (25, 30, '后台管理员', '2020-02-25 16:52:51', 0, '修改费用信息');
-INSERT INTO `oms_order_operate_history` VALUES (26, 30, '后台管理员', '2020-02-25 16:54:03', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (27, 35, '后台管理员', '2020-05-17 15:30:24', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (28, 37, '后台管理员', '2020-05-17 19:35:00', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (29, 39, '后台管理员', '2020-05-17 19:42:08', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (30, 41, '后台管理员', '2020-05-18 20:23:04', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (31, 47, '后台管理员', '2020-06-21 15:13:44', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (32, 48, '后台管理员', '2020-06-21 15:15:49', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (33, 52, '后台管理员', '2022-11-09 15:16:13', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (34, 60, '后台管理员', '2022-11-16 10:42:50', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (35, 62, '后台管理员', '2022-12-21 15:50:24', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (36, 63, '后台管理员', '2023-01-10 10:08:34', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (37, 65, '后台管理员', '2023-01-10 10:08:34', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (38, 69, '后台管理员', '2023-05-11 15:30:08', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (39, 70, '后台管理员', '2023-05-11 15:31:22', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (40, 72, '后台管理员', '2023-05-11 15:33:43', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (41, 74, '后台管理员', '2023-05-11 15:36:00', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (42, 75, '后台管理员', '2023-05-11 15:36:11', 2, '完成发货');
-INSERT INTO `oms_order_operate_history` VALUES (43, 76, '后台管理员', '2023-05-11 15:37:34', 2, '完成发货');
-
--- ----------------------------
--- Table structure for oms_order_return_apply
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order_return_apply`;
-CREATE TABLE `oms_order_return_apply` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单id',
- `company_address_id` bigint(20) NULL DEFAULT NULL COMMENT '收货地址表id',
- `product_id` bigint(20) NULL DEFAULT NULL COMMENT '退货商品id',
- `order_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '订单编号',
- `create_time` datetime NULL DEFAULT NULL COMMENT '申请时间',
- `member_username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '会员用户名',
- `return_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '退款金额',
- `return_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '退货人姓名',
- `return_phone` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '退货人电话',
- `status` int(1) NULL DEFAULT NULL COMMENT '申请状态:0->待处理;1->退货中;2->已完成;3->已拒绝',
- `handle_time` datetime NULL DEFAULT NULL COMMENT '处理时间',
- `product_pic` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品图片',
- `product_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品名称',
- `product_brand` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品品牌',
- `product_attr` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品销售属性:颜色:红色;尺码:xl;',
- `product_count` int(11) NULL DEFAULT NULL COMMENT '退货数量',
- `product_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品单价',
- `product_real_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品实际支付单价',
- `reason` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '原因',
- `description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
- `proof_pics` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '凭证图片,以逗号隔开',
- `handle_note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '处理备注',
- `handle_man` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '处理人员',
- `receive_man` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收货人',
- `receive_time` datetime NULL DEFAULT NULL COMMENT '收货时间',
- `receive_note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收货备注',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 27 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '订单退货申请' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order_return_apply
--- ----------------------------
-INSERT INTO `oms_order_return_apply` VALUES (3, 12, 1, 26, '201809150101000001', '2018-10-17 14:34:57', 'test', 0.00, '大梨', '18000000000', 2, '2022-11-11 10:16:18', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '111', 'admin', 'admin', '2022-11-11 10:16:26', NULL);
-INSERT INTO `oms_order_return_apply` VALUES (4, 12, 2, 27, '201809150101000001', '2018-10-17 14:40:21', 'test', 3585.98, '大梨', '18000000000', 1, '2018-10-18 13:54:10', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', '已经处理了', 'admin', NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (5, 12, 3, 28, '201809150101000001', '2018-10-17 14:44:18', 'test', 3585.98, '大梨', '18000000000', 2, '2018-10-18 13:55:28', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', '已经处理了', 'admin', 'admin', '2018-10-18 13:55:58', '已经处理了');
-INSERT INTO `oms_order_return_apply` VALUES (8, 13, NULL, 28, '201809150102000002', '2018-10-17 14:44:18', 'test', NULL, '大梨', '18000000000', 3, '2018-10-18 13:57:12', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', '理由不够充分', 'admin', NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (9, 14, 2, 26, '201809130101000001', '2018-10-17 14:34:57', 'test', 3500.00, '大梨', '18000000000', 2, '2018-10-24 15:44:56', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', '呵呵', 'admin', 'admin', '2018-10-24 15:46:35', '收货了');
-INSERT INTO `oms_order_return_apply` VALUES (10, 14, NULL, 27, '201809130101000001', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 3, '2018-10-24 15:46:57', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', '就是不退', 'admin', NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (11, 14, 2, 28, '201809130101000001', '2018-10-17 14:44:18', 'test', 591.05, '大梨', '18000000000', 1, '2018-10-24 17:09:04', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', '可以退款', 'admin', NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (12, 15, 3, 26, '201809130102000002', '2018-10-17 14:34:57', 'test', 3500.00, '大梨', '18000000000', 2, '2018-10-24 17:22:54', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', '退货了', 'admin', 'admin', '2018-10-24 17:23:06', '收货了');
-INSERT INTO `oms_order_return_apply` VALUES (13, 15, NULL, 27, '201809130102000002', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 3, '2018-10-24 17:23:30', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', '无法退货', 'admin', NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (15, 16, NULL, 26, '201809140101000001', '2018-10-17 14:34:57', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (16, 16, NULL, 27, '201809140101000001', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (17, 16, NULL, 28, '201809140101000001', '2018-10-17 14:44:18', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (18, 17, NULL, 26, '201809150101000003', '2018-10-17 14:34:57', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (19, 17, NULL, 27, '201809150101000003', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (20, 17, NULL, 28, '201809150101000003', '2018-10-17 14:44:18', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (21, 18, NULL, 26, '201809150102000004', '2018-10-17 14:34:57', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (22, 18, NULL, 27, '201809150102000004', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (23, 18, NULL, 28, '201809150102000004', '2018-10-17 14:44:18', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (24, 19, NULL, 26, '201809130101000003', '2018-10-17 14:34:57', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '华为 HUAWEI P20', '华为', '颜色:金色;内存:16G', 1, 3788.00, 3585.98, '质量问题', '老是卡', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (25, 19, NULL, 27, '201809130101000003', '2018-10-17 14:40:21', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '小米8', '小米', '颜色:黑色;内存:32G', 1, 2699.00, 2022.81, '质量问题', '不够高端', '', NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `oms_order_return_apply` VALUES (26, 19, NULL, 28, '201809130101000003', '2018-10-17 14:44:18', 'test', NULL, '大梨', '18000000000', 0, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '红米5A', '小米', '颜色:金色;内存:16G', 1, 649.00, 591.05, '质量问题', '颜色太土', '', NULL, NULL, NULL, NULL, NULL);
-
--- ----------------------------
--- Table structure for oms_order_return_reason
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order_return_reason`;
-CREATE TABLE `oms_order_return_reason` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '退货类型',
- `sort` int(11) NULL DEFAULT NULL,
- `status` int(1) NULL DEFAULT NULL COMMENT '状态:0->不启用;1->启用',
- `create_time` datetime NULL DEFAULT NULL COMMENT '添加时间',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '退货原因表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order_return_reason
--- ----------------------------
-INSERT INTO `oms_order_return_reason` VALUES (1, '质量问题', 1, 1, '2018-10-17 10:00:45');
-INSERT INTO `oms_order_return_reason` VALUES (2, '尺码太大', 1, 1, '2018-10-17 10:01:03');
-INSERT INTO `oms_order_return_reason` VALUES (3, '颜色不喜欢', 1, 1, '2018-10-17 10:01:13');
-INSERT INTO `oms_order_return_reason` VALUES (4, '7天无理由退货', 1, 1, '2018-10-17 10:01:47');
-INSERT INTO `oms_order_return_reason` VALUES (5, '价格问题', 1, 0, '2018-10-17 10:01:57');
-INSERT INTO `oms_order_return_reason` VALUES (12, '发票问题', 0, 1, '2018-10-19 16:28:36');
-INSERT INTO `oms_order_return_reason` VALUES (13, '其他问题', 0, 1, '2018-10-19 16:28:51');
-INSERT INTO `oms_order_return_reason` VALUES (14, '物流问题', 0, 1, '2018-10-19 16:29:01');
-INSERT INTO `oms_order_return_reason` VALUES (15, '售后问题', 0, 1, '2018-10-19 16:29:11');
-
--- ----------------------------
--- Table structure for oms_order_setting
--- ----------------------------
-DROP TABLE IF EXISTS `oms_order_setting`;
-CREATE TABLE `oms_order_setting` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `flash_order_overtime` int(11) NULL DEFAULT NULL COMMENT '秒杀订单超时关闭时间(分)',
- `normal_order_overtime` int(11) NULL DEFAULT NULL COMMENT '正常订单超时时间(分)',
- `confirm_overtime` int(11) NULL DEFAULT NULL COMMENT '发货后自动确认收货时间(天)',
- `finish_overtime` int(11) NULL DEFAULT NULL COMMENT '自动完成交易时间,不能申请售后(天)',
- `comment_overtime` int(11) NULL DEFAULT NULL COMMENT '订单完成后自动好评时间(天)',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '订单设置表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of oms_order_setting
--- ----------------------------
-INSERT INTO `oms_order_setting` VALUES (1, 60, 120, 15, 7, 7);
-
--- ----------------------------
--- Table structure for pms_album
--- ----------------------------
-DROP TABLE IF EXISTS `pms_album`;
-CREATE TABLE `pms_album` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `cover_pic` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `pic_count` int(11) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- `description` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '相册表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_album
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_album_pic
--- ----------------------------
-DROP TABLE IF EXISTS `pms_album_pic`;
-CREATE TABLE `pms_album_pic` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `album_id` bigint(20) NULL DEFAULT NULL,
- `pic` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '画册图片表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_album_pic
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_brand
--- ----------------------------
-DROP TABLE IF EXISTS `pms_brand`;
-CREATE TABLE `pms_brand` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `first_letter` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '首字母',
- `sort` int(11) NULL DEFAULT NULL,
- `factory_status` int(1) NULL DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',
- `show_status` int(1) NULL DEFAULT NULL,
- `product_count` int(11) NULL DEFAULT NULL COMMENT '产品数量',
- `product_comment_count` int(11) NULL DEFAULT NULL COMMENT '产品评论数量',
- `logo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '品牌logo',
- `big_pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专区大图',
- `brand_story` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '品牌故事',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 60 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '品牌表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_brand
--- ----------------------------
-INSERT INTO `pms_brand` VALUES (1, '万和', 'W', 0, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5b07ca8aN4e127d2f.jpg', 'http://img13.360buyimg.com/cms/jfs/t1/121860/35/2430/187800/5ec4e294E22f3ffcc/1e233b65b94ba192.jpg', '万和成立于1993年8月,总部位于广东顺德国家级高新技术开发区内,是国内生产规模最大的燃气具专业制造企业,也是中国燃气具发展战略的首倡者和推动者、中国五金制品协会燃气用具分会第三届理事长单位。');
-INSERT INTO `pms_brand` VALUES (2, '三星', 'S', 100, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/57201b47N7bf15715.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_banner_01.png', '三星集团(英文:SAMSUNG、韩文:삼성)是韩国最大的跨国企业集团,三星集团包括众多的国际下属企业,旗下子公司有:三星电子、三星物产、三星人寿保险等,业务涉及电子、金融、机械、化学等众多领域。');
-INSERT INTO `pms_brand` VALUES (3, '华为', 'H', 100, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5abf6f26N31658aa2.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/huawei_banner_01.png', '荣耀品牌成立于2013年,是华为旗下手机双品牌之一。荣耀以“创新、品质、服务”为核心战略,为全球年轻人提供潮酷的全场景智能化体验,打造年轻人向往的先锋文化和潮流生活方式');
-INSERT INTO `pms_brand` VALUES (4, '格力', 'G', 30, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (3).jpg', NULL, 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES (5, '方太', 'F', 20, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (4).jpg', NULL, 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES (6, '小米', 'M', 500, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5565f5a2N0b8169ae.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/xiaomi_banner_01.png', '小米公司正式成立于2010年4月,是一家专注于高端智能手机、互联网电视自主研发的创新型科技企业。主要由前谷歌、微软、摩托、金山等知名公司的顶尖人才组建。');
-INSERT INTO `pms_brand` VALUES (21, 'OPPO', 'O', 0, 1, 1, 88, 500, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg(6).jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_banner_01.png', 'OPPO于2008年推出第一款“笑脸手机”,由此开启探索和引领至美科技之旅。今天,OPPO凭借以Find和R系列手机为核心的智能终端产品,以及OPPO+等互联网服务,让全球消费者尽享至美科技。');
-INSERT INTO `pms_brand` VALUES (49, '七匹狼', 'S', 200, 1, 1, 77, 400, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190525/qipilang.png', NULL, 'BOOB的故事');
-INSERT INTO `pms_brand` VALUES (50, '海澜之家', 'H', 200, 1, 1, 66, 300, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a5c69b9N5d6c5696.jpg', 'http://img10.360buyimg.com/cms/jfs/t1/133148/4/1605/470028/5edaf5ccEd7a687a9/e0a007631361ff75.jpg', '“海澜之家”(英文缩写:HLA)是海澜之家股份有限公司旗下的服装品牌,总部位于中国江苏省无锡市江阴市,主要采用连锁零售的模式,销售男性服装、配饰与相关产品。');
-INSERT INTO `pms_brand` VALUES (51, '苹果', 'A', 200, 1, 1, 55, 200, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/49b30bb0377030d1.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/apple_banner_01.png', '苹果公司(Apple Inc. )是美国的一家高科技公司。 由史蒂夫·乔布斯、斯蒂夫·沃兹尼亚克和罗·韦恩(Ron Wayne)等人于1976年4月1日创立,并命名为美国苹果电脑公司(Apple Computer Inc. ),2007年1月9日更名为苹果公司,总部位于加利福尼亚州的...');
-INSERT INTO `pms_brand` VALUES (58, 'NIKE', 'N', 0, 1, 0, 33, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/timg (51).jpg', '', 'NIKE的故事');
-INSERT INTO `pms_brand` VALUES (59, '测试品牌', 'C', 0, 0, 0, NULL, NULL, 'http://localhost:9000/mall/20220609/Snipaste_2022-06-08_14-35-53.png', 'http://localhost:9000/mall/20220609/biji_05.jpg', '12345');
-
--- ----------------------------
--- Table structure for pms_comment
--- ----------------------------
-DROP TABLE IF EXISTS `pms_comment`;
-CREATE TABLE `pms_comment` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `member_nick_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `star` int(3) NULL DEFAULT NULL COMMENT '评价星数:0->5',
- `member_ip` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '评价的ip',
- `create_time` datetime NULL DEFAULT NULL,
- `show_status` int(1) NULL DEFAULT NULL,
- `product_attribute` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '购买时的商品属性',
- `collect_couont` int(11) NULL DEFAULT NULL,
- `read_count` int(11) NULL DEFAULT NULL,
- `content` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
- `pics` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '上传图片地址,以逗号隔开',
- `member_icon` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '评论用户头像',
- `replay_count` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品评价表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_comment
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_comment_replay
--- ----------------------------
-DROP TABLE IF EXISTS `pms_comment_replay`;
-CREATE TABLE `pms_comment_replay` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `comment_id` bigint(20) NULL DEFAULT NULL,
- `member_nick_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `member_icon` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `content` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `type` int(1) NULL DEFAULT NULL COMMENT '评论人员类型;0->会员;1->管理员',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品评价回复表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_comment_replay
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_feight_template
--- ----------------------------
-DROP TABLE IF EXISTS `pms_feight_template`;
-CREATE TABLE `pms_feight_template` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `charge_type` int(1) NULL DEFAULT NULL COMMENT '计费类型:0->按重量;1->按件数',
- `first_weight` decimal(10, 2) NULL DEFAULT NULL COMMENT '首重kg',
- `first_fee` decimal(10, 2) NULL DEFAULT NULL COMMENT '首费(元)',
- `continue_weight` decimal(10, 2) NULL DEFAULT NULL,
- `continme_fee` decimal(10, 2) NULL DEFAULT NULL,
- `dest` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '目的地(省、市)',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '运费模版' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_feight_template
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_member_price
--- ----------------------------
-DROP TABLE IF EXISTS `pms_member_price`;
-CREATE TABLE `pms_member_price` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `member_level_id` bigint(20) NULL DEFAULT NULL,
- `member_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '会员价格',
- `member_level_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 426 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品会员价格表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_member_price
--- ----------------------------
-INSERT INTO `pms_member_price` VALUES (26, 7, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (27, 8, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (28, 9, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (29, 10, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (30, 11, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (31, 12, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (32, 13, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (33, 14, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (37, 18, 1, 500.00, NULL);
-INSERT INTO `pms_member_price` VALUES (44, 7, 2, 480.00, NULL);
-INSERT INTO `pms_member_price` VALUES (45, 7, 3, 450.00, NULL);
-INSERT INTO `pms_member_price` VALUES (52, 22, 1, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (53, 22, 2, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (54, 22, 3, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (58, 24, 1, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (59, 24, 2, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (60, 24, 3, NULL, NULL);
-INSERT INTO `pms_member_price` VALUES (112, 23, 1, 88.00, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (113, 23, 2, 88.00, '白金会员');
-INSERT INTO `pms_member_price` VALUES (114, 23, 3, 66.00, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (246, 36, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (247, 36, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (248, 36, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (249, 35, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (250, 35, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (251, 35, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (258, 30, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (259, 30, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (260, 30, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (261, 31, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (262, 31, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (263, 31, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (264, 32, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (265, 32, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (266, 32, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (270, 33, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (271, 33, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (272, 33, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (273, 34, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (274, 34, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (275, 34, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (285, 27, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (286, 27, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (287, 27, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (294, 28, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (295, 28, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (296, 28, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (297, 29, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (298, 29, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (299, 29, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (315, 37, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (316, 37, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (317, 37, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (381, 38, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (382, 38, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (383, 38, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (384, 39, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (385, 39, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (386, 39, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (387, 41, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (388, 41, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (389, 41, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (390, 42, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (391, 42, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (392, 42, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (393, 43, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (394, 43, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (395, 43, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (396, 44, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (397, 44, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (398, 44, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (399, 45, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (400, 45, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (401, 45, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (402, 40, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (403, 40, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (404, 40, 3, NULL, '钻石会员');
-INSERT INTO `pms_member_price` VALUES (423, 26, 1, NULL, '黄金会员');
-INSERT INTO `pms_member_price` VALUES (424, 26, 2, NULL, '白金会员');
-INSERT INTO `pms_member_price` VALUES (425, 26, 3, NULL, '钻石会员');
-
--- ----------------------------
--- Table structure for pms_product
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product`;
-CREATE TABLE `pms_product` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `brand_id` bigint(20) NULL DEFAULT NULL,
- `product_category_id` bigint(20) NULL DEFAULT NULL,
- `feight_template_id` bigint(20) NULL DEFAULT NULL,
- `product_attribute_category_id` bigint(20) NULL DEFAULT NULL,
- `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
- `pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '货号',
- `delete_status` int(1) NULL DEFAULT NULL COMMENT '删除状态:0->未删除;1->已删除',
- `publish_status` int(1) NULL DEFAULT NULL COMMENT '上架状态:0->下架;1->上架',
- `new_status` int(1) NULL DEFAULT NULL COMMENT '新品状态:0->不是新品;1->新品',
- `recommand_status` int(1) NULL DEFAULT NULL COMMENT '推荐状态;0->不推荐;1->推荐',
- `verify_status` int(1) NULL DEFAULT NULL COMMENT '审核状态:0->未审核;1->审核通过',
- `sort` int(11) NULL DEFAULT NULL COMMENT '排序',
- `sale` int(11) NULL DEFAULT NULL COMMENT '销量',
- `price` decimal(10, 2) NULL DEFAULT NULL,
- `promotion_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '促销价格',
- `gift_growth` int(11) NULL DEFAULT 0 COMMENT '赠送的成长值',
- `gift_point` int(11) NULL DEFAULT 0 COMMENT '赠送的积分',
- `use_point_limit` int(11) NULL DEFAULT NULL COMMENT '限制使用的积分数',
- `sub_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '副标题',
- `description` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '商品描述',
- `original_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '市场价',
- `stock` int(11) NULL DEFAULT NULL COMMENT '库存',
- `low_stock` int(11) NULL DEFAULT NULL COMMENT '库存预警值',
- `unit` varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
- `weight` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品重量,默认为克',
- `preview_status` int(1) NULL DEFAULT NULL COMMENT '是否为预告商品:0->不是;1->是',
- `service_ids` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',
- `keywords` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `note` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `album_pics` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '画册图片,连产品图片限制为5张,以逗号分割',
- `detail_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `detail_desc` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
- `detail_html` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '产品详情网页内容',
- `detail_mobile_html` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '移动端网页详情',
- `promotion_start_time` datetime NULL DEFAULT NULL COMMENT '促销开始时间',
- `promotion_end_time` datetime NULL DEFAULT NULL COMMENT '促销结束时间',
- `promotion_per_limit` int(11) NULL DEFAULT NULL COMMENT '活动限购数量',
- `promotion_type` int(1) NULL DEFAULT NULL COMMENT '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',
- `brand_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '品牌名称',
- `product_category_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品分类名称',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 46 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品信息' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product
--- ----------------------------
-INSERT INTO `pms_product` VALUES (1, 49, 7, 0, 0, '银色星芒刺绣网纱底裤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 1, 1, 1, 100, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '七匹狼', '外套');
-INSERT INTO `pms_product` VALUES (2, 49, 7, 0, 0, '银色星芒刺绣网纱底裤2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86578', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤2', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤
', '银色星芒刺绣网纱底裤
', NULL, NULL, NULL, 0, '七匹狼', '外套');
-INSERT INTO `pms_product` VALUES (3, 1, 7, 0, 0, '银色星芒刺绣网纱底裤3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86579', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤3', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (4, 1, 7, 0, 0, '银色星芒刺绣网纱底裤4', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86580', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤4', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (5, 1, 7, 0, 0, '银色星芒刺绣网纱底裤5', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86581', 1, 0, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤5', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (6, 1, 7, 0, 0, '银色星芒刺绣网纱底裤6', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86582', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤6', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (7, 1, 7, 0, 1, '女式超柔软拉毛运动开衫', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (8, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (9, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (10, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (11, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (12, 1, 7, 0, 1, '女式超柔软拉毛运动开衫2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (13, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (14, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (18, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
-INSERT INTO `pms_product` VALUES (22, 6, 7, 0, 1, 'test', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '', 1, 1, 0, 0, 0, 0, 0, 0.00, NULL, 0, 0, 0, 'test', '', 0.00, 100, 0, '', 0.00, 1, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '外套');
-INSERT INTO `pms_product` VALUES (23, 6, 19, 0, 1, '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', 'NO.1098', 1, 1, 1, 1, 0, 0, 0, 99.00, NULL, 99, 99, 1000, '毛衫测试11', 'xxx', 109.00, 100, 0, '件', 1000.00, 1, '1,2,3', '毛衫测试', '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '毛衫测试', '毛衫测试', '
', '', NULL, NULL, 0, 2, '小米', '手机数码');
-INSERT INTO `pms_product` VALUES (24, 6, 7, 0, NULL, 'xxx', '', '', 1, 0, 0, 0, 0, 0, 0, 0.00, NULL, 0, 0, 0, 'xxx', '', 0.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '外套');
-INSERT INTO `pms_product` VALUES (26, 3, 19, 0, 3, '华为 HUAWEI P20 ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '6946605', 0, 1, 1, 1, 0, 100, 100, 3788.00, 3659.00, 3788, 3788, 0, 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '', 4288.00, 1000, 0, '件', 0.00, 1, '2,3,1', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ab46a3cN616bdc41.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf5fN2522b9dc.jpg', '', '', '
', '
\n
', '2023-01-10 15:49:38', '2023-01-31 00:00:00', 0, 1, '华为', '手机通讯');
-INSERT INTO `pms_product` VALUES (27, 6, 19, 0, 3, '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '7437788', 0, 1, 1, 1, 0, 0, 99, 2699.00, NULL, 2699, 2699, 0, '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', 2699.00, 100, 0, '', 0.00, 0, '1', '', '', '', '', '', '
', '
', NULL, NULL, 0, 3, '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES (28, 6, 19, 0, 3, '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '7437789', 0, 1, 1, 1, 0, 0, 98, 649.00, NULL, 649, 649, 0, '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '', 649.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 4, '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES (29, 51, 19, 0, 3, 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', '7437799', 0, 1, 1, 1, 0, 0, 97, 5499.00, 4799.00, 5499, 5499, 0, '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '', 5499.00, 100, 0, '', 0.00, 0, '1,2,3', '', '', '', '', '', '', '', '2020-05-04 15:12:54', '2020-05-30 00:00:00', 0, 1, '苹果', '手机通讯');
-INSERT INTO `pms_product` VALUES (30, 50, 8, 0, 1, 'HLA海澜之家简约动物印花短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ad83a4fN6ff67ecd.jpg!cc_350x449.jpg', 'HNTBJ2E042A', 0, 1, 1, 1, 0, 0, 0, 98.00, NULL, 0, 0, 0, '2018夏季新品微弹舒适新款短T男生 6月6日-6月20日,满300减30,参与互动赢百元礼券,立即分享赢大奖', '', 98.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES (31, 50, 8, 0, 1, 'HLA海澜之家蓝灰花纹圆领针织布短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ac98b64N70acd82f.jpg!cc_350x449.jpg', 'HNTBJ2E080A', 0, 1, 0, 0, 0, 0, 0, 98.00, NULL, 0, 0, 0, '2018夏季新品短袖T恤男HNTBJ2E080A 蓝灰花纹80 175/92A/L80A 蓝灰花纹80 175/92A/L', '', 98.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES (32, 50, 8, 0, 1, 'HLA海澜之家短袖T恤男基础款', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a51eb88Na4797877.jpg', 'HNTBJ2E153A', 0, 1, 0, 0, 0, 0, 0, 68.00, NULL, 0, 0, 0, 'HLA海澜之家短袖T恤男基础款简约圆领HNTBJ2E153A藏青(F3)175/92A(50)', '', 68.00, 100, 0, '', 0.00, 0, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES (33, 6, 35, 0, 12, '小米(MI)小米电视4A ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b02804dN66004d73.jpg', '4609652', 0, 1, 0, 0, 0, 0, 0, 2499.00, NULL, 0, 0, 0, '小米(MI)小米电视4A 55英寸 L55M5-AZ/L55M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', 2499.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '电视');
-INSERT INTO `pms_product` VALUES (34, 6, 35, 0, 12, '小米(MI)小米电视4A 65英寸', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b028530N51eee7d4.jpg', '4609660', 0, 1, 0, 0, 0, 0, 0, 3999.00, NULL, 0, 0, 0, ' L65M5-AZ/L65M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', 3999.00, 100, 0, '', 0.00, 0, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '电视');
-INSERT INTO `pms_product` VALUES (35, 58, 29, 0, 11, '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b235bb9Nf606460b.jpg', '6799342', 0, 1, 0, 0, 0, 0, 0, 369.00, NULL, 0, 0, 0, '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', '', 369.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, 'NIKE', '男鞋');
-INSERT INTO `pms_product` VALUES (36, 58, 29, 0, 11, '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '6799345', 0, 1, 1, 1, 0, 0, 0, 499.00, NULL, 0, 0, 0, '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '', 499.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, 'NIKE', '男鞋');
-INSERT INTO `pms_product` VALUES (37, 51, 19, 0, 3, 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', '100038005189', 0, 1, 0, 0, 0, 200, 0, 5999.00, NULL, 0, 0, 0, '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '', 5999.00, 1000, 0, '', 208.00, 0, '1,2,3', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_002.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_003.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_004.jpg', '', '', '', '', NULL, NULL, 0, 0, '苹果', '手机通讯');
-INSERT INTO `pms_product` VALUES (38, 51, 53, 0, 3, 'Apple iPad 10.9英寸平板电脑 2022年款', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', '100044025833', 0, 1, 0, 0, 0, 0, 0, 3599.00, NULL, 0, 0, 0, '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '', 3599.00, 1000, 0, '', 0.00, 0, '1,2,3', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_002.jpg', '', '', '', '', NULL, NULL, 0, 0, '苹果', '平板电脑');
-INSERT INTO `pms_product` VALUES (39, 6, 54, 0, 13, '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '100023207945', 0, 1, 0, 1, 0, 0, 0, 5599.00, NULL, 0, 0, 0, '【双十一大促来袭】指定型号至高优惠1000,以旧换新至高补贴1000元,晒单赢好礼', '', 5599.00, 500, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_002.jpg', '', '', '', '\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
', NULL, NULL, 0, 0, '小米', '笔记本');
-INSERT INTO `pms_product` VALUES (40, 6, 19, 0, 3, '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '100027789721', 0, 1, 0, 1, 0, 0, 0, 2999.00, NULL, 0, 0, 0, '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '', 2999.00, 500, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_02.jpg', '', '', '', '
', NULL, NULL, 0, 4, '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES (41, 6, 19, 0, 3, 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', '100035246702', 0, 1, 0, 0, 0, 0, 0, 2099.00, NULL, 0, 0, 0, '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '', 2099.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_02.jpg', '', '', '', '
', NULL, NULL, 0, 0, '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES (42, 3, 19, 0, 3, 'HUAWEI Mate 50 直屏旗舰 超光变XMAGE影像 北斗卫星消息', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', '100035295081', 0, 1, 0, 0, 0, 0, 0, 4999.00, NULL, 0, 0, 0, '【华为Mate50新品上市】内置66W华为充电套装,超光变XMAGE影像,北斗卫星消息,鸿蒙操作系统3.0!立即抢购!华为新品可持续计划,猛戳》 ', '', 4999.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_02.jpg', '', '', '', '
', NULL, NULL, 0, 0, '华为', '手机通讯');
-INSERT INTO `pms_product` VALUES (43, 1, 39, 0, 14, '万和(Vanward)燃气热水器天然气家用四重防冻直流变频节能全新升级增压水伺服恒温高抗风', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_13L_01.png', '10044060351752', 0, 1, 0, 0, 0, 0, 0, 1799.00, NULL, 0, 0, 0, '【家电11.11享低价,抢到手价不高于1199】【发布种草秀享好礼!同价11.11买贵补差】爆款超一级能效零冷水】 ', '', 1799.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_16L_01.jpg', '', '', '', '
', NULL, NULL, 0, 0, '万和', '厨卫大电');
-INSERT INTO `pms_product` VALUES (44, 2, 55, 0, 15, '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议)', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', '100018768480', 0, 1, 0, 0, 0, 0, 0, 369.00, NULL, 0, 0, 0, '【满血无缓存!进店抽百元E卡,部分型号白条三期免息】兼具速度与可靠性!读速高达3500MB/s,全功率模式!点击 ', '', 369.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_01.jpg', '', '', '', '
', NULL, NULL, 0, 0, '三星', '硬盘');
-INSERT INTO `pms_product` VALUES (45, 21, 19, 0, 3, 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', '10052147850350', 0, 1, 0, 0, 0, 0, 0, 2299.00, 999.00, 0, 0, 0, '【11.11提前购机享价保,好货不用等,系统申请一键价保补差!】【Reno8Pro爆款优惠】 ', '', 2299.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_02.jpg', '', '', '', '
', '2022-11-09 16:15:50', '2022-11-25 00:00:00', 0, 4, 'OPPO', '手机通讯');
-
--- ----------------------------
--- Table structure for pms_product_attribute
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_attribute`;
-CREATE TABLE `pms_product_attribute` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_attribute_category_id` bigint(20) NULL DEFAULT NULL,
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `select_type` int(1) NULL DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选',
- `input_type` int(1) NULL DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',
- `input_list` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '可选值列表,以逗号隔开',
- `sort` int(11) NULL DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',
- `filter_type` int(1) NULL DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',
- `search_type` int(1) NULL DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',
- `related_status` int(1) NULL DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',
- `hand_add_status` int(1) NULL DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',
- `type` int(1) NULL DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 74 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品属性参数表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_attribute
--- ----------------------------
-INSERT INTO `pms_product_attribute` VALUES (1, 1, '尺寸', 2, 1, 'M,X,XL,2XL,3XL,4XL', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (7, 1, '颜色', 2, 1, '黑色,红色,白色,粉色', 100, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (13, 0, '上市年份', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (14, 0, '上市年份1', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (15, 0, '上市年份2', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (16, 0, '上市年份3', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (17, 0, '上市年份4', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (18, 0, '上市年份5', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (19, 0, '适用对象', 1, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (20, 0, '适用对象1', 2, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (21, 0, '适用对象3', 2, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (24, 1, '商品编号', 1, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (25, 1, '适用季节', 1, 1, '春季,夏季,秋季,冬季', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (32, 2, '适用人群', 0, 1, '老年,青年,中年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (33, 2, '风格', 0, 1, '嘻哈风格,基础大众,商务正装', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (35, 2, '颜色', 0, 0, '', 100, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (37, 1, '适用人群', 1, 1, '儿童,青年,中年,老年', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (38, 1, '上市时间', 1, 1, '2017年秋,2017年冬,2018年春,2018年夏', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (39, 1, '袖长', 1, 1, '短袖,长袖,中袖', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (40, 2, '尺码', 0, 1, '29,30,31,32,33,34', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (41, 2, '适用场景', 0, 1, '居家,运动,正装', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (42, 2, '上市时间', 0, 1, '2018年春,2018年夏', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (43, 3, '颜色', 0, 0, '', 100, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (44, 3, '容量', 0, 1, '16G,32G,64G,128G,256G,512G', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (45, 3, '屏幕尺寸', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (46, 3, '网络', 0, 1, '3G,4G,5G,WLAN', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (47, 3, '系统', 0, 1, 'Android,IOS', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (48, 3, '电池容量', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (49, 11, '颜色', 0, 1, '红色,蓝色,绿色', 0, 1, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (50, 11, '尺寸', 0, 1, '38,39,40', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (51, 11, '风格', 0, 1, '夏季,秋季', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (52, 12, '尺寸', 0, 1, '50英寸,65英寸,70英寸', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (53, 12, '内存', 0, 1, '8G,16G,32G', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (54, 12, '商品编号', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (55, 12, '商品毛重', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (56, 12, '商品产地', 0, 1, '中国大陆,其他', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (57, 12, '电视类型', 0, 1, '大屏,教育电视,4K超清', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (58, 13, '颜色', 0, 0, '', 0, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (59, 13, '版本', 0, 1, 'R7 16G 512,R5 16G 512,I5 16G 512,I7 16G 512', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (60, 13, '屏幕尺寸', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (61, 13, '屏幕分辨率', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (62, 13, 'CPU型号', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (63, 14, '系列', 0, 0, '', 0, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (64, 14, '上市时间', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (65, 14, '毛重', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (66, 14, '额定功率', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (67, 15, '颜色', 0, 0, '', 0, 0, 0, 0, 1, 0);
-INSERT INTO `pms_product_attribute` VALUES (68, 15, '版本', 0, 1, '512GB,1TB', 0, 0, 0, 0, 0, 0);
-INSERT INTO `pms_product_attribute` VALUES (69, 15, '系列', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (70, 15, '型号', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (71, 15, '闪存类型', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (72, 15, '顺序读速', 0, 0, '', 0, 0, 0, 0, 0, 1);
-INSERT INTO `pms_product_attribute` VALUES (73, 15, '顺序写入', 0, 0, '', 0, 0, 0, 0, 0, 1);
-
--- ----------------------------
--- Table structure for pms_product_attribute_category
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_attribute_category`;
-CREATE TABLE `pms_product_attribute_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `attribute_count` int(11) NULL DEFAULT 0 COMMENT '属性数量',
- `param_count` int(11) NULL DEFAULT 0 COMMENT '参数数量',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 16 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品属性分类表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_attribute_category
--- ----------------------------
-INSERT INTO `pms_product_attribute_category` VALUES (1, '服装-T恤', 2, 5);
-INSERT INTO `pms_product_attribute_category` VALUES (2, '服装-裤装', 2, 4);
-INSERT INTO `pms_product_attribute_category` VALUES (3, '手机数码-手机通讯', 2, 4);
-INSERT INTO `pms_product_attribute_category` VALUES (4, '配件', 0, 0);
-INSERT INTO `pms_product_attribute_category` VALUES (5, '居家', 0, 0);
-INSERT INTO `pms_product_attribute_category` VALUES (6, '洗护', 0, 0);
-INSERT INTO `pms_product_attribute_category` VALUES (10, '测试分类', 0, 0);
-INSERT INTO `pms_product_attribute_category` VALUES (11, '服装-鞋帽', 3, 0);
-INSERT INTO `pms_product_attribute_category` VALUES (12, '家用电器-电视', 2, 4);
-INSERT INTO `pms_product_attribute_category` VALUES (13, '电脑办公-笔记本', 2, 3);
-INSERT INTO `pms_product_attribute_category` VALUES (14, '家用电器-厨卫大电', 1, 3);
-INSERT INTO `pms_product_attribute_category` VALUES (15, '电脑办公-硬盘', 2, 5);
-
--- ----------------------------
--- Table structure for pms_product_attribute_value
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_attribute_value`;
-CREATE TABLE `pms_product_attribute_value` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_attribute_id` bigint(20) NULL DEFAULT NULL,
- `value` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 517 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '存储产品参数信息的表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_attribute_value
--- ----------------------------
-INSERT INTO `pms_product_attribute_value` VALUES (1, 9, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (2, 10, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (3, 11, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (4, 12, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (5, 13, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (6, 14, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (7, 18, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (8, 7, 1, 'X');
-INSERT INTO `pms_product_attribute_value` VALUES (9, 7, 1, 'XL');
-INSERT INTO `pms_product_attribute_value` VALUES (10, 7, 1, 'XXL');
-INSERT INTO `pms_product_attribute_value` VALUES (11, 22, 7, 'x,xx');
-INSERT INTO `pms_product_attribute_value` VALUES (12, 22, 24, 'no110');
-INSERT INTO `pms_product_attribute_value` VALUES (13, 22, 25, '春季');
-INSERT INTO `pms_product_attribute_value` VALUES (14, 22, 37, '青年');
-INSERT INTO `pms_product_attribute_value` VALUES (15, 22, 38, '2018年春');
-INSERT INTO `pms_product_attribute_value` VALUES (16, 22, 39, '长袖');
-INSERT INTO `pms_product_attribute_value` VALUES (124, 23, 7, '米白色,浅黄色');
-INSERT INTO `pms_product_attribute_value` VALUES (125, 23, 24, 'no1098');
-INSERT INTO `pms_product_attribute_value` VALUES (126, 23, 25, '春季');
-INSERT INTO `pms_product_attribute_value` VALUES (127, 23, 37, '青年');
-INSERT INTO `pms_product_attribute_value` VALUES (128, 23, 38, '2018年春');
-INSERT INTO `pms_product_attribute_value` VALUES (129, 23, 39, '长袖');
-INSERT INTO `pms_product_attribute_value` VALUES (130, 1, 13, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (131, 1, 14, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (132, 1, 15, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (133, 1, 16, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (134, 1, 17, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (135, 1, 18, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (136, 1, 19, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (137, 1, 20, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (138, 1, 21, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (139, 2, 13, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (140, 2, 14, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (141, 2, 15, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (142, 2, 16, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (143, 2, 17, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (144, 2, 18, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (145, 2, 19, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (146, 2, 20, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (147, 2, 21, NULL);
-INSERT INTO `pms_product_attribute_value` VALUES (243, 30, 7, '蓝色,白色');
-INSERT INTO `pms_product_attribute_value` VALUES (244, 30, 24, 'HNTBJ2E042A');
-INSERT INTO `pms_product_attribute_value` VALUES (245, 30, 25, '夏季');
-INSERT INTO `pms_product_attribute_value` VALUES (246, 30, 37, '青年');
-INSERT INTO `pms_product_attribute_value` VALUES (247, 30, 38, '2018年夏');
-INSERT INTO `pms_product_attribute_value` VALUES (248, 30, 39, '短袖');
-INSERT INTO `pms_product_attribute_value` VALUES (249, 31, 7, '浅灰色,深灰色');
-INSERT INTO `pms_product_attribute_value` VALUES (250, 31, 24, 'HNTBJ2E080A');
-INSERT INTO `pms_product_attribute_value` VALUES (251, 31, 25, '夏季');
-INSERT INTO `pms_product_attribute_value` VALUES (252, 31, 37, '青年');
-INSERT INTO `pms_product_attribute_value` VALUES (253, 31, 38, '2018年夏');
-INSERT INTO `pms_product_attribute_value` VALUES (254, 31, 39, '短袖');
-INSERT INTO `pms_product_attribute_value` VALUES (255, 32, 7, '黑色,白色');
-INSERT INTO `pms_product_attribute_value` VALUES (256, 32, 24, 'HNTBJ2E153A');
-INSERT INTO `pms_product_attribute_value` VALUES (257, 32, 25, '夏季');
-INSERT INTO `pms_product_attribute_value` VALUES (258, 32, 37, '青年');
-INSERT INTO `pms_product_attribute_value` VALUES (259, 32, 38, '2018年夏');
-INSERT INTO `pms_product_attribute_value` VALUES (260, 32, 39, '短袖');
-INSERT INTO `pms_product_attribute_value` VALUES (265, 33, 54, '4609652');
-INSERT INTO `pms_product_attribute_value` VALUES (266, 33, 55, '28.6kg');
-INSERT INTO `pms_product_attribute_value` VALUES (267, 33, 56, '中国大陆');
-INSERT INTO `pms_product_attribute_value` VALUES (268, 33, 57, '大屏');
-INSERT INTO `pms_product_attribute_value` VALUES (269, 34, 54, '4609660');
-INSERT INTO `pms_product_attribute_value` VALUES (270, 34, 55, '30.8kg');
-INSERT INTO `pms_product_attribute_value` VALUES (271, 34, 56, '中国大陆');
-INSERT INTO `pms_product_attribute_value` VALUES (272, 34, 57, '4K超清');
-INSERT INTO `pms_product_attribute_value` VALUES (288, 27, 43, '黑色,蓝色');
-INSERT INTO `pms_product_attribute_value` VALUES (289, 27, 45, '5.8');
-INSERT INTO `pms_product_attribute_value` VALUES (290, 27, 46, '4G');
-INSERT INTO `pms_product_attribute_value` VALUES (291, 27, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (292, 27, 48, '3000ml');
-INSERT INTO `pms_product_attribute_value` VALUES (303, 28, 43, '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES (304, 28, 45, '5.0');
-INSERT INTO `pms_product_attribute_value` VALUES (305, 28, 46, '4G');
-INSERT INTO `pms_product_attribute_value` VALUES (306, 28, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (307, 28, 48, '2800ml');
-INSERT INTO `pms_product_attribute_value` VALUES (308, 29, 43, '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES (309, 29, 45, '4.7');
-INSERT INTO `pms_product_attribute_value` VALUES (310, 29, 46, '4G');
-INSERT INTO `pms_product_attribute_value` VALUES (311, 29, 47, 'IOS');
-INSERT INTO `pms_product_attribute_value` VALUES (312, 29, 48, '1960ml');
-INSERT INTO `pms_product_attribute_value` VALUES (338, 37, 43, '午夜色,星光色,紫色,蓝色');
-INSERT INTO `pms_product_attribute_value` VALUES (339, 37, 45, '6.1英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (340, 37, 46, '5G');
-INSERT INTO `pms_product_attribute_value` VALUES (341, 37, 47, 'IOS');
-INSERT INTO `pms_product_attribute_value` VALUES (342, 37, 48, '3000毫安');
-INSERT INTO `pms_product_attribute_value` VALUES (443, 38, 43, '银色,蓝色');
-INSERT INTO `pms_product_attribute_value` VALUES (444, 38, 45, '10.9英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (445, 38, 46, 'WLAN');
-INSERT INTO `pms_product_attribute_value` VALUES (446, 38, 47, 'IOS');
-INSERT INTO `pms_product_attribute_value` VALUES (447, 38, 48, '6000毫安');
-INSERT INTO `pms_product_attribute_value` VALUES (448, 39, 58, '新小米Pro 14英寸 2.8K屏,新Redmi Pro 15英寸 3.2K屏');
-INSERT INTO `pms_product_attribute_value` VALUES (449, 39, 60, '15.6英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (450, 39, 61, '3200*2000');
-INSERT INTO `pms_product_attribute_value` VALUES (451, 39, 62, 'R5 6600H');
-INSERT INTO `pms_product_attribute_value` VALUES (452, 41, 43, '墨羽,银迹');
-INSERT INTO `pms_product_attribute_value` VALUES (453, 41, 45, '6.67英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (454, 41, 46, '5G');
-INSERT INTO `pms_product_attribute_value` VALUES (455, 41, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (456, 41, 48, '5500mAh');
-INSERT INTO `pms_product_attribute_value` VALUES (457, 42, 43, '曜金黑,冰霜银');
-INSERT INTO `pms_product_attribute_value` VALUES (458, 42, 45, '6.7英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (459, 42, 46, '5G');
-INSERT INTO `pms_product_attribute_value` VALUES (460, 42, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (461, 42, 48, '4460mAh');
-INSERT INTO `pms_product_attribute_value` VALUES (462, 43, 63, 'JSQ25-565W13【13升】【恒温旗舰款】,JSQ30-565W16【16升】【恒温旗舰款】');
-INSERT INTO `pms_product_attribute_value` VALUES (463, 43, 64, '2021-05');
-INSERT INTO `pms_product_attribute_value` VALUES (464, 43, 65, '15.5kg');
-INSERT INTO `pms_product_attribute_value` VALUES (465, 43, 66, '30w');
-INSERT INTO `pms_product_attribute_value` VALUES (466, 44, 67, '新品980|NVMe PCIe3.0*4,980 PRO|NVMe PCIe 4.0');
-INSERT INTO `pms_product_attribute_value` VALUES (467, 44, 69, '980');
-INSERT INTO `pms_product_attribute_value` VALUES (468, 44, 70, 'MZ-V8V500BW');
-INSERT INTO `pms_product_attribute_value` VALUES (469, 44, 71, 'TLC');
-INSERT INTO `pms_product_attribute_value` VALUES (470, 44, 72, '3100MB/s');
-INSERT INTO `pms_product_attribute_value` VALUES (471, 44, 73, '2600MB/s');
-INSERT INTO `pms_product_attribute_value` VALUES (472, 45, 43, '鸢尾紫,晴空蓝');
-INSERT INTO `pms_product_attribute_value` VALUES (473, 45, 45, '6.43英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (474, 45, 46, '5G');
-INSERT INTO `pms_product_attribute_value` VALUES (475, 45, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (476, 45, 48, '4500mAh');
-INSERT INTO `pms_product_attribute_value` VALUES (477, 40, 43, '黑色,蓝色');
-INSERT INTO `pms_product_attribute_value` VALUES (478, 40, 45, '6.73英寸');
-INSERT INTO `pms_product_attribute_value` VALUES (479, 40, 46, '5G');
-INSERT INTO `pms_product_attribute_value` VALUES (480, 40, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (481, 40, 48, '5160mAh');
-INSERT INTO `pms_product_attribute_value` VALUES (512, 26, 43, '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES (513, 26, 45, '5.0');
-INSERT INTO `pms_product_attribute_value` VALUES (514, 26, 46, '4G');
-INSERT INTO `pms_product_attribute_value` VALUES (515, 26, 47, 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES (516, 26, 48, '3000');
-
--- ----------------------------
--- Table structure for pms_product_category
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_category`;
-CREATE TABLE `pms_product_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `parent_id` bigint(20) NULL DEFAULT NULL COMMENT '上机分类的编号:0表示一级分类',
- `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `level` int(1) NULL DEFAULT NULL COMMENT '分类级别:0->1级;1->2级',
- `product_count` int(11) NULL DEFAULT NULL,
- `product_unit` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `nav_status` int(1) NULL DEFAULT NULL COMMENT '是否显示在导航栏:0->不显示;1->显示',
- `show_status` int(1) NULL DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',
- `sort` int(11) NULL DEFAULT NULL,
- `icon` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '图标',
- `keywords` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `description` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '描述',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 56 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品分类' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_category
--- ----------------------------
-INSERT INTO `pms_product_category` VALUES (1, 0, '服装', 0, 100, '件', 1, 1, 1, NULL, '服装', '服装分类');
-INSERT INTO `pms_product_category` VALUES (2, 0, '手机数码', 0, 100, '件', 1, 1, 1, NULL, '手机数码', '手机数码');
-INSERT INTO `pms_product_category` VALUES (3, 0, '家用电器', 0, 100, '件', 1, 1, 1, NULL, '家用电器', '家用电器');
-INSERT INTO `pms_product_category` VALUES (4, 0, '家具家装', 0, 100, '件', 1, 1, 1, NULL, '家具家装', '家具家装');
-INSERT INTO `pms_product_category` VALUES (5, 0, '汽车用品', 0, 100, '件', 1, 1, 1, NULL, '汽车用品', '汽车用品');
-INSERT INTO `pms_product_category` VALUES (7, 1, '外套', 1, 100, '件', 1, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac4780cN6087feb5.jpg', '外套', '外套');
-INSERT INTO `pms_product_category` VALUES (8, 1, 'T恤', 1, 100, '件', 1, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac47ffaN8a7b2e14.png', 'T恤', 'T恤');
-INSERT INTO `pms_product_category` VALUES (9, 1, '休闲裤', 1, 100, '件', 1, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac47845N7374a31d.jpg', '休闲裤', '休闲裤');
-INSERT INTO `pms_product_category` VALUES (10, 1, '牛仔裤', 1, 100, '件', 1, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac47841Nff658599.jpg', '牛仔裤', '牛仔裤');
-INSERT INTO `pms_product_category` VALUES (11, 1, '衬衫', 1, 100, '件', 1, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac48007Nb30b2118.jpg', '衬衫', '衬衫分类');
-INSERT INTO `pms_product_category` VALUES (13, 12, '家电子分类1', 1, 1, 'string', 0, 1, 0, 'string', 'string', 'string');
-INSERT INTO `pms_product_category` VALUES (14, 12, '家电子分类2', 1, 1, 'string', 0, 1, 0, 'string', 'string', 'string');
-INSERT INTO `pms_product_category` VALUES (19, 2, '手机通讯', 1, 0, '件', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac48d27N3f5bb821.jpg', '手机通讯', '手机通讯');
-INSERT INTO `pms_product_category` VALUES (29, 1, '男鞋', 1, 0, '', 0, 0, 0, '', '', '');
-INSERT INTO `pms_product_category` VALUES (30, 2, '手机配件', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5ac48672N11cf61fe.jpg', '手机配件', '手机配件');
-INSERT INTO `pms_product_category` VALUES (31, 2, '摄影摄像', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5a1679f2Nc2f659b6.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (32, 2, '影音娱乐', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5a167859N01d8198b.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (33, 2, '数码配件', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190519/5a1676e9N1ba70a81.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (34, 2, '智能设备', 1, 0, '', 0, 0, 0, '', '', '');
-INSERT INTO `pms_product_category` VALUES (35, 3, '电视', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a17f71eN25360979.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (36, 3, '空调', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a17f6f6Ndfe746aa.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (37, 3, '洗衣机', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a17f6eaN9ec936de.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (38, 3, '冰箱', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a17f6c5Ne56d7e26.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (39, 3, '厨卫大电', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a17f369N6a55ff3f.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (40, 3, '厨房小电', 1, 0, '', 0, 0, 0, '', '', '');
-INSERT INTO `pms_product_category` VALUES (41, 3, '生活电器', 1, 0, '', 0, 0, 0, '', '', '');
-INSERT INTO `pms_product_category` VALUES (42, 3, '个护健康', 1, 0, '', 0, 0, 0, '', '', '');
-INSERT INTO `pms_product_category` VALUES (43, 4, '厨房卫浴', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1eb12cN5ab932bb.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (44, 4, '灯饰照明', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1eb115Na5705672.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (45, 4, '五金工具', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a28e743Nf6d99998.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (46, 4, '卧室家具', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1eb096N6326e0bd.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (47, 4, '客厅家具', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1eb080N38c2e7b7.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (48, 5, '全新整车', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/ebe31b9cc535e122.png', '', '');
-INSERT INTO `pms_product_category` VALUES (49, 5, '车载电器', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1fb8d2N53bbd2ba.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (50, 5, '维修保养', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a1fb8baNbe801af8.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (51, 5, '汽车装饰', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a28ae20N34461e66.jpg', '', '');
-INSERT INTO `pms_product_category` VALUES (52, 0, '电脑办公', 0, 0, '件', 1, 1, 1, '', '电脑办公', '电脑办公');
-INSERT INTO `pms_product_category` VALUES (53, 52, '平板电脑', 1, 0, '件', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/pad_category_01.jpg', '平板电脑', '平板电脑');
-INSERT INTO `pms_product_category` VALUES (54, 52, '笔记本', 1, 0, '件', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/computer_category_01.jpg', '笔记本', '笔记本');
-INSERT INTO `pms_product_category` VALUES (55, 52, '硬盘', 1, 0, '', 0, 1, 0, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/ssd_category_01.jpg', '硬盘', '');
-
--- ----------------------------
--- Table structure for pms_product_category_attribute_relation
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_category_attribute_relation`;
-CREATE TABLE `pms_product_category_attribute_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_category_id` bigint(20) NULL DEFAULT NULL,
- `product_attribute_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品的分类和属性的关系表,用于设置分类筛选条件(只支持一级分类)' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_category_attribute_relation
--- ----------------------------
-INSERT INTO `pms_product_category_attribute_relation` VALUES (1, 24, 24);
-INSERT INTO `pms_product_category_attribute_relation` VALUES (5, 26, 24);
-INSERT INTO `pms_product_category_attribute_relation` VALUES (7, 28, 24);
-INSERT INTO `pms_product_category_attribute_relation` VALUES (9, 25, 24);
-INSERT INTO `pms_product_category_attribute_relation` VALUES (10, 25, 25);
-
--- ----------------------------
--- Table structure for pms_product_full_reduction
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_full_reduction`;
-CREATE TABLE `pms_product_full_reduction` (
- `id` bigint(11) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `full_price` decimal(10, 2) NULL DEFAULT NULL,
- `reduce_price` decimal(10, 2) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 148 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品满减表(只针对同商品)' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_full_reduction
--- ----------------------------
-INSERT INTO `pms_product_full_reduction` VALUES (1, 7, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (2, 8, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (3, 9, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (4, 10, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (5, 11, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (6, 12, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (7, 13, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (8, 14, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (9, 18, 100.00, 20.00);
-INSERT INTO `pms_product_full_reduction` VALUES (10, 7, 200.00, 50.00);
-INSERT INTO `pms_product_full_reduction` VALUES (11, 7, 300.00, 100.00);
-INSERT INTO `pms_product_full_reduction` VALUES (14, 22, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (16, 24, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (34, 23, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (78, 36, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (79, 35, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (83, 30, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (84, 31, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (85, 32, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (87, 33, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (88, 34, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (93, 27, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (96, 28, 500.00, 50.00);
-INSERT INTO `pms_product_full_reduction` VALUES (97, 28, 1000.00, 120.00);
-INSERT INTO `pms_product_full_reduction` VALUES (98, 29, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (104, 37, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (126, 38, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (127, 39, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (128, 41, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (129, 42, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (130, 43, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (131, 44, 0.00, 0.00);
-INSERT INTO `pms_product_full_reduction` VALUES (132, 45, 2000.00, 100.00);
-INSERT INTO `pms_product_full_reduction` VALUES (133, 40, 2000.00, 200.00);
-INSERT INTO `pms_product_full_reduction` VALUES (146, 26, 3000.00, 300.00);
-INSERT INTO `pms_product_full_reduction` VALUES (147, 26, 5000.00, 500.00);
-
--- ----------------------------
--- Table structure for pms_product_ladder
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_ladder`;
-CREATE TABLE `pms_product_ladder` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `count` int(11) NULL DEFAULT NULL COMMENT '满足的商品数量',
- `discount` decimal(10, 2) NULL DEFAULT NULL COMMENT '折扣',
- `price` decimal(10, 2) NULL DEFAULT NULL COMMENT '折后价格',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 148 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '产品阶梯价格表(只针对同商品)' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_ladder
--- ----------------------------
-INSERT INTO `pms_product_ladder` VALUES (1, 7, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (2, 8, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (3, 9, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (4, 10, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (5, 11, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (6, 12, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (7, 13, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (8, 14, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (12, 18, 3, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (14, 7, 4, 0.60, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (15, 7, 5, 0.50, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (18, 22, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (20, 24, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (38, 23, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (83, 36, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (84, 35, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (88, 30, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (89, 31, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (90, 32, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (92, 33, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (93, 34, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (99, 27, 2, 0.80, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (100, 27, 3, 0.75, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (103, 28, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (104, 29, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (110, 37, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (133, 38, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (134, 39, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (135, 41, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (136, 42, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (137, 43, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (138, 44, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (139, 45, 1, 0.70, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (140, 40, 0, 0.00, 0.00);
-INSERT INTO `pms_product_ladder` VALUES (147, 26, 0, 0.00, 0.00);
-
--- ----------------------------
--- Table structure for pms_product_operate_log
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_operate_log`;
-CREATE TABLE `pms_product_operate_log` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `price_old` decimal(10, 2) NULL DEFAULT NULL,
- `price_new` decimal(10, 2) NULL DEFAULT NULL,
- `sale_price_old` decimal(10, 2) NULL DEFAULT NULL,
- `sale_price_new` decimal(10, 2) NULL DEFAULT NULL,
- `gift_point_old` int(11) NULL DEFAULT NULL COMMENT '赠送的积分',
- `gift_point_new` int(11) NULL DEFAULT NULL,
- `use_point_limit_old` int(11) NULL DEFAULT NULL,
- `use_point_limit_new` int(11) NULL DEFAULT NULL,
- `operate_man` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作人',
- `create_time` datetime NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_operate_log
--- ----------------------------
-
--- ----------------------------
--- Table structure for pms_product_vertify_record
--- ----------------------------
-DROP TABLE IF EXISTS `pms_product_vertify_record`;
-CREATE TABLE `pms_product_vertify_record` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `vertify_man` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '审核人',
- `status` int(1) NULL DEFAULT NULL,
- `detail` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '反馈详情',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 3 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品审核记录' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_product_vertify_record
--- ----------------------------
-INSERT INTO `pms_product_vertify_record` VALUES (1, 1, '2018-04-27 16:36:41', 'test', 1, '验证通过');
-INSERT INTO `pms_product_vertify_record` VALUES (2, 2, '2018-04-27 16:36:41', 'test', 1, '验证通过');
-
--- ----------------------------
--- Table structure for pms_sku_stock
--- ----------------------------
-DROP TABLE IF EXISTS `pms_sku_stock`;
-CREATE TABLE `pms_sku_stock` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `sku_code` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT 'sku编码',
- `price` decimal(10, 2) NULL DEFAULT NULL,
- `stock` int(11) NULL DEFAULT 0 COMMENT '库存',
- `low_stock` int(11) NULL DEFAULT NULL COMMENT '预警库存',
- `pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '展示图片',
- `sale` int(11) NULL DEFAULT NULL COMMENT '销量',
- `promotion_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '单品促销价格',
- `lock_stock` int(11) NULL DEFAULT 0 COMMENT '锁定库存',
- `sp_data` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品销售属性,json格式',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 243 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = 'sku的库存' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of pms_sku_stock
--- ----------------------------
-INSERT INTO `pms_sku_stock` VALUES (98, 27, '201808270027001', 2699.00, 86, NULL, NULL, NULL, NULL, -24, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (99, 27, '201808270027002', 2999.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (100, 27, '201808270027003', 2699.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (101, 27, '201808270027004', 2999.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (102, 28, '201808270028001', 649.00, 99, NULL, NULL, NULL, NULL, -8, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (103, 28, '201808270028002', 699.00, 99, NULL, NULL, NULL, NULL, -8, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (104, 28, '201808270028003', 649.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (105, 28, '201808270028004', 699.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (106, 29, '201808270029001', 5499.00, 99, NULL, NULL, NULL, 4999.00, -8, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (107, 29, '201808270029002', 6299.00, 100, NULL, NULL, NULL, 5799.00, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (108, 29, '201808270029003', 5499.00, 100, NULL, NULL, NULL, 4999.00, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (109, 29, '201808270029004', 6299.00, 100, NULL, NULL, NULL, 5799.00, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (110, 26, '201806070026001', 3788.00, 487, NULL, NULL, NULL, 3699.00, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (111, 26, '201806070026002', 3999.00, 499, NULL, NULL, NULL, 3899.00, 0, '[{\"key\":\"颜色\",\"value\":\"金色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (112, 26, '201806070026003', 3788.00, 500, NULL, NULL, NULL, 3699.00, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (113, 26, '201806070026004', 3999.00, 500, NULL, NULL, NULL, 3899.00, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (163, 36, '202002210036001', 100.00, 100, 25, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (164, 36, '202002210036002', 120.00, 98, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (165, 36, '202002210036003', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (166, 36, '202002210036004', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (167, 36, '202002210036005', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (168, 36, '202002210036006', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (169, 36, '202002210036007', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (170, 36, '202002210036008', 100.00, 100, 20, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (171, 35, '202002250035001', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (172, 35, '202002250035002', 240.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (173, 35, '202002250035003', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (174, 35, '202002250035004', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"红色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (175, 35, '202002250035005', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (176, 35, '202002250035006', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"38\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (177, 35, '202002250035007', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"夏季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (178, 35, '202002250035008', 200.00, 100, 50, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"39\"},{\"key\":\"风格\",\"value\":\"秋季\"}]');
-INSERT INTO `pms_sku_stock` VALUES (179, 30, '202004190030001', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (180, 30, '202004190030002', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"XL\"}]');
-INSERT INTO `pms_sku_stock` VALUES (181, 30, '202004190030003', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"尺寸\",\"value\":\"M\"}]');
-INSERT INTO `pms_sku_stock` VALUES (182, 30, '202004190030004', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"白色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (183, 30, '202004190030005', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"白色\"},{\"key\":\"尺寸\",\"value\":\"XL\"}]');
-INSERT INTO `pms_sku_stock` VALUES (184, 30, '202004190030006', 88.00, 100, NULL, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"白色\"},{\"key\":\"尺寸\",\"value\":\"M\"}]');
-INSERT INTO `pms_sku_stock` VALUES (185, 31, '202004190031001', 88.00, 80, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"浅灰色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (186, 31, '202004190031002', 88.00, 80, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"浅灰色\"},{\"key\":\"尺寸\",\"value\":\"XL\"}]');
-INSERT INTO `pms_sku_stock` VALUES (187, 31, '202004190031003', 88.00, 80, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"深灰色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (188, 31, '202004190031004', 88.00, 80, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"深灰色\"},{\"key\":\"尺寸\",\"value\":\"XL\"}]');
-INSERT INTO `pms_sku_stock` VALUES (189, 32, '202004190032001', 99.00, 100, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (190, 32, '202004190032002', 99.00, 100, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"尺寸\",\"value\":\"M\"}]');
-INSERT INTO `pms_sku_stock` VALUES (191, 32, '202004190032003', 99.00, 100, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"白色\"},{\"key\":\"尺寸\",\"value\":\"X\"}]');
-INSERT INTO `pms_sku_stock` VALUES (192, 32, '202004190032004', 99.00, 100, 10, NULL, NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"白色\"},{\"key\":\"尺寸\",\"value\":\"M\"}]');
-INSERT INTO `pms_sku_stock` VALUES (193, 33, '202004190033001', 2499.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"50英寸\"},{\"key\":\"内存\",\"value\":\"8G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (194, 33, '202004190033002', 2499.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"50英寸\"},{\"key\":\"内存\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (195, 33, '202004190033003', 2499.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"65英寸\"},{\"key\":\"内存\",\"value\":\"8G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (196, 33, '202004190033004', 2499.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"65英寸\"},{\"key\":\"内存\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (197, 34, '202004190034001', 3999.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"65英寸\"},{\"key\":\"内存\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (198, 34, '202004190034002', 3999.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"65英寸\"},{\"key\":\"内存\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (199, 34, '202004190034003', 3999.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"70英寸\"},{\"key\":\"内存\",\"value\":\"16G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (200, 34, '202004190034004', 3999.00, 500, 10, NULL, NULL, NULL, 0, '[{\"key\":\"尺寸\",\"value\":\"70英寸\"},{\"key\":\"内存\",\"value\":\"32G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (201, 37, '202210280037001', 5999.00, 195, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', NULL, NULL, 1, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (202, 37, '202210280037002', 6899.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (203, 37, '202210280037003', 8699.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"午夜色\"},{\"key\":\"容量\",\"value\":\"512G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (204, 37, '202210280037004', 5999.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"星光色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (205, 37, '202210280037005', 6899.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"星光色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (206, 37, '202210280037006', 8699.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"星光色\"},{\"key\":\"容量\",\"value\":\"512G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (207, 37, '202210280037007', 5999.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_003.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"紫色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (208, 37, '202210280037008', 6899.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_003.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"紫色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (209, 37, '202210280037009', 8699.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_003.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"紫色\"},{\"key\":\"容量\",\"value\":\"512G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (210, 37, '202210280037010', 5999.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_004.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (211, 37, '202210280037011', 6899.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_004.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (212, 37, '202210280037012', 8699.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_004.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"512G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (213, 38, '202210280038001', 3599.00, 198, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (214, 38, '202210280038002', 4799.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (215, 38, '202210280038003', 3599.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"64G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (216, 38, '202210280038004', 4799.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (217, 39, '202210280039001', 5999.00, 499, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `pms_sku_stock` VALUES (218, 39, '202210280039002', 5599.00, 500, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新小米Pro 14英寸 2.8K屏\"},{\"key\":\"版本\",\"value\":\"R5 16G 512\"}]');
-INSERT INTO `pms_sku_stock` VALUES (219, 39, '202210280039003', 5499.00, 500, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新Redmi Pro 15英寸 3.2K屏\"},{\"key\":\"版本\",\"value\":\"R7 16G 512\"}]');
-INSERT INTO `pms_sku_stock` VALUES (220, 39, '202210280039004', 4999.00, 500, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_002.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新Redmi Pro 15英寸 3.2K屏\"},{\"key\":\"版本\",\"value\":\"R5 16G 512\"}]');
-INSERT INTO `pms_sku_stock` VALUES (221, 40, '202211040040001', 2999.00, 91, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (222, 40, '202211040040002', 3499.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"黑色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (223, 40, '202211040040003', 2999.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (224, 40, '202211040040004', 3499.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"蓝色\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (225, 41, '202211040041001', 2099.00, 195, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (226, 41, '202211040041002', 2299.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"墨羽\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (227, 41, '202211040041003', 2099.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银迹\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (228, 41, '202211040041004', 2299.00, 200, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"银迹\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (229, 42, '202211040042001', 4999.00, 99, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"曜金黑\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (230, 42, '202211040042002', 5499.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"曜金黑\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (231, 42, '202211040042003', 4999.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"冰霜银\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (232, 42, '202211040042004', 5499.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"冰霜银\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (233, 43, '202211040043001', 1649.00, 500, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_13L_01.png', NULL, NULL, 0, '[{\"key\":\"系列\",\"value\":\"JSQ25-565W13【13升】【恒温旗舰款】\"}]');
-INSERT INTO `pms_sku_stock` VALUES (234, 43, '202211040043002', 1799.00, 500, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_13L_01.png', NULL, NULL, 0, '[{\"key\":\"系列\",\"value\":\"JSQ30-565W16【16升】【恒温旗舰款】\"}]');
-INSERT INTO `pms_sku_stock` VALUES (235, 44, '202211080044001', 369.00, 99, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新品980|NVMe PCIe3.0*4\"},{\"key\":\"版本\",\"value\":\"512GB\"}]');
-INSERT INTO `pms_sku_stock` VALUES (236, 44, '202211080044002', 649.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"新品980|NVMe PCIe3.0*4\"},{\"key\":\"版本\",\"value\":\"1TB\"}]');
-INSERT INTO `pms_sku_stock` VALUES (237, 44, '202211080044003', 549.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"980 PRO|NVMe PCIe 4.0\"},{\"key\":\"版本\",\"value\":\"512GB\"}]');
-INSERT INTO `pms_sku_stock` VALUES (238, 44, '202211080044004', 899.00, 100, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"980 PRO|NVMe PCIe 4.0\"},{\"key\":\"版本\",\"value\":\"1TB\"}]');
-INSERT INTO `pms_sku_stock` VALUES (239, 45, '202211080045001', 2299.00, 250, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"鸢尾紫\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (240, 45, '202211080045002', 2499.00, 250, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"鸢尾紫\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (241, 45, '202211080045003', 2299.00, 250, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"晴空蓝\"},{\"key\":\"容量\",\"value\":\"128G\"}]');
-INSERT INTO `pms_sku_stock` VALUES (242, 45, '202211080045004', 2499.00, 250, NULL, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_02.jpg', NULL, NULL, 0, '[{\"key\":\"颜色\",\"value\":\"晴空蓝\"},{\"key\":\"容量\",\"value\":\"256G\"}]');
-
--- ----------------------------
--- Table structure for sms_coupon
--- ----------------------------
-DROP TABLE IF EXISTS `sms_coupon`;
-CREATE TABLE `sms_coupon` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `type` int(1) NULL DEFAULT NULL COMMENT '优惠券类型;0->全场赠券;1->会员赠券;2->购物赠券;3->注册赠券',
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `platform` int(1) NULL DEFAULT NULL COMMENT '使用平台:0->全部;1->移动;2->PC',
- `count` int(11) NULL DEFAULT NULL COMMENT '数量',
- `amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '金额',
- `per_limit` int(11) NULL DEFAULT NULL COMMENT '每人限领张数',
- `min_point` decimal(10, 2) NULL DEFAULT NULL COMMENT '使用门槛;0表示无门槛',
- `start_time` datetime NULL DEFAULT NULL,
- `end_time` datetime NULL DEFAULT NULL,
- `use_type` int(1) NULL DEFAULT NULL COMMENT '使用类型:0->全场通用;1->指定分类;2->指定商品',
- `note` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
- `publish_count` int(11) NULL DEFAULT NULL COMMENT '发行数量',
- `use_count` int(11) NULL DEFAULT NULL COMMENT '已使用数量',
- `receive_count` int(11) NULL DEFAULT NULL COMMENT '领取数量',
- `enable_time` datetime NULL DEFAULT NULL COMMENT '可以领取的日期',
- `code` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '优惠码',
- `member_level` int(1) NULL DEFAULT NULL COMMENT '可领取的会员类型:0->无限时',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优惠券表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_coupon
--- ----------------------------
-INSERT INTO `sms_coupon` VALUES (27, 0, '全品类通用券', 0, 94, 10.00, 10, 100.00, '2022-11-08 00:00:00', '2023-11-30 00:00:00', 0, NULL, 100, 0, 6, '2022-11-08 00:00:00', NULL, NULL);
-INSERT INTO `sms_coupon` VALUES (28, 0, '手机分类专用券', 0, 995, 100.00, 5, 1000.00, '2022-11-08 00:00:00', '2023-11-30 00:00:00', 1, NULL, 1000, 0, 5, '2022-11-08 00:00:00', NULL, NULL);
-INSERT INTO `sms_coupon` VALUES (29, 0, '苹果手机专用券', 0, 998, 600.00, 1, 4000.00, '2022-11-08 00:00:00', '2023-11-30 00:00:00', 2, NULL, 1000, 0, 2, '2022-11-08 00:00:00', NULL, NULL);
-INSERT INTO `sms_coupon` VALUES (30, 0, '小米手机专用券', 0, 998, 200.00, 1, 2000.00, '2022-11-08 00:00:00', '2023-11-30 00:00:00', 2, NULL, 1000, 0, 2, '2022-11-08 00:00:00', NULL, NULL);
-INSERT INTO `sms_coupon` VALUES (31, 0, '限时优惠券', 0, 999, 20.00, 5, 500.00, '2022-12-01 00:00:00', '2022-12-22 00:00:00', 0, NULL, 1000, 0, 1, '2022-12-23 00:00:00', NULL, NULL);
-
--- ----------------------------
--- Table structure for sms_coupon_history
--- ----------------------------
-DROP TABLE IF EXISTS `sms_coupon_history`;
-CREATE TABLE `sms_coupon_history` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `coupon_id` bigint(20) NULL DEFAULT NULL,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `coupon_code` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `member_nickname` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '领取人昵称',
- `get_type` int(1) NULL DEFAULT NULL COMMENT '获取类型:0->后台赠送;1->主动获取',
- `create_time` datetime NULL DEFAULT NULL,
- `use_status` int(1) NULL DEFAULT NULL COMMENT '使用状态:0->未使用;1->已使用;2->已过期',
- `use_time` datetime NULL DEFAULT NULL COMMENT '使用时间',
- `order_id` bigint(20) NULL DEFAULT NULL COMMENT '订单编号',
- `order_sn` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '订单号码',
- PRIMARY KEY (`id`) USING BTREE,
- INDEX `idx_member_id`(`member_id`) USING BTREE,
- INDEX `idx_coupon_id`(`coupon_id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 53 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优惠券使用、领取历史表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_coupon_history
--- ----------------------------
-INSERT INTO `sms_coupon_history` VALUES (37, 30, 1, '7806895974110001', 'windir', 1, '2022-11-09 15:14:29', 1, '2022-11-09 15:14:58', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (38, 27, 1, '7872472849240001', 'windir', 1, '2022-11-09 15:25:25', 1, '2022-11-09 15:25:38', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (39, 29, 1, '7876204111480001', 'windir', 1, '2022-11-09 15:26:02', 1, '2022-11-09 15:26:11', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (40, 27, 1, '7911945030190001', 'windir', 1, '2022-11-09 15:31:59', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (41, 28, 1, '8194868687790001', 'windir', 1, '2022-11-09 16:19:09', 1, '2022-11-11 16:12:42', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (42, 28, 1, '1239565720390001', 'test', 1, '2022-12-21 16:46:36', 1, '2022-12-21 16:53:07', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (43, 31, 1, '6030247208280001', 'test', 1, '2022-12-23 09:51:42', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (44, 28, 1, '6050939443480001', 'test', 1, '2022-12-23 09:55:09', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (45, 27, 1, '4182437014580001', 'test', 1, '2023-01-10 17:10:24', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (46, 27, 11, '9011281751500011', 'member', 1, '2023-05-11 15:28:33', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (47, 28, 11, '9011495851370011', 'member', 1, '2023-05-11 15:28:35', 1, '2023-05-11 15:37:16', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (48, 30, 11, '9011677197430011', 'member', 1, '2023-05-11 15:28:37', 1, '2023-05-11 15:28:56', NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (49, 27, 11, '9046676666610011', 'member', 1, '2023-05-11 15:34:27', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (50, 28, 11, '9046909751910011', 'member', 1, '2023-05-11 15:34:29', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (51, 29, 11, '9047077722990011', 'member', 1, '2023-05-11 15:34:31', 0, NULL, NULL, NULL);
-INSERT INTO `sms_coupon_history` VALUES (52, 27, 11, '9075818288630011', 'member', 1, '2023-05-11 15:39:18', 0, NULL, NULL, NULL);
-
--- ----------------------------
--- Table structure for sms_coupon_product_category_relation
--- ----------------------------
-DROP TABLE IF EXISTS `sms_coupon_product_category_relation`;
-CREATE TABLE `sms_coupon_product_category_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `coupon_id` bigint(20) NULL DEFAULT NULL,
- `product_category_id` bigint(20) NULL DEFAULT NULL,
- `product_category_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '产品分类名称',
- `parent_category_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '父分类名称',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优惠券和产品分类关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_coupon_product_category_relation
--- ----------------------------
-INSERT INTO `sms_coupon_product_category_relation` VALUES (11, 28, 19, '手机通讯', '手机数码');
-
--- ----------------------------
--- Table structure for sms_coupon_product_relation
--- ----------------------------
-DROP TABLE IF EXISTS `sms_coupon_product_relation`;
-CREATE TABLE `sms_coupon_product_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `coupon_id` bigint(20) NULL DEFAULT NULL,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_name` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品名称',
- `product_sn` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品编码',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 23 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '优惠券和产品的关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_coupon_product_relation
--- ----------------------------
-INSERT INTO `sms_coupon_product_relation` VALUES (18, 29, 37, 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', '100038005189');
-INSERT INTO `sms_coupon_product_relation` VALUES (19, 29, 29, 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', '7437799');
-INSERT INTO `sms_coupon_product_relation` VALUES (21, 30, 41, 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量 墨羽 12GB+256GB 5G智能手机 小米 红米', '100035246702');
-INSERT INTO `sms_coupon_product_relation` VALUES (22, 30, 40, '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', '100027789721');
-
--- ----------------------------
--- Table structure for sms_flash_promotion
--- ----------------------------
-DROP TABLE IF EXISTS `sms_flash_promotion`;
-CREATE TABLE `sms_flash_promotion` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `title` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '秒杀时间段名称',
- `start_date` date NULL DEFAULT NULL COMMENT '开始日期',
- `end_date` date NULL DEFAULT NULL COMMENT '结束日期',
- `status` int(1) NULL DEFAULT NULL COMMENT '上下线状态',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 15 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '限时购表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_flash_promotion
--- ----------------------------
-INSERT INTO `sms_flash_promotion` VALUES (14, '双11特卖活动', '2022-11-09', '2023-12-31', 1, '2022-11-09 14:56:48');
-
--- ----------------------------
--- Table structure for sms_flash_promotion_log
--- ----------------------------
-DROP TABLE IF EXISTS `sms_flash_promotion_log`;
-CREATE TABLE `sms_flash_promotion_log` (
- `id` int(11) NOT NULL AUTO_INCREMENT,
- `member_id` int(11) NULL DEFAULT NULL,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `member_phone` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `product_name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `subscribe_time` datetime NULL DEFAULT NULL COMMENT '会员订阅时间',
- `send_time` datetime NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '限时购通知记录' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_flash_promotion_log
--- ----------------------------
-
--- ----------------------------
--- Table structure for sms_flash_promotion_product_relation
--- ----------------------------
-DROP TABLE IF EXISTS `sms_flash_promotion_product_relation`;
-CREATE TABLE `sms_flash_promotion_product_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
- `flash_promotion_id` bigint(20) NULL DEFAULT NULL,
- `flash_promotion_session_id` bigint(20) NULL DEFAULT NULL COMMENT '编号',
- `product_id` bigint(20) NULL DEFAULT NULL,
- `flash_promotion_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '限时购价格',
- `flash_promotion_count` int(11) NULL DEFAULT NULL COMMENT '限时购数量',
- `flash_promotion_limit` int(11) NULL DEFAULT NULL COMMENT '每人限购数量',
- `sort` int(11) NULL DEFAULT NULL COMMENT '排序',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 52 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品限时购与商品关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_flash_promotion_product_relation
--- ----------------------------
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (1, 2, 1, 26, 3000.00, 10, 1, 0);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (2, 2, 1, 27, 2000.00, 10, 1, 20);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (3, 2, 1, 28, 599.00, 19, 1, 0);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (4, 2, 1, 29, 4999.00, 10, 1, 100);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (9, 2, 2, 26, 2999.00, 100, 1, 0);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (10, 2, 2, 27, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (11, 2, 2, 28, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (12, 2, 2, 29, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (13, 2, 2, 30, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (14, 2, 3, 31, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (15, 2, 3, 32, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (16, 2, 4, 33, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (17, 2, 4, 34, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (18, 2, 5, 36, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (19, 2, 6, 33, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (20, 2, 6, 34, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (21, 14, 1, 26, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (22, 14, 1, 27, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (23, 14, 1, 28, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (24, 14, 1, 29, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (25, 14, 2, 30, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (26, 14, 2, 31, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (27, 14, 2, 32, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (28, 14, 2, 35, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (29, 14, 3, 33, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (30, 14, 3, 34, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (31, 14, 3, 36, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (32, 14, 3, 37, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (33, 14, 4, 37, 5699.00, 10, 1, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (34, 14, 4, 38, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (35, 14, 4, 39, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (36, 14, 4, 40, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (37, 14, 5, 41, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (38, 14, 5, 42, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (39, 14, 5, 43, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (40, 14, 5, 44, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (41, 14, 5, 45, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (42, 14, 6, 26, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (43, 14, 6, 27, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (44, 14, 6, 28, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (45, 14, 6, 29, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (46, 14, 6, 30, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (47, 14, 7, 31, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (48, 14, 7, 32, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (49, 14, 7, 33, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (50, 14, 7, 34, NULL, NULL, NULL, NULL);
-INSERT INTO `sms_flash_promotion_product_relation` VALUES (51, 14, 7, 35, NULL, NULL, NULL, NULL);
-
--- ----------------------------
--- Table structure for sms_flash_promotion_session
--- ----------------------------
-DROP TABLE IF EXISTS `sms_flash_promotion_session`;
-CREATE TABLE `sms_flash_promotion_session` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',
- `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '场次名称',
- `start_time` time NULL DEFAULT NULL COMMENT '每日开始时间',
- `end_time` time NULL DEFAULT NULL COMMENT '每日结束时间',
- `status` int(1) NULL DEFAULT NULL COMMENT '启用状态:0->不启用;1->启用',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '限时购场次表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_flash_promotion_session
--- ----------------------------
-INSERT INTO `sms_flash_promotion_session` VALUES (1, '8:00', '08:00:00', '10:00:00', 1, '2018-11-16 13:22:17');
-INSERT INTO `sms_flash_promotion_session` VALUES (2, '10:00', '10:00:00', '12:00:00', 1, '2018-11-16 13:22:34');
-INSERT INTO `sms_flash_promotion_session` VALUES (3, '12:00', '12:00:00', '14:00:00', 1, '2018-11-16 13:22:37');
-INSERT INTO `sms_flash_promotion_session` VALUES (4, '14:00', '14:00:00', '16:00:00', 1, '2018-11-16 13:22:41');
-INSERT INTO `sms_flash_promotion_session` VALUES (5, '16:00', '16:00:00', '18:00:00', 1, '2018-11-16 13:22:45');
-INSERT INTO `sms_flash_promotion_session` VALUES (6, '18:00', '18:00:00', '20:00:00', 1, '2018-11-16 13:21:34');
-INSERT INTO `sms_flash_promotion_session` VALUES (7, '20:00', '20:00:00', '22:00:00', 1, '2018-11-16 13:22:55');
-
--- ----------------------------
--- Table structure for sms_home_advertise
--- ----------------------------
-DROP TABLE IF EXISTS `sms_home_advertise`;
-CREATE TABLE `sms_home_advertise` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `type` int(1) NULL DEFAULT NULL COMMENT '轮播位置:0->PC首页轮播;1->app首页轮播',
- `pic` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `start_time` datetime NULL DEFAULT NULL,
- `end_time` datetime NULL DEFAULT NULL,
- `status` int(1) NULL DEFAULT NULL COMMENT '上下线状态:0->下线;1->上线',
- `click_count` int(11) NULL DEFAULT NULL COMMENT '点击数',
- `order_count` int(11) NULL DEFAULT NULL COMMENT '下单数',
- `url` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '链接地址',
- `note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注',
- `sort` int(11) NULL DEFAULT 0 COMMENT '排序',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 17 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '首页轮播广告表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_home_advertise
--- ----------------------------
-INSERT INTO `sms_home_advertise` VALUES (2, '夏季大热促销', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190525/ad1.jpg', '2018-11-01 14:01:37', '2018-11-15 14:01:37', 0, 0, 0, NULL, '夏季大热促销', 0);
-INSERT INTO `sms_home_advertise` VALUES (3, '夏季大热促销1', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190525/ad1.jpg', '2018-11-13 14:01:37', '2018-11-13 14:01:37', 0, 0, 0, NULL, '夏季大热促销1', 0);
-INSERT INTO `sms_home_advertise` VALUES (4, '夏季大热促销2', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190525/ad2.jpg', '2018-11-13 14:01:37', '2018-11-13 14:01:37', 0, 0, 0, NULL, '夏季大热促销2', 0);
-INSERT INTO `sms_home_advertise` VALUES (9, '电影推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20181113/movie_ad.jpg', '2018-11-01 00:00:00', '2018-11-24 00:00:00', 0, 0, 0, 'www.baidu.com', '电影推荐广告', 100);
-INSERT INTO `sms_home_advertise` VALUES (10, '汽车促销广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20181113/car_ad.jpg', '2018-11-13 00:00:00', '2018-11-24 00:00:00', 0, 0, 0, 'xxx', NULL, 99);
-INSERT INTO `sms_home_advertise` VALUES (11, '汽车推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20181113/car_ad2.jpg', '2018-11-13 00:00:00', '2018-11-30 00:00:00', 0, 0, 0, 'xxx', NULL, 98);
-INSERT INTO `sms_home_advertise` VALUES (12, '小米推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/xiaomi_banner_01.png', '2022-11-08 17:04:03', '2023-11-08 17:04:05', 1, 0, 0, '/pages/brand/brandDetail?id=6', NULL, 0);
-INSERT INTO `sms_home_advertise` VALUES (13, '华为推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/huawei_banner_01.png', '2022-11-08 17:10:27', '2023-11-08 17:10:28', 1, 0, 0, '/pages/brand/brandDetail?id=3', NULL, 0);
-INSERT INTO `sms_home_advertise` VALUES (14, '苹果推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/apple_banner_01.png', '2022-11-08 17:12:54', '2023-11-08 17:12:55', 1, 0, 0, '/pages/brand/brandDetail?id=51', NULL, 0);
-INSERT INTO `sms_home_advertise` VALUES (15, '三星推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_banner_01.png', '2022-11-08 17:15:38', '2023-11-08 17:15:39', 1, 0, 0, '/pages/brand/brandDetail?id=2', NULL, 0);
-INSERT INTO `sms_home_advertise` VALUES (16, 'OPPO推荐广告', 1, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_banner_01.png', '2022-11-08 17:20:10', '2023-11-08 17:20:11', 1, 0, 0, '/pages/brand/brandDetail?id=21', NULL, 0);
-
--- ----------------------------
--- Table structure for sms_home_brand
--- ----------------------------
-DROP TABLE IF EXISTS `sms_home_brand`;
-CREATE TABLE `sms_home_brand` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `brand_id` bigint(20) NULL DEFAULT NULL,
- `brand_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `recommend_status` int(1) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 48 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '首页推荐品牌表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_home_brand
--- ----------------------------
-INSERT INTO `sms_home_brand` VALUES (6, 6, '小米', 1, 300);
-INSERT INTO `sms_home_brand` VALUES (32, 50, '海澜之家', 1, 198);
-INSERT INTO `sms_home_brand` VALUES (33, 51, '苹果', 1, 199);
-INSERT INTO `sms_home_brand` VALUES (34, 2, '三星', 1, 195);
-INSERT INTO `sms_home_brand` VALUES (35, 3, '华为', 1, 200);
-INSERT INTO `sms_home_brand` VALUES (39, 21, 'OPPO', 1, 197);
-INSERT INTO `sms_home_brand` VALUES (45, 1, '万和', 1, 0);
-INSERT INTO `sms_home_brand` VALUES (46, 5, '方太', 1, 0);
-INSERT INTO `sms_home_brand` VALUES (47, 4, '格力', 1, 0);
-
--- ----------------------------
--- Table structure for sms_home_new_product
--- ----------------------------
-DROP TABLE IF EXISTS `sms_home_new_product`;
-CREATE TABLE `sms_home_new_product` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_name` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `recommend_status` int(1) NULL DEFAULT NULL,
- `sort` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 28 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '新鲜好物表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_home_new_product
--- ----------------------------
-INSERT INTO `sms_home_new_product` VALUES (19, 37, 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', 1, 197);
-INSERT INTO `sms_home_new_product` VALUES (20, 38, 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', 1, 0);
-INSERT INTO `sms_home_new_product` VALUES (21, 39, '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑(新R5-6600H标压 16G 512G win11)', 1, 198);
-INSERT INTO `sms_home_new_product` VALUES (22, 40, '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充 12GB+256GB 黑色 5G手机', 1, 200);
-INSERT INTO `sms_home_new_product` VALUES (23, 41, 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量 墨羽 12GB+256GB 5G智能手机 小米 红米', 1, 199);
-INSERT INTO `sms_home_new_product` VALUES (24, 42, 'HUAWEI Mate 50 直屏旗舰 超光变XMAGE影像 北斗卫星消息 低电量应急模式 128GB曜金黑华为鸿蒙手机', 1, 0);
-INSERT INTO `sms_home_new_product` VALUES (25, 44, '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议) 980(MZ-V8V500BW)', 1, 0);
-INSERT INTO `sms_home_new_product` VALUES (26, 45, 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄 3200万前置索尼镜头 5G手机', 1, 0);
-INSERT INTO `sms_home_new_product` VALUES (27, 43, '万和(Vanward)燃气热水器天然气家用四重防冻直流变频节能全新升级增压水伺服恒温高抗风 JSQ30-565W16【16升】【恒温旗舰款】', 1, 0);
-
--- ----------------------------
--- Table structure for sms_home_recommend_product
--- ----------------------------
-DROP TABLE IF EXISTS `sms_home_recommend_product`;
-CREATE TABLE `sms_home_recommend_product` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) NULL DEFAULT NULL,
- `product_name` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `recommend_status` int(1) NULL DEFAULT NULL,
- `sort` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 15 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '人气推荐商品表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_home_recommend_product
--- ----------------------------
-INSERT INTO `sms_home_recommend_product` VALUES (10, 38, 'Apple iPad 10.9英寸平板电脑 2022年款(64GB WLAN版/A14芯片/1200万像素/iPadOS MPQ03CH/A )', 1, 0);
-INSERT INTO `sms_home_recommend_product` VALUES (11, 39, '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑(新R5-6600H标压 16G 512G win11)', 1, 0);
-INSERT INTO `sms_home_recommend_product` VALUES (12, 44, '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议) 980(MZ-V8V500BW)', 1, 0);
-INSERT INTO `sms_home_recommend_product` VALUES (13, 43, '万和(Vanward)燃气热水器天然气家用四重防冻直流变频节能全新升级增压水伺服恒温高抗风 JSQ30-565W16【16升】【恒温旗舰款】', 1, 0);
-INSERT INTO `sms_home_recommend_product` VALUES (14, 45, 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄 3200万前置索尼镜头 5G手机', 1, 0);
-
--- ----------------------------
--- Table structure for sms_home_recommend_subject
--- ----------------------------
-DROP TABLE IF EXISTS `sms_home_recommend_subject`;
-CREATE TABLE `sms_home_recommend_subject` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `subject_id` bigint(20) NULL DEFAULT NULL,
- `subject_name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `recommend_status` int(1) NULL DEFAULT NULL,
- `sort` int(11) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '首页推荐专题表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of sms_home_recommend_subject
--- ----------------------------
-INSERT INTO `sms_home_recommend_subject` VALUES (14, 1, 'polo衬衫的也时尚', 1, 0);
-INSERT INTO `sms_home_recommend_subject` VALUES (15, 2, '大牌手机低价秒', 1, 0);
-INSERT INTO `sms_home_recommend_subject` VALUES (16, 3, '晓龙845新品上市', 1, 0);
-INSERT INTO `sms_home_recommend_subject` VALUES (17, 4, '夏天应该穿什么', 1, 0);
-INSERT INTO `sms_home_recommend_subject` VALUES (18, 5, '夏季精选', 1, 100);
-INSERT INTO `sms_home_recommend_subject` VALUES (19, 6, '品牌手机降价', 1, 0);
-
--- ----------------------------
--- Table structure for ums_admin
--- ----------------------------
-DROP TABLE IF EXISTS `ums_admin`;
-CREATE TABLE `ums_admin` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `password` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
- `email` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',
- `nick_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '昵称',
- `note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注信息',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `login_time` datetime NULL DEFAULT NULL COMMENT '最后登录时间',
- `status` int(1) NULL DEFAULT 1 COMMENT '帐号启用状态:0->禁用;1->启用',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_admin
--- ----------------------------
-INSERT INTO `ums_admin` VALUES (1, 'test', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_02.png', 'test@qq.com', '测试账号', NULL, '2018-09-29 13:55:30', '2018-09-29 13:55:39', 1);
-INSERT INTO `ums_admin` VALUES (3, 'admin', '$2a$10$.E1FokumK5GIXWgKlg.Hc.i/0/2.qdAwYFL1zc5QHdyzpXOr38RZO', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_01.png', 'admin@163.com', '系统管理员', '系统管理员', '2018-10-08 13:32:47', '2019-04-20 12:45:16', 1);
-INSERT INTO `ums_admin` VALUES (4, 'macro', '$2a$10$Bx4jZPR7GhEpIQfefDQtVeS58GfT5n6mxs/b4nLLK65eMFa16topa', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_01.png', 'macro@qq.com', 'macro', 'macro专用', '2019-10-06 15:53:51', '2020-02-03 14:55:55', 1);
-INSERT INTO `ums_admin` VALUES (6, 'productAdmin', '$2a$10$6/.J.p.6Bhn7ic4GfoB5D.pGd7xSiD1a9M6ht6yO0fxzlKJPjRAGm', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_03.png', 'product@qq.com', '商品管理员', '只有商品权限', '2020-02-07 16:15:08', NULL, 1);
-INSERT INTO `ums_admin` VALUES (7, 'orderAdmin', '$2a$10$UqEhA9UZXjHHA3B.L9wNG.6aerrBjC6WHTtbv1FdvYPUI.7lkL6E.', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_04.png', 'order@qq.com', '订单管理员', '只有订单管理权限', '2020-02-07 16:15:50', NULL, 1);
-INSERT INTO `ums_admin` VALUES (8, 'test123', '$2a$10$M1qJguEzwoAN0la7PB8UO.HOGe1xZGku7xw1iTaUUpY0ZVRCxrxoO', 'string', 'abc@qq.com', 'string', 'string', '2022-08-07 14:45:42', NULL, 1);
-INSERT INTO `ums_admin` VALUES (9, 'test256', '$2a$10$kTMBrt8mkXcO8T4eHThFWOf3KuNK6tqevkiAf4YbtXtaCJ6ocYkJa', 'string', 'abc@qq.com', 'string', 'string', '2022-08-07 14:52:57', NULL, 1);
-INSERT INTO `ums_admin` VALUES (10, 'test1267', '$2a$10$VUywDhXVPY13YZxMD/uPWeDqkzSozN7o8u/3MX6sBig2NK2VaTJZ2', NULL, 'test1267@qq.com', 'test1267', 'test1267', '2023-01-04 16:13:34', NULL, 1);
-
--- ----------------------------
--- Table structure for ums_admin_login_log
--- ----------------------------
-DROP TABLE IF EXISTS `ums_admin_login_log`;
-CREATE TABLE `ums_admin_login_log` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `admin_id` bigint(20) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `ip` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `address` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `user_agent` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '浏览器登录类型',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 413 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户登录日志表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_admin_login_log
--- ----------------------------
-INSERT INTO `ums_admin_login_log` VALUES (1, 3, '2018-12-23 14:27:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (2, 3, '2019-04-07 16:04:39', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (3, 3, '2019-04-08 21:47:52', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (4, 3, '2019-04-08 21:48:18', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (5, 3, '2019-04-18 22:18:40', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (6, 3, '2019-04-20 12:45:16', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (7, 3, '2019-05-19 14:52:12', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (8, 3, '2019-05-25 15:00:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (9, 3, '2019-06-19 20:11:42', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (10, 3, '2019-06-30 10:33:48', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (11, 3, '2019-06-30 10:34:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (12, 3, '2019-06-30 10:35:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (13, 3, '2019-07-27 17:11:01', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (14, 3, '2019-07-27 17:13:18', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (15, 3, '2019-07-27 17:15:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (16, 3, '2019-07-27 17:17:11', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (17, 3, '2019-07-27 17:18:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (18, 3, '2019-07-27 21:21:52', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (19, 3, '2019-07-27 21:34:29', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (20, 3, '2019-07-27 21:35:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (21, 3, '2019-07-27 21:35:48', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (22, 3, '2019-07-27 21:40:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (23, 3, '2019-08-18 16:00:38', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (24, 3, '2019-08-18 16:01:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (25, 3, '2019-08-18 16:47:01', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (26, 3, '2019-10-06 15:54:23', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (27, 3, '2019-10-06 16:03:28', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (28, 3, '2019-10-06 16:04:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (29, 3, '2019-10-06 16:06:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (30, 3, '2019-10-06 16:14:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (31, 1, '2019-10-06 16:15:09', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (32, 1, '2019-10-06 16:16:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (33, 3, '2019-10-06 16:16:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (34, 3, '2019-10-06 16:16:42', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (35, 3, '2019-10-07 15:20:48', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (36, 3, '2019-10-07 15:40:07', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (37, 3, '2019-10-07 16:34:15', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (38, 3, '2019-10-09 21:19:08', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (39, 4, '2019-10-09 21:30:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (40, 4, '2019-10-09 21:31:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (41, 4, '2019-10-09 21:32:39', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (42, 4, '2019-10-09 21:33:27', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (43, 4, '2019-10-09 21:33:50', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (44, 3, '2019-10-20 16:02:53', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (45, 3, '2019-10-23 21:20:55', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (46, 3, '2019-10-27 21:41:45', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (47, 3, '2019-11-09 16:44:57', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (48, 3, '2019-11-09 16:46:56', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (49, 3, '2019-11-09 16:49:55', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (50, 3, '2019-11-23 14:17:16', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (51, 6, '2019-11-23 14:52:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (52, 3, '2019-11-23 15:07:24', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (53, 3, '2019-11-30 21:25:30', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (54, 3, '2019-11-30 21:27:54', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (55, 3, '2019-12-28 15:23:01', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (56, 3, '2020-01-01 15:21:46', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (57, 3, '2020-01-04 16:00:54', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (58, 3, '2020-02-01 15:05:19', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (59, 3, '2020-02-01 15:36:05', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (60, 3, '2020-02-01 15:36:36', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (61, 3, '2020-02-01 15:37:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (62, 3, '2020-02-01 15:37:46', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (63, 3, '2020-02-01 15:38:20', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (64, 3, '2020-02-01 15:38:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (65, 3, '2020-02-01 15:39:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (66, 3, '2020-02-01 15:41:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (67, 3, '2020-02-01 15:43:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (68, 3, '2020-02-01 15:44:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (69, 3, '2020-02-01 15:45:10', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (70, 3, '2020-02-01 15:46:04', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (71, 3, '2020-02-01 15:48:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (72, 3, '2020-02-01 16:00:07', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (73, 3, '2020-02-01 16:07:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (74, 3, '2020-02-01 16:08:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (75, 3, '2020-02-02 15:28:13', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (76, 3, '2020-02-02 15:44:37', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (77, 3, '2020-02-02 15:45:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (78, 3, '2020-02-02 15:52:32', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (79, 3, '2020-02-02 15:53:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (80, 3, '2020-02-02 15:54:36', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (81, 3, '2020-02-02 16:01:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (82, 3, '2020-02-02 16:05:19', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (83, 3, '2020-02-02 16:06:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (84, 3, '2020-02-02 16:17:26', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (85, 3, '2020-02-02 16:18:45', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (86, 3, '2020-02-02 16:19:05', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (87, 3, '2020-02-02 16:19:23', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (88, 3, '2020-02-02 16:22:27', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (89, 3, '2020-02-02 16:23:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (90, 3, '2020-02-02 16:23:48', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (91, 3, '2020-02-02 16:24:38', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (92, 3, '2020-02-02 16:25:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (93, 3, '2020-02-02 16:26:19', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (94, 3, '2020-02-02 16:26:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (95, 3, '2020-02-02 16:27:08', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (96, 3, '2020-02-02 16:31:02', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (97, 3, '2020-02-02 16:31:08', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (98, 3, '2020-02-02 16:31:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (99, 3, '2020-02-02 16:31:50', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (100, 3, '2020-02-02 16:33:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (101, 3, '2020-02-02 16:33:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (102, 3, '2020-02-02 16:34:58', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (103, 3, '2020-02-02 16:38:42', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (104, 3, '2020-02-02 16:39:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (105, 3, '2020-02-02 16:42:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (106, 3, '2020-02-02 16:46:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (107, 3, '2020-02-02 16:50:23', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (108, 3, '2020-02-02 16:51:11', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (109, 3, '2020-02-02 16:51:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (110, 3, '2020-02-02 16:52:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (111, 3, '2020-02-02 17:01:05', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (112, 3, '2020-02-03 10:43:22', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (113, 3, '2020-02-03 10:45:29', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (114, 3, '2020-02-03 10:46:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (115, 3, '2020-02-03 10:54:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (116, 3, '2020-02-03 14:24:47', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (117, 3, '2020-02-03 14:25:38', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (118, 5, '2020-02-03 15:22:28', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (119, 5, '2020-02-03 15:23:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (120, 5, '2020-02-03 15:24:29', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (121, 3, '2020-02-03 15:24:50', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (122, 5, '2020-02-03 15:27:18', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (123, 3, '2020-02-03 15:27:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (124, 3, '2020-02-03 15:29:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (125, 5, '2020-02-03 15:33:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (126, 3, '2020-02-03 15:33:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (127, 1, '2020-02-03 15:34:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (128, 3, '2020-02-03 15:34:47', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (129, 3, '2020-02-04 14:14:46', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (130, 3, '2020-02-05 10:33:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (131, 3, '2020-02-05 10:36:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (132, 3, '2020-02-05 16:34:37', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (133, 4, '2020-02-05 16:58:37', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (134, 3, '2020-02-05 16:59:03', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (135, 3, '2020-02-06 10:25:02', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (136, 3, '2020-02-07 14:34:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (137, 3, '2020-02-07 14:36:20', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (138, 1, '2020-02-07 14:43:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (139, 3, '2020-02-07 15:18:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (140, 3, '2020-02-07 15:20:07', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (141, 3, '2020-02-07 15:22:20', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (142, 3, '2020-02-07 15:22:28', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (143, 3, '2020-02-07 15:55:11', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (144, 3, '2020-02-07 15:56:04', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (145, 3, '2020-02-07 15:58:49', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (146, 6, '2020-02-07 16:16:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (147, 7, '2020-02-07 16:16:37', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (148, 3, '2020-02-07 16:18:39', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (149, 7, '2020-02-07 16:20:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (150, 3, '2020-02-07 16:20:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (151, 3, '2020-02-07 16:32:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (152, 3, '2020-02-07 19:32:34', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (153, 3, '2020-02-07 19:32:48', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (154, 3, '2020-02-07 19:33:01', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (155, 3, '2020-02-07 19:33:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (156, 3, '2020-02-07 19:33:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (157, 3, '2020-02-07 19:35:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (158, 3, '2020-02-07 19:37:10', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (159, 3, '2020-02-07 19:37:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (160, 3, '2020-02-07 19:37:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (161, 3, '2020-02-07 19:45:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (162, 3, '2020-02-07 19:47:45', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (163, 3, '2020-02-07 20:02:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (164, 6, '2020-02-07 20:10:55', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (165, 6, '2020-02-07 20:11:02', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (166, 6, '2020-02-07 20:13:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (167, 6, '2020-02-07 20:17:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (168, 3, '2020-02-07 20:17:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (169, 6, '2020-02-07 20:18:13', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (170, 3, '2020-02-10 10:28:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (171, 3, '2020-02-10 10:45:15', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (172, 3, '2020-02-10 10:57:46', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (173, 3, '2020-02-10 10:59:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (174, 3, '2020-02-10 11:04:19', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (175, 3, '2020-02-10 11:05:55', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (176, 3, '2020-02-10 11:06:45', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (177, 3, '2020-02-10 11:07:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (178, 3, '2020-02-10 11:08:13', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (179, 3, '2020-02-10 11:10:02', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (180, 6, '2020-02-10 14:25:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (181, 6, '2020-02-10 14:29:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (182, 3, '2020-02-10 16:09:16', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (183, 3, '2020-02-20 14:39:19', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (184, 8, '2020-02-20 17:14:58', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (185, 8, '2020-02-20 17:17:04', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (186, 8, '2020-02-20 17:17:42', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (187, 8, '2020-02-21 10:26:56', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (188, 8, '2020-02-21 10:28:54', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (189, 8, '2020-02-21 10:32:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (190, 8, '2020-02-21 10:33:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (191, 8, '2020-02-21 10:35:58', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (192, 8, '2020-02-21 10:36:49', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (193, 3, '2020-02-21 11:10:11', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (194, 3, '2020-02-25 16:11:13', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (195, 3, '2020-02-25 16:46:29', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (196, 3, '2020-03-07 16:33:59', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (197, 6, '2020-03-07 16:35:38', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (198, 3, '2020-03-07 17:00:09', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (199, 3, '2020-03-14 14:32:08', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (200, 8, '2020-03-14 14:32:59', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (201, 3, '2020-03-14 14:33:26', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (202, 8, '2020-03-14 14:34:57', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (203, 3, '2020-03-14 14:35:23', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (204, 8, '2020-03-14 14:36:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (205, 3, '2020-03-14 14:36:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (206, 8, '2020-03-14 14:37:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (207, 3, '2020-03-14 14:37:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (208, 8, '2020-03-14 14:38:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (209, 3, '2020-03-14 14:38:50', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (210, 8, '2020-03-14 14:39:26', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (211, 3, '2020-03-14 14:39:41', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (212, 3, '2020-03-15 14:23:54', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (213, 3, '2020-03-22 14:33:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (214, 3, '2020-03-22 14:59:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (215, 3, '2020-03-22 15:04:32', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (216, 3, '2020-03-29 16:14:37', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (217, 3, '2020-03-29 17:17:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (218, 3, '2020-04-06 16:54:49', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (219, 3, '2020-04-12 15:01:40', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (220, 3, '2020-04-19 09:50:59', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (221, 3, '2020-05-04 10:45:45', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (222, 3, '2020-05-05 11:02:44', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (223, 3, '2020-05-16 15:17:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (224, 3, '2020-05-17 14:58:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (225, 3, '2020-05-18 15:47:46', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (226, 3, '2020-05-23 16:51:15', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (227, 3, '2020-05-23 16:54:53', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (228, 3, '2020-05-23 17:00:33', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (229, 3, '2020-05-24 10:38:00', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (230, 3, '2020-06-07 09:39:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (231, 3, '2020-06-14 14:23:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (232, 3, '2020-06-14 17:11:59', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (233, 3, '2020-06-20 14:53:51', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (234, 3, '2020-06-21 14:57:36', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (235, 3, '2020-06-27 10:41:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (236, 3, '2020-07-05 15:54:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (237, 3, '2020-07-11 10:40:28', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (238, 3, '2020-07-11 10:45:01', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (239, 3, '2020-07-19 11:00:16', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (240, 3, '2020-07-19 11:46:27', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (241, 3, '2020-07-19 11:53:47', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (242, 3, '2020-07-19 14:17:37', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (243, 3, '2020-07-19 14:44:24', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (244, 3, '2020-07-19 14:44:58', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (245, 3, '2020-07-19 14:48:27', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (246, 3, '2020-07-19 14:48:57', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (247, 3, '2020-07-19 14:49:30', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (248, 3, '2020-07-19 14:50:18', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (249, 3, '2020-07-19 14:51:51', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (250, 3, '2020-07-19 14:55:27', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (251, 3, '2020-07-19 14:58:14', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (252, 6, '2020-07-19 15:04:21', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (253, 3, '2020-07-19 15:38:49', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (254, 6, '2020-07-19 16:26:24', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (255, 3, '2020-08-08 10:39:12', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (256, 3, '2020-08-09 11:06:31', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (257, 3, '2020-08-10 20:41:30', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (258, 3, '2020-08-15 10:12:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (259, 1, '2020-08-19 21:23:59', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (260, 1, '2020-08-19 21:25:06', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (261, 3, '2020-09-05 16:14:50', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (262, 3, '2020-09-05 16:15:37', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (263, 3, '2020-09-12 16:07:35', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (264, 6, '2020-09-12 16:08:14', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (265, 1, '2020-09-12 16:08:26', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (266, 6, '2020-09-12 16:09:08', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (267, 1, '2020-09-12 16:09:17', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (268, 3, '2020-09-13 14:22:25', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (269, 3, '2020-09-13 14:23:07', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (270, 3, '2020-09-13 14:24:21', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (271, 3, '2020-09-13 14:32:32', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (272, 1, '2020-09-19 15:43:31', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (273, 3, '2020-09-19 15:43:58', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (274, 3, '2020-09-19 15:49:44', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (275, 6, '2020-09-19 15:50:12', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (276, 6, '2020-09-19 15:50:18', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (277, 1, '2020-09-19 15:50:41', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (278, 6, '2020-09-19 15:52:28', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (279, 1, '2020-09-19 15:53:01', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (280, 1, '2020-09-19 15:53:48', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (281, 6, '2020-09-19 15:54:37', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (282, 3, '2020-09-20 11:13:50', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (283, 1, '2020-10-08 14:26:58', '0:0:0:0:0:0:0:1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (284, 1, '2020-10-08 14:30:49', '192.168.3.185', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (285, 3, '2021-04-11 10:27:43', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (286, 1, '2021-04-11 10:29:19', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (287, 3, '2021-04-11 10:30:40', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (288, 3, '2021-04-11 10:37:50', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (289, 3, '2021-12-08 10:44:09', '192.168.3.4', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (290, 3, '2022-04-15 15:04:51', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (291, 1, '2022-05-10 15:25:58', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (292, 1, '2022-05-10 15:31:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (293, 1, '2022-05-10 15:32:18', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (294, 1, '2022-05-10 15:34:17', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (295, 1, '2022-05-10 15:34:38', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (296, 1, '2022-05-10 15:54:50', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (297, 1, '2022-05-10 16:31:20', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (298, 1, '2022-05-10 16:33:45', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (299, 1, '2022-05-10 16:39:07', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (300, 1, '2022-05-18 14:53:41', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (301, 3, '2022-06-07 17:28:29', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (302, 3, '2022-06-08 09:48:32', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (303, 3, '2022-06-08 10:34:20', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (304, 3, '2022-06-08 17:09:29', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (305, 3, '2022-06-08 17:10:11', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (306, 6, '2022-06-08 17:10:55', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (307, 3, '2022-06-08 17:23:05', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (308, 3, '2022-06-08 17:30:51', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (309, 3, '2022-06-08 17:31:42', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (310, 3, '2022-06-08 17:31:48', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (311, 3, '2022-06-08 21:03:56', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (312, 3, '2022-06-09 10:41:31', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (313, 3, '2022-06-09 15:18:46', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (314, 3, '2022-06-10 15:43:15', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (315, 3, '2022-06-10 15:52:27', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (316, 3, '2022-06-15 14:41:59', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (317, 3, '2022-06-23 16:24:09', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (318, 3, '2022-06-23 16:41:33', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (319, 3, '2022-06-23 16:42:50', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (320, 3, '2022-06-23 16:42:51', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (321, 3, '2022-06-23 16:42:52', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (322, 3, '2022-06-23 16:42:53', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (323, 3, '2022-06-23 16:43:07', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (324, 3, '2022-06-23 16:44:56', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (325, 3, '2022-06-23 16:45:42', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (326, 3, '2022-06-23 16:50:08', '192.168.3.6', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (327, 3, '2022-06-24 15:19:04', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (328, 3, '2022-06-24 15:25:52', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (329, 3, '2022-06-24 15:40:29', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (330, 3, '2022-06-25 15:13:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (331, 3, '2022-06-25 15:25:12', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (332, 3, '2022-06-27 16:38:37', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (333, 3, '2022-07-24 10:10:06', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (334, 1, '2022-07-25 17:15:55', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (335, 3, '2022-07-27 09:41:32', '192.168.3.227', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (336, 1, '2022-07-28 16:56:10', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (337, 1, '2022-07-28 16:56:25', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (338, 8, '2022-08-07 14:46:00', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (339, 9, '2022-08-07 14:53:32', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (340, 9, '2022-08-07 14:53:46', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (341, 9, '2022-08-07 14:56:19', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (342, 1, '2022-08-09 10:53:55', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (343, 1, '2022-08-09 10:54:36', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (344, 1, '2022-08-09 11:00:06', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (345, 1, '2022-08-09 11:02:04', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (346, 1, '2022-08-09 15:48:14', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (347, 1, '2022-08-16 16:35:24', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (348, 1, '2022-08-17 15:03:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (349, 1, '2022-08-20 16:49:19', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (350, 1, '2022-08-23 14:54:06', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (351, 1, '2022-08-31 17:16:35', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (352, 3, '2022-10-14 15:31:42', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (353, 3, '2022-10-14 15:42:39', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (354, 3, '2022-10-14 15:44:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (355, 3, '2022-10-14 15:46:23', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (356, 3, '2022-10-14 15:46:35', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (357, 3, '2022-10-14 16:06:11', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (358, 3, '2022-10-14 16:24:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (359, 3, '2022-10-17 16:44:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (360, 3, '2022-10-17 16:49:42', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (361, 3, '2022-10-17 16:49:53', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (362, 3, '2022-10-17 17:03:10', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (363, 3, '2022-10-17 17:03:22', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (364, 3, '2022-10-17 21:00:48', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (365, 3, '2022-10-24 16:32:31', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (366, 3, '2022-10-26 16:31:17', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (367, 3, '2022-10-26 16:50:48', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (368, 3, '2022-10-26 16:52:28', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (369, 3, '2022-10-27 17:21:28', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (370, 3, '2022-10-28 10:52:22', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (371, 3, '2022-11-04 16:09:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (372, 3, '2022-11-08 10:27:27', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (373, 3, '2022-11-09 10:42:30', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (374, 3, '2022-11-10 15:03:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (375, 3, '2022-11-11 10:11:11', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (376, 3, '2022-11-14 16:33:30', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (377, 3, '2022-11-15 10:54:02', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (378, 3, '2022-11-15 15:16:35', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (379, 3, '2022-11-15 15:17:41', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (380, 3, '2022-11-15 15:17:47', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (381, 1, '2022-11-15 15:19:56', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (382, 3, '2022-11-15 15:20:12', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (383, 3, '2022-11-15 15:22:22', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (384, 3, '2022-11-16 10:39:08', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (385, 1, '2022-11-24 20:02:12', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (386, 3, '2022-11-28 15:24:02', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (387, 3, '2022-11-30 09:34:28', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (388, 3, '2022-12-05 09:43:58', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (389, 3, '2022-12-09 17:18:09', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (390, 3, '2022-12-15 14:53:39', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (391, 3, '2022-12-15 16:11:54', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (392, 3, '2022-12-20 15:55:18', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (393, 3, '2022-12-21 14:49:30', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (394, 3, '2022-12-23 09:49:50', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (395, 3, '2023-01-04 10:17:44', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (396, 3, '2023-01-04 15:28:47', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (397, 3, '2023-01-05 10:13:43', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (398, 3, '2023-01-06 09:49:23', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (399, 3, '2023-01-06 10:04:19', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (400, 3, '2023-01-06 10:07:06', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (401, 3, '2023-01-06 16:21:31', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (402, 3, '2023-01-09 16:50:30', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (403, 3, '2023-01-10 10:05:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (404, 3, '2023-01-10 17:09:44', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (405, 3, '2023-01-11 10:17:17', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (406, 3, '2023-01-13 09:35:37', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (407, 3, '2023-01-13 09:40:51', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (408, 3, '2023-01-31 10:46:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (409, 3, '2023-02-08 17:11:11', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (410, 3, '2023-02-09 15:46:41', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (411, 3, '2023-02-10 17:23:52', '192.168.56.1', NULL, NULL);
-INSERT INTO `ums_admin_login_log` VALUES (412, 3, '2023-05-11 15:29:54', '192.168.56.1', NULL, NULL);
-
--- ----------------------------
--- Table structure for ums_admin_permission_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_admin_permission_relation`;
-CREATE TABLE `ums_admin_permission_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `admin_id` bigint(20) NULL DEFAULT NULL,
- `permission_id` bigint(20) NULL DEFAULT NULL,
- `type` int(1) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户和权限关系表(除角色中定义的权限以外的加减权限)' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_admin_permission_relation
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_admin_role_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_admin_role_relation`;
-CREATE TABLE `ums_admin_role_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `admin_id` bigint(20) NULL DEFAULT NULL,
- `role_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 32 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户和角色关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_admin_role_relation
--- ----------------------------
-INSERT INTO `ums_admin_role_relation` VALUES (26, 3, 5);
-INSERT INTO `ums_admin_role_relation` VALUES (27, 6, 1);
-INSERT INTO `ums_admin_role_relation` VALUES (28, 7, 2);
-INSERT INTO `ums_admin_role_relation` VALUES (29, 1, 5);
-INSERT INTO `ums_admin_role_relation` VALUES (30, 4, 5);
-INSERT INTO `ums_admin_role_relation` VALUES (31, 8, 1);
-
--- ----------------------------
--- Table structure for ums_growth_change_history
--- ----------------------------
-DROP TABLE IF EXISTS `ums_growth_change_history`;
-CREATE TABLE `ums_growth_change_history` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `change_type` int(1) NULL DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',
- `change_count` int(11) NULL DEFAULT NULL COMMENT '积分改变数量',
- `operate_man` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作人员',
- `operate_note` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作备注',
- `source_type` int(1) NULL DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '成长值变化历史记录表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_growth_change_history
--- ----------------------------
-INSERT INTO `ums_growth_change_history` VALUES (1, 1, '2018-08-29 17:16:35', 0, 1000, 'test', '测试使用', 1);
-
--- ----------------------------
--- Table structure for ums_integration_change_history
--- ----------------------------
-DROP TABLE IF EXISTS `ums_integration_change_history`;
-CREATE TABLE `ums_integration_change_history` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `change_type` int(1) NULL DEFAULT NULL COMMENT '改变类型:0->增加;1->减少',
- `change_count` int(11) NULL DEFAULT NULL COMMENT '积分改变数量',
- `operate_man` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作人员',
- `operate_note` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '操作备注',
- `source_type` int(1) NULL DEFAULT NULL COMMENT '积分来源:0->购物;1->管理员修改',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '积分变化历史记录表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_integration_change_history
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_integration_consume_setting
--- ----------------------------
-DROP TABLE IF EXISTS `ums_integration_consume_setting`;
-CREATE TABLE `ums_integration_consume_setting` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `deduction_per_amount` int(11) NULL DEFAULT NULL COMMENT '每一元需要抵扣的积分数量',
- `max_percent_per_order` int(11) NULL DEFAULT NULL COMMENT '每笔订单最高抵用百分比',
- `use_unit` int(11) NULL DEFAULT NULL COMMENT '每次使用积分最小单位100',
- `coupon_status` int(1) NULL DEFAULT NULL COMMENT '是否可以和优惠券同用;0->不可以;1->可以',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '积分消费设置' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_integration_consume_setting
--- ----------------------------
-INSERT INTO `ums_integration_consume_setting` VALUES (1, 100, 50, 100, 1);
-
--- ----------------------------
--- Table structure for ums_member
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member`;
-CREATE TABLE `ums_member` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_level_id` bigint(20) NULL DEFAULT NULL,
- `username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名',
- `password` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '密码',
- `nickname` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '昵称',
- `phone` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '手机号码',
- `status` int(1) NULL DEFAULT NULL COMMENT '帐号启用状态:0->禁用;1->启用',
- `create_time` datetime NULL DEFAULT NULL COMMENT '注册时间',
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
- `gender` int(1) NULL DEFAULT NULL COMMENT '性别:0->未知;1->男;2->女',
- `birthday` date NULL DEFAULT NULL COMMENT '生日',
- `city` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '所做城市',
- `job` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '职业',
- `personalized_signature` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '个性签名',
- `source_type` int(1) NULL DEFAULT NULL COMMENT '用户来源',
- `integration` int(11) NULL DEFAULT NULL COMMENT '积分',
- `growth` int(11) NULL DEFAULT NULL COMMENT '成长值',
- `luckey_count` int(11) NULL DEFAULT NULL COMMENT '剩余抽奖次数',
- `history_integration` int(11) NULL DEFAULT NULL COMMENT '历史积分数量',
- PRIMARY KEY (`id`) USING BTREE,
- UNIQUE INDEX `idx_username`(`username`) USING BTREE,
- UNIQUE INDEX `idx_phone`(`phone`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member
--- ----------------------------
-INSERT INTO `ums_member` VALUES (1, 4, 'test', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'test', '18061581849', 1, '2018-08-02 10:35:44', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_03.png', 1, '2009-06-01', '上海', '学生', 'test', NULL, 3900, 1000, NULL, NULL);
-INSERT INTO `ums_member` VALUES (3, 4, 'windy', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'windy', '18061581848', 1, '2018-08-03 16:46:38', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (4, 4, 'zhengsan', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'zhengsan', '18061581847', 1, '2018-11-12 14:12:04', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (5, 4, 'lisi', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'lisi', '18061581841', 1, '2018-11-12 14:12:38', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (6, 4, 'wangwu', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'wangwu', '18061581842', 1, '2018-11-12 14:13:09', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (7, 4, 'lion', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'lion', '18061581845', 1, '2018-11-12 14:21:39', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (8, 4, 'shari', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'shari', '18061581844', 1, '2018-11-12 14:22:00', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (9, 4, 'aewen', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'aewen', '18061581843', 1, '2018-11-12 14:22:55', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (10, 4, 'guest', '$2a$10$WQiD4RzEs1iJVWU.2HVu8OdSlExJHWKmwndaw3SUfMyqfKZmXe1vq', NULL, '18911111111', 1, '2020-03-14 14:52:18', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
-INSERT INTO `ums_member` VALUES (11, 4, 'member', '$2a$10$Q08uzqvtPj61NnpYQZsVvOnyilJ3AU4VdngAcJFGvPhEeqhhC.hhS', 'member', '18961511111', 1, '2023-05-11 15:22:38', 'https://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/icon/github_icon_02.png', 1, '2009-06-01', '上海', '学生', 'member', NULL, 5000, 1000, NULL, NULL);
-
--- ----------------------------
--- Table structure for ums_member_level
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_level`;
-CREATE TABLE `ums_member_level` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `growth_point` int(11) NULL DEFAULT NULL,
- `default_status` int(1) NULL DEFAULT NULL COMMENT '是否为默认等级:0->不是;1->是',
- `free_freight_point` decimal(10, 2) NULL DEFAULT NULL COMMENT '免运费标准',
- `comment_growth_point` int(11) NULL DEFAULT NULL COMMENT '每次评价获取的成长值',
- `priviledge_free_freight` int(1) NULL DEFAULT NULL COMMENT '是否有免邮特权',
- `priviledge_sign_in` int(1) NULL DEFAULT NULL COMMENT '是否有签到特权',
- `priviledge_comment` int(1) NULL DEFAULT NULL COMMENT '是否有评论获奖励特权',
- `priviledge_promotion` int(1) NULL DEFAULT NULL COMMENT '是否有专享活动特权',
- `priviledge_member_price` int(1) NULL DEFAULT NULL COMMENT '是否有会员价格特权',
- `priviledge_birthday` int(1) NULL DEFAULT NULL COMMENT '是否有生日特权',
- `note` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员等级表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_level
--- ----------------------------
-INSERT INTO `ums_member_level` VALUES (1, '黄金会员', 1000, 0, 199.00, 5, 1, 1, 1, 1, 1, 1, NULL);
-INSERT INTO `ums_member_level` VALUES (2, '白金会员', 5000, 0, 99.00, 10, 1, 1, 1, 1, 1, 1, NULL);
-INSERT INTO `ums_member_level` VALUES (3, '钻石会员', 15000, 0, 69.00, 15, 1, 1, 1, 1, 1, 1, NULL);
-INSERT INTO `ums_member_level` VALUES (4, '普通会员', 1, 1, 199.00, 20, 1, 1, 1, 1, 0, 0, NULL);
-
--- ----------------------------
--- Table structure for ums_member_login_log
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_login_log`;
-CREATE TABLE `ums_member_login_log` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `create_time` datetime NULL DEFAULT NULL,
- `ip` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `city` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `login_type` int(1) NULL DEFAULT NULL COMMENT '登录类型:0->PC;1->android;2->ios;3->小程序',
- `province` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员登录记录' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_login_log
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_member_tag_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_member_tag_relation`;
-CREATE TABLE `ums_member_member_tag_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `tag_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用户和标签关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_member_tag_relation
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_product_category_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_product_category_relation`;
-CREATE TABLE `ums_member_product_category_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `product_category_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员与产品分类关系表(用户喜欢的分类)' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_product_category_relation
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_receive_address
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_receive_address`;
-CREATE TABLE `ums_member_receive_address` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '收货人名称',
- `phone_number` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `default_status` int(1) NULL DEFAULT NULL COMMENT '是否为默认',
- `post_code` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮政编码',
- `province` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '省份/直辖市',
- `city` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '城市',
- `region` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '区',
- `detail_address` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '详细地址(街道)',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员收货地址表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_receive_address
--- ----------------------------
-INSERT INTO `ums_member_receive_address` VALUES (1, 1, '大梨', '18033441849', 0, '518000', '广东省', '深圳市', '南山区', '科兴科学园');
-INSERT INTO `ums_member_receive_address` VALUES (3, 1, '大梨', '18033441849', 0, '518000', '广东省', '深圳市', '福田区', '清水河街道');
-INSERT INTO `ums_member_receive_address` VALUES (4, 1, '大梨', '18033441849', 1, '518000', '广东省', '深圳市', '福田区', '东晓街道');
-INSERT INTO `ums_member_receive_address` VALUES (5, 11, '小李', '18961511111', 1, '518000', '广东省', '深圳市', '福田区', '东晓街道');
-INSERT INTO `ums_member_receive_address` VALUES (6, 11, '小李', '18961511111', NULL, '518000', '广东省', '深圳市', '福田区', '清水河街道');
-
--- ----------------------------
--- Table structure for ums_member_rule_setting
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_rule_setting`;
-CREATE TABLE `ums_member_rule_setting` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `continue_sign_day` int(11) NULL DEFAULT NULL COMMENT '连续签到天数',
- `continue_sign_point` int(11) NULL DEFAULT NULL COMMENT '连续签到赠送数量',
- `consume_per_point` decimal(10, 2) NULL DEFAULT NULL COMMENT '每消费多少元获取1个点',
- `low_order_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '最低获取点数的订单金额',
- `max_point_per_order` int(11) NULL DEFAULT NULL COMMENT '每笔订单最高获取点数',
- `type` int(1) NULL DEFAULT NULL COMMENT '类型:0->积分规则;1->成长值规则',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员积分成长规则表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_rule_setting
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_statistics_info
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_statistics_info`;
-CREATE TABLE `ums_member_statistics_info` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `member_id` bigint(20) NULL DEFAULT NULL,
- `consume_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '累计消费金额',
- `order_count` int(11) NULL DEFAULT NULL COMMENT '订单数量',
- `coupon_count` int(11) NULL DEFAULT NULL COMMENT '优惠券数量',
- `comment_count` int(11) NULL DEFAULT NULL COMMENT '评价数',
- `return_order_count` int(11) NULL DEFAULT NULL COMMENT '退货数量',
- `login_count` int(11) NULL DEFAULT NULL COMMENT '登录次数',
- `attend_count` int(11) NULL DEFAULT NULL COMMENT '关注数量',
- `fans_count` int(11) NULL DEFAULT NULL COMMENT '粉丝数量',
- `collect_product_count` int(11) NULL DEFAULT NULL,
- `collect_subject_count` int(11) NULL DEFAULT NULL,
- `collect_topic_count` int(11) NULL DEFAULT NULL,
- `collect_comment_count` int(11) NULL DEFAULT NULL,
- `invite_friend_count` int(11) NULL DEFAULT NULL,
- `recent_order_time` datetime NULL DEFAULT NULL COMMENT '最后一次下订单时间',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员统计信息' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_statistics_info
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_tag
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_tag`;
-CREATE TABLE `ums_member_tag` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `finish_order_count` int(11) NULL DEFAULT NULL COMMENT '自动打标签完成订单数量',
- `finish_order_amount` decimal(10, 2) NULL DEFAULT NULL COMMENT '自动打标签完成订单金额',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '用户标签表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_tag
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_member_task
--- ----------------------------
-DROP TABLE IF EXISTS `ums_member_task`;
-CREATE TABLE `ums_member_task` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
- `growth` int(11) NULL DEFAULT NULL COMMENT '赠送成长值',
- `intergration` int(11) NULL DEFAULT NULL COMMENT '赠送积分',
- `type` int(1) NULL DEFAULT NULL COMMENT '任务类型:0->新手任务;1->日常任务',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '会员任务表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_member_task
--- ----------------------------
-
--- ----------------------------
--- Table structure for ums_menu
--- ----------------------------
-DROP TABLE IF EXISTS `ums_menu`;
-CREATE TABLE `ums_menu` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `parent_id` bigint(20) NULL DEFAULT NULL COMMENT '父级ID',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `title` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '菜单名称',
- `level` int(4) NULL DEFAULT NULL COMMENT '菜单级数',
- `sort` int(4) NULL DEFAULT NULL COMMENT '菜单排序',
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '前端名称',
- `icon` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '前端图标',
- `hidden` int(1) NULL DEFAULT NULL COMMENT '前端隐藏',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台菜单表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_menu
--- ----------------------------
-INSERT INTO `ums_menu` VALUES (1, 0, '2020-02-02 14:50:36', '商品', 0, 0, 'pms', 'product', 0);
-INSERT INTO `ums_menu` VALUES (2, 1, '2020-02-02 14:51:50', '商品列表', 1, 0, 'product', 'product-list', 0);
-INSERT INTO `ums_menu` VALUES (3, 1, '2020-02-02 14:52:44', '添加商品', 1, 0, 'addProduct', 'product-add', 0);
-INSERT INTO `ums_menu` VALUES (4, 1, '2020-02-02 14:53:51', '商品分类', 1, 0, 'productCate', 'product-cate', 0);
-INSERT INTO `ums_menu` VALUES (5, 1, '2020-02-02 14:54:51', '商品类型', 1, 0, 'productAttr', 'product-attr', 0);
-INSERT INTO `ums_menu` VALUES (6, 1, '2020-02-02 14:56:29', '品牌管理', 1, 0, 'brand', 'product-brand', 0);
-INSERT INTO `ums_menu` VALUES (7, 0, '2020-02-02 16:54:07', '订单', 0, 0, 'oms', 'order', 0);
-INSERT INTO `ums_menu` VALUES (8, 7, '2020-02-02 16:55:18', '订单列表', 1, 0, 'order', 'product-list', 0);
-INSERT INTO `ums_menu` VALUES (9, 7, '2020-02-02 16:56:46', '订单设置', 1, 0, 'orderSetting', 'order-setting', 0);
-INSERT INTO `ums_menu` VALUES (10, 7, '2020-02-02 16:57:39', '退货申请处理', 1, 0, 'returnApply', 'order-return', 0);
-INSERT INTO `ums_menu` VALUES (11, 7, '2020-02-02 16:59:40', '退货原因设置', 1, 0, 'returnReason', 'order-return-reason', 0);
-INSERT INTO `ums_menu` VALUES (12, 0, '2020-02-04 16:18:00', '营销', 0, 0, 'sms', 'sms', 0);
-INSERT INTO `ums_menu` VALUES (13, 12, '2020-02-04 16:19:22', '秒杀活动列表', 1, 0, 'flash', 'sms-flash', 0);
-INSERT INTO `ums_menu` VALUES (14, 12, '2020-02-04 16:20:16', '优惠券列表', 1, 0, 'coupon', 'sms-coupon', 0);
-INSERT INTO `ums_menu` VALUES (16, 12, '2020-02-07 16:22:38', '品牌推荐', 1, 0, 'homeBrand', 'product-brand', 0);
-INSERT INTO `ums_menu` VALUES (17, 12, '2020-02-07 16:23:14', '新品推荐', 1, 0, 'homeNew', 'sms-new', 0);
-INSERT INTO `ums_menu` VALUES (18, 12, '2020-02-07 16:26:38', '人气推荐', 1, 0, 'homeHot', 'sms-hot', 0);
-INSERT INTO `ums_menu` VALUES (19, 12, '2020-02-07 16:28:16', '专题推荐', 1, 0, 'homeSubject', 'sms-subject', 0);
-INSERT INTO `ums_menu` VALUES (20, 12, '2020-02-07 16:28:42', '广告列表', 1, 0, 'homeAdvertise', 'sms-ad', 0);
-INSERT INTO `ums_menu` VALUES (21, 0, '2020-02-07 16:29:13', '权限', 0, 0, 'ums', 'ums', 0);
-INSERT INTO `ums_menu` VALUES (22, 21, '2020-02-07 16:29:51', '用户列表', 1, 0, 'admin', 'ums-admin', 0);
-INSERT INTO `ums_menu` VALUES (23, 21, '2020-02-07 16:30:13', '角色列表', 1, 0, 'role', 'ums-role', 0);
-INSERT INTO `ums_menu` VALUES (24, 21, '2020-02-07 16:30:53', '菜单列表', 1, 0, 'menu', 'ums-menu', 0);
-INSERT INTO `ums_menu` VALUES (25, 21, '2020-02-07 16:31:13', '资源列表', 1, 0, 'resource', 'ums-resource', 0);
-
--- ----------------------------
--- Table structure for ums_permission
--- ----------------------------
-DROP TABLE IF EXISTS `ums_permission`;
-CREATE TABLE `ums_permission` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `pid` bigint(20) NULL DEFAULT NULL COMMENT '父级权限id',
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '名称',
- `value` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '权限值',
- `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '图标',
- `type` int(1) NULL DEFAULT NULL COMMENT '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',
- `uri` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '前端资源路径',
- `status` int(1) NULL DEFAULT NULL COMMENT '启用状态;0->禁用;1->启用',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `sort` int(11) NULL DEFAULT NULL COMMENT '排序',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 19 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户权限表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_permission
--- ----------------------------
-INSERT INTO `ums_permission` VALUES (1, 0, '商品', NULL, NULL, 0, NULL, 1, '2018-09-29 16:15:14', 0);
-INSERT INTO `ums_permission` VALUES (2, 1, '商品列表', 'pms:product:read', NULL, 1, '/pms/product/index', 1, '2018-09-29 16:17:01', 0);
-INSERT INTO `ums_permission` VALUES (3, 1, '添加商品', 'pms:product:create', NULL, 1, '/pms/product/add', 1, '2018-09-29 16:18:51', 0);
-INSERT INTO `ums_permission` VALUES (4, 1, '商品分类', 'pms:productCategory:read', NULL, 1, '/pms/productCate/index', 1, '2018-09-29 16:23:07', 0);
-INSERT INTO `ums_permission` VALUES (5, 1, '商品类型', 'pms:productAttribute:read', NULL, 1, '/pms/productAttr/index', 1, '2018-09-29 16:24:43', 0);
-INSERT INTO `ums_permission` VALUES (6, 1, '品牌管理', 'pms:brand:read', NULL, 1, '/pms/brand/index', 1, '2018-09-29 16:25:45', 0);
-INSERT INTO `ums_permission` VALUES (7, 2, '编辑商品', 'pms:product:update', NULL, 2, '/pms/product/updateProduct', 1, '2018-09-29 16:34:23', 0);
-INSERT INTO `ums_permission` VALUES (8, 2, '删除商品', 'pms:product:delete', NULL, 2, '/pms/product/delete', 1, '2018-09-29 16:38:33', 0);
-INSERT INTO `ums_permission` VALUES (9, 4, '添加商品分类', 'pms:productCategory:create', NULL, 2, '/pms/productCate/create', 1, '2018-09-29 16:43:23', 0);
-INSERT INTO `ums_permission` VALUES (10, 4, '修改商品分类', 'pms:productCategory:update', NULL, 2, '/pms/productCate/update', 1, '2018-09-29 16:43:55', 0);
-INSERT INTO `ums_permission` VALUES (11, 4, '删除商品分类', 'pms:productCategory:delete', NULL, 2, '/pms/productAttr/delete', 1, '2018-09-29 16:44:38', 0);
-INSERT INTO `ums_permission` VALUES (12, 5, '添加商品类型', 'pms:productAttribute:create', NULL, 2, '/pms/productAttr/create', 1, '2018-09-29 16:45:25', 0);
-INSERT INTO `ums_permission` VALUES (13, 5, '修改商品类型', 'pms:productAttribute:update', NULL, 2, '/pms/productAttr/update', 1, '2018-09-29 16:48:08', 0);
-INSERT INTO `ums_permission` VALUES (14, 5, '删除商品类型', 'pms:productAttribute:delete', NULL, 2, '/pms/productAttr/delete', 1, '2018-09-29 16:48:44', 0);
-INSERT INTO `ums_permission` VALUES (15, 6, '添加品牌', 'pms:brand:create', NULL, 2, '/pms/brand/add', 1, '2018-09-29 16:49:34', 0);
-INSERT INTO `ums_permission` VALUES (16, 6, '修改品牌', 'pms:brand:update', NULL, 2, '/pms/brand/update', 1, '2018-09-29 16:50:55', 0);
-INSERT INTO `ums_permission` VALUES (17, 6, '删除品牌', 'pms:brand:delete', NULL, 2, '/pms/brand/delete', 1, '2018-09-29 16:50:59', 0);
-INSERT INTO `ums_permission` VALUES (18, 0, '首页', NULL, NULL, 0, NULL, 1, '2018-09-29 16:51:57', 0);
-
--- ----------------------------
--- Table structure for ums_resource
--- ----------------------------
-DROP TABLE IF EXISTS `ums_resource`;
-CREATE TABLE `ums_resource` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '资源名称',
- `url` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '资源URL',
- `description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
- `category_id` bigint(20) NULL DEFAULT NULL COMMENT '资源分类ID',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 33 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台资源表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_resource
--- ----------------------------
-INSERT INTO `ums_resource` VALUES (1, '2020-02-04 17:04:55', '商品品牌管理', '/brand/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (2, '2020-02-04 17:05:35', '商品属性分类管理', '/productAttribute/category/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (3, '2020-02-04 17:06:13', '商品属性管理', '/productAttribute/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (4, '2020-02-04 17:07:15', '商品分类管理', '/productCategory/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (5, '2020-02-04 17:09:16', '商品管理', '/product/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (6, '2020-02-04 17:09:53', '商品库存管理', '/sku/**', NULL, 1);
-INSERT INTO `ums_resource` VALUES (8, '2020-02-05 14:43:37', '订单管理', '/order/**', '', 2);
-INSERT INTO `ums_resource` VALUES (9, '2020-02-05 14:44:22', ' 订单退货申请管理', '/returnApply/**', '', 2);
-INSERT INTO `ums_resource` VALUES (10, '2020-02-05 14:45:08', '退货原因管理', '/returnReason/**', '', 2);
-INSERT INTO `ums_resource` VALUES (11, '2020-02-05 14:45:43', '订单设置管理', '/orderSetting/**', '', 2);
-INSERT INTO `ums_resource` VALUES (12, '2020-02-05 14:46:23', '收货地址管理', '/companyAddress/**', '', 2);
-INSERT INTO `ums_resource` VALUES (13, '2020-02-07 16:37:22', '优惠券管理', '/coupon/**', '', 3);
-INSERT INTO `ums_resource` VALUES (14, '2020-02-07 16:37:59', '优惠券领取记录管理', '/couponHistory/**', '', 3);
-INSERT INTO `ums_resource` VALUES (15, '2020-02-07 16:38:28', '限时购活动管理', '/flash/**', '', 3);
-INSERT INTO `ums_resource` VALUES (16, '2020-02-07 16:38:59', '限时购商品关系管理', '/flashProductRelation/**', '', 3);
-INSERT INTO `ums_resource` VALUES (17, '2020-02-07 16:39:22', '限时购场次管理', '/flashSession/**', '', 3);
-INSERT INTO `ums_resource` VALUES (18, '2020-02-07 16:40:07', '首页轮播广告管理', '/home/advertise/**', '', 3);
-INSERT INTO `ums_resource` VALUES (19, '2020-02-07 16:40:34', '首页品牌管理', '/home/brand/**', '', 3);
-INSERT INTO `ums_resource` VALUES (20, '2020-02-07 16:41:06', '首页新品管理', '/home/newProduct/**', '', 3);
-INSERT INTO `ums_resource` VALUES (21, '2020-02-07 16:42:16', '首页人气推荐管理', '/home/recommendProduct/**', '', 3);
-INSERT INTO `ums_resource` VALUES (22, '2020-02-07 16:42:48', '首页专题推荐管理', '/home/recommendSubject/**', '', 3);
-INSERT INTO `ums_resource` VALUES (23, '2020-02-07 16:44:56', ' 商品优选管理', '/prefrenceArea/**', '', 5);
-INSERT INTO `ums_resource` VALUES (24, '2020-02-07 16:45:39', '商品专题管理', '/subject/**', '', 5);
-INSERT INTO `ums_resource` VALUES (25, '2020-02-07 16:47:34', '后台用户管理', '/admin/**', '', 4);
-INSERT INTO `ums_resource` VALUES (26, '2020-02-07 16:48:24', '后台用户角色管理', '/role/**', '', 4);
-INSERT INTO `ums_resource` VALUES (27, '2020-02-07 16:48:48', '后台菜单管理', '/menu/**', '', 4);
-INSERT INTO `ums_resource` VALUES (28, '2020-02-07 16:49:18', '后台资源分类管理', '/resourceCategory/**', '', 4);
-INSERT INTO `ums_resource` VALUES (29, '2020-02-07 16:49:45', '后台资源管理', '/resource/**', '', 4);
-INSERT INTO `ums_resource` VALUES (30, '2020-09-19 15:47:57', '会员等级管理', '/memberLevel/**', '', 7);
-INSERT INTO `ums_resource` VALUES (31, '2020-09-19 15:51:29', '获取登录用户信息', '/admin/info', '用户登录必配', 4);
-INSERT INTO `ums_resource` VALUES (32, '2020-09-19 15:53:34', '用户登出', '/admin/logout', '用户登出必配', 4);
-
--- ----------------------------
--- Table structure for ums_resource_category
--- ----------------------------
-DROP TABLE IF EXISTS `ums_resource_category`;
-CREATE TABLE `ums_resource_category` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类名称',
- `sort` int(4) NULL DEFAULT NULL COMMENT '排序',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 8 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '资源分类表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_resource_category
--- ----------------------------
-INSERT INTO `ums_resource_category` VALUES (1, '2020-02-05 10:21:44', '商品模块', 0);
-INSERT INTO `ums_resource_category` VALUES (2, '2020-02-05 10:22:34', '订单模块', 0);
-INSERT INTO `ums_resource_category` VALUES (3, '2020-02-05 10:22:48', '营销模块', 0);
-INSERT INTO `ums_resource_category` VALUES (4, '2020-02-05 10:23:04', '权限模块', 0);
-INSERT INTO `ums_resource_category` VALUES (5, '2020-02-07 16:34:27', '内容模块', 0);
-INSERT INTO `ums_resource_category` VALUES (7, '2020-09-19 15:49:08', '其他模块', 0);
-
--- ----------------------------
--- Table structure for ums_role
--- ----------------------------
-DROP TABLE IF EXISTS `ums_role`;
-CREATE TABLE `ums_role` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '名称',
- `description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
- `admin_count` int(11) NULL DEFAULT NULL COMMENT '后台用户数量',
- `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
- `status` int(1) NULL DEFAULT 1 COMMENT '启用状态:0->禁用;1->启用',
- `sort` int(11) NULL DEFAULT 0,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 6 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户角色表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_role
--- ----------------------------
-INSERT INTO `ums_role` VALUES (1, '商品管理员', '只能查看及操作商品', 0, '2020-02-03 16:50:37', 1, 0);
-INSERT INTO `ums_role` VALUES (2, '订单管理员', '只能查看及操作订单', 0, '2018-09-30 15:53:45', 1, 0);
-INSERT INTO `ums_role` VALUES (5, '超级管理员', '拥有所有查看和操作功能', 0, '2020-02-02 15:11:05', 1, 0);
-
--- ----------------------------
--- Table structure for ums_role_menu_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_role_menu_relation`;
-CREATE TABLE `ums_role_menu_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `role_id` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
- `menu_id` bigint(20) NULL DEFAULT NULL COMMENT '菜单ID',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 127 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台角色菜单关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_role_menu_relation
--- ----------------------------
-INSERT INTO `ums_role_menu_relation` VALUES (53, 2, 7);
-INSERT INTO `ums_role_menu_relation` VALUES (54, 2, 8);
-INSERT INTO `ums_role_menu_relation` VALUES (55, 2, 9);
-INSERT INTO `ums_role_menu_relation` VALUES (56, 2, 10);
-INSERT INTO `ums_role_menu_relation` VALUES (57, 2, 11);
-INSERT INTO `ums_role_menu_relation` VALUES (72, 5, 1);
-INSERT INTO `ums_role_menu_relation` VALUES (73, 5, 2);
-INSERT INTO `ums_role_menu_relation` VALUES (74, 5, 3);
-INSERT INTO `ums_role_menu_relation` VALUES (75, 5, 4);
-INSERT INTO `ums_role_menu_relation` VALUES (76, 5, 5);
-INSERT INTO `ums_role_menu_relation` VALUES (77, 5, 6);
-INSERT INTO `ums_role_menu_relation` VALUES (78, 5, 7);
-INSERT INTO `ums_role_menu_relation` VALUES (79, 5, 8);
-INSERT INTO `ums_role_menu_relation` VALUES (80, 5, 9);
-INSERT INTO `ums_role_menu_relation` VALUES (81, 5, 10);
-INSERT INTO `ums_role_menu_relation` VALUES (82, 5, 11);
-INSERT INTO `ums_role_menu_relation` VALUES (83, 5, 12);
-INSERT INTO `ums_role_menu_relation` VALUES (84, 5, 13);
-INSERT INTO `ums_role_menu_relation` VALUES (85, 5, 14);
-INSERT INTO `ums_role_menu_relation` VALUES (86, 5, 16);
-INSERT INTO `ums_role_menu_relation` VALUES (87, 5, 17);
-INSERT INTO `ums_role_menu_relation` VALUES (88, 5, 18);
-INSERT INTO `ums_role_menu_relation` VALUES (89, 5, 19);
-INSERT INTO `ums_role_menu_relation` VALUES (90, 5, 20);
-INSERT INTO `ums_role_menu_relation` VALUES (91, 5, 21);
-INSERT INTO `ums_role_menu_relation` VALUES (92, 5, 22);
-INSERT INTO `ums_role_menu_relation` VALUES (93, 5, 23);
-INSERT INTO `ums_role_menu_relation` VALUES (94, 5, 24);
-INSERT INTO `ums_role_menu_relation` VALUES (95, 5, 25);
-INSERT INTO `ums_role_menu_relation` VALUES (121, 1, 1);
-INSERT INTO `ums_role_menu_relation` VALUES (122, 1, 2);
-INSERT INTO `ums_role_menu_relation` VALUES (123, 1, 3);
-INSERT INTO `ums_role_menu_relation` VALUES (124, 1, 4);
-INSERT INTO `ums_role_menu_relation` VALUES (125, 1, 5);
-INSERT INTO `ums_role_menu_relation` VALUES (126, 1, 6);
-
--- ----------------------------
--- Table structure for ums_role_permission_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_role_permission_relation`;
-CREATE TABLE `ums_role_permission_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `role_id` bigint(20) NULL DEFAULT NULL,
- `permission_id` bigint(20) NULL DEFAULT NULL,
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户角色和权限关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_role_permission_relation
--- ----------------------------
-INSERT INTO `ums_role_permission_relation` VALUES (1, 1, 1);
-INSERT INTO `ums_role_permission_relation` VALUES (2, 1, 2);
-INSERT INTO `ums_role_permission_relation` VALUES (3, 1, 3);
-INSERT INTO `ums_role_permission_relation` VALUES (4, 1, 7);
-INSERT INTO `ums_role_permission_relation` VALUES (5, 1, 8);
-INSERT INTO `ums_role_permission_relation` VALUES (6, 2, 4);
-INSERT INTO `ums_role_permission_relation` VALUES (7, 2, 9);
-INSERT INTO `ums_role_permission_relation` VALUES (8, 2, 10);
-INSERT INTO `ums_role_permission_relation` VALUES (9, 2, 11);
-INSERT INTO `ums_role_permission_relation` VALUES (10, 3, 5);
-INSERT INTO `ums_role_permission_relation` VALUES (11, 3, 12);
-INSERT INTO `ums_role_permission_relation` VALUES (12, 3, 13);
-INSERT INTO `ums_role_permission_relation` VALUES (13, 3, 14);
-INSERT INTO `ums_role_permission_relation` VALUES (14, 4, 6);
-INSERT INTO `ums_role_permission_relation` VALUES (15, 4, 15);
-INSERT INTO `ums_role_permission_relation` VALUES (16, 4, 16);
-INSERT INTO `ums_role_permission_relation` VALUES (17, 4, 17);
-
--- ----------------------------
--- Table structure for ums_role_resource_relation
--- ----------------------------
-DROP TABLE IF EXISTS `ums_role_resource_relation`;
-CREATE TABLE `ums_role_resource_relation` (
- `id` bigint(20) NOT NULL AUTO_INCREMENT,
- `role_id` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
- `resource_id` bigint(20) NULL DEFAULT NULL COMMENT '资源ID',
- PRIMARY KEY (`id`) USING BTREE
-) ENGINE = InnoDB AUTO_INCREMENT = 249 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台角色资源关系表' ROW_FORMAT = DYNAMIC;
-
--- ----------------------------
--- Records of ums_role_resource_relation
--- ----------------------------
-INSERT INTO `ums_role_resource_relation` VALUES (194, 5, 1);
-INSERT INTO `ums_role_resource_relation` VALUES (195, 5, 2);
-INSERT INTO `ums_role_resource_relation` VALUES (196, 5, 3);
-INSERT INTO `ums_role_resource_relation` VALUES (197, 5, 4);
-INSERT INTO `ums_role_resource_relation` VALUES (198, 5, 5);
-INSERT INTO `ums_role_resource_relation` VALUES (199, 5, 6);
-INSERT INTO `ums_role_resource_relation` VALUES (200, 5, 8);
-INSERT INTO `ums_role_resource_relation` VALUES (201, 5, 9);
-INSERT INTO `ums_role_resource_relation` VALUES (202, 5, 10);
-INSERT INTO `ums_role_resource_relation` VALUES (203, 5, 11);
-INSERT INTO `ums_role_resource_relation` VALUES (204, 5, 12);
-INSERT INTO `ums_role_resource_relation` VALUES (205, 5, 13);
-INSERT INTO `ums_role_resource_relation` VALUES (206, 5, 14);
-INSERT INTO `ums_role_resource_relation` VALUES (207, 5, 15);
-INSERT INTO `ums_role_resource_relation` VALUES (208, 5, 16);
-INSERT INTO `ums_role_resource_relation` VALUES (209, 5, 17);
-INSERT INTO `ums_role_resource_relation` VALUES (210, 5, 18);
-INSERT INTO `ums_role_resource_relation` VALUES (211, 5, 19);
-INSERT INTO `ums_role_resource_relation` VALUES (212, 5, 20);
-INSERT INTO `ums_role_resource_relation` VALUES (213, 5, 21);
-INSERT INTO `ums_role_resource_relation` VALUES (214, 5, 22);
-INSERT INTO `ums_role_resource_relation` VALUES (215, 5, 23);
-INSERT INTO `ums_role_resource_relation` VALUES (216, 5, 24);
-INSERT INTO `ums_role_resource_relation` VALUES (217, 5, 25);
-INSERT INTO `ums_role_resource_relation` VALUES (218, 5, 26);
-INSERT INTO `ums_role_resource_relation` VALUES (219, 5, 27);
-INSERT INTO `ums_role_resource_relation` VALUES (220, 5, 28);
-INSERT INTO `ums_role_resource_relation` VALUES (221, 5, 29);
-INSERT INTO `ums_role_resource_relation` VALUES (222, 5, 30);
-INSERT INTO `ums_role_resource_relation` VALUES (232, 2, 8);
-INSERT INTO `ums_role_resource_relation` VALUES (233, 2, 9);
-INSERT INTO `ums_role_resource_relation` VALUES (234, 2, 10);
-INSERT INTO `ums_role_resource_relation` VALUES (235, 2, 11);
-INSERT INTO `ums_role_resource_relation` VALUES (236, 2, 12);
-INSERT INTO `ums_role_resource_relation` VALUES (237, 2, 31);
-INSERT INTO `ums_role_resource_relation` VALUES (238, 2, 32);
-INSERT INTO `ums_role_resource_relation` VALUES (239, 1, 1);
-INSERT INTO `ums_role_resource_relation` VALUES (240, 1, 2);
-INSERT INTO `ums_role_resource_relation` VALUES (241, 1, 3);
-INSERT INTO `ums_role_resource_relation` VALUES (242, 1, 4);
-INSERT INTO `ums_role_resource_relation` VALUES (243, 1, 5);
-INSERT INTO `ums_role_resource_relation` VALUES (244, 1, 6);
-INSERT INTO `ums_role_resource_relation` VALUES (245, 1, 23);
-INSERT INTO `ums_role_resource_relation` VALUES (246, 1, 24);
-INSERT INTO `ums_role_resource_relation` VALUES (247, 1, 31);
-INSERT INTO `ums_role_resource_relation` VALUES (248, 1, 32);
-
-SET FOREIGN_KEY_CHECKS = 1;
diff --git a/document/sql/mall_tiny.sql b/document/sql/mall_tiny.sql
index 17f6a4db..b9bb0af8 100644
--- a/document/sql/mall_tiny.sql
+++ b/document/sql/mall_tiny.sql
@@ -1,507 +1,738 @@
/*
-Navicat MySQL Data Transfer
+ Navicat Premium Data Transfer
-Source Server : localhost
-Source Server Version : 50719
-Source Host : localhost:3306
-Source Database : mall_tiny
+ Source Server : localhost
+ Source Server Type : MySQL
+ Source Server Version : 50719
+ Source Host : localhost:3306
+ Source Schema : mall_tiny
-Target Server Type : MYSQL
-Target Server Version : 50719
-File Encoding : 65001
+ Target Server Type : MySQL
+ Target Server Version : 50719
+ File Encoding : 65001
-Date: 2019-08-04 15:31:57
+ Date: 08/12/2022 16:02:33
*/
-SET FOREIGN_KEY_CHECKS=0;
+SET NAMES utf8mb4;
+SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for pms_brand
-- ----------------------------
DROP TABLE IF EXISTS `pms_brand`;
-CREATE TABLE `pms_brand` (
+CREATE TABLE `pms_brand` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) DEFAULT NULL,
- `first_letter` varchar(8) DEFAULT NULL COMMENT '首字母',
- `sort` int(11) DEFAULT NULL,
- `factory_status` int(1) DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',
- `show_status` int(1) DEFAULT NULL,
- `product_count` int(11) DEFAULT NULL COMMENT '产品数量',
- `product_comment_count` int(11) DEFAULT NULL COMMENT '产品评论数量',
- `logo` varchar(255) DEFAULT NULL COMMENT '品牌logo',
- `big_pic` varchar(255) DEFAULT NULL COMMENT '专区大图',
- `brand_story` text COMMENT '品牌故事',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COMMENT='品牌表';
+ `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `first_letter` varchar(8) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '首字母',
+ `sort` int(11) NULL DEFAULT NULL,
+ `factory_status` int(1) NULL DEFAULT NULL COMMENT '是否为品牌制造商:0->不是;1->是',
+ `show_status` int(1) NULL DEFAULT NULL,
+ `product_count` int(11) NULL DEFAULT NULL COMMENT '产品数量',
+ `product_comment_count` int(11) NULL DEFAULT NULL COMMENT '产品评论数量',
+ `logo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '品牌logo',
+ `big_pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '专区大图',
+ `brand_story` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '品牌故事',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 60 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '品牌表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of pms_brand
-- ----------------------------
-INSERT INTO `pms_brand` VALUES ('1', '万和', 'W', '0', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg(5).jpg', '', 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES ('2', '三星', 'S', '100', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (1).jpg', null, '三星的故事');
-INSERT INTO `pms_brand` VALUES ('3', '华为', 'H', '100', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/17f2dd9756d9d333bee8e60ce8c03e4c_222_222.jpg', null, 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES ('4', '格力', 'G', '30', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/dc794e7e74121272bbe3ce9bc41ec8c3_222_222.jpg', null, 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES ('5', '方太', 'F', '20', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (4).jpg', null, 'Victoria\'s Secret的故事');
-INSERT INTO `pms_brand` VALUES ('6', '小米', 'M', '500', '1', '1', '100', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/1e34aef2a409119018a4c6258e39ecfb_222_222.png', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180518/5afd7778Nf7800b75.jpg', '小米手机的故事');
-INSERT INTO `pms_brand` VALUES ('21', 'OPPO', 'O', '0', '1', '1', '88', '500', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg(6).jpg', '', 'string');
-INSERT INTO `pms_brand` VALUES ('49', '七匹狼', 'S', '200', '1', '1', '77', '400', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/18d8bc3eb13533fab466d702a0d3fd1f40345bcd.jpg', null, 'BOOB的故事');
-INSERT INTO `pms_brand` VALUES ('50', '海澜之家', 'H', '200', '1', '1', '66', '300', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/99d3279f1029d32b929343b09d3c72de_222_222.jpg', '', '海澜之家的故事');
-INSERT INTO `pms_brand` VALUES ('51', '苹果', 'A', '200', '1', '1', '55', '200', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg.jpg', null, '苹果的故事');
-INSERT INTO `pms_brand` VALUES ('58', 'NIKE', 'N', '0', '1', '1', '33', '100', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/timg (51).jpg', '', 'NIKE的故事');
+INSERT INTO `pms_brand` VALUES (1, '万和', 'W', 0, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5b07ca8aN4e127d2f.jpg', 'http://img13.360buyimg.com/cms/jfs/t1/121860/35/2430/187800/5ec4e294E22f3ffcc/1e233b65b94ba192.jpg', '万和成立于1993年8月,总部位于广东顺德国家级高新技术开发区内,是国内生产规模最大的燃气具专业制造企业,也是中国燃气具发展战略的首倡者和推动者、中国五金制品协会燃气用具分会第三届理事长单位。');
+INSERT INTO `pms_brand` VALUES (2, '三星', 'S', 100, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/57201b47N7bf15715.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_banner_01.png', '三星集团(英文:SAMSUNG、韩文:삼성)是韩国最大的跨国企业集团,三星集团包括众多的国际下属企业,旗下子公司有:三星电子、三星物产、三星人寿保险等,业务涉及电子、金融、机械、化学等众多领域。');
+INSERT INTO `pms_brand` VALUES (3, '华为', 'H', 100, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5abf6f26N31658aa2.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/huawei_banner_01.png', '荣耀品牌成立于2013年,是华为旗下手机双品牌之一。荣耀以“创新、品质、服务”为核心战略,为全球年轻人提供潮酷的全场景智能化体验,打造年轻人向往的先锋文化和潮流生活方式');
+INSERT INTO `pms_brand` VALUES (4, '格力', 'G', 30, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (3).jpg', NULL, 'Victoria\'s Secret的故事');
+INSERT INTO `pms_brand` VALUES (5, '方太', 'F', 20, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg (4).jpg', NULL, 'Victoria\'s Secret的故事');
+INSERT INTO `pms_brand` VALUES (6, '小米', 'M', 500, 1, 1, 100, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5565f5a2N0b8169ae.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/xiaomi_banner_01.png', '小米公司正式成立于2010年4月,是一家专注于高端智能手机、互联网电视自主研发的创新型科技企业。主要由前谷歌、微软、摩托、金山等知名公司的顶尖人才组建。');
+INSERT INTO `pms_brand` VALUES (21, 'OPPO', 'O', 0, 1, 1, 88, 500, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg(6).jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_banner_01.png', 'OPPO于2008年推出第一款“笑脸手机”,由此开启探索和引领至美科技之旅。今天,OPPO凭借以Find和R系列手机为核心的智能终端产品,以及OPPO+等互联网服务,让全球消费者尽享至美科技。');
+INSERT INTO `pms_brand` VALUES (49, '七匹狼', 'S', 200, 1, 1, 77, 400, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190525/qipilang.png', NULL, 'BOOB的故事');
+INSERT INTO `pms_brand` VALUES (50, '海澜之家', 'H', 200, 1, 1, 66, 300, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/5a5c69b9N5d6c5696.jpg', 'http://img10.360buyimg.com/cms/jfs/t1/133148/4/1605/470028/5edaf5ccEd7a687a9/e0a007631361ff75.jpg', '“海澜之家”(英文缩写:HLA)是海澜之家股份有限公司旗下的服装品牌,总部位于中国江苏省无锡市江阴市,主要采用连锁零售的模式,销售男性服装、配饰与相关产品。');
+INSERT INTO `pms_brand` VALUES (51, '苹果', 'A', 200, 1, 1, 55, 200, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20200607/49b30bb0377030d1.jpg', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/apple_banner_01.png', '苹果公司(Apple Inc. )是美国的一家高科技公司。 由史蒂夫·乔布斯、斯蒂夫·沃兹尼亚克和罗·韦恩(Ron Wayne)等人于1976年4月1日创立,并命名为美国苹果电脑公司(Apple Computer Inc. ),2007年1月9日更名为苹果公司,总部位于加利福尼亚州的...');
+INSERT INTO `pms_brand` VALUES (58, 'NIKE', 'N', 0, 1, 0, 33, 100, 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/timg (51).jpg', '', 'NIKE的故事');
+INSERT INTO `pms_brand` VALUES (59, '测试品牌', 'C', 0, 0, 0, NULL, NULL, 'http://localhost:9000/mall/20220609/Snipaste_2022-06-08_14-35-53.png', 'http://localhost:9000/mall/20220609/biji_05.jpg', '12345');
-- ----------------------------
-- Table structure for pms_product
-- ----------------------------
DROP TABLE IF EXISTS `pms_product`;
-CREATE TABLE `pms_product` (
+CREATE TABLE `pms_product` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `brand_id` bigint(20) DEFAULT NULL,
- `product_category_id` bigint(20) DEFAULT NULL,
- `feight_template_id` bigint(20) DEFAULT NULL,
- `product_attribute_category_id` bigint(20) DEFAULT NULL,
- `name` varchar(64) NOT NULL,
- `pic` varchar(255) DEFAULT NULL,
- `product_sn` varchar(64) NOT NULL COMMENT '货号',
- `delete_status` int(1) DEFAULT NULL COMMENT '删除状态:0->未删除;1->已删除',
- `publish_status` int(1) DEFAULT NULL COMMENT '上架状态:0->下架;1->上架',
- `new_status` int(1) DEFAULT NULL COMMENT '新品状态:0->不是新品;1->新品',
- `recommand_status` int(1) DEFAULT NULL COMMENT '推荐状态;0->不推荐;1->推荐',
- `verify_status` int(1) DEFAULT NULL COMMENT '审核状态:0->未审核;1->审核通过',
- `sort` int(11) DEFAULT NULL COMMENT '排序',
- `sale` int(11) DEFAULT NULL COMMENT '销量',
- `price` decimal(10,2) DEFAULT NULL,
- `promotion_price` decimal(10,2) DEFAULT NULL COMMENT '促销价格',
- `gift_growth` int(11) DEFAULT '0' COMMENT '赠送的成长值',
- `gift_point` int(11) DEFAULT '0' COMMENT '赠送的积分',
- `use_point_limit` int(11) DEFAULT NULL COMMENT '限制使用的积分数',
- `sub_title` varchar(255) DEFAULT NULL COMMENT '副标题',
- `description` text COMMENT '商品描述',
- `original_price` decimal(10,2) DEFAULT NULL COMMENT '市场价',
- `stock` int(11) DEFAULT NULL COMMENT '库存',
- `low_stock` int(11) DEFAULT NULL COMMENT '库存预警值',
- `unit` varchar(16) DEFAULT NULL COMMENT '单位',
- `weight` decimal(10,2) DEFAULT NULL COMMENT '商品重量,默认为克',
- `preview_status` int(1) DEFAULT NULL COMMENT '是否为预告商品:0->不是;1->是',
- `service_ids` varchar(64) DEFAULT NULL COMMENT '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',
- `keywords` varchar(255) DEFAULT NULL,
- `note` varchar(255) DEFAULT NULL,
- `album_pics` varchar(255) DEFAULT NULL COMMENT '画册图片,连产品图片限制为5张,以逗号分割',
- `detail_title` varchar(255) DEFAULT NULL,
- `detail_desc` text,
- `detail_html` text COMMENT '产品详情网页内容',
- `detail_mobile_html` text COMMENT '移动端网页详情',
- `promotion_start_time` datetime DEFAULT NULL COMMENT '促销开始时间',
- `promotion_end_time` datetime DEFAULT NULL COMMENT '促销结束时间',
- `promotion_per_limit` int(11) DEFAULT NULL COMMENT '活动限购数量',
- `promotion_type` int(1) DEFAULT NULL COMMENT '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',
- `brand_name` varchar(255) DEFAULT NULL COMMENT '品牌名称',
- `product_category_name` varchar(255) DEFAULT NULL COMMENT '商品分类名称',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=37 DEFAULT CHARSET=utf8 COMMENT='商品信息';
+ `brand_id` bigint(20) NULL DEFAULT NULL,
+ `product_category_id` bigint(20) NULL DEFAULT NULL,
+ `feight_template_id` bigint(20) NULL DEFAULT NULL,
+ `product_attribute_category_id` bigint(20) NULL DEFAULT NULL,
+ `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
+ `pic` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `product_sn` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '货号',
+ `delete_status` int(1) NULL DEFAULT NULL COMMENT '删除状态:0->未删除;1->已删除',
+ `publish_status` int(1) NULL DEFAULT NULL COMMENT '上架状态:0->下架;1->上架',
+ `new_status` int(1) NULL DEFAULT NULL COMMENT '新品状态:0->不是新品;1->新品',
+ `recommand_status` int(1) NULL DEFAULT NULL COMMENT '推荐状态;0->不推荐;1->推荐',
+ `verify_status` int(1) NULL DEFAULT NULL COMMENT '审核状态:0->未审核;1->审核通过',
+ `sort` int(11) NULL DEFAULT NULL COMMENT '排序',
+ `sale` int(11) NULL DEFAULT NULL COMMENT '销量',
+ `price` decimal(10, 2) NULL DEFAULT NULL,
+ `promotion_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '促销价格',
+ `gift_growth` int(11) NULL DEFAULT 0 COMMENT '赠送的成长值',
+ `gift_point` int(11) NULL DEFAULT 0 COMMENT '赠送的积分',
+ `use_point_limit` int(11) NULL DEFAULT NULL COMMENT '限制使用的积分数',
+ `sub_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '副标题',
+ `description` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '商品描述',
+ `original_price` decimal(10, 2) NULL DEFAULT NULL COMMENT '市场价',
+ `stock` int(11) NULL DEFAULT NULL COMMENT '库存',
+ `low_stock` int(11) NULL DEFAULT NULL COMMENT '库存预警值',
+ `unit` varchar(16) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '单位',
+ `weight` decimal(10, 2) NULL DEFAULT NULL COMMENT '商品重量,默认为克',
+ `preview_status` int(1) NULL DEFAULT NULL COMMENT '是否为预告商品:0->不是;1->是',
+ `service_ids` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '以逗号分割的产品服务:1->无忧退货;2->快速退款;3->免费包邮',
+ `keywords` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `note` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `album_pics` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '画册图片,连产品图片限制为5张,以逗号分割',
+ `detail_title` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `detail_desc` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL,
+ `detail_html` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '产品详情网页内容',
+ `detail_mobile_html` text CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '移动端网页详情',
+ `promotion_start_time` datetime NULL DEFAULT NULL COMMENT '促销开始时间',
+ `promotion_end_time` datetime NULL DEFAULT NULL COMMENT '促销结束时间',
+ `promotion_per_limit` int(11) NULL DEFAULT NULL COMMENT '活动限购数量',
+ `promotion_type` int(1) NULL DEFAULT NULL COMMENT '促销类型:0->没有促销使用原价;1->使用促销价;2->使用会员价;3->使用阶梯价格;4->使用满减价格;5->限时购',
+ `brand_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '品牌名称',
+ `product_category_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '商品分类名称',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 46 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品信息' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of pms_product
-- ----------------------------
-INSERT INTO `pms_product` VALUES ('1', '49', '7', '0', '0', '银色星芒刺绣网纱底裤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '1', '1', '1', '1', '100', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, null, null, '0', '七匹狼', '外套');
-INSERT INTO `pms_product` VALUES ('2', '49', '7', '0', '0', '银色星芒刺绣网纱底裤2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86578', '1', '1', '1', '1', '1', '1', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤2', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤
', '银色星芒刺绣网纱底裤
', null, null, null, '0', '七匹狼', '外套');
-INSERT INTO `pms_product` VALUES ('3', '1', '7', '0', '0', '银色星芒刺绣网纱底裤3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86579', '1', '1', '1', '1', '1', '1', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤3', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, null, null, '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('4', '1', '7', '0', '0', '银色星芒刺绣网纱底裤4', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86580', '1', '1', '1', '1', '1', '1', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤4', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, null, null, '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('5', '1', '7', '0', '0', '银色星芒刺绣网纱底裤5', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86581', '1', '0', '1', '1', '1', '1', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤5', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, null, null, '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('6', '1', '7', '0', '0', '银色星芒刺绣网纱底裤6', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86582', '1', '1', '1', '1', '1', '1', '0', '100.00', null, '0', '100', null, '111', '111', '120.00', '100', '20', '件', '1000.00', '0', null, '银色星芒刺绣网纱底裤6', '银色星芒刺绣网纱底裤', null, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', null, null, null, '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('7', '1', '7', '0', '1', '女式超柔软拉毛运动开衫', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '0', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('8', '1', '7', '0', '1', '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '0', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('9', '1', '7', '0', '1', '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '0', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('10', '1', '7', '0', '1', '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '0', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('11', '1', '7', '0', '1', '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '1', '0', '1', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('12', '1', '7', '0', '1', '女式超柔软拉毛运动开衫2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '1', '0', '1', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('13', '1', '7', '0', '1', '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '1', '0', '1', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('14', '1', '7', '0', '1', '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '1', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('18', '1', '7', '0', '1', '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', '1', '0', '0', '1', '0', '0', '0', '249.00', '0.00', '0', '100', '0', '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', '299.00', '100', '0', '件', '0.00', '0', 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', '0', '0', '万和', '外套');
-INSERT INTO `pms_product` VALUES ('22', '6', '7', '0', '1', 'test', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '', '1', '1', '0', '0', '0', '0', '0', '0.00', null, '0', '0', '0', 'test', '', '0.00', '100', '0', '', '0.00', '1', '1,2', '', '', '', '', '', '', '', null, null, '0', '0', '小米', '外套');
-INSERT INTO `pms_product` VALUES ('23', '6', '19', '0', '1', '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', 'NO.1098', '1', '1', '1', '1', '0', '0', '0', '99.00', null, '99', '99', '1000', '毛衫测试11', 'xxx', '109.00', '100', '0', '件', '1000.00', '1', '1,2,3', '毛衫测试', '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '毛衫测试', '毛衫测试', '
', '', null, null, '0', '2', '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES ('24', '6', '7', '0', null, 'xxx', '', '', '1', '0', '0', '0', '0', '0', '0', '0.00', null, '0', '0', '0', 'xxx', '', '0.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '小米', '外套');
-INSERT INTO `pms_product` VALUES ('26', '3', '19', '0', '3', '华为 HUAWEI P20 ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '6946605', '0', '1', '1', '1', '0', '100', '0', '3788.00', null, '3788', '3788', '0', 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '', '4288.00', '1000', '0', '件', '0.00', '1', '2,3,1', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ab46a3cN616bdc41.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf5fN2522b9dc.jpg', '', '', '
', '', null, null, '0', '1', '华为', '手机通讯');
-INSERT INTO `pms_product` VALUES ('27', '6', '19', '0', '3', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '7437788', '0', '1', '1', '1', '0', '0', '0', '2699.00', null, '2699', '2699', '0', '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', '2699.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '
', '', null, null, '0', '3', '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES ('28', '6', '19', '0', '3', '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '7437789', '0', '1', '1', '1', '0', '0', '0', '649.00', null, '649', '649', '0', '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '', '649.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '4', '小米', '手机通讯');
-INSERT INTO `pms_product` VALUES ('29', '51', '19', '0', '3', 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', '7437799', '0', '1', '1', '0', '0', '0', '0', '5499.00', null, '5499', '5499', '0', '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '', '5499.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '苹果', '手机通讯');
-INSERT INTO `pms_product` VALUES ('30', '50', '8', '0', '1', 'HLA海澜之家简约动物印花短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ad83a4fN6ff67ecd.jpg!cc_350x449.jpg', 'HNTBJ2E042A', '0', '1', '1', '1', '0', '0', '0', '98.00', null, '0', '0', '0', '2018夏季新品微弹舒适新款短T男生 6月6日-6月20日,满300减30,参与互动赢百元礼券,立即分享赢大奖', '', '98.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES ('31', '50', '8', '0', '1', 'HLA海澜之家蓝灰花纹圆领针织布短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ac98b64N70acd82f.jpg!cc_350x449.jpg', 'HNTBJ2E080A', '0', '1', '0', '0', '0', '0', '0', '98.00', null, '0', '0', '0', '2018夏季新品短袖T恤男HNTBJ2E080A 蓝灰花纹80 175/92A/L80A 蓝灰花纹80 175/92A/L', '', '98.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES ('32', '50', '8', '0', null, 'HLA海澜之家短袖T恤男基础款', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a51eb88Na4797877.jpg', 'HNTBJ2E153A', '0', '1', '0', '0', '0', '0', '0', '68.00', null, '0', '0', '0', 'HLA海澜之家短袖T恤男基础款简约圆领HNTBJ2E153A藏青(F3)175/92A(50)', '', '68.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '海澜之家', 'T恤');
-INSERT INTO `pms_product` VALUES ('33', '6', '35', '0', null, '小米(MI)小米电视4A ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b02804dN66004d73.jpg', '4609652', '0', '1', '0', '0', '0', '0', '0', '2499.00', null, '0', '0', '0', '小米(MI)小米电视4A 55英寸 L55M5-AZ/L55M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', '2499.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '小米', '手机数码');
-INSERT INTO `pms_product` VALUES ('34', '6', '35', '0', null, '小米(MI)小米电视4A 65英寸', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b028530N51eee7d4.jpg', '4609660', '0', '1', '0', '0', '0', '0', '0', '3999.00', null, '0', '0', '0', ' L65M5-AZ/L65M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', '3999.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', '小米', '手机数码');
-INSERT INTO `pms_product` VALUES ('35', '58', '29', '0', null, '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b235bb9Nf606460b.jpg', '6799342', '0', '1', '0', '0', '0', '0', '0', '369.00', null, '0', '0', '0', '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', '', '369.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', 'NIKE', '男鞋');
-INSERT INTO `pms_product` VALUES ('36', '58', '29', '0', null, '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '6799345', '0', '1', '1', '1', '0', '0', '0', '499.00', null, '0', '0', '0', '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '', '499.00', '100', '0', '', '0.00', '0', '', '', '', '', '', '', '', '', null, null, '0', '0', 'NIKE', '男鞋');
+INSERT INTO `pms_product` VALUES (1, 49, 7, 0, 0, '银色星芒刺绣网纱底裤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 1, 1, 1, 100, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '七匹狼', '外套');
+INSERT INTO `pms_product` VALUES (2, 49, 7, 0, 0, '银色星芒刺绣网纱底裤2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86578', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤2', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤
', '银色星芒刺绣网纱底裤
', NULL, NULL, NULL, 0, '七匹狼', '外套');
+INSERT INTO `pms_product` VALUES (3, 1, 7, 0, 0, '银色星芒刺绣网纱底裤3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86579', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤3', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (4, 1, 7, 0, 0, '银色星芒刺绣网纱底裤4', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86580', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤4', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (5, 1, 7, 0, 0, '银色星芒刺绣网纱底裤5', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86581', 1, 0, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤5', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (6, 1, 7, 0, 0, '银色星芒刺绣网纱底裤6', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86582', 1, 1, 1, 1, 1, 1, 0, 100.00, NULL, 0, 100, NULL, '111', '111', 120.00, 100, 20, '件', 1000.00, 0, NULL, '银色星芒刺绣网纱底裤6', '银色星芒刺绣网纱底裤', NULL, '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', '银色星芒刺绣网纱底裤', NULL, NULL, NULL, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (7, 1, 7, 0, 1, '女式超柔软拉毛运动开衫', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (8, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (9, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (10, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 0, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (11, 1, 7, 0, 1, '女式超柔软拉毛运动开衫1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (12, 1, 7, 0, 1, '女式超柔软拉毛运动开衫2', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (13, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 1, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (14, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (18, 1, 7, 0, 1, '女式超柔软拉毛运动开衫3', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180522/web.png', 'No86577', 1, 0, 0, 1, 0, 0, 0, 249.00, 0.00, 0, 100, 0, '匠心剪裁,垂感质地', '匠心剪裁,垂感质地', 299.00, 100, 0, '件', 0.00, 0, 'string', '女式超柔软拉毛运动开衫', 'string', 'string', 'string', 'string', 'string', 'string', '2018-04-26 10:41:03', '2018-04-26 10:41:03', 0, 0, '万和', '外套');
+INSERT INTO `pms_product` VALUES (22, 6, 7, 0, 1, 'test', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '', 1, 1, 0, 0, 0, 0, 0, 0.00, NULL, 0, 0, 0, 'test', '', 0.00, 100, 0, '', 0.00, 1, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '外套');
+INSERT INTO `pms_product` VALUES (23, 6, 19, 0, 1, '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', 'NO.1098', 1, 1, 1, 1, 0, 0, 0, 99.00, NULL, 99, 99, 1000, '毛衫测试11', 'xxx', 109.00, 100, 0, '件', 1000.00, 1, '1,2,3', '毛衫测试', '毛衫测试', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180604/1522738681.jpg', '毛衫测试', '毛衫测试', '
', '', NULL, NULL, 0, 2, '小米', '手机数码');
+INSERT INTO `pms_product` VALUES (24, 6, 7, 0, NULL, 'xxx', '', '', 1, 0, 0, 0, 0, 0, 0, 0.00, NULL, 0, 0, 0, 'xxx', '', 0.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '外套');
+INSERT INTO `pms_product` VALUES (26, 3, 19, 0, 3, '华为 HUAWEI P20 ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf58Ndefaac16.jpg', '6946605', 0, 1, 1, 1, 0, 100, 100, 3788.00, NULL, 3788, 3788, 0, 'AI智慧全面屏 6GB +64GB 亮黑色 全网通版 移动联通电信4G手机 双卡双待手机 双卡双待', '', 4288.00, 1000, 0, '件', 0.00, 1, '2,3,1', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ab46a3cN616bdc41.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/5ac1bf5fN2522b9dc.jpg', '', '', '
', '
\n
', NULL, NULL, 0, 4, '华为', '手机通讯');
+INSERT INTO `pms_product` VALUES (27, 6, 19, 0, 3, '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/xiaomi.jpg', '7437788', 0, 1, 1, 1, 0, 0, 99, 2699.00, NULL, 2699, 2699, 0, '骁龙845处理器,红外人脸解锁,AI变焦双摄,AI语音助手小米6X低至1299,点击抢购', '小米8 全面屏游戏智能手机 6GB+64GB 黑色 全网通4G 双卡双待', 2699.00, 100, 0, '', 0.00, 0, '1', '', '', '', '', '', '
', '
', NULL, NULL, 0, 3, '小米', '手机通讯');
+INSERT INTO `pms_product` VALUES (28, 6, 19, 0, 3, '小米 红米5A 全网通版 3GB+32GB 香槟金 移动联通电信4G手机 双卡双待', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a9d248cN071f4959.jpg', '7437789', 0, 1, 1, 1, 0, 0, 98, 649.00, NULL, 649, 649, 0, '8天超长待机,137g轻巧机身,高通骁龙处理器小米6X低至1299,点击抢购', '', 649.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 4, '小米', '手机通讯');
+INSERT INTO `pms_product` VALUES (29, 51, 19, 0, 3, 'Apple iPhone 8 Plus 64GB 红色特别版 移动联通电信4G手机', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5acc5248N6a5f81cd.jpg', '7437799', 0, 1, 1, 1, 0, 0, 97, 5499.00, 4799.00, 5499, 5499, 0, '【限时限量抢购】Apple产品年中狂欢节,好物尽享,美在智慧!速来 >> 勾选[保障服务][原厂保2年],获得AppleCare+全方位服务计划,原厂延保售后无忧。', '', 5499.00, 100, 0, '', 0.00, 0, '1,2,3', '', '', '', '', '', '', '', '2020-05-04 15:12:54', '2020-05-30 00:00:00', 0, 1, '苹果', '手机通讯');
+INSERT INTO `pms_product` VALUES (30, 50, 8, 0, 1, 'HLA海澜之家简约动物印花短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ad83a4fN6ff67ecd.jpg!cc_350x449.jpg', 'HNTBJ2E042A', 0, 1, 1, 1, 0, 0, 0, 98.00, NULL, 0, 0, 0, '2018夏季新品微弹舒适新款短T男生 6月6日-6月20日,满300减30,参与互动赢百元礼券,立即分享赢大奖', '', 98.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
+INSERT INTO `pms_product` VALUES (31, 50, 8, 0, 1, 'HLA海澜之家蓝灰花纹圆领针织布短袖T恤', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5ac98b64N70acd82f.jpg!cc_350x449.jpg', 'HNTBJ2E080A', 0, 1, 0, 0, 0, 0, 0, 98.00, NULL, 0, 0, 0, '2018夏季新品短袖T恤男HNTBJ2E080A 蓝灰花纹80 175/92A/L80A 蓝灰花纹80 175/92A/L', '', 98.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
+INSERT INTO `pms_product` VALUES (32, 50, 8, 0, 1, 'HLA海澜之家短袖T恤男基础款', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5a51eb88Na4797877.jpg', 'HNTBJ2E153A', 0, 1, 0, 0, 0, 0, 0, 68.00, NULL, 0, 0, 0, 'HLA海澜之家短袖T恤男基础款简约圆领HNTBJ2E153A藏青(F3)175/92A(50)', '', 68.00, 100, 0, '', 0.00, 0, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '海澜之家', 'T恤');
+INSERT INTO `pms_product` VALUES (33, 6, 35, 0, 12, '小米(MI)小米电视4A ', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b02804dN66004d73.jpg', '4609652', 0, 1, 0, 0, 0, 0, 0, 2499.00, NULL, 0, 0, 0, '小米(MI)小米电视4A 55英寸 L55M5-AZ/L55M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', 2499.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '电视');
+INSERT INTO `pms_product` VALUES (34, 6, 35, 0, 12, '小米(MI)小米电视4A 65英寸', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b028530N51eee7d4.jpg', '4609660', 0, 1, 0, 0, 0, 0, 0, 3999.00, NULL, 0, 0, 0, ' L65M5-AZ/L65M5-AD 2GB+8GB HDR 4K超高清 人工智能网络液晶平板电视', '', 3999.00, 100, 0, '', 0.00, 0, '1,2', '', '', '', '', '', '', '', NULL, NULL, 0, 0, '小米', '电视');
+INSERT INTO `pms_product` VALUES (35, 58, 29, 0, 11, '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b235bb9Nf606460b.jpg', '6799342', 0, 1, 0, 0, 0, 0, 0, 369.00, NULL, 0, 0, 0, '耐克NIKE 男子 休闲鞋 ROSHE RUN 运动鞋 511881-010黑色41码', '', 369.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, 'NIKE', '男鞋');
+INSERT INTO `pms_product` VALUES (36, 58, 29, 0, 11, '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180615/5b19403eN9f0b3cb8.jpg', '6799345', 0, 1, 1, 1, 0, 0, 0, 499.00, NULL, 0, 0, 0, '耐克NIKE 男子 气垫 休闲鞋 AIR MAX 90 ESSENTIAL 运动鞋 AJ1285-101白色41码', '', 499.00, 100, 0, '', 0.00, 0, '', '', '', '', '', '', '', '', NULL, NULL, 0, 0, 'NIKE', '男鞋');
+INSERT INTO `pms_product` VALUES (37, 51, 19, 0, 3, 'Apple iPhone 14 (A2884) 128GB 支持移动联通电信5G 双卡双待手机', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_001.jpg', '100038005189', 0, 1, 0, 0, 0, 200, 0, 5999.00, NULL, 0, 0, 0, '【11.11大爱超大爱】指定iPhone14产品限时限量领券立减601元!!!部分iPhone产品现货抢购确认收货即送原厂手机壳10元优惠券!!!猛戳 ', '', 5999.00, 1000, 0, '', 208.00, 0, '1,2,3', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_002.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_003.jpg,http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/iphone14_004.jpg', '', '', '', '', NULL, NULL, 0, 0, '苹果', '手机通讯');
+INSERT INTO `pms_product` VALUES (38, 51, 53, 0, 3, 'Apple iPad 10.9英寸平板电脑 2022年款', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_001.jpg', '100044025833', 0, 1, 0, 0, 0, 0, 0, 3599.00, NULL, 0, 0, 0, '【11.11大爱超大爱】iPad9代限量抢购,价格优惠,更享以旧换新至高补贴325元!!快来抢购吧!! ', '', 3599.00, 1000, 0, '', 0.00, 0, '1,2,3', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/ipad_002.jpg', '', '', '', '', NULL, NULL, 0, 0, '苹果', '平板电脑');
+INSERT INTO `pms_product` VALUES (39, 6, 54, 0, 13, '小米 Xiaomi Book Pro 14 2022 锐龙版 2.8K超清大师屏 高端轻薄笔记本电脑', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_001.jpg', '100023207945', 0, 1, 0, 1, 0, 0, 0, 5599.00, NULL, 0, 0, 0, '【双十一大促来袭】指定型号至高优惠1000,以旧换新至高补贴1000元,晒单赢好礼', '', 5599.00, 500, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221028/xiaomi_computer_002.jpg', '', '', '', '\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
', NULL, NULL, 0, 0, '小米', '笔记本');
+INSERT INTO `pms_product` VALUES (40, 6, 19, 0, 3, '小米12 Pro 天玑版 天玑9000+处理器 5000万疾速影像 2K超视感屏 120Hz高刷 67W快充', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_01.jpg', '100027789721', 0, 1, 0, 1, 0, 0, 0, 2999.00, NULL, 0, 0, 0, '天玑9000+处理器、5160mAh大电量、2KAmoled超视感屏【点击购买小米11Ultra,戳】 ', '', 2999.00, 500, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/xiaomi_12_pro_02.jpg', '', '', '', '
', NULL, NULL, 0, 0, '小米', '手机通讯');
+INSERT INTO `pms_product` VALUES (41, 6, 19, 0, 3, 'Redmi K50 天玑8100 2K柔性直屏 OIS光学防抖 67W快充 5500mAh大电量', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_01.jpg', '100035246702', 0, 1, 0, 0, 0, 0, 0, 2099.00, NULL, 0, 0, 0, '【品质好物】天玑8100,2K直屏,5500mAh大电量【Note12Pro火热抢购中】 ', '', 2099.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/redmi_k50_02.jpg', '', '', '', '
', NULL, NULL, 0, 0, '小米', '手机通讯');
+INSERT INTO `pms_product` VALUES (42, 3, 19, 0, 3, 'HUAWEI Mate 50 直屏旗舰 超光变XMAGE影像 北斗卫星消息', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_01.jpg', '100035295081', 0, 1, 0, 0, 0, 0, 0, 4999.00, NULL, 0, 0, 0, '【华为Mate50新品上市】内置66W华为充电套装,超光变XMAGE影像,北斗卫星消息,鸿蒙操作系统3.0!立即抢购!华为新品可持续计划,猛戳》 ', '', 4999.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/huawei_mate50_02.jpg', '', '', '', '
', NULL, NULL, 0, 0, '华为', '手机通讯');
+INSERT INTO `pms_product` VALUES (43, 1, 39, 0, 14, '万和(Vanward)燃气热水器天然气家用四重防冻直流变频节能全新升级增压水伺服恒温高抗风', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_13L_01.png', '10044060351752', 0, 1, 0, 0, 0, 0, 0, 1799.00, NULL, 0, 0, 0, '【家电11.11享低价,抢到手价不高于1199】【发布种草秀享好礼!同价11.11买贵补差】爆款超一级能效零冷水】 ', '', 1799.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221104/wanhe_16L_01.jpg', '', '', '', '
', NULL, NULL, 0, 0, '万和', '厨卫大电');
+INSERT INTO `pms_product` VALUES (44, 2, 55, 0, 15, '三星(SAMSUNG)500GB SSD固态硬盘 M.2接口(NVMe协议)', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_02.jpg', '100018768480', 0, 1, 0, 0, 0, 0, 0, 369.00, NULL, 0, 0, 0, '【满血无缓存!进店抽百元E卡,部分型号白条三期免息】兼具速度与可靠性!读速高达3500MB/s,全功率模式!点击 ', '', 369.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/sanxing_ssd_01.jpg', '', '', '', '
', NULL, NULL, 0, 0, '三星', '硬盘');
+INSERT INTO `pms_product` VALUES (45, 21, 19, 0, 3, 'OPPO Reno8 8GB+128GB 鸢尾紫 新配色上市 80W超级闪充 5000万水光人像三摄', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_01.jpg', '10052147850350', 0, 1, 0, 0, 0, 0, 0, 2299.00, 999.00, 0, 0, 0, '【11.11提前购机享价保,好货不用等,系统申请一键价保补差!】【Reno8Pro爆款优惠】 ', '', 2299.00, 1000, 0, '', 0.00, 0, '', '', '', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20221108/oppo_r8_02.jpg', '', '', '', '
', '2022-11-09 16:15:50', '2022-11-25 00:00:00', 0, 4, 'OPPO', '手机通讯');
-- ----------------------------
-- Table structure for pms_product_attribute
-- ----------------------------
DROP TABLE IF EXISTS `pms_product_attribute`;
-CREATE TABLE `pms_product_attribute` (
+CREATE TABLE `pms_product_attribute` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_attribute_category_id` bigint(20) DEFAULT NULL,
- `name` varchar(64) DEFAULT NULL,
- `select_type` int(1) DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选',
- `input_type` int(1) DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',
- `input_list` varchar(255) DEFAULT NULL COMMENT '可选值列表,以逗号隔开',
- `sort` int(11) DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',
- `filter_type` int(1) DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',
- `search_type` int(1) DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',
- `related_status` int(1) DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',
- `hand_add_status` int(1) DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',
- `type` int(1) DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=49 DEFAULT CHARSET=utf8 COMMENT='商品属性参数表';
+ `product_attribute_category_id` bigint(20) NULL DEFAULT NULL,
+ `name` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `select_type` int(1) NULL DEFAULT NULL COMMENT '属性选择类型:0->唯一;1->单选;2->多选',
+ `input_type` int(1) NULL DEFAULT NULL COMMENT '属性录入方式:0->手工录入;1->从列表中选取',
+ `input_list` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '可选值列表,以逗号隔开',
+ `sort` int(11) NULL DEFAULT NULL COMMENT '排序字段:最高的可以单独上传图片',
+ `filter_type` int(1) NULL DEFAULT NULL COMMENT '分类筛选样式:1->普通;1->颜色',
+ `search_type` int(1) NULL DEFAULT NULL COMMENT '检索类型;0->不需要进行检索;1->关键字检索;2->范围检索',
+ `related_status` int(1) NULL DEFAULT NULL COMMENT '相同属性产品是否关联;0->不关联;1->关联',
+ `hand_add_status` int(1) NULL DEFAULT NULL COMMENT '是否支持手动新增;0->不支持;1->支持',
+ `type` int(1) NULL DEFAULT NULL COMMENT '属性的类型;0->规格;1->参数',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 74 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '商品属性参数表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
-- Records of pms_product_attribute
-- ----------------------------
-INSERT INTO `pms_product_attribute` VALUES ('1', '1', '尺寸', '2', '1', 'M,X,XL,2XL,3XL,4XL', '0', '0', '0', '0', '0', '0');
-INSERT INTO `pms_product_attribute` VALUES ('7', '1', '颜色', '2', '1', '黑色,红色,白色,粉色', '100', '0', '0', '0', '1', '0');
-INSERT INTO `pms_product_attribute` VALUES ('13', '0', '上市年份', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('14', '0', '上市年份1', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('15', '0', '上市年份2', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('16', '0', '上市年份3', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('17', '0', '上市年份4', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('18', '0', '上市年份5', '1', '1', '2013年,2014年,2015年,2016年,2017年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('19', '0', '适用对象', '1', '1', '青年女性,中年女性', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('20', '0', '适用对象1', '2', '1', '青年女性,中年女性', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('21', '0', '适用对象3', '2', '1', '青年女性,中年女性', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('24', '1', '商品编号', '1', '0', '', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('25', '1', '适用季节', '1', '1', '春季,夏季,秋季,冬季', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('32', '2', '适用人群', '0', '1', '老年,青年,中年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('33', '2', '风格', '0', '1', '嘻哈风格,基础大众,商务正装', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('35', '2', '颜色', '0', '0', '', '100', '0', '0', '0', '1', '0');
-INSERT INTO `pms_product_attribute` VALUES ('37', '1', '适用人群', '1', '1', '儿童,青年,中年,老年', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('38', '1', '上市时间', '1', '1', '2017年秋,2017年冬,2018年春,2018年夏', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('39', '1', '袖长', '1', '1', '短袖,长袖,中袖', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('40', '2', '尺码', '0', '1', '29,30,31,32,33,34', '0', '0', '0', '0', '0', '0');
-INSERT INTO `pms_product_attribute` VALUES ('41', '2', '适用场景', '0', '1', '居家,运动,正装', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('42', '2', '上市时间', '0', '1', '2018年春,2018年夏', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('43', '3', '颜色', '0', '0', '', '100', '0', '0', '0', '1', '0');
-INSERT INTO `pms_product_attribute` VALUES ('44', '3', '容量', '0', '1', '16G,32G,64G,128G', '0', '0', '0', '0', '0', '0');
-INSERT INTO `pms_product_attribute` VALUES ('45', '3', '屏幕尺寸', '0', '0', '', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('46', '3', '网络', '0', '1', '3G,4G', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('47', '3', '系统', '0', '1', 'Android,IOS', '0', '0', '0', '0', '0', '1');
-INSERT INTO `pms_product_attribute` VALUES ('48', '3', '电池容量', '0', '0', '', '0', '0', '0', '0', '0', '1');
+INSERT INTO `pms_product_attribute` VALUES (1, 1, '尺寸', 2, 1, 'M,X,XL,2XL,3XL,4XL', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (7, 1, '颜色', 2, 1, '黑色,红色,白色,粉色', 100, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (13, 0, '上市年份', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (14, 0, '上市年份1', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (15, 0, '上市年份2', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (16, 0, '上市年份3', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (17, 0, '上市年份4', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (18, 0, '上市年份5', 1, 1, '2013年,2014年,2015年,2016年,2017年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (19, 0, '适用对象', 1, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (20, 0, '适用对象1', 2, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (21, 0, '适用对象3', 2, 1, '青年女性,中年女性', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (24, 1, '商品编号', 1, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (25, 1, '适用季节', 1, 1, '春季,夏季,秋季,冬季', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (32, 2, '适用人群', 0, 1, '老年,青年,中年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (33, 2, '风格', 0, 1, '嘻哈风格,基础大众,商务正装', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (35, 2, '颜色', 0, 0, '', 100, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (37, 1, '适用人群', 1, 1, '儿童,青年,中年,老年', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (38, 1, '上市时间', 1, 1, '2017年秋,2017年冬,2018年春,2018年夏', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (39, 1, '袖长', 1, 1, '短袖,长袖,中袖', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (40, 2, '尺码', 0, 1, '29,30,31,32,33,34', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (41, 2, '适用场景', 0, 1, '居家,运动,正装', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (42, 2, '上市时间', 0, 1, '2018年春,2018年夏', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (43, 3, '颜色', 0, 0, '', 100, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (44, 3, '容量', 0, 1, '16G,32G,64G,128G,256G,512G', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (45, 3, '屏幕尺寸', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (46, 3, '网络', 0, 1, '3G,4G,5G,WLAN', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (47, 3, '系统', 0, 1, 'Android,IOS', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (48, 3, '电池容量', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (49, 11, '颜色', 0, 1, '红色,蓝色,绿色', 0, 1, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (50, 11, '尺寸', 0, 1, '38,39,40', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (51, 11, '风格', 0, 1, '夏季,秋季', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (52, 12, '尺寸', 0, 1, '50英寸,65英寸,70英寸', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (53, 12, '内存', 0, 1, '8G,16G,32G', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (54, 12, '商品编号', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (55, 12, '商品毛重', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (56, 12, '商品产地', 0, 1, '中国大陆,其他', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (57, 12, '电视类型', 0, 1, '大屏,教育电视,4K超清', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (58, 13, '颜色', 0, 0, '', 0, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (59, 13, '版本', 0, 1, 'R7 16G 512,R5 16G 512,I5 16G 512,I7 16G 512', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (60, 13, '屏幕尺寸', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (61, 13, '屏幕分辨率', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (62, 13, 'CPU型号', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (63, 14, '系列', 0, 0, '', 0, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (64, 14, '上市时间', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (65, 14, '毛重', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (66, 14, '额定功率', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (67, 15, '颜色', 0, 0, '', 0, 0, 0, 0, 1, 0);
+INSERT INTO `pms_product_attribute` VALUES (68, 15, '版本', 0, 1, '512GB,1TB', 0, 0, 0, 0, 0, 0);
+INSERT INTO `pms_product_attribute` VALUES (69, 15, '系列', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (70, 15, '型号', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (71, 15, '闪存类型', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (72, 15, '顺序读速', 0, 0, '', 0, 0, 0, 0, 0, 1);
+INSERT INTO `pms_product_attribute` VALUES (73, 15, '顺序写入', 0, 0, '', 0, 0, 0, 0, 0, 1);
-- ----------------------------
--- Table structure for pms_product_attribute_category
+-- Table structure for pms_product_attribute_value
-- ----------------------------
-DROP TABLE IF EXISTS `pms_product_attribute_category`;
-CREATE TABLE `pms_product_attribute_category` (
+DROP TABLE IF EXISTS `pms_product_attribute_value`;
+CREATE TABLE `pms_product_attribute_value` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(64) DEFAULT NULL,
- `attribute_count` int(11) DEFAULT '0' COMMENT '属性数量',
- `param_count` int(11) DEFAULT '0' COMMENT '参数数量',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8 COMMENT='产品属性分类表';
+ `product_id` bigint(20) NULL DEFAULT NULL,
+ `product_attribute_id` bigint(20) NULL DEFAULT NULL,
+ `value` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 477 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '存储产品参数信息的表' ROW_FORMAT = DYNAMIC;
-- ----------------------------
--- Records of pms_product_attribute_category
+-- Records of pms_product_attribute_value
-- ----------------------------
-INSERT INTO `pms_product_attribute_category` VALUES ('1', '服装-T恤', '2', '5');
-INSERT INTO `pms_product_attribute_category` VALUES ('2', '服装-裤装', '2', '4');
-INSERT INTO `pms_product_attribute_category` VALUES ('3', '手机数码-手机通讯', '2', '4');
-INSERT INTO `pms_product_attribute_category` VALUES ('4', '配件', '0', '0');
-INSERT INTO `pms_product_attribute_category` VALUES ('5', '居家', '0', '0');
-INSERT INTO `pms_product_attribute_category` VALUES ('6', '洗护', '0', '0');
-INSERT INTO `pms_product_attribute_category` VALUES ('10', '测试分类', '0', '0');
+INSERT INTO `pms_product_attribute_value` VALUES (1, 9, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (2, 10, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (3, 11, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (4, 12, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (5, 13, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (6, 14, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (7, 18, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (8, 7, 1, 'X');
+INSERT INTO `pms_product_attribute_value` VALUES (9, 7, 1, 'XL');
+INSERT INTO `pms_product_attribute_value` VALUES (10, 7, 1, 'XXL');
+INSERT INTO `pms_product_attribute_value` VALUES (11, 22, 7, 'x,xx');
+INSERT INTO `pms_product_attribute_value` VALUES (12, 22, 24, 'no110');
+INSERT INTO `pms_product_attribute_value` VALUES (13, 22, 25, '春季');
+INSERT INTO `pms_product_attribute_value` VALUES (14, 22, 37, '青年');
+INSERT INTO `pms_product_attribute_value` VALUES (15, 22, 38, '2018年春');
+INSERT INTO `pms_product_attribute_value` VALUES (16, 22, 39, '长袖');
+INSERT INTO `pms_product_attribute_value` VALUES (124, 23, 7, '米白色,浅黄色');
+INSERT INTO `pms_product_attribute_value` VALUES (125, 23, 24, 'no1098');
+INSERT INTO `pms_product_attribute_value` VALUES (126, 23, 25, '春季');
+INSERT INTO `pms_product_attribute_value` VALUES (127, 23, 37, '青年');
+INSERT INTO `pms_product_attribute_value` VALUES (128, 23, 38, '2018年春');
+INSERT INTO `pms_product_attribute_value` VALUES (129, 23, 39, '长袖');
+INSERT INTO `pms_product_attribute_value` VALUES (130, 1, 13, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (131, 1, 14, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (132, 1, 15, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (133, 1, 16, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (134, 1, 17, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (135, 1, 18, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (136, 1, 19, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (137, 1, 20, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (138, 1, 21, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (139, 2, 13, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (140, 2, 14, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (141, 2, 15, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (142, 2, 16, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (143, 2, 17, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (144, 2, 18, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (145, 2, 19, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (146, 2, 20, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (147, 2, 21, NULL);
+INSERT INTO `pms_product_attribute_value` VALUES (243, 30, 7, '蓝色,白色');
+INSERT INTO `pms_product_attribute_value` VALUES (244, 30, 24, 'HNTBJ2E042A');
+INSERT INTO `pms_product_attribute_value` VALUES (245, 30, 25, '夏季');
+INSERT INTO `pms_product_attribute_value` VALUES (246, 30, 37, '青年');
+INSERT INTO `pms_product_attribute_value` VALUES (247, 30, 38, '2018年夏');
+INSERT INTO `pms_product_attribute_value` VALUES (248, 30, 39, '短袖');
+INSERT INTO `pms_product_attribute_value` VALUES (249, 31, 7, '浅灰色,深灰色');
+INSERT INTO `pms_product_attribute_value` VALUES (250, 31, 24, 'HNTBJ2E080A');
+INSERT INTO `pms_product_attribute_value` VALUES (251, 31, 25, '夏季');
+INSERT INTO `pms_product_attribute_value` VALUES (252, 31, 37, '青年');
+INSERT INTO `pms_product_attribute_value` VALUES (253, 31, 38, '2018年夏');
+INSERT INTO `pms_product_attribute_value` VALUES (254, 31, 39, '短袖');
+INSERT INTO `pms_product_attribute_value` VALUES (255, 32, 7, '黑色,白色');
+INSERT INTO `pms_product_attribute_value` VALUES (256, 32, 24, 'HNTBJ2E153A');
+INSERT INTO `pms_product_attribute_value` VALUES (257, 32, 25, '夏季');
+INSERT INTO `pms_product_attribute_value` VALUES (258, 32, 37, '青年');
+INSERT INTO `pms_product_attribute_value` VALUES (259, 32, 38, '2018年夏');
+INSERT INTO `pms_product_attribute_value` VALUES (260, 32, 39, '短袖');
+INSERT INTO `pms_product_attribute_value` VALUES (265, 33, 54, '4609652');
+INSERT INTO `pms_product_attribute_value` VALUES (266, 33, 55, '28.6kg');
+INSERT INTO `pms_product_attribute_value` VALUES (267, 33, 56, '中国大陆');
+INSERT INTO `pms_product_attribute_value` VALUES (268, 33, 57, '大屏');
+INSERT INTO `pms_product_attribute_value` VALUES (269, 34, 54, '4609660');
+INSERT INTO `pms_product_attribute_value` VALUES (270, 34, 55, '30.8kg');
+INSERT INTO `pms_product_attribute_value` VALUES (271, 34, 56, '中国大陆');
+INSERT INTO `pms_product_attribute_value` VALUES (272, 34, 57, '4K超清');
+INSERT INTO `pms_product_attribute_value` VALUES (273, 26, 43, '金色,银色');
+INSERT INTO `pms_product_attribute_value` VALUES (274, 26, 45, '5.0');
+INSERT INTO `pms_product_attribute_value` VALUES (275, 26, 46, '4G');
+INSERT INTO `pms_product_attribute_value` VALUES (276, 26, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (277, 26, 48, '3000');
+INSERT INTO `pms_product_attribute_value` VALUES (288, 27, 43, '黑色,蓝色');
+INSERT INTO `pms_product_attribute_value` VALUES (289, 27, 45, '5.8');
+INSERT INTO `pms_product_attribute_value` VALUES (290, 27, 46, '4G');
+INSERT INTO `pms_product_attribute_value` VALUES (291, 27, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (292, 27, 48, '3000ml');
+INSERT INTO `pms_product_attribute_value` VALUES (303, 28, 43, '金色,银色');
+INSERT INTO `pms_product_attribute_value` VALUES (304, 28, 45, '5.0');
+INSERT INTO `pms_product_attribute_value` VALUES (305, 28, 46, '4G');
+INSERT INTO `pms_product_attribute_value` VALUES (306, 28, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (307, 28, 48, '2800ml');
+INSERT INTO `pms_product_attribute_value` VALUES (308, 29, 43, '金色,银色');
+INSERT INTO `pms_product_attribute_value` VALUES (309, 29, 45, '4.7');
+INSERT INTO `pms_product_attribute_value` VALUES (310, 29, 46, '4G');
+INSERT INTO `pms_product_attribute_value` VALUES (311, 29, 47, 'IOS');
+INSERT INTO `pms_product_attribute_value` VALUES (312, 29, 48, '1960ml');
+INSERT INTO `pms_product_attribute_value` VALUES (338, 37, 43, '午夜色,星光色,紫色,蓝色');
+INSERT INTO `pms_product_attribute_value` VALUES (339, 37, 45, '6.1英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (340, 37, 46, '5G');
+INSERT INTO `pms_product_attribute_value` VALUES (341, 37, 47, 'IOS');
+INSERT INTO `pms_product_attribute_value` VALUES (342, 37, 48, '3000毫安');
+INSERT INTO `pms_product_attribute_value` VALUES (438, 40, 43, '黑色,蓝色');
+INSERT INTO `pms_product_attribute_value` VALUES (439, 40, 45, '6.73英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (440, 40, 46, '5G');
+INSERT INTO `pms_product_attribute_value` VALUES (441, 40, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (442, 40, 48, '5160mAh');
+INSERT INTO `pms_product_attribute_value` VALUES (443, 38, 43, '银色,蓝色');
+INSERT INTO `pms_product_attribute_value` VALUES (444, 38, 45, '10.9英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (445, 38, 46, 'WLAN');
+INSERT INTO `pms_product_attribute_value` VALUES (446, 38, 47, 'IOS');
+INSERT INTO `pms_product_attribute_value` VALUES (447, 38, 48, '6000毫安');
+INSERT INTO `pms_product_attribute_value` VALUES (448, 39, 58, '新小米Pro 14英寸 2.8K屏,新Redmi Pro 15英寸 3.2K屏');
+INSERT INTO `pms_product_attribute_value` VALUES (449, 39, 60, '15.6英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (450, 39, 61, '3200*2000');
+INSERT INTO `pms_product_attribute_value` VALUES (451, 39, 62, 'R5 6600H');
+INSERT INTO `pms_product_attribute_value` VALUES (452, 41, 43, '墨羽,银迹');
+INSERT INTO `pms_product_attribute_value` VALUES (453, 41, 45, '6.67英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (454, 41, 46, '5G');
+INSERT INTO `pms_product_attribute_value` VALUES (455, 41, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (456, 41, 48, '5500mAh');
+INSERT INTO `pms_product_attribute_value` VALUES (457, 42, 43, '曜金黑,冰霜银');
+INSERT INTO `pms_product_attribute_value` VALUES (458, 42, 45, '6.7英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (459, 42, 46, '5G');
+INSERT INTO `pms_product_attribute_value` VALUES (460, 42, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (461, 42, 48, '4460mAh');
+INSERT INTO `pms_product_attribute_value` VALUES (462, 43, 63, 'JSQ25-565W13【13升】【恒温旗舰款】,JSQ30-565W16【16升】【恒温旗舰款】');
+INSERT INTO `pms_product_attribute_value` VALUES (463, 43, 64, '2021-05');
+INSERT INTO `pms_product_attribute_value` VALUES (464, 43, 65, '15.5kg');
+INSERT INTO `pms_product_attribute_value` VALUES (465, 43, 66, '30w');
+INSERT INTO `pms_product_attribute_value` VALUES (466, 44, 67, '新品980|NVMe PCIe3.0*4,980 PRO|NVMe PCIe 4.0');
+INSERT INTO `pms_product_attribute_value` VALUES (467, 44, 69, '980');
+INSERT INTO `pms_product_attribute_value` VALUES (468, 44, 70, 'MZ-V8V500BW');
+INSERT INTO `pms_product_attribute_value` VALUES (469, 44, 71, 'TLC');
+INSERT INTO `pms_product_attribute_value` VALUES (470, 44, 72, '3100MB/s');
+INSERT INTO `pms_product_attribute_value` VALUES (471, 44, 73, '2600MB/s');
+INSERT INTO `pms_product_attribute_value` VALUES (472, 45, 43, '鸢尾紫,晴空蓝');
+INSERT INTO `pms_product_attribute_value` VALUES (473, 45, 45, '6.43英寸');
+INSERT INTO `pms_product_attribute_value` VALUES (474, 45, 46, '5G');
+INSERT INTO `pms_product_attribute_value` VALUES (475, 45, 47, 'Android');
+INSERT INTO `pms_product_attribute_value` VALUES (476, 45, 48, '4500mAh');
-- ----------------------------
--- Table structure for pms_product_attribute_value
+-- Table structure for ums_admin
-- ----------------------------
-DROP TABLE IF EXISTS `pms_product_attribute_value`;
-CREATE TABLE `pms_product_attribute_value` (
+DROP TABLE IF EXISTS `ums_admin`;
+CREATE TABLE `ums_admin` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `product_id` bigint(20) DEFAULT NULL,
- `product_attribute_id` bigint(20) DEFAULT NULL,
- `value` varchar(64) DEFAULT NULL COMMENT '手动添加规格或参数的值,参数单值,规格有多个时以逗号隔开',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=228 DEFAULT CHARSET=utf8 COMMENT='存储产品参数信息的表';
+ `username` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `password` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `icon` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
+ `email` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '邮箱',
+ `nick_name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '昵称',
+ `note` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注信息',
+ `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+ `login_time` datetime NULL DEFAULT NULL COMMENT '最后登录时间',
+ `status` int(1) NULL DEFAULT 1 COMMENT '帐号启用状态:0->禁用;1->启用',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 11 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of pms_product_attribute_value
+-- Records of ums_admin
-- ----------------------------
-INSERT INTO `pms_product_attribute_value` VALUES ('1', '9', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('2', '10', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('3', '11', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('4', '12', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('5', '13', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('6', '14', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('7', '18', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('8', '7', '1', 'X');
-INSERT INTO `pms_product_attribute_value` VALUES ('9', '7', '1', 'XL');
-INSERT INTO `pms_product_attribute_value` VALUES ('10', '7', '1', 'XXL');
-INSERT INTO `pms_product_attribute_value` VALUES ('11', '22', '7', 'x,xx');
-INSERT INTO `pms_product_attribute_value` VALUES ('12', '22', '24', 'no110');
-INSERT INTO `pms_product_attribute_value` VALUES ('13', '22', '25', '春季');
-INSERT INTO `pms_product_attribute_value` VALUES ('14', '22', '37', '青年');
-INSERT INTO `pms_product_attribute_value` VALUES ('15', '22', '38', '2018年春');
-INSERT INTO `pms_product_attribute_value` VALUES ('16', '22', '39', '长袖');
-INSERT INTO `pms_product_attribute_value` VALUES ('124', '23', '7', '米白色,浅黄色');
-INSERT INTO `pms_product_attribute_value` VALUES ('125', '23', '24', 'no1098');
-INSERT INTO `pms_product_attribute_value` VALUES ('126', '23', '25', '春季');
-INSERT INTO `pms_product_attribute_value` VALUES ('127', '23', '37', '青年');
-INSERT INTO `pms_product_attribute_value` VALUES ('128', '23', '38', '2018年春');
-INSERT INTO `pms_product_attribute_value` VALUES ('129', '23', '39', '长袖');
-INSERT INTO `pms_product_attribute_value` VALUES ('130', '1', '13', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('131', '1', '14', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('132', '1', '15', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('133', '1', '16', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('134', '1', '17', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('135', '1', '18', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('136', '1', '19', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('137', '1', '20', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('138', '1', '21', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('139', '2', '13', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('140', '2', '14', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('141', '2', '15', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('142', '2', '16', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('143', '2', '17', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('144', '2', '18', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('145', '2', '19', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('146', '2', '20', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('147', '2', '21', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('183', '31', '24', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('184', '31', '25', '夏季');
-INSERT INTO `pms_product_attribute_value` VALUES ('185', '31', '37', '青年');
-INSERT INTO `pms_product_attribute_value` VALUES ('186', '31', '38', '2018年夏');
-INSERT INTO `pms_product_attribute_value` VALUES ('187', '31', '39', '短袖');
-INSERT INTO `pms_product_attribute_value` VALUES ('198', '30', '24', null);
-INSERT INTO `pms_product_attribute_value` VALUES ('199', '30', '25', '夏季');
-INSERT INTO `pms_product_attribute_value` VALUES ('200', '30', '37', '青年');
-INSERT INTO `pms_product_attribute_value` VALUES ('201', '30', '38', '2018年夏');
-INSERT INTO `pms_product_attribute_value` VALUES ('202', '30', '39', '短袖');
-INSERT INTO `pms_product_attribute_value` VALUES ('203', '26', '43', '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES ('204', '26', '45', '5.0');
-INSERT INTO `pms_product_attribute_value` VALUES ('205', '26', '46', '4G');
-INSERT INTO `pms_product_attribute_value` VALUES ('206', '26', '47', 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES ('207', '26', '48', '3000');
-INSERT INTO `pms_product_attribute_value` VALUES ('213', '27', '43', '黑色,蓝色');
-INSERT INTO `pms_product_attribute_value` VALUES ('214', '27', '45', '5.8');
-INSERT INTO `pms_product_attribute_value` VALUES ('215', '27', '46', '4G');
-INSERT INTO `pms_product_attribute_value` VALUES ('216', '27', '47', 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES ('217', '27', '48', '3000ml');
-INSERT INTO `pms_product_attribute_value` VALUES ('218', '28', '43', '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES ('219', '28', '45', '5.0');
-INSERT INTO `pms_product_attribute_value` VALUES ('220', '28', '46', '4G');
-INSERT INTO `pms_product_attribute_value` VALUES ('221', '28', '47', 'Android');
-INSERT INTO `pms_product_attribute_value` VALUES ('222', '28', '48', '2800ml');
-INSERT INTO `pms_product_attribute_value` VALUES ('223', '29', '43', '金色,银色');
-INSERT INTO `pms_product_attribute_value` VALUES ('224', '29', '45', '4.7');
-INSERT INTO `pms_product_attribute_value` VALUES ('225', '29', '46', '4G');
-INSERT INTO `pms_product_attribute_value` VALUES ('226', '29', '47', 'IOS');
-INSERT INTO `pms_product_attribute_value` VALUES ('227', '29', '48', '1960ml');
+INSERT INTO `ums_admin` VALUES (1, 'test', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg.jpg', 'test@qq.com', '测试账号', NULL, '2018-09-29 13:55:30', '2018-09-29 13:55:39', 1);
+INSERT INTO `ums_admin` VALUES (3, 'admin', '$2a$10$.E1FokumK5GIXWgKlg.Hc.i/0/2.qdAwYFL1zc5QHdyzpXOr38RZO', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg.jpg', 'admin@163.com', '系统管理员', '系统管理员', '2018-10-08 13:32:47', '2019-04-20 12:45:16', 1);
+INSERT INTO `ums_admin` VALUES (4, 'macro', '$2a$10$Bx4jZPR7GhEpIQfefDQtVeS58GfT5n6mxs/b4nLLK65eMFa16topa', 'string', 'macro@qq.com', 'macro', 'macro专用', '2019-10-06 15:53:51', '2020-02-03 14:55:55', 1);
+INSERT INTO `ums_admin` VALUES (6, 'productAdmin', '$2a$10$6/.J.p.6Bhn7ic4GfoB5D.pGd7xSiD1a9M6ht6yO0fxzlKJPjRAGm', NULL, 'product@qq.com', '商品管理员', '只有商品权限', '2020-02-07 16:15:08', NULL, 1);
+INSERT INTO `ums_admin` VALUES (7, 'orderAdmin', '$2a$10$UqEhA9UZXjHHA3B.L9wNG.6aerrBjC6WHTtbv1FdvYPUI.7lkL6E.', NULL, 'order@qq.com', '订单管理员', '只有订单管理权限', '2020-02-07 16:15:50', NULL, 1);
+INSERT INTO `ums_admin` VALUES (10, 'ceshi', '$2a$10$RaaNo9CC0RSms8mc/gJpCuOWndDT4pHH0u5XgZdAAYFs1Uq4sOPRi', NULL, 'ceshi@qq.com', 'ceshi', NULL, '2020-03-13 16:23:30', NULL, 1);
-- ----------------------------
--- Table structure for pms_product_category
+-- Table structure for ums_admin_login_log
-- ----------------------------
-DROP TABLE IF EXISTS `pms_product_category`;
-CREATE TABLE `pms_product_category` (
+DROP TABLE IF EXISTS `ums_admin_login_log`;
+CREATE TABLE `ums_admin_login_log` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `parent_id` bigint(20) DEFAULT NULL COMMENT '上机分类的编号:0表示一级分类',
- `name` varchar(64) DEFAULT NULL,
- `level` int(1) DEFAULT NULL COMMENT '分类级别:0->1级;1->2级',
- `product_count` int(11) DEFAULT NULL,
- `product_unit` varchar(64) DEFAULT NULL,
- `nav_status` int(1) DEFAULT NULL COMMENT '是否显示在导航栏:0->不显示;1->显示',
- `show_status` int(1) DEFAULT NULL COMMENT '显示状态:0->不显示;1->显示',
- `sort` int(11) DEFAULT NULL,
- `icon` varchar(255) DEFAULT NULL COMMENT '图标',
- `keywords` varchar(255) DEFAULT NULL,
- `description` text COMMENT '描述',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=53 DEFAULT CHARSET=utf8 COMMENT='产品分类';
+ `admin_id` bigint(20) NULL DEFAULT NULL,
+ `create_time` datetime NULL DEFAULT NULL,
+ `ip` varchar(64) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `address` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,
+ `user_agent` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '浏览器登录类型',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 310 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户登录日志表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of pms_product_category
--- ----------------------------
-INSERT INTO `pms_product_category` VALUES ('1', '0', '服装', '0', '100', '件', '1', '1', '1', null, '服装', '服装分类');
-INSERT INTO `pms_product_category` VALUES ('2', '0', '手机数码', '0', '100', '件', '1', '1', '1', null, '手机数码', '手机数码');
-INSERT INTO `pms_product_category` VALUES ('3', '0', '家用电器', '0', '100', '件', '1', '1', '1', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/subject_cate_jiadian.png', '家用电器', '家用电器');
-INSERT INTO `pms_product_category` VALUES ('4', '0', '家具家装', '0', '100', '件', '1', '1', '1', null, '家具家装', '家具家装');
-INSERT INTO `pms_product_category` VALUES ('5', '0', '汽车用品', '0', '100', '件', '1', '1', '1', null, '汽车用品', '汽车用品');
-INSERT INTO `pms_product_category` VALUES ('7', '1', '外套', '1', '100', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_waitao.png', '外套', '外套');
-INSERT INTO `pms_product_category` VALUES ('8', '1', 'T恤', '1', '100', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_tshirt.png', 'T恤', 'T恤');
-INSERT INTO `pms_product_category` VALUES ('9', '1', '休闲裤', '1', '100', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_xiuxianku.png', '休闲裤', '休闲裤');
-INSERT INTO `pms_product_category` VALUES ('10', '1', '牛仔裤', '1', '100', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_niuzaiku.png', '牛仔裤', '牛仔裤');
-INSERT INTO `pms_product_category` VALUES ('11', '1', '衬衫', '1', '100', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_chenshan.png', '衬衫', '衬衫分类');
-INSERT INTO `pms_product_category` VALUES ('13', '12', '家电子分类1', '1', '1', 'string', '0', '1', '0', 'string', 'string', 'string');
-INSERT INTO `pms_product_category` VALUES ('14', '12', '家电子分类2', '1', '1', 'string', '0', '1', '0', 'string', 'string', 'string');
-INSERT INTO `pms_product_category` VALUES ('19', '2', '手机通讯', '1', '0', '件', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_shouji.png', '手机通讯', '手机通讯');
-INSERT INTO `pms_product_category` VALUES ('29', '1', '男鞋', '1', '0', '', '0', '0', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_xie.png', '', '');
-INSERT INTO `pms_product_category` VALUES ('30', '2', '手机配件', '1', '0', '', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_peijian.png', '手机配件', '手机配件');
-INSERT INTO `pms_product_category` VALUES ('31', '2', '摄影摄像', '1', '0', '', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_sheying.png', '', '');
-INSERT INTO `pms_product_category` VALUES ('32', '2', '影音娱乐', '1', '0', '', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_yule.png', '', '');
-INSERT INTO `pms_product_category` VALUES ('33', '2', '数码配件', '1', '0', '', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_yule.png', '', '');
-INSERT INTO `pms_product_category` VALUES ('34', '2', '智能设备', '1', '0', '', '1', '1', '0', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/product_cate_zhineng.png', '', '');
-INSERT INTO `pms_product_category` VALUES ('35', '3', '电视', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('36', '3', '空调', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('37', '3', '洗衣机', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('38', '3', '冰箱', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('39', '3', '厨卫大电', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('40', '3', '厨房小电', '1', '0', '', '0', '0', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('41', '3', '生活电器', '1', '0', '', '0', '0', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('42', '3', '个护健康', '1', '0', '', '0', '0', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('43', '4', '厨房卫浴', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('44', '4', '灯饰照明', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('45', '4', '五金工具', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('46', '4', '卧室家具', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('47', '4', '客厅家具', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('48', '5', '全新整车', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('49', '5', '车载电器', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('50', '5', '维修保养', '1', '0', '', '1', '1', '0', '', '', '');
-INSERT INTO `pms_product_category` VALUES ('51', '5', '汽车装饰', '1', '0', '', '1', '1', '0', '', '', '');
+-- Records of ums_admin_login_log
+-- ----------------------------
+INSERT INTO `ums_admin_login_log` VALUES (285, 3, '2020-08-24 14:05:21', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (286, 10, '2020-08-24 14:05:39', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (287, 3, '2020-09-08 21:28:40', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (288, 3, '2021-03-28 10:38:25', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (289, 3, '2021-03-28 10:40:47', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (290, 3, '2022-04-29 09:40:54', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (291, 3, '2022-04-29 10:39:16', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (292, 3, '2022-05-06 10:45:59', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (293, 6, '2022-05-06 10:59:57', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (294, 3, '2022-05-07 16:56:22', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (295, 3, '2022-05-10 09:49:07', '127.0.0.1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (296, 3, '2022-05-10 09:52:17', '127.0.0.1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (297, 3, '2022-05-10 09:52:37', '127.0.0.1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (298, 3, '2022-05-10 10:05:09', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (299, 3, '2022-05-19 14:39:59', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (300, 3, '2022-05-19 14:46:25', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (301, 3, '2022-05-19 14:46:27', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (302, 3, '2022-05-20 16:22:54', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (303, 3, '2022-05-20 16:28:22', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (304, 3, '2022-05-25 10:39:07', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (305, 1, '2022-07-27 15:55:59', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (306, 1, '2022-07-27 15:57:02', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (307, 1, '2022-07-27 15:59:32', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (308, 1, '2022-07-28 10:44:23', '0:0:0:0:0:0:0:1', NULL, NULL);
+INSERT INTO `ums_admin_login_log` VALUES (309, 3, '2022-08-11 10:09:50', '0:0:0:0:0:0:0:1', NULL, NULL);
-- ----------------------------
--- Table structure for ums_admin
+-- Table structure for ums_admin_role_relation
-- ----------------------------
-DROP TABLE IF EXISTS `ums_admin`;
-CREATE TABLE `ums_admin` (
+DROP TABLE IF EXISTS `ums_admin_role_relation`;
+CREATE TABLE `ums_admin_role_relation` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `username` varchar(64) DEFAULT NULL,
- `password` varchar(64) DEFAULT NULL,
- `icon` varchar(500) DEFAULT NULL COMMENT '头像',
- `email` varchar(100) DEFAULT NULL COMMENT '邮箱',
- `nick_name` varchar(200) DEFAULT NULL COMMENT '昵称',
- `note` varchar(500) DEFAULT NULL COMMENT '备注信息',
- `create_time` datetime DEFAULT NULL COMMENT '创建时间',
- `login_time` datetime DEFAULT NULL COMMENT '最后登录时间',
- `status` int(1) DEFAULT '1' COMMENT '帐号启用状态:0->禁用;1->启用',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='后台用户表';
+ `admin_id` bigint(20) NULL DEFAULT NULL,
+ `role_id` bigint(20) NULL DEFAULT NULL,
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 40 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户和角色关系表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of ums_admin
+-- Records of ums_admin_role_relation
-- ----------------------------
-INSERT INTO `ums_admin` VALUES ('1', 'test', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20180607/timg.jpg', null, '测试账号', null, '2018-09-29 13:55:30', '2018-09-29 13:55:39', '1');
-INSERT INTO `ums_admin` VALUES ('3', 'admin', '$2a$10$NZ5o7r2E.ayT2ZoxgjlI.eJ6OEYqjH7INR/F.mXDbjZJi9HF0YCVG', 'http://macro-oss.oss-cn-shenzhen.aliyuncs.com/mall/images/20190129/170157_yIl3_1767531.jpg', 'admin@163.com', '系统管理员', '系统管理员', '2018-10-08 13:32:47', '2019-03-20 15:38:50', '1');
+INSERT INTO `ums_admin_role_relation` VALUES (26, 3, 5);
+INSERT INTO `ums_admin_role_relation` VALUES (27, 6, 1);
+INSERT INTO `ums_admin_role_relation` VALUES (28, 7, 2);
+INSERT INTO `ums_admin_role_relation` VALUES (29, 1, 5);
+INSERT INTO `ums_admin_role_relation` VALUES (30, 4, 5);
+INSERT INTO `ums_admin_role_relation` VALUES (31, 8, 5);
+INSERT INTO `ums_admin_role_relation` VALUES (34, 12, 6);
+INSERT INTO `ums_admin_role_relation` VALUES (38, 13, 5);
+INSERT INTO `ums_admin_role_relation` VALUES (39, 10, 8);
-- ----------------------------
--- Table structure for ums_admin_permission_relation
+-- Table structure for ums_menu
-- ----------------------------
-DROP TABLE IF EXISTS `ums_admin_permission_relation`;
-CREATE TABLE `ums_admin_permission_relation` (
+DROP TABLE IF EXISTS `ums_menu`;
+CREATE TABLE `ums_menu` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `admin_id` bigint(20) DEFAULT NULL,
- `permission_id` bigint(20) DEFAULT NULL,
- `type` int(1) DEFAULT NULL,
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='后台用户和权限关系表(除角色中定义的权限以外的加减权限)';
+ `parent_id` bigint(20) NULL DEFAULT NULL COMMENT '父级ID',
+ `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+ `title` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '菜单名称',
+ `level` int(4) NULL DEFAULT NULL COMMENT '菜单级数',
+ `sort` int(4) NULL DEFAULT NULL COMMENT '菜单排序',
+ `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '前端名称',
+ `icon` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '前端图标',
+ `hidden` int(1) NULL DEFAULT NULL COMMENT '前端隐藏',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 26 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台菜单表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of ums_admin_permission_relation
--- ----------------------------
+-- Records of ums_menu
+-- ----------------------------
+INSERT INTO `ums_menu` VALUES (1, 0, '2020-02-02 14:50:36', '商品', 0, 0, 'pms', 'product', 1);
+INSERT INTO `ums_menu` VALUES (2, 1, '2020-02-02 14:51:50', '商品列表', 1, 0, 'product', 'product-list', 0);
+INSERT INTO `ums_menu` VALUES (3, 1, '2020-02-02 14:52:44', '添加商品', 1, 0, 'addProduct', 'product-add', 0);
+INSERT INTO `ums_menu` VALUES (4, 1, '2020-02-02 14:53:51', '商品分类', 1, 0, 'productCate', 'product-cate', 0);
+INSERT INTO `ums_menu` VALUES (5, 1, '2020-02-02 14:54:51', '商品类型', 1, 0, 'productAttr', 'product-attr', 0);
+INSERT INTO `ums_menu` VALUES (6, 1, '2020-02-02 14:56:29', '品牌管理', 1, 0, 'brand', 'product-brand', 0);
+INSERT INTO `ums_menu` VALUES (7, 0, '2020-02-02 16:54:07', '订单', 0, 0, 'oms', 'order', 1);
+INSERT INTO `ums_menu` VALUES (8, 7, '2020-02-02 16:55:18', '订单列表', 1, 0, 'order', 'product-list', 0);
+INSERT INTO `ums_menu` VALUES (9, 7, '2020-02-02 16:56:46', '订单设置', 1, 0, 'orderSetting', 'order-setting', 0);
+INSERT INTO `ums_menu` VALUES (10, 7, '2020-02-02 16:57:39', '退货申请处理', 1, 0, 'returnApply', 'order-return', 0);
+INSERT INTO `ums_menu` VALUES (11, 7, '2020-02-02 16:59:40', '退货原因设置', 1, 0, 'returnReason', 'order-return-reason', 0);
+INSERT INTO `ums_menu` VALUES (12, 0, '2020-02-04 16:18:00', '营销', 0, 0, 'sms', 'sms', 1);
+INSERT INTO `ums_menu` VALUES (13, 12, '2020-02-04 16:19:22', '秒杀活动列表', 1, 0, 'flash', 'sms-flash', 0);
+INSERT INTO `ums_menu` VALUES (14, 12, '2020-02-04 16:20:16', '优惠券列表', 1, 0, 'coupon', 'sms-coupon', 0);
+INSERT INTO `ums_menu` VALUES (16, 12, '2020-02-07 16:22:38', '品牌推荐', 1, 0, 'homeBrand', 'product-brand', 0);
+INSERT INTO `ums_menu` VALUES (17, 12, '2020-02-07 16:23:14', '新品推荐', 1, 0, 'homeNew', 'sms-new', 0);
+INSERT INTO `ums_menu` VALUES (18, 12, '2020-02-07 16:26:38', '人气推荐', 1, 0, 'homeHot', 'sms-hot', 0);
+INSERT INTO `ums_menu` VALUES (19, 12, '2020-02-07 16:28:16', '专题推荐', 1, 0, 'homeSubject', 'sms-subject', 0);
+INSERT INTO `ums_menu` VALUES (20, 12, '2020-02-07 16:28:42', '广告列表', 1, 0, 'homeAdvertise', 'sms-ad', 0);
+INSERT INTO `ums_menu` VALUES (21, 0, '2020-02-07 16:29:13', '权限', 0, 0, 'ums', 'ums', 0);
+INSERT INTO `ums_menu` VALUES (22, 21, '2020-02-07 16:29:51', '用户列表', 1, 0, 'admin', 'ums-admin', 0);
+INSERT INTO `ums_menu` VALUES (23, 21, '2020-02-07 16:30:13', '角色列表', 1, 0, 'role', 'ums-role', 0);
+INSERT INTO `ums_menu` VALUES (24, 21, '2020-02-07 16:30:53', '菜单列表', 1, 0, 'menu', 'ums-menu', 0);
+INSERT INTO `ums_menu` VALUES (25, 21, '2020-02-07 16:31:13', '资源列表', 1, 0, 'resource', 'ums-resource', 0);
-- ----------------------------
--- Table structure for ums_admin_role_relation
+-- Table structure for ums_resource
-- ----------------------------
-DROP TABLE IF EXISTS `ums_admin_role_relation`;
-CREATE TABLE `ums_admin_role_relation` (
+DROP TABLE IF EXISTS `ums_resource`;
+CREATE TABLE `ums_resource` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `admin_id` bigint(20) DEFAULT NULL,
- `role_id` bigint(20) DEFAULT NULL,
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=17 DEFAULT CHARSET=utf8 COMMENT='后台用户和角色关系表';
+ `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+ `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '资源名称',
+ `url` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '资源URL',
+ `description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
+ `category_id` bigint(20) NULL DEFAULT NULL COMMENT '资源分类ID',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 30 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台资源表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of ums_admin_role_relation
--- ----------------------------
-INSERT INTO `ums_admin_role_relation` VALUES ('13', '3', '1');
-INSERT INTO `ums_admin_role_relation` VALUES ('15', '3', '2');
-INSERT INTO `ums_admin_role_relation` VALUES ('16', '3', '4');
+-- Records of ums_resource
+-- ----------------------------
+INSERT INTO `ums_resource` VALUES (1, '2020-02-04 17:04:55', '商品品牌管理', '/brand/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (2, '2020-02-04 17:05:35', '商品属性分类管理', '/productAttribute/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (3, '2020-02-04 17:06:13', '商品属性管理', '/productAttribute/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (4, '2020-02-04 17:07:15', '商品分类管理', '/productCategory/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (5, '2020-02-04 17:09:16', '商品管理', '/product/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (6, '2020-02-04 17:09:53', '商品库存管理', '/sku/**', NULL, 1);
+INSERT INTO `ums_resource` VALUES (8, '2020-02-05 14:43:37', '订单管理', '/order/**', '', 2);
+INSERT INTO `ums_resource` VALUES (9, '2020-02-05 14:44:22', ' 订单退货申请管理', '/returnApply/**', '', 2);
+INSERT INTO `ums_resource` VALUES (10, '2020-02-05 14:45:08', '退货原因管理', '/returnReason/**', '', 2);
+INSERT INTO `ums_resource` VALUES (11, '2020-02-05 14:45:43', '订单设置管理', '/orderSetting/**', '', 2);
+INSERT INTO `ums_resource` VALUES (12, '2020-02-05 14:46:23', '收货地址管理', '/companyAddress/**', '', 2);
+INSERT INTO `ums_resource` VALUES (13, '2020-02-07 16:37:22', '优惠券管理', '/coupon/**', '', 3);
+INSERT INTO `ums_resource` VALUES (14, '2020-02-07 16:37:59', '优惠券领取记录管理', '/couponHistory/**', '', 3);
+INSERT INTO `ums_resource` VALUES (15, '2020-02-07 16:38:28', '限时购活动管理', '/flash/**', '', 3);
+INSERT INTO `ums_resource` VALUES (16, '2020-02-07 16:38:59', '限时购商品关系管理', '/flashProductRelation/**', '', 3);
+INSERT INTO `ums_resource` VALUES (17, '2020-02-07 16:39:22', '限时购场次管理', '/flashSession/**', '', 3);
+INSERT INTO `ums_resource` VALUES (18, '2020-02-07 16:40:07', '首页轮播广告管理', '/home/advertise/**', '', 3);
+INSERT INTO `ums_resource` VALUES (19, '2020-02-07 16:40:34', '首页品牌管理', '/home/brand/**', '', 3);
+INSERT INTO `ums_resource` VALUES (20, '2020-02-07 16:41:06', '首页新品管理', '/home/newProduct/**', '', 3);
+INSERT INTO `ums_resource` VALUES (21, '2020-02-07 16:42:16', '首页人气推荐管理', '/home/recommendProduct/**', '', 3);
+INSERT INTO `ums_resource` VALUES (22, '2020-02-07 16:42:48', '首页专题推荐管理', '/home/recommendSubject/**', '', 3);
+INSERT INTO `ums_resource` VALUES (23, '2020-02-07 16:44:56', ' 商品优选管理', '/prefrenceArea/**', '', 5);
+INSERT INTO `ums_resource` VALUES (24, '2020-02-07 16:45:39', '商品专题管理', '/subject/**', '', 5);
+INSERT INTO `ums_resource` VALUES (25, '2020-02-07 16:47:34', '后台用户管理', '/admin/**', '', 4);
+INSERT INTO `ums_resource` VALUES (26, '2020-02-07 16:48:24', '后台用户角色管理', '/role/**', '', 4);
+INSERT INTO `ums_resource` VALUES (27, '2020-02-07 16:48:48', '后台菜单管理', '/menu/**', '', 4);
+INSERT INTO `ums_resource` VALUES (28, '2020-02-07 16:49:18', '后台资源分类管理', '/resourceCategory/**', '', 4);
+INSERT INTO `ums_resource` VALUES (29, '2020-02-07 16:49:45', '后台资源管理', '/resource/**', '', 4);
-- ----------------------------
--- Table structure for ums_permission
+-- Table structure for ums_resource_category
-- ----------------------------
-DROP TABLE IF EXISTS `ums_permission`;
-CREATE TABLE `ums_permission` (
+DROP TABLE IF EXISTS `ums_resource_category`;
+CREATE TABLE `ums_resource_category` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `pid` bigint(20) DEFAULT NULL COMMENT '父级权限id',
- `name` varchar(100) DEFAULT NULL COMMENT '名称',
- `value` varchar(200) DEFAULT NULL COMMENT '权限值',
- `icon` varchar(500) DEFAULT NULL COMMENT '图标',
- `type` int(1) DEFAULT NULL COMMENT '权限类型:0->目录;1->菜单;2->按钮(接口绑定权限)',
- `uri` varchar(200) DEFAULT NULL COMMENT '前端资源路径',
- `status` int(1) DEFAULT NULL COMMENT '启用状态;0->禁用;1->启用',
- `create_time` datetime DEFAULT NULL COMMENT '创建时间',
- `sort` int(11) DEFAULT NULL COMMENT '排序',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=19 DEFAULT CHARSET=utf8 COMMENT='后台用户权限表';
+ `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+ `name` varchar(200) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类名称',
+ `sort` int(4) NULL DEFAULT NULL COMMENT '排序',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 7 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '资源分类表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of ums_permission
--- ----------------------------
-INSERT INTO `ums_permission` VALUES ('1', '0', '商品', null, null, '0', null, '1', '2018-09-29 16:15:14', '0');
-INSERT INTO `ums_permission` VALUES ('2', '1', '商品列表', 'pms:product:read', null, '1', '/pms/product/index', '1', '2018-09-29 16:17:01', '0');
-INSERT INTO `ums_permission` VALUES ('3', '1', '添加商品', 'pms:product:create', null, '1', '/pms/product/add', '1', '2018-09-29 16:18:51', '0');
-INSERT INTO `ums_permission` VALUES ('4', '1', '商品分类', 'pms:productCategory:read', null, '1', '/pms/productCate/index', '1', '2018-09-29 16:23:07', '0');
-INSERT INTO `ums_permission` VALUES ('5', '1', '商品类型', 'pms:productAttribute:read', null, '1', '/pms/productAttr/index', '1', '2018-09-29 16:24:43', '0');
-INSERT INTO `ums_permission` VALUES ('6', '1', '品牌管理', 'pms:brand:read', null, '1', '/pms/brand/index', '1', '2018-09-29 16:25:45', '0');
-INSERT INTO `ums_permission` VALUES ('7', '2', '编辑商品', 'pms:product:update', null, '2', '/pms/product/updateProduct', '1', '2018-09-29 16:34:23', '0');
-INSERT INTO `ums_permission` VALUES ('8', '2', '删除商品', 'pms:product:delete', null, '2', '/pms/product/delete', '1', '2018-09-29 16:38:33', '0');
-INSERT INTO `ums_permission` VALUES ('9', '4', '添加商品分类', 'pms:productCategory:create', null, '2', '/pms/productCate/create', '1', '2018-09-29 16:43:23', '0');
-INSERT INTO `ums_permission` VALUES ('10', '4', '修改商品分类', 'pms:productCategory:update', null, '2', '/pms/productCate/update', '1', '2018-09-29 16:43:55', '0');
-INSERT INTO `ums_permission` VALUES ('11', '4', '删除商品分类', 'pms:productCategory:delete', null, '2', '/pms/productAttr/delete', '1', '2018-09-29 16:44:38', '0');
-INSERT INTO `ums_permission` VALUES ('12', '5', '添加商品类型', 'pms:productAttribute:create', null, '2', '/pms/productAttr/create', '1', '2018-09-29 16:45:25', '0');
-INSERT INTO `ums_permission` VALUES ('13', '5', '修改商品类型', 'pms:productAttribute:update', null, '2', '/pms/productAttr/update', '1', '2018-09-29 16:48:08', '0');
-INSERT INTO `ums_permission` VALUES ('14', '5', '删除商品类型', 'pms:productAttribute:delete', null, '2', '/pms/productAttr/delete', '1', '2018-09-29 16:48:44', '0');
-INSERT INTO `ums_permission` VALUES ('15', '6', '添加品牌', 'pms:brand:create', null, '2', '/pms/brand/add', '1', '2018-09-29 16:49:34', '0');
-INSERT INTO `ums_permission` VALUES ('16', '6', '修改品牌', 'pms:brand:update', null, '2', '/pms/brand/update', '1', '2018-09-29 16:50:55', '0');
-INSERT INTO `ums_permission` VALUES ('17', '6', '删除品牌', 'pms:brand:delete', null, '2', '/pms/brand/delete', '1', '2018-09-29 16:50:59', '0');
-INSERT INTO `ums_permission` VALUES ('18', '0', '首页', null, null, '0', null, '1', '2018-09-29 16:51:57', '0');
+-- Records of ums_resource_category
+-- ----------------------------
+INSERT INTO `ums_resource_category` VALUES (1, '2020-02-05 10:21:44', '商品模块', 0);
+INSERT INTO `ums_resource_category` VALUES (2, '2020-02-05 10:22:34', '订单模块', 0);
+INSERT INTO `ums_resource_category` VALUES (3, '2020-02-05 10:22:48', '营销模块', 0);
+INSERT INTO `ums_resource_category` VALUES (4, '2020-02-05 10:23:04', '权限模块', 0);
+INSERT INTO `ums_resource_category` VALUES (5, '2020-02-07 16:34:27', '内容模块', 0);
+INSERT INTO `ums_resource_category` VALUES (6, '2020-02-07 16:35:49', '其他模块', 0);
-- ----------------------------
-- Table structure for ums_role
-- ----------------------------
DROP TABLE IF EXISTS `ums_role`;
-CREATE TABLE `ums_role` (
+CREATE TABLE `ums_role` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `name` varchar(100) DEFAULT NULL COMMENT '名称',
- `description` varchar(500) DEFAULT NULL COMMENT '描述',
- `admin_count` int(11) DEFAULT NULL COMMENT '后台用户数量',
- `create_time` datetime DEFAULT NULL COMMENT '创建时间',
- `status` int(1) DEFAULT '1' COMMENT '启用状态:0->禁用;1->启用',
- `sort` int(11) DEFAULT '0',
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8 COMMENT='后台用户角色表';
+ `name` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '名称',
+ `description` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
+ `admin_count` int(11) NULL DEFAULT NULL COMMENT '后台用户数量',
+ `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
+ `status` int(1) NULL DEFAULT 1 COMMENT '启用状态:0->禁用;1->启用',
+ `sort` int(11) NULL DEFAULT 0,
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 9 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台用户角色表' ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of ums_role
-- ----------------------------
-INSERT INTO `ums_role` VALUES ('1', '商品管理员', '商品管理员', '0', '2018-09-30 15:46:11', '1', '0');
-INSERT INTO `ums_role` VALUES ('2', '商品分类管理员', '商品分类管理员', '0', '2018-09-30 15:53:45', '1', '0');
-INSERT INTO `ums_role` VALUES ('3', '商品类型管理员', '商品类型管理员', '0', '2018-09-30 15:53:56', '1', '0');
-INSERT INTO `ums_role` VALUES ('4', '品牌管理员', '品牌管理员', '0', '2018-09-30 15:54:12', '1', '0');
+INSERT INTO `ums_role` VALUES (1, '商品管理员', '只能查看及操作商品', 0, '2020-02-03 16:50:37', 1, 0);
+INSERT INTO `ums_role` VALUES (2, '订单管理员', '只能查看及操作订单', 0, '2018-09-30 15:53:45', 1, 0);
+INSERT INTO `ums_role` VALUES (5, '超级管理员', '拥有所有查看和操作功能', 0, '2020-02-02 15:11:05', 1, 0);
+INSERT INTO `ums_role` VALUES (8, '权限管理员', '用于权限模块所有操作功能', 0, '2020-08-24 10:57:35', 1, 0);
-- ----------------------------
--- Table structure for ums_role_permission_relation
+-- Table structure for ums_role_menu_relation
-- ----------------------------
-DROP TABLE IF EXISTS `ums_role_permission_relation`;
-CREATE TABLE `ums_role_permission_relation` (
+DROP TABLE IF EXISTS `ums_role_menu_relation`;
+CREATE TABLE `ums_role_menu_relation` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
- `role_id` bigint(20) DEFAULT NULL,
- `permission_id` bigint(20) DEFAULT NULL,
- PRIMARY KEY (`id`)
-) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COMMENT='后台用户角色和权限关系表';
+ `role_id` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
+ `menu_id` bigint(20) NULL DEFAULT NULL COMMENT '菜单ID',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 111 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台角色菜单关系表' ROW_FORMAT = Dynamic;
-- ----------------------------
--- Records of ums_role_permission_relation
--- ----------------------------
-INSERT INTO `ums_role_permission_relation` VALUES ('1', '1', '1');
-INSERT INTO `ums_role_permission_relation` VALUES ('2', '1', '2');
-INSERT INTO `ums_role_permission_relation` VALUES ('3', '1', '3');
-INSERT INTO `ums_role_permission_relation` VALUES ('4', '1', '7');
-INSERT INTO `ums_role_permission_relation` VALUES ('5', '1', '8');
-INSERT INTO `ums_role_permission_relation` VALUES ('6', '2', '4');
-INSERT INTO `ums_role_permission_relation` VALUES ('7', '2', '9');
-INSERT INTO `ums_role_permission_relation` VALUES ('8', '2', '10');
-INSERT INTO `ums_role_permission_relation` VALUES ('9', '2', '11');
-INSERT INTO `ums_role_permission_relation` VALUES ('10', '3', '5');
-INSERT INTO `ums_role_permission_relation` VALUES ('11', '3', '12');
-INSERT INTO `ums_role_permission_relation` VALUES ('12', '3', '13');
-INSERT INTO `ums_role_permission_relation` VALUES ('13', '3', '14');
-INSERT INTO `ums_role_permission_relation` VALUES ('14', '4', '6');
-INSERT INTO `ums_role_permission_relation` VALUES ('15', '4', '15');
-INSERT INTO `ums_role_permission_relation` VALUES ('16', '4', '16');
-INSERT INTO `ums_role_permission_relation` VALUES ('17', '4', '17');
+-- Records of ums_role_menu_relation
+-- ----------------------------
+INSERT INTO `ums_role_menu_relation` VALUES (33, 1, 1);
+INSERT INTO `ums_role_menu_relation` VALUES (34, 1, 2);
+INSERT INTO `ums_role_menu_relation` VALUES (35, 1, 3);
+INSERT INTO `ums_role_menu_relation` VALUES (36, 1, 4);
+INSERT INTO `ums_role_menu_relation` VALUES (37, 1, 5);
+INSERT INTO `ums_role_menu_relation` VALUES (38, 1, 6);
+INSERT INTO `ums_role_menu_relation` VALUES (53, 2, 7);
+INSERT INTO `ums_role_menu_relation` VALUES (54, 2, 8);
+INSERT INTO `ums_role_menu_relation` VALUES (55, 2, 9);
+INSERT INTO `ums_role_menu_relation` VALUES (56, 2, 10);
+INSERT INTO `ums_role_menu_relation` VALUES (57, 2, 11);
+INSERT INTO `ums_role_menu_relation` VALUES (72, 5, 1);
+INSERT INTO `ums_role_menu_relation` VALUES (73, 5, 2);
+INSERT INTO `ums_role_menu_relation` VALUES (74, 5, 3);
+INSERT INTO `ums_role_menu_relation` VALUES (75, 5, 4);
+INSERT INTO `ums_role_menu_relation` VALUES (76, 5, 5);
+INSERT INTO `ums_role_menu_relation` VALUES (77, 5, 6);
+INSERT INTO `ums_role_menu_relation` VALUES (78, 5, 7);
+INSERT INTO `ums_role_menu_relation` VALUES (79, 5, 8);
+INSERT INTO `ums_role_menu_relation` VALUES (80, 5, 9);
+INSERT INTO `ums_role_menu_relation` VALUES (81, 5, 10);
+INSERT INTO `ums_role_menu_relation` VALUES (82, 5, 11);
+INSERT INTO `ums_role_menu_relation` VALUES (83, 5, 12);
+INSERT INTO `ums_role_menu_relation` VALUES (84, 5, 13);
+INSERT INTO `ums_role_menu_relation` VALUES (85, 5, 14);
+INSERT INTO `ums_role_menu_relation` VALUES (86, 5, 16);
+INSERT INTO `ums_role_menu_relation` VALUES (87, 5, 17);
+INSERT INTO `ums_role_menu_relation` VALUES (88, 5, 18);
+INSERT INTO `ums_role_menu_relation` VALUES (89, 5, 19);
+INSERT INTO `ums_role_menu_relation` VALUES (90, 5, 20);
+INSERT INTO `ums_role_menu_relation` VALUES (91, 5, 21);
+INSERT INTO `ums_role_menu_relation` VALUES (92, 5, 22);
+INSERT INTO `ums_role_menu_relation` VALUES (93, 5, 23);
+INSERT INTO `ums_role_menu_relation` VALUES (94, 5, 24);
+INSERT INTO `ums_role_menu_relation` VALUES (95, 5, 25);
+INSERT INTO `ums_role_menu_relation` VALUES (96, 6, 21);
+INSERT INTO `ums_role_menu_relation` VALUES (97, 6, 22);
+INSERT INTO `ums_role_menu_relation` VALUES (98, 6, 23);
+INSERT INTO `ums_role_menu_relation` VALUES (99, 6, 24);
+INSERT INTO `ums_role_menu_relation` VALUES (100, 6, 25);
+INSERT INTO `ums_role_menu_relation` VALUES (101, 7, 21);
+INSERT INTO `ums_role_menu_relation` VALUES (102, 7, 22);
+INSERT INTO `ums_role_menu_relation` VALUES (103, 7, 23);
+INSERT INTO `ums_role_menu_relation` VALUES (104, 7, 24);
+INSERT INTO `ums_role_menu_relation` VALUES (105, 7, 25);
+INSERT INTO `ums_role_menu_relation` VALUES (106, 8, 21);
+INSERT INTO `ums_role_menu_relation` VALUES (107, 8, 22);
+INSERT INTO `ums_role_menu_relation` VALUES (108, 8, 23);
+INSERT INTO `ums_role_menu_relation` VALUES (109, 8, 24);
+INSERT INTO `ums_role_menu_relation` VALUES (110, 8, 25);
+
+-- ----------------------------
+-- Table structure for ums_role_resource_relation
+-- ----------------------------
+DROP TABLE IF EXISTS `ums_role_resource_relation`;
+CREATE TABLE `ums_role_resource_relation` (
+ `id` bigint(20) NOT NULL AUTO_INCREMENT,
+ `role_id` bigint(20) NULL DEFAULT NULL COMMENT '角色ID',
+ `resource_id` bigint(20) NULL DEFAULT NULL COMMENT '资源ID',
+ PRIMARY KEY (`id`) USING BTREE
+) ENGINE = InnoDB AUTO_INCREMENT = 216 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '后台角色资源关系表' ROW_FORMAT = Dynamic;
+
+-- ----------------------------
+-- Records of ums_role_resource_relation
+-- ----------------------------
+INSERT INTO `ums_role_resource_relation` VALUES (103, 2, 8);
+INSERT INTO `ums_role_resource_relation` VALUES (104, 2, 9);
+INSERT INTO `ums_role_resource_relation` VALUES (105, 2, 10);
+INSERT INTO `ums_role_resource_relation` VALUES (106, 2, 11);
+INSERT INTO `ums_role_resource_relation` VALUES (107, 2, 12);
+INSERT INTO `ums_role_resource_relation` VALUES (142, 5, 1);
+INSERT INTO `ums_role_resource_relation` VALUES (143, 5, 2);
+INSERT INTO `ums_role_resource_relation` VALUES (144, 5, 3);
+INSERT INTO `ums_role_resource_relation` VALUES (145, 5, 4);
+INSERT INTO `ums_role_resource_relation` VALUES (146, 5, 5);
+INSERT INTO `ums_role_resource_relation` VALUES (147, 5, 6);
+INSERT INTO `ums_role_resource_relation` VALUES (148, 5, 8);
+INSERT INTO `ums_role_resource_relation` VALUES (149, 5, 9);
+INSERT INTO `ums_role_resource_relation` VALUES (150, 5, 10);
+INSERT INTO `ums_role_resource_relation` VALUES (151, 5, 11);
+INSERT INTO `ums_role_resource_relation` VALUES (152, 5, 12);
+INSERT INTO `ums_role_resource_relation` VALUES (153, 5, 13);
+INSERT INTO `ums_role_resource_relation` VALUES (154, 5, 14);
+INSERT INTO `ums_role_resource_relation` VALUES (155, 5, 15);
+INSERT INTO `ums_role_resource_relation` VALUES (156, 5, 16);
+INSERT INTO `ums_role_resource_relation` VALUES (157, 5, 17);
+INSERT INTO `ums_role_resource_relation` VALUES (158, 5, 18);
+INSERT INTO `ums_role_resource_relation` VALUES (159, 5, 19);
+INSERT INTO `ums_role_resource_relation` VALUES (160, 5, 20);
+INSERT INTO `ums_role_resource_relation` VALUES (161, 5, 21);
+INSERT INTO `ums_role_resource_relation` VALUES (162, 5, 22);
+INSERT INTO `ums_role_resource_relation` VALUES (163, 5, 23);
+INSERT INTO `ums_role_resource_relation` VALUES (164, 5, 24);
+INSERT INTO `ums_role_resource_relation` VALUES (165, 5, 25);
+INSERT INTO `ums_role_resource_relation` VALUES (166, 5, 26);
+INSERT INTO `ums_role_resource_relation` VALUES (167, 5, 27);
+INSERT INTO `ums_role_resource_relation` VALUES (168, 5, 28);
+INSERT INTO `ums_role_resource_relation` VALUES (169, 5, 29);
+INSERT INTO `ums_role_resource_relation` VALUES (170, 1, 1);
+INSERT INTO `ums_role_resource_relation` VALUES (171, 1, 2);
+INSERT INTO `ums_role_resource_relation` VALUES (172, 1, 3);
+INSERT INTO `ums_role_resource_relation` VALUES (173, 1, 4);
+INSERT INTO `ums_role_resource_relation` VALUES (174, 1, 5);
+INSERT INTO `ums_role_resource_relation` VALUES (175, 1, 6);
+INSERT INTO `ums_role_resource_relation` VALUES (176, 1, 23);
+INSERT INTO `ums_role_resource_relation` VALUES (177, 1, 24);
+INSERT INTO `ums_role_resource_relation` VALUES (178, 6, 25);
+INSERT INTO `ums_role_resource_relation` VALUES (179, 6, 26);
+INSERT INTO `ums_role_resource_relation` VALUES (180, 6, 27);
+INSERT INTO `ums_role_resource_relation` VALUES (181, 6, 28);
+INSERT INTO `ums_role_resource_relation` VALUES (182, 6, 29);
+INSERT INTO `ums_role_resource_relation` VALUES (205, 7, 25);
+INSERT INTO `ums_role_resource_relation` VALUES (206, 7, 26);
+INSERT INTO `ums_role_resource_relation` VALUES (207, 7, 27);
+INSERT INTO `ums_role_resource_relation` VALUES (208, 7, 28);
+INSERT INTO `ums_role_resource_relation` VALUES (209, 7, 29);
+INSERT INTO `ums_role_resource_relation` VALUES (210, 7, 31);
+INSERT INTO `ums_role_resource_relation` VALUES (211, 8, 25);
+INSERT INTO `ums_role_resource_relation` VALUES (212, 8, 26);
+INSERT INTO `ums_role_resource_relation` VALUES (213, 8, 27);
+INSERT INTO `ums_role_resource_relation` VALUES (214, 8, 28);
+INSERT INTO `ums_role_resource_relation` VALUES (215, 8, 29);
+
+SET FOREIGN_KEY_CHECKS = 1;
diff --git a/mall-tiny-01/pom.xml b/mall-tiny-01/pom.xml
index 588fb63d..1029edba 100644
--- a/mall-tiny-01/pom.xml
+++ b/mall-tiny-01/pom.xml
@@ -2,22 +2,18 @@
4.0.0
- com.macro.mall
+
mall-tiny-01
- 0.0.1-SNAPSHOT
+ 1.0-SNAPSHOT
mall-tiny-01
Demo project for Spring Boot
-
- 1.8
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.3.RELEASE
-
+ com.macro.mall
+ mall-learning-teach
+ 1.0-SNAPSHOT
+
@@ -41,25 +37,37 @@
com.github.pagehelper
pagehelper-spring-boot-starter
- 1.2.10
+ ${pagehelper-starter.version}
com.alibaba
druid-spring-boot-starter
- 1.1.10
+ ${druid.version}
org.mybatis.generator
mybatis-generator-core
- 1.3.3
+ ${mybatis-generator.version}
mysql
mysql-connector-java
- 8.0.15
+ ${mysql-connector.version}
+
+
+
+ org.projectlombok
+ lombok
+ true
+
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
index eb6c7bd9..09aab3d7 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
@@ -5,8 +5,10 @@
import java.util.List;
/**
- * 分页数据封装类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 分页数据封装类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonPage {
private Integer pageNum;
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
index f1d580d5..89948c22 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 通用返回对象
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 通用返回对象
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonResult {
private long code;
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
index cfdf47ed..2ff25ea5 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 封装API的错误码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 封装API的错误码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface IErrorCode {
long getCode();
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
index 2e9368dd..e34a4cfd 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 枚举了一些常用API操作码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 枚举了一些常用API操作码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public enum ResultCode implements IErrorCode {
SUCCESS(200, "操作成功"),
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
index e680ce8a..ad775947 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
@@ -4,10 +4,12 @@
import org.springframework.context.annotation.Configuration;
/**
- * MyBatis配置类
- * Created by macro on 2019/4/8.
+ * @auther macrozheng
+ * @description MyBatis配置类
+ * @date 2019/4/8
+ * @github https://github.com/macrozheng
*/
@Configuration
-@MapperScan("com.macro.mall.tiny.mbg.mapper")
+@MapperScan({"com.macro.mall.tiny.mbg.mapper","com.macro.mall.tiny.dao"})
public class MyBatisConfig {
}
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
index 07d9b067..1c2faccc 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
@@ -15,28 +15,30 @@
/**
- * 品牌管理Controller
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 品牌管理Controller
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
@Controller
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
- private PmsBrandService demoService;
+ private PmsBrandService brandService;
private static final Logger LOGGER = LoggerFactory.getLogger(PmsBrandController.class);
- @RequestMapping(value = "listAll", method = RequestMethod.GET)
+ @RequestMapping(value = "/listAll", method = RequestMethod.GET)
@ResponseBody
public CommonResult> getBrandList() {
- return CommonResult.success(demoService.listAllBrand());
+ return CommonResult.success(brandService.listAllBrand());
}
@RequestMapping(value = "/create", method = RequestMethod.POST)
@ResponseBody
public CommonResult createBrand(@RequestBody PmsBrand pmsBrand) {
CommonResult commonResult;
- int count = demoService.createBrand(pmsBrand);
+ int count = brandService.createBrand(pmsBrand);
if (count == 1) {
commonResult = CommonResult.success(pmsBrand);
LOGGER.debug("createBrand success:{}", pmsBrand);
@@ -51,7 +53,7 @@ public CommonResult createBrand(@RequestBody PmsBrand pmsBrand) {
@ResponseBody
public CommonResult updateBrand(@PathVariable("id") Long id, @RequestBody PmsBrand pmsBrandDto, BindingResult result) {
CommonResult commonResult;
- int count = demoService.updateBrand(id, pmsBrandDto);
+ int count = brandService.updateBrand(id, pmsBrandDto);
if (count == 1) {
commonResult = CommonResult.success(pmsBrandDto);
LOGGER.debug("updateBrand success:{}", pmsBrandDto);
@@ -65,7 +67,7 @@ public CommonResult updateBrand(@PathVariable("id") Long id, @RequestBody PmsBra
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
@ResponseBody
public CommonResult deleteBrand(@PathVariable("id") Long id) {
- int count = demoService.deleteBrand(id);
+ int count = brandService.deleteBrand(id);
if (count == 1) {
LOGGER.debug("deleteBrand success :id={}", id);
return CommonResult.success(null);
@@ -79,13 +81,13 @@ public CommonResult deleteBrand(@PathVariable("id") Long id) {
@ResponseBody
public CommonResult> listBrand(@RequestParam(value = "pageNum", defaultValue = "1") Integer pageNum,
@RequestParam(value = "pageSize", defaultValue = "3") Integer pageSize) {
- List brandList = demoService.listBrand(pageNum, pageSize);
+ List brandList = brandService.listBrand(pageNum, pageSize);
return CommonResult.success(CommonPage.restPage(brandList));
}
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
public CommonResult brand(@PathVariable("id") Long id) {
- return CommonResult.success(demoService.getBrand(id));
+ return CommonResult.success(brandService.getBrand(id));
}
}
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
index ce3ef46c..9ab7143b 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
@@ -9,8 +9,10 @@
import java.util.Properties;
/**
- * 自定义注释生成器
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 自定义注释生成器
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class CommentGenerator extends DefaultCommentGenerator {
private boolean addRemarkComments = false;
@@ -48,7 +50,7 @@ private void addFieldJavaDoc(Field field, String remarks) {
for (String remarkLine : remarkLines) {
field.addJavaDocLine(" * " + remarkLine);
}
- addJavadocTag(field, false);
+// addJavadocTag(field, false);
field.addJavaDocLine(" */");
}
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/Generator.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/Generator.java
index f7851362..64248802 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/Generator.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/Generator.java
@@ -10,8 +10,10 @@
import java.util.List;
/**
- * 用于生产MBG的代码
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 用于生产MBG的代码
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class Generator {
public static void main(String[] args) throws Exception {
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
index 617584fb..408d4737 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
@@ -6,15 +6,15 @@
import org.apache.ibatis.annotations.Param;
public interface PmsBrandMapper {
- int countByExample(PmsBrandExample example);
+ long countByExample(PmsBrandExample example);
int deleteByExample(PmsBrandExample example);
int deleteByPrimaryKey(Long id);
- int insert(PmsBrand record);
+ int insert(PmsBrand row);
- int insertSelective(PmsBrand record);
+ int insertSelective(PmsBrand row);
List selectByExampleWithBLOBs(PmsBrandExample example);
@@ -22,15 +22,15 @@ public interface PmsBrandMapper {
PmsBrand selectByPrimaryKey(Long id);
- int updateByExampleSelective(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExampleSelective(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByExampleWithBLOBs(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExampleWithBLOBs(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByExample(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExample(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByPrimaryKeySelective(PmsBrand record);
+ int updateByPrimaryKeySelective(PmsBrand row);
- int updateByPrimaryKeyWithBLOBs(PmsBrand record);
+ int updateByPrimaryKeyWithBLOBs(PmsBrand row);
- int updateByPrimaryKey(PmsBrand record);
+ int updateByPrimaryKey(PmsBrand row);
}
\ No newline at end of file
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
index 788420c5..49a04205 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
@@ -3,60 +3,58 @@
import java.io.Serializable;
public class PmsBrand implements Serializable {
+ /**
+ * 主键ID
+ */
private Long id;
+ /**
+ * 名称
+ */
private String name;
/**
* 首字母
- *
- * @mbggenerated
*/
private String firstLetter;
+ /**
+ * 排序
+ */
private Integer sort;
/**
* 是否为品牌制造商:0->不是;1->是
- *
- * @mbggenerated
*/
private Integer factoryStatus;
+ /**
+ * 是否显示
+ */
private Integer showStatus;
/**
* 产品数量
- *
- * @mbggenerated
*/
private Integer productCount;
/**
* 产品评论数量
- *
- * @mbggenerated
*/
private Integer productCommentCount;
/**
* 品牌logo
- *
- * @mbggenerated
*/
private String logo;
/**
* 专区大图
- *
- * @mbggenerated
*/
private String bigPic;
/**
* 品牌故事
- *
- * @mbggenerated
*/
private String brandStory;
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
index 4e4a1108..c7e5880b 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
@@ -11,7 +11,7 @@ public class PmsBrandExample {
protected List oredCriteria;
public PmsBrandExample() {
- oredCriteria = new ArrayList();
+ oredCriteria = new ArrayList<>();
}
public void setOrderByClause(String orderByClause) {
@@ -68,7 +68,7 @@ protected abstract static class GeneratedCriteria {
protected GeneratedCriteria() {
super();
- criteria = new ArrayList();
+ criteria = new ArrayList<>();
}
public boolean isValid() {
@@ -746,7 +746,6 @@ public Criteria andBigPicNotBetween(String value1, String value2) {
}
public static class Criteria extends GeneratedCriteria {
-
protected Criteria() {
super();
}
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
index 7171412b..17d3b94e 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
@@ -6,8 +6,10 @@
import java.util.List;
/**
- * PmsBrandService
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface PmsBrandService {
List listAllBrand();
diff --git a/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java b/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
index 2a2b102e..a3e8ac15 100644
--- a/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
+++ b/mall-tiny-01/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
@@ -11,8 +11,10 @@
import java.util.List;
/**
- * PmsBrandService实现类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService实现类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
@Service
public class PmsBrandServiceImpl implements PmsBrandService {
diff --git a/mall-tiny-01/src/main/resources/application.yml b/mall-tiny-01/src/main/resources/application.yml
index 5edcbdbc..2b112a8e 100644
--- a/mall-tiny-01/src/main/resources/application.yml
+++ b/mall-tiny-01/src/main/resources/application.yml
@@ -3,11 +3,11 @@ server:
spring:
datasource:
- url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+ url: jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: root
mybatis:
mapper-locations:
- - classpath:mapper/*.xml
+ - classpath:dao/*.xml
- classpath*:com/**/mapper/*.xml
diff --git a/mall-tiny-01/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml b/mall-tiny-01/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
index 1842e269..8d47261a 100644
--- a/mall-tiny-01/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
+++ b/mall-tiny-01/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
@@ -212,7 +212,7 @@
-
+
select count(*) from pms_brand
@@ -221,74 +221,74 @@
update pms_brand
-
- id = #{record.id,jdbcType=BIGINT},
+
+ id = #{row.id,jdbcType=BIGINT},
-
- name = #{record.name,jdbcType=VARCHAR},
+
+ name = #{row.name,jdbcType=VARCHAR},
-
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
+
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
-
- sort = #{record.sort,jdbcType=INTEGER},
+
+ sort = #{row.sort,jdbcType=INTEGER},
-
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
+
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
-
- show_status = #{record.showStatus,jdbcType=INTEGER},
+
+ show_status = #{row.showStatus,jdbcType=INTEGER},
-
- product_count = #{record.productCount,jdbcType=INTEGER},
+
+ product_count = #{row.productCount,jdbcType=INTEGER},
-
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
+
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
-
- logo = #{record.logo,jdbcType=VARCHAR},
+
+ logo = #{row.logo,jdbcType=VARCHAR},
-
- big_pic = #{record.bigPic,jdbcType=VARCHAR},
+
+ big_pic = #{row.bigPic,jdbcType=VARCHAR},
-
- brand_story = #{record.brandStory,jdbcType=LONGVARCHAR},
+
+ brand_story = #{row.brandStory,jdbcType=LONGVARCHAR},
-
+
update pms_brand
- set id = #{record.id,jdbcType=BIGINT},
- name = #{record.name,jdbcType=VARCHAR},
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
- sort = #{record.sort,jdbcType=INTEGER},
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
- show_status = #{record.showStatus,jdbcType=INTEGER},
- product_count = #{record.productCount,jdbcType=INTEGER},
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
- logo = #{record.logo,jdbcType=VARCHAR},
- big_pic = #{record.bigPic,jdbcType=VARCHAR},
- brand_story = #{record.brandStory,jdbcType=LONGVARCHAR}
-
+ set id = #{row.id,jdbcType=BIGINT},
+ name = #{row.name,jdbcType=VARCHAR},
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
+ sort = #{row.sort,jdbcType=INTEGER},
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
+ show_status = #{row.showStatus,jdbcType=INTEGER},
+ product_count = #{row.productCount,jdbcType=INTEGER},
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
+ logo = #{row.logo,jdbcType=VARCHAR},
+ big_pic = #{row.bigPic,jdbcType=VARCHAR},
+ brand_story = #{row.brandStory,jdbcType=LONGVARCHAR}
+
update pms_brand
- set id = #{record.id,jdbcType=BIGINT},
- name = #{record.name,jdbcType=VARCHAR},
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
- sort = #{record.sort,jdbcType=INTEGER},
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
- show_status = #{record.showStatus,jdbcType=INTEGER},
- product_count = #{record.productCount,jdbcType=INTEGER},
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
- logo = #{record.logo,jdbcType=VARCHAR},
- big_pic = #{record.bigPic,jdbcType=VARCHAR}
-
+ set id = #{row.id,jdbcType=BIGINT},
+ name = #{row.name,jdbcType=VARCHAR},
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
+ sort = #{row.sort,jdbcType=INTEGER},
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
+ show_status = #{row.showStatus,jdbcType=INTEGER},
+ product_count = #{row.productCount,jdbcType=INTEGER},
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
+ logo = #{row.logo,jdbcType=VARCHAR},
+ big_pic = #{row.bigPic,jdbcType=VARCHAR}
+
diff --git a/mall-tiny-01/src/main/resources/generator.properties b/mall-tiny-01/src/main/resources/generator.properties
index 173547bb..c714398a 100644
--- a/mall-tiny-01/src/main/resources/generator.properties
+++ b/mall-tiny-01/src/main/resources/generator.properties
@@ -1,4 +1,4 @@
jdbc.driverClass=com.mysql.cj.jdbc.Driver
-jdbc.connectionURL=jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+jdbc.connectionURL=jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
jdbc.userId=root
jdbc.password=root
\ No newline at end of file
diff --git a/mall-tiny-01/src/main/resources/generatorConfig.xml b/mall-tiny-01/src/main/resources/generatorConfig.xml
index 193e83c1..d93c028f 100644
--- a/mall-tiny-01/src/main/resources/generatorConfig.xml
+++ b/mall-tiny-01/src/main/resources/generatorConfig.xml
@@ -6,33 +6,40 @@
+
+
+
+
+
-
+
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/mall-tiny-01/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java b/mall-tiny-01/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
index fa6880cf..3a562ef8 100644
--- a/mall-tiny-01/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
+++ b/mall-tiny-01/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
@@ -1,11 +1,8 @@
package com.macro.mall.tiny;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
-import org.springframework.test.context.junit4.SpringRunner;
-@RunWith(SpringRunner.class)
@SpringBootTest
public class MallTinyApplicationTests {
diff --git a/mall-tiny-02/pom.xml b/mall-tiny-02/pom.xml
index 752cd722..4a573c4d 100644
--- a/mall-tiny-02/pom.xml
+++ b/mall-tiny-02/pom.xml
@@ -2,22 +2,18 @@
4.0.0
- com.macro.mall
+
mall-tiny-02
- 0.0.1-SNAPSHOT
+ 1.0-SNAPSHOT
mall-tiny-02
Demo project for Spring Boot
-
- 1.8
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.3.RELEASE
-
+ com.macro.mall
+ mall-learning-teach
+ 1.0-SNAPSHOT
+
@@ -41,36 +37,43 @@
com.github.pagehelper
pagehelper-spring-boot-starter
- 1.2.10
+ ${pagehelper-starter.version}
com.alibaba
druid-spring-boot-starter
- 1.1.10
+ ${druid.version}
org.mybatis.generator
mybatis-generator-core
- 1.3.7
+ ${mybatis-generator.version}
mysql
mysql-connector-java
- 8.0.15
+ ${mysql-connector.version}
-
+
- io.springfox
- springfox-swagger2
- 2.7.0
+ org.projectlombok
+ lombok
+ true
+
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
io.springfox
- springfox-swagger-ui
- 2.7.0
+ springfox-boot-starter
+ ${springfox-swagger.version}
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
index eb6c7bd9..09aab3d7 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
@@ -5,8 +5,10 @@
import java.util.List;
/**
- * 分页数据封装类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 分页数据封装类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonPage {
private Integer pageNum;
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
index f1d580d5..89948c22 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 通用返回对象
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 通用返回对象
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonResult {
private long code;
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
index cfdf47ed..2ff25ea5 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 封装API的错误码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 封装API的错误码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface IErrorCode {
long getCode();
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
index 2e9368dd..e34a4cfd 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 枚举了一些常用API操作码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 枚举了一些常用API操作码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public enum ResultCode implements IErrorCode {
SUCCESS(200, "操作成功"),
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
index e680ce8a..ec54365e 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
@@ -4,8 +4,10 @@
import org.springframework.context.annotation.Configuration;
/**
- * MyBatis配置类
- * Created by macro on 2019/4/8.
+ * @auther macrozheng
+ * @description MyBatis配置类
+ * @date 2019/4/8
+ * @github https://github.com/macrozheng
*/
@Configuration
@MapperScan("com.macro.mall.tiny.mbg.mapper")
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
index 3918a401..caa97432 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
@@ -1,32 +1,39 @@
package com.macro.mall.tiny.config;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.util.ReflectionUtils;
+import org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
+import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
+import springfox.documentation.spring.web.plugins.WebFluxRequestHandlerProvider;
+import springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider;
+
+import java.lang.reflect.Field;
+import java.util.List;
+import java.util.stream.Collectors;
/**
- * Swagger2API文档的配置
+ * @auther macrozheng
+ * @description Swagger相关配置
+ * @date 2022/11/23
+ * @github https://github.com/macrozheng
*/
@Configuration
-@EnableSwagger2
public class Swagger2Config {
@Bean
- public Docket createRestApi(){
+ public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
- //为当前包下controller生成API文档
.apis(RequestHandlerSelectors.basePackage("com.macro.mall.tiny.controller"))
- //为有@Api注解的Controller生成API文档
-// .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
- //为有@ApiOperation注解的方法生成API文档
-// .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
.paths(PathSelectors.any())
.build();
}
@@ -35,8 +42,42 @@ private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("SwaggerUI演示")
.description("mall-tiny")
- .contact("macro")
+ .contact(new Contact("macro", null, null))
.version("1.0")
.build();
}
+
+ @Bean
+ public static BeanPostProcessor springfoxHandlerProviderBeanPostProcessor() {
+ return new BeanPostProcessor() {
+
+ @Override
+ public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
+ if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) {
+ customizeSpringfoxHandlerMappings(getHandlerMappings(bean));
+ }
+ return bean;
+ }
+
+ private void customizeSpringfoxHandlerMappings(List mappings) {
+ List copy = mappings.stream()
+ .filter(mapping -> mapping.getPatternParser() == null)
+ .collect(Collectors.toList());
+ mappings.clear();
+ mappings.addAll(copy);
+ }
+
+ @SuppressWarnings("unchecked")
+ private List getHandlerMappings(Object bean) {
+ try {
+ Field field = ReflectionUtils.findField(bean.getClass(), "handlerMappings");
+ field.setAccessible(true);
+ return (List) field.get(bean);
+ } catch (IllegalArgumentException | IllegalAccessException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+ };
+ }
+
}
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
index 857c9eca..6d3295e5 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -18,11 +19,14 @@
/**
- * 品牌管理Controller
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 品牌管理Controller
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
-@Api(tags = "PmsBrandController", description = "商品品牌管理")
@Controller
+@Api(tags = "PmsBrandController")
+@Tag(name = "PmsBrandController", description = "商品品牌管理")
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
index 162458af..e3581bd5 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
@@ -17,6 +17,7 @@
public class CommentGenerator extends DefaultCommentGenerator {
private boolean addRemarkComments = false;
private static final String EXAMPLE_SUFFIX="Example";
+ private static final String MAPPER_SUFFIX="Mapper";
private static final String API_MODEL_PROPERTY_FULL_CLASS_NAME="io.swagger.annotations.ApiModelProperty";
/**
@@ -35,7 +36,7 @@ public void addConfigurationProperties(Properties properties) {
public void addFieldComment(Field field, IntrospectedTable introspectedTable,
IntrospectedColumn introspectedColumn) {
String remarks = introspectedColumn.getRemarks();
- //根据参数和备注信息判断是否添加备注信息
+ //根据参数和备注信息判断是否添加swagger注解信息
if(addRemarkComments&&StringUtility.stringHasValue(remarks)){
// addFieldJavaDoc(field, remarks);
//数据库中特殊字符需要转义
@@ -66,7 +67,7 @@ private void addFieldJavaDoc(Field field, String remarks) {
public void addJavaFileComment(CompilationUnit compilationUnit) {
super.addJavaFileComment(compilationUnit);
//只在model中添加swagger注解类的导入
- if(!compilationUnit.isJavaInterface()&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
+ if(!compilationUnit.getType().getFullyQualifiedName().contains(MAPPER_SUFFIX)&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
compilationUnit.addImportedType(new FullyQualifiedJavaType(API_MODEL_PROPERTY_FULL_CLASS_NAME));
}
}
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/Generator.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/Generator.java
index f7851362..64248802 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/Generator.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/Generator.java
@@ -10,8 +10,10 @@
import java.util.List;
/**
- * 用于生产MBG的代码
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 用于生产MBG的代码
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class Generator {
public static void main(String[] args) throws Exception {
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
index 37d62163..408d4737 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.java
@@ -12,9 +12,9 @@ public interface PmsBrandMapper {
int deleteByPrimaryKey(Long id);
- int insert(PmsBrand record);
+ int insert(PmsBrand row);
- int insertSelective(PmsBrand record);
+ int insertSelective(PmsBrand row);
List selectByExampleWithBLOBs(PmsBrandExample example);
@@ -22,15 +22,15 @@ public interface PmsBrandMapper {
PmsBrand selectByPrimaryKey(Long id);
- int updateByExampleSelective(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExampleSelective(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByExampleWithBLOBs(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExampleWithBLOBs(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByExample(@Param("record") PmsBrand record, @Param("example") PmsBrandExample example);
+ int updateByExample(@Param("row") PmsBrand row, @Param("example") PmsBrandExample example);
- int updateByPrimaryKeySelective(PmsBrand record);
+ int updateByPrimaryKeySelective(PmsBrand row);
- int updateByPrimaryKeyWithBLOBs(PmsBrand record);
+ int updateByPrimaryKeyWithBLOBs(PmsBrand row);
- int updateByPrimaryKey(PmsBrand record);
+ int updateByPrimaryKey(PmsBrand row);
}
\ No newline at end of file
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
index 0d5dde95..5750cd16 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrand.java
@@ -4,18 +4,22 @@
import java.io.Serializable;
public class PmsBrand implements Serializable {
+ @ApiModelProperty(value = "主键ID")
private Long id;
+ @ApiModelProperty(value = "名称")
private String name;
@ApiModelProperty(value = "首字母")
private String firstLetter;
+ @ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "是否为品牌制造商:0->不是;1->是")
private Integer factoryStatus;
+ @ApiModelProperty(value = "是否显示")
private Integer showStatus;
@ApiModelProperty(value = "产品数量")
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
index 4e4a1108..c7e5880b 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/mbg/model/PmsBrandExample.java
@@ -11,7 +11,7 @@ public class PmsBrandExample {
protected List oredCriteria;
public PmsBrandExample() {
- oredCriteria = new ArrayList();
+ oredCriteria = new ArrayList<>();
}
public void setOrderByClause(String orderByClause) {
@@ -68,7 +68,7 @@ protected abstract static class GeneratedCriteria {
protected GeneratedCriteria() {
super();
- criteria = new ArrayList();
+ criteria = new ArrayList<>();
}
public boolean isValid() {
@@ -746,7 +746,6 @@ public Criteria andBigPicNotBetween(String value1, String value2) {
}
public static class Criteria extends GeneratedCriteria {
-
protected Criteria() {
super();
}
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
index 7171412b..17d3b94e 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
@@ -6,8 +6,10 @@
import java.util.List;
/**
- * PmsBrandService
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface PmsBrandService {
List listAllBrand();
diff --git a/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java b/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
index 2a2b102e..a3e8ac15 100644
--- a/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
+++ b/mall-tiny-02/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
@@ -11,8 +11,10 @@
import java.util.List;
/**
- * PmsBrandService实现类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService实现类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
@Service
public class PmsBrandServiceImpl implements PmsBrandService {
diff --git a/mall-tiny-02/src/main/resources/application.yml b/mall-tiny-02/src/main/resources/application.yml
index 5edcbdbc..37c67828 100644
--- a/mall-tiny-02/src/main/resources/application.yml
+++ b/mall-tiny-02/src/main/resources/application.yml
@@ -3,11 +3,14 @@ server:
spring:
datasource:
- url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+ url: jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: root
+ mvc:
+ pathmatch:
+ matching-strategy: ANT_PATH_MATCHER
mybatis:
mapper-locations:
- - classpath:mapper/*.xml
+ - classpath:dao/*.xml
- classpath*:com/**/mapper/*.xml
diff --git a/mall-tiny-02/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml b/mall-tiny-02/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
index 51b5436b..8d47261a 100644
--- a/mall-tiny-02/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
+++ b/mall-tiny-02/src/main/resources/com/macro/mall/tiny/mbg/mapper/PmsBrandMapper.xml
@@ -221,74 +221,74 @@
update pms_brand
-
- id = #{record.id,jdbcType=BIGINT},
+
+ id = #{row.id,jdbcType=BIGINT},
-
- name = #{record.name,jdbcType=VARCHAR},
+
+ name = #{row.name,jdbcType=VARCHAR},
-
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
+
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
-
- sort = #{record.sort,jdbcType=INTEGER},
+
+ sort = #{row.sort,jdbcType=INTEGER},
-
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
+
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
-
- show_status = #{record.showStatus,jdbcType=INTEGER},
+
+ show_status = #{row.showStatus,jdbcType=INTEGER},
-
- product_count = #{record.productCount,jdbcType=INTEGER},
+
+ product_count = #{row.productCount,jdbcType=INTEGER},
-
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
+
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
-
- logo = #{record.logo,jdbcType=VARCHAR},
+
+ logo = #{row.logo,jdbcType=VARCHAR},
-
- big_pic = #{record.bigPic,jdbcType=VARCHAR},
+
+ big_pic = #{row.bigPic,jdbcType=VARCHAR},
-
- brand_story = #{record.brandStory,jdbcType=LONGVARCHAR},
+
+ brand_story = #{row.brandStory,jdbcType=LONGVARCHAR},
-
+
update pms_brand
- set id = #{record.id,jdbcType=BIGINT},
- name = #{record.name,jdbcType=VARCHAR},
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
- sort = #{record.sort,jdbcType=INTEGER},
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
- show_status = #{record.showStatus,jdbcType=INTEGER},
- product_count = #{record.productCount,jdbcType=INTEGER},
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
- logo = #{record.logo,jdbcType=VARCHAR},
- big_pic = #{record.bigPic,jdbcType=VARCHAR},
- brand_story = #{record.brandStory,jdbcType=LONGVARCHAR}
-
+ set id = #{row.id,jdbcType=BIGINT},
+ name = #{row.name,jdbcType=VARCHAR},
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
+ sort = #{row.sort,jdbcType=INTEGER},
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
+ show_status = #{row.showStatus,jdbcType=INTEGER},
+ product_count = #{row.productCount,jdbcType=INTEGER},
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
+ logo = #{row.logo,jdbcType=VARCHAR},
+ big_pic = #{row.bigPic,jdbcType=VARCHAR},
+ brand_story = #{row.brandStory,jdbcType=LONGVARCHAR}
+
update pms_brand
- set id = #{record.id,jdbcType=BIGINT},
- name = #{record.name,jdbcType=VARCHAR},
- first_letter = #{record.firstLetter,jdbcType=VARCHAR},
- sort = #{record.sort,jdbcType=INTEGER},
- factory_status = #{record.factoryStatus,jdbcType=INTEGER},
- show_status = #{record.showStatus,jdbcType=INTEGER},
- product_count = #{record.productCount,jdbcType=INTEGER},
- product_comment_count = #{record.productCommentCount,jdbcType=INTEGER},
- logo = #{record.logo,jdbcType=VARCHAR},
- big_pic = #{record.bigPic,jdbcType=VARCHAR}
-
+ set id = #{row.id,jdbcType=BIGINT},
+ name = #{row.name,jdbcType=VARCHAR},
+ first_letter = #{row.firstLetter,jdbcType=VARCHAR},
+ sort = #{row.sort,jdbcType=INTEGER},
+ factory_status = #{row.factoryStatus,jdbcType=INTEGER},
+ show_status = #{row.showStatus,jdbcType=INTEGER},
+ product_count = #{row.productCount,jdbcType=INTEGER},
+ product_comment_count = #{row.productCommentCount,jdbcType=INTEGER},
+ logo = #{row.logo,jdbcType=VARCHAR},
+ big_pic = #{row.bigPic,jdbcType=VARCHAR}
+
diff --git a/mall-tiny-02/src/main/resources/generator.properties b/mall-tiny-02/src/main/resources/generator.properties
index 173547bb..c714398a 100644
--- a/mall-tiny-02/src/main/resources/generator.properties
+++ b/mall-tiny-02/src/main/resources/generator.properties
@@ -1,4 +1,4 @@
jdbc.driverClass=com.mysql.cj.jdbc.Driver
-jdbc.connectionURL=jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+jdbc.connectionURL=jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
jdbc.userId=root
jdbc.password=root
\ No newline at end of file
diff --git a/mall-tiny-02/src/main/resources/generatorConfig.xml b/mall-tiny-02/src/main/resources/generatorConfig.xml
index 3cce6192..0b97b423 100644
--- a/mall-tiny-02/src/main/resources/generatorConfig.xml
+++ b/mall-tiny-02/src/main/resources/generatorConfig.xml
@@ -6,35 +6,40 @@
+
+
+
+
+
-
-
-
+
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/mall-tiny-02/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java b/mall-tiny-02/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
index fa6880cf..6b95c21d 100644
--- a/mall-tiny-02/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
+++ b/mall-tiny-02/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
@@ -1,11 +1,9 @@
package com.macro.mall.tiny;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
-@RunWith(SpringRunner.class)
@SpringBootTest
public class MallTinyApplicationTests {
diff --git a/mall-tiny-03/pom.xml b/mall-tiny-03/pom.xml
index c57e8f46..3bd30f2c 100644
--- a/mall-tiny-03/pom.xml
+++ b/mall-tiny-03/pom.xml
@@ -2,22 +2,18 @@
4.0.0
- com.macro.mall
+
mall-tiny-03
- 0.0.1-SNAPSHOT
+ 1.0-SNAPSHOT
mall-tiny-03
Demo project for Spring Boot
-
- 1.8
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.3.RELEASE
-
+ com.macro.mall
+ mall-learning-teach
+ 1.0-SNAPSHOT
+
@@ -41,38 +37,45 @@
com.github.pagehelper
pagehelper-spring-boot-starter
- 1.2.10
+ ${pagehelper-starter.version}
com.alibaba
druid-spring-boot-starter
- 1.1.10
+ ${druid.version}
org.mybatis.generator
mybatis-generator-core
- 1.3.3
+ ${mybatis-generator.version}
mysql
mysql-connector-java
- 8.0.15
+ ${mysql-connector.version}
-
+
- io.springfox
- springfox-swagger2
- 2.7.0
+ org.projectlombok
+ lombok
+ true
+
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
io.springfox
- springfox-swagger-ui
- 2.7.0
+ springfox-boot-starter
+ ${springfox-swagger.version}
-
+
org.springframework.boot
spring-boot-starter-data-redis
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
index eb6c7bd9..09aab3d7 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
@@ -5,8 +5,10 @@
import java.util.List;
/**
- * 分页数据封装类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 分页数据封装类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonPage {
private Integer pageNum;
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
index f1d580d5..89948c22 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 通用返回对象
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 通用返回对象
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonResult {
private long code;
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
index cfdf47ed..2ff25ea5 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 封装API的错误码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 封装API的错误码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface IErrorCode {
long getCode();
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
index 2e9368dd..e34a4cfd 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 枚举了一些常用API操作码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 枚举了一些常用API操作码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public enum ResultCode implements IErrorCode {
SUCCESS(200, "操作成功"),
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
index e680ce8a..ec54365e 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
@@ -4,8 +4,10 @@
import org.springframework.context.annotation.Configuration;
/**
- * MyBatis配置类
- * Created by macro on 2019/4/8.
+ * @auther macrozheng
+ * @description MyBatis配置类
+ * @date 2019/4/8
+ * @github https://github.com/macrozheng
*/
@Configuration
@MapperScan("com.macro.mall.tiny.mbg.mapper")
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/RedisConfig.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/RedisConfig.java
new file mode 100644
index 00000000..c93b29ac
--- /dev/null
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/RedisConfig.java
@@ -0,0 +1,71 @@
+package com.macro.mall.tiny.config;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.cache.RedisCacheConfiguration;
+import org.springframework.data.redis.cache.RedisCacheManager;
+import org.springframework.data.redis.cache.RedisCacheWriter;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.RedisSerializationContext;
+import org.springframework.data.redis.serializer.RedisSerializer;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
+
+import java.time.Duration;
+
+/**
+ * @auther macrozheng
+ * @description Redis配置类
+ * @date 2020/3/2
+ * @github https://github.com/macrozheng
+ */
+@EnableCaching
+@Configuration
+public class RedisConfig {
+
+ /**
+ * redis数据库自定义key
+ */
+ public static final String REDIS_KEY_DATABASE="mall";
+
+ @Bean
+ public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) {
+ RedisSerializer serializer = redisSerializer();
+ RedisTemplate redisTemplate = new RedisTemplate<>();
+ redisTemplate.setConnectionFactory(redisConnectionFactory);
+ redisTemplate.setKeySerializer(new StringRedisSerializer());
+ redisTemplate.setValueSerializer(serializer);
+ redisTemplate.setHashKeySerializer(new StringRedisSerializer());
+ redisTemplate.setHashValueSerializer(serializer);
+ redisTemplate.afterPropertiesSet();
+ return redisTemplate;
+ }
+
+ @Bean
+ public RedisSerializer redisSerializer() {
+ //创建JSON序列化器
+ Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer<>(Object.class);
+ ObjectMapper objectMapper = new ObjectMapper();
+ objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+ //必须设置,否则无法将JSON转化为对象,会转化成Map类型
+ objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance,ObjectMapper.DefaultTyping.NON_FINAL);
+ serializer.setObjectMapper(objectMapper);
+ return serializer;
+ }
+
+ @Bean
+ public RedisCacheManager redisCacheManager(RedisConnectionFactory redisConnectionFactory) {
+ RedisCacheWriter redisCacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory);
+ //设置Redis缓存有效期为1天
+ RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
+ .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer())).entryTtl(Duration.ofDays(1));
+ return new RedisCacheManager(redisCacheWriter, redisCacheConfiguration);
+ }
+
+}
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
index 3918a401..caa97432 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
@@ -1,32 +1,39 @@
package com.macro.mall.tiny.config;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.util.ReflectionUtils;
+import org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
+import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
+import springfox.documentation.spring.web.plugins.WebFluxRequestHandlerProvider;
+import springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider;
+
+import java.lang.reflect.Field;
+import java.util.List;
+import java.util.stream.Collectors;
/**
- * Swagger2API文档的配置
+ * @auther macrozheng
+ * @description Swagger相关配置
+ * @date 2022/11/23
+ * @github https://github.com/macrozheng
*/
@Configuration
-@EnableSwagger2
public class Swagger2Config {
@Bean
- public Docket createRestApi(){
+ public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
- //为当前包下controller生成API文档
.apis(RequestHandlerSelectors.basePackage("com.macro.mall.tiny.controller"))
- //为有@Api注解的Controller生成API文档
-// .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
- //为有@ApiOperation注解的方法生成API文档
-// .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))
.paths(PathSelectors.any())
.build();
}
@@ -35,8 +42,42 @@ private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("SwaggerUI演示")
.description("mall-tiny")
- .contact("macro")
+ .contact(new Contact("macro", null, null))
.version("1.0")
.build();
}
+
+ @Bean
+ public static BeanPostProcessor springfoxHandlerProviderBeanPostProcessor() {
+ return new BeanPostProcessor() {
+
+ @Override
+ public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
+ if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) {
+ customizeSpringfoxHandlerMappings(getHandlerMappings(bean));
+ }
+ return bean;
+ }
+
+ private void customizeSpringfoxHandlerMappings(List mappings) {
+ List copy = mappings.stream()
+ .filter(mapping -> mapping.getPatternParser() == null)
+ .collect(Collectors.toList());
+ mappings.clear();
+ mappings.addAll(copy);
+ }
+
+ @SuppressWarnings("unchecked")
+ private List getHandlerMappings(Object bean) {
+ try {
+ Field field = ReflectionUtils.findField(bean.getClass(), "handlerMappings");
+ field.setAccessible(true);
+ return (List) field.get(bean);
+ } catch (IllegalArgumentException | IllegalAccessException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+ };
+ }
+
}
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
index 857c9eca..6d3295e5 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -18,11 +19,14 @@
/**
- * 品牌管理Controller
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 品牌管理Controller
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
-@Api(tags = "PmsBrandController", description = "商品品牌管理")
@Controller
+@Api(tags = "PmsBrandController")
+@Tag(name = "PmsBrandController", description = "商品品牌管理")
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
index c936c689..5825367b 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
@@ -4,6 +4,7 @@
import com.macro.mall.tiny.service.UmsMemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -12,11 +13,14 @@
import org.springframework.web.bind.annotation.ResponseBody;
/**
- * 会员登录注册管理Controller
- * Created by macro on 2018/8/3.
+ * @auther macrozheng
+ * @description 会员登录注册管理Controller
+ * @date 2018/8/3
+ * @github https://github.com/macrozheng
*/
@Controller
-@Api(tags = "UmsMemberController", description = "会员登录注册管理")
+@Api(tags = "UmsMemberController")
+@Tag(name = "UmsMemberController", description = "会员登录注册管理")
@RequestMapping("/sso")
public class UmsMemberController {
@Autowired
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
index 162458af..775879dd 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
@@ -11,12 +11,15 @@
import java.util.Properties;
/**
- * 自定义注释生成器
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 自定义注释生成器
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class CommentGenerator extends DefaultCommentGenerator {
private boolean addRemarkComments = false;
private static final String EXAMPLE_SUFFIX="Example";
+ private static final String MAPPER_SUFFIX="Mapper";
private static final String API_MODEL_PROPERTY_FULL_CLASS_NAME="io.swagger.annotations.ApiModelProperty";
/**
@@ -35,7 +38,7 @@ public void addConfigurationProperties(Properties properties) {
public void addFieldComment(Field field, IntrospectedTable introspectedTable,
IntrospectedColumn introspectedColumn) {
String remarks = introspectedColumn.getRemarks();
- //根据参数和备注信息判断是否添加备注信息
+ //根据参数和备注信息判断是否添加swagger注解信息
if(addRemarkComments&&StringUtility.stringHasValue(remarks)){
// addFieldJavaDoc(field, remarks);
//数据库中特殊字符需要转义
@@ -66,7 +69,7 @@ private void addFieldJavaDoc(Field field, String remarks) {
public void addJavaFileComment(CompilationUnit compilationUnit) {
super.addJavaFileComment(compilationUnit);
//只在model中添加swagger注解类的导入
- if(!compilationUnit.isJavaInterface()&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
+ if(!compilationUnit.getType().getFullyQualifiedName().contains(MAPPER_SUFFIX)&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
compilationUnit.addImportedType(new FullyQualifiedJavaType(API_MODEL_PROPERTY_FULL_CLASS_NAME));
}
}
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/Generator.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/Generator.java
index f7851362..64248802 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/Generator.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/mbg/Generator.java
@@ -10,8 +10,10 @@
import java.util.List;
/**
- * 用于生产MBG的代码
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 用于生产MBG的代码
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class Generator {
public static void main(String[] args) throws Exception {
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
index 7171412b..17d3b94e 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/PmsBrandService.java
@@ -6,8 +6,10 @@
import java.util.List;
/**
- * PmsBrandService
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface PmsBrandService {
List listAllBrand();
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/RedisService.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/RedisService.java
index 191ab73b..370c456c 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/RedisService.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/RedisService.java
@@ -1,35 +1,184 @@
package com.macro.mall.tiny.service;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
/**
- * redis操作Service,
- * 对象和数组都以json形式进行存储
- * Created by macro on 2018/8/7.
+ * @auther macrozheng
+ * @description redis操作Service
+ * @date 2020/3/3
+ * @github https://github.com/macrozheng
*/
public interface RedisService {
+
+ /**
+ * 保存属性
+ */
+ void set(String key, Object value, long time);
+
+ /**
+ * 保存属性
+ */
+ void set(String key, Object value);
+
+ /**
+ * 获取属性
+ */
+ Object get(String key);
+
+ /**
+ * 删除属性
+ */
+ Boolean del(String key);
+
+ /**
+ * 批量删除属性
+ */
+ Long del(List keys);
+
+ /**
+ * 设置过期时间
+ */
+ Boolean expire(String key, long time);
+
+ /**
+ * 获取过期时间
+ */
+ Long getExpire(String key);
+
+ /**
+ * 判断是否有该属性
+ */
+ Boolean hasKey(String key);
+
+ /**
+ * 按delta递增
+ */
+ Long incr(String key, long delta);
+
+ /**
+ * 按delta递减
+ */
+ Long decr(String key, long delta);
+
+ /**
+ * 获取Hash结构中的属性
+ */
+ Object hGet(String key, String hashKey);
+
+ /**
+ * 向Hash结构中放入一个属性
+ */
+ Boolean hSet(String key, String hashKey, Object value, long time);
+
+ /**
+ * 向Hash结构中放入一个属性
+ */
+ void hSet(String key, String hashKey, Object value);
+
+ /**
+ * 直接获取整个Hash结构
+ */
+ Map hGetAll(String key);
+
/**
- * 存储数据
+ * 直接设置整个Hash结构
*/
- void set(String key, String value);
+ Boolean hSetAll(String key, Map map, long time);
/**
- * 获取数据
+ * 直接设置整个Hash结构
*/
- String get(String key);
+ void hSetAll(String key, Map map);
/**
- * 设置超期时间
+ * 删除Hash结构中的属性
*/
- boolean expire(String key, long expire);
+ void hDel(String key, Object... hashKey);
/**
- * 删除数据
+ * 判断Hash结构中是否有该属性
*/
- void remove(String key);
+ Boolean hHasKey(String key, String hashKey);
/**
- * 自增操作
- * @param delta 自增步长
+ * Hash结构中属性递增
*/
- Long increment(String key, long delta);
+ Long hIncr(String key, String hashKey, Long delta);
-}
+ /**
+ * Hash结构中属性递减
+ */
+ Long hDecr(String key, String hashKey, Long delta);
+
+ /**
+ * 获取Set结构
+ */
+ Set sMembers(String key);
+
+ /**
+ * 向Set结构中添加属性
+ */
+ Long sAdd(String key, Object... values);
+
+ /**
+ * 向Set结构中添加属性
+ */
+ Long sAdd(String key, long time, Object... values);
+
+ /**
+ * 是否为Set中的属性
+ */
+ Boolean sIsMember(String key, Object value);
+
+ /**
+ * 获取Set结构的长度
+ */
+ Long sSize(String key);
+
+ /**
+ * 删除Set结构中的属性
+ */
+ Long sRemove(String key, Object... values);
+
+ /**
+ * 获取List结构中的属性
+ */
+ List lRange(String key, long start, long end);
+
+ /**
+ * 获取List结构的长度
+ */
+ Long lSize(String key);
+
+ /**
+ * 根据索引获取List中的属性
+ */
+ Object lIndex(String key, long index);
+
+ /**
+ * 向List结构中添加属性
+ */
+ Long lPush(String key, Object value);
+
+ /**
+ * 向List结构中添加属性
+ */
+ Long lPush(String key, Object value, long time);
+
+ /**
+ * 向List结构中批量添加属性
+ */
+ Long lPushAll(String key, Object... values);
+
+ /**
+ * 向List结构中批量添加属性
+ */
+ Long lPushAll(String key, Long time, Object... values);
+
+ /**
+ * 从List结构中移除属性
+ */
+ Long lRemove(String key, long count, Object value);
+}
\ No newline at end of file
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/UmsMemberService.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/UmsMemberService.java
index f9fd8ac9..8cf694d3 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/UmsMemberService.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/UmsMemberService.java
@@ -3,8 +3,10 @@
import com.macro.mall.tiny.common.api.CommonResult;
/**
- * 会员管理Service
- * Created by macro on 2018/8/3.
+ * @auther macrozheng
+ * @description 会员管理Service
+ * @date 2018/8/3
+ * @github https://github.com/macrozheng
*/
public interface UmsMemberService {
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
index 2a2b102e..a3e8ac15 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/PmsBrandServiceImpl.java
@@ -11,8 +11,10 @@
import java.util.List;
/**
- * PmsBrandService实现类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description PmsBrandService实现类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
@Service
public class PmsBrandServiceImpl implements PmsBrandService {
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/RedisServiceImpl.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/RedisServiceImpl.java
index cb9d7e0c..8ff149fd 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/RedisServiceImpl.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/RedisServiceImpl.java
@@ -2,42 +2,200 @@
import com.macro.mall.tiny.service.RedisService;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.data.redis.core.StringRedisTemplate;
+import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Service;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
import java.util.concurrent.TimeUnit;
/**
- * redis操作Service的实现类
- * Created by macro on 2018/8/7.
+ * @auther macrozheng
+ * @description redis操作实现类
+ * @date 2020/3/3
+ * @github https://github.com/macrozheng
*/
@Service
public class RedisServiceImpl implements RedisService {
@Autowired
- private StringRedisTemplate stringRedisTemplate;
+ private RedisTemplate redisTemplate;
@Override
- public void set(String key, String value) {
- stringRedisTemplate.opsForValue().set(key, value);
+ public void set(String key, Object value, long time) {
+ redisTemplate.opsForValue().set(key, value, time, TimeUnit.SECONDS);
}
@Override
- public String get(String key) {
- return stringRedisTemplate.opsForValue().get(key);
+ public void set(String key, Object value) {
+ redisTemplate.opsForValue().set(key, value);
}
@Override
- public boolean expire(String key, long expire) {
- return stringRedisTemplate.expire(key, expire, TimeUnit.SECONDS);
+ public Object get(String key) {
+ return redisTemplate.opsForValue().get(key);
}
@Override
- public void remove(String key) {
- stringRedisTemplate.delete(key);
+ public Boolean del(String key) {
+ return redisTemplate.delete(key);
}
@Override
- public Long increment(String key, long delta) {
- return stringRedisTemplate.opsForValue().increment(key,delta);
+ public Long del(List keys) {
+ return redisTemplate.delete(keys);
+ }
+
+ @Override
+ public Boolean expire(String key, long time) {
+ return redisTemplate.expire(key, time, TimeUnit.SECONDS);
+ }
+
+ @Override
+ public Long getExpire(String key) {
+ return redisTemplate.getExpire(key, TimeUnit.SECONDS);
+ }
+
+ @Override
+ public Boolean hasKey(String key) {
+ return redisTemplate.hasKey(key);
+ }
+
+ @Override
+ public Long incr(String key, long delta) {
+ return redisTemplate.opsForValue().increment(key, delta);
+ }
+
+ @Override
+ public Long decr(String key, long delta) {
+ return redisTemplate.opsForValue().increment(key, -delta);
+ }
+
+ @Override
+ public Object hGet(String key, String hashKey) {
+ return redisTemplate.opsForHash().get(key, hashKey);
+ }
+
+ @Override
+ public Boolean hSet(String key, String hashKey, Object value, long time) {
+ redisTemplate.opsForHash().put(key, hashKey, value);
+ return expire(key, time);
+ }
+
+ @Override
+ public void hSet(String key, String hashKey, Object value) {
+ redisTemplate.opsForHash().put(key, hashKey, value);
+ }
+
+ @Override
+ public Map hGetAll(String key) {
+ return redisTemplate.opsForHash().entries(key);
+ }
+
+ @Override
+ public Boolean hSetAll(String key, Map map, long time) {
+ redisTemplate.opsForHash().putAll(key, map);
+ return expire(key, time);
+ }
+
+ @Override
+ public void hSetAll(String key, Map map) {
+ redisTemplate.opsForHash().putAll(key, map);
+ }
+
+ @Override
+ public void hDel(String key, Object... hashKey) {
+ redisTemplate.opsForHash().delete(key, hashKey);
+ }
+
+ @Override
+ public Boolean hHasKey(String key, String hashKey) {
+ return redisTemplate.opsForHash().hasKey(key, hashKey);
+ }
+
+ @Override
+ public Long hIncr(String key, String hashKey, Long delta) {
+ return redisTemplate.opsForHash().increment(key, hashKey, delta);
+ }
+
+ @Override
+ public Long hDecr(String key, String hashKey, Long delta) {
+ return redisTemplate.opsForHash().increment(key, hashKey, -delta);
+ }
+
+ @Override
+ public Set sMembers(String key) {
+ return redisTemplate.opsForSet().members(key);
+ }
+
+ @Override
+ public Long sAdd(String key, Object... values) {
+ return redisTemplate.opsForSet().add(key, values);
+ }
+
+ @Override
+ public Long sAdd(String key, long time, Object... values) {
+ Long count = redisTemplate.opsForSet().add(key, values);
+ expire(key, time);
+ return count;
+ }
+
+ @Override
+ public Boolean sIsMember(String key, Object value) {
+ return redisTemplate.opsForSet().isMember(key, value);
+ }
+
+ @Override
+ public Long sSize(String key) {
+ return redisTemplate.opsForSet().size(key);
+ }
+
+ @Override
+ public Long sRemove(String key, Object... values) {
+ return redisTemplate.opsForSet().remove(key, values);
+ }
+
+ @Override
+ public List lRange(String key, long start, long end) {
+ return redisTemplate.opsForList().range(key, start, end);
+ }
+
+ @Override
+ public Long lSize(String key) {
+ return redisTemplate.opsForList().size(key);
+ }
+
+ @Override
+ public Object lIndex(String key, long index) {
+ return redisTemplate.opsForList().index(key, index);
+ }
+
+ @Override
+ public Long lPush(String key, Object value) {
+ return redisTemplate.opsForList().rightPush(key, value);
+ }
+
+ @Override
+ public Long lPush(String key, Object value, long time) {
+ Long index = redisTemplate.opsForList().rightPush(key, value);
+ expire(key, time);
+ return index;
+ }
+
+ @Override
+ public Long lPushAll(String key, Object... values) {
+ return redisTemplate.opsForList().rightPushAll(key, values);
+ }
+
+ @Override
+ public Long lPushAll(String key, Long time, Object... values) {
+ Long count = redisTemplate.opsForList().rightPushAll(key, values);
+ expire(key, time);
+ return count;
+ }
+
+ @Override
+ public Long lRemove(String key, long count, Object value) {
+ return redisTemplate.opsForList().remove(key, count, value);
}
}
diff --git a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/UmsMemberServiceImpl.java b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/UmsMemberServiceImpl.java
index 06378693..6c6aeb7f 100644
--- a/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/UmsMemberServiceImpl.java
+++ b/mall-tiny-03/src/main/java/com/macro/mall/tiny/service/impl/UmsMemberServiceImpl.java
@@ -1,5 +1,6 @@
package com.macro.mall.tiny.service.impl;
+import cn.hutool.core.util.StrUtil;
import com.macro.mall.tiny.common.api.CommonResult;
import com.macro.mall.tiny.service.RedisService;
import com.macro.mall.tiny.service.UmsMemberService;
@@ -11,8 +12,10 @@
import java.util.Random;
/**
- * 会员管理Service实现类
- * Created by macro on 2018/8/3.
+ * @auther macrozheng
+ * @description 会员管理Service实现类
+ * @date 2018/8/3
+ * @github https://github.com/macrozheng
*/
@Service
public class UmsMemberServiceImpl implements UmsMemberService {
@@ -40,10 +43,10 @@ public CommonResult generateAuthCode(String telephone) {
//对输入的验证码进行校验
@Override
public CommonResult verifyAuthCode(String telephone, String authCode) {
- if (StringUtils.isEmpty(authCode)) {
+ if (StrUtil.isEmpty(authCode)) {
return CommonResult.failed("请输入验证码");
}
- String realAuthCode = redisService.get(REDIS_KEY_PREFIX_AUTH_CODE + telephone);
+ String realAuthCode = (String) redisService.get(REDIS_KEY_PREFIX_AUTH_CODE + telephone);
boolean result = authCode.equals(realAuthCode);
if (result) {
return CommonResult.success(null, "验证码校验成功");
diff --git a/mall-tiny-03/src/main/resources/application.yml b/mall-tiny-03/src/main/resources/application.yml
index a2059c17..7ee578e0 100644
--- a/mall-tiny-03/src/main/resources/application.yml
+++ b/mall-tiny-03/src/main/resources/application.yml
@@ -3,25 +3,27 @@ server:
spring:
datasource:
- url: jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+ url: jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
username: root
password: root
+ mvc:
+ pathmatch:
+ matching-strategy: ANT_PATH_MATCHER
redis:
host: localhost # Redis服务器地址
database: 0 # Redis数据库索引(默认为0)
port: 6379 # Redis服务器连接端口
password: # Redis服务器连接密码(默认为空)
- jedis:
+ lettuce:
pool:
- max-active: 8 # 连接池最大连接数(使用负值表示没有限制)
- max-wait: -1ms # 连接池最大阻塞等待时间(使用负值表示没有限制)
- max-idle: 8 # 连接池中的最大空闲连接
- min-idle: 0 # 连接池中的最小空闲连接
- timeout: 3000ms # 连接超时时间(毫秒)
+ max-active: 8 # 连接池最大连接数
+ max-idle: 8 # 连接池最大空闲连接数
+ min-idle: 0 # 连接池最小空闲连接数
+ max-wait: -1ms # 连接池最大阻塞等待时间,负值表示没有限制
mybatis:
mapper-locations:
- - classpath:mapper/*.xml
+ - classpath:dao/*.xml
- classpath*:com/**/mapper/*.xml
# 自定义redis key
redis:
diff --git a/mall-tiny-03/src/main/resources/generator.properties b/mall-tiny-03/src/main/resources/generator.properties
index 173547bb..c714398a 100644
--- a/mall-tiny-03/src/main/resources/generator.properties
+++ b/mall-tiny-03/src/main/resources/generator.properties
@@ -1,4 +1,4 @@
jdbc.driverClass=com.mysql.cj.jdbc.Driver
-jdbc.connectionURL=jdbc:mysql://localhost:3306/mall?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
+jdbc.connectionURL=jdbc:mysql://localhost:3306/mall_tiny?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
jdbc.userId=root
jdbc.password=root
\ No newline at end of file
diff --git a/mall-tiny-03/src/main/resources/generatorConfig.xml b/mall-tiny-03/src/main/resources/generatorConfig.xml
index 174639f0..699f92ca 100644
--- a/mall-tiny-03/src/main/resources/generatorConfig.xml
+++ b/mall-tiny-03/src/main/resources/generatorConfig.xml
@@ -6,33 +6,40 @@
+
+
+
+
+
-
+
+
+
-
+
-
+
-
+
-
+
-
+
diff --git a/mall-tiny-03/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java b/mall-tiny-03/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
index fa6880cf..6b95c21d 100644
--- a/mall-tiny-03/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
+++ b/mall-tiny-03/src/test/java/com/macro/mall/tiny/MallTinyApplicationTests.java
@@ -1,11 +1,9 @@
package com.macro.mall.tiny;
-import org.junit.Test;
-import org.junit.runner.RunWith;
+import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
-@RunWith(SpringRunner.class)
@SpringBootTest
public class MallTinyApplicationTests {
diff --git a/mall-tiny-04/pom.xml b/mall-tiny-04/pom.xml
index cac2ee53..94b06c17 100644
--- a/mall-tiny-04/pom.xml
+++ b/mall-tiny-04/pom.xml
@@ -2,22 +2,18 @@
4.0.0
- com.macro.mall
+
mall-tiny-04
- 0.0.1-SNAPSHOT
+ 1.0-SNAPSHOT
mall-tiny-04
Demo project for Spring Boot
-
- 1.8
-
-
- org.springframework.boot
- spring-boot-starter-parent
- 2.1.3.RELEASE
-
+ com.macro.mall
+ mall-learning-teach
+ 1.0-SNAPSHOT
+
@@ -41,38 +37,45 @@
com.github.pagehelper
pagehelper-spring-boot-starter
- 1.2.10
+ ${pagehelper-starter.version}
com.alibaba
druid-spring-boot-starter
- 1.1.10
+ ${druid.version}
org.mybatis.generator
mybatis-generator-core
- 1.3.3
+ ${mybatis-generator.version}
mysql
mysql-connector-java
- 8.0.15
+ ${mysql-connector.version}
-
+
- io.springfox
- springfox-swagger2
- 2.7.0
+ org.projectlombok
+ lombok
+ true
+
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
io.springfox
- springfox-swagger-ui
- 2.7.0
+ springfox-boot-starter
+ ${springfox-swagger.version}
-
+
org.springframework.boot
spring-boot-starter-data-redis
@@ -82,17 +85,11 @@
org.springframework.boot
spring-boot-starter-security
-
-
- cn.hutool
- hutool-all
- 4.5.7
-
io.jsonwebtoken
jjwt
- 0.9.0
+ ${jjwt.version}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
index eb6c7bd9..09aab3d7 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonPage.java
@@ -5,8 +5,10 @@
import java.util.List;
/**
- * 分页数据封装类
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 分页数据封装类
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonPage {
private Integer pageNum;
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
index f1d580d5..89948c22 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/CommonResult.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 通用返回对象
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 通用返回对象
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public class CommonResult {
private long code;
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
index cfdf47ed..2ff25ea5 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/IErrorCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 封装API的错误码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 封装API的错误码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public interface IErrorCode {
long getCode();
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
index 2e9368dd..e34a4cfd 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/api/ResultCode.java
@@ -1,8 +1,10 @@
package com.macro.mall.tiny.common.api;
/**
- * 枚举了一些常用API操作码
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 枚举了一些常用API操作码
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
public enum ResultCode implements IErrorCode {
SUCCESS(200, "操作成功"),
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/utils/JwtTokenUtil.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/utils/JwtTokenUtil.java
index 5ec26f6c..89e32146 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/utils/JwtTokenUtil.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/common/utils/JwtTokenUtil.java
@@ -14,7 +14,8 @@
import java.util.Map;
/**
- * JwtToken生成的工具类
+ * @auther macrozheng
+ * @description JwtToken生成的工具类
* JWT token的格式:header.payload.signature
* header的格式(算法、token的类型):
* {"alg": "HS512","typ": "JWT"}
@@ -22,7 +23,8 @@
* {"sub":"wang","created":1489079981393,"exp":1489684781}
* signature的生成算法:
* HMACSHA512(base64UrlEncode(header) + "." +base64UrlEncode(payload),secret)
- * Created by macro on 2018/4/26.
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
@Component
public class JwtTokenUtil {
@@ -35,7 +37,7 @@ public class JwtTokenUtil {
private Long expiration;
/**
- * 根据负责生成JWT的token
+ * 根据负载生成JWT的token
*/
private String generateToken(Map claims) {
return Jwts.builder()
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/JwtAuthenticationTokenFilter.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/JwtAuthenticationTokenFilter.java
index abdb7b71..65cc9fcb 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/JwtAuthenticationTokenFilter.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/JwtAuthenticationTokenFilter.java
@@ -19,8 +19,10 @@
import java.io.IOException;
/**
- * JWT登录授权过滤器
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description JWT登录授权过滤器
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class JwtAuthenticationTokenFilter extends OncePerRequestFilter {
private static final Logger LOGGER = LoggerFactory.getLogger(JwtAuthenticationTokenFilter.class);
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestAuthenticationEntryPoint.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestAuthenticationEntryPoint.java
index 757df36c..1445038f 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestAuthenticationEntryPoint.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestAuthenticationEntryPoint.java
@@ -12,8 +12,10 @@
import java.io.IOException;
/**
- * 当未登录或者token失效访问接口时,自定义的返回结果
- * Created by macro on 2018/5/14.
+ * @auther macrozheng
+ * @description 当未登录或者token失效访问接口时,自定义的返回结果
+ * @date 2018/5/14
+ * @github https://github.com/macrozheng
*/
@Component
public class RestAuthenticationEntryPoint implements AuthenticationEntryPoint {
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestfulAccessDeniedHandler.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestfulAccessDeniedHandler.java
index bc201cce..769dbfc3 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestfulAccessDeniedHandler.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/component/RestfulAccessDeniedHandler.java
@@ -12,8 +12,10 @@
import java.io.IOException;
/**
- * 当访问接口没有权限时,自定义的返回结果
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 当访问接口没有权限时,自定义的返回结果
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
@Component
public class RestfulAccessDeniedHandler implements AccessDeniedHandler{
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/IgnoreUrlsConfig.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/IgnoreUrlsConfig.java
new file mode 100644
index 00000000..21fa1f30
--- /dev/null
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/IgnoreUrlsConfig.java
@@ -0,0 +1,25 @@
+package com.macro.mall.tiny.config;
+
+import lombok.Getter;
+import lombok.Setter;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @auther macrozheng
+ * @description 用于配置白名单资源路径
+ * @date 2018/11/5
+ * @github https://github.com/macrozheng
+ */
+@Getter
+@Setter
+@Configuration
+@ConfigurationProperties(prefix = "secure.ignored")
+public class IgnoreUrlsConfig {
+
+ private List urls = new ArrayList<>();
+
+}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MallSecurityConfig.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MallSecurityConfig.java
new file mode 100644
index 00000000..2830c98d
--- /dev/null
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MallSecurityConfig.java
@@ -0,0 +1,34 @@
+package com.macro.mall.tiny.config;
+
+import com.macro.mall.tiny.domain.AdminUserDetails;
+import com.macro.mall.tiny.service.UmsAdminService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.security.core.userdetails.UserDetailsService;
+import org.springframework.security.core.userdetails.UsernameNotFoundException;
+
+/**
+ * @auther macrozheng
+ * @description 自定义配置,用于配置如何获取用户信息
+ * @date 2022/5/20
+ * @github https://github.com/macrozheng
+ */
+@Configuration
+public class MallSecurityConfig {
+
+ @Autowired
+ private UmsAdminService adminService;
+
+ @Bean
+ public UserDetailsService userDetailsService() {
+ //获取登录用户信息
+ return username -> {
+ AdminUserDetails admin = adminService.getAdminByUsername(username);
+ if (admin != null) {
+ return admin;
+ }
+ throw new UsernameNotFoundException("用户名或密码错误");
+ };
+ }
+}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
index f4584332..ec54365e 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/MyBatisConfig.java
@@ -4,10 +4,12 @@
import org.springframework.context.annotation.Configuration;
/**
- * MyBatis配置类
- * Created by macro on 2019/4/8.
+ * @auther macrozheng
+ * @description MyBatis配置类
+ * @date 2019/4/8
+ * @github https://github.com/macrozheng
*/
@Configuration
-@MapperScan({"com.macro.mall.tiny.mbg.mapper","com.macro.mall.tiny.dao"})
+@MapperScan("com.macro.mall.tiny.mbg.mapper")
public class MyBatisConfig {
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/RedisConfig.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/RedisConfig.java
new file mode 100644
index 00000000..c93b29ac
--- /dev/null
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/RedisConfig.java
@@ -0,0 +1,71 @@
+package com.macro.mall.tiny.config;
+
+import com.fasterxml.jackson.annotation.JsonAutoDetect;
+import com.fasterxml.jackson.annotation.PropertyAccessor;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.fasterxml.jackson.databind.jsontype.impl.LaissezFaireSubTypeValidator;
+import org.springframework.cache.annotation.EnableCaching;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.cache.RedisCacheConfiguration;
+import org.springframework.data.redis.cache.RedisCacheManager;
+import org.springframework.data.redis.cache.RedisCacheWriter;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.RedisSerializationContext;
+import org.springframework.data.redis.serializer.RedisSerializer;
+import org.springframework.data.redis.serializer.StringRedisSerializer;
+
+import java.time.Duration;
+
+/**
+ * @auther macrozheng
+ * @description Redis配置类
+ * @date 2020/3/2
+ * @github https://github.com/macrozheng
+ */
+@EnableCaching
+@Configuration
+public class RedisConfig {
+
+ /**
+ * redis数据库自定义key
+ */
+ public static final String REDIS_KEY_DATABASE="mall";
+
+ @Bean
+ public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory) {
+ RedisSerializer serializer = redisSerializer();
+ RedisTemplate redisTemplate = new RedisTemplate<>();
+ redisTemplate.setConnectionFactory(redisConnectionFactory);
+ redisTemplate.setKeySerializer(new StringRedisSerializer());
+ redisTemplate.setValueSerializer(serializer);
+ redisTemplate.setHashKeySerializer(new StringRedisSerializer());
+ redisTemplate.setHashValueSerializer(serializer);
+ redisTemplate.afterPropertiesSet();
+ return redisTemplate;
+ }
+
+ @Bean
+ public RedisSerializer redisSerializer() {
+ //创建JSON序列化器
+ Jackson2JsonRedisSerializer serializer = new Jackson2JsonRedisSerializer<>(Object.class);
+ ObjectMapper objectMapper = new ObjectMapper();
+ objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
+ //必须设置,否则无法将JSON转化为对象,会转化成Map类型
+ objectMapper.activateDefaultTyping(LaissezFaireSubTypeValidator.instance,ObjectMapper.DefaultTyping.NON_FINAL);
+ serializer.setObjectMapper(objectMapper);
+ return serializer;
+ }
+
+ @Bean
+ public RedisCacheManager redisCacheManager(RedisConnectionFactory redisConnectionFactory) {
+ RedisCacheWriter redisCacheWriter = RedisCacheWriter.nonLockingRedisCacheWriter(redisConnectionFactory);
+ //设置Redis缓存有效期为1天
+ RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
+ .serializeValuesWith(RedisSerializationContext.SerializationPair.fromSerializer(redisSerializer())).entryTtl(Duration.ofDays(1));
+ return new RedisCacheManager(redisCacheWriter, redisCacheConfiguration);
+ }
+
+}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/SecurityConfig.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/SecurityConfig.java
index 94785e3f..70dd99ba 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/SecurityConfig.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/SecurityConfig.java
@@ -3,9 +3,7 @@
import com.macro.mall.tiny.component.JwtAuthenticationTokenFilter;
import com.macro.mall.tiny.component.RestAuthenticationEntryPoint;
import com.macro.mall.tiny.component.RestfulAccessDeniedHandler;
-import com.macro.mall.tiny.dto.AdminUserDetails;
-import com.macro.mall.tiny.mbg.model.UmsAdmin;
-import com.macro.mall.tiny.mbg.model.UmsPermission;
+import com.macro.mall.tiny.domain.AdminUserDetails;
import com.macro.mall.tiny.service.UmsAdminService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
@@ -17,56 +15,50 @@
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
+import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer;
import org.springframework.security.config.http.SessionCreationPolicy;
import org.springframework.security.core.userdetails.UserDetailsService;
import org.springframework.security.core.userdetails.UsernameNotFoundException;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
+import org.springframework.security.web.SecurityFilterChain;
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
-import java.util.List;
-
/**
- * SpringSecurity的配置
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description SpringSecurity的配置
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled=true)
-public class SecurityConfig extends WebSecurityConfigurerAdapter {
- @Autowired
- private UmsAdminService adminService;
+public class SecurityConfig {
@Autowired
private RestfulAccessDeniedHandler restfulAccessDeniedHandler;
@Autowired
private RestAuthenticationEntryPoint restAuthenticationEntryPoint;
+ @Autowired
+ private IgnoreUrlsConfig ignoreUrlsConfig;
- @Override
- protected void configure(HttpSecurity httpSecurity) throws Exception {
+ @Bean
+ SecurityFilterChain filterChain(HttpSecurity httpSecurity) throws Exception {
+ ExpressionUrlAuthorizationConfigurer.ExpressionInterceptUrlRegistry registry = httpSecurity
+ .authorizeRequests();
+ //不需要保护的资源路径允许访问
+ for (String url : ignoreUrlsConfig.getUrls()) {
+ registry.antMatchers(url).permitAll();
+ }
+ //允许跨域请求的OPTIONS请求
+ registry.antMatchers(HttpMethod.OPTIONS)
+ .permitAll();
httpSecurity.csrf()// 由于使用的是JWT,我们这里不需要csrf
.disable()
.sessionManagement()// 基于token,所以不需要session
.sessionCreationPolicy(SessionCreationPolicy.STATELESS)
.and()
.authorizeRequests()
- .antMatchers(HttpMethod.GET, // 允许对于网站静态资源的无授权访问
- "/",
- "/*.html",
- "/favicon.ico",
- "/**/*.html",
- "/**/*.css",
- "/**/*.js",
- "/swagger-resources/**",
- "/v2/api-docs/**"
- )
- .permitAll()
- .antMatchers("/admin/login", "/admin/register")// 对登录注册要允许匿名访问
- .permitAll()
- .antMatchers(HttpMethod.OPTIONS)//跨域请求会先进行一次options请求
- .permitAll()
-// .antMatchers("/**")//测试时全部运行访问
-// .permitAll()
.anyRequest()// 除上面外的所有请求全部需要鉴权认证
.authenticated();
// 禁用缓存
@@ -77,12 +69,7 @@ protected void configure(HttpSecurity httpSecurity) throws Exception {
httpSecurity.exceptionHandling()
.accessDeniedHandler(restfulAccessDeniedHandler)
.authenticationEntryPoint(restAuthenticationEntryPoint);
- }
-
- @Override
- protected void configure(AuthenticationManagerBuilder auth) throws Exception {
- auth.userDetailsService(userDetailsService())
- .passwordEncoder(passwordEncoder());
+ return httpSecurity.build();
}
@Bean
@@ -90,28 +77,9 @@ public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
- @Bean
- public UserDetailsService userDetailsService() {
- //获取登录用户信息
- return username -> {
- UmsAdmin admin = adminService.getAdminByUsername(username);
- if (admin != null) {
- List permissionList = adminService.getPermissionList(admin.getId());
- return new AdminUserDetails(admin,permissionList);
- }
- throw new UsernameNotFoundException("用户名或密码错误");
- };
- }
-
@Bean
public JwtAuthenticationTokenFilter jwtAuthenticationTokenFilter(){
return new JwtAuthenticationTokenFilter();
}
- @Bean
- @Override
- public AuthenticationManager authenticationManagerBean() throws Exception {
- return super.authenticationManagerBean();
- }
-
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
index 8946105a..930cac51 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/config/Swagger2Config.java
@@ -1,34 +1,39 @@
package com.macro.mall.tiny.config;
+import org.springframework.beans.BeansException;
+import org.springframework.beans.factory.config.BeanPostProcessor;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
+import org.springframework.util.ReflectionUtils;
+import org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
-import springfox.documentation.service.ApiInfo;
-import springfox.documentation.service.ApiKey;
-import springfox.documentation.service.AuthorizationScope;
-import springfox.documentation.service.SecurityReference;
+import springfox.documentation.service.*;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spi.service.contexts.SecurityContext;
import springfox.documentation.spring.web.plugins.Docket;
-import springfox.documentation.swagger2.annotations.EnableSwagger2;
+import springfox.documentation.spring.web.plugins.WebFluxRequestHandlerProvider;
+import springfox.documentation.spring.web.plugins.WebMvcRequestHandlerProvider;
+import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
+import java.util.stream.Collectors;
/**
- * Swagger2API文档的配置
+ * @auther macrozheng
+ * @description Swagger文档的配置(带认证)
+ * @date 2022/11/22
+ * @github https://github.com/macrozheng
*/
@Configuration
-@EnableSwagger2
public class Swagger2Config {
@Bean
- public Docket createRestApi(){
+ public Docket createRestApi() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.select()
- //为当前包下controller生成API文档
.apis(RequestHandlerSelectors.basePackage("com.macro.mall.tiny.controller"))
.paths(PathSelectors.any())
.build()
@@ -41,14 +46,14 @@ private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("SwaggerUI演示")
.description("mall-tiny")
- .contact("macro")
+ .contact(new Contact("macro", null, null))
.version("1.0")
.build();
}
- private List securitySchemes() {
+ private List securitySchemes() {
//设置请求头信息
- List result = new ArrayList<>();
+ List result = new ArrayList<>();
ApiKey apiKey = new ApiKey("Authorization", "Authorization", "header");
result.add(apiKey);
return result;
@@ -61,7 +66,7 @@ private List securityContexts() {
return result;
}
- private SecurityContext getContextByPath(String pathRegex){
+ private SecurityContext getContextByPath(String pathRegex) {
return SecurityContext.builder()
.securityReferences(defaultAuth())
.forPaths(PathSelectors.regex(pathRegex))
@@ -76,4 +81,37 @@ private List defaultAuth() {
result.add(new SecurityReference("Authorization", authorizationScopes));
return result;
}
+
+ @Bean
+ public BeanPostProcessor generateBeanPostProcessor(){
+ return new BeanPostProcessor() {
+
+ @Override
+ public Object postProcessAfterInitialization(Object bean, String beanName) throws BeansException {
+ if (bean instanceof WebMvcRequestHandlerProvider || bean instanceof WebFluxRequestHandlerProvider) {
+ customizeSpringfoxHandlerMappings(getHandlerMappings(bean));
+ }
+ return bean;
+ }
+
+ private void customizeSpringfoxHandlerMappings(List mappings) {
+ List copy = mappings.stream()
+ .filter(mapping -> mapping.getPatternParser() == null)
+ .collect(Collectors.toList());
+ mappings.clear();
+ mappings.addAll(copy);
+ }
+
+ @SuppressWarnings("unchecked")
+ private List getHandlerMappings(Object bean) {
+ try {
+ Field field = ReflectionUtils.findField(bean.getClass(), "handlerMappings");
+ field.setAccessible(true);
+ return (List) field.get(bean);
+ } catch (IllegalArgumentException | IllegalAccessException e) {
+ throw new IllegalStateException(e);
+ }
+ }
+ };
+ }
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
index 0dee32a4..b75a2598 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/PmsBrandController.java
@@ -7,6 +7,7 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
@@ -19,11 +20,14 @@
/**
- * 品牌管理Controller
- * Created by macro on 2019/4/19.
+ * @auther macrozheng
+ * @description 品牌管理Controller
+ * @date 2019/4/19
+ * @github https://github.com/macrozheng
*/
-@Api(tags = "PmsBrandController", description = "商品品牌管理")
@Controller
+@Api(tags = "PmsBrandController")
+@Tag(name = "PmsBrandController", description = "商品品牌管理")
@RequestMapping("/brand")
public class PmsBrandController {
@Autowired
@@ -34,7 +38,7 @@ public class PmsBrandController {
@ApiOperation("获取所有品牌列表")
@RequestMapping(value = "listAll", method = RequestMethod.GET)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:read')")
+ @PreAuthorize("hasAuthority('brand:listAll')")
public CommonResult> getBrandList() {
return CommonResult.success(brandService.listAllBrand());
}
@@ -42,7 +46,7 @@ public CommonResult> getBrandList() {
@ApiOperation("添加品牌")
@RequestMapping(value = "/create", method = RequestMethod.POST)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:create')")
+ @PreAuthorize("hasAuthority('brand:create')")
public CommonResult createBrand(@RequestBody PmsBrand pmsBrand) {
CommonResult commonResult;
int count = brandService.createBrand(pmsBrand);
@@ -59,7 +63,7 @@ public CommonResult createBrand(@RequestBody PmsBrand pmsBrand) {
@ApiOperation("更新指定id品牌信息")
@RequestMapping(value = "/update/{id}", method = RequestMethod.POST)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:update')")
+ @PreAuthorize("hasAuthority('brand:update')")
public CommonResult updateBrand(@PathVariable("id") Long id, @RequestBody PmsBrand pmsBrandDto, BindingResult result) {
CommonResult commonResult;
int count = brandService.updateBrand(id, pmsBrandDto);
@@ -76,7 +80,7 @@ public CommonResult updateBrand(@PathVariable("id") Long id, @RequestBody PmsBra
@ApiOperation("删除指定id的品牌")
@RequestMapping(value = "/delete/{id}", method = RequestMethod.GET)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:delete')")
+ @PreAuthorize("hasAuthority('brand:delete')")
public CommonResult deleteBrand(@PathVariable("id") Long id) {
int count = brandService.deleteBrand(id);
if (count == 1) {
@@ -91,7 +95,7 @@ public CommonResult deleteBrand(@PathVariable("id") Long id) {
@ApiOperation("分页查询品牌列表")
@RequestMapping(value = "/list", method = RequestMethod.GET)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:read')")
+ @PreAuthorize("hasAuthority('brand:list')")
public CommonResult> listBrand(@RequestParam(value = "pageNum", defaultValue = "1")
@ApiParam("页码") Integer pageNum,
@RequestParam(value = "pageSize", defaultValue = "3")
@@ -103,7 +107,6 @@ public CommonResult> listBrand(@RequestParam(value = "pageN
@ApiOperation("获取指定id的品牌详情")
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
@ResponseBody
- @PreAuthorize("hasAuthority('pms:brand:read')")
public CommonResult brand(@PathVariable("id") Long id) {
return CommonResult.success(brandService.getBrand(id));
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsAdminController.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsAdminController.java
index d95f9683..de2b21fc 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsAdminController.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsAdminController.java
@@ -1,28 +1,32 @@
package com.macro.mall.tiny.controller;
import com.macro.mall.tiny.common.api.CommonResult;
-import com.macro.mall.tiny.dto.UmsAdminLoginParam;
-import com.macro.mall.tiny.mbg.model.UmsAdmin;
-import com.macro.mall.tiny.mbg.model.UmsPermission;
+import com.macro.mall.tiny.domain.UmsResource;
import com.macro.mall.tiny.service.UmsAdminService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
-import org.springframework.validation.BindingResult;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestMethod;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
- * 后台用户管理
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 后台用户管理
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
@Controller
-@Api(tags = "UmsAdminController", description = "后台用户管理")
+@Api(tags = "UmsAdminController")
+@Tag(name = "UmsAdminController", description = "后台用户管理")
@RequestMapping("/admin")
public class UmsAdminController {
@Autowired
@@ -32,22 +36,12 @@ public class UmsAdminController {
@Value("${jwt.tokenHead}")
private String tokenHead;
- @ApiOperation(value = "用户注册")
- @RequestMapping(value = "/register", method = RequestMethod.POST)
- @ResponseBody
- public CommonResult register(@RequestBody UmsAdmin umsAdminParam, BindingResult result) {
- UmsAdmin umsAdmin = adminService.register(umsAdminParam);
- if (umsAdmin == null) {
- CommonResult.failed();
- }
- return CommonResult.success(umsAdmin);
- }
@ApiOperation(value = "登录以后返回token")
@RequestMapping(value = "/login", method = RequestMethod.POST)
@ResponseBody
- public CommonResult login(@RequestBody UmsAdminLoginParam umsAdminLoginParam, BindingResult result) {
- String token = adminService.login(umsAdminLoginParam.getUsername(), umsAdminLoginParam.getPassword());
+ public CommonResult login(@RequestParam String username, @RequestParam String password) {
+ String token = adminService.login(username, password);
if (token == null) {
return CommonResult.validateFailed("用户名或密码错误");
}
@@ -57,11 +51,11 @@ public CommonResult login(@RequestBody UmsAdminLoginParam umsAdminLoginParam, Bi
return CommonResult.success(tokenMap);
}
- @ApiOperation("获取用户所有权限(包括+-权限)")
- @RequestMapping(value = "/permission/{adminId}", method = RequestMethod.GET)
+ @ApiOperation(value = "登录以后返回token")
+ @RequestMapping(value = "/resourceList", method = RequestMethod.POST)
@ResponseBody
- public CommonResult> getPermissionList(@PathVariable Long adminId) {
- List permissionList = adminService.getPermissionList(adminId);
- return CommonResult.success(permissionList);
+ public CommonResult> resourceList() {
+ List resourceList = adminService.getResourceList();
+ return CommonResult.success(resourceList);
}
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
index c936c689..5825367b 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/controller/UmsMemberController.java
@@ -4,6 +4,7 @@
import com.macro.mall.tiny.service.UmsMemberService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
+import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
@@ -12,11 +13,14 @@
import org.springframework.web.bind.annotation.ResponseBody;
/**
- * 会员登录注册管理Controller
- * Created by macro on 2018/8/3.
+ * @auther macrozheng
+ * @description 会员登录注册管理Controller
+ * @date 2018/8/3
+ * @github https://github.com/macrozheng
*/
@Controller
-@Api(tags = "UmsMemberController", description = "会员登录注册管理")
+@Api(tags = "UmsMemberController")
+@Tag(name = "UmsMemberController", description = "会员登录注册管理")
@RequestMapping("/sso")
public class UmsMemberController {
@Autowired
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dao/UmsAdminRoleRelationDao.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/dao/UmsAdminRoleRelationDao.java
deleted file mode 100644
index 50f00f7c..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dao/UmsAdminRoleRelationDao.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.macro.mall.tiny.dao;
-
-
-import com.macro.mall.tiny.mbg.model.UmsPermission;
-import org.apache.ibatis.annotations.Param;
-
-import java.util.List;
-
-/**
- * 后台用户与角色管理自定义Dao
- * Created by macro on 2018/10/8.
- */
-public interface UmsAdminRoleRelationDao {
-
- /**
- * 获取用户所有权限(包括+-权限)
- */
- List getPermissionList(@Param("adminId") Long adminId);
-}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/domain/AdminUserDetails.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/domain/AdminUserDetails.java
new file mode 100644
index 00000000..c26f1b96
--- /dev/null
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/domain/AdminUserDetails.java
@@ -0,0 +1,61 @@
+package com.macro.mall.tiny.domain;
+
+import lombok.Builder;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springframework.security.core.GrantedAuthority;
+import org.springframework.security.core.authority.SimpleGrantedAuthority;
+import org.springframework.security.core.userdetails.UserDetails;
+
+import java.util.Collection;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * @auther macrozheng
+ * @description SpringSecurity用户信息封装类
+ * @date 2020/10/15
+ * @github https://github.com/macrozheng
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Builder
+public class AdminUserDetails implements UserDetails {
+ private String username;
+ private String password;
+ private List authorityList;
+ @Override
+ public Collection extends GrantedAuthority> getAuthorities() {
+ return this.authorityList.stream().map(SimpleGrantedAuthority::new).collect(Collectors.toList());
+ }
+
+ @Override
+ public String getPassword() {
+ return this.password;
+ }
+
+ @Override
+ public String getUsername() {
+ return this.username;
+ }
+
+ @Override
+ public boolean isAccountNonExpired() {
+ return true;
+ }
+
+ @Override
+ public boolean isAccountNonLocked() {
+ return true;
+ }
+
+ @Override
+ public boolean isCredentialsNonExpired() {
+ return true;
+ }
+
+ @Override
+ public boolean isEnabled() {
+ return true;
+ }
+}
diff --git a/mall-tiny-security/src/main/java/com/macro/mall/tiny/domain/UmsResource.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/domain/UmsResource.java
similarity index 100%
rename from mall-tiny-security/src/main/java/com/macro/mall/tiny/domain/UmsResource.java
rename to mall-tiny-04/src/main/java/com/macro/mall/tiny/domain/UmsResource.java
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/AdminUserDetails.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/AdminUserDetails.java
deleted file mode 100644
index bd712424..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/AdminUserDetails.java
+++ /dev/null
@@ -1,63 +0,0 @@
-package com.macro.mall.tiny.dto;
-
-import com.macro.mall.tiny.mbg.model.UmsAdmin;
-import com.macro.mall.tiny.mbg.model.UmsPermission;
-import org.springframework.security.core.GrantedAuthority;
-import org.springframework.security.core.authority.SimpleGrantedAuthority;
-import org.springframework.security.core.userdetails.UserDetails;
-
-import java.util.Collection;
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * SpringSecurity需要的用户详情
- * Created by macro on 2018/4/26.
- */
-public class AdminUserDetails implements UserDetails {
- private UmsAdmin umsAdmin;
- private List permissionList;
- public AdminUserDetails(UmsAdmin umsAdmin, List permissionList) {
- this.umsAdmin = umsAdmin;
- this.permissionList = permissionList;
- }
-
- @Override
- public Collection extends GrantedAuthority> getAuthorities() {
- //返回当前用户的权限
- return permissionList.stream()
- .filter(permission -> permission.getValue()!=null)
- .map(permission ->new SimpleGrantedAuthority(permission.getValue()))
- .collect(Collectors.toList());
- }
-
- @Override
- public String getPassword() {
- return umsAdmin.getPassword();
- }
-
- @Override
- public String getUsername() {
- return umsAdmin.getUsername();
- }
-
- @Override
- public boolean isAccountNonExpired() {
- return true;
- }
-
- @Override
- public boolean isAccountNonLocked() {
- return true;
- }
-
- @Override
- public boolean isCredentialsNonExpired() {
- return true;
- }
-
- @Override
- public boolean isEnabled() {
- return umsAdmin.getStatus().equals(1);
- }
-}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/UmsAdminLoginParam.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/UmsAdminLoginParam.java
deleted file mode 100644
index 94e9396a..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/dto/UmsAdminLoginParam.java
+++ /dev/null
@@ -1,33 +0,0 @@
-package com.macro.mall.tiny.dto;
-
-import io.swagger.annotations.ApiModelProperty;
-import org.hibernate.validator.constraints.NotEmpty;
-
-/**
- * 用户登录参数
- * Created by macro on 2018/4/26.
- */
-public class UmsAdminLoginParam {
- @ApiModelProperty(value = "用户名", required = true)
- @NotEmpty(message = "用户名不能为空")
- private String username;
- @ApiModelProperty(value = "密码", required = true)
- @NotEmpty(message = "密码不能为空")
- private String password;
-
- public String getUsername() {
- return username;
- }
-
- public void setUsername(String username) {
- this.username = username;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
index 162458af..775879dd 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/CommentGenerator.java
@@ -11,12 +11,15 @@
import java.util.Properties;
/**
- * 自定义注释生成器
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 自定义注释生成器
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class CommentGenerator extends DefaultCommentGenerator {
private boolean addRemarkComments = false;
private static final String EXAMPLE_SUFFIX="Example";
+ private static final String MAPPER_SUFFIX="Mapper";
private static final String API_MODEL_PROPERTY_FULL_CLASS_NAME="io.swagger.annotations.ApiModelProperty";
/**
@@ -35,7 +38,7 @@ public void addConfigurationProperties(Properties properties) {
public void addFieldComment(Field field, IntrospectedTable introspectedTable,
IntrospectedColumn introspectedColumn) {
String remarks = introspectedColumn.getRemarks();
- //根据参数和备注信息判断是否添加备注信息
+ //根据参数和备注信息判断是否添加swagger注解信息
if(addRemarkComments&&StringUtility.stringHasValue(remarks)){
// addFieldJavaDoc(field, remarks);
//数据库中特殊字符需要转义
@@ -66,7 +69,7 @@ private void addFieldJavaDoc(Field field, String remarks) {
public void addJavaFileComment(CompilationUnit compilationUnit) {
super.addJavaFileComment(compilationUnit);
//只在model中添加swagger注解类的导入
- if(!compilationUnit.isJavaInterface()&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
+ if(!compilationUnit.getType().getFullyQualifiedName().contains(MAPPER_SUFFIX)&&!compilationUnit.getType().getFullyQualifiedName().contains(EXAMPLE_SUFFIX)){
compilationUnit.addImportedType(new FullyQualifiedJavaType(API_MODEL_PROPERTY_FULL_CLASS_NAME));
}
}
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/Generator.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/Generator.java
index f7851362..64248802 100644
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/Generator.java
+++ b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/Generator.java
@@ -10,8 +10,10 @@
import java.util.List;
/**
- * 用于生产MBG的代码
- * Created by macro on 2018/4/26.
+ * @auther macrozheng
+ * @description 用于生产MBG的代码
+ * @date 2018/4/26
+ * @github https://github.com/macrozheng
*/
public class Generator {
public static void main(String[] args) throws Exception {
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminMapper.java
deleted file mode 100644
index 26fd7a09..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsAdmin;
-import com.macro.mall.tiny.mbg.model.UmsAdminExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsAdminMapper {
- int countByExample(UmsAdminExample example);
-
- int deleteByExample(UmsAdminExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsAdmin record);
-
- int insertSelective(UmsAdmin record);
-
- List selectByExample(UmsAdminExample example);
-
- UmsAdmin selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsAdmin record, @Param("example") UmsAdminExample example);
-
- int updateByExample(@Param("record") UmsAdmin record, @Param("example") UmsAdminExample example);
-
- int updateByPrimaryKeySelective(UmsAdmin record);
-
- int updateByPrimaryKey(UmsAdmin record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminPermissionRelationMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminPermissionRelationMapper.java
deleted file mode 100644
index b7e7623a..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminPermissionRelationMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsAdminPermissionRelation;
-import com.macro.mall.tiny.mbg.model.UmsAdminPermissionRelationExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsAdminPermissionRelationMapper {
- int countByExample(UmsAdminPermissionRelationExample example);
-
- int deleteByExample(UmsAdminPermissionRelationExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsAdminPermissionRelation record);
-
- int insertSelective(UmsAdminPermissionRelation record);
-
- List selectByExample(UmsAdminPermissionRelationExample example);
-
- UmsAdminPermissionRelation selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsAdminPermissionRelation record, @Param("example") UmsAdminPermissionRelationExample example);
-
- int updateByExample(@Param("record") UmsAdminPermissionRelation record, @Param("example") UmsAdminPermissionRelationExample example);
-
- int updateByPrimaryKeySelective(UmsAdminPermissionRelation record);
-
- int updateByPrimaryKey(UmsAdminPermissionRelation record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminRoleRelationMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminRoleRelationMapper.java
deleted file mode 100644
index 629bbd92..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsAdminRoleRelationMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsAdminRoleRelation;
-import com.macro.mall.tiny.mbg.model.UmsAdminRoleRelationExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsAdminRoleRelationMapper {
- int countByExample(UmsAdminRoleRelationExample example);
-
- int deleteByExample(UmsAdminRoleRelationExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsAdminRoleRelation record);
-
- int insertSelective(UmsAdminRoleRelation record);
-
- List selectByExample(UmsAdminRoleRelationExample example);
-
- UmsAdminRoleRelation selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsAdminRoleRelation record, @Param("example") UmsAdminRoleRelationExample example);
-
- int updateByExample(@Param("record") UmsAdminRoleRelation record, @Param("example") UmsAdminRoleRelationExample example);
-
- int updateByPrimaryKeySelective(UmsAdminRoleRelation record);
-
- int updateByPrimaryKey(UmsAdminRoleRelation record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsPermissionMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsPermissionMapper.java
deleted file mode 100644
index fbf7b800..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsPermissionMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsPermission;
-import com.macro.mall.tiny.mbg.model.UmsPermissionExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsPermissionMapper {
- int countByExample(UmsPermissionExample example);
-
- int deleteByExample(UmsPermissionExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsPermission record);
-
- int insertSelective(UmsPermission record);
-
- List selectByExample(UmsPermissionExample example);
-
- UmsPermission selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsPermission record, @Param("example") UmsPermissionExample example);
-
- int updateByExample(@Param("record") UmsPermission record, @Param("example") UmsPermissionExample example);
-
- int updateByPrimaryKeySelective(UmsPermission record);
-
- int updateByPrimaryKey(UmsPermission record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRoleMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRoleMapper.java
deleted file mode 100644
index e9e800f1..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRoleMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsRole;
-import com.macro.mall.tiny.mbg.model.UmsRoleExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsRoleMapper {
- int countByExample(UmsRoleExample example);
-
- int deleteByExample(UmsRoleExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsRole record);
-
- int insertSelective(UmsRole record);
-
- List selectByExample(UmsRoleExample example);
-
- UmsRole selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsRole record, @Param("example") UmsRoleExample example);
-
- int updateByExample(@Param("record") UmsRole record, @Param("example") UmsRoleExample example);
-
- int updateByPrimaryKeySelective(UmsRole record);
-
- int updateByPrimaryKey(UmsRole record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRolePermissionRelationMapper.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRolePermissionRelationMapper.java
deleted file mode 100644
index 350ad73f..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/mapper/UmsRolePermissionRelationMapper.java
+++ /dev/null
@@ -1,30 +0,0 @@
-package com.macro.mall.tiny.mbg.mapper;
-
-import com.macro.mall.tiny.mbg.model.UmsRolePermissionRelation;
-import com.macro.mall.tiny.mbg.model.UmsRolePermissionRelationExample;
-import java.util.List;
-import org.apache.ibatis.annotations.Param;
-
-public interface UmsRolePermissionRelationMapper {
- int countByExample(UmsRolePermissionRelationExample example);
-
- int deleteByExample(UmsRolePermissionRelationExample example);
-
- int deleteByPrimaryKey(Long id);
-
- int insert(UmsRolePermissionRelation record);
-
- int insertSelective(UmsRolePermissionRelation record);
-
- List selectByExample(UmsRolePermissionRelationExample example);
-
- UmsRolePermissionRelation selectByPrimaryKey(Long id);
-
- int updateByExampleSelective(@Param("record") UmsRolePermissionRelation record, @Param("example") UmsRolePermissionRelationExample example);
-
- int updateByExample(@Param("record") UmsRolePermissionRelation record, @Param("example") UmsRolePermissionRelationExample example);
-
- int updateByPrimaryKeySelective(UmsRolePermissionRelation record);
-
- int updateByPrimaryKey(UmsRolePermissionRelation record);
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdmin.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdmin.java
deleted file mode 100644
index cc5c4647..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdmin.java
+++ /dev/null
@@ -1,137 +0,0 @@
-package com.macro.mall.tiny.mbg.model;
-
-import io.swagger.annotations.ApiModelProperty;
-import java.io.Serializable;
-import java.util.Date;
-
-public class UmsAdmin implements Serializable {
- private Long id;
-
- private String username;
-
- private String password;
-
- @ApiModelProperty(value = "头像")
- private String icon;
-
- @ApiModelProperty(value = "邮箱")
- private String email;
-
- @ApiModelProperty(value = "昵称")
- private String nickName;
-
- @ApiModelProperty(value = "备注信息")
- private String note;
-
- @ApiModelProperty(value = "创建时间")
- private Date createTime;
-
- @ApiModelProperty(value = "最后登录时间")
- private Date loginTime;
-
- @ApiModelProperty(value = "帐号启用状态:0->禁用;1->启用")
- private Integer status;
-
- private static final long serialVersionUID = 1L;
-
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- public String getUsername() {
- return username;
- }
-
- public void setUsername(String username) {
- this.username = username;
- }
-
- public String getPassword() {
- return password;
- }
-
- public void setPassword(String password) {
- this.password = password;
- }
-
- public String getIcon() {
- return icon;
- }
-
- public void setIcon(String icon) {
- this.icon = icon;
- }
-
- public String getEmail() {
- return email;
- }
-
- public void setEmail(String email) {
- this.email = email;
- }
-
- public String getNickName() {
- return nickName;
- }
-
- public void setNickName(String nickName) {
- this.nickName = nickName;
- }
-
- public String getNote() {
- return note;
- }
-
- public void setNote(String note) {
- this.note = note;
- }
-
- public Date getCreateTime() {
- return createTime;
- }
-
- public void setCreateTime(Date createTime) {
- this.createTime = createTime;
- }
-
- public Date getLoginTime() {
- return loginTime;
- }
-
- public void setLoginTime(Date loginTime) {
- this.loginTime = loginTime;
- }
-
- public Integer getStatus() {
- return status;
- }
-
- public void setStatus(Integer status) {
- this.status = status;
- }
-
- @Override
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append(getClass().getSimpleName());
- sb.append(" [");
- sb.append("Hash = ").append(hashCode());
- sb.append(", id=").append(id);
- sb.append(", username=").append(username);
- sb.append(", password=").append(password);
- sb.append(", icon=").append(icon);
- sb.append(", email=").append(email);
- sb.append(", nickName=").append(nickName);
- sb.append(", note=").append(note);
- sb.append(", createTime=").append(createTime);
- sb.append(", loginTime=").append(loginTime);
- sb.append(", status=").append(status);
- sb.append(", serialVersionUID=").append(serialVersionUID);
- sb.append("]");
- return sb.toString();
- }
-}
\ No newline at end of file
diff --git a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdminExample.java b/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdminExample.java
deleted file mode 100644
index 8544a373..00000000
--- a/mall-tiny-04/src/main/java/com/macro/mall/tiny/mbg/model/UmsAdminExample.java
+++ /dev/null
@@ -1,861 +0,0 @@
-package com.macro.mall.tiny.mbg.model;
-
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
-
-public class UmsAdminExample {
- protected String orderByClause;
-
- protected boolean distinct;
-
- protected List oredCriteria;
-
- public UmsAdminExample() {
- oredCriteria = new ArrayList();
- }
-
- public void setOrderByClause(String orderByClause) {
- this.orderByClause = orderByClause;
- }
-
- public String getOrderByClause() {
- return orderByClause;
- }
-
- public void setDistinct(boolean distinct) {
- this.distinct = distinct;
- }
-
- public boolean isDistinct() {
- return distinct;
- }
-
- public List getOredCriteria() {
- return oredCriteria;
- }
-
- public void or(Criteria criteria) {
- oredCriteria.add(criteria);
- }
-
- public Criteria or() {
- Criteria criteria = createCriteriaInternal();
- oredCriteria.add(criteria);
- return criteria;
- }
-
- public Criteria createCriteria() {
- Criteria criteria = createCriteriaInternal();
- if (oredCriteria.size() == 0) {
- oredCriteria.add(criteria);
- }
- return criteria;
- }
-
- protected Criteria createCriteriaInternal() {
- Criteria criteria = new Criteria();
- return criteria;
- }
-
- public void clear() {
- oredCriteria.clear();
- orderByClause = null;
- distinct = false;
- }
-
- protected abstract static class GeneratedCriteria {
- protected List criteria;
-
- protected GeneratedCriteria() {
- super();
- criteria = new ArrayList();
- }
-
- public boolean isValid() {
- return criteria.size() > 0;
- }
-
- public List getAllCriteria() {
- return criteria;
- }
-
- public List getCriteria() {
- return criteria;
- }
-
- protected void addCriterion(String condition) {
- if (condition == null) {
- throw new RuntimeException("Value for condition cannot be null");
- }
- criteria.add(new Criterion(condition));
- }
-
- protected void addCriterion(String condition, Object value, String property) {
- if (value == null) {
- throw new RuntimeException("Value for " + property + " cannot be null");
- }
- criteria.add(new Criterion(condition, value));
- }
-
- protected void addCriterion(String condition, Object value1, Object value2, String property) {
- if (value1 == null || value2 == null) {
- throw new RuntimeException("Between values for " + property + " cannot be null");
- }
- criteria.add(new Criterion(condition, value1, value2));
- }
-
- public Criteria andIdIsNull() {
- addCriterion("id is null");
- return (Criteria) this;
- }
-
- public Criteria andIdIsNotNull() {
- addCriterion("id is not null");
- return (Criteria) this;
- }
-
- public Criteria andIdEqualTo(Long value) {
- addCriterion("id =", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdNotEqualTo(Long value) {
- addCriterion("id <>", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdGreaterThan(Long value) {
- addCriterion("id >", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdGreaterThanOrEqualTo(Long value) {
- addCriterion("id >=", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdLessThan(Long value) {
- addCriterion("id <", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdLessThanOrEqualTo(Long value) {
- addCriterion("id <=", value, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdIn(List values) {
- addCriterion("id in", values, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdNotIn(List values) {
- addCriterion("id not in", values, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdBetween(Long value1, Long value2) {
- addCriterion("id between", value1, value2, "id");
- return (Criteria) this;
- }
-
- public Criteria andIdNotBetween(Long value1, Long value2) {
- addCriterion("id not between", value1, value2, "id");
- return (Criteria) this;
- }
-
- public Criteria andUsernameIsNull() {
- addCriterion("username is null");
- return (Criteria) this;
- }
-
- public Criteria andUsernameIsNotNull() {
- addCriterion("username is not null");
- return (Criteria) this;
- }
-
- public Criteria andUsernameEqualTo(String value) {
- addCriterion("username =", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameNotEqualTo(String value) {
- addCriterion("username <>", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameGreaterThan(String value) {
- addCriterion("username >", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameGreaterThanOrEqualTo(String value) {
- addCriterion("username >=", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameLessThan(String value) {
- addCriterion("username <", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameLessThanOrEqualTo(String value) {
- addCriterion("username <=", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameLike(String value) {
- addCriterion("username like", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameNotLike(String value) {
- addCriterion("username not like", value, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameIn(List values) {
- addCriterion("username in", values, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameNotIn(List values) {
- addCriterion("username not in", values, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameBetween(String value1, String value2) {
- addCriterion("username between", value1, value2, "username");
- return (Criteria) this;
- }
-
- public Criteria andUsernameNotBetween(String value1, String value2) {
- addCriterion("username not between", value1, value2, "username");
- return (Criteria) this;
- }
-
- public Criteria andPasswordIsNull() {
- addCriterion("password is null");
- return (Criteria) this;
- }
-
- public Criteria andPasswordIsNotNull() {
- addCriterion("password is not null");
- return (Criteria) this;
- }
-
- public Criteria andPasswordEqualTo(String value) {
- addCriterion("password =", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordNotEqualTo(String value) {
- addCriterion("password <>", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordGreaterThan(String value) {
- addCriterion("password >", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordGreaterThanOrEqualTo(String value) {
- addCriterion("password >=", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordLessThan(String value) {
- addCriterion("password <", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordLessThanOrEqualTo(String value) {
- addCriterion("password <=", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordLike(String value) {
- addCriterion("password like", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordNotLike(String value) {
- addCriterion("password not like", value, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordIn(List values) {
- addCriterion("password in", values, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordNotIn(List values) {
- addCriterion("password not in", values, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordBetween(String value1, String value2) {
- addCriterion("password between", value1, value2, "password");
- return (Criteria) this;
- }
-
- public Criteria andPasswordNotBetween(String value1, String value2) {
- addCriterion("password not between", value1, value2, "password");
- return (Criteria) this;
- }
-
- public Criteria andIconIsNull() {
- addCriterion("icon is null");
- return (Criteria) this;
- }
-
- public Criteria andIconIsNotNull() {
- addCriterion("icon is not null");
- return (Criteria) this;
- }
-
- public Criteria andIconEqualTo(String value) {
- addCriterion("icon =", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconNotEqualTo(String value) {
- addCriterion("icon <>", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconGreaterThan(String value) {
- addCriterion("icon >", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconGreaterThanOrEqualTo(String value) {
- addCriterion("icon >=", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconLessThan(String value) {
- addCriterion("icon <", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconLessThanOrEqualTo(String value) {
- addCriterion("icon <=", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconLike(String value) {
- addCriterion("icon like", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconNotLike(String value) {
- addCriterion("icon not like", value, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconIn(List values) {
- addCriterion("icon in", values, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconNotIn(List values) {
- addCriterion("icon not in", values, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconBetween(String value1, String value2) {
- addCriterion("icon between", value1, value2, "icon");
- return (Criteria) this;
- }
-
- public Criteria andIconNotBetween(String value1, String value2) {
- addCriterion("icon not between", value1, value2, "icon");
- return (Criteria) this;
- }
-
- public Criteria andEmailIsNull() {
- addCriterion("email is null");
- return (Criteria) this;
- }
-
- public Criteria andEmailIsNotNull() {
- addCriterion("email is not null");
- return (Criteria) this;
- }
-
- public Criteria andEmailEqualTo(String value) {
- addCriterion("email =", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailNotEqualTo(String value) {
- addCriterion("email <>", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailGreaterThan(String value) {
- addCriterion("email >", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailGreaterThanOrEqualTo(String value) {
- addCriterion("email >=", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailLessThan(String value) {
- addCriterion("email <", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailLessThanOrEqualTo(String value) {
- addCriterion("email <=", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailLike(String value) {
- addCriterion("email like", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailNotLike(String value) {
- addCriterion("email not like", value, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailIn(List values) {
- addCriterion("email in", values, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailNotIn(List values) {
- addCriterion("email not in", values, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailBetween(String value1, String value2) {
- addCriterion("email between", value1, value2, "email");
- return (Criteria) this;
- }
-
- public Criteria andEmailNotBetween(String value1, String value2) {
- addCriterion("email not between", value1, value2, "email");
- return (Criteria) this;
- }
-
- public Criteria andNickNameIsNull() {
- addCriterion("nick_name is null");
- return (Criteria) this;
- }
-
- public Criteria andNickNameIsNotNull() {
- addCriterion("nick_name is not null");
- return (Criteria) this;
- }
-
- public Criteria andNickNameEqualTo(String value) {
- addCriterion("nick_name =", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameNotEqualTo(String value) {
- addCriterion("nick_name <>", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameGreaterThan(String value) {
- addCriterion("nick_name >", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameGreaterThanOrEqualTo(String value) {
- addCriterion("nick_name >=", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameLessThan(String value) {
- addCriterion("nick_name <", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameLessThanOrEqualTo(String value) {
- addCriterion("nick_name <=", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameLike(String value) {
- addCriterion("nick_name like", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameNotLike(String value) {
- addCriterion("nick_name not like", value, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameIn(List values) {
- addCriterion("nick_name in", values, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameNotIn(List values) {
- addCriterion("nick_name not in", values, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameBetween(String value1, String value2) {
- addCriterion("nick_name between", value1, value2, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNickNameNotBetween(String value1, String value2) {
- addCriterion("nick_name not between", value1, value2, "nickName");
- return (Criteria) this;
- }
-
- public Criteria andNoteIsNull() {
- addCriterion("note is null");
- return (Criteria) this;
- }
-
- public Criteria andNoteIsNotNull() {
- addCriterion("note is not null");
- return (Criteria) this;
- }
-
- public Criteria andNoteEqualTo(String value) {
- addCriterion("note =", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteNotEqualTo(String value) {
- addCriterion("note <>", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteGreaterThan(String value) {
- addCriterion("note >", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteGreaterThanOrEqualTo(String value) {
- addCriterion("note >=", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteLessThan(String value) {
- addCriterion("note <", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteLessThanOrEqualTo(String value) {
- addCriterion("note <=", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteLike(String value) {
- addCriterion("note like", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteNotLike(String value) {
- addCriterion("note not like", value, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteIn(List values) {
- addCriterion("note in", values, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteNotIn(List values) {
- addCriterion("note not in", values, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteBetween(String value1, String value2) {
- addCriterion("note between", value1, value2, "note");
- return (Criteria) this;
- }
-
- public Criteria andNoteNotBetween(String value1, String value2) {
- addCriterion("note not between", value1, value2, "note");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeIsNull() {
- addCriterion("create_time is null");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeIsNotNull() {
- addCriterion("create_time is not null");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeEqualTo(Date value) {
- addCriterion("create_time =", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeNotEqualTo(Date value) {
- addCriterion("create_time <>", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeGreaterThan(Date value) {
- addCriterion("create_time >", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
- addCriterion("create_time >=", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeLessThan(Date value) {
- addCriterion("create_time <", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
- addCriterion("create_time <=", value, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeIn(List values) {
- addCriterion("create_time in", values, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeNotIn(List values) {
- addCriterion("create_time not in", values, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeBetween(Date value1, Date value2) {
- addCriterion("create_time between", value1, value2, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
- addCriterion("create_time not between", value1, value2, "createTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeIsNull() {
- addCriterion("login_time is null");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeIsNotNull() {
- addCriterion("login_time is not null");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeEqualTo(Date value) {
- addCriterion("login_time =", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeNotEqualTo(Date value) {
- addCriterion("login_time <>", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeGreaterThan(Date value) {
- addCriterion("login_time >", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeGreaterThanOrEqualTo(Date value) {
- addCriterion("login_time >=", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeLessThan(Date value) {
- addCriterion("login_time <", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeLessThanOrEqualTo(Date value) {
- addCriterion("login_time <=", value, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeIn(List values) {
- addCriterion("login_time in", values, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeNotIn(List values) {
- addCriterion("login_time not in", values, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeBetween(Date value1, Date value2) {
- addCriterion("login_time between", value1, value2, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andLoginTimeNotBetween(Date value1, Date value2) {
- addCriterion("login_time not between", value1, value2, "loginTime");
- return (Criteria) this;
- }
-
- public Criteria andStatusIsNull() {
- addCriterion("status is null");
- return (Criteria) this;
- }
-
- public Criteria andStatusIsNotNull() {
- addCriterion("status is not null");
- return (Criteria) this;
- }
-
- public Criteria andStatusEqualTo(Integer value) {
- addCriterion("status =", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusNotEqualTo(Integer value) {
- addCriterion("status <>", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusGreaterThan(Integer value) {
- addCriterion("status >", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
- addCriterion("status >=", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusLessThan(Integer value) {
- addCriterion("status <", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusLessThanOrEqualTo(Integer value) {
- addCriterion("status <=", value, "status");
- return (Criteria) this;
- }
-
- public Criteria andStatusIn(List