Commit db97f7493d45d2fae838b5a98a3e63f4ba0c2018

Authored by youxiw2000
0 parents

init

Too many changes to show.

To preserve performance only 10 of 671 files are displayed.

bsthLineProfiles/LICENSE 0 → 100644
  1 +++ a/bsthLineProfiles/LICENSE
  1 +The MIT License (MIT)
  2 +
  3 +Copyright (c) 2018 RuoYi
  4 +
  5 +Permission is hereby granted, free of charge, to any person obtaining a copy of
  6 +this software and associated documentation files (the "Software"), to deal in
  7 +the Software without restriction, including without limitation the rights to
  8 +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
  9 +the Software, and to permit persons to whom the Software is furnished to do so,
  10 +subject to the following conditions:
  11 +
  12 +The above copyright notice and this permission notice shall be included in all
  13 +copies or substantial portions of the Software.
  14 +
  15 +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
  16 +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
  17 +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
  18 +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
  19 +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  20 +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
0 21 \ No newline at end of file
... ...
bsthLineProfiles/README.md 0 → 100644
  1 +++ a/bsthLineProfiles/README.md
  1 +## 平台简介
  2 +
  3 +一直想做一款后台管理系统,看了很多优秀的开源项目但是发现没有合适的。于是利用空闲休息时间开始自己写了一套后台系统。如此有了若依。她可以用于所有的Web应用程序,如网站管理后台,网站会员中心,CMS,CRM,OA。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。系统会陆续更新一些实用功能。
  4 +
  5 +性别男,若依是给女儿取的名字(寓意:你若不离不弃,我必生死相依)
  6 +
  7 +若依是一套全部开源的快速开发平台,毫无保留给个人及企业免费使用。
  8 +
  9 +* 前后端分离版本,请移步[RuoYi-Vue](https://gitee.com/y_project/RuoYi-Vue),微服务版本,请移步[RuoYi-Cloud](https://gitee.com/y_project/RuoYi-Cloud)
  10 +* 感谢 [hplus](https://gitee.com/hplus_admin/hplus) 后台主题 UI 框架。
  11 +* 阿里云折扣场:[点我进入](http://aly.ruoyi.vip),腾讯云秒杀场:[点我进入](http://txy.ruoyi.vip)  
  12 +* 阿里云优惠券:[点我领取](https://www.aliyun.com/minisite/goods?userCode=brki8iof&share_source=copy_link),腾讯云优惠券:[点我领取](https://cloud.tencent.com/redirect.php?redirect=1025&cps_key=198c8df2ed259157187173bc7f4f32fd&from=console)  
  13 +
  14 +## 内置功能
  15 +
  16 +1. 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
  17 +2. 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
  18 +3. 岗位管理:配置系统用户所属担任职务。
  19 +4. 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
  20 +5. 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
  21 +6. 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
  22 +7. 参数管理:对系统动态配置常用参数。
  23 +8. 通知公告:系统通知公告信息发布维护。
  24 +9. 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
  25 +10. 登录日志:系统登录日志记录查询包含登录异常。
  26 +11. 在线用户:当前系统中活跃用户状态监控。
  27 +12. 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
  28 +13. 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
  29 +14. 系统接口:根据业务代码自动生成相关的api接口文档。
  30 +15. 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
  31 +16. 缓存监控:对系统的缓存查询,删除、清空等操作。
  32 +17. 在线构建器:拖动表单元素生成相应的HTML代码。
  33 +18. 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
  34 +
  35 +## 在线体验
  36 +
  37 +- admin/admin123
  38 +- 陆陆续续收到一些打赏,为了更好的体验已用于演示服务器升级。谢谢各位小伙伴。
  39 +
  40 +演示地址:http://ruoyi.vip
  41 +文档地址:http://doc.ruoyi.vip
  42 +
  43 +## 演示图
  44 +
  45 +<table>
  46 + <tr>
  47 + <td><img src="https://oscimg.oschina.net/oscnet/up-42e518aa72a24d228427a1261cb3679f395.png"/></td>
  48 + <td><img src="https://oscimg.oschina.net/oscnet/up-7f20dd0edba25e5187c5c4dd3ec7d3d9797.png"/></td>
  49 + </tr>
  50 + <tr>
  51 + <td><img src="https://oscimg.oschina.net/oscnet/up-2dae3d87f6a8ca05057db059cd9a411d51d.png"/></td>
  52 + <td><img src="https://oscimg.oschina.net/oscnet/up-ea4d98423471e55fba784694e45d12bd4bb.png"/></td>
  53 + </tr>
  54 + <tr>
  55 + <td><img src="https://oscimg.oschina.net/oscnet/up-7f6c6e9f5873efca09bd2870ee8468b8fce.png"/></td>
  56 + <td><img src="https://oscimg.oschina.net/oscnet/up-c708b65f2c382a03f69fe1efa8d341e6cff.png"/></td>
  57 + </tr>
  58 + <tr>
  59 + <td><img src="https://oscimg.oschina.net/oscnet/up-9ab586c47dd5c7b92bca0d727962c90e3b8.png"/></td>
  60 + <td><img src="https://oscimg.oschina.net/oscnet/up-ef954122a2080e02013112db21754b955c6.png"/></td>
  61 + </tr>
  62 + <tr>
  63 + <td><img src="https://oscimg.oschina.net/oscnet/up-088edb4d531e122415a1e2342bccb1a9691.png"/></td>
  64 + <td><img src="https://oscimg.oschina.net/oscnet/up-f886fe19bd820c0efae82f680223cac196c.png"/></td>
  65 + </tr>
  66 + <tr>
  67 + <td><img src="https://oscimg.oschina.net/oscnet/up-c7a2eb71fa65d6e660294b4bccca613d638.png"/></td>
  68 + <td><img src="https://oscimg.oschina.net/oscnet/up-e60137fb0787defe613bd83331dc4755a70.png"/></td>
  69 + </tr>
  70 + <tr>
  71 + <td><img src="https://oscimg.oschina.net/oscnet/up-7c51c1b5758f0a0f92ed3c60469b7526f9f.png"/></td>
  72 + <td><img src="https://oscimg.oschina.net/oscnet/up-15181aed45bb2461aa97b594cbf2f86ea5f.png"/></td>
  73 + </tr>
  74 + <tr>
  75 + <td><img src="https://oscimg.oschina.net/oscnet/up-83326ad52ea63f67233d126226738054d98.png"/></td>
  76 + <td><img src="https://oscimg.oschina.net/oscnet/up-3bd6d31e913b70df00107db51d64ef81df7.png"/></td>
  77 + </tr>
  78 + <tr>
  79 + <td><img src="https://oscimg.oschina.net/oscnet/up-70a2225836bc82042a6785edf6299e2586a.png"/></td>
  80 + <td><img src="https://oscimg.oschina.net/oscnet/up-0184d6ab01fdc6667a14327fcaf8b46345d.png"/></td>
  81 + </tr>
  82 + <tr>
  83 + <td><img src="https://oscimg.oschina.net/oscnet/up-64d8086dc2c02c8f71170290482f7640098.png"/></td>
  84 + <td><img src="https://oscimg.oschina.net/oscnet/up-5e4daac0bb59612c5038448acbcef235e3a.png"/></td>
  85 + </tr>
  86 +</table>
  87 +
  88 +
  89 +## 若依交流群
  90 +
  91 +QQ群: [![加入QQ群](https://img.shields.io/badge/已满-1389287-blue.svg)](https://jq.qq.com/?_wv=1027&k=5HBAaYN) [![加入QQ群](https://img.shields.io/badge/已满-1679294-blue.svg)](https://jq.qq.com/?_wv=1027&k=5cHeRVW) [![加入QQ群](https://img.shields.io/badge/已满-1529866-blue.svg)](https://jq.qq.com/?_wv=1027&k=53R0L5Z) [![加入QQ群](https://img.shields.io/badge/已满-1772718-blue.svg)](https://jq.qq.com/?_wv=1027&k=5g75dCU) [![加入QQ群](https://img.shields.io/badge/已满-1366522-blue.svg)](https://jq.qq.com/?_wv=1027&k=58cPoHA) [![加入QQ群](https://img.shields.io/badge/已满-1382251-blue.svg)](https://jq.qq.com/?_wv=1027&k=5Ofd4Pb) [![加入QQ群](https://img.shields.io/badge/已满-1145125-blue.svg)](https://jq.qq.com/?_wv=1027&k=5yugASz) [![加入QQ群](https://img.shields.io/badge/已满-86752435-blue.svg)](https://jq.qq.com/?_wv=1027&k=5Rf3d2P) [![加入QQ群](https://img.shields.io/badge/已满-134072510-blue.svg)](https://jq.qq.com/?_wv=1027&k=5ZIjaeP) [![加入QQ群](https://img.shields.io/badge/已满-210336300-blue.svg)](https://jq.qq.com/?_wv=1027&k=5CJw1jY) [![加入QQ群](https://img.shields.io/badge/已满-339522636-blue.svg)](https://jq.qq.com/?_wv=1027&k=5omzbKc) [![加入QQ群](https://img.shields.io/badge/已满-130035985-blue.svg)](https://jq.qq.com/?_wv=1027&k=qPIKBb7s) [![加入QQ群](https://img.shields.io/badge/143151071-blue.svg)](https://jq.qq.com/?_wv=1027&k=4NsjKbtU)
0 92 \ No newline at end of file
... ...
bsthLineProfiles/bin/clean.bat 0 → 100644
  1 +++ a/bsthLineProfiles/bin/clean.bat
  1 +@echo off
  2 +echo.
  3 +echo [ÐÅÏ¢] ÇåÀíÉú³É·¾¶¡£
  4 +echo.
  5 +
  6 +%~d0
  7 +cd %~dp0
  8 +
  9 +cd ..
  10 +call mvn clean
  11 +
  12 +pause
0 13 \ No newline at end of file
... ...
bsthLineProfiles/bin/package.bat 0 → 100644
  1 +++ a/bsthLineProfiles/bin/package.bat
  1 +@echo off
  2 +echo.
  3 +echo [信息] 打包Web工程,生成war/jar包文件。
  4 +echo.
  5 +
  6 +%~d0
  7 +cd %~dp0
  8 +
  9 +cd ..
  10 +call E:\apache-maven-3.8.2\bin\mvn package -Dmaven.test.skip=true
  11 +
  12 +pause
0 13 \ No newline at end of file
... ...
bsthLineProfiles/bin/run-tomcat.bat 0 → 100644
  1 +++ a/bsthLineProfiles/bin/run-tomcat.bat
  1 +@echo off
  2 +echo.
  3 +echo [ÐÅÏ¢] ʹÓà Spring Boot Tomcat ÔËÐÐ Web ¹¤³Ì¡£
  4 +echo.
  5 +
  6 +%~d0
  7 +cd %~dp0
  8 +
  9 +cd ..
  10 +title %cd%
  11 +set MAVEN_OPTS=%MAVEN_OPTS% -Xms256m -Xmx1024m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=512m
  12 +call mvn clean spring-boot:run -Dmaven.test.skip=true -U
  13 +
  14 +pause
0 15 \ No newline at end of file
... ...
bsthLineProfiles/doc/若依环境使用手册.docx 0 → 100644
No preview for this file type
bsthLineProfiles/pom.xml 0 → 100644
  1 +++ a/bsthLineProfiles/pom.xml
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  3 + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  4 + <modelVersion>4.0.0</modelVersion>
  5 +
  6 + <groupId>com.ruoyi</groupId>
  7 + <artifactId>ruoyi</artifactId>
  8 + <version>4.6.0</version>
  9 + <packaging>war</packaging>
  10 +
  11 + <name>ruoyi</name>
  12 + <url>http://www.ruoyi.vip</url>
  13 + <description>若依管理系统</description>
  14 +
  15 + <parent>
  16 + <groupId>org.springframework.boot</groupId>
  17 + <artifactId>spring-boot-starter-parent</artifactId>
  18 + <version>2.2.13.RELEASE</version>
  19 + <relativePath />
  20 + </parent>
  21 +
  22 + <properties>
  23 + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  24 + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  25 + <java.version>1.8</java.version>
  26 + <maven-jar-plugin.version>3.1.1</maven-jar-plugin.version>
  27 + <shiro.version>1.7.1</shiro.version>
  28 + <thymeleaf.extras.shiro.version>2.0.0</thymeleaf.extras.shiro.version>
  29 + <mybatis.spring.boot.starter.version>2.1.3</mybatis.spring.boot.starter.version>
  30 + <pagehelper.spring.boot.starter.version>1.3.0</pagehelper.spring.boot.starter.version>
  31 + <fastjson.version>1.2.75</fastjson.version>
  32 + <druid.version>1.2.4</druid.version>
  33 + <commons.io.version>2.5</commons.io.version>
  34 + <commons.fileupload.version>1.3.3</commons.fileupload.version>
  35 + <bitwalker.version>1.21</bitwalker.version>
  36 + <velocity.version>1.7</velocity.version>
  37 + <kaptcha.version>2.3.2</kaptcha.version>
  38 + <swagger.version>2.9.2</swagger.version>
  39 + <poi.version>4.1.2</poi.version>
  40 + <oshi.version>5.6.0</oshi.version>
  41 + <jna.version>5.7.0</jna.version>
  42 + </properties>
  43 +
  44 + <dependencies>
  45 +
  46 + <!-- SpringBoot 核心包 -->
  47 + <dependency>
  48 + <groupId>org.springframework.boot</groupId>
  49 + <artifactId>spring-boot-starter</artifactId>
  50 + </dependency>
  51 +
  52 + <!-- SpringBoot 测试 -->
  53 + <dependency>
  54 + <groupId>org.springframework.boot</groupId>
  55 + <artifactId>spring-boot-starter-test</artifactId>
  56 + <scope>test</scope>
  57 + </dependency>
  58 +
  59 + <!-- SpringBoot 拦截器 -->
  60 + <dependency>
  61 + <groupId>org.springframework.boot</groupId>
  62 + <artifactId>spring-boot-starter-aop</artifactId>
  63 + </dependency>
  64 +
  65 + <!-- SpringBoot Web容器 -->
  66 + <dependency>
  67 + <groupId>org.springframework.boot</groupId>
  68 + <artifactId>spring-boot-starter-web</artifactId>
  69 + </dependency>
  70 +
  71 + <!-- SpringBoot集成thymeleaf模板 -->
  72 + <dependency>
  73 + <groupId>org.springframework.boot</groupId>
  74 + <artifactId>spring-boot-starter-thymeleaf</artifactId>
  75 + </dependency>
  76 +
  77 + <!-- spring-boot-devtools -->
  78 + <dependency>
  79 + <groupId>org.springframework.boot</groupId>
  80 + <artifactId>spring-boot-devtools</artifactId>
  81 + <optional>true</optional> <!-- 表示依赖不会传递 -->
  82 + </dependency>
  83 +
  84 + <!-- redis 缓存操作 -->
  85 + <dependency>
  86 + <groupId>org.springframework.boot</groupId>
  87 + <artifactId>spring-boot-starter-data-redis</artifactId>
  88 + </dependency>
  89 +
  90 + <!--Token生成与解析-->
  91 + <dependency>
  92 + <groupId>io.jsonwebtoken</groupId>
  93 + <artifactId>jjwt</artifactId>
  94 + <version>0.9.1</version>
  95 + </dependency>
  96 +
  97 + <!-- Mysql驱动包 -->
  98 + <dependency>
  99 + <groupId>mysql</groupId>
  100 + <artifactId>mysql-connector-java</artifactId>
  101 + </dependency>
  102 +
  103 + <!-- SpringBoot集成mybatis框架 -->
  104 + <dependency>
  105 + <groupId>org.mybatis.spring.boot</groupId>
  106 + <artifactId>mybatis-spring-boot-starter</artifactId>
  107 + <version>${mybatis.spring.boot.starter.version}</version>
  108 + <exclusions>
  109 + <exclusion>
  110 + <artifactId>spring-boot-starter-tomcat</artifactId>
  111 + <groupId>org.springframework.boot</groupId>
  112 + </exclusion>
  113 + </exclusions>
  114 + </dependency>
  115 + <dependency>
  116 + <groupId>org.springframework.boot</groupId>
  117 + <artifactId>spring-boot-configuration-processor</artifactId>
  118 + <optional>true</optional>
  119 + </dependency>
  120 +
  121 + <!-- pagehelper 分页插件 -->
  122 + <dependency>
  123 + <groupId>com.github.pagehelper</groupId>
  124 + <artifactId>pagehelper-spring-boot-starter</artifactId>
  125 + <version>${pagehelper.spring.boot.starter.version}</version>
  126 + </dependency>
  127 +
  128 + <!--阿里数据库连接池 -->
  129 + <dependency>
  130 + <groupId>com.alibaba</groupId>
  131 + <artifactId>druid-spring-boot-starter</artifactId>
  132 + <version>${druid.version}</version>
  133 + </dependency>
  134 + <dependency>
  135 + <groupId>org.apache.commons</groupId>
  136 + <artifactId>commons-pool2</artifactId>
  137 + <version>2.7.0</version>
  138 + </dependency>
  139 +
  140 + <!--常用工具类 -->
  141 + <dependency>
  142 + <groupId>org.apache.commons</groupId>
  143 + <artifactId>commons-lang3</artifactId>
  144 + </dependency>
  145 +
  146 + <!--io常用工具类 -->
  147 + <dependency>
  148 + <groupId>commons-io</groupId>
  149 + <artifactId>commons-io</artifactId>
  150 + <version>${commons.io.version}</version>
  151 + </dependency>
  152 +
  153 + <!--文件上传工具类 -->
  154 + <dependency>
  155 + <groupId>commons-fileupload</groupId>
  156 + <artifactId>commons-fileupload</artifactId>
  157 + <version>${commons.fileupload.version}</version>
  158 + </dependency>
  159 +
  160 + <!--Shiro核心框架 -->
  161 + <dependency>
  162 + <groupId>org.apache.shiro</groupId>
  163 + <artifactId>shiro-core</artifactId>
  164 + <version>${shiro.version}</version>
  165 + </dependency>
  166 +
  167 + <!-- Shiro使用Spring框架 -->
  168 + <dependency>
  169 + <groupId>org.apache.shiro</groupId>
  170 + <artifactId>shiro-spring</artifactId>
  171 + <version>${shiro.version}</version>
  172 + </dependency>
  173 +
  174 + <!-- Shiro使用EhCache缓存框架 -->
  175 + <dependency>
  176 + <groupId>org.apache.shiro</groupId>
  177 + <artifactId>shiro-ehcache</artifactId>
  178 + <version>${shiro.version}</version>
  179 + </dependency>
  180 +
  181 + <!-- thymeleaf模板引擎和shiro框架的整合 -->
  182 + <dependency>
  183 + <groupId>com.github.theborakompanioni</groupId>
  184 + <artifactId>thymeleaf-extras-shiro</artifactId>
  185 + <version>${thymeleaf.extras.shiro.version}</version>
  186 + </dependency>
  187 +
  188 + <!-- 阿里JSON解析器 -->
  189 + <dependency>
  190 + <groupId>com.alibaba</groupId>
  191 + <artifactId>fastjson</artifactId>
  192 + <version>${fastjson.version}</version>
  193 + </dependency>
  194 +
  195 + <!-- 解析客户端操作系统、浏览器等 -->
  196 + <dependency>
  197 + <groupId>eu.bitwalker</groupId>
  198 + <artifactId>UserAgentUtils</artifactId>
  199 + <version>${bitwalker.version}</version>
  200 + </dependency>
  201 +
  202 + <!--Spring框架基本的核心工具-->
  203 + <dependency>
  204 + <groupId>org.springframework</groupId>
  205 + <artifactId>spring-context-support</artifactId>
  206 + </dependency>
  207 +
  208 + <!-- 定时任务 -->
  209 + <dependency>
  210 + <groupId>org.quartz-scheduler</groupId>
  211 + <artifactId>quartz</artifactId>
  212 + <exclusions>
  213 + <exclusion>
  214 + <groupId>com.mchange</groupId>
  215 + <artifactId>c3p0</artifactId>
  216 + </exclusion>
  217 + </exclusions>
  218 + </dependency>
  219 +
  220 + <!--velocity代码生成使用模板 -->
  221 + <dependency>
  222 + <groupId>org.apache.velocity</groupId>
  223 + <artifactId>velocity</artifactId>
  224 + <version>${velocity.version}</version>
  225 + </dependency>
  226 +
  227 + <!--验证码 -->
  228 + <dependency>
  229 + <groupId>com.github.penggle</groupId>
  230 + <artifactId>kaptcha</artifactId>
  231 + <version>${kaptcha.version}</version>
  232 + <exclusions>
  233 + <exclusion>
  234 + <artifactId>javax.servlet-api</artifactId>
  235 + <groupId>javax.servlet</groupId>
  236 + </exclusion>
  237 + </exclusions>
  238 + </dependency>
  239 +
  240 + <!-- swagger2-->
  241 + <dependency>
  242 + <groupId>io.springfox</groupId>
  243 + <artifactId>springfox-swagger2</artifactId>
  244 + <version>${swagger.version}</version>
  245 + <exclusions>
  246 + <exclusion>
  247 + <groupId>io.swagger</groupId>
  248 + <artifactId>swagger-annotations</artifactId>
  249 + </exclusion>
  250 + <exclusion>
  251 + <groupId>io.swagger</groupId>
  252 + <artifactId>swagger-models</artifactId>
  253 + </exclusion>
  254 + </exclusions>
  255 + </dependency>
  256 +
  257 + <!--防止进入swagger页面报类型转换错误,排除2.9.2中的引用,手动增加1.5.21版本-->
  258 + <dependency>
  259 + <groupId>io.swagger</groupId>
  260 + <artifactId>swagger-annotations</artifactId>
  261 + <version>1.5.21</version>
  262 + </dependency>
  263 +
  264 + <dependency>
  265 + <groupId>io.swagger</groupId>
  266 + <artifactId>swagger-models</artifactId>
  267 + <version>1.5.21</version>
  268 + </dependency>
  269 +
  270 + <!-- swagger2-UI-->
  271 + <dependency>
  272 + <groupId>io.springfox</groupId>
  273 + <artifactId>springfox-swagger-ui</artifactId>
  274 + <version>${swagger.version}</version>
  275 + </dependency>
  276 +
  277 + <!-- 获取系统信息 -->
  278 + <dependency>
  279 + <groupId>com.github.oshi</groupId>
  280 + <artifactId>oshi-core</artifactId>
  281 + <version>${oshi.version}</version>
  282 + </dependency>
  283 +
  284 + <!-- excel工具 -->
  285 + <dependency>
  286 + <groupId>org.apache.poi</groupId>
  287 + <artifactId>poi-ooxml</artifactId>
  288 + <version>${poi.version}</version>
  289 + </dependency>
  290 +
  291 + </dependencies>
  292 +
  293 + <build>
  294 + <finalName>${project.artifactId}</finalName>
  295 + <plugins>
  296 + <plugin>
  297 + <groupId>org.springframework.boot</groupId>
  298 + <artifactId>spring-boot-maven-plugin</artifactId>
  299 + <configuration>
  300 + <fork>true</fork> <!-- 如果没有该配置,devtools不会生效 -->
  301 + </configuration>
  302 + </plugin>
  303 + </plugins>
  304 + </build>
  305 +
  306 + <repositories>
  307 + <repository>
  308 + <id>public</id>
  309 + <name>aliyun nexus</name>
  310 + <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  311 + <releases>
  312 + <enabled>true</enabled>
  313 + </releases>
  314 + </repository>
  315 + </repositories>
  316 +
  317 + <pluginRepositories>
  318 + <pluginRepository>
  319 + <id>public</id>
  320 + <name>aliyun nexus</name>
  321 + <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
  322 + <releases>
  323 + <enabled>true</enabled>
  324 + </releases>
  325 + <snapshots>
  326 + <enabled>false</enabled>
  327 + </snapshots>
  328 + </pluginRepository>
  329 + </pluginRepositories>
  330 +
  331 +</project>
0 332 \ No newline at end of file
... ...
bsthLineProfiles/ry.sh 0 → 100644
  1 +++ a/bsthLineProfiles/ry.sh
  1 +#!/bin/bash
  2 +
  3 +AppName=ruoyi.jar
  4 +
  5 +#JVM参数
  6 +JVM_OPTS="-Dname=$AppName -Duser.timezone=Asia/Shanghai -Xms512M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=512M -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC"
  7 +APP_HOME=`pwd`
  8 +LOG_PATH=$APP_HOME/logs/$AppName.log
  9 +
  10 +if [ "$1" = "" ];
  11 +then
  12 + echo -e "\033[0;31m 未输入操作名 \033[0m \033[0;34m {start|stop|restart|status} \033[0m"
  13 + exit 1
  14 +fi
  15 +
  16 +if [ "$AppName" = "" ];
  17 +then
  18 + echo -e "\033[0;31m 未输入应用名 \033[0m"
  19 + exit 1
  20 +fi
  21 +
  22 +function start()
  23 +{
  24 + PID=`ps -ef |grep java|grep $AppName|grep -v grep|awk '{print $2}'`
  25 +
  26 + if [ x"$PID" != x"" ]; then
  27 + echo "$AppName is running..."
  28 + else
  29 + nohup java -jar $JVM_OPTS target/$AppName > /dev/null 2>&1 &
  30 + echo "Start $AppName success..."
  31 + fi
  32 +}
  33 +
  34 +function stop()
  35 +{
  36 + echo "Stop $AppName"
  37 +
  38 + PID=""
  39 + query(){
  40 + PID=`ps -ef |grep java|grep $AppName|grep -v grep|awk '{print $2}'`
  41 + }
  42 +
  43 + query
  44 + if [ x"$PID" != x"" ]; then
  45 + kill -TERM $PID
  46 + echo "$AppName (pid:$PID) exiting..."
  47 + while [ x"$PID" != x"" ]
  48 + do
  49 + sleep 1
  50 + query
  51 + done
  52 + echo "$AppName exited."
  53 + else
  54 + echo "$AppName already stopped."
  55 + fi
  56 +}
  57 +
  58 +function restart()
  59 +{
  60 + stop
  61 + sleep 2
  62 + start
  63 +}
  64 +
  65 +function status()
  66 +{
  67 + PID=`ps -ef |grep java|grep $AppName|grep -v grep|wc -l`
  68 + if [ $PID != 0 ];then
  69 + echo "$AppName is running..."
  70 + else
  71 + echo "$AppName is not running..."
  72 + fi
  73 +}
  74 +
  75 +case $1 in
  76 + start)
  77 + start;;
  78 + stop)
  79 + stop;;
  80 + restart)
  81 + restart;;
  82 + status)
  83 + status;;
  84 + *)
  85 +
  86 +esac
... ...
bsthLineProfiles/sql/quartz.sql 0 → 100644
  1 +++ a/bsthLineProfiles/sql/quartz.sql
  1 +-- ----------------------------
  2 +-- 1、存储每一个已配置的 jobDetail 的详细信息
  3 +-- ----------------------------
  4 +drop table if exists QRTZ_JOB_DETAILS;
  5 +create table QRTZ_JOB_DETAILS (
  6 + sched_name varchar(120) not null,
  7 + job_name varchar(200) not null,
  8 + job_group varchar(200) not null,
  9 + description varchar(250) null,
  10 + job_class_name varchar(250) not null,
  11 + is_durable varchar(1) not null,
  12 + is_nonconcurrent varchar(1) not null,
  13 + is_update_data varchar(1) not null,
  14 + requests_recovery varchar(1) not null,
  15 + job_data blob null,
  16 + primary key (sched_name,job_name,job_group)
  17 +) engine=innodb default charset=utf8;
  18 +
  19 +-- ----------------------------
  20 +-- 2、 存储已配置的 Trigger 的信息
  21 +-- ----------------------------
  22 +drop table if exists QRTZ_TRIGGERS;
  23 +create table QRTZ_TRIGGERS (
  24 + sched_name varchar(120) not null,
  25 + trigger_name varchar(200) not null,
  26 + trigger_group varchar(200) not null,
  27 + job_name varchar(200) not null,
  28 + job_group varchar(200) not null,
  29 + description varchar(250) null,
  30 + next_fire_time bigint(13) null,
  31 + prev_fire_time bigint(13) null,
  32 + priority integer null,
  33 + trigger_state varchar(16) not null,
  34 + trigger_type varchar(8) not null,
  35 + start_time bigint(13) not null,
  36 + end_time bigint(13) null,
  37 + calendar_name varchar(200) null,
  38 + misfire_instr smallint(2) null,
  39 + job_data blob null,
  40 + primary key (sched_name,trigger_name,trigger_group),
  41 + foreign key (sched_name,job_name,job_group) references QRTZ_JOB_DETAILS(sched_name,job_name,job_group)
  42 +) engine=innodb default charset=utf8;
  43 +
  44 +-- ----------------------------
  45 +-- 3、 存储简单的 Trigger,包括重复次数,间隔,以及已触发的次数
  46 +-- ----------------------------
  47 +drop table if exists QRTZ_SIMPLE_TRIGGERS;
  48 +create table QRTZ_SIMPLE_TRIGGERS (
  49 + sched_name varchar(120) not null,
  50 + trigger_name varchar(200) not null,
  51 + trigger_group varchar(200) not null,
  52 + repeat_count bigint(7) not null,
  53 + repeat_interval bigint(12) not null,
  54 + times_triggered bigint(10) not null,
  55 + primary key (sched_name,trigger_name,trigger_group),
  56 + foreign key (sched_name,trigger_name,trigger_group) references QRTZ_TRIGGERS(sched_name,trigger_name,trigger_group)
  57 +) engine=innodb default charset=utf8;
  58 +
  59 +-- ----------------------------
  60 +-- 4、 存储 Cron Trigger,包括 Cron 表达式和时区信息
  61 +-- ----------------------------
  62 +drop table if exists QRTZ_CRON_TRIGGERS;
  63 +create table QRTZ_CRON_TRIGGERS (
  64 + sched_name varchar(120) not null,
  65 + trigger_name varchar(200) not null,
  66 + trigger_group varchar(200) not null,
  67 + cron_expression varchar(200) not null,
  68 + time_zone_id varchar(80),
  69 + primary key (sched_name,trigger_name,trigger_group),
  70 + foreign key (sched_name,trigger_name,trigger_group) references QRTZ_TRIGGERS(sched_name,trigger_name,trigger_group)
  71 +) engine=innodb default charset=utf8;
  72 +
  73 +-- ----------------------------
  74 +-- 5、 Trigger 作为 Blob 类型存储(用于 Quartz 用户用 JDBC 创建他们自己定制的 Trigger 类型,JobStore 并不知道如何存储实例的时候)
  75 +-- ----------------------------
  76 +drop table if exists QRTZ_BLOB_TRIGGERS;
  77 +create table QRTZ_BLOB_TRIGGERS (
  78 + sched_name varchar(120) not null,
  79 + trigger_name varchar(200) not null,
  80 + trigger_group varchar(200) not null,
  81 + blob_data blob null,
  82 + primary key (sched_name,trigger_name,trigger_group),
  83 + foreign key (sched_name,trigger_name,trigger_group) references QRTZ_TRIGGERS(sched_name,trigger_name,trigger_group)
  84 +) engine=innodb default charset=utf8;
  85 +
  86 +-- ----------------------------
  87 +-- 6、 以 Blob 类型存储存放日历信息, quartz可配置一个日历来指定一个时间范围
  88 +-- ----------------------------
  89 +drop table if exists QRTZ_CALENDARS;
  90 +create table QRTZ_CALENDARS (
  91 + sched_name varchar(120) not null,
  92 + calendar_name varchar(200) not null,
  93 + calendar blob not null,
  94 + primary key (sched_name,calendar_name)
  95 +) engine=innodb default charset=utf8;
  96 +
  97 +-- ----------------------------
  98 +-- 7、 存储已暂停的 Trigger 组的信息
  99 +-- ----------------------------
  100 +drop table if exists QRTZ_PAUSED_TRIGGER_GRPS;
  101 +create table QRTZ_PAUSED_TRIGGER_GRPS (
  102 + sched_name varchar(120) not null,
  103 + trigger_group varchar(200) not null,
  104 + primary key (sched_name,trigger_group)
  105 +) engine=innodb default charset=utf8;
  106 +
  107 +-- ----------------------------
  108 +-- 8、 存储与已触发的 Trigger 相关的状态信息,以及相联 Job 的执行信息
  109 +-- ----------------------------
  110 +drop table if exists QRTZ_FIRED_TRIGGERS;
  111 +create table QRTZ_FIRED_TRIGGERS (
  112 + sched_name varchar(120) not null,
  113 + entry_id varchar(95) not null,
  114 + trigger_name varchar(200) not null,
  115 + trigger_group varchar(200) not null,
  116 + instance_name varchar(200) not null,
  117 + fired_time bigint(13) not null,
  118 + sched_time bigint(13) not null,
  119 + priority integer not null,
  120 + state varchar(16) not null,
  121 + job_name varchar(200) null,
  122 + job_group varchar(200) null,
  123 + is_nonconcurrent varchar(1) null,
  124 + requests_recovery varchar(1) null,
  125 + primary key (sched_name,entry_id)
  126 +) engine=innodb default charset=utf8;
  127 +
  128 +-- ----------------------------
  129 +-- 9、 存储少量的有关 Scheduler 的状态信息,假如是用于集群中,可以看到其他的 Scheduler 实例
  130 +-- ----------------------------
  131 +drop table if exists QRTZ_SCHEDULER_STATE;
  132 +create table QRTZ_SCHEDULER_STATE (
  133 + sched_name varchar(120) not null,
  134 + instance_name varchar(200) not null,
  135 + last_checkin_time bigint(13) not null,
  136 + checkin_interval bigint(13) not null,
  137 + primary key (sched_name,instance_name)
  138 +) engine=innodb default charset=utf8;
  139 +
  140 +-- ----------------------------
  141 +-- 10、 存储程序的悲观锁的信息(假如使用了悲观锁)
  142 +-- ----------------------------
  143 +drop table if exists QRTZ_LOCKS;
  144 +create table QRTZ_LOCKS (
  145 + sched_name varchar(120) not null,
  146 + lock_name varchar(40) not null,
  147 + primary key (sched_name,lock_name)
  148 +) engine=innodb default charset=utf8;
  149 +
  150 +drop table if exists QRTZ_SIMPROP_TRIGGERS;
  151 +create table QRTZ_SIMPROP_TRIGGERS (
  152 + sched_name varchar(120) not null,
  153 + trigger_name varchar(200) not null,
  154 + trigger_group varchar(200) not null,
  155 + str_prop_1 varchar(512) null,
  156 + str_prop_2 varchar(512) null,
  157 + str_prop_3 varchar(512) null,
  158 + int_prop_1 int null,
  159 + int_prop_2 int null,
  160 + long_prop_1 bigint null,
  161 + long_prop_2 bigint null,
  162 + dec_prop_1 numeric(13,4) null,
  163 + dec_prop_2 numeric(13,4) null,
  164 + bool_prop_1 varchar(1) null,
  165 + bool_prop_2 varchar(1) null,
  166 + primary key (sched_name,trigger_name,trigger_group),
  167 + foreign key (sched_name,trigger_name,trigger_group) references QRTZ_TRIGGERS(sched_name,trigger_name,trigger_group)
  168 +) engine=innodb default charset=utf8;
  169 +
  170 +commit;
0 171 \ No newline at end of file
... ...
bsthLineProfiles/sql/ruoyi.html 0 → 100644
  1 +++ a/bsthLineProfiles/sql/ruoyi.html
  1 +<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
  2 +<!DOCTYPE html>
  3 +<html lang='en' xmlns='http://www.w3.org/1999/xhtml' >
  4 +<head>
  5 +<title>RuoYi</title>
  6 +<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
  7 +<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  8 +<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/css/bootstrap.min.css" integrity="sha384-rwoIResjU2yc3z8GV/NPeZWAv56rSmLldC3R/AZzGRnGxQQKnKkoFVhFQhNUwEyJ" crossorigin="anonymous">
  9 +<script src="https://cdnjs.cloudflare.com/ajax/libs/tether/1.4.0/js/tether.min.js" integrity="sha384-DztdAPBWPRXSA/3eYEEUWrWCy7G5KFbe8fFjk5JAIxUYHKkDx6Qin1DkWx51bBrb" crossorigin="anonymous"></script>
  10 +<!--<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js" integrity="sha384-A7FZj7v+d/sdmMqp/nOQwliLvUsJfDHW+k9Omg/a/EheAdgtzNs3hpfag6Ed950n" crossorigin="anonymous"></script>-->
  11 +<!--<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-alpha.6/js/bootstrap.min.js" integrity="sha384-vBWWzlZJ8ea9aCX4pEW3rVHjgjt7zpkNpZk+02D9phzyeVkE+jo0ieGizqPLForn" crossorigin="anonymous"></script>-->
  12 +<link rel="shortcut icon" href="https://www.dbschema.com/images/favicon.ico">
  13 +<style type='text/css'>
  14 +body {
  15 + font-family: 'Segoe UI', 'Lucida sans', Dialog;
  16 + font-size: 13px;
  17 + background-color:#f5f5f5;
  18 + margin: 10px;
  19 +}
  20 +</style>
  21 +</head>
  22 +
  23 +<body>
  24 +<div class='svg-container'>
  25 +<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='1890' height='1100' viewBox='0 0 1890 1100' >
  26 + <script type='text/ecmascript'>
  27 + <![CDATA[
  28 + function hghl(el) { for ( var i in el ){ var elem = document.getElementById(el[i]); if ( elem != null ) elem.setAttribute('class','highlight'); } }
  29 + function uhghl(el) { for ( var i in el ){ var elem = document.getElementById(el[i]); if ( elem != null ) elem.setAttribute('class','scene'); } }
  30 + ]]>
  31 + </script>
  32 +
  33 +<style type='text/css'>
  34 + text { fill:#000000; font-family: SimSun, 'Trebuchet MS', Dialog; font-size:11px; }
  35 + a text:hover { fill:#94025f; text-shadow: 0px 0px 6px #d0ce00; font-size:13px; }
  36 + text.highlight { fill:#94025f; text-shadow: 0px 0px 4px #eac533; font-size:13px; }
  37 + text.colType { fill:#b3b3b3; }
  38 + text.relName { fill:#b09c7c; }
  39 + path { stroke:#5c554f; stroke-width:1.15; fill:none; }
  40 + path { stroke:#5c554f; stroke-width:1.15; fill:none;}
  41 + path.virtual { stroke:#b7642d; }
  42 + path.logo { fill:#fbeac0;fill-opacity:1;stroke-width:0.3;stroke:#222222; }
  43 + path.dotted { stroke-dasharray:4,2; }
  44 + path.scene { stroke-width:10; opacity:0;}
  45 + path.highlight { stroke-width:5; stroke:#c1a662; opacity:0.6;}
  46 + rect.entity { fill:#ffffff; stroke:#aaa; stroke-width:1;shape-rendering:crispEdges;filter:url(#shadow); }
  47 + line.delim { stroke-width:1; shape-rendering:crispEdges; }
  48 + text.callout { fill:#000000; font-family: SimSun, 'Trebuchet MS', Dialog; font-size:12px; }
  49 + rect.callout { fill:url(#calloutGradient); stroke:#bebdbd; stroke-width:0.5; filter: url(#shadow);}
  50 + rect.grp { stroke:#b1b1b1; stroke-width:1.7; opacity:0.8; }
  51 + path.st0 { fill:#ececec;fill-opacity:1;stroke-width:0.6;stroke:#aaaaaa; }
  52 +</style>
  53 +<defs>
  54 + <pattern id='layoutBgA' patternUnits='userSpaceOnUse' width='10' height='20' x='0' y='0' viewBox='0 0 5 10'>
  55 + <line x1='-2' y1='1' x2='7' y2='10' stroke='#f3f3f3' stroke-width='.5'/>
  56 + <line x1='-2' y1='6' x2='7' y2='15' stroke='#f3f3f3' stroke-width='.5'/>
  57 + <line x1='-2' y1='-4' x2='7' y2='5' stroke='#f3f3f3' stroke-width='.5'/>
  58 + </pattern>
  59 + <radialGradient id='layoutBgB' gradientUnits='userSpaceOnUse' cx='50%' cy='50%' r='75%' fx='46%' fy='22%'>
  60 + <stop offset='0%' stop-opacity='.2' stop-color='#f5f5f5' />
  61 + <stop offset='100%' stop-color='#efefef' />
  62 + </radialGradient>
  63 + <pattern id='layoutBgTr' patternUnits='userSpaceOnUse' width='300' height='300' x='0' y='0' viewBox='0 0 300 300'>
  64 + <path class='st0' d='m 62.011835,91.267143 c 3.536475,3.175214 2.262669,8.705999 -1.637711,11.015197 -3.594697,5.8423 -6.34682,-2.892623 -9.715478,-4.653898 -5.609222,-2.838926 2.050802,-6.680123 4.77004,-8.319046 2.334696,-0.724067 4.935143,0.312302 6.583149,1.957747 z m -2.720492,2.538595 c -2.698397,-3.517732 -9.282815,1.269287 -3.69635,3.568637 2.765331,5.605665 7.052809,-0.56184 3.69635,-3.568637 z' />
  65 + <path class='st0' d='m 72.25864,84.624638 c 4.108046,3.143003 -0.737059,6.895259 -1.994918,8.323564 -3.586718,5.561143 -6.495079,-4.197379 -10.07759,-5.582178 -4.443422,-1.088878 1.349298,-7.249213 2.503526,-2.503449 2.464639,4.517161 2.304019,-3.70697 6.291113,-1.995914 1.280083,0.137865 2.410691,0.864819 3.277869,1.757977 z m -2.646109,2.323242 c -4.797162,-3.078383 -2.810517,6.305507 0.515161,1.990646 0.296432,-0.688582 0.01209,-1.493412 -0.515161,-1.990646 z' />
  66 + <path class='st0' d='m 78.230641,79.436735 c 4.142121,3.027466 -2.020102,10.435276 -3.450543,5.477315 3.306312,-5.248112 -9.186019,-2.220094 -5.805994,-8.77679 -0.544141,-3.93011 6.797826,-2.102227 3.386015,0.245477 -0.181085,2.915838 4.637371,1.019311 5.870522,3.053982 z' />
  67 + <path class='st0' d='m 82.744502,72.597397 c -4.901605,1.926521 1.146497,6.285555 2.559694,2.225783 6.21817,3.539297 -6.640186,8.416664 -7.590325,1.997457 -2.24365,-2.914883 4.026676,-10.148618 5.030631,-4.22324 z' />
  68 + <path class='st0' d='m 90.727458,64.259158 c 1.583987,1.690029 3.321317,3.2696 4.81267,5.026353 -2.535706,6.849794 -6.445583,-5.918773 -8.388458,-0.167017 0.782768,2.03426 5.877405,3.752079 2.670979,5.711199 -3.315119,1.519161 -5.782422,-5.157931 -8.858893,-6.780537 -4.229842,-1.139816 1.510134,-7.074128 2.586227,-2.385939 3.141198,5.495193 1.840537,-5.598295 7.177489,-1.404062 z' />
  69 + <path class='st0' d='m 99.622027,58.374253 c 1.493293,1.9548 -6.281936,7.024659 -0.885258,4.740447 0.386238,-4.434477 6.131941,-1.133173 2.175851,1.618005 -4.421491,6.12739 -13.666659,-3.151506 -7.058299,-7.136537 1.785129,-1.119329 4.348209,-0.743179 5.767706,0.778085 z m -2.900824,1.89746 c -3.608188,-2.208543 -2.280489,5.00803 -0.12563,0.329531 z' />
  70 + <path class='st0' d='m 115.18023,50.570441 c -1.61703,5.201678 -4.6204,-0.364502 -7.01598,-1.749619 -4.40977,2.122562 4.89641,4.913939 1.89606,7.018157 -2.48061,3.877635 -4.11404,-4.060614 -7.01192,-2.6391 -1.76318,3.107252 7.28394,6.252304 0.87346,7.876177 -1.74515,-2.956649 -9.055498,-5.610518 -3.950378,-8.66062 1.696478,1.897023 1.770418,-5.43503 5.347308,-3.072411 -0.44014,-5.474701 6.11995,-4.950882 7.7846,-0.815355 0.69076,0.682329 1.39587,1.351469 2.07685,2.042771 z' />
  71 + <path class='st0' d='m 120.54891,39.417125 c 2.50681,1.334124 4.80466,4.941837 0.75044,5.297362 -0.46414,1.89865 -5.25369,5.602652 -8.01742,1.815475 -3.87345,-2.809139 -0.0676,-7.603869 2.3036,-8.133924 1.6795,-3.853018 3.16703,-1.199465 4.96338,1.021087 z m -2.2464,2.175828 c -4.8049,-2.992167 -3.08987,6.380358 0.42374,2.036159 0.33052,-0.677508 0.12099,-1.525836 -0.42374,-2.036159 z' />
  72 + <path class='st0' d='m 128.50836,24.06821 c -5.10403,3.035506 3.20535,6.383175 5.05938,9.450276 -0.91853,2.95886 -4.06493,3.650723 -5.34691,0.265618 -2.25715,-2.089033 -4.65672,-6.948595 -7.07024,-2.584686 -4.71758,-3.764394 3.81217,-5.812054 5.12382,-9.226328 0.75738,0.677487 1.38637,1.498638 2.23389,2.095175 z' />
  73 + <path class='st0' d='m 137.14366,22.299812 c -3.09615,2.259885 0.71537,4.412454 1.99042,6.435866 -3.08975,5.080354 -5.91384,-2.98648 -8.92144,-4.094939 1.44369,-3.219573 3.3497,-1.335928 4.27156,-4.41058 0.97822,-0.894325 1.75044,1.871047 2.65946,2.069653 z' />
  74 + <path class='st0' d='m 136.85093,14.890174 c 2.31562,5.283511 -7.17975,1.771993 -1.29675,-0.475107 l 0.7108,0.08973 z m 4.867,5.317354 c 2.56912,1.439678 4.26517,4.725219 0.30678,5.233637 -1.56592,-3.098864 -9.51683,-5.749448 -3.64502,-8.633714 1.17746,0.325095 2.15375,2.591149 3.33824,3.400077 z' />
  75 + <path class='st0' d='m 149.95578,11.976423 c 2.50679,1.334142 4.80455,4.94192 0.75041,5.297394 -0.4641,1.898604 -5.25368,5.602645 -8.0174,1.81545 -3.87347,-2.80918 -0.0676,-7.603844 2.30366,-8.133968 1.67949,-3.8530525 3.16695,-1.1993573 4.96333,1.021124 z m -2.24641,2.175828 c -4.80489,-2.992177 -3.08986,6.380343 0.42374,2.036167 0.33055,-0.677518 0.121,-1.52585 -0.42374,-2.036167 z' />
  76 + <path class='st0' d='m 153.26135,7.538431 c 2.60497,1.5799548 6.03999,5.944272 1.08117,6.050232 -2.53319,-3.231828 -7.20316,-6.4304525 -8.84748,-9.4582682 1.89121,-2.8664883 3.78452,-2.247699 5.38514,0.8929426 0.78017,0.8503859 1.57195,1.6911437 2.38118,2.5150667 z' />
  77 + </pattern>
  78 + <linearGradient id='groupUnderTitleLine' x1='0%' y1='0%' x2='100%' y2='0%' >
  79 + <stop offset='0%' stop-color='#999999' stop-opacity='0.7'/>
  80 + <stop offset='100%' stop-color='#999999' stop-opacity='0' />
  81 + </linearGradient>
  82 + <radialGradient id='calloutGradient' cx='25%' cy='20%' r='80%' fx='10%' fy='10%'>
  83 + <stop offset='0%' stop-color='#ffffff' />
  84 + <stop offset='100%' stop-color='#f8f6d1' />
  85 + </radialGradient>
  86 + <filter id='shadow' width='120%' height='120%'>
  87 + <feOffset result='offOut' in='SourceGraphic' dx='1' dy='1' />
  88 + <feColorMatrix result='matrixOut' in='offOut' type='matrix'
  89 + values='0.1 0 0 0 0 0 0.4 0 0 0 0 0 0.6 0 0 0 0 0 0.3 0' />
  90 + <feGaussianBlur result='blurOut' in='matrixOut' stdDeviation='3' />
  91 + <feBlend in='SourceGraphic' in2='blurOut' mode='normal' />
  92 + </filter>
  93 + <filter id='fkShadow' height='130%'>
  94 + <feGaussianBlur in='SourceAlpha' stdDeviation='1.5'/> <!-- stdDeviation is how much to blur -->
  95 + <feOffset dx='1.2' dy='1.2' result='offsetblur'/> <!-- how much to offset -->
  96 + <feMerge>
  97 + <feMergeNode/> <!-- this contains the offset blurred image -->
  98 + <feMergeNode in='SourceGraphic'/> <!-- this contains the element that the filter is applied to -->
  99 + </feMerge>
  100 + </filter>
  101 + <radialGradient id='legendGradient' fx='5%' fy='5%' r='75%' spreadMethod='pad'>
  102 + <stop offset='0%' stop-color='#eefbf2' stop-opacity='1'/>
  103 + <stop offset='100%' stop-color='#cff9cb' stop-opacity='1' />
  104 + </radialGradient>
  105 + <symbol id='calloutArrowDown' overflow='visible' >
  106 + <path d='M 0,0 L 7,11 L 15,0 z' style='fill:#f8f6d1;stroke:none; filter: url(#shadow);' />
  107 + <path d='M 0,0 L 7,11 L 15,0' style='stroke:#bebdbd; stroke-width:0.5;' />
  108 + </symbol>
  109 + <symbol id='calloutArrowUp' overflow='visible' >
  110 + <path d='M 0,15 L 7,3 L 15,15 z' style='fill:#ffffff; stroke:none; filter: url(#shadow);' />
  111 + <path d='M 0,15 L 7,3 L 15,15' style='stroke:#bebdbd; stroke-width:0.5;' />
  112 + </symbol>
  113 + <symbol id='pk' overflow='visible' >
  114 + <g transform='scale(0.99)'>
  115 + <path style='fill:#fffa7d;stroke:#765f03;stroke-width:0.6;stroke-linecap:round;stroke-linejoin:round;'
  116 + d='M 9.3678877,3.5695485 C 9.1030218,3.2729386 9.0796382,2.7628519 9.3396185,2.4517097 9.5449651,2.1956495 9.9040386,2.0980533 10.199638,2.2169415 10.533525,2.3415459 10.775153,2.706942 10.750675,3.0842709 10.737029,3.3980003 10.541153,3.699122 10.258248,3.8066067 9.966649,3.9250429 9.6169668,3.8418805 9.4008073,3.6062324 9.3894892,3.5943518 9.3785264,3.582104 9.3678886,3.5695487 z M 11.226617,6.9916004 C 11.888137,6.3548946 12.293488,5.4172188 12.311087,4.442353 12.378144,2.7379364 11.248678,1.0541269 9.7322318,0.44767357 8.3887112,-0.1280313 6.7865012,0.26822889 5.8918395,1.4007929 5.080823,2.3839145 4.9336815,3.8452096 5.3635544,5.101615 L 4.3670905,5.315913 C 4.0664984,5.3682645 4.0967703,5.6316724 4.2574957,5.8208829 L 4.9124,6.5655244 4.1543436,7.2512357 3.2136002,7.2163506 3.1674775,8.5586827 2.0406832,8.5086512 1.5965306,8.9299953 1.5471661,10.179833 0.75616674,10.195223 0.2112857,10.758575 0.15354288,11.735988 0.07199052,12.765553 c 0.36440953,0.238225 0.79006967,0.195492 1.44938278,-0.02675 L 6.3033562,8.1282037 6.8217102,8.6765688 C 6.9985465,8.8799427 7.3003699,8.7497574 7.358381,8.5016252 L 7.4938877,7.5084164 c 0.8537488,0.3985387 1.8303125,0.4711541 2.6851793,0.1427713 0.393927,-0.1407258 0.746858,-0.3701772 1.04755,-0.6595873 z'/>
  117 + <path d='M 6.8014948,6.3102123 0.15369063,13.024481 0.21560535,12.141962 6.0062342,6.2683782 z'
  118 + style='fill:#ffe5a5;fill-opacity:1;stroke:#854e31;stroke-width:0.06912433;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:3.00300009'/>
  119 + </g>
  120 + </symbol>
  121 + <symbol id='dist' overflow='visible' >
  122 + <g transform='scale(0.99)'>
  123 + <path style='fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;' d='M 0.177,11.431 12.28,11.449'/>
  124 + <path style='fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;' d='m 6.124,3.954 0.066,7.154 v 0'/>
  125 + <rect width='11.78' height='3.40' x='0.40' y='0.44' style='fill:#fffa7d;stroke:#765f03;stroke-width:0.6;' ry='0.83'/>
  126 + <rect width='11.78' height='3.40' x='0.40' y='5.609' style='fill:#fffa7d;stroke:#765f03;stroke-width:0.6;' ry='0.832'/>
  127 + </g>
  128 + </symbol>
  129 + <symbol id='unq' overflow='visible' >
  130 + <g transform='scale(0.99)'>
  131 + <rect style='fill:#fbea8e;stroke:#7e4d31;stroke-width:0.71934468;stroke-linecap:round;stroke-linejoin:round;'
  132 + width='2.29' height='8.43' x='7.48' y='-0.76' ry='1.14' transform='matrix(0.701,0.713,-0.727,0.685,0,0)' />
  133 + <path style='fill:white;stroke:#858585;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;'
  134 + d='m 26.04,8.64 a 4.13,4.13 0 1 1 -8.26,0 4.13,4.13 0 1 1 8.26,0 z'
  135 + transform='matrix(1.025,0,0,0.987,-14.690,-3.862)' />
  136 + <text x='5.8' y='7.4' style='font-size:7px;fill:#8a8a8a;'>1</text>
  137 + </g>
  138 + </symbol>
  139 + <symbol id='idx' overflow='visible' >
  140 + <g transform='scale(0.99)'>
  141 + <rect style='fill:#fbea8e;stroke:#7e4d31;stroke-width:0.71934468;stroke-linecap:round;stroke-linejoin:round;'
  142 + width='2.29' height='8.43' x='7.48' y='-0.76' ry='1.14' transform='matrix(0.701,0.713,-0.727,0.685,0,0)' />
  143 + <path style='fill:white;stroke:#858585;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;'
  144 + d='m 26.04,8.64 a 4.13,4.13 0 1 1 -8.26,0 4.13,4.13 0 1 1 8.26,0 z'
  145 + transform='matrix(1.025,0,0,0.987,-14.690,-3.862)' />
  146 + </g>
  147 + </symbol>
  148 + <symbol id='fk' overflow='visible' >
  149 + <g transform='scale(0.87)'>
  150 + <path style='fill:#f3e1b7;stroke:#7e471f;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  151 + d='M 12.48,0.33 7.07,0.89 9.067,2.974 0.329,11.731 1.073,12.597 9.811,3.841 11.77,5.78 z' />
  152 + </g>
  153 + </symbol>
  154 + <symbol id='ref' overflow='visible' >
  155 + <g transform='scale(0.87)'>
  156 + <path style='fill:#f3e1b7;stroke:#7e471f;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  157 + d='M 0.10,12.70 5.31,12.15 3.40,10.06 11.82,1.32 11.11,0.45 2.68,9.19 0.80,7.24 z'/>
  158 + </g>
  159 + </symbol>
  160 + <symbol id='flag0' overflow='visible' >
  161 + <g transform='scale(0.92)'>
  162 + <path style='fill:#b7d0f6;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  163 + d='M 0.12,12.67 0.16,7.22 C 2.59,7.22 4.13,8.78 9.22,4.22 5.68,4.98 2.53,4.50 0.09,1.80 z'/>
  164 + </g>
  165 + </symbol>
  166 + <symbol id='flag1' overflow='visible' >
  167 + <g transform='scale(0.92)'>
  168 + <path style='fill:#f4a393;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  169 + d='M 0.12,12.67 0.16,7.22 C 2.59,7.22 4.13,8.78 9.22,4.22 5.68,4.98 2.53,4.50 0.09,1.80 z'/>
  170 + </g>
  171 + </symbol>
  172 + <symbol id='flag2' overflow='visible' >
  173 + <g transform='scale(0.92)'>
  174 + <path style='fill:#77ec8b;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  175 + d='M 0.12,12.67 0.16,7.22 C 2.59,7.22 4.13,8.78 9.22,4.22 5.68,4.98 2.53,4.50 0.09,1.80 z'/>
  176 + </g>
  177 + </symbol>
  178 + <symbol id='nn' overflow='visible' >
  179 + <path style='stroke:#9b3e50;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:round;stroke-miterlimit:4;'
  180 + d='M 0,0 3,3 M 0,3 3,0 z'/>
  181 + </symbol>
  182 + <symbol id='view' overflow='visible' >
  183 + <g transform='scale(0.99)'>
  184 + <line x1='12' y1='6' x2='19' y2='0' stroke='black' stroke-width='0.5' />
  185 + <line x1='0' y1='6' x2='7' y2='0' stroke='black' stroke-width='0.5' />
  186 + <circle cx='3' cy='6' r='3' fill='#f9ebbc' stroke='black' stroke-width='0.5'/>
  187 + <circle cx='10' cy='6' r='3' fill='#f9ebbc' stroke='black' stroke-width='0.5'/>
  188 + </g>
  189 + </symbol>
  190 + <marker id='arrow01' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  191 + <path d='M 7.500,3.750 L 15.000,3.750 L 7.500,0.000 L 15.000,3.750 L 7.500,7.500' />
  192 + </marker>
  193 + <marker id='arrow1' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  194 + <path d='M 7.500,3.750 L 15.000,3.750 L 7.500,0.000 L 15.000,3.750 L 7.500,7.500' />
  195 + </marker>
  196 + <marker id='foot01' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  197 + <path d='M 0.00,3.75 L 15.00,3.75 z' />
  198 + <circle cx='11.25' cy='3.75' r='2.50' style='fill:white;stroke:#5e554d;' />
  199 + <path d='M 3.75,0.00 L 3.75, 7.50 z' />
  200 + </marker>
  201 + <marker id='foot0p' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  202 + <path d='M 0.00,3.75 L 15.00,3.75 z' />
  203 + <circle cx='11.25' cy='3.75' r='2.50' style='fill:white;stroke:#5e554d;' />
  204 + <path d='M 0.00,0.00 L 7.50,3.75 L 0.00,7.50' />
  205 + </marker>
  206 + <marker id='foot1' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  207 + <path d='M 0.00,3.75 L 15.00,3.75 z' />
  208 + <path d='M 7.50,0.00 L 7.50, 7.50 z' />
  209 + <path d='M 3.75,0.00 L 3.75, 7.50 z' />
  210 + </marker>
  211 + <marker id='foot1p' viewBox='0 0 15.00 7.50' refX='7.50' refY='3.75' markerUnits='strokeWidth' markerWidth='15.00' markerHeight='7.50' orient='auto'>
  212 + <path d='M 0.00,3.75 L 15.00,3.75 z' />
  213 + <path d='M 7.50,0.00 L 7.50, 7.50 z' />
  214 + <path d='M 0.00,0.00 L 7.50,3.75 L 0.00,7.50' />
  215 + </marker>
  216 + <linearGradient id='tbg_bfd4f5' x1='0%' y1='0%' x2='0%' y2='100%' >
  217 + <stop offset='0%' stop-color='#496ba1' />
  218 + <stop offset='100%' stop-color='#1f4682' />
  219 + </linearGradient>
  220 + <linearGradient id='tbg_c8f5bf' x1='0%' y1='0%' x2='0%' y2='100%' >
  221 + <stop offset='0%' stop-color='#58a149' />
  222 + <stop offset='100%' stop-color='#30821f' />
  223 + </linearGradient>
  224 + <linearGradient id='tbg_f5ddbf' x1='0%' y1='0%' x2='0%' y2='100%' >
  225 + <stop offset='0%' stop-color='#a17a49' />
  226 + <stop offset='100%' stop-color='#82561f' />
  227 + </linearGradient>
  228 + <linearGradient id='tbg_bfbff5' x1='0%' y1='0%' x2='0%' y2='100%' >
  229 + <stop offset='0%' stop-color='#4949a1' />
  230 + <stop offset='100%' stop-color='#1f1f82' />
  231 + </linearGradient>
  232 +</defs>
  233 +
  234 +<!-- == Desktop == -->
  235 +<rect x='1' y='1' width='1888' height='1098' rx='7' ry='7' style='fill:url(#layoutBgB); stroke:#777777; stroke-width:0.5;' />
  236 +<rect x='1' y='1' width='1888' height='1098' rx='7' ry='7' style='fill:url(#layoutBgA); stroke:#777777; stroke-width:0.5;' />
  237 +
  238 +<!-- == Legend == -->
  239 +<g transform='translate(10,10)'>
  240 + <rect x='10' y='10' width='330' height='56' rx='6' ry='6' style='fill:url(#legendGradient);filter:url(#shadow);'/>
  241 + <text x='20' y='43'>RuoYi</text>
  242 + <text x='20' y='57' style='fill:#aaaaaa; font-size:11px;'><tspan>Move the mouse over tables &amp; columns to read the comments.</tspan></text>
  243 +<a xlink:href='https://www.dbschema.com'> <path class='logo' d='m 32.309685,20.963194 c 0.411708,4.732616 -4.298055,7.925636 -8.723583,6.970196 -6.616967,1.8448 -2.656457,-6.434594 -3.911969,-10.01566 -2.15469,-5.89407 6.06247,-3.508505 9.167655,-2.863689 2.199228,1.054873 3.389343,3.582089 3.467897,5.909153 z m -3.720955,0.01451 c 0.434195,-4.414565 -7.644142,-5.37533 -5.137307,0.107342 -1.812268,5.992146 5.532698,4.379388 5.137307,-0.107342 z' /> <path class='logo' d='m 44.329732,23.050637 c 0.850982,5.097305 -5.250434,4.558924 -7.144836,4.752415 -6.418993,1.64391 -1.872992,-7.49274 -3.541914,-10.942842 -2.499646,-3.817859 5.939283,-4.402698 3.538545,-0.13612 -1.287874,4.989123 4.215411,-1.154796 5.956717,2.809584 0.840273,0.970849 1.168829,2.272413 1.191488,3.516963 z m -3.519477,-0.09299 c -1.398216,-5.518069 -6.361061,2.717467 -0.984368,1.810718 0.686994,-0.30388 1.029454,-1.087638 0.984368,-1.810718 z' /> <path class='logo' d='m 52.234961,23.301163 c 0.954818,5.035675 -8.606408,6.284861 -6.262292,1.674914 6.000358,-1.604717 -5.188764,-7.870044 1.75972,-10.384908 2.288682,-3.253567 6.399287,3.075831 2.304111,2.48058 -2.124941,2.016587 2.688777,3.89858 2.198472,6.229403 z' /> <path class='logo' d='m 60.204336,21.349224 c -4.894917,-1.916474 -3.458707,5.391212 0.347494,3.37231 2.120589,6.821713 -10.599623,1.664746 -6.906229,-3.691132 0.354172,-3.663246 9.875349,-4.711252 6.558735,0.318822 z' /> <path class='logo' d='m 71.730617,20.654299 c 0.0013,2.316285 0.190131,4.655698 0.07825,6.958009 -6.532419,3.303565 -0.660423,-8.722256 -6.009639,-5.821653 -0.818815,2.024533 1.726403,6.746337 -1.95327,6.005484 -3.458346,-1.137537 -0.696275,-7.713407 -1.833252,-10.994208 -2.308916,-3.710131 5.93704,-4.164951 3.518609,0.0063 -1.462376,6.166445 5.169629,-2.857523 6.19931,3.846079 z' /> <path class='logo' d='m 82.245738,22.378957 c -0.24581,2.448954 -9.386766,0.8867 -3.885979,2.877055 3.312576,-2.99157 5.250902,3.334514 0.482647,2.665545 -7.415384,1.492275 -7.823196,-11.597641 -0.275476,-10.032117 2.068161,0.391458 3.682204,2.408824 3.678808,4.489517 z m -3.414436,-0.578473 c -1.124703,-4.072004 -5.087405,2.125488 -0.316922,0.156453 z' /> <path class='logo' d='m 98.936899,27.222794 c -4.73541,2.718339 -3.1239,-3.406557 -3.92611,-6.050494 -4.66985,-1.438471 0.21621,6.932413 -3.41219,6.438039 -4.46096,1.160054 -0.22824,-5.774711 -3.31526,-6.700429 -3.410722,1.082173 1.04451,9.536575 -4.745091,6.372895 0.746632,-3.355214 -2.776394,-10.269232 3.034971,-9.038963 -0.058,2.544602 5.00686,-2.785359 6.00342,1.37844 3.42021,-4.316316 7.851251,0.524966 6.24018,4.690538 0.0379,0.969988 0.0954,1.940046 0.12008,2.909974 z' /> <path class='logo' d='m 110.47859,22.686058 c 0.91826,2.682088 0.13016,6.890551 -3.0725,4.397004 -1.63641,1.077877 -7.664291,0.541832 -7.09365,-4.114836 -0.907891,-4.692933 5.14729,-5.625578 7.24058,-4.40354 3.85932,-1.686263 3.13176,1.271515 2.92557,4.121372 z m -3.12695,0.0704 c -1.46278,-5.460062 -6.61615,2.5826 -1.08221,1.782003 0.70431,-0.272594 1.13111,-1.037444 1.08221,-1.782003 z' /> </a>
  244 +</g>
  245 +
  246 +<g transform='translate(0,110)'>
  247 +<!-- == Fk 'qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1' == -->
  248 +<path id='qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" transform='translate(7,0)' class='scene' d='M 270 525 L 270,480' >
  249 + <title>Fk qrtz_blob_triggers_ibfk_1
  250 +qrtz_blob_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )</title>
  251 +</path>
  252 +<path transform='translate(7,0)' marker-start='url(#foot1)' marker-end='url(#arrow1)' d='M 270 525 L 270,480' ></path>
  253 +<text x='272' y='520' transform='rotate(270 272,520)' title='Fk qrtz_blob_triggers_ibfk_1
  254 +qrtz_blob_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )' class='relName' style='fill:#5f789f'>sched_name,trigger_name,trigger_group</text>
  255 +<!-- == Fk 'qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1' == -->
  256 +<path id='qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1' onmouseover="hghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" transform='translate(7,0)' class='scene' d='M 420 540 L 397,540 Q 390,540 390,532 L 390,472 Q 390,465 382,465 L 375,465' >
  257 + <title>Fk qrtz_cron_triggers_ibfk_1
  258 +qrtz_cron_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )</title>
  259 +</path>
  260 +<path transform='translate(7,0)' marker-start='url(#foot1)' marker-end='url(#arrow1)' d='M 420 540 L 397,540 Q 390,540 390,532 L 390,472 Q 390,465 382,465 L 375,465' ></path>
  261 +<text x='205' y='535' transform='rotate(0 205,535)' title='Fk qrtz_cron_triggers_ibfk_1
  262 +qrtz_cron_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )' class='relName' style='fill:#5f789f'>sched_name,trigger_name,trigger_group</text>
  263 +<!-- == Fk 'qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1' == -->
  264 +<path id='qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1' onmouseover="hghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" transform='translate(7,0)' class='scene' d='M 180 525 L 180,502 Q 180,495 187,495 L 277,495 Q 285,495 285,487 L 285,480' >
  265 + <title>Fk qrtz_simple_triggers_ibfk_1
  266 +qrtz_simple_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )</title>
  267 +</path>
  268 +<path transform='translate(7,0)' marker-start='url(#foot1)' marker-end='url(#arrow1)' d='M 180 525 L 180,502 Q 180,495 187,495 L 277,495 Q 285,495 285,487 L 285,480' ></path>
  269 +<text x='182' y='520' transform='rotate(270 182,520)' title='Fk qrtz_simple_triggers_ibfk_1
  270 +qrtz_simple_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )' class='relName' style='fill:#5f789f'>sched_name,trigger_name,trigger_group</text>
  271 +<!-- == Fk 'qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1' == -->
  272 +<path id='qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1' onmouseover="hghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" transform='translate(7,0)' class='scene' d='M 195 240 L 240,240' >
  273 + <title>Fk qrtz_simprop_triggers_ibfk_1
  274 +qrtz_simprop_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )</title>
  275 +</path>
  276 +<path transform='translate(7,0)' marker-start='url(#foot1)' marker-end='url(#arrow1)' d='M 195 240 L 240,240' ></path>
  277 +<text x='202' y='235' transform='rotate(0 202,235)' title='Fk qrtz_simprop_triggers_ibfk_1
  278 +qrtz_simprop_triggers ref qrtz_triggers ( sched_name, trigger_name, trigger_group )' class='relName' style='fill:#5f789f'>sched_name,trigger_name,trigger_group</text>
  279 +<!-- == Fk 'qrtz_triggers_qrtz_triggers_ibfk_1' == -->
  280 +<path id='qrtz_triggers_qrtz_triggers_ibfk_1' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])" transform='translate(7,0)' class='scene' d='M 375 210 L 420,210' >
  281 + <title>Fk qrtz_triggers_ibfk_1
  282 +qrtz_triggers ref qrtz_job_details ( sched_name, job_name, job_group )</title>
  283 +</path>
  284 +<path transform='translate(7,0)' marker-start='url(#foot1p)' marker-end='url(#arrow1)' d='M 375 210 L 420,210' ></path>
  285 +<text x='382' y='205' transform='rotate(0 382,205)' title='Fk qrtz_triggers_ibfk_1
  286 +qrtz_triggers ref qrtz_job_details ( sched_name, job_name, job_group )' class='relName' style='fill:#5f789f'>sched_name,job_name,job_group</text>
  287 +<!-- == Table 'qrtz_blob_triggers' == -->
  288 +<rect class='entity' x='255' y='533' width='120' height='105' rx='7' ry='7' style='stroke:none'/>
  289 +<path d='M 255 559 L 255 540 Q 255 533 262 533 L 368 533 Q 375 533 375 540 L 375 559 L255 559 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  290 +<rect class='entity' x='255' y='533' width='120' height='105' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  291 +<line class='delim' x1='255' y1='559' x2='375' y2='559' style='stroke:#5f656e'/>
  292 +<line class='delim' x1='270' y1='559' x2='270' y2='638' style='stroke:#5f656e'/>
  293 +<line class='delim' x1='364' y1='559' x2='364' y2='638' style='stroke:#5f656e'/>
  294 +<a xlink:href='#qrtz_blob_triggers'><text x='258' y='551'>qrtz_blob_triggers</text><title>Table ry.qrtz_blob_triggers</title></a>
  295 + <use id='nn' x='257' y='567' xlink:href='#nn'/><a xlink:href='#qrtz_blob_triggers.sched_name'><use id='pk' x='257' y='566' xlink:href='#pk'/><title>Pk pk_qrtz_blob_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  296 +<a xlink:href='#qrtz_blob_triggers.sched_name'><text id='ry.qrtz_blob_triggers.sched_name' x='273' y='576' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">sched_name</text><title>sched_name
  297 +* varchar(120)</title></a>
  298 +<a xlink:href='#qrtz_blob_triggers.sched_name'><use id='fk' x='364' y='566' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  299 + <use id='nn' x='257' y='582' xlink:href='#nn'/><a xlink:href='#qrtz_blob_triggers.trigger_name'><use id='pk' x='257' y='581' xlink:href='#pk'/><title>Pk pk_qrtz_blob_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  300 +<a xlink:href='#qrtz_blob_triggers.trigger_name'><text id='ry.qrtz_blob_triggers.trigger_name' x='273' y='591' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_name</text><title>trigger_name
  301 +* varchar(200)</title></a>
  302 +<a xlink:href='#qrtz_blob_triggers.trigger_name'><use id='fk' x='364' y='581' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  303 + <use id='nn' x='257' y='597' xlink:href='#nn'/><a xlink:href='#qrtz_blob_triggers.trigger_group'><use id='pk' x='257' y='596' xlink:href='#pk'/><title>Pk pk_qrtz_blob_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  304 +<a xlink:href='#qrtz_blob_triggers.trigger_group'><text id='ry.qrtz_blob_triggers.trigger_group' x='273' y='606' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_group</text><title>trigger_group
  305 +* varchar(200)</title></a>
  306 +<a xlink:href='#qrtz_blob_triggers.trigger_group'><use id='fk' x='364' y='596' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  307 + <a xlink:href='#qrtz_blob_triggers.blob_data'><text id='ry.qrtz_blob_triggers.blob_data' x='273' y='621'>blob_data</text><title>blob_data
  308 +blob</title></a>
  309 +<text x='372' y='618' text-anchor='end' class='colType'>~</text>
  310 +<!-- == Table 'qrtz_calendars' == -->
  311 +<rect class='entity' x='75' y='38' width='120' height='90' rx='7' ry='7' style='stroke:none'/>
  312 +<path d='M 75 64 L 75 45 Q 75 38 82 38 L 188 38 Q 195 38 195 45 L 195 64 L75 64 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  313 +<rect class='entity' x='75' y='38' width='120' height='90' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  314 +<line class='delim' x1='75' y1='64' x2='195' y2='64' style='stroke:#5f656e'/>
  315 +<line class='delim' x1='90' y1='64' x2='90' y2='128' style='stroke:#5f656e'/>
  316 +<line class='delim' x1='184' y1='64' x2='184' y2='128' style='stroke:#5f656e'/>
  317 +<a xlink:href='#qrtz_calendars'><text x='90' y='56'>qrtz_calendars</text><title>Table ry.qrtz_calendars</title></a>
  318 + <use id='nn' x='77' y='72' xlink:href='#nn'/><a xlink:href='#qrtz_calendars.sched_name'><use id='pk' x='77' y='71' xlink:href='#pk'/><title>Pk pk_qrtz_calendars ( sched_name, calendar_name ) </title></a>
  319 +<a xlink:href='#qrtz_calendars.sched_name'><text id='ry.qrtz_calendars.sched_name' x='93' y='81'>sched_name</text><title>sched_name
  320 +* varchar(120)</title></a>
  321 +<text x='192' y='78' text-anchor='end' class='colType'>t</text> <use id='nn' x='77' y='87' xlink:href='#nn'/><a xlink:href='#qrtz_calendars.calendar_name'><use id='pk' x='77' y='86' xlink:href='#pk'/><title>Pk pk_qrtz_calendars ( sched_name, calendar_name ) </title></a>
  322 +<a xlink:href='#qrtz_calendars.calendar_name'><text id='ry.qrtz_calendars.calendar_name' x='93' y='96'>calendar_name</text><title>calendar_name
  323 +* varchar(200)</title></a>
  324 +<text x='192' y='93' text-anchor='end' class='colType'>t</text> <use id='nn' x='77' y='102' xlink:href='#nn'/><a xlink:href='#qrtz_calendars.calendar'><text id='ry.qrtz_calendars.calendar' x='93' y='111'>calendar</text><title>calendar
  325 +* blob</title></a>
  326 +<text x='192' y='108' text-anchor='end' class='colType'>~</text>
  327 +<!-- == Table 'qrtz_cron_triggers' == -->
  328 +<rect class='entity' x='435' y='533' width='135' height='120' rx='7' ry='7' style='stroke:none'/>
  329 +<path d='M 435 559 L 435 540 Q 435 533 442 533 L 563 533 Q 570 533 570 540 L 570 559 L435 559 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  330 +<rect class='entity' x='435' y='533' width='135' height='120' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  331 +<line class='delim' x1='435' y1='559' x2='570' y2='559' style='stroke:#5f656e'/>
  332 +<line class='delim' x1='450' y1='559' x2='450' y2='653' style='stroke:#5f656e'/>
  333 +<line class='delim' x1='559' y1='559' x2='559' y2='653' style='stroke:#5f656e'/>
  334 +<a xlink:href='#qrtz_cron_triggers'><text x='445' y='551'>qrtz_cron_triggers</text><title>Table ry.qrtz_cron_triggers</title></a>
  335 + <use id='nn' x='437' y='567' xlink:href='#nn'/><a xlink:href='#qrtz_cron_triggers.sched_name'><use id='pk' x='437' y='566' xlink:href='#pk'/><title>Pk pk_qrtz_cron_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  336 +<a xlink:href='#qrtz_cron_triggers.sched_name'><text id='ry.qrtz_cron_triggers.sched_name' x='453' y='576' onmouseover="hghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">sched_name</text><title>sched_name
  337 +* varchar(120)</title></a>
  338 +<a xlink:href='#qrtz_cron_triggers.sched_name'><use id='fk' x='559' y='566' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  339 + <use id='nn' x='437' y='582' xlink:href='#nn'/><a xlink:href='#qrtz_cron_triggers.trigger_name'><use id='pk' x='437' y='581' xlink:href='#pk'/><title>Pk pk_qrtz_cron_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  340 +<a xlink:href='#qrtz_cron_triggers.trigger_name'><text id='ry.qrtz_cron_triggers.trigger_name' x='453' y='591' onmouseover="hghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_name</text><title>trigger_name
  341 +* varchar(200)</title></a>
  342 +<a xlink:href='#qrtz_cron_triggers.trigger_name'><use id='fk' x='559' y='581' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  343 + <use id='nn' x='437' y='597' xlink:href='#nn'/><a xlink:href='#qrtz_cron_triggers.trigger_group'><use id='pk' x='437' y='596' xlink:href='#pk'/><title>Pk pk_qrtz_cron_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  344 +<a xlink:href='#qrtz_cron_triggers.trigger_group'><text id='ry.qrtz_cron_triggers.trigger_group' x='453' y='606' onmouseover="hghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_group</text><title>trigger_group
  345 +* varchar(200)</title></a>
  346 +<a xlink:href='#qrtz_cron_triggers.trigger_group'><use id='fk' x='559' y='596' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  347 + <use id='nn' x='437' y='612' xlink:href='#nn'/><a xlink:href='#qrtz_cron_triggers.cron_expression'><text id='ry.qrtz_cron_triggers.cron_expression' x='453' y='621'>cron_expression</text><title>cron_expression
  348 +* varchar(200)</title></a>
  349 +<text x='567' y='618' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_cron_triggers.time_zone_id'><text id='ry.qrtz_cron_triggers.time_zone_id' x='453' y='636'>time_zone_id</text><title>time_zone_id
  350 +varchar(80)</title></a>
  351 +<text x='567' y='633' text-anchor='end' class='colType'>t</text>
  352 +<!-- == Table 'qrtz_job_details' == -->
  353 +<rect class='entity' x='435' y='188' width='135' height='195' rx='7' ry='7' style='stroke:none'/>
  354 +<path d='M 435 214 L 435 195 Q 435 188 442 188 L 563 188 Q 570 188 570 195 L 570 214 L435 214 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  355 +<rect class='entity' x='435' y='188' width='135' height='195' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  356 +<line class='delim' x1='435' y1='214' x2='570' y2='214' style='stroke:#5f656e'/>
  357 +<line class='delim' x1='450' y1='214' x2='450' y2='383' style='stroke:#5f656e'/>
  358 +<line class='delim' x1='559' y1='214' x2='559' y2='383' style='stroke:#5f656e'/>
  359 +<a xlink:href='#qrtz_job_details'><text x='451' y='206'>qrtz_job_details</text><title>Table ry.qrtz_job_details</title></a>
  360 + <use id='nn' x='437' y='222' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.sched_name'><use id='pk' x='437' y='221' xlink:href='#pk'/><title>Pk pk_qrtz_job_details ( sched_name, job_name, job_group ) </title></a>
  361 +<a xlink:href='#qrtz_job_details.sched_name'><text id='ry.qrtz_job_details.sched_name' x='453' y='231' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])">sched_name</text><title>sched_name
  362 +* varchar(120)</title></a>
  363 +<a xlink:href='#qrtz_job_details.sched_name'><use id='ref' x='559' y='221' xlink:href='#ref'/><title>Referred by qrtz_triggers ( sched_name, job_name, job_group ) </title></a>
  364 + <use id='nn' x='437' y='237' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.job_name'><use id='pk' x='437' y='236' xlink:href='#pk'/><title>Pk pk_qrtz_job_details ( sched_name, job_name, job_group ) </title></a>
  365 +<a xlink:href='#qrtz_job_details.job_name'><text id='ry.qrtz_job_details.job_name' x='453' y='246' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])">job_name</text><title>job_name
  366 +* varchar(200)</title></a>
  367 +<a xlink:href='#qrtz_job_details.job_name'><use id='ref' x='559' y='236' xlink:href='#ref'/><title>Referred by qrtz_triggers ( sched_name, job_name, job_group ) </title></a>
  368 + <use id='nn' x='437' y='252' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.job_group'><use id='pk' x='437' y='251' xlink:href='#pk'/><title>Pk pk_qrtz_job_details ( sched_name, job_name, job_group ) </title></a>
  369 +<a xlink:href='#qrtz_job_details.job_group'><text id='ry.qrtz_job_details.job_group' x='453' y='261' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.job_name','ry.qrtz_triggers.job_group'])">job_group</text><title>job_group
  370 +* varchar(200)</title></a>
  371 +<a xlink:href='#qrtz_job_details.job_group'><use id='ref' x='559' y='251' xlink:href='#ref'/><title>Referred by qrtz_triggers ( sched_name, job_name, job_group ) </title></a>
  372 + <a xlink:href='#qrtz_job_details.description'><text id='ry.qrtz_job_details.description' x='453' y='276'>description</text><title>description
  373 +varchar(250)</title></a>
  374 +<text x='567' y='273' text-anchor='end' class='colType'>t</text> <use id='nn' x='437' y='282' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.job_class_name'><text id='ry.qrtz_job_details.job_class_name' x='453' y='291'>job_class_name</text><title>job_class_name
  375 +* varchar(250)</title></a>
  376 +<text x='567' y='288' text-anchor='end' class='colType'>t</text> <use id='nn' x='437' y='297' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.is_durable'><text id='ry.qrtz_job_details.is_durable' x='453' y='306'>is_durable</text><title>is_durable
  377 +* varchar(1)</title></a>
  378 +<text x='567' y='303' text-anchor='end' class='colType'>t</text> <use id='nn' x='437' y='312' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.is_nonconcurrent'><text id='ry.qrtz_job_details.is_nonconcurrent' x='453' y='321'>is_nonconcurrent</text><title>is_nonconcurrent
  379 +* varchar(1)</title></a>
  380 +<text x='567' y='318' text-anchor='end' class='colType'>t</text> <use id='nn' x='437' y='327' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.is_update_data'><text id='ry.qrtz_job_details.is_update_data' x='453' y='336'>is_update_data</text><title>is_update_data
  381 +* varchar(1)</title></a>
  382 +<text x='567' y='333' text-anchor='end' class='colType'>t</text> <use id='nn' x='437' y='342' xlink:href='#nn'/><a xlink:href='#qrtz_job_details.requests_recovery'><text id='ry.qrtz_job_details.requests_recovery' x='453' y='351'>requests_recovery</text><title>requests_recovery
  383 +* varchar(1)</title></a>
  384 +<text x='567' y='348' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_job_details.job_data'><text id='ry.qrtz_job_details.job_data' x='453' y='366'>job_data</text><title>job_data
  385 +blob</title></a>
  386 +<text x='567' y='363' text-anchor='end' class='colType'>~</text>
  387 +<!-- == Table 'qrtz_locks' == -->
  388 +<rect class='entity' x='255' y='53' width='105' height='75' rx='7' ry='7' style='stroke:none'/>
  389 +<path d='M 255 79 L 255 60 Q 255 53 262 53 L 353 53 Q 360 53 360 60 L 360 79 L255 79 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  390 +<rect class='entity' x='255' y='53' width='105' height='75' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  391 +<line class='delim' x1='255' y1='79' x2='360' y2='79' style='stroke:#5f656e'/>
  392 +<line class='delim' x1='270' y1='79' x2='270' y2='128' style='stroke:#5f656e'/>
  393 +<line class='delim' x1='349' y1='79' x2='349' y2='128' style='stroke:#5f656e'/>
  394 +<a xlink:href='#qrtz_locks'><text x='274' y='71'>qrtz_locks</text><title>Table ry.qrtz_locks</title></a>
  395 + <use id='nn' x='257' y='87' xlink:href='#nn'/><a xlink:href='#qrtz_locks.sched_name'><use id='pk' x='257' y='86' xlink:href='#pk'/><title>Pk pk_qrtz_locks ( sched_name, lock_name ) </title></a>
  396 +<a xlink:href='#qrtz_locks.sched_name'><text id='ry.qrtz_locks.sched_name' x='273' y='96'>sched_name</text><title>sched_name
  397 +* varchar(120)</title></a>
  398 +<text x='357' y='93' text-anchor='end' class='colType'>t</text> <use id='nn' x='257' y='102' xlink:href='#nn'/><a xlink:href='#qrtz_locks.lock_name'><use id='pk' x='257' y='101' xlink:href='#pk'/><title>Pk pk_qrtz_locks ( sched_name, lock_name ) </title></a>
  399 +<a xlink:href='#qrtz_locks.lock_name'><text id='ry.qrtz_locks.lock_name' x='273' y='111'>lock_name</text><title>lock_name
  400 +* varchar(40)</title></a>
  401 +<text x='357' y='108' text-anchor='end' class='colType'>t</text>
  402 +<!-- == Table 'qrtz_scheduler_state' == -->
  403 +<rect class='entity' x='255' y='728' width='135' height='105' rx='7' ry='7' style='stroke:none'/>
  404 +<path d='M 255 754 L 255 735 Q 255 728 262 728 L 383 728 Q 390 728 390 735 L 390 754 L255 754 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  405 +<rect class='entity' x='255' y='728' width='135' height='105' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  406 +<line class='delim' x1='255' y1='754' x2='390' y2='754' style='stroke:#5f656e'/>
  407 +<line class='delim' x1='270' y1='754' x2='270' y2='833' style='stroke:#5f656e'/>
  408 +<line class='delim' x1='379' y1='754' x2='379' y2='833' style='stroke:#5f656e'/>
  409 +<a xlink:href='#qrtz_scheduler_state'><text x='259' y='746'>qrtz_scheduler_state</text><title>Table ry.qrtz_scheduler_state</title></a>
  410 + <use id='nn' x='257' y='762' xlink:href='#nn'/><a xlink:href='#qrtz_scheduler_state.sched_name'><use id='pk' x='257' y='761' xlink:href='#pk'/><title>Pk pk_qrtz_scheduler_state ( sched_name, instance_name ) </title></a>
  411 +<a xlink:href='#qrtz_scheduler_state.sched_name'><text id='ry.qrtz_scheduler_state.sched_name' x='273' y='771'>sched_name</text><title>sched_name
  412 +* varchar(120)</title></a>
  413 +<text x='387' y='768' text-anchor='end' class='colType'>t</text> <use id='nn' x='257' y='777' xlink:href='#nn'/><a xlink:href='#qrtz_scheduler_state.instance_name'><use id='pk' x='257' y='776' xlink:href='#pk'/><title>Pk pk_qrtz_scheduler_state ( sched_name, instance_name ) </title></a>
  414 +<a xlink:href='#qrtz_scheduler_state.instance_name'><text id='ry.qrtz_scheduler_state.instance_name' x='273' y='786'>instance_name</text><title>instance_name
  415 +* varchar(200)</title></a>
  416 +<text x='387' y='783' text-anchor='end' class='colType'>t</text> <use id='nn' x='257' y='792' xlink:href='#nn'/><a xlink:href='#qrtz_scheduler_state.last_checkin_time'><text id='ry.qrtz_scheduler_state.last_checkin_time' x='273' y='801'>last_checkin_time</text><title>last_checkin_time
  417 +* bigint</title></a>
  418 +<text x='387' y='798' text-anchor='end' class='colType'>#</text> <use id='nn' x='257' y='807' xlink:href='#nn'/><a xlink:href='#qrtz_scheduler_state.checkin_interval'><text id='ry.qrtz_scheduler_state.checkin_interval' x='273' y='816'>checkin_interval</text><title>checkin_interval
  419 +* bigint</title></a>
  420 +<text x='387' y='813' text-anchor='end' class='colType'>#</text>
  421 +<!-- == Table 'qrtz_simple_triggers' == -->
  422 +<rect class='entity' x='60' y='533' width='135' height='135' rx='7' ry='7' style='stroke:none'/>
  423 +<path d='M 60 559 L 60 540 Q 60 533 67 533 L 188 533 Q 195 533 195 540 L 195 559 L60 559 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  424 +<rect class='entity' x='60' y='533' width='135' height='135' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  425 +<line class='delim' x1='60' y1='559' x2='195' y2='559' style='stroke:#5f656e'/>
  426 +<line class='delim' x1='75' y1='559' x2='75' y2='668' style='stroke:#5f656e'/>
  427 +<line class='delim' x1='184' y1='559' x2='184' y2='668' style='stroke:#5f656e'/>
  428 +<a xlink:href='#qrtz_simple_triggers'><text x='64' y='551'>qrtz_simple_triggers</text><title>Table ry.qrtz_simple_triggers</title></a>
  429 + <use id='nn' x='62' y='567' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.sched_name'><use id='pk' x='62' y='566' xlink:href='#pk'/><title>Pk pk_qrtz_simple_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  430 +<a xlink:href='#qrtz_simple_triggers.sched_name'><text id='ry.qrtz_simple_triggers.sched_name' x='78' y='576' onmouseover="hghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">sched_name</text><title>sched_name
  431 +* varchar(120)</title></a>
  432 +<a xlink:href='#qrtz_simple_triggers.sched_name'><use id='fk' x='184' y='566' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  433 + <use id='nn' x='62' y='582' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.trigger_name'><use id='pk' x='62' y='581' xlink:href='#pk'/><title>Pk pk_qrtz_simple_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  434 +<a xlink:href='#qrtz_simple_triggers.trigger_name'><text id='ry.qrtz_simple_triggers.trigger_name' x='78' y='591' onmouseover="hghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_name</text><title>trigger_name
  435 +* varchar(200)</title></a>
  436 +<a xlink:href='#qrtz_simple_triggers.trigger_name'><use id='fk' x='184' y='581' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  437 + <use id='nn' x='62' y='597' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.trigger_group'><use id='pk' x='62' y='596' xlink:href='#pk'/><title>Pk pk_qrtz_simple_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  438 +<a xlink:href='#qrtz_simple_triggers.trigger_group'><text id='ry.qrtz_simple_triggers.trigger_group' x='78' y='606' onmouseover="hghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_group</text><title>trigger_group
  439 +* varchar(200)</title></a>
  440 +<a xlink:href='#qrtz_simple_triggers.trigger_group'><use id='fk' x='184' y='596' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  441 + <use id='nn' x='62' y='612' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.repeat_count'><text id='ry.qrtz_simple_triggers.repeat_count' x='78' y='621'>repeat_count</text><title>repeat_count
  442 +* bigint</title></a>
  443 +<text x='192' y='618' text-anchor='end' class='colType'>#</text> <use id='nn' x='62' y='627' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.repeat_interval'><text id='ry.qrtz_simple_triggers.repeat_interval' x='78' y='636'>repeat_interval</text><title>repeat_interval
  444 +* bigint</title></a>
  445 +<text x='192' y='633' text-anchor='end' class='colType'>#</text> <use id='nn' x='62' y='642' xlink:href='#nn'/><a xlink:href='#qrtz_simple_triggers.times_triggered'><text id='ry.qrtz_simple_triggers.times_triggered' x='78' y='651'>times_triggered</text><title>times_triggered
  446 +* bigint</title></a>
  447 +<text x='192' y='648' text-anchor='end' class='colType'>#</text>
  448 +<!-- == Table 'qrtz_simprop_triggers' == -->
  449 +<rect class='entity' x='45' y='218' width='150' height='255' rx='7' ry='7' style='stroke:none'/>
  450 +<path d='M 45 244 L 45 225 Q 45 218 52 218 L 188 218 Q 195 218 195 225 L 195 244 L45 244 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  451 +<rect class='entity' x='45' y='218' width='150' height='255' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  452 +<line class='delim' x1='45' y1='244' x2='195' y2='244' style='stroke:#5f656e'/>
  453 +<line class='delim' x1='60' y1='244' x2='60' y2='473' style='stroke:#5f656e'/>
  454 +<line class='delim' x1='184' y1='244' x2='184' y2='473' style='stroke:#5f656e'/>
  455 +<a xlink:href='#qrtz_simprop_triggers'><text x='54' y='236'>qrtz_simprop_triggers</text><title>Table ry.qrtz_simprop_triggers</title></a>
  456 + <use id='nn' x='47' y='252' xlink:href='#nn'/><a xlink:href='#qrtz_simprop_triggers.sched_name'><use id='pk' x='47' y='251' xlink:href='#pk'/><title>Pk pk_qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  457 +<a xlink:href='#qrtz_simprop_triggers.sched_name'><text id='ry.qrtz_simprop_triggers.sched_name' x='63' y='261' onmouseover="hghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">sched_name</text><title>sched_name
  458 +* varchar(120)</title></a>
  459 +<a xlink:href='#qrtz_simprop_triggers.sched_name'><use id='fk' x='184' y='251' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  460 + <use id='nn' x='47' y='267' xlink:href='#nn'/><a xlink:href='#qrtz_simprop_triggers.trigger_name'><use id='pk' x='47' y='266' xlink:href='#pk'/><title>Pk pk_qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  461 +<a xlink:href='#qrtz_simprop_triggers.trigger_name'><text id='ry.qrtz_simprop_triggers.trigger_name' x='63' y='276' onmouseover="hghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_name</text><title>trigger_name
  462 +* varchar(200)</title></a>
  463 +<a xlink:href='#qrtz_simprop_triggers.trigger_name'><use id='fk' x='184' y='266' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  464 + <use id='nn' x='47' y='282' xlink:href='#nn'/><a xlink:href='#qrtz_simprop_triggers.trigger_group'><use id='pk' x='47' y='281' xlink:href='#pk'/><title>Pk pk_qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  465 +<a xlink:href='#qrtz_simprop_triggers.trigger_group'><text id='ry.qrtz_simprop_triggers.trigger_group' x='63' y='291' onmouseover="hghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_triggers.sched_name','ry.qrtz_triggers.trigger_name','ry.qrtz_triggers.trigger_group'])">trigger_group</text><title>trigger_group
  466 +* varchar(200)</title></a>
  467 +<a xlink:href='#qrtz_simprop_triggers.trigger_group'><use id='fk' x='184' y='281' xlink:href='#fk'/><title>References qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  468 + <a xlink:href='#qrtz_simprop_triggers.str_prop_1'><text id='ry.qrtz_simprop_triggers.str_prop_1' x='63' y='306'>str_prop_1</text><title>str_prop_1
  469 +varchar(512)</title></a>
  470 +<text x='192' y='303' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_simprop_triggers.str_prop_2'><text id='ry.qrtz_simprop_triggers.str_prop_2' x='63' y='321'>str_prop_2</text><title>str_prop_2
  471 +varchar(512)</title></a>
  472 +<text x='192' y='318' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_simprop_triggers.str_prop_3'><text id='ry.qrtz_simprop_triggers.str_prop_3' x='63' y='336'>str_prop_3</text><title>str_prop_3
  473 +varchar(512)</title></a>
  474 +<text x='192' y='333' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_simprop_triggers.int_prop_1'><text id='ry.qrtz_simprop_triggers.int_prop_1' x='63' y='351'>int_prop_1</text><title>int_prop_1
  475 +int</title></a>
  476 +<text x='192' y='348' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.int_prop_2'><text id='ry.qrtz_simprop_triggers.int_prop_2' x='63' y='366'>int_prop_2</text><title>int_prop_2
  477 +int</title></a>
  478 +<text x='192' y='363' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.long_prop_1'><text id='ry.qrtz_simprop_triggers.long_prop_1' x='63' y='381'>long_prop_1</text><title>long_prop_1
  479 +bigint</title></a>
  480 +<text x='192' y='378' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.long_prop_2'><text id='ry.qrtz_simprop_triggers.long_prop_2' x='63' y='396'>long_prop_2</text><title>long_prop_2
  481 +bigint</title></a>
  482 +<text x='192' y='393' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.dec_prop_1'><text id='ry.qrtz_simprop_triggers.dec_prop_1' x='63' y='411'>dec_prop_1</text><title>dec_prop_1
  483 +decimal(13,4)</title></a>
  484 +<text x='192' y='408' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.dec_prop_2'><text id='ry.qrtz_simprop_triggers.dec_prop_2' x='63' y='426'>dec_prop_2</text><title>dec_prop_2
  485 +decimal(13,4)</title></a>
  486 +<text x='192' y='423' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_simprop_triggers.bool_prop_1'><text id='ry.qrtz_simprop_triggers.bool_prop_1' x='63' y='441'>bool_prop_1</text><title>bool_prop_1
  487 +varchar(1)</title></a>
  488 +<text x='192' y='438' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_simprop_triggers.bool_prop_2'><text id='ry.qrtz_simprop_triggers.bool_prop_2' x='63' y='456'>bool_prop_2</text><title>bool_prop_2
  489 +varchar(1)</title></a>
  490 +<text x='192' y='453' text-anchor='end' class='colType'>t</text>
  491 +<!-- == Table 'qrtz_triggers' == -->
  492 +<rect class='entity' x='255' y='188' width='120' height='285' rx='7' ry='7' style='stroke:none'/>
  493 +<path d='M 255 214 L 255 195 Q 255 188 262 188 L 368 188 Q 375 188 375 195 L 375 214 L255 214 ' style='fill:url(#tbg_bfd4f5);stroke:1;stroke-opacity:0.1;' />
  494 +<rect class='entity' x='255' y='188' width='120' height='285' rx='7' ry='7' style='fill:none;stroke:#5f656e'/>
  495 +<line class='delim' x1='255' y1='214' x2='375' y2='214' style='stroke:#5f656e'/>
  496 +<line class='delim' x1='270' y1='214' x2='270' y2='473' style='stroke:#5f656e'/>
  497 +<line class='delim' x1='364' y1='214' x2='364' y2='473' style='stroke:#5f656e'/>
  498 +<a xlink:href='#qrtz_triggers'><text x='273' y='206'>qrtz_triggers</text><title>Table ry.qrtz_triggers</title></a>
  499 + <use id='nn' x='257' y='222' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.sched_name'><use id='pk' x='257' y='221' xlink:href='#pk'/><title>Pk pk_qrtz_triggers ( sched_name, trigger_name, trigger_group ) sched_name ( sched_name, job_name, job_group ) </title></a>
  500 +<a xlink:href='#qrtz_triggers.sched_name'><text id='ry.qrtz_triggers.sched_name' x='273' y='231' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group','qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group','qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])">sched_name</text><title>sched_name
  501 +* varchar(120)</title></a>
  502 +<a xlink:href='#qrtz_triggers.sched_name'><use id='fk' x='364' y='221' xlink:href='#fk'/><title>References qrtz_job_details ( sched_name, job_name, job_group )
  503 +Referred by qrtz_blob_triggers ( sched_name, trigger_name, trigger_group )
  504 +Referred by qrtz_cron_triggers ( sched_name, trigger_name, trigger_group )
  505 +Referred by qrtz_simple_triggers ( sched_name, trigger_name, trigger_group )
  506 +Referred by qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  507 + <use id='nn' x='257' y='237' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.trigger_name'><use id='pk' x='257' y='236' xlink:href='#pk'/><title>Pk pk_qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  508 +<a xlink:href='#qrtz_triggers.trigger_name'><text id='ry.qrtz_triggers.trigger_name' x='273' y='246' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])">trigger_name</text><title>trigger_name
  509 +* varchar(200)</title></a>
  510 +<a xlink:href='#qrtz_triggers.trigger_name'><use id='ref' x='364' y='236' xlink:href='#ref'/><title>Referred by qrtz_blob_triggers ( sched_name, trigger_name, trigger_group )
  511 +Referred by qrtz_cron_triggers ( sched_name, trigger_name, trigger_group )
  512 +Referred by qrtz_simple_triggers ( sched_name, trigger_name, trigger_group )
  513 +Referred by qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  514 + <use id='nn' x='257' y='252' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.trigger_group'><use id='pk' x='257' y='251' xlink:href='#pk'/><title>Pk pk_qrtz_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  515 +<a xlink:href='#qrtz_triggers.trigger_group'><text id='ry.qrtz_triggers.trigger_group' x='273' y='261' onmouseover="hghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])" onmouseout="uhghl(['qrtz_blob_triggers_qrtz_blob_triggers_ibfk_1','ry.qrtz_blob_triggers.sched_name','ry.qrtz_blob_triggers.trigger_name','ry.qrtz_blob_triggers.trigger_group','qrtz_cron_triggers_qrtz_cron_triggers_ibfk_1','ry.qrtz_cron_triggers.sched_name','ry.qrtz_cron_triggers.trigger_name','ry.qrtz_cron_triggers.trigger_group','qrtz_simple_triggers_qrtz_simple_triggers_ibfk_1','ry.qrtz_simple_triggers.sched_name','ry.qrtz_simple_triggers.trigger_name','ry.qrtz_simple_triggers.trigger_group','qrtz_simprop_triggers_qrtz_simprop_triggers_ibfk_1','ry.qrtz_simprop_triggers.sched_name','ry.qrtz_simprop_triggers.trigger_name','ry.qrtz_simprop_triggers.trigger_group'])">trigger_group</text><title>trigger_group
  516 +* varchar(200)</title></a>
  517 +<a xlink:href='#qrtz_triggers.trigger_group'><use id='ref' x='364' y='251' xlink:href='#ref'/><title>Referred by qrtz_blob_triggers ( sched_name, trigger_name, trigger_group )
  518 +Referred by qrtz_cron_triggers ( sched_name, trigger_name, trigger_group )
  519 +Referred by qrtz_simple_triggers ( sched_name, trigger_name, trigger_group )
  520 +Referred by qrtz_simprop_triggers ( sched_name, trigger_name, trigger_group ) </title></a>
  521 + <use id='nn' x='257' y='267' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.job_name'><use id='idx' x='257' y='266' xlink:href='#idx'/><title>sched_name ( sched_name, job_name, job_group ) </title></a>
  522 +<a xlink:href='#qrtz_triggers.job_name'><text id='ry.qrtz_triggers.job_name' x='273' y='276' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])">job_name</text><title>job_name
  523 +* varchar(200)</title></a>
  524 +<a xlink:href='#qrtz_triggers.job_name'><use id='fk' x='364' y='266' xlink:href='#fk'/><title>References qrtz_job_details ( sched_name, job_name, job_group ) </title></a>
  525 + <use id='nn' x='257' y='282' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.job_group'><use id='idx' x='257' y='281' xlink:href='#idx'/><title>sched_name ( sched_name, job_name, job_group ) </title></a>
  526 +<a xlink:href='#qrtz_triggers.job_group'><text id='ry.qrtz_triggers.job_group' x='273' y='291' onmouseover="hghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])" onmouseout="uhghl(['qrtz_triggers_qrtz_triggers_ibfk_1','ry.qrtz_job_details.sched_name','ry.qrtz_job_details.job_name','ry.qrtz_job_details.job_group'])">job_group</text><title>job_group
  527 +* varchar(200)</title></a>
  528 +<a xlink:href='#qrtz_triggers.job_group'><use id='fk' x='364' y='281' xlink:href='#fk'/><title>References qrtz_job_details ( sched_name, job_name, job_group ) </title></a>
  529 + <a xlink:href='#qrtz_triggers.description'><text id='ry.qrtz_triggers.description' x='273' y='306'>description</text><title>description
  530 +varchar(250)</title></a>
  531 +<text x='372' y='303' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_triggers.next_fire_time'><text id='ry.qrtz_triggers.next_fire_time' x='273' y='321'>next_fire_time</text><title>next_fire_time
  532 +bigint</title></a>
  533 +<text x='372' y='318' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_triggers.prev_fire_time'><text id='ry.qrtz_triggers.prev_fire_time' x='273' y='336'>prev_fire_time</text><title>prev_fire_time
  534 +bigint</title></a>
  535 +<text x='372' y='333' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_triggers.priority'><text id='ry.qrtz_triggers.priority' x='273' y='351'>priority</text><title>priority
  536 +int</title></a>
  537 +<text x='372' y='348' text-anchor='end' class='colType'>#</text> <use id='nn' x='257' y='357' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.trigger_state'><text id='ry.qrtz_triggers.trigger_state' x='273' y='366'>trigger_state</text><title>trigger_state
  538 +* varchar(16)</title></a>
  539 +<text x='372' y='363' text-anchor='end' class='colType'>t</text> <use id='nn' x='257' y='372' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.trigger_type'><text id='ry.qrtz_triggers.trigger_type' x='273' y='381'>trigger_type</text><title>trigger_type
  540 +* varchar(8)</title></a>
  541 +<text x='372' y='378' text-anchor='end' class='colType'>t</text> <use id='nn' x='257' y='387' xlink:href='#nn'/><a xlink:href='#qrtz_triggers.start_time'><text id='ry.qrtz_triggers.start_time' x='273' y='396'>start_time</text><title>start_time
  542 +* bigint</title></a>
  543 +<text x='372' y='393' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_triggers.end_time'><text id='ry.qrtz_triggers.end_time' x='273' y='411'>end_time</text><title>end_time
  544 +bigint</title></a>
  545 +<text x='372' y='408' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_triggers.calendar_name'><text id='ry.qrtz_triggers.calendar_name' x='273' y='426'>calendar_name</text><title>calendar_name
  546 +varchar(200)</title></a>
  547 +<text x='372' y='423' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_triggers.misfire_instr'><text id='ry.qrtz_triggers.misfire_instr' x='273' y='441'>misfire_instr</text><title>misfire_instr
  548 +smallint</title></a>
  549 +<text x='372' y='438' text-anchor='end' class='colType'>#</text> <a xlink:href='#qrtz_triggers.job_data'><text id='ry.qrtz_triggers.job_data' x='273' y='456'>job_data</text><title>job_data
  550 +blob</title></a>
  551 +<text x='372' y='453' text-anchor='end' class='colType'>~</text>
  552 +<!-- == Table 'sys_dict_data' == -->
  553 +<rect class='entity' x='1170' y='38' width='105' height='210' rx='7' ry='7' style='stroke:none'/>
  554 +<path d='M 1170 64 L 1170 45 Q 1170 38 1177 38 L 1268 38 Q 1275 38 1275 45 L 1275 64 L1170 64 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  555 +<rect class='entity' x='1170' y='38' width='105' height='210' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  556 +<line class='delim' x1='1170' y1='64' x2='1275' y2='64' style='stroke:#626e5f'/>
  557 +<line class='delim' x1='1185' y1='64' x2='1185' y2='248' style='stroke:#626e5f'/>
  558 +<line class='delim' x1='1264' y1='64' x2='1264' y2='248' style='stroke:#626e5f'/>
  559 +<a xlink:href='#sys_dict_data'><text x='1180' y='56'>sys_dict_data</text><title>Table ry.sys_dict_data</title></a>
  560 + <use id='nn' x='1172' y='72' xlink:href='#nn'/><a xlink:href='#sys_dict_data.dict_code'><use id='pk' x='1172' y='71' xlink:href='#pk'/><title>Pk pk_sys_dict_data ( dict_code ) </title></a>
  561 +<a xlink:href='#sys_dict_data.dict_code'><text id='ry.sys_dict_data.dict_code' x='1188' y='81'>dict_code</text><title>dict_code
  562 +* int
  563 +字典编码</title></a>
  564 +<text x='1272' y='78' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dict_data.dict_sort'><text id='ry.sys_dict_data.dict_sort' x='1188' y='96'>dict_sort</text><title>dict_sort
  565 +int default 0
  566 +字典排序</title></a>
  567 +<text x='1272' y='93' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dict_data.dict_label'><text id='ry.sys_dict_data.dict_label' x='1188' y='111'>dict_label</text><title>dict_label
  568 +varchar(100) default ''
  569 +字典标签</title></a>
  570 +<text x='1272' y='108' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dict_data.dict_value'><text id='ry.sys_dict_data.dict_value' x='1188' y='126'>dict_value</text><title>dict_value
  571 +varchar(100) default ''
  572 +字典键值</title></a>
  573 +<text x='1272' y='123' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dict_data.dict_type'><text id='ry.sys_dict_data.dict_type' x='1188' y='141'>dict_type</text><title>dict_type
  574 +varchar(100) default ''
  575 +字典类型</title></a>
  576 +<text x='1272' y='138' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dict_data.status'><text id='ry.sys_dict_data.status' x='1188' y='156'>status</text><title>status
  577 +int default 0
  578 +状态(0正常 1禁用)</title></a>
  579 +<text x='1272' y='153' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dict_data.create_by'><text id='ry.sys_dict_data.create_by' x='1188' y='171'>create_by</text><title>create_by
  580 +varchar(64) default ''
  581 +创建者</title></a>
  582 +<text x='1272' y='168' text-anchor='end' class='colType'>t</text> <use id='nn' x='1172' y='177' xlink:href='#nn'/><a xlink:href='#sys_dict_data.create_time'><text id='ry.sys_dict_data.create_time' x='1188' y='186'>create_time</text><title>create_time
  583 +* timestamp default CURRENT_TIMESTAMP
  584 +创建时间</title></a>
  585 +<text x='1272' y='183' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_dict_data.update_by'><text id='ry.sys_dict_data.update_by' x='1188' y='201'>update_by</text><title>update_by
  586 +varchar(64) default ''
  587 +更新者</title></a>
  588 +<text x='1272' y='198' text-anchor='end' class='colType'>t</text> <use id='nn' x='1172' y='207' xlink:href='#nn'/><a xlink:href='#sys_dict_data.update_time'><text id='ry.sys_dict_data.update_time' x='1188' y='216'>update_time</text><title>update_time
  589 +* timestamp default '0000-00-00 00:00:00'
  590 +更新时间</title></a>
  591 +<text x='1272' y='213' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_dict_data.remark'><text id='ry.sys_dict_data.remark' x='1188' y='231'>remark</text><title>remark
  592 +varchar(500) default ''
  593 +备注</title></a>
  594 +<text x='1272' y='228' text-anchor='end' class='colType'>t</text>
  595 +<!-- == Table 'sys_dict_type' == -->
  596 +<rect class='entity' x='1005' y='38' width='105' height='180' rx='7' ry='7' style='stroke:none'/>
  597 +<path d='M 1005 64 L 1005 45 Q 1005 38 1012 38 L 1103 38 Q 1110 38 1110 45 L 1110 64 L1005 64 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  598 +<rect class='entity' x='1005' y='38' width='105' height='180' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  599 +<line class='delim' x1='1005' y1='64' x2='1110' y2='64' style='stroke:#626e5f'/>
  600 +<line class='delim' x1='1020' y1='64' x2='1020' y2='218' style='stroke:#626e5f'/>
  601 +<line class='delim' x1='1099' y1='64' x2='1099' y2='218' style='stroke:#626e5f'/>
  602 +<a xlink:href='#sys_dict_type'><text x='1015' y='56'>sys_dict_type</text><title>Table ry.sys_dict_type</title></a>
  603 + <use id='nn' x='1007' y='72' xlink:href='#nn'/><a xlink:href='#sys_dict_type.dict_id'><use id='pk' x='1007' y='71' xlink:href='#pk'/><title>Pk pk_sys_dict_type ( dict_id ) </title></a>
  604 +<a xlink:href='#sys_dict_type.dict_id'><text id='ry.sys_dict_type.dict_id' x='1023' y='81'>dict_id</text><title>dict_id
  605 +* int
  606 +字典主键</title></a>
  607 +<text x='1107' y='78' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dict_type.dict_name'><text id='ry.sys_dict_type.dict_name' x='1023' y='96'>dict_name</text><title>dict_name
  608 +varchar(100) default ''
  609 +字典名称</title></a>
  610 +<text x='1107' y='93' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dict_type.dict_type'><use id='unq' x='1007' y='101' xlink:href='#unq'/><title>Unq dict_type ( dict_type ) </title></a>
  611 +<a xlink:href='#sys_dict_type.dict_type'><text id='ry.sys_dict_type.dict_type' x='1023' y='111'>dict_type</text><title>dict_type
  612 +varchar(100) default ''
  613 +字典类型</title></a>
  614 +<text x='1107' y='108' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dict_type.status'><text id='ry.sys_dict_type.status' x='1023' y='126'>status</text><title>status
  615 +int default 0
  616 +状态(0正常 1禁用)</title></a>
  617 +<text x='1107' y='123' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dict_type.create_by'><text id='ry.sys_dict_type.create_by' x='1023' y='141'>create_by</text><title>create_by
  618 +varchar(64) default ''
  619 +创建者</title></a>
  620 +<text x='1107' y='138' text-anchor='end' class='colType'>t</text> <use id='nn' x='1007' y='147' xlink:href='#nn'/><a xlink:href='#sys_dict_type.create_time'><text id='ry.sys_dict_type.create_time' x='1023' y='156'>create_time</text><title>create_time
  621 +* timestamp default CURRENT_TIMESTAMP
  622 +创建时间</title></a>
  623 +<text x='1107' y='153' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_dict_type.update_by'><text id='ry.sys_dict_type.update_by' x='1023' y='171'>update_by</text><title>update_by
  624 +varchar(64) default ''
  625 +更新者</title></a>
  626 +<text x='1107' y='168' text-anchor='end' class='colType'>t</text> <use id='nn' x='1007' y='177' xlink:href='#nn'/><a xlink:href='#sys_dict_type.update_time'><text id='ry.sys_dict_type.update_time' x='1023' y='186'>update_time</text><title>update_time
  627 +* timestamp default '0000-00-00 00:00:00'
  628 +更新时间</title></a>
  629 +<text x='1107' y='183' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_dict_type.remark'><text id='ry.sys_dict_type.remark' x='1023' y='201'>remark</text><title>remark
  630 +varchar(500) default ''
  631 +备注</title></a>
  632 +<text x='1107' y='198' text-anchor='end' class='colType'>t</text>
  633 +<!-- == Table 'sys_job' == -->
  634 +<rect class='entity' x='1545' y='38' width='135' height='225' rx='7' ry='7' style='stroke:none'/>
  635 +<path d='M 1545 64 L 1545 45 Q 1545 38 1552 38 L 1673 38 Q 1680 38 1680 45 L 1680 64 L1545 64 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  636 +<rect class='entity' x='1545' y='38' width='135' height='225' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  637 +<line class='delim' x1='1545' y1='64' x2='1680' y2='64' style='stroke:#6e675f'/>
  638 +<line class='delim' x1='1560' y1='64' x2='1560' y2='263' style='stroke:#6e675f'/>
  639 +<line class='delim' x1='1669' y1='64' x2='1669' y2='263' style='stroke:#6e675f'/>
  640 +<a xlink:href='#sys_job'><text x='1588' y='56'>sys_job</text><title>Table ry.sys_job</title></a>
  641 + <use id='nn' x='1547' y='72' xlink:href='#nn'/><a xlink:href='#sys_job.job_id'><use id='pk' x='1547' y='71' xlink:href='#pk'/><title>Pk pk_sys_job ( job_id, job_name, job_group ) </title></a>
  642 +<a xlink:href='#sys_job.job_id'><text id='ry.sys_job.job_id' x='1563' y='81'>job_id</text><title>job_id
  643 +* int
  644 +任务ID</title></a>
  645 +<text x='1677' y='78' text-anchor='end' class='colType'>#</text> <use id='nn' x='1547' y='87' xlink:href='#nn'/><a xlink:href='#sys_job.job_name'><use id='pk' x='1547' y='86' xlink:href='#pk'/><title>Pk pk_sys_job ( job_id, job_name, job_group ) </title></a>
  646 +<a xlink:href='#sys_job.job_name'><text id='ry.sys_job.job_name' x='1563' y='96'>job_name</text><title>job_name
  647 +* varchar(64) default ''
  648 +任务名称</title></a>
  649 +<text x='1677' y='93' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='102' xlink:href='#nn'/><a xlink:href='#sys_job.job_group'><use id='pk' x='1547' y='101' xlink:href='#pk'/><title>Pk pk_sys_job ( job_id, job_name, job_group ) </title></a>
  650 +<a xlink:href='#sys_job.job_group'><text id='ry.sys_job.job_group' x='1563' y='111'>job_group</text><title>job_group
  651 +* varchar(64) default ''
  652 +任务组名</title></a>
  653 +<text x='1677' y='108' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job.method_name'><text id='ry.sys_job.method_name' x='1563' y='126'>method_name</text><title>method_name
  654 +varchar(500) default ''
  655 +任务方法</title></a>
  656 +<text x='1677' y='123' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job.params'><text id='ry.sys_job.params' x='1563' y='141'>params</text><title>params
  657 +varchar(200) default ''
  658 +方法参数</title></a>
  659 +<text x='1677' y='138' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job.cron_expression'><text id='ry.sys_job.cron_expression' x='1563' y='156'>cron_expression</text><title>cron_expression
  660 +varchar(255) default ''
  661 +cron执行表达式</title></a>
  662 +<text x='1677' y='153' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job.status'><text id='ry.sys_job.status' x='1563' y='171'>status</text><title>status
  663 +int default 0
  664 +状态(0正常 1暂停)</title></a>
  665 +<text x='1677' y='168' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_job.create_by'><text id='ry.sys_job.create_by' x='1563' y='186'>create_by</text><title>create_by
  666 +varchar(64) default ''
  667 +创建者</title></a>
  668 +<text x='1677' y='183' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='192' xlink:href='#nn'/><a xlink:href='#sys_job.create_time'><text id='ry.sys_job.create_time' x='1563' y='201'>create_time</text><title>create_time
  669 +* timestamp default CURRENT_TIMESTAMP
  670 +创建时间</title></a>
  671 +<text x='1677' y='198' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_job.update_by'><text id='ry.sys_job.update_by' x='1563' y='216'>update_by</text><title>update_by
  672 +varchar(64) default ''
  673 +更新者</title></a>
  674 +<text x='1677' y='213' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='222' xlink:href='#nn'/><a xlink:href='#sys_job.update_time'><text id='ry.sys_job.update_time' x='1563' y='231'>update_time</text><title>update_time
  675 +* timestamp default '0000-00-00 00:00:00'
  676 +更新时间</title></a>
  677 +<text x='1677' y='228' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_job.remark'><text id='ry.sys_job.remark' x='1563' y='246'>remark</text><title>remark
  678 +varchar(500) default ''
  679 +备注信息</title></a>
  680 +<text x='1677' y='243' text-anchor='end' class='colType'>t</text>
  681 +<!-- == Table 'sys_job_log' == -->
  682 +<rect class='entity' x='1365' y='38' width='120' height='180' rx='7' ry='7' style='stroke:none'/>
  683 +<path d='M 1365 64 L 1365 45 Q 1365 38 1372 38 L 1478 38 Q 1485 38 1485 45 L 1485 64 L1365 64 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  684 +<rect class='entity' x='1365' y='38' width='120' height='180' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  685 +<line class='delim' x1='1365' y1='64' x2='1485' y2='64' style='stroke:#6e675f'/>
  686 +<line class='delim' x1='1380' y1='64' x2='1380' y2='218' style='stroke:#6e675f'/>
  687 +<line class='delim' x1='1474' y1='64' x2='1474' y2='218' style='stroke:#6e675f'/>
  688 +<a xlink:href='#sys_job_log'><text x='1389' y='56'>sys_job_log</text><title>Table ry.sys_job_log</title></a>
  689 + <use id='nn' x='1367' y='72' xlink:href='#nn'/><a xlink:href='#sys_job_log.job_log_id'><use id='pk' x='1367' y='71' xlink:href='#pk'/><title>Pk pk_sys_job_log ( job_log_id ) </title></a>
  690 +<a xlink:href='#sys_job_log.job_log_id'><text id='ry.sys_job_log.job_log_id' x='1383' y='81'>job_log_id</text><title>job_log_id
  691 +* int
  692 +任务日志ID</title></a>
  693 +<text x='1482' y='78' text-anchor='end' class='colType'>#</text> <use id='nn' x='1367' y='87' xlink:href='#nn'/><a xlink:href='#sys_job_log.job_name'><text id='ry.sys_job_log.job_name' x='1383' y='96'>job_name</text><title>job_name
  694 +* varchar(64)
  695 +任务名称</title></a>
  696 +<text x='1482' y='93' text-anchor='end' class='colType'>t</text> <use id='nn' x='1367' y='102' xlink:href='#nn'/><a xlink:href='#sys_job_log.job_group'><text id='ry.sys_job_log.job_group' x='1383' y='111'>job_group</text><title>job_group
  697 +* varchar(64)
  698 +任务组名</title></a>
  699 +<text x='1482' y='108' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job_log.method_name'><text id='ry.sys_job_log.method_name' x='1383' y='126'>method_name</text><title>method_name
  700 +varchar(500)
  701 +任务方法</title></a>
  702 +<text x='1482' y='123' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job_log.params'><text id='ry.sys_job_log.params' x='1383' y='141'>params</text><title>params
  703 +varchar(200) default ''
  704 +方法参数</title></a>
  705 +<text x='1482' y='138' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job_log.job_message'><text id='ry.sys_job_log.job_message' x='1383' y='156'>job_message</text><title>job_message
  706 +varchar(500)
  707 +日志信息</title></a>
  708 +<text x='1482' y='153' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_job_log.is_exception'><text id='ry.sys_job_log.is_exception' x='1383' y='171'>is_exception</text><title>is_exception
  709 +int default 0
  710 +是否异常</title></a>
  711 +<text x='1482' y='168' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_job_log.exception_info'><text id='ry.sys_job_log.exception_info' x='1383' y='186'>exception_info</text><title>exception_info
  712 +text
  713 +异常信息</title></a>
  714 +<text x='1482' y='183' text-anchor='end' class='colType'>t</text> <use id='nn' x='1367' y='192' xlink:href='#nn'/><a xlink:href='#sys_job_log.create_time'><text id='ry.sys_job_log.create_time' x='1383' y='201'>create_time</text><title>create_time
  715 +* timestamp default CURRENT_TIMESTAMP
  716 +创建时间</title></a>
  717 +<text x='1482' y='198' text-anchor='end' class='colType'>d</text>
  718 +<!-- == Table 'sys_logininfor' == -->
  719 +<rect class='entity' x='1740' y='323' width='105' height='165' rx='7' ry='7' style='stroke:none'/>
  720 +<path d='M 1740 349 L 1740 330 Q 1740 323 1747 323 L 1838 323 Q 1845 323 1845 330 L 1845 349 L1740 349 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  721 +<rect class='entity' x='1740' y='323' width='105' height='165' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  722 +<line class='delim' x1='1740' y1='349' x2='1845' y2='349' style='stroke:#6e675f'/>
  723 +<line class='delim' x1='1755' y1='349' x2='1755' y2='488' style='stroke:#6e675f'/>
  724 +<line class='delim' x1='1834' y1='349' x2='1834' y2='488' style='stroke:#6e675f'/>
  725 +<a xlink:href='#sys_logininfor'><text x='1747' y='341'>sys_logininfor</text><title>Table ry.sys_logininfor</title></a>
  726 + <use id='nn' x='1742' y='357' xlink:href='#nn'/><a xlink:href='#sys_logininfor.info_id'><use id='pk' x='1742' y='356' xlink:href='#pk'/><title>Pk pk_sys_logininfor ( info_id ) </title></a>
  727 +<a xlink:href='#sys_logininfor.info_id'><text id='ry.sys_logininfor.info_id' x='1758' y='366'>info_id</text><title>info_id
  728 +* int
  729 +访问ID</title></a>
  730 +<text x='1842' y='363' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_logininfor.login_name'><text id='ry.sys_logininfor.login_name' x='1758' y='381'>login_name</text><title>login_name
  731 +varchar(50) default ''
  732 +登录账号</title></a>
  733 +<text x='1842' y='378' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_logininfor.ipaddr'><text id='ry.sys_logininfor.ipaddr' x='1758' y='396'>ipaddr</text><title>ipaddr
  734 +varchar(50) default ''
  735 +登录IP地址</title></a>
  736 +<text x='1842' y='393' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_logininfor.browser'><text id='ry.sys_logininfor.browser' x='1758' y='411'>browser</text><title>browser
  737 +varchar(50) default ''
  738 +浏览器类型</title></a>
  739 +<text x='1842' y='408' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_logininfor.os'><text id='ry.sys_logininfor.os' x='1758' y='426'>os</text><title>os
  740 +varchar(50) default ''
  741 +操作系统</title></a>
  742 +<text x='1842' y='423' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_logininfor.status'><text id='ry.sys_logininfor.status' x='1758' y='441'>status</text><title>status
  743 +int default 0
  744 +登录状态 0成功 1失败</title></a>
  745 +<text x='1842' y='438' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_logininfor.msg'><text id='ry.sys_logininfor.msg' x='1758' y='456'>msg</text><title>msg
  746 +varchar(255) default ''
  747 +提示消息</title></a>
  748 +<text x='1842' y='453' text-anchor='end' class='colType'>t</text> <use id='nn' x='1742' y='462' xlink:href='#nn'/><a xlink:href='#sys_logininfor.login_time'><text id='ry.sys_logininfor.login_time' x='1758' y='471'>login_time</text><title>login_time
  749 +* timestamp default CURRENT_TIMESTAMP
  750 +访问时间</title></a>
  751 +<text x='1842' y='468' text-anchor='end' class='colType'>d</text>
  752 +<!-- == Table 'sys_menu' == -->
  753 +<rect class='entity' x='1380' y='323' width='105' height='255' rx='7' ry='7' style='stroke:none'/>
  754 +<path d='M 1380 349 L 1380 330 Q 1380 323 1387 323 L 1478 323 Q 1485 323 1485 330 L 1485 349 L1380 349 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  755 +<rect class='entity' x='1380' y='323' width='105' height='255' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  756 +<line class='delim' x1='1380' y1='349' x2='1485' y2='349' style='stroke:#6e675f'/>
  757 +<line class='delim' x1='1395' y1='349' x2='1395' y2='578' style='stroke:#6e675f'/>
  758 +<line class='delim' x1='1474' y1='349' x2='1474' y2='578' style='stroke:#6e675f'/>
  759 +<a xlink:href='#sys_menu'><text x='1405' y='341'>sys_menu</text><title>Table ry.sys_menu</title></a>
  760 + <use id='nn' x='1382' y='357' xlink:href='#nn'/><a xlink:href='#sys_menu.menu_id'><use id='pk' x='1382' y='356' xlink:href='#pk'/><title>Pk pk_sys_menu ( menu_id ) </title></a>
  761 +<a xlink:href='#sys_menu.menu_id'><text id='ry.sys_menu.menu_id' x='1398' y='366'>menu_id</text><title>menu_id
  762 +* int
  763 +菜单ID</title></a>
  764 +<text x='1482' y='363' text-anchor='end' class='colType'>#</text> <use id='nn' x='1382' y='372' xlink:href='#nn'/><a xlink:href='#sys_menu.menu_name'><text id='ry.sys_menu.menu_name' x='1398' y='381'>menu_name</text><title>menu_name
  765 +* varchar(50)
  766 +菜单名称</title></a>
  767 +<text x='1482' y='378' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_menu.parent_id'><text id='ry.sys_menu.parent_id' x='1398' y='396'>parent_id</text><title>parent_id
  768 +int default 0
  769 +父菜单ID</title></a>
  770 +<text x='1482' y='393' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_menu.order_num'><text id='ry.sys_menu.order_num' x='1398' y='411'>order_num</text><title>order_num
  771 +int
  772 +显示顺序</title></a>
  773 +<text x='1482' y='408' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_menu.url'><text id='ry.sys_menu.url' x='1398' y='426'>url</text><title>url
  774 +varchar(200) default ''
  775 +请求地址</title></a>
  776 +<text x='1482' y='423' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_menu.menu_type'><text id='ry.sys_menu.menu_type' x='1398' y='441'>menu_type</text><title>menu_type
  777 +char(1) default ''
  778 +类型:M目录,C菜单,F按钮</title></a>
  779 +<text x='1482' y='438' text-anchor='end' class='colType'>c</text> <a xlink:href='#sys_menu.visible'><text id='ry.sys_menu.visible' x='1398' y='456'>visible</text><title>visible
  780 +int default 0
  781 +菜单状态:0显示,1隐藏</title></a>
  782 +<text x='1482' y='453' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_menu.perms'><text id='ry.sys_menu.perms' x='1398' y='471'>perms</text><title>perms
  783 +varchar(100) default ''
  784 +权限标识</title></a>
  785 +<text x='1482' y='468' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_menu.icon'><text id='ry.sys_menu.icon' x='1398' y='486'>icon</text><title>icon
  786 +varchar(100) default ''
  787 +菜单图标</title></a>
  788 +<text x='1482' y='483' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_menu.create_by'><text id='ry.sys_menu.create_by' x='1398' y='501'>create_by</text><title>create_by
  789 +varchar(64) default ''
  790 +创建者</title></a>
  791 +<text x='1482' y='498' text-anchor='end' class='colType'>t</text> <use id='nn' x='1382' y='507' xlink:href='#nn'/><a xlink:href='#sys_menu.create_time'><text id='ry.sys_menu.create_time' x='1398' y='516'>create_time</text><title>create_time
  792 +* timestamp default CURRENT_TIMESTAMP
  793 +创建时间</title></a>
  794 +<text x='1482' y='513' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_menu.update_by'><text id='ry.sys_menu.update_by' x='1398' y='531'>update_by</text><title>update_by
  795 +varchar(64) default ''
  796 +更新者</title></a>
  797 +<text x='1482' y='528' text-anchor='end' class='colType'>t</text> <use id='nn' x='1382' y='537' xlink:href='#nn'/><a xlink:href='#sys_menu.update_time'><text id='ry.sys_menu.update_time' x='1398' y='546'>update_time</text><title>update_time
  798 +* timestamp default '0000-00-00 00:00:00'
  799 +更新时间</title></a>
  800 +<text x='1482' y='543' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_menu.remark'><text id='ry.sys_menu.remark' x='1398' y='561'>remark</text><title>remark
  801 +varchar(500) default ''
  802 +备注</title></a>
  803 +<text x='1482' y='558' text-anchor='end' class='colType'>t</text>
  804 +<!-- == Table 'sys_oper_log' == -->
  805 +<rect class='entity' x='1005' y='278' width='105' height='240' rx='7' ry='7' style='stroke:none'/>
  806 +<path d='M 1005 304 L 1005 285 Q 1005 278 1012 278 L 1103 278 Q 1110 278 1110 285 L 1110 304 L1005 304 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  807 +<rect class='entity' x='1005' y='278' width='105' height='240' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  808 +<line class='delim' x1='1005' y1='304' x2='1110' y2='304' style='stroke:#626e5f'/>
  809 +<line class='delim' x1='1020' y1='304' x2='1020' y2='518' style='stroke:#626e5f'/>
  810 +<line class='delim' x1='1099' y1='304' x2='1099' y2='518' style='stroke:#626e5f'/>
  811 +<a xlink:href='#sys_oper_log'><text x='1018' y='296'>sys_oper_log</text><title>Table ry.sys_oper_log</title></a>
  812 + <use id='nn' x='1007' y='312' xlink:href='#nn'/><a xlink:href='#sys_oper_log.oper_id'><use id='pk' x='1007' y='311' xlink:href='#pk'/><title>Pk pk_sys_oper_log ( oper_id ) </title></a>
  813 +<a xlink:href='#sys_oper_log.oper_id'><text id='ry.sys_oper_log.oper_id' x='1023' y='321'>oper_id</text><title>oper_id
  814 +* int
  815 +日志主键</title></a>
  816 +<text x='1107' y='318' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_oper_log.title'><text id='ry.sys_oper_log.title' x='1023' y='336'>title</text><title>title
  817 +varchar(50) default ''
  818 +模块标题</title></a>
  819 +<text x='1107' y='333' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.action'><text id='ry.sys_oper_log.action' x='1023' y='351'>action</text><title>action
  820 +varchar(100) default ''
  821 +功能请求</title></a>
  822 +<text x='1107' y='348' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.method'><text id='ry.sys_oper_log.method' x='1023' y='366'>method</text><title>method
  823 +varchar(100) default ''
  824 +方法名称</title></a>
  825 +<text x='1107' y='363' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.channel'><text id='ry.sys_oper_log.channel' x='1023' y='381'>channel</text><title>channel
  826 +varchar(20) default ''
  827 +来源渠道</title></a>
  828 +<text x='1107' y='378' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.login_name'><text id='ry.sys_oper_log.login_name' x='1023' y='396'>login_name</text><title>login_name
  829 +varchar(50) default ''
  830 +登录账号</title></a>
  831 +<text x='1107' y='393' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.dept_name'><text id='ry.sys_oper_log.dept_name' x='1023' y='411'>dept_name</text><title>dept_name
  832 +varchar(50) default ''
  833 +部门名称</title></a>
  834 +<text x='1107' y='408' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.oper_url'><text id='ry.sys_oper_log.oper_url' x='1023' y='426'>oper_url</text><title>oper_url
  835 +varchar(255) default ''
  836 +请求URL</title></a>
  837 +<text x='1107' y='423' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.oper_ip'><text id='ry.sys_oper_log.oper_ip' x='1023' y='441'>oper_ip</text><title>oper_ip
  838 +varchar(30) default ''
  839 +主机地址</title></a>
  840 +<text x='1107' y='438' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.oper_param'><text id='ry.sys_oper_log.oper_param' x='1023' y='456'>oper_param</text><title>oper_param
  841 +varchar(255) default ''
  842 +请求参数</title></a>
  843 +<text x='1107' y='453' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_oper_log.status'><text id='ry.sys_oper_log.status' x='1023' y='471'>status</text><title>status
  844 +int default 0
  845 +操作状态 0正常 1异常</title></a>
  846 +<text x='1107' y='468' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_oper_log.error_msg'><text id='ry.sys_oper_log.error_msg' x='1023' y='486'>error_msg</text><title>error_msg
  847 +varchar(2000) default ''
  848 +错误消息</title></a>
  849 +<text x='1107' y='483' text-anchor='end' class='colType'>t</text> <use id='nn' x='1007' y='492' xlink:href='#nn'/><a xlink:href='#sys_oper_log.oper_time'><text id='ry.sys_oper_log.oper_time' x='1023' y='501'>oper_time</text><title>oper_time
  850 +* timestamp default CURRENT_TIMESTAMP
  851 +操作时间</title></a>
  852 +<text x='1107' y='498' text-anchor='end' class='colType'>d</text>
  853 +<!-- == Table 'sys_post' == -->
  854 +<rect class='entity' x='1740' y='38' width='105' height='195' rx='7' ry='7' style='stroke:none'/>
  855 +<path d='M 1740 64 L 1740 45 Q 1740 38 1747 38 L 1838 38 Q 1845 38 1845 45 L 1845 64 L1740 64 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  856 +<rect class='entity' x='1740' y='38' width='105' height='195' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  857 +<line class='delim' x1='1740' y1='64' x2='1845' y2='64' style='stroke:#6e675f'/>
  858 +<line class='delim' x1='1755' y1='64' x2='1755' y2='233' style='stroke:#6e675f'/>
  859 +<line class='delim' x1='1834' y1='64' x2='1834' y2='233' style='stroke:#6e675f'/>
  860 +<a xlink:href='#sys_post'><text x='1765' y='56'>sys_post</text><title>Table ry.sys_post</title></a>
  861 + <use id='nn' x='1742' y='72' xlink:href='#nn'/><a xlink:href='#sys_post.post_id'><use id='pk' x='1742' y='71' xlink:href='#pk'/><title>Pk pk_sys_post ( post_id ) </title></a>
  862 +<a xlink:href='#sys_post.post_id'><text id='ry.sys_post.post_id' x='1758' y='81'>post_id</text><title>post_id
  863 +* int
  864 +岗位ID</title></a>
  865 +<text x='1842' y='78' text-anchor='end' class='colType'>#</text> <use id='nn' x='1742' y='87' xlink:href='#nn'/><a xlink:href='#sys_post.post_code'><text id='ry.sys_post.post_code' x='1758' y='96'>post_code</text><title>post_code
  866 +* varchar(64)
  867 +岗位编码</title></a>
  868 +<text x='1842' y='93' text-anchor='end' class='colType'>t</text> <use id='nn' x='1742' y='102' xlink:href='#nn'/><a xlink:href='#sys_post.post_name'><text id='ry.sys_post.post_name' x='1758' y='111'>post_name</text><title>post_name
  869 +* varchar(100)
  870 +岗位名称</title></a>
  871 +<text x='1842' y='108' text-anchor='end' class='colType'>t</text> <use id='nn' x='1742' y='117' xlink:href='#nn'/><a xlink:href='#sys_post.post_sort'><text id='ry.sys_post.post_sort' x='1758' y='126'>post_sort</text><title>post_sort
  872 +* int
  873 +显示顺序</title></a>
  874 +<text x='1842' y='123' text-anchor='end' class='colType'>#</text> <use id='nn' x='1742' y='132' xlink:href='#nn'/><a xlink:href='#sys_post.status'><text id='ry.sys_post.status' x='1758' y='141'>status</text><title>status
  875 +* int
  876 +状态(0正常 1停用)</title></a>
  877 +<text x='1842' y='138' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_post.create_by'><text id='ry.sys_post.create_by' x='1758' y='156'>create_by</text><title>create_by
  878 +varchar(64) default ''
  879 +创建者</title></a>
  880 +<text x='1842' y='153' text-anchor='end' class='colType'>t</text> <use id='nn' x='1742' y='162' xlink:href='#nn'/><a xlink:href='#sys_post.create_time'><text id='ry.sys_post.create_time' x='1758' y='171'>create_time</text><title>create_time
  881 +* timestamp default CURRENT_TIMESTAMP
  882 +创建时间</title></a>
  883 +<text x='1842' y='168' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_post.update_by'><text id='ry.sys_post.update_by' x='1758' y='186'>update_by</text><title>update_by
  884 +varchar(64) default ''
  885 +更新者</title></a>
  886 +<text x='1842' y='183' text-anchor='end' class='colType'>t</text> <use id='nn' x='1742' y='192' xlink:href='#nn'/><a xlink:href='#sys_post.update_time'><text id='ry.sys_post.update_time' x='1758' y='201'>update_time</text><title>update_time
  887 +* timestamp default '0000-00-00 00:00:00'
  888 +更新时间</title></a>
  889 +<text x='1842' y='198' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_post.remark'><text id='ry.sys_post.remark' x='1758' y='216'>remark</text><title>remark
  890 +varchar(500) default ''
  891 +备注</title></a>
  892 +<text x='1842' y='213' text-anchor='end' class='colType'>t</text>
  893 +<!-- == Table 'sys_role' == -->
  894 +<rect class='entity' x='1545' y='458' width='105' height='195' rx='7' ry='7' style='stroke:none'/>
  895 +<path d='M 1545 484 L 1545 465 Q 1545 458 1552 458 L 1643 458 Q 1650 458 1650 465 L 1650 484 L1545 484 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  896 +<rect class='entity' x='1545' y='458' width='105' height='195' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  897 +<line class='delim' x1='1545' y1='484' x2='1650' y2='484' style='stroke:#6e675f'/>
  898 +<line class='delim' x1='1560' y1='484' x2='1560' y2='653' style='stroke:#6e675f'/>
  899 +<line class='delim' x1='1639' y1='484' x2='1639' y2='653' style='stroke:#6e675f'/>
  900 +<a xlink:href='#sys_role'><text x='1570' y='476'>sys_role</text><title>Table ry.sys_role</title></a>
  901 + <use id='nn' x='1547' y='492' xlink:href='#nn'/><a xlink:href='#sys_role.role_id'><use id='pk' x='1547' y='491' xlink:href='#pk'/><title>Pk pk_sys_role ( role_id ) </title></a>
  902 +<a xlink:href='#sys_role.role_id'><text id='ry.sys_role.role_id' x='1563' y='501'>role_id</text><title>role_id
  903 +* int
  904 +角色ID</title></a>
  905 +<text x='1647' y='498' text-anchor='end' class='colType'>#</text> <use id='nn' x='1547' y='507' xlink:href='#nn'/><a xlink:href='#sys_role.role_name'><text id='ry.sys_role.role_name' x='1563' y='516'>role_name</text><title>role_name
  906 +* varchar(30)
  907 +角色名称</title></a>
  908 +<text x='1647' y='513' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='522' xlink:href='#nn'/><a xlink:href='#sys_role.role_key'><text id='ry.sys_role.role_key' x='1563' y='531'>role_key</text><title>role_key
  909 +* varchar(100)
  910 +角色权限字符串</title></a>
  911 +<text x='1647' y='528' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='537' xlink:href='#nn'/><a xlink:href='#sys_role.role_sort'><text id='ry.sys_role.role_sort' x='1563' y='546'>role_sort</text><title>role_sort
  912 +* int
  913 +显示顺序</title></a>
  914 +<text x='1647' y='543' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_role.status'><text id='ry.sys_role.status' x='1563' y='561'>status</text><title>status
  915 +int default 0
  916 +角色状态:0正常,1禁用</title></a>
  917 +<text x='1647' y='558' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_role.create_by'><text id='ry.sys_role.create_by' x='1563' y='576'>create_by</text><title>create_by
  918 +varchar(64) default ''
  919 +创建者</title></a>
  920 +<text x='1647' y='573' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='582' xlink:href='#nn'/><a xlink:href='#sys_role.create_time'><text id='ry.sys_role.create_time' x='1563' y='591'>create_time</text><title>create_time
  921 +* timestamp default CURRENT_TIMESTAMP
  922 +创建时间</title></a>
  923 +<text x='1647' y='588' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_role.update_by'><text id='ry.sys_role.update_by' x='1563' y='606'>update_by</text><title>update_by
  924 +varchar(64) default ''
  925 +更新者</title></a>
  926 +<text x='1647' y='603' text-anchor='end' class='colType'>t</text> <use id='nn' x='1547' y='612' xlink:href='#nn'/><a xlink:href='#sys_role.update_time'><text id='ry.sys_role.update_time' x='1563' y='621'>update_time</text><title>update_time
  927 +* timestamp default '0000-00-00 00:00:00'
  928 +更新时间</title></a>
  929 +<text x='1647' y='618' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_role.remark'><text id='ry.sys_role.remark' x='1563' y='636'>remark</text><title>remark
  930 +varchar(500) default ''
  931 +备注</title></a>
  932 +<text x='1647' y='633' text-anchor='end' class='colType'>t</text>
  933 +<!-- == Table 'sys_role_menu' == -->
  934 +<rect class='entity' x='1545' y='323' width='90' height='75' rx='7' ry='7' style='stroke:none'/>
  935 +<path d='M 1545 349 L 1545 330 Q 1545 323 1552 323 L 1628 323 Q 1635 323 1635 330 L 1635 349 L1545 349 ' style='fill:url(#tbg_f5ddbf);stroke:1;stroke-opacity:0.1;' />
  936 +<rect class='entity' x='1545' y='323' width='90' height='75' rx='7' ry='7' style='fill:none;stroke:#6e675f'/>
  937 +<line class='delim' x1='1545' y1='349' x2='1635' y2='349' style='stroke:#6e675f'/>
  938 +<line class='delim' x1='1560' y1='349' x2='1560' y2='398' style='stroke:#6e675f'/>
  939 +<line class='delim' x1='1624' y1='349' x2='1624' y2='398' style='stroke:#6e675f'/>
  940 +<a xlink:href='#sys_role_menu'><text x='1548' y='341'>sys_role_menu</text><title>Table ry.sys_role_menu</title></a>
  941 + <use id='nn' x='1547' y='357' xlink:href='#nn'/><a xlink:href='#sys_role_menu.role_id'><use id='pk' x='1547' y='356' xlink:href='#pk'/><title>Pk pk_sys_role_menu ( role_id, menu_id ) </title></a>
  942 +<a xlink:href='#sys_role_menu.role_id'><text id='ry.sys_role_menu.role_id' x='1563' y='366'>role_id</text><title>role_id
  943 +* int
  944 +角色ID</title></a>
  945 +<text x='1632' y='363' text-anchor='end' class='colType'>#</text> <use id='nn' x='1547' y='372' xlink:href='#nn'/><a xlink:href='#sys_role_menu.menu_id'><use id='pk' x='1547' y='371' xlink:href='#pk'/><title>Pk pk_sys_role_menu ( role_id, menu_id ) </title></a>
  946 +<a xlink:href='#sys_role_menu.menu_id'><text id='ry.sys_role_menu.menu_id' x='1563' y='381'>menu_id</text><title>menu_id
  947 +* int
  948 +菜单ID</title></a>
  949 +<text x='1632' y='378' text-anchor='end' class='colType'>#</text>
  950 +<!-- == Table 'sys_user' == -->
  951 +<rect class='entity' x='690' y='83' width='105' height='270' rx='7' ry='7' style='stroke:none'/>
  952 +<path d='M 690 109 L 690 90 Q 690 83 697 83 L 788 83 Q 795 83 795 90 L 795 109 L690 109 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  953 +<rect class='entity' x='690' y='83' width='105' height='270' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  954 +<line class='delim' x1='690' y1='109' x2='795' y2='109' style='stroke:#626e5f'/>
  955 +<line class='delim' x1='705' y1='109' x2='705' y2='353' style='stroke:#626e5f'/>
  956 +<line class='delim' x1='784' y1='109' x2='784' y2='353' style='stroke:#626e5f'/>
  957 +<a xlink:href='#sys_user'><text x='715' y='101'>sys_user</text><title>Table ry.sys_user</title></a>
  958 + <use id='nn' x='692' y='117' xlink:href='#nn'/><a xlink:href='#sys_user.user_id'><use id='pk' x='692' y='116' xlink:href='#pk'/><title>Pk pk_sys_user ( user_id ) </title></a>
  959 +<a xlink:href='#sys_user.user_id'><text id='ry.sys_user.user_id' x='708' y='126'>user_id</text><title>user_id
  960 +* int
  961 +用户ID</title></a>
  962 +<text x='792' y='123' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_user.dept_id'><text id='ry.sys_user.dept_id' x='708' y='141'>dept_id</text><title>dept_id
  963 +int
  964 +部门ID</title></a>
  965 +<text x='792' y='138' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_user.login_name'><text id='ry.sys_user.login_name' x='708' y='156'>login_name</text><title>login_name
  966 +varchar(30) default ''
  967 +登录账号</title></a>
  968 +<text x='792' y='153' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.user_name'><text id='ry.sys_user.user_name' x='708' y='171'>user_name</text><title>user_name
  969 +varchar(30) default ''
  970 +用户昵称</title></a>
  971 +<text x='792' y='168' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.email'><text id='ry.sys_user.email' x='708' y='186'>email</text><title>email
  972 +varchar(100) default ''
  973 +用户邮箱</title></a>
  974 +<text x='792' y='183' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.phonenumber'><text id='ry.sys_user.phonenumber' x='708' y='201'>phonenumber</text><title>phonenumber
  975 +varchar(20) default ''
  976 +手机号码</title></a>
  977 +<text x='792' y='198' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.password'><text id='ry.sys_user.password' x='708' y='216'>password</text><title>password
  978 +varchar(100) default ''
  979 +密码</title></a>
  980 +<text x='792' y='213' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.salt'><text id='ry.sys_user.salt' x='708' y='231'>salt</text><title>salt
  981 +varchar(100) default ''
  982 +盐加密</title></a>
  983 +<text x='792' y='228' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.user_type'><text id='ry.sys_user.user_type' x='708' y='246'>user_type</text><title>user_type
  984 +char(1) default 'N'
  985 +类型:Y默认用户,N非默认用户</title></a>
  986 +<text x='792' y='243' text-anchor='end' class='colType'>c</text> <a xlink:href='#sys_user.status'><text id='ry.sys_user.status' x='708' y='261'>status</text><title>status
  987 +int default 0
  988 +帐号状态:0正常,1禁用</title></a>
  989 +<text x='792' y='258' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_user.refuse_des'><text id='ry.sys_user.refuse_des' x='708' y='276'>refuse_des</text><title>refuse_des
  990 +varchar(500) default ''
  991 +拒绝登录描述</title></a>
  992 +<text x='792' y='273' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user.create_by'><text id='ry.sys_user.create_by' x='708' y='291'>create_by</text><title>create_by
  993 +varchar(64) default ''
  994 +创建者</title></a>
  995 +<text x='792' y='288' text-anchor='end' class='colType'>t</text> <use id='nn' x='692' y='297' xlink:href='#nn'/><a xlink:href='#sys_user.create_time'><text id='ry.sys_user.create_time' x='708' y='306'>create_time</text><title>create_time
  996 +* timestamp default CURRENT_TIMESTAMP
  997 +创建时间</title></a>
  998 +<text x='792' y='303' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_user.update_by'><text id='ry.sys_user.update_by' x='708' y='321'>update_by</text><title>update_by
  999 +varchar(64) default ''
  1000 +更新者</title></a>
  1001 +<text x='792' y='318' text-anchor='end' class='colType'>t</text> <use id='nn' x='692' y='327' xlink:href='#nn'/><a xlink:href='#sys_user.update_time'><text id='ry.sys_user.update_time' x='708' y='336'>update_time</text><title>update_time
  1002 +* timestamp default '0000-00-00 00:00:00'
  1003 +更新时间</title></a>
  1004 +<text x='792' y='333' text-anchor='end' class='colType'>d</text>
  1005 +<!-- == Table 'sys_user_online' == -->
  1006 +<rect class='entity' x='660' y='413' width='135' height='195' rx='7' ry='7' style='stroke:none'/>
  1007 +<path d='M 660 439 L 660 420 Q 660 413 667 413 L 788 413 Q 795 413 795 420 L 795 439 L660 439 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  1008 +<rect class='entity' x='660' y='413' width='135' height='195' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  1009 +<line class='delim' x1='660' y1='439' x2='795' y2='439' style='stroke:#626e5f'/>
  1010 +<line class='delim' x1='675' y1='439' x2='675' y2='608' style='stroke:#626e5f'/>
  1011 +<line class='delim' x1='784' y1='439' x2='784' y2='608' style='stroke:#626e5f'/>
  1012 +<a xlink:href='#sys_user_online'><text x='679' y='431'>sys_user_online</text><title>Table ry.sys_user_online</title></a>
  1013 + <use id='nn' x='662' y='447' xlink:href='#nn'/><a xlink:href='#sys_user_online.sessionId'><use id='pk' x='662' y='446' xlink:href='#pk'/><title>Pk pk_sys_user_online ( sessionId ) </title></a>
  1014 +<a xlink:href='#sys_user_online.sessionId'><text id='ry.sys_user_online.sessionId' x='678' y='456'>sessionId</text><title>sessionId
  1015 +* varchar(50) default ''
  1016 +用户会话id</title></a>
  1017 +<text x='792' y='453' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.login_name'><text id='ry.sys_user_online.login_name' x='678' y='471'>login_name</text><title>login_name
  1018 +varchar(50) default ''
  1019 +登录账号</title></a>
  1020 +<text x='792' y='468' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.dept_name'><text id='ry.sys_user_online.dept_name' x='678' y='486'>dept_name</text><title>dept_name
  1021 +varchar(50) default ''
  1022 +部门名称</title></a>
  1023 +<text x='792' y='483' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.ipaddr'><text id='ry.sys_user_online.ipaddr' x='678' y='501'>ipaddr</text><title>ipaddr
  1024 +varchar(50) default ''
  1025 +登录IP地址</title></a>
  1026 +<text x='792' y='498' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.browser'><text id='ry.sys_user_online.browser' x='678' y='516'>browser</text><title>browser
  1027 +varchar(50) default ''
  1028 +浏览器类型</title></a>
  1029 +<text x='792' y='513' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.os'><text id='ry.sys_user_online.os' x='678' y='531'>os</text><title>os
  1030 +varchar(50) default ''
  1031 +操作系统</title></a>
  1032 +<text x='792' y='528' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_user_online.status'><text id='ry.sys_user_online.status' x='678' y='546'>status</text><title>status
  1033 +varchar(10) default ''
  1034 +在线状态on_line在线off_line离线</title></a>
  1035 +<text x='792' y='543' text-anchor='end' class='colType'>t</text> <use id='nn' x='662' y='552' xlink:href='#nn'/><a xlink:href='#sys_user_online.start_timestamp'><text id='ry.sys_user_online.start_timestamp' x='678' y='561'>start_timestamp</text><title>start_timestamp
  1036 +* timestamp default CURRENT_TIMESTAMP
  1037 +session创建时间</title></a>
  1038 +<text x='792' y='558' text-anchor='end' class='colType'>d</text> <use id='nn' x='662' y='567' xlink:href='#nn'/><a xlink:href='#sys_user_online.last_access_time'><text id='ry.sys_user_online.last_access_time' x='678' y='576'>last_access_time</text><title>last_access_time
  1039 +* timestamp default '0000-00-00 00:00:00'
  1040 +session最后访问时间</title></a>
  1041 +<text x='792' y='573' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_user_online.expire_time'><text id='ry.sys_user_online.expire_time' x='678' y='591'>expire_time</text><title>expire_time
  1042 +int default 0
  1043 +超时时间,单位为分钟</title></a>
  1044 +<text x='792' y='588' text-anchor='end' class='colType'>#</text>
  1045 +<!-- == Table 'sys_user_post' == -->
  1046 +<rect class='entity' x='855' y='413' width='90' height='75' rx='7' ry='7' style='stroke:none'/>
  1047 +<path d='M 855 439 L 855 420 Q 855 413 862 413 L 938 413 Q 945 413 945 420 L 945 439 L855 439 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  1048 +<rect class='entity' x='855' y='413' width='90' height='75' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  1049 +<line class='delim' x1='855' y1='439' x2='945' y2='439' style='stroke:#626e5f'/>
  1050 +<line class='delim' x1='870' y1='439' x2='870' y2='488' style='stroke:#626e5f'/>
  1051 +<line class='delim' x1='934' y1='439' x2='934' y2='488' style='stroke:#626e5f'/>
  1052 +<a xlink:href='#sys_user_post'><text x='858' y='431'>sys_user_post</text><title>Table ry.sys_user_post</title></a>
  1053 + <use id='nn' x='857' y='447' xlink:href='#nn'/><a xlink:href='#sys_user_post.user_id'><use id='pk' x='857' y='446' xlink:href='#pk'/><title>Pk pk_sys_user_post ( user_id, post_id ) </title></a>
  1054 +<a xlink:href='#sys_user_post.user_id'><text id='ry.sys_user_post.user_id' x='873' y='456'>user_id</text><title>user_id
  1055 +* varchar(64)
  1056 +用户ID</title></a>
  1057 +<text x='942' y='453' text-anchor='end' class='colType'>t</text> <use id='nn' x='857' y='462' xlink:href='#nn'/><a xlink:href='#sys_user_post.post_id'><use id='pk' x='857' y='461' xlink:href='#pk'/><title>Pk pk_sys_user_post ( user_id, post_id ) </title></a>
  1058 +<a xlink:href='#sys_user_post.post_id'><text id='ry.sys_user_post.post_id' x='873' y='471'>post_id</text><title>post_id
  1059 +* varchar(64)
  1060 +岗位ID</title></a>
  1061 +<text x='942' y='468' text-anchor='end' class='colType'>t</text>
  1062 +<!-- == Table 'sys_user_role' == -->
  1063 +<rect class='entity' x='855' y='278' width='90' height='75' rx='7' ry='7' style='stroke:none'/>
  1064 +<path d='M 855 304 L 855 285 Q 855 278 862 278 L 938 278 Q 945 278 945 285 L 945 304 L855 304 ' style='fill:url(#tbg_c8f5bf);stroke:1;stroke-opacity:0.1;' />
  1065 +<rect class='entity' x='855' y='278' width='90' height='75' rx='7' ry='7' style='fill:none;stroke:#626e5f'/>
  1066 +<line class='delim' x1='855' y1='304' x2='945' y2='304' style='stroke:#626e5f'/>
  1067 +<line class='delim' x1='870' y1='304' x2='870' y2='353' style='stroke:#626e5f'/>
  1068 +<line class='delim' x1='934' y1='304' x2='934' y2='353' style='stroke:#626e5f'/>
  1069 +<a xlink:href='#sys_user_role'><text x='858' y='296'>sys_user_role</text><title>Table ry.sys_user_role</title></a>
  1070 + <use id='nn' x='857' y='312' xlink:href='#nn'/><a xlink:href='#sys_user_role.user_id'><use id='pk' x='857' y='311' xlink:href='#pk'/><title>Pk pk_sys_user_role ( user_id, role_id ) </title></a>
  1071 +<a xlink:href='#sys_user_role.user_id'><text id='ry.sys_user_role.user_id' x='873' y='321'>user_id</text><title>user_id
  1072 +* int
  1073 +用户ID</title></a>
  1074 +<text x='942' y='318' text-anchor='end' class='colType'>#</text> <use id='nn' x='857' y='327' xlink:href='#nn'/><a xlink:href='#sys_user_role.role_id'><use id='pk' x='857' y='326' xlink:href='#pk'/><title>Pk pk_sys_user_role ( user_id, role_id ) </title></a>
  1075 +<a xlink:href='#sys_user_role.role_id'><text id='ry.sys_user_role.role_id' x='873' y='336'>role_id</text><title>role_id
  1076 +* int
  1077 +角色ID</title></a>
  1078 +<text x='942' y='333' text-anchor='end' class='colType'>#</text>
  1079 +<!-- == Table 'sys_dept' == -->
  1080 +<rect class='entity' x='645' y='713' width='105' height='225' rx='7' ry='7' style='stroke:none'/>
  1081 +<path d='M 645 739 L 645 720 Q 645 713 652 713 L 743 713 Q 750 713 750 720 L 750 739 L645 739 ' style='fill:url(#tbg_bfbff5);stroke:1;stroke-opacity:0.1;' />
  1082 +<rect class='entity' x='645' y='713' width='105' height='225' rx='7' ry='7' style='fill:none;stroke:#5f5f6e'/>
  1083 +<line class='delim' x1='645' y1='739' x2='750' y2='739' style='stroke:#5f5f6e'/>
  1084 +<line class='delim' x1='660' y1='739' x2='660' y2='938' style='stroke:#5f5f6e'/>
  1085 +<line class='delim' x1='739' y1='739' x2='739' y2='938' style='stroke:#5f5f6e'/>
  1086 +<a xlink:href='#sys_dept'><text x='670' y='731'>sys_dept</text><title>Table ry.sys_dept</title></a>
  1087 + <use id='nn' x='647' y='747' xlink:href='#nn'/><a xlink:href='#sys_dept.dept_id'><use id='pk' x='647' y='746' xlink:href='#pk'/><title>Pk pk_sys_dept ( dept_id ) </title></a>
  1088 +<a xlink:href='#sys_dept.dept_id'><text id='ry.sys_dept.dept_id' x='663' y='756'>dept_id</text><title>dept_id
  1089 +* int
  1090 +部门id</title></a>
  1091 +<text x='747' y='753' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dept.parent_id'><text id='ry.sys_dept.parent_id' x='663' y='771'>parent_id</text><title>parent_id
  1092 +int default 0
  1093 +父部门id</title></a>
  1094 +<text x='747' y='768' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dept.dept_name'><text id='ry.sys_dept.dept_name' x='663' y='786'>dept_name</text><title>dept_name
  1095 +varchar(30) default ''
  1096 +部门名称</title></a>
  1097 +<text x='747' y='783' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dept.order_num'><text id='ry.sys_dept.order_num' x='663' y='801'>order_num</text><title>order_num
  1098 +int default 0
  1099 +显示顺序</title></a>
  1100 +<text x='747' y='798' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dept.leader'><text id='ry.sys_dept.leader' x='663' y='816'>leader</text><title>leader
  1101 +varchar(20) default ''
  1102 +负责人</title></a>
  1103 +<text x='747' y='813' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dept.phone'><text id='ry.sys_dept.phone' x='663' y='831'>phone</text><title>phone
  1104 +varchar(20) default ''
  1105 +联系电话</title></a>
  1106 +<text x='747' y='828' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dept.email'><text id='ry.sys_dept.email' x='663' y='846'>email</text><title>email
  1107 +varchar(20) default ''
  1108 +邮箱</title></a>
  1109 +<text x='747' y='843' text-anchor='end' class='colType'>t</text> <a xlink:href='#sys_dept.status'><text id='ry.sys_dept.status' x='663' y='861'>status</text><title>status
  1110 +int default 0
  1111 +部门状态:0正常,1停用</title></a>
  1112 +<text x='747' y='858' text-anchor='end' class='colType'>#</text> <a xlink:href='#sys_dept.create_by'><text id='ry.sys_dept.create_by' x='663' y='876'>create_by</text><title>create_by
  1113 +varchar(64) default ''
  1114 +创建者</title></a>
  1115 +<text x='747' y='873' text-anchor='end' class='colType'>t</text> <use id='nn' x='647' y='882' xlink:href='#nn'/><a xlink:href='#sys_dept.create_time'><text id='ry.sys_dept.create_time' x='663' y='891'>create_time</text><title>create_time
  1116 +* timestamp default CURRENT_TIMESTAMP
  1117 +创建时间</title></a>
  1118 +<text x='747' y='888' text-anchor='end' class='colType'>d</text> <a xlink:href='#sys_dept.update_by'><text id='ry.sys_dept.update_by' x='663' y='906'>update_by</text><title>update_by
  1119 +varchar(64) default ''
  1120 +更新者</title></a>
  1121 +<text x='747' y='903' text-anchor='end' class='colType'>t</text> <use id='nn' x='647' y='912' xlink:href='#nn'/><a xlink:href='#sys_dept.update_time'><text id='ry.sys_dept.update_time' x='663' y='921'>update_time</text><title>update_time
  1122 +* timestamp default '0000-00-00 00:00:00'
  1123 +更新时间</title></a>
  1124 +<text x='747' y='918' text-anchor='end' class='colType'>d</text>
  1125 +<!-- == Table 'qrtz_paused_trigger_grps' == -->
  1126 +<rect class='entity' x='1260' y='683' width='165' height='75' rx='7' ry='7' style='stroke:none'/>
  1127 +<path d='M 1260 709 L 1260 690 Q 1260 683 1267 683 L 1418 683 Q 1425 683 1425 690 L 1425 709 L1260 709 ' style='fill:url(#tbg_bfbff5);stroke:1;stroke-opacity:0.1;' />
  1128 +<rect class='entity' x='1260' y='683' width='165' height='75' rx='7' ry='7' style='fill:none;stroke:#5f5f6e'/>
  1129 +<line class='delim' x1='1260' y1='709' x2='1425' y2='709' style='stroke:#5f5f6e'/>
  1130 +<line class='delim' x1='1275' y1='709' x2='1275' y2='758' style='stroke:#5f5f6e'/>
  1131 +<line class='delim' x1='1414' y1='709' x2='1414' y2='758' style='stroke:#5f5f6e'/>
  1132 +<a xlink:href='#qrtz_paused_trigger_grps'><text x='1267' y='701'>qrtz_paused_trigger_grps</text><title>Table ry.qrtz_paused_trigger_grps</title></a>
  1133 + <use id='nn' x='1262' y='717' xlink:href='#nn'/><a xlink:href='#qrtz_paused_trigger_grps.sched_name'><use id='pk' x='1262' y='716' xlink:href='#pk'/><title>Pk pk_qrtz_paused_trigger_grps ( sched_name, trigger_group ) </title></a>
  1134 +<a xlink:href='#qrtz_paused_trigger_grps.sched_name'><text id='ry.qrtz_paused_trigger_grps.sched_name' x='1278' y='726'>sched_name</text><title>sched_name
  1135 +* varchar(120)</title></a>
  1136 +<text x='1422' y='723' text-anchor='end' class='colType'>t</text> <use id='nn' x='1262' y='732' xlink:href='#nn'/><a xlink:href='#qrtz_paused_trigger_grps.trigger_group'><use id='pk' x='1262' y='731' xlink:href='#pk'/><title>Pk pk_qrtz_paused_trigger_grps ( sched_name, trigger_group ) </title></a>
  1137 +<a xlink:href='#qrtz_paused_trigger_grps.trigger_group'><text id='ry.qrtz_paused_trigger_grps.trigger_group' x='1278' y='741'>trigger_group</text><title>trigger_group
  1138 +* varchar(200)</title></a>
  1139 +<text x='1422' y='738' text-anchor='end' class='colType'>t</text>
  1140 +<!-- == Table 'qrtz_fired_triggers' == -->
  1141 +<rect class='entity' x='1035' y='668' width='135' height='240' rx='7' ry='7' style='stroke:none'/>
  1142 +<path d='M 1035 694 L 1035 675 Q 1035 668 1042 668 L 1163 668 Q 1170 668 1170 675 L 1170 694 L1035 694 ' style='fill:url(#tbg_bfbff5);stroke:1;stroke-opacity:0.1;' />
  1143 +<rect class='entity' x='1035' y='668' width='135' height='240' rx='7' ry='7' style='fill:none;stroke:#5f5f6e'/>
  1144 +<line class='delim' x1='1035' y1='694' x2='1170' y2='694' style='stroke:#5f5f6e'/>
  1145 +<line class='delim' x1='1050' y1='694' x2='1050' y2='908' style='stroke:#5f5f6e'/>
  1146 +<line class='delim' x1='1159' y1='694' x2='1159' y2='908' style='stroke:#5f5f6e'/>
  1147 +<a xlink:href='#qrtz_fired_triggers'><text x='1042' y='686'>qrtz_fired_triggers</text><title>Table ry.qrtz_fired_triggers</title></a>
  1148 + <use id='nn' x='1037' y='702' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.sched_name'><use id='pk' x='1037' y='701' xlink:href='#pk'/><title>Pk pk_qrtz_fired_triggers ( sched_name, entry_id ) </title></a>
  1149 +<a xlink:href='#qrtz_fired_triggers.sched_name'><text id='ry.qrtz_fired_triggers.sched_name' x='1053' y='711'>sched_name</text><title>sched_name
  1150 +* varchar(120)</title></a>
  1151 +<text x='1167' y='708' text-anchor='end' class='colType'>t</text> <use id='nn' x='1037' y='717' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.entry_id'><use id='pk' x='1037' y='716' xlink:href='#pk'/><title>Pk pk_qrtz_fired_triggers ( sched_name, entry_id ) </title></a>
  1152 +<a xlink:href='#qrtz_fired_triggers.entry_id'><text id='ry.qrtz_fired_triggers.entry_id' x='1053' y='726'>entry_id</text><title>entry_id
  1153 +* varchar(95)</title></a>
  1154 +<text x='1167' y='723' text-anchor='end' class='colType'>t</text> <use id='nn' x='1037' y='732' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.trigger_name'><text id='ry.qrtz_fired_triggers.trigger_name' x='1053' y='741'>trigger_name</text><title>trigger_name
  1155 +* varchar(200)</title></a>
  1156 +<text x='1167' y='738' text-anchor='end' class='colType'>t</text> <use id='nn' x='1037' y='747' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.trigger_group'><text id='ry.qrtz_fired_triggers.trigger_group' x='1053' y='756'>trigger_group</text><title>trigger_group
  1157 +* varchar(200)</title></a>
  1158 +<text x='1167' y='753' text-anchor='end' class='colType'>t</text> <use id='nn' x='1037' y='762' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.instance_name'><text id='ry.qrtz_fired_triggers.instance_name' x='1053' y='771'>instance_name</text><title>instance_name
  1159 +* varchar(200)</title></a>
  1160 +<text x='1167' y='768' text-anchor='end' class='colType'>t</text> <use id='nn' x='1037' y='777' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.fired_time'><text id='ry.qrtz_fired_triggers.fired_time' x='1053' y='786'>fired_time</text><title>fired_time
  1161 +* bigint</title></a>
  1162 +<text x='1167' y='783' text-anchor='end' class='colType'>#</text> <use id='nn' x='1037' y='792' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.sched_time'><text id='ry.qrtz_fired_triggers.sched_time' x='1053' y='801'>sched_time</text><title>sched_time
  1163 +* bigint</title></a>
  1164 +<text x='1167' y='798' text-anchor='end' class='colType'>#</text> <use id='nn' x='1037' y='807' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.priority'><text id='ry.qrtz_fired_triggers.priority' x='1053' y='816'>priority</text><title>priority
  1165 +* int</title></a>
  1166 +<text x='1167' y='813' text-anchor='end' class='colType'>#</text> <use id='nn' x='1037' y='822' xlink:href='#nn'/><a xlink:href='#qrtz_fired_triggers.state'><text id='ry.qrtz_fired_triggers.state' x='1053' y='831'>state</text><title>state
  1167 +* varchar(16)</title></a>
  1168 +<text x='1167' y='828' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_fired_triggers.job_name'><text id='ry.qrtz_fired_triggers.job_name' x='1053' y='846'>job_name</text><title>job_name
  1169 +varchar(200)</title></a>
  1170 +<text x='1167' y='843' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_fired_triggers.job_group'><text id='ry.qrtz_fired_triggers.job_group' x='1053' y='861'>job_group</text><title>job_group
  1171 +varchar(200)</title></a>
  1172 +<text x='1167' y='858' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_fired_triggers.is_nonconcurrent'><text id='ry.qrtz_fired_triggers.is_nonconcurrent' x='1053' y='876'>is_nonconcurrent</text><title>is_nonconcurrent
  1173 +varchar(1)</title></a>
  1174 +<text x='1167' y='873' text-anchor='end' class='colType'>t</text> <a xlink:href='#qrtz_fired_triggers.requests_recovery'><text id='ry.qrtz_fired_triggers.requests_recovery' x='1053' y='891'>requests_recovery</text><title>requests_recovery
  1175 +varchar(1)</title></a>
  1176 +<text x='1167' y='888' text-anchor='end' class='colType'>t</text>
  1177 +</g></svg></div>
  1178 +
  1179 +
  1180 +<br/><br/>
  1181 +<div class='card'><div class='card-block'><a name='qrtz_blob_triggers' onclick='window.scrollTo(60, 540);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_blob_triggers</h4></a>
  1182 +<table class='table-sm table-bordered'>
  1183 +<thead>
  1184 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1185 +<tbody>
  1186 + <tr>
  1187 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1188 + <td><a name='qrtz_blob_triggers.sched_name'>sched&#95;name</a></td>
  1189 + <td> varchar&#40; 120 &#41; </td>
  1190 + <td> </td>
  1191 + </tr>
  1192 + <tr>
  1193 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1194 + <td><a name='qrtz_blob_triggers.trigger_name'>trigger&#95;name</a></td>
  1195 + <td> varchar&#40; 200 &#41; </td>
  1196 + <td> </td>
  1197 + </tr>
  1198 + <tr>
  1199 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1200 + <td><a name='qrtz_blob_triggers.trigger_group'>trigger&#95;group</a></td>
  1201 + <td> varchar&#40; 200 &#41; </td>
  1202 + <td> </td>
  1203 + </tr>
  1204 + <tr>
  1205 + <td>&nbsp;</td>
  1206 + <td><a name='qrtz_blob_triggers.blob_data'>blob&#95;data</a></td>
  1207 + <td> blob </td>
  1208 + <td> </td>
  1209 + </tr>
  1210 +<tr><th colspan='4'>Indexes</th></tr>
  1211 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;blob&#95;triggers</td>
  1212 + <td> ON sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group</td>
  1213 + <td> </td>
  1214 + </tr>
  1215 +<tr><th colspan='4'>Foreign Keys</th></tr>
  1216 + <tr>
  1217 + <td><svg width='14' height='14'><use xlink:href='#fk'/></svg></td><td>qrtz_blob_triggers_ibfk_1</td>
  1218 + <td > ( sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group ) ref <a href='#qrtz&#95;triggers'>qrtz&#95;triggers</a> (sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group) </td>
  1219 + <td> </td>
  1220 + </tr>
  1221 +</tbody>
  1222 +</table></div></div>
  1223 +
  1224 +<br/><br/>
  1225 +<div class='card'><div class='card-block'><a name='qrtz_calendars' onclick='window.scrollTo(60, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_calendars</h4></a>
  1226 +<table class='table-sm table-bordered'>
  1227 +<thead>
  1228 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1229 +<tbody>
  1230 + <tr>
  1231 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1232 + <td><a name='qrtz_calendars.sched_name'>sched&#95;name</a></td>
  1233 + <td> varchar&#40; 120 &#41; </td>
  1234 + <td> </td>
  1235 + </tr>
  1236 + <tr>
  1237 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1238 + <td><a name='qrtz_calendars.calendar_name'>calendar&#95;name</a></td>
  1239 + <td> varchar&#40; 200 &#41; </td>
  1240 + <td> </td>
  1241 + </tr>
  1242 + <tr>
  1243 + <td>*</td>
  1244 + <td><a name='qrtz_calendars.calendar'>calendar</a></td>
  1245 + <td> blob </td>
  1246 + <td> </td>
  1247 + </tr>
  1248 +<tr><th colspan='4'>Indexes</th></tr>
  1249 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;calendars</td>
  1250 + <td> ON sched&#95;name&#44; calendar&#95;name</td>
  1251 + <td> </td>
  1252 + </tr>
  1253 +</tbody>
  1254 +</table></div></div>
  1255 +
  1256 +<br/><br/>
  1257 +<div class='card'><div class='card-block'><a name='qrtz_cron_triggers' onclick='window.scrollTo(235, 540);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_cron_triggers</h4></a>
  1258 +<table class='table-sm table-bordered'>
  1259 +<thead>
  1260 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1261 +<tbody>
  1262 + <tr>
  1263 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1264 + <td><a name='qrtz_cron_triggers.sched_name'>sched&#95;name</a></td>
  1265 + <td> varchar&#40; 120 &#41; </td>
  1266 + <td> </td>
  1267 + </tr>
  1268 + <tr>
  1269 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1270 + <td><a name='qrtz_cron_triggers.trigger_name'>trigger&#95;name</a></td>
  1271 + <td> varchar&#40; 200 &#41; </td>
  1272 + <td> </td>
  1273 + </tr>
  1274 + <tr>
  1275 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1276 + <td><a name='qrtz_cron_triggers.trigger_group'>trigger&#95;group</a></td>
  1277 + <td> varchar&#40; 200 &#41; </td>
  1278 + <td> </td>
  1279 + </tr>
  1280 + <tr>
  1281 + <td>*</td>
  1282 + <td><a name='qrtz_cron_triggers.cron_expression'>cron&#95;expression</a></td>
  1283 + <td> varchar&#40; 200 &#41; </td>
  1284 + <td> </td>
  1285 + </tr>
  1286 + <tr>
  1287 + <td>&nbsp;</td>
  1288 + <td><a name='qrtz_cron_triggers.time_zone_id'>time&#95;zone&#95;id</a></td>
  1289 + <td> varchar&#40; 80 &#41; </td>
  1290 + <td> </td>
  1291 + </tr>
  1292 +<tr><th colspan='4'>Indexes</th></tr>
  1293 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;cron&#95;triggers</td>
  1294 + <td> ON sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group</td>
  1295 + <td> </td>
  1296 + </tr>
  1297 +<tr><th colspan='4'>Foreign Keys</th></tr>
  1298 + <tr>
  1299 + <td><svg width='14' height='14'><use xlink:href='#fk'/></svg></td><td>qrtz_cron_triggers_ibfk_1</td>
  1300 + <td > ( sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group ) ref <a href='#qrtz&#95;triggers'>qrtz&#95;triggers</a> (sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group) </td>
  1301 + <td> </td>
  1302 + </tr>
  1303 +</tbody>
  1304 +</table></div></div>
  1305 +
  1306 +<br/><br/>
  1307 +<div class='card'><div class='card-block'><a name='qrtz_fired_triggers' onclick='window.scrollTo(835, 675);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_fired_triggers</h4></a>
  1308 +<table class='table-sm table-bordered'>
  1309 +<thead>
  1310 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1311 +<tbody>
  1312 + <tr>
  1313 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1314 + <td><a name='qrtz_fired_triggers.sched_name'>sched&#95;name</a></td>
  1315 + <td> varchar&#40; 120 &#41; </td>
  1316 + <td> </td>
  1317 + </tr>
  1318 + <tr>
  1319 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1320 + <td><a name='qrtz_fired_triggers.entry_id'>entry&#95;id</a></td>
  1321 + <td> varchar&#40; 95 &#41; </td>
  1322 + <td> </td>
  1323 + </tr>
  1324 + <tr>
  1325 + <td>*</td>
  1326 + <td><a name='qrtz_fired_triggers.trigger_name'>trigger&#95;name</a></td>
  1327 + <td> varchar&#40; 200 &#41; </td>
  1328 + <td> </td>
  1329 + </tr>
  1330 + <tr>
  1331 + <td>*</td>
  1332 + <td><a name='qrtz_fired_triggers.trigger_group'>trigger&#95;group</a></td>
  1333 + <td> varchar&#40; 200 &#41; </td>
  1334 + <td> </td>
  1335 + </tr>
  1336 + <tr>
  1337 + <td>*</td>
  1338 + <td><a name='qrtz_fired_triggers.instance_name'>instance&#95;name</a></td>
  1339 + <td> varchar&#40; 200 &#41; </td>
  1340 + <td> </td>
  1341 + </tr>
  1342 + <tr>
  1343 + <td>*</td>
  1344 + <td><a name='qrtz_fired_triggers.fired_time'>fired&#95;time</a></td>
  1345 + <td> bigint </td>
  1346 + <td> </td>
  1347 + </tr>
  1348 + <tr>
  1349 + <td>*</td>
  1350 + <td><a name='qrtz_fired_triggers.sched_time'>sched&#95;time</a></td>
  1351 + <td> bigint </td>
  1352 + <td> </td>
  1353 + </tr>
  1354 + <tr>
  1355 + <td>*</td>
  1356 + <td><a name='qrtz_fired_triggers.priority'>priority</a></td>
  1357 + <td> int </td>
  1358 + <td> </td>
  1359 + </tr>
  1360 + <tr>
  1361 + <td>*</td>
  1362 + <td><a name='qrtz_fired_triggers.state'>state</a></td>
  1363 + <td> varchar&#40; 16 &#41; </td>
  1364 + <td> </td>
  1365 + </tr>
  1366 + <tr>
  1367 + <td>&nbsp;</td>
  1368 + <td><a name='qrtz_fired_triggers.job_name'>job&#95;name</a></td>
  1369 + <td> varchar&#40; 200 &#41; </td>
  1370 + <td> </td>
  1371 + </tr>
  1372 + <tr>
  1373 + <td>&nbsp;</td>
  1374 + <td><a name='qrtz_fired_triggers.job_group'>job&#95;group</a></td>
  1375 + <td> varchar&#40; 200 &#41; </td>
  1376 + <td> </td>
  1377 + </tr>
  1378 + <tr>
  1379 + <td>&nbsp;</td>
  1380 + <td><a name='qrtz_fired_triggers.is_nonconcurrent'>is&#95;nonconcurrent</a></td>
  1381 + <td> varchar&#40; 1 &#41; </td>
  1382 + <td> </td>
  1383 + </tr>
  1384 + <tr>
  1385 + <td>&nbsp;</td>
  1386 + <td><a name='qrtz_fired_triggers.requests_recovery'>requests&#95;recovery</a></td>
  1387 + <td> varchar&#40; 1 &#41; </td>
  1388 + <td> </td>
  1389 + </tr>
  1390 +<tr><th colspan='4'>Indexes</th></tr>
  1391 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;fired&#95;triggers</td>
  1392 + <td> ON sched&#95;name&#44; entry&#95;id</td>
  1393 + <td> </td>
  1394 + </tr>
  1395 +</tbody>
  1396 +</table></div></div>
  1397 +
  1398 +<br/><br/>
  1399 +<div class='card'><div class='card-block'><a name='qrtz_job_details' onclick='window.scrollTo(235, 195);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_job_details</h4></a>
  1400 +<table class='table-sm table-bordered'>
  1401 +<thead>
  1402 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1403 +<tbody>
  1404 + <tr>
  1405 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#ref'/></svg></td>
  1406 + <td><a name='qrtz_job_details.sched_name'>sched&#95;name</a></td>
  1407 + <td> varchar&#40; 120 &#41; </td>
  1408 + <td> </td>
  1409 + </tr>
  1410 + <tr>
  1411 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#ref'/></svg></td>
  1412 + <td><a name='qrtz_job_details.job_name'>job&#95;name</a></td>
  1413 + <td> varchar&#40; 200 &#41; </td>
  1414 + <td> </td>
  1415 + </tr>
  1416 + <tr>
  1417 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#ref'/></svg></td>
  1418 + <td><a name='qrtz_job_details.job_group'>job&#95;group</a></td>
  1419 + <td> varchar&#40; 200 &#41; </td>
  1420 + <td> </td>
  1421 + </tr>
  1422 + <tr>
  1423 + <td>&nbsp;</td>
  1424 + <td><a name='qrtz_job_details.description'>description</a></td>
  1425 + <td> varchar&#40; 250 &#41; </td>
  1426 + <td> </td>
  1427 + </tr>
  1428 + <tr>
  1429 + <td>*</td>
  1430 + <td><a name='qrtz_job_details.job_class_name'>job&#95;class&#95;name</a></td>
  1431 + <td> varchar&#40; 250 &#41; </td>
  1432 + <td> </td>
  1433 + </tr>
  1434 + <tr>
  1435 + <td>*</td>
  1436 + <td><a name='qrtz_job_details.is_durable'>is&#95;durable</a></td>
  1437 + <td> varchar&#40; 1 &#41; </td>
  1438 + <td> </td>
  1439 + </tr>
  1440 + <tr>
  1441 + <td>*</td>
  1442 + <td><a name='qrtz_job_details.is_nonconcurrent'>is&#95;nonconcurrent</a></td>
  1443 + <td> varchar&#40; 1 &#41; </td>
  1444 + <td> </td>
  1445 + </tr>
  1446 + <tr>
  1447 + <td>*</td>
  1448 + <td><a name='qrtz_job_details.is_update_data'>is&#95;update&#95;data</a></td>
  1449 + <td> varchar&#40; 1 &#41; </td>
  1450 + <td> </td>
  1451 + </tr>
  1452 + <tr>
  1453 + <td>*</td>
  1454 + <td><a name='qrtz_job_details.requests_recovery'>requests&#95;recovery</a></td>
  1455 + <td> varchar&#40; 1 &#41; </td>
  1456 + <td> </td>
  1457 + </tr>
  1458 + <tr>
  1459 + <td>&nbsp;</td>
  1460 + <td><a name='qrtz_job_details.job_data'>job&#95;data</a></td>
  1461 + <td> blob </td>
  1462 + <td> </td>
  1463 + </tr>
  1464 +<tr><th colspan='4'>Indexes</th></tr>
  1465 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;job&#95;details</td>
  1466 + <td> ON sched&#95;name&#44; job&#95;name&#44; job&#95;group</td>
  1467 + <td> </td>
  1468 + </tr>
  1469 +</tbody>
  1470 +</table></div></div>
  1471 +
  1472 +<br/><br/>
  1473 +<div class='card'><div class='card-block'><a name='qrtz_locks' onclick='window.scrollTo(60, 60);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_locks</h4></a>
  1474 +<table class='table-sm table-bordered'>
  1475 +<thead>
  1476 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1477 +<tbody>
  1478 + <tr>
  1479 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1480 + <td><a name='qrtz_locks.sched_name'>sched&#95;name</a></td>
  1481 + <td> varchar&#40; 120 &#41; </td>
  1482 + <td> </td>
  1483 + </tr>
  1484 + <tr>
  1485 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1486 + <td><a name='qrtz_locks.lock_name'>lock&#95;name</a></td>
  1487 + <td> varchar&#40; 40 &#41; </td>
  1488 + <td> </td>
  1489 + </tr>
  1490 +<tr><th colspan='4'>Indexes</th></tr>
  1491 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;locks</td>
  1492 + <td> ON sched&#95;name&#44; lock&#95;name</td>
  1493 + <td> </td>
  1494 + </tr>
  1495 +</tbody>
  1496 +</table></div></div>
  1497 +
  1498 +<br/><br/>
  1499 +<div class='card'><div class='card-block'><a name='qrtz_paused_trigger_grps' onclick='window.scrollTo(1060, 690);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_paused_trigger_grps</h4></a>
  1500 +<table class='table-sm table-bordered'>
  1501 +<thead>
  1502 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1503 +<tbody>
  1504 + <tr>
  1505 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1506 + <td><a name='qrtz_paused_trigger_grps.sched_name'>sched&#95;name</a></td>
  1507 + <td> varchar&#40; 120 &#41; </td>
  1508 + <td> </td>
  1509 + </tr>
  1510 + <tr>
  1511 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1512 + <td><a name='qrtz_paused_trigger_grps.trigger_group'>trigger&#95;group</a></td>
  1513 + <td> varchar&#40; 200 &#41; </td>
  1514 + <td> </td>
  1515 + </tr>
  1516 +<tr><th colspan='4'>Indexes</th></tr>
  1517 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;paused&#95;trigger&#95;grps</td>
  1518 + <td> ON sched&#95;name&#44; trigger&#95;group</td>
  1519 + <td> </td>
  1520 + </tr>
  1521 +</tbody>
  1522 +</table></div></div>
  1523 +
  1524 +<br/><br/>
  1525 +<div class='card'><div class='card-block'><a name='qrtz_scheduler_state' onclick='window.scrollTo(60, 735);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_scheduler_state</h4></a>
  1526 +<table class='table-sm table-bordered'>
  1527 +<thead>
  1528 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1529 +<tbody>
  1530 + <tr>
  1531 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1532 + <td><a name='qrtz_scheduler_state.sched_name'>sched&#95;name</a></td>
  1533 + <td> varchar&#40; 120 &#41; </td>
  1534 + <td> </td>
  1535 + </tr>
  1536 + <tr>
  1537 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1538 + <td><a name='qrtz_scheduler_state.instance_name'>instance&#95;name</a></td>
  1539 + <td> varchar&#40; 200 &#41; </td>
  1540 + <td> </td>
  1541 + </tr>
  1542 + <tr>
  1543 + <td>*</td>
  1544 + <td><a name='qrtz_scheduler_state.last_checkin_time'>last&#95;checkin&#95;time</a></td>
  1545 + <td> bigint </td>
  1546 + <td> </td>
  1547 + </tr>
  1548 + <tr>
  1549 + <td>*</td>
  1550 + <td><a name='qrtz_scheduler_state.checkin_interval'>checkin&#95;interval</a></td>
  1551 + <td> bigint </td>
  1552 + <td> </td>
  1553 + </tr>
  1554 +<tr><th colspan='4'>Indexes</th></tr>
  1555 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;scheduler&#95;state</td>
  1556 + <td> ON sched&#95;name&#44; instance&#95;name</td>
  1557 + <td> </td>
  1558 + </tr>
  1559 +</tbody>
  1560 +</table></div></div>
  1561 +
  1562 +<br/><br/>
  1563 +<div class='card'><div class='card-block'><a name='qrtz_simple_triggers' onclick='window.scrollTo(60, 540);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_simple_triggers</h4></a>
  1564 +<table class='table-sm table-bordered'>
  1565 +<thead>
  1566 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1567 +<tbody>
  1568 + <tr>
  1569 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1570 + <td><a name='qrtz_simple_triggers.sched_name'>sched&#95;name</a></td>
  1571 + <td> varchar&#40; 120 &#41; </td>
  1572 + <td> </td>
  1573 + </tr>
  1574 + <tr>
  1575 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1576 + <td><a name='qrtz_simple_triggers.trigger_name'>trigger&#95;name</a></td>
  1577 + <td> varchar&#40; 200 &#41; </td>
  1578 + <td> </td>
  1579 + </tr>
  1580 + <tr>
  1581 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1582 + <td><a name='qrtz_simple_triggers.trigger_group'>trigger&#95;group</a></td>
  1583 + <td> varchar&#40; 200 &#41; </td>
  1584 + <td> </td>
  1585 + </tr>
  1586 + <tr>
  1587 + <td>*</td>
  1588 + <td><a name='qrtz_simple_triggers.repeat_count'>repeat&#95;count</a></td>
  1589 + <td> bigint </td>
  1590 + <td> </td>
  1591 + </tr>
  1592 + <tr>
  1593 + <td>*</td>
  1594 + <td><a name='qrtz_simple_triggers.repeat_interval'>repeat&#95;interval</a></td>
  1595 + <td> bigint </td>
  1596 + <td> </td>
  1597 + </tr>
  1598 + <tr>
  1599 + <td>*</td>
  1600 + <td><a name='qrtz_simple_triggers.times_triggered'>times&#95;triggered</a></td>
  1601 + <td> bigint </td>
  1602 + <td> </td>
  1603 + </tr>
  1604 +<tr><th colspan='4'>Indexes</th></tr>
  1605 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;simple&#95;triggers</td>
  1606 + <td> ON sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group</td>
  1607 + <td> </td>
  1608 + </tr>
  1609 +<tr><th colspan='4'>Foreign Keys</th></tr>
  1610 + <tr>
  1611 + <td><svg width='14' height='14'><use xlink:href='#fk'/></svg></td><td>qrtz_simple_triggers_ibfk_1</td>
  1612 + <td > ( sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group ) ref <a href='#qrtz&#95;triggers'>qrtz&#95;triggers</a> (sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group) </td>
  1613 + <td> </td>
  1614 + </tr>
  1615 +</tbody>
  1616 +</table></div></div>
  1617 +
  1618 +<br/><br/>
  1619 +<div class='card'><div class='card-block'><a name='qrtz_simprop_triggers' onclick='window.scrollTo(60, 225);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_simprop_triggers</h4></a>
  1620 +<table class='table-sm table-bordered'>
  1621 +<thead>
  1622 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1623 +<tbody>
  1624 + <tr>
  1625 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1626 + <td><a name='qrtz_simprop_triggers.sched_name'>sched&#95;name</a></td>
  1627 + <td> varchar&#40; 120 &#41; </td>
  1628 + <td> </td>
  1629 + </tr>
  1630 + <tr>
  1631 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1632 + <td><a name='qrtz_simprop_triggers.trigger_name'>trigger&#95;name</a></td>
  1633 + <td> varchar&#40; 200 &#41; </td>
  1634 + <td> </td>
  1635 + </tr>
  1636 + <tr>
  1637 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1638 + <td><a name='qrtz_simprop_triggers.trigger_group'>trigger&#95;group</a></td>
  1639 + <td> varchar&#40; 200 &#41; </td>
  1640 + <td> </td>
  1641 + </tr>
  1642 + <tr>
  1643 + <td>&nbsp;</td>
  1644 + <td><a name='qrtz_simprop_triggers.str_prop_1'>str&#95;prop&#95;1</a></td>
  1645 + <td> varchar&#40; 512 &#41; </td>
  1646 + <td> </td>
  1647 + </tr>
  1648 + <tr>
  1649 + <td>&nbsp;</td>
  1650 + <td><a name='qrtz_simprop_triggers.str_prop_2'>str&#95;prop&#95;2</a></td>
  1651 + <td> varchar&#40; 512 &#41; </td>
  1652 + <td> </td>
  1653 + </tr>
  1654 + <tr>
  1655 + <td>&nbsp;</td>
  1656 + <td><a name='qrtz_simprop_triggers.str_prop_3'>str&#95;prop&#95;3</a></td>
  1657 + <td> varchar&#40; 512 &#41; </td>
  1658 + <td> </td>
  1659 + </tr>
  1660 + <tr>
  1661 + <td>&nbsp;</td>
  1662 + <td><a name='qrtz_simprop_triggers.int_prop_1'>int&#95;prop&#95;1</a></td>
  1663 + <td> int </td>
  1664 + <td> </td>
  1665 + </tr>
  1666 + <tr>
  1667 + <td>&nbsp;</td>
  1668 + <td><a name='qrtz_simprop_triggers.int_prop_2'>int&#95;prop&#95;2</a></td>
  1669 + <td> int </td>
  1670 + <td> </td>
  1671 + </tr>
  1672 + <tr>
  1673 + <td>&nbsp;</td>
  1674 + <td><a name='qrtz_simprop_triggers.long_prop_1'>long&#95;prop&#95;1</a></td>
  1675 + <td> bigint </td>
  1676 + <td> </td>
  1677 + </tr>
  1678 + <tr>
  1679 + <td>&nbsp;</td>
  1680 + <td><a name='qrtz_simprop_triggers.long_prop_2'>long&#95;prop&#95;2</a></td>
  1681 + <td> bigint </td>
  1682 + <td> </td>
  1683 + </tr>
  1684 + <tr>
  1685 + <td>&nbsp;</td>
  1686 + <td><a name='qrtz_simprop_triggers.dec_prop_1'>dec&#95;prop&#95;1</a></td>
  1687 + <td> decimal&#40; 13&#44; 4 &#41; </td>
  1688 + <td> </td>
  1689 + </tr>
  1690 + <tr>
  1691 + <td>&nbsp;</td>
  1692 + <td><a name='qrtz_simprop_triggers.dec_prop_2'>dec&#95;prop&#95;2</a></td>
  1693 + <td> decimal&#40; 13&#44; 4 &#41; </td>
  1694 + <td> </td>
  1695 + </tr>
  1696 + <tr>
  1697 + <td>&nbsp;</td>
  1698 + <td><a name='qrtz_simprop_triggers.bool_prop_1'>bool&#95;prop&#95;1</a></td>
  1699 + <td> varchar&#40; 1 &#41; </td>
  1700 + <td> </td>
  1701 + </tr>
  1702 + <tr>
  1703 + <td>&nbsp;</td>
  1704 + <td><a name='qrtz_simprop_triggers.bool_prop_2'>bool&#95;prop&#95;2</a></td>
  1705 + <td> varchar&#40; 1 &#41; </td>
  1706 + <td> </td>
  1707 + </tr>
  1708 +<tr><th colspan='4'>Indexes</th></tr>
  1709 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;simprop&#95;triggers</td>
  1710 + <td> ON sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group</td>
  1711 + <td> </td>
  1712 + </tr>
  1713 +<tr><th colspan='4'>Foreign Keys</th></tr>
  1714 + <tr>
  1715 + <td><svg width='14' height='14'><use xlink:href='#fk'/></svg></td><td>qrtz_simprop_triggers_ibfk_1</td>
  1716 + <td > ( sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group ) ref <a href='#qrtz&#95;triggers'>qrtz&#95;triggers</a> (sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group) </td>
  1717 + <td> </td>
  1718 + </tr>
  1719 +</tbody>
  1720 +</table></div></div>
  1721 +
  1722 +<br/><br/>
  1723 +<div class='card'><div class='card-block'><a name='qrtz_triggers' onclick='window.scrollTo(60, 195);return false;' style='cursor:pointer;'><h4 class='card-title'>Table qrtz_triggers</h4></a>
  1724 +<table class='table-sm table-bordered'>
  1725 +<thead>
  1726 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1727 +<tbody>
  1728 + <tr>
  1729 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1730 + <td><a name='qrtz_triggers.sched_name'>sched&#95;name</a></td>
  1731 + <td> varchar&#40; 120 &#41; </td>
  1732 + <td> </td>
  1733 + </tr>
  1734 + <tr>
  1735 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#ref'/></svg></td>
  1736 + <td><a name='qrtz_triggers.trigger_name'>trigger&#95;name</a></td>
  1737 + <td> varchar&#40; 200 &#41; </td>
  1738 + <td> </td>
  1739 + </tr>
  1740 + <tr>
  1741 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg><svg width='14' height='14'><use xlink:href='#ref'/></svg></td>
  1742 + <td><a name='qrtz_triggers.trigger_group'>trigger&#95;group</a></td>
  1743 + <td> varchar&#40; 200 &#41; </td>
  1744 + <td> </td>
  1745 + </tr>
  1746 + <tr>
  1747 + <td>*<svg width='14' height='14'><use xlink:href='#idx'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1748 + <td><a name='qrtz_triggers.job_name'>job&#95;name</a></td>
  1749 + <td> varchar&#40; 200 &#41; </td>
  1750 + <td> </td>
  1751 + </tr>
  1752 + <tr>
  1753 + <td>*<svg width='14' height='14'><use xlink:href='#idx'/></svg><svg width='14' height='14'><use xlink:href='#fk'/></svg></td>
  1754 + <td><a name='qrtz_triggers.job_group'>job&#95;group</a></td>
  1755 + <td> varchar&#40; 200 &#41; </td>
  1756 + <td> </td>
  1757 + </tr>
  1758 + <tr>
  1759 + <td>&nbsp;</td>
  1760 + <td><a name='qrtz_triggers.description'>description</a></td>
  1761 + <td> varchar&#40; 250 &#41; </td>
  1762 + <td> </td>
  1763 + </tr>
  1764 + <tr>
  1765 + <td>&nbsp;</td>
  1766 + <td><a name='qrtz_triggers.next_fire_time'>next&#95;fire&#95;time</a></td>
  1767 + <td> bigint </td>
  1768 + <td> </td>
  1769 + </tr>
  1770 + <tr>
  1771 + <td>&nbsp;</td>
  1772 + <td><a name='qrtz_triggers.prev_fire_time'>prev&#95;fire&#95;time</a></td>
  1773 + <td> bigint </td>
  1774 + <td> </td>
  1775 + </tr>
  1776 + <tr>
  1777 + <td>&nbsp;</td>
  1778 + <td><a name='qrtz_triggers.priority'>priority</a></td>
  1779 + <td> int </td>
  1780 + <td> </td>
  1781 + </tr>
  1782 + <tr>
  1783 + <td>*</td>
  1784 + <td><a name='qrtz_triggers.trigger_state'>trigger&#95;state</a></td>
  1785 + <td> varchar&#40; 16 &#41; </td>
  1786 + <td> </td>
  1787 + </tr>
  1788 + <tr>
  1789 + <td>*</td>
  1790 + <td><a name='qrtz_triggers.trigger_type'>trigger&#95;type</a></td>
  1791 + <td> varchar&#40; 8 &#41; </td>
  1792 + <td> </td>
  1793 + </tr>
  1794 + <tr>
  1795 + <td>*</td>
  1796 + <td><a name='qrtz_triggers.start_time'>start&#95;time</a></td>
  1797 + <td> bigint </td>
  1798 + <td> </td>
  1799 + </tr>
  1800 + <tr>
  1801 + <td>&nbsp;</td>
  1802 + <td><a name='qrtz_triggers.end_time'>end&#95;time</a></td>
  1803 + <td> bigint </td>
  1804 + <td> </td>
  1805 + </tr>
  1806 + <tr>
  1807 + <td>&nbsp;</td>
  1808 + <td><a name='qrtz_triggers.calendar_name'>calendar&#95;name</a></td>
  1809 + <td> varchar&#40; 200 &#41; </td>
  1810 + <td> </td>
  1811 + </tr>
  1812 + <tr>
  1813 + <td>&nbsp;</td>
  1814 + <td><a name='qrtz_triggers.misfire_instr'>misfire&#95;instr</a></td>
  1815 + <td> smallint </td>
  1816 + <td> </td>
  1817 + </tr>
  1818 + <tr>
  1819 + <td>&nbsp;</td>
  1820 + <td><a name='qrtz_triggers.job_data'>job&#95;data</a></td>
  1821 + <td> blob </td>
  1822 + <td> </td>
  1823 + </tr>
  1824 +<tr><th colspan='4'>Indexes</th></tr>
  1825 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;qrtz&#95;triggers</td>
  1826 + <td> ON sched&#95;name&#44; trigger&#95;name&#44; trigger&#95;group</td>
  1827 + <td> </td>
  1828 + </tr>
  1829 + <tr> <td><svg width='14' height='14'><use xlink:href='#idx'/></svg></td><td>sched&#95;name</td>
  1830 + <td> ON sched&#95;name&#44; job&#95;name&#44; job&#95;group</td>
  1831 + <td> </td>
  1832 + </tr>
  1833 +<tr><th colspan='4'>Foreign Keys</th></tr>
  1834 + <tr>
  1835 + <td><svg width='14' height='14'><use xlink:href='#fk'/></svg></td><td>qrtz_triggers_ibfk_1</td>
  1836 + <td > ( sched&#95;name&#44; job&#95;name&#44; job&#95;group ) ref <a href='#qrtz&#95;job&#95;details'>qrtz&#95;job&#95;details</a> (sched&#95;name&#44; job&#95;name&#44; job&#95;group) </td>
  1837 + <td> </td>
  1838 + </tr>
  1839 +</tbody>
  1840 +</table></div></div>
  1841 +
  1842 +<br/><br/>
  1843 +<div class='card'><div class='card-block'><a name='sys_dept' onclick='window.scrollTo(445, 720);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_dept</h4></a>
  1844 +<table class='table-sm table-bordered'>
  1845 +<thead>
  1846 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1847 +<tbody>
  1848 + <tr>
  1849 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1850 + <td><a name='sys_dept.dept_id'>dept&#95;id</a></td>
  1851 + <td> int AUTOINCREMENT </td>
  1852 + <td> 部门id </td>
  1853 + </tr>
  1854 + <tr>
  1855 + <td>&nbsp;</td>
  1856 + <td><a name='sys_dept.parent_id'>parent&#95;id</a></td>
  1857 + <td> int DEFAULT 0 </td>
  1858 + <td> 父部门id </td>
  1859 + </tr>
  1860 + <tr>
  1861 + <td>&nbsp;</td>
  1862 + <td><a name='sys_dept.dept_name'>dept&#95;name</a></td>
  1863 + <td> varchar&#40; 30 &#41; DEFAULT '' </td>
  1864 + <td> 部门名称 </td>
  1865 + </tr>
  1866 + <tr>
  1867 + <td>&nbsp;</td>
  1868 + <td><a name='sys_dept.order_num'>order&#95;num</a></td>
  1869 + <td> int DEFAULT 0 </td>
  1870 + <td> 显示顺序 </td>
  1871 + </tr>
  1872 + <tr>
  1873 + <td>&nbsp;</td>
  1874 + <td><a name='sys_dept.leader'>leader</a></td>
  1875 + <td> varchar&#40; 20 &#41; DEFAULT '' </td>
  1876 + <td> 负责人 </td>
  1877 + </tr>
  1878 + <tr>
  1879 + <td>&nbsp;</td>
  1880 + <td><a name='sys_dept.phone'>phone</a></td>
  1881 + <td> varchar&#40; 20 &#41; DEFAULT '' </td>
  1882 + <td> 联系电话 </td>
  1883 + </tr>
  1884 + <tr>
  1885 + <td>&nbsp;</td>
  1886 + <td><a name='sys_dept.email'>email</a></td>
  1887 + <td> varchar&#40; 20 &#41; DEFAULT '' </td>
  1888 + <td> 邮箱 </td>
  1889 + </tr>
  1890 + <tr>
  1891 + <td>&nbsp;</td>
  1892 + <td><a name='sys_dept.status'>status</a></td>
  1893 + <td> int DEFAULT 0 </td>
  1894 + <td> 部门状态&#58;0正常&#44;1停用 </td>
  1895 + </tr>
  1896 + <tr>
  1897 + <td>&nbsp;</td>
  1898 + <td><a name='sys_dept.create_by'>create&#95;by</a></td>
  1899 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  1900 + <td> 创建者 </td>
  1901 + </tr>
  1902 + <tr>
  1903 + <td>*</td>
  1904 + <td><a name='sys_dept.create_time'>create&#95;time</a></td>
  1905 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  1906 + <td> 创建时间 </td>
  1907 + </tr>
  1908 + <tr>
  1909 + <td>&nbsp;</td>
  1910 + <td><a name='sys_dept.update_by'>update&#95;by</a></td>
  1911 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  1912 + <td> 更新者 </td>
  1913 + </tr>
  1914 + <tr>
  1915 + <td>*</td>
  1916 + <td><a name='sys_dept.update_time'>update&#95;time</a></td>
  1917 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  1918 + <td> 更新时间 </td>
  1919 + </tr>
  1920 +<tr><th colspan='4'>Indexes</th></tr>
  1921 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;dept</td>
  1922 + <td> ON dept&#95;id</td>
  1923 + <td> </td>
  1924 + </tr>
  1925 +</tbody>
  1926 +</table></div></div>
  1927 +
  1928 +<br/><br/>
  1929 +<div class='card'><div class='card-block'><a name='sys_dict_data' onclick='window.scrollTo(970, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_dict_data</h4></a>
  1930 +<table class='table-sm table-bordered'>
  1931 +<thead>
  1932 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  1933 +<tbody>
  1934 + <tr>
  1935 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  1936 + <td><a name='sys_dict_data.dict_code'>dict&#95;code</a></td>
  1937 + <td> int AUTOINCREMENT </td>
  1938 + <td> 字典编码 </td>
  1939 + </tr>
  1940 + <tr>
  1941 + <td>&nbsp;</td>
  1942 + <td><a name='sys_dict_data.dict_sort'>dict&#95;sort</a></td>
  1943 + <td> int DEFAULT 0 </td>
  1944 + <td> 字典排序 </td>
  1945 + </tr>
  1946 + <tr>
  1947 + <td>&nbsp;</td>
  1948 + <td><a name='sys_dict_data.dict_label'>dict&#95;label</a></td>
  1949 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  1950 + <td> 字典标签 </td>
  1951 + </tr>
  1952 + <tr>
  1953 + <td>&nbsp;</td>
  1954 + <td><a name='sys_dict_data.dict_value'>dict&#95;value</a></td>
  1955 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  1956 + <td> 字典键值 </td>
  1957 + </tr>
  1958 + <tr>
  1959 + <td>&nbsp;</td>
  1960 + <td><a name='sys_dict_data.dict_type'>dict&#95;type</a></td>
  1961 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  1962 + <td> 字典类型 </td>
  1963 + </tr>
  1964 + <tr>
  1965 + <td>&nbsp;</td>
  1966 + <td><a name='sys_dict_data.status'>status</a></td>
  1967 + <td> int DEFAULT 0 </td>
  1968 + <td> 状态(0正常 1禁用) </td>
  1969 + </tr>
  1970 + <tr>
  1971 + <td>&nbsp;</td>
  1972 + <td><a name='sys_dict_data.create_by'>create&#95;by</a></td>
  1973 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  1974 + <td> 创建者 </td>
  1975 + </tr>
  1976 + <tr>
  1977 + <td>*</td>
  1978 + <td><a name='sys_dict_data.create_time'>create&#95;time</a></td>
  1979 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  1980 + <td> 创建时间 </td>
  1981 + </tr>
  1982 + <tr>
  1983 + <td>&nbsp;</td>
  1984 + <td><a name='sys_dict_data.update_by'>update&#95;by</a></td>
  1985 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  1986 + <td> 更新者 </td>
  1987 + </tr>
  1988 + <tr>
  1989 + <td>*</td>
  1990 + <td><a name='sys_dict_data.update_time'>update&#95;time</a></td>
  1991 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  1992 + <td> 更新时间 </td>
  1993 + </tr>
  1994 + <tr>
  1995 + <td>&nbsp;</td>
  1996 + <td><a name='sys_dict_data.remark'>remark</a></td>
  1997 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  1998 + <td> 备注 </td>
  1999 + </tr>
  2000 +<tr><th colspan='4'>Indexes</th></tr>
  2001 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;dict&#95;data</td>
  2002 + <td> ON dict&#95;code</td>
  2003 + <td> </td>
  2004 + </tr>
  2005 +</tbody>
  2006 +</table></div></div>
  2007 +
  2008 +<br/><br/>
  2009 +<div class='card'><div class='card-block'><a name='sys_dict_type' onclick='window.scrollTo(805, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_dict_type</h4></a>
  2010 +<table class='table-sm table-bordered'>
  2011 +<thead>
  2012 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2013 +<tbody>
  2014 + <tr>
  2015 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2016 + <td><a name='sys_dict_type.dict_id'>dict&#95;id</a></td>
  2017 + <td> int AUTOINCREMENT </td>
  2018 + <td> 字典主键 </td>
  2019 + </tr>
  2020 + <tr>
  2021 + <td>&nbsp;</td>
  2022 + <td><a name='sys_dict_type.dict_name'>dict&#95;name</a></td>
  2023 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2024 + <td> 字典名称 </td>
  2025 + </tr>
  2026 + <tr>
  2027 + <td><svg width='14' height='14'><use xlink:href='#unq'/></svg></td>
  2028 + <td><a name='sys_dict_type.dict_type'>dict&#95;type</a></td>
  2029 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2030 + <td> 字典类型 </td>
  2031 + </tr>
  2032 + <tr>
  2033 + <td>&nbsp;</td>
  2034 + <td><a name='sys_dict_type.status'>status</a></td>
  2035 + <td> int DEFAULT 0 </td>
  2036 + <td> 状态(0正常 1禁用) </td>
  2037 + </tr>
  2038 + <tr>
  2039 + <td>&nbsp;</td>
  2040 + <td><a name='sys_dict_type.create_by'>create&#95;by</a></td>
  2041 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2042 + <td> 创建者 </td>
  2043 + </tr>
  2044 + <tr>
  2045 + <td>*</td>
  2046 + <td><a name='sys_dict_type.create_time'>create&#95;time</a></td>
  2047 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2048 + <td> 创建时间 </td>
  2049 + </tr>
  2050 + <tr>
  2051 + <td>&nbsp;</td>
  2052 + <td><a name='sys_dict_type.update_by'>update&#95;by</a></td>
  2053 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2054 + <td> 更新者 </td>
  2055 + </tr>
  2056 + <tr>
  2057 + <td>*</td>
  2058 + <td><a name='sys_dict_type.update_time'>update&#95;time</a></td>
  2059 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2060 + <td> 更新时间 </td>
  2061 + </tr>
  2062 + <tr>
  2063 + <td>&nbsp;</td>
  2064 + <td><a name='sys_dict_type.remark'>remark</a></td>
  2065 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2066 + <td> 备注 </td>
  2067 + </tr>
  2068 +<tr><th colspan='4'>Indexes</th></tr>
  2069 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;dict&#95;type</td>
  2070 + <td> ON dict&#95;id</td>
  2071 + <td> </td>
  2072 + </tr>
  2073 + <tr> <td><svg width='14' height='14'><use xlink:href='#unq'/></svg></td><td>dict&#95;type</td>
  2074 + <td> ON dict&#95;type</td>
  2075 + <td> </td>
  2076 + </tr>
  2077 +</tbody>
  2078 +</table></div></div>
  2079 +
  2080 +<br/><br/>
  2081 +<div class='card'><div class='card-block'><a name='sys_job' onclick='window.scrollTo(1345, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_job</h4></a>
  2082 +<table class='table-sm table-bordered'>
  2083 +<thead>
  2084 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2085 +<tbody>
  2086 + <tr>
  2087 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2088 + <td><a name='sys_job.job_id'>job&#95;id</a></td>
  2089 + <td> int AUTOINCREMENT </td>
  2090 + <td> 任务ID </td>
  2091 + </tr>
  2092 + <tr>
  2093 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2094 + <td><a name='sys_job.job_name'>job&#95;name</a></td>
  2095 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2096 + <td> 任务名称 </td>
  2097 + </tr>
  2098 + <tr>
  2099 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2100 + <td><a name='sys_job.job_group'>job&#95;group</a></td>
  2101 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2102 + <td> 任务组名 </td>
  2103 + </tr>
  2104 + <tr>
  2105 + <td>&nbsp;</td>
  2106 + <td><a name='sys_job.method_name'>method&#95;name</a></td>
  2107 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2108 + <td> 任务方法 </td>
  2109 + </tr>
  2110 + <tr>
  2111 + <td>&nbsp;</td>
  2112 + <td><a name='sys_job.params'>params</a></td>
  2113 + <td> varchar&#40; 200 &#41; DEFAULT '' </td>
  2114 + <td> 方法参数 </td>
  2115 + </tr>
  2116 + <tr>
  2117 + <td>&nbsp;</td>
  2118 + <td><a name='sys_job.cron_expression'>cron&#95;expression</a></td>
  2119 + <td> varchar&#40; 255 &#41; DEFAULT '' </td>
  2120 + <td> cron执行表达式 </td>
  2121 + </tr>
  2122 + <tr>
  2123 + <td>&nbsp;</td>
  2124 + <td><a name='sys_job.status'>status</a></td>
  2125 + <td> int DEFAULT 0 </td>
  2126 + <td> 状态(0正常 1暂停) </td>
  2127 + </tr>
  2128 + <tr>
  2129 + <td>&nbsp;</td>
  2130 + <td><a name='sys_job.create_by'>create&#95;by</a></td>
  2131 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2132 + <td> 创建者 </td>
  2133 + </tr>
  2134 + <tr>
  2135 + <td>*</td>
  2136 + <td><a name='sys_job.create_time'>create&#95;time</a></td>
  2137 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2138 + <td> 创建时间 </td>
  2139 + </tr>
  2140 + <tr>
  2141 + <td>&nbsp;</td>
  2142 + <td><a name='sys_job.update_by'>update&#95;by</a></td>
  2143 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2144 + <td> 更新者 </td>
  2145 + </tr>
  2146 + <tr>
  2147 + <td>*</td>
  2148 + <td><a name='sys_job.update_time'>update&#95;time</a></td>
  2149 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2150 + <td> 更新时间 </td>
  2151 + </tr>
  2152 + <tr>
  2153 + <td>&nbsp;</td>
  2154 + <td><a name='sys_job.remark'>remark</a></td>
  2155 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2156 + <td> 备注信息 </td>
  2157 + </tr>
  2158 +<tr><th colspan='4'>Indexes</th></tr>
  2159 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;job</td>
  2160 + <td> ON job&#95;id&#44; job&#95;name&#44; job&#95;group</td>
  2161 + <td> </td>
  2162 + </tr>
  2163 +</tbody>
  2164 +</table></div></div>
  2165 +
  2166 +<br/><br/>
  2167 +<div class='card'><div class='card-block'><a name='sys_job_log' onclick='window.scrollTo(1165, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_job_log</h4></a>
  2168 +<table class='table-sm table-bordered'>
  2169 +<thead>
  2170 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2171 +<tbody>
  2172 + <tr>
  2173 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2174 + <td><a name='sys_job_log.job_log_id'>job&#95;log&#95;id</a></td>
  2175 + <td> int AUTOINCREMENT </td>
  2176 + <td> 任务日志ID </td>
  2177 + </tr>
  2178 + <tr>
  2179 + <td>*</td>
  2180 + <td><a name='sys_job_log.job_name'>job&#95;name</a></td>
  2181 + <td> varchar&#40; 64 &#41; </td>
  2182 + <td> 任务名称 </td>
  2183 + </tr>
  2184 + <tr>
  2185 + <td>*</td>
  2186 + <td><a name='sys_job_log.job_group'>job&#95;group</a></td>
  2187 + <td> varchar&#40; 64 &#41; </td>
  2188 + <td> 任务组名 </td>
  2189 + </tr>
  2190 + <tr>
  2191 + <td>&nbsp;</td>
  2192 + <td><a name='sys_job_log.method_name'>method&#95;name</a></td>
  2193 + <td> varchar&#40; 500 &#41; </td>
  2194 + <td> 任务方法 </td>
  2195 + </tr>
  2196 + <tr>
  2197 + <td>&nbsp;</td>
  2198 + <td><a name='sys_job_log.params'>params</a></td>
  2199 + <td> varchar&#40; 200 &#41; DEFAULT '' </td>
  2200 + <td> 方法参数 </td>
  2201 + </tr>
  2202 + <tr>
  2203 + <td>&nbsp;</td>
  2204 + <td><a name='sys_job_log.job_message'>job&#95;message</a></td>
  2205 + <td> varchar&#40; 500 &#41; </td>
  2206 + <td> 日志信息 </td>
  2207 + </tr>
  2208 + <tr>
  2209 + <td>&nbsp;</td>
  2210 + <td><a name='sys_job_log.is_exception'>is&#95;exception</a></td>
  2211 + <td> int DEFAULT 0 </td>
  2212 + <td> 是否异常 </td>
  2213 + </tr>
  2214 + <tr>
  2215 + <td>&nbsp;</td>
  2216 + <td><a name='sys_job_log.exception_info'>exception&#95;info</a></td>
  2217 + <td> text </td>
  2218 + <td> 异常信息 </td>
  2219 + </tr>
  2220 + <tr>
  2221 + <td>*</td>
  2222 + <td><a name='sys_job_log.create_time'>create&#95;time</a></td>
  2223 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2224 + <td> 创建时间 </td>
  2225 + </tr>
  2226 +<tr><th colspan='4'>Indexes</th></tr>
  2227 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;job&#95;log</td>
  2228 + <td> ON job&#95;log&#95;id</td>
  2229 + <td> </td>
  2230 + </tr>
  2231 +</tbody>
  2232 +</table></div></div>
  2233 +
  2234 +<br/><br/>
  2235 +<div class='card'><div class='card-block'><a name='sys_logininfor' onclick='window.scrollTo(1540, 330);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_logininfor</h4></a>
  2236 +<table class='table-sm table-bordered'>
  2237 +<thead>
  2238 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2239 +<tbody>
  2240 + <tr>
  2241 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2242 + <td><a name='sys_logininfor.info_id'>info&#95;id</a></td>
  2243 + <td> int AUTOINCREMENT </td>
  2244 + <td> 访问ID </td>
  2245 + </tr>
  2246 + <tr>
  2247 + <td>&nbsp;</td>
  2248 + <td><a name='sys_logininfor.login_name'>login&#95;name</a></td>
  2249 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2250 + <td> 登录账号 </td>
  2251 + </tr>
  2252 + <tr>
  2253 + <td>&nbsp;</td>
  2254 + <td><a name='sys_logininfor.ipaddr'>ipaddr</a></td>
  2255 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2256 + <td> 登录IP地址 </td>
  2257 + </tr>
  2258 + <tr>
  2259 + <td>&nbsp;</td>
  2260 + <td><a name='sys_logininfor.browser'>browser</a></td>
  2261 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2262 + <td> 浏览器类型 </td>
  2263 + </tr>
  2264 + <tr>
  2265 + <td>&nbsp;</td>
  2266 + <td><a name='sys_logininfor.os'>os</a></td>
  2267 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2268 + <td> 操作系统 </td>
  2269 + </tr>
  2270 + <tr>
  2271 + <td>&nbsp;</td>
  2272 + <td><a name='sys_logininfor.status'>status</a></td>
  2273 + <td> int DEFAULT 0 </td>
  2274 + <td> 登录状态 0成功 1失败 </td>
  2275 + </tr>
  2276 + <tr>
  2277 + <td>&nbsp;</td>
  2278 + <td><a name='sys_logininfor.msg'>msg</a></td>
  2279 + <td> varchar&#40; 255 &#41; DEFAULT '' </td>
  2280 + <td> 提示消息 </td>
  2281 + </tr>
  2282 + <tr>
  2283 + <td>*</td>
  2284 + <td><a name='sys_logininfor.login_time'>login&#95;time</a></td>
  2285 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2286 + <td> 访问时间 </td>
  2287 + </tr>
  2288 +<tr><th colspan='4'>Indexes</th></tr>
  2289 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;logininfor</td>
  2290 + <td> ON info&#95;id</td>
  2291 + <td> </td>
  2292 + </tr>
  2293 +</tbody>
  2294 +</table></div></div>
  2295 +
  2296 +<br/><br/>
  2297 +<div class='card'><div class='card-block'><a name='sys_menu' onclick='window.scrollTo(1180, 330);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_menu</h4></a>
  2298 +<table class='table-sm table-bordered'>
  2299 +<thead>
  2300 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2301 +<tbody>
  2302 + <tr>
  2303 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2304 + <td><a name='sys_menu.menu_id'>menu&#95;id</a></td>
  2305 + <td> int AUTOINCREMENT </td>
  2306 + <td> 菜单ID </td>
  2307 + </tr>
  2308 + <tr>
  2309 + <td>*</td>
  2310 + <td><a name='sys_menu.menu_name'>menu&#95;name</a></td>
  2311 + <td> varchar&#40; 50 &#41; </td>
  2312 + <td> 菜单名称 </td>
  2313 + </tr>
  2314 + <tr>
  2315 + <td>&nbsp;</td>
  2316 + <td><a name='sys_menu.parent_id'>parent&#95;id</a></td>
  2317 + <td> int DEFAULT 0 </td>
  2318 + <td> 父菜单ID </td>
  2319 + </tr>
  2320 + <tr>
  2321 + <td>&nbsp;</td>
  2322 + <td><a name='sys_menu.order_num'>order&#95;num</a></td>
  2323 + <td> int </td>
  2324 + <td> 显示顺序 </td>
  2325 + </tr>
  2326 + <tr>
  2327 + <td>&nbsp;</td>
  2328 + <td><a name='sys_menu.url'>url</a></td>
  2329 + <td> varchar&#40; 200 &#41; DEFAULT '' </td>
  2330 + <td> 请求地址 </td>
  2331 + </tr>
  2332 + <tr>
  2333 + <td>&nbsp;</td>
  2334 + <td><a name='sys_menu.menu_type'>menu&#95;type</a></td>
  2335 + <td> char&#40; 1 &#41; DEFAULT '' </td>
  2336 + <td> 类型&#58;M目录&#44;C菜单&#44;F按钮 </td>
  2337 + </tr>
  2338 + <tr>
  2339 + <td>&nbsp;</td>
  2340 + <td><a name='sys_menu.visible'>visible</a></td>
  2341 + <td> int DEFAULT 0 </td>
  2342 + <td> 菜单状态&#58;0显示&#44;1隐藏 </td>
  2343 + </tr>
  2344 + <tr>
  2345 + <td>&nbsp;</td>
  2346 + <td><a name='sys_menu.perms'>perms</a></td>
  2347 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2348 + <td> 权限标识 </td>
  2349 + </tr>
  2350 + <tr>
  2351 + <td>&nbsp;</td>
  2352 + <td><a name='sys_menu.icon'>icon</a></td>
  2353 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2354 + <td> 菜单图标 </td>
  2355 + </tr>
  2356 + <tr>
  2357 + <td>&nbsp;</td>
  2358 + <td><a name='sys_menu.create_by'>create&#95;by</a></td>
  2359 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2360 + <td> 创建者 </td>
  2361 + </tr>
  2362 + <tr>
  2363 + <td>*</td>
  2364 + <td><a name='sys_menu.create_time'>create&#95;time</a></td>
  2365 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2366 + <td> 创建时间 </td>
  2367 + </tr>
  2368 + <tr>
  2369 + <td>&nbsp;</td>
  2370 + <td><a name='sys_menu.update_by'>update&#95;by</a></td>
  2371 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2372 + <td> 更新者 </td>
  2373 + </tr>
  2374 + <tr>
  2375 + <td>*</td>
  2376 + <td><a name='sys_menu.update_time'>update&#95;time</a></td>
  2377 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2378 + <td> 更新时间 </td>
  2379 + </tr>
  2380 + <tr>
  2381 + <td>&nbsp;</td>
  2382 + <td><a name='sys_menu.remark'>remark</a></td>
  2383 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2384 + <td> 备注 </td>
  2385 + </tr>
  2386 +<tr><th colspan='4'>Indexes</th></tr>
  2387 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;menu</td>
  2388 + <td> ON menu&#95;id</td>
  2389 + <td> </td>
  2390 + </tr>
  2391 +</tbody>
  2392 +</table></div></div>
  2393 +
  2394 +<br/><br/>
  2395 +<div class='card'><div class='card-block'><a name='sys_oper_log' onclick='window.scrollTo(805, 285);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_oper_log</h4></a>
  2396 +<table class='table-sm table-bordered'>
  2397 +<thead>
  2398 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2399 +<tbody>
  2400 + <tr>
  2401 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2402 + <td><a name='sys_oper_log.oper_id'>oper&#95;id</a></td>
  2403 + <td> int AUTOINCREMENT </td>
  2404 + <td> 日志主键 </td>
  2405 + </tr>
  2406 + <tr>
  2407 + <td>&nbsp;</td>
  2408 + <td><a name='sys_oper_log.title'>title</a></td>
  2409 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2410 + <td> 模块标题 </td>
  2411 + </tr>
  2412 + <tr>
  2413 + <td>&nbsp;</td>
  2414 + <td><a name='sys_oper_log.action'>action</a></td>
  2415 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2416 + <td> 功能请求 </td>
  2417 + </tr>
  2418 + <tr>
  2419 + <td>&nbsp;</td>
  2420 + <td><a name='sys_oper_log.method'>method</a></td>
  2421 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2422 + <td> 方法名称 </td>
  2423 + </tr>
  2424 + <tr>
  2425 + <td>&nbsp;</td>
  2426 + <td><a name='sys_oper_log.channel'>channel</a></td>
  2427 + <td> varchar&#40; 20 &#41; DEFAULT '' </td>
  2428 + <td> 来源渠道 </td>
  2429 + </tr>
  2430 + <tr>
  2431 + <td>&nbsp;</td>
  2432 + <td><a name='sys_oper_log.login_name'>login&#95;name</a></td>
  2433 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2434 + <td> 登录账号 </td>
  2435 + </tr>
  2436 + <tr>
  2437 + <td>&nbsp;</td>
  2438 + <td><a name='sys_oper_log.dept_name'>dept&#95;name</a></td>
  2439 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2440 + <td> 部门名称 </td>
  2441 + </tr>
  2442 + <tr>
  2443 + <td>&nbsp;</td>
  2444 + <td><a name='sys_oper_log.oper_url'>oper&#95;url</a></td>
  2445 + <td> varchar&#40; 255 &#41; DEFAULT '' </td>
  2446 + <td> 请求URL </td>
  2447 + </tr>
  2448 + <tr>
  2449 + <td>&nbsp;</td>
  2450 + <td><a name='sys_oper_log.oper_ip'>oper&#95;ip</a></td>
  2451 + <td> varchar&#40; 30 &#41; DEFAULT '' </td>
  2452 + <td> 主机地址 </td>
  2453 + </tr>
  2454 + <tr>
  2455 + <td>&nbsp;</td>
  2456 + <td><a name='sys_oper_log.oper_param'>oper&#95;param</a></td>
  2457 + <td> varchar&#40; 255 &#41; DEFAULT '' </td>
  2458 + <td> 请求参数 </td>
  2459 + </tr>
  2460 + <tr>
  2461 + <td>&nbsp;</td>
  2462 + <td><a name='sys_oper_log.status'>status</a></td>
  2463 + <td> int DEFAULT 0 </td>
  2464 + <td> 操作状态 0正常 1异常 </td>
  2465 + </tr>
  2466 + <tr>
  2467 + <td>&nbsp;</td>
  2468 + <td><a name='sys_oper_log.error_msg'>error&#95;msg</a></td>
  2469 + <td> varchar&#40; 2000 &#41; DEFAULT '' </td>
  2470 + <td> 错误消息 </td>
  2471 + </tr>
  2472 + <tr>
  2473 + <td>*</td>
  2474 + <td><a name='sys_oper_log.oper_time'>oper&#95;time</a></td>
  2475 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2476 + <td> 操作时间 </td>
  2477 + </tr>
  2478 +<tr><th colspan='4'>Indexes</th></tr>
  2479 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;oper&#95;log</td>
  2480 + <td> ON oper&#95;id</td>
  2481 + <td> </td>
  2482 + </tr>
  2483 +</tbody>
  2484 +</table></div></div>
  2485 +
  2486 +<br/><br/>
  2487 +<div class='card'><div class='card-block'><a name='sys_post' onclick='window.scrollTo(1540, 45);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_post</h4></a>
  2488 +<table class='table-sm table-bordered'>
  2489 +<thead>
  2490 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2491 +<tbody>
  2492 + <tr>
  2493 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2494 + <td><a name='sys_post.post_id'>post&#95;id</a></td>
  2495 + <td> int AUTOINCREMENT </td>
  2496 + <td> 岗位ID </td>
  2497 + </tr>
  2498 + <tr>
  2499 + <td>*</td>
  2500 + <td><a name='sys_post.post_code'>post&#95;code</a></td>
  2501 + <td> varchar&#40; 64 &#41; </td>
  2502 + <td> 岗位编码 </td>
  2503 + </tr>
  2504 + <tr>
  2505 + <td>*</td>
  2506 + <td><a name='sys_post.post_name'>post&#95;name</a></td>
  2507 + <td> varchar&#40; 100 &#41; </td>
  2508 + <td> 岗位名称 </td>
  2509 + </tr>
  2510 + <tr>
  2511 + <td>*</td>
  2512 + <td><a name='sys_post.post_sort'>post&#95;sort</a></td>
  2513 + <td> int </td>
  2514 + <td> 显示顺序 </td>
  2515 + </tr>
  2516 + <tr>
  2517 + <td>*</td>
  2518 + <td><a name='sys_post.status'>status</a></td>
  2519 + <td> int </td>
  2520 + <td> 状态(0正常 1停用) </td>
  2521 + </tr>
  2522 + <tr>
  2523 + <td>&nbsp;</td>
  2524 + <td><a name='sys_post.create_by'>create&#95;by</a></td>
  2525 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2526 + <td> 创建者 </td>
  2527 + </tr>
  2528 + <tr>
  2529 + <td>*</td>
  2530 + <td><a name='sys_post.create_time'>create&#95;time</a></td>
  2531 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2532 + <td> 创建时间 </td>
  2533 + </tr>
  2534 + <tr>
  2535 + <td>&nbsp;</td>
  2536 + <td><a name='sys_post.update_by'>update&#95;by</a></td>
  2537 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2538 + <td> 更新者 </td>
  2539 + </tr>
  2540 + <tr>
  2541 + <td>*</td>
  2542 + <td><a name='sys_post.update_time'>update&#95;time</a></td>
  2543 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2544 + <td> 更新时间 </td>
  2545 + </tr>
  2546 + <tr>
  2547 + <td>&nbsp;</td>
  2548 + <td><a name='sys_post.remark'>remark</a></td>
  2549 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2550 + <td> 备注 </td>
  2551 + </tr>
  2552 +<tr><th colspan='4'>Indexes</th></tr>
  2553 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;post</td>
  2554 + <td> ON post&#95;id</td>
  2555 + <td> </td>
  2556 + </tr>
  2557 +</tbody>
  2558 +</table></div></div>
  2559 +
  2560 +<br/><br/>
  2561 +<div class='card'><div class='card-block'><a name='sys_role' onclick='window.scrollTo(1345, 465);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_role</h4></a>
  2562 +<table class='table-sm table-bordered'>
  2563 +<thead>
  2564 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2565 +<tbody>
  2566 + <tr>
  2567 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2568 + <td><a name='sys_role.role_id'>role&#95;id</a></td>
  2569 + <td> int AUTOINCREMENT </td>
  2570 + <td> 角色ID </td>
  2571 + </tr>
  2572 + <tr>
  2573 + <td>*</td>
  2574 + <td><a name='sys_role.role_name'>role&#95;name</a></td>
  2575 + <td> varchar&#40; 30 &#41; </td>
  2576 + <td> 角色名称 </td>
  2577 + </tr>
  2578 + <tr>
  2579 + <td>*</td>
  2580 + <td><a name='sys_role.role_key'>role&#95;key</a></td>
  2581 + <td> varchar&#40; 100 &#41; </td>
  2582 + <td> 角色权限字符串 </td>
  2583 + </tr>
  2584 + <tr>
  2585 + <td>*</td>
  2586 + <td><a name='sys_role.role_sort'>role&#95;sort</a></td>
  2587 + <td> int </td>
  2588 + <td> 显示顺序 </td>
  2589 + </tr>
  2590 + <tr>
  2591 + <td>&nbsp;</td>
  2592 + <td><a name='sys_role.status'>status</a></td>
  2593 + <td> int DEFAULT 0 </td>
  2594 + <td> 角色状态&#58;0正常&#44;1禁用 </td>
  2595 + </tr>
  2596 + <tr>
  2597 + <td>&nbsp;</td>
  2598 + <td><a name='sys_role.create_by'>create&#95;by</a></td>
  2599 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2600 + <td> 创建者 </td>
  2601 + </tr>
  2602 + <tr>
  2603 + <td>*</td>
  2604 + <td><a name='sys_role.create_time'>create&#95;time</a></td>
  2605 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2606 + <td> 创建时间 </td>
  2607 + </tr>
  2608 + <tr>
  2609 + <td>&nbsp;</td>
  2610 + <td><a name='sys_role.update_by'>update&#95;by</a></td>
  2611 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2612 + <td> 更新者 </td>
  2613 + </tr>
  2614 + <tr>
  2615 + <td>*</td>
  2616 + <td><a name='sys_role.update_time'>update&#95;time</a></td>
  2617 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2618 + <td> 更新时间 </td>
  2619 + </tr>
  2620 + <tr>
  2621 + <td>&nbsp;</td>
  2622 + <td><a name='sys_role.remark'>remark</a></td>
  2623 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2624 + <td> 备注 </td>
  2625 + </tr>
  2626 +<tr><th colspan='4'>Indexes</th></tr>
  2627 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;role</td>
  2628 + <td> ON role&#95;id</td>
  2629 + <td> </td>
  2630 + </tr>
  2631 +</tbody>
  2632 +</table></div></div>
  2633 +
  2634 +<br/><br/>
  2635 +<div class='card'><div class='card-block'><a name='sys_role_menu' onclick='window.scrollTo(1345, 330);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_role_menu</h4></a>
  2636 +<table class='table-sm table-bordered'>
  2637 +<thead>
  2638 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2639 +<tbody>
  2640 + <tr>
  2641 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2642 + <td><a name='sys_role_menu.role_id'>role&#95;id</a></td>
  2643 + <td> int </td>
  2644 + <td> 角色ID </td>
  2645 + </tr>
  2646 + <tr>
  2647 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2648 + <td><a name='sys_role_menu.menu_id'>menu&#95;id</a></td>
  2649 + <td> int </td>
  2650 + <td> 菜单ID </td>
  2651 + </tr>
  2652 +<tr><th colspan='4'>Indexes</th></tr>
  2653 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;role&#95;menu</td>
  2654 + <td> ON role&#95;id&#44; menu&#95;id</td>
  2655 + <td> </td>
  2656 + </tr>
  2657 +</tbody>
  2658 +</table></div></div>
  2659 +
  2660 +<br/><br/>
  2661 +<div class='card'><div class='card-block'><a name='sys_user' onclick='window.scrollTo(490, 90);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_user</h4></a>
  2662 +<table class='table-sm table-bordered'>
  2663 +<thead>
  2664 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2665 +<tbody>
  2666 + <tr>
  2667 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2668 + <td><a name='sys_user.user_id'>user&#95;id</a></td>
  2669 + <td> int AUTOINCREMENT </td>
  2670 + <td> 用户ID </td>
  2671 + </tr>
  2672 + <tr>
  2673 + <td>&nbsp;</td>
  2674 + <td><a name='sys_user.dept_id'>dept&#95;id</a></td>
  2675 + <td> int </td>
  2676 + <td> 部门ID </td>
  2677 + </tr>
  2678 + <tr>
  2679 + <td>&nbsp;</td>
  2680 + <td><a name='sys_user.login_name'>login&#95;name</a></td>
  2681 + <td> varchar&#40; 30 &#41; DEFAULT '' </td>
  2682 + <td> 登录账号 </td>
  2683 + </tr>
  2684 + <tr>
  2685 + <td>&nbsp;</td>
  2686 + <td><a name='sys_user.user_name'>user&#95;name</a></td>
  2687 + <td> varchar&#40; 30 &#41; DEFAULT '' </td>
  2688 + <td> 用户昵称 </td>
  2689 + </tr>
  2690 + <tr>
  2691 + <td>&nbsp;</td>
  2692 + <td><a name='sys_user.email'>email</a></td>
  2693 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2694 + <td> 用户邮箱 </td>
  2695 + </tr>
  2696 + <tr>
  2697 + <td>&nbsp;</td>
  2698 + <td><a name='sys_user.phonenumber'>phonenumber</a></td>
  2699 + <td> varchar&#40; 20 &#41; DEFAULT '' </td>
  2700 + <td> 手机号码 </td>
  2701 + </tr>
  2702 + <tr>
  2703 + <td>&nbsp;</td>
  2704 + <td><a name='sys_user.password'>password</a></td>
  2705 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2706 + <td> 密码 </td>
  2707 + </tr>
  2708 + <tr>
  2709 + <td>&nbsp;</td>
  2710 + <td><a name='sys_user.salt'>salt</a></td>
  2711 + <td> varchar&#40; 100 &#41; DEFAULT '' </td>
  2712 + <td> 盐加密 </td>
  2713 + </tr>
  2714 + <tr>
  2715 + <td>&nbsp;</td>
  2716 + <td><a name='sys_user.user_type'>user&#95;type</a></td>
  2717 + <td> char&#40; 1 &#41; DEFAULT 'N' </td>
  2718 + <td> 类型&#58;Y默认用户&#44;N非默认用户 </td>
  2719 + </tr>
  2720 + <tr>
  2721 + <td>&nbsp;</td>
  2722 + <td><a name='sys_user.status'>status</a></td>
  2723 + <td> int DEFAULT 0 </td>
  2724 + <td> 帐号状态&#58;0正常&#44;1禁用 </td>
  2725 + </tr>
  2726 + <tr>
  2727 + <td>&nbsp;</td>
  2728 + <td><a name='sys_user.refuse_des'>refuse&#95;des</a></td>
  2729 + <td> varchar&#40; 500 &#41; DEFAULT '' </td>
  2730 + <td> 拒绝登录描述 </td>
  2731 + </tr>
  2732 + <tr>
  2733 + <td>&nbsp;</td>
  2734 + <td><a name='sys_user.create_by'>create&#95;by</a></td>
  2735 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2736 + <td> 创建者 </td>
  2737 + </tr>
  2738 + <tr>
  2739 + <td>*</td>
  2740 + <td><a name='sys_user.create_time'>create&#95;time</a></td>
  2741 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2742 + <td> 创建时间 </td>
  2743 + </tr>
  2744 + <tr>
  2745 + <td>&nbsp;</td>
  2746 + <td><a name='sys_user.update_by'>update&#95;by</a></td>
  2747 + <td> varchar&#40; 64 &#41; DEFAULT '' </td>
  2748 + <td> 更新者 </td>
  2749 + </tr>
  2750 + <tr>
  2751 + <td>*</td>
  2752 + <td><a name='sys_user.update_time'>update&#95;time</a></td>
  2753 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2754 + <td> 更新时间 </td>
  2755 + </tr>
  2756 +<tr><th colspan='4'>Indexes</th></tr>
  2757 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;user</td>
  2758 + <td> ON user&#95;id</td>
  2759 + <td> </td>
  2760 + </tr>
  2761 +</tbody>
  2762 +</table></div></div>
  2763 +
  2764 +<br/><br/>
  2765 +<div class='card'><div class='card-block'><a name='sys_user_online' onclick='window.scrollTo(460, 420);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_user_online</h4></a>
  2766 +<table class='table-sm table-bordered'>
  2767 +<thead>
  2768 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2769 +<tbody>
  2770 + <tr>
  2771 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2772 + <td><a name='sys_user_online.sessionId'>sessionId</a></td>
  2773 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2774 + <td> 用户会话id </td>
  2775 + </tr>
  2776 + <tr>
  2777 + <td>&nbsp;</td>
  2778 + <td><a name='sys_user_online.login_name'>login&#95;name</a></td>
  2779 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2780 + <td> 登录账号 </td>
  2781 + </tr>
  2782 + <tr>
  2783 + <td>&nbsp;</td>
  2784 + <td><a name='sys_user_online.dept_name'>dept&#95;name</a></td>
  2785 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2786 + <td> 部门名称 </td>
  2787 + </tr>
  2788 + <tr>
  2789 + <td>&nbsp;</td>
  2790 + <td><a name='sys_user_online.ipaddr'>ipaddr</a></td>
  2791 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2792 + <td> 登录IP地址 </td>
  2793 + </tr>
  2794 + <tr>
  2795 + <td>&nbsp;</td>
  2796 + <td><a name='sys_user_online.browser'>browser</a></td>
  2797 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2798 + <td> 浏览器类型 </td>
  2799 + </tr>
  2800 + <tr>
  2801 + <td>&nbsp;</td>
  2802 + <td><a name='sys_user_online.os'>os</a></td>
  2803 + <td> varchar&#40; 50 &#41; DEFAULT '' </td>
  2804 + <td> 操作系统 </td>
  2805 + </tr>
  2806 + <tr>
  2807 + <td>&nbsp;</td>
  2808 + <td><a name='sys_user_online.status'>status</a></td>
  2809 + <td> varchar&#40; 10 &#41; DEFAULT '' </td>
  2810 + <td> 在线状态on&#95;line在线off&#95;line离线 </td>
  2811 + </tr>
  2812 + <tr>
  2813 + <td>*</td>
  2814 + <td><a name='sys_user_online.start_timestamp'>start&#95;timestsamp</a></td>
  2815 + <td> timestamp DEFAULT CURRENT_TIMESTAMP </td>
  2816 + <td> session创建时间 </td>
  2817 + </tr>
  2818 + <tr>
  2819 + <td>*</td>
  2820 + <td><a name='sys_user_online.last_access_time'>last&#95;access&#95;time</a></td>
  2821 + <td> timestamp DEFAULT '0000-00-00 00:00:00' </td>
  2822 + <td> session最后访问时间 </td>
  2823 + </tr>
  2824 + <tr>
  2825 + <td>&nbsp;</td>
  2826 + <td><a name='sys_user_online.expire_time'>expire&#95;time</a></td>
  2827 + <td> int DEFAULT 0 </td>
  2828 + <td> 超时时间,单位为分钟 </td>
  2829 + </tr>
  2830 +<tr><th colspan='4'>Indexes</th></tr>
  2831 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;user&#95;online</td>
  2832 + <td> ON sessionId</td>
  2833 + <td> </td>
  2834 + </tr>
  2835 +</tbody>
  2836 +</table></div></div>
  2837 +
  2838 +<br/><br/>
  2839 +<div class='card'><div class='card-block'><a name='sys_user_post' onclick='window.scrollTo(655, 420);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_user_post</h4></a>
  2840 +<table class='table-sm table-bordered'>
  2841 +<thead>
  2842 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2843 +<tbody>
  2844 + <tr>
  2845 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2846 + <td><a name='sys_user_post.user_id'>user&#95;id</a></td>
  2847 + <td> varchar&#40; 64 &#41; </td>
  2848 + <td> 用户ID </td>
  2849 + </tr>
  2850 + <tr>
  2851 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2852 + <td><a name='sys_user_post.post_id'>post&#95;id</a></td>
  2853 + <td> varchar&#40; 64 &#41; </td>
  2854 + <td> 岗位ID </td>
  2855 + </tr>
  2856 +<tr><th colspan='4'>Indexes</th></tr>
  2857 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;user&#95;post</td>
  2858 + <td> ON user&#95;id&#44; post&#95;id</td>
  2859 + <td> </td>
  2860 + </tr>
  2861 +</tbody>
  2862 +</table></div></div>
  2863 +
  2864 +<br/><br/>
  2865 +<div class='card'><div class='card-block'><a name='sys_user_role' onclick='window.scrollTo(655, 285);return false;' style='cursor:pointer;'><h4 class='card-title'>Table sys_user_role</h4></a>
  2866 +<table class='table-sm table-bordered'>
  2867 +<thead>
  2868 +<tr><th>Indexes</th><th>Field Name</th><th>Data Type</th><th>Description</th></tr></thead>
  2869 +<tbody>
  2870 + <tr>
  2871 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2872 + <td><a name='sys_user_role.user_id'>user&#95;id</a></td>
  2873 + <td> int </td>
  2874 + <td> 用户ID </td>
  2875 + </tr>
  2876 + <tr>
  2877 + <td>*<svg width='14' height='14'><use xlink:href='#pk'/></svg></td>
  2878 + <td><a name='sys_user_role.role_id'>role&#95;id</a></td>
  2879 + <td> int </td>
  2880 + <td> 角色ID </td>
  2881 + </tr>
  2882 +<tr><th colspan='4'>Indexes</th></tr>
  2883 + <tr> <td><svg width='14' height='14'><use xlink:href='#pk'/></svg></td><td>pk&#95;sys&#95;user&#95;role</td>
  2884 + <td> ON user&#95;id&#44; role&#95;id</td>
  2885 + <td> </td>
  2886 + </tr>
  2887 +</tbody>
  2888 +</table></div></div>
  2889 +
  2890 +<p align='right'><a href='https://www.dbschema.com' style='color:#aaa'>Powered by DbSchema</a></p></body></html>
0 2891 \ No newline at end of file
... ...