自学内容网 自学内容网

视图库对接系列(GA-T 1400)二、项目搭建

项目搭建

这里的话 我们就简单的说一下 项目怎么搭建相对比较好, 自己分析的经验 仅供参考哈。

分析项目

这里的话 我们通过看视图库对接系列(GA-T 1400)一、简单介绍知道视图库实现包含客户端和服务端。
另外根据我自身的项目经验的话
项目地的话有概率会使用视图库级联,有的项目地不一定会使用视图库级联。
某些项目地还会存在写定开,比如要求你把数据按照一定的格式封装写到对方的mysql 、MQ、通过HTTP协议、RPC协议推送给第三方等等。。。

这里的话 我们就稍微简单点,创建几个模块, 一个是公共模块,一个是视图库服务端模块,一个是视图库客户端模块,以及对应的推送模块,这个推送模块的话,优先级不高,后期有时间我们在弄。

在这里插入图片描述

数据库使用分析

视图库的话 不是完全无状态的, 所以我们需要设计几张表来保存下对应的数据。

本级表设计

view_library_domain_device:存储下级接入我们平台的消息表。
view_library_domain_channel:存储下级平台接入我们平台中的通道消息表
view_library_domain_subscribe:存储本级平台向下级平台订阅的消息表。

CREATE TABLE `view_library_domain_device` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `device_id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '设备ID',
  `device_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '设备名称',
  `device_status` tinyint(4) NOT NULL DEFAULT '1' COMMENT '设备状态(1.在线,2.离线,-1 注销)',
  `register_host` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '注册主机名',
  `register_time` datetime DEFAULT NULL COMMENT '注册时间',
  `max_heartbeat_timeout_num` int(11) DEFAULT '3' COMMENT '最大心跳超时次数',
  `heartbeat_cycle` int(11) DEFAULT '60' COMMENT '心跳周期',
  `latest_keep_alive_time` datetime DEFAULT NULL COMMENT '最新保活时间',
  `remark` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '备注',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `modified_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `device_id` (`device_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='本级接入设备表';

下面这个图就是视图库设备的页面,其中的设备编码如图
在这里插入图片描述

CREATE TABLE `view_library_domain_channel` (
  `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `device_id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '设备ID',
  `gb_channel_id` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '国标的通道id(非必须)',
  `channel_id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '通道ID',
  `channel_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '通道名称',
  `channel_status` tinyint(4) DEFAULT NULL COMMENT '通道状态',
  `longitude` decimal(10,6) DEFAULT NULL COMMENT '经度',
  `latitude` decimal(10,6) DEFAULT NULL COMMENT '纬度',
  `admin_code` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '安装地点行政区划代码',
  `function_type` tinyint(4) DEFAULT '1' COMMENT '通道类型  1、车辆卡口; 2、人员卡口',
  `location_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '位置名',
  `weblogic_enable` tinyint(4) DEFAULT '0' COMMENT '是否推送 0 不推送 1 推送',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `modified_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`) USING BTREE,
  UNIQUE KEY `device_channel_id` (`device_id`,`channel_id`) USING BTREE,
  KEY `channel_id` (`channel_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=33 DEFAULT CHARSET=utf8 ROW_FORMAT=DYNAMIC COMMENT='本级设备表';

下面这个图就是视图库设备的页面,其中的通道编码如图:
在这里插入图片描述

CREATE TABLE `view_library_domain_subscribe` (
  `id` bigint NOT NULL AUTO_INCREMENT,
  `platform_id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '平台id',
  `device_id` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '设备ID',
  `subscribe_id` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '订阅ID',
  `subscribe_status` tinyint DEFAULT '9' COMMENT '订阅状态 \r\n0:订阅中  1:已取消订阅   2:订阅到期  9:未订阅',
  `title` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '订阅标题',
  `begin_time` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '订阅开始时间',
  `end_time` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '订阅结束时间',
  `subscribe_detail` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '订阅详情',
  `receive_addr` varchar(225) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '回调地址',
  `report_interval` int NOT NULL COMMENT '上报涉密事件时间间隔(单位为秒)',
  `applicant_name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '申请人姓名',
  `applicant_org` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '申请人所在机构',
  `reason` varchar(100) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '申请使用涉密资源的原因',
  `subscribe_cancel_org` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '订阅取消单位',
  `subscribe_cancel_person` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '订阅取消人',
  `cancel_time` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '取消时间',
  `cancel_reason` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '取消原因',
  `result_image_declare` tinyint DEFAULT NULL COMMENT '“11”—人像小图“14”— 大图',
  `result_feature_declare` tinyint DEFAULT '-1' COMMENT ' -1 不要特征值1 需要返回特征值',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `modified_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
  PRIMARY KEY (`id`) USING BTREE,
  KEY `uac_device_id` (`platform_id`,`device_id`) USING BTREE,
  KEY `device_id` (`device_id`) USING BTREE,
  KEY `subscribe_id` (`subscribe_id`) USING BTREE,
  KEY `platform_id` (`platform_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 ROW_FORMAT=DYNAMIC COMMENT='本级订阅信息表';

测试设备型号

大华:DH-IPC-HFW5243M1-YL-PV-SA

java交流群(限订阅了的加)

868794080


原文地址:https://blog.csdn.net/qq_37716298/article/details/139798638

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!