Przeglądaj źródła

增加数据库预置脚本

yucheng 3 lat temu
rodzic
commit
d2b27e47bd

+ 6 - 2
dc-business/dc-digital/src/main/java/com/persagy/dc/define/entity/ObjectInfo.java

@@ -28,7 +28,7 @@ public class ObjectInfo extends AuditableEntity {
     /** 信息点分类:STATIC-静态,PULSE-脉冲,GRADATION-阶段,SEQUENTIAL-时序 */
     private String category;
     /** 管理层级:common-平台级,group-集团级,project-项目级 */
-    private String type;
+///    private String type;
     /** 一级标签 */
     private String firstTag;
     /** 二级标签 */
@@ -50,9 +50,13 @@ public class ObjectInfo extends AuditableEntity {
     /** 取值范围 */
     private ArrayNode dataSource;
     /** 备注 */
-    private String note;
+    private String remark;
     /** 子分类标记 */
     private Boolean subFlag;
     /** 虚点 */
     private Boolean weakPoint;
+    /** 显示顺序 */
+    private Long showOrder;
+    /** 版本 */
+    private String version;
 }

+ 2 - 0
dc-business/dc-digital/src/main/java/com/persagy/dc/define/entity/ObjectType.java

@@ -49,4 +49,6 @@ public class ObjectType extends AuditableEntity {
     private String equipmentCode;
     /** 上级类型编码 */
     private String parentCode;
+    /** 版本 */
+    private String version;
 }

+ 1 - 1
dc-business/dc-digital/src/main/java/com/persagy/dc/digital/entity/ObjectDigital.java

@@ -32,7 +32,7 @@ public class ObjectDigital extends AuditableEntity {
     /** 边类型编码 */
     private ObjectNode infos;
     /** 虚点清单 */
-    private List<String> virtualInfoCodes;
+    private List<String> virtualCodes;
     /** 创建应用 */
     private String createApp;
     /** 最后修改应用 */

+ 1 - 1
dc-business/dc-digital/src/main/java/com/persagy/dc/digital/handler/ProjectMessageVO.java

@@ -104,7 +104,7 @@ public class ProjectMessageVO {
         project.setObjType("project");
         project.setClassCode("project");
         project.setGrouping(1);
-        project.setVirtualInfoCodes(Collections.emptyList());
+        project.setVirtualCodes(Collections.emptyList());
         project.setValid(valid);
         if("create".equalsIgnoreCase(type)) {
             project.setCreateApp("bmp");

+ 150 - 32
dc-business/dc-digital/src/main/resources/db.init/schema.sql

@@ -1,41 +1,153 @@
-CREATE TABLE IF NOT EXISTS `dic_dt_data` (
-`id` varchar(80) NOT NULL,
-`dict_type_id` varchar(80) NOT NULL COMMENT '字典类型ID',
-`parent_id` varchar(80) DEFAULT NULL COMMENT '父节点',
-`type` varchar(80) NOT NULL COMMENT '字典类型',
-`code` varchar(200) NOT NULL COMMENT '字典数据编码',
-`label` varchar(200) NOT NULL COMMENT '字典数据标签',
-`status` int(11) NOT NULL COMMENT '状态',
-`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
-`create_user` varchar(40) DEFAULT NULL COMMENT '创建用户',
-`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
-`update_user` varchar(40) DEFAULT NULL COMMENT '更新用户',
-`remark` varchar(200) DEFAULT NULL,
-`order_num` int(11) DEFAULT NULL,
-PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='字典数据';
+CREATE TABLE IF NOT EXISTS `dt_define_type` (
+  `id` varchar(40) NOT NULL COMMENT '主键',
+  `code` varchar(40) NOT NULL COMMENT '编码-全局唯一',
+  `name` varchar(200) NOT NULL COMMENT '名称',
+  `alias_code` varchar(40) NOT NULL COMMENT '别名编码, 集团下唯一 ',
+  `alias_name` varchar(200) NOT NULL COMMENT '别名名称',
+  `obj_type` varchar(40) DEFAULT NULL COMMENT '大类型:项目建筑楼层空间系统设备竖井',
+  `group_code` varchar(40) NOT NULL DEFAULT '0' COMMENT '集团编码',
+  `project_id` varchar(40) NOT NULL DEFAULT '0' COMMENT '项目id',
+  `major_code` varchar(40) DEFAULT NULL COMMENT '专业编码, 上级类型是系统or设备时该字段有值',
+  `system_code` varchar(40) DEFAULT NULL COMMENT '系统编码,上级类型是设备时该字段有值,值为系统类型的code',
+  `equipment_code` varchar(40) DEFAULT NULL COMMENT '设备编码,上级类型是部件时该字段有值,值为设备类型的code',
+  `parent_code` varchar(40) DEFAULT NULL COMMENT '上级类型code,默认为"0"',
+  `version` varchar(40) DEFAULT NULL COMMENT '最后修改版本',
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_code` (`code`) USING BTREE,
+  KEY `idx_alias_code` (`alias_code`) USING BTREE,
+  KEY `idx_parent_code` (`parent_code`) USING BTREE,
+  KEY `idx_major_code` (`major_code`) USING BTREE,
+  KEY `idx_type` (`type`,`group_code`,`project_id`,`code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='对象类型定义';
 
-CREATE TABLE IF NOT EXISTS  `dic_dt_data` (
-`id` varchar(80) NOT NULL,
-`dict_type_id` varchar(80) NOT NULL COMMENT '字典类型ID',
-`parent_id` varchar(80) DEFAULT NULL COMMENT '父节点',
-`type` varchar(80) NOT NULL COMMENT '字典类型',
-`code` varchar(200) NOT NULL COMMENT '字典数据编码',
-`label` varchar(200) NOT NULL COMMENT '字典数据标签',
-`status` int(11) NOT NULL COMMENT '状态',
-`create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
-`create_user` varchar(40) DEFAULT NULL COMMENT '创建用户',
-`update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
-`update_user` varchar(40) DEFAULT NULL COMMENT '更新用户',
-`remark` varchar(200) DEFAULT NULL,
-`order_num` int(11) DEFAULT NULL,
-PRIMARY KEY (`id`)
-) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='字典数据';
+CREATE TABLE IF NOT EXISTS `dt_define_info` (
+  `id` varchar(40) NOT NULL,
+  `code` varchar(40) NOT NULL COMMENT '信息点编码,同类型下唯一,标准驼峰格式',
+  `name` varchar(200) DEFAULT NULL COMMENT '信息点名称',
+  `alias_code` varchar(40) DEFAULT NULL COMMENT '别名编码',
+  `alias_name` varchar(200) DEFAULT NULL COMMENT '别名名称',
+  `class_code` varchar(40) DEFAULT NULL COMMENT '类型编码',
+  `group_code` varchar(40) NOT NULL DEFAULT '0' COMMENT '集团编码',
+  `project_id` varchar(40) NOT NULL DEFAULT '0' COMMENT '项目id',
+  `category` varchar(40) DEFAULT NULL COMMENT '信息点分类:静态,脉冲,阶段,时序',
+  `first_tag` varchar(40) DEFAULT NULL COMMENT '一级标签',
+  `second_tag` varchar(40) DEFAULT NULL COMMENT '二级标签',
+  `priority` varchar(10) DEFAULT NULL COMMENT '优先级',
+  `input_mode` varchar(40) DEFAULT NULL COMMENT '输入方式',
+  `unit` varchar(40) DEFAULT NULL COMMENT '单位',
+  `data_type` varchar(40) DEFAULT NULL COMMENT '数据类型',
+  `multiple_flag` int(11) DEFAULT NULL COMMENT '是否复数',
+  `region_flag` int(11) DEFAULT NULL COMMENT '是否区间',
+  `formatter` varchar(40) DEFAULT NULL COMMENT '数据格式',
+  `data_source` json DEFAULT NULL COMMENT '数据源取值范围/枚举值清单等,根据dataType有不同的内容',
+  `remark` text COMMENT '备注',
+  `sub_flag` int(11) DEFAULT NULL COMMENT '子分类标记:是否可以按此信息点进行子分类替换,同一类型下目前只支持一个子分类信息点',
+  `weak_point` int(11) DEFAULT NULL COMMENT '虚点',
+  `show_order` int(11) DEFAULT NULL COMMENT '显示顺序',
+  `version` varchar(40) DEFAULT NULL COMMENT '最后修改版本',
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_class_1` (`class_code`,`code`) USING BTREE,
+  KEY `idx_class_2` (`class_code`,`orig_code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='信息点定义表';
 
+CREATE TABLE IF NOT EXISTS `dt_define_graph` (
+  `id` varchar(40) NOT NULL,
+  `code` varchar(40) DEFAULT NULL COMMENT '编码',
+  `name` varchar(200) DEFAULT NULL COMMENT '名称',
+  `first_category` varchar(40) DEFAULT NULL COMMENT '一级分类',
+  `second_category` varchar(40) DEFAULT NULL COMMENT '二级分类',
+  `remark` varchar(255) DEFAULT NULL COMMENT '分类说明',
+  `object_types` varchar(255) DEFAULT NULL COMMENT '关系两侧对象类别',
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_code` (`code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='图类型表';
 
+CREATE TABLE IF NOT EXISTS `dt_define_rel` (
+  `id` varchar(40) NOT NULL,
+  `code` varchar(40) DEFAULT NULL COMMENT '编码',
+  `name` varchar(200) DEFAULT NULL COMMENT '名称',
+  `graph_code` varchar(40) DEFAULT NULL COMMENT '图编码',
+  `directional` int(11) DEFAULT NULL COMMENT '边方向性',
+  `attribute` varchar(255) DEFAULT NULL COMMENT '边属性',
+  `target_objs` varchar(255) DEFAULT NULL COMMENT '主要连接对象',
+  `remark` varchar(45) DEFAULT NULL,
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_code` (`code`) USING BTREE,
+  KEY `idx_graph_code` (`graph_code`,`code`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='边类型表';
+
+CREATE TABLE IF NOT EXISTS `dt_object` (
+  `id` varchar(100) NOT NULL,
+  `name` varchar(100) DEFAULT NULL COMMENT '对象名称',
+  `local_id` varchar(100) DEFAULT NULL COMMENT '对象本地编码',
+  `local_name` varchar(100) DEFAULT NULL COMMENT '对象本地名称',
+  `group_code` varchar(40) DEFAULT NULL COMMENT '集团编码',
+  `project_id` varchar(40) NOT NULL COMMENT '项目id',
+  `obj_type` varchar(40) NOT NULL COMMENT '对象分类',
+  `class_code` varchar(40) NOT NULL COMMENT '对象类型编码',
+  `grouping` int(11) NOT NULL DEFAULT '1' COMMENT '1单个对象,2对象组',
+  `infos` json DEFAULT NULL COMMENT '边类型编码',
+  `virtual_codes` json DEFAULT NULL COMMENT '虚点清单',
+  `create_app` varchar(40) DEFAULT NULL COMMENT '创建应用',
+  `update_app` varchar(40) DEFAULT NULL COMMENT '最后更新应用',
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_project_1` (`project_id`,`class_code`,`create_time`) USING BTREE,
+  KEY `idx_project_2` (`project_id`,`create_time`) USING BTREE,
+  KEY `idx_project_3` (`project_id`,`update_time`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='对象实例表';
+
+CREATE TABLE IF NOT EXISTS `dt_relation` (
+  `id` varchar(40) NOT NULL,
+  `group_code` varchar(40) DEFAULT NULL,
+  `project_id` varchar(40) NOT NULL,
+  `graph_id` varchar(40) DEFAULT NULL COMMENT '图主键',
+  `graph_code` varchar(40) DEFAULT NULL COMMENT '图编码',
+  `rel_code` varchar(40) DEFAULT NULL COMMENT '关系编码',
+  `rel_value` varchar(45) DEFAULT NULL COMMENT '关系值',
+  `obj_from` varchar(40) DEFAULT NULL COMMENT '来源对象',
+  `obj_to` varchar(40) DEFAULT NULL COMMENT '目标对象',
+  `create_app` varchar(40) DEFAULT NULL COMMENT '创建应用',
+  `update_app` varchar(40) DEFAULT NULL COMMENT '最后更新应用',
+  `creator` varchar(32) DEFAULT NULL COMMENT '创建人',
+  `creation_time` char(14) NULL DEFAULT NULL COMMENT '创建时间',
+  `modifier` varchar(32) DEFAULT NULL COMMENT '最后修改人',
+  `modified_time` char(14) NULL DEFAULT NULL COMMENT '最后修改时间',
+  `valid` tinyint DEFAULT NULL COMMENT '合法标识',
+  `ts` timestamp default current_timestamp on update current_timestamp NOT NULL COMMENT '乐观锁',
+  PRIMARY KEY (`id`) USING BTREE,
+  KEY `idx_graph_code` (`graph_code`) USING BTREE,
+  KEY `idx_1` (`project_id`,`graph_code`,`rel_code`,`obj_from`,`obj_to`) USING BTREE,
+  KEY `idx_2` (`project_id`,`graph_id`,`rel_code`,`obj_from`,`obj_to`) USING BTREE,
+  KEY `idx_3` (`project_id`,`graph_code`,`rel_code`,`obj_to`) USING BTREE,
+  KEY `idx_4` (`project_id`,`graph_id`,`rel_code`,`obj_to`) USING BTREE
+) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='关系实例表';

+ 6 - 0
dc-cloud/dc-file/README.md

@@ -1,6 +1,12 @@
 文件管理服务
 ============ 
 文件管理服务
+待实现功能TODO:
+1. 文件下载记录。
+2. 文件下载统计。
+3. 文件按有效期自动清理。
+4. 文件迁移:按最近使用、按创建时间、按大小等规则迁移。
+5. 文件整理:相同文件整理,在线秒传。
 
 说明
 ---------------

+ 2 - 2
dc-cloud/dc-message/src/main/java/com/persagy/dc/sender/service/MessageSenderFactory.java

@@ -36,7 +36,7 @@ public class MessageSenderFactory {
         String[] channels = StrUtil.split(vo.getSendChannel(), StrUtil.COMMA);
         // 发送
         for(String channel:channels) {
-            IMessageSender sender = senderMap.get(channel);
+            IMessageSender sender = getSenderMap().get(channel);
             if(sender == null) {
                 log.error("没有找到【{}】对应的消息配置!", channel);
                 continue;
@@ -49,7 +49,7 @@ public class MessageSenderFactory {
      * 懒加载
      * @return
      */
-    private Map<String, IMessageSender> getSenderList() {
+    private Map<String, IMessageSender> getSenderMap() {
         if(MapUtil.isEmpty(senderMap)) {
             ISenderRegisterService senderService = SpringHelper.getBean(ISenderRegisterService.class);
             List<SenderRegister> registers = senderService.queryAll();