/*数据库*/ create database if not exists iot; use iot; /*用户表*/ create table if not exists user ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `name` varchar(20) default null comment '用户名', `sex` varchar(1) default null comment '性别', `nation` varchar(10) default null comment '民族', `phone` varchar(11) default null comment '手机号', `id_car_no` varchar(18) default null comment '身份证号', `id_card_back` tinytext default null comment '身份证反面照片', `id_card_front` tinytext default null comment '身份证正面照片', `face` tinytext default null comment '人脸照片', `address` tinytext default null comment '身份证地址', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) default 0 comment '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*公司表*/ create table if not exists company ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `org_code` varchar(18) default null comment '组织机构代码', `name` varchar(30) default null comment '公司名称', `license_no` varchar(18) default null comment '营业执照号', `license_pic` tinytext default null comment '营业执照照片', `address` varchar(50) default null comment '公司地址', `capital` varchar(20) default null comment '注册资金', `person` varchar(20) default null comment '法定代表人', `business` text default null comment '经营范围', `type` varchar(20) default null comment '公司类型', `period` varchar(30) default null comment '营业期限', `registrar` varchar(20) default null comment '登记机关', `register_date` datetime default null comment '登记日期', `set_date` varchar(20) default null comment '成立日期', `shop_name` varchar(30) default null comment '门店名称', `shop_pic` tinytext default null comment '门店照片', `service_tel` varchar(30) default null comment '服务电话', `env_pic` tinytext default null comment '环境照片', `city` varchar(20) default null comment '省市', `street` varchar(20) default null comment '街道', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) default 0 comment '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*公司成员表*/ create table if not exists company_member ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `company_id` int default null comment '所属公司编号', `uid` int default null comment '用户编号', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) default 0 comment '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*标签表*/ create table if not exists tag ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `name` varchar(10) default null comment '标签名称', `type` varchar(30) default null comment '标签类型', `description` tinytext default null comment '标签描述', `pid` int default null comment '父标签编号', `uid` int default null comment '所属用户', `company_id` int default null comment '所属公司', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) default 0 comment '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*设备表*/ create table if not exists device ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `name` varchar(30) default null comment '设备名称', `model` varchar(60) default null comment '设备型号', `type` varchar(10) default null comment '设备类型', `description` tinytext default null comment '设备描述', `uid` int default null comment '所属用户', `tag_id` int default null comment '所属标签', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) DEFAULT 0 COMMENT '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*设备状态表*/ create table if not exists device_state ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `model` varchar(60) default null comment '设备型号', `type` varchar(10) default null comment '设备类型', `operate` varchar(30) default null comment '操作码', `operate_no` varchar(30) default null comment '操作序列号', `switch` tinyint default null comment '设备开关状态', `current` float default null comment '设备当前电流', `voltage` float default null comment '设备当前电压', `active_power` float default null comment '设备当前功率', `power_factor` float default null comment '设备当前功率因数', `power` float default null comment '设备当前功率', `hz` float default null comment '设备当前频率', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) DEFAULT 0 COMMENT '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*mqtt消息表*/ create table if not exists mqtt_msg ( `id` int not null auto_increment comment '主键编号', `oper_id` int default null comment '操作序号', `req` json default null comment '请求报文', `req_topic` tinytext default null comment '请求主题', `res` json default null comment '响应报文', `res_topic` tinytext default null comment '响应主题', `create_time` datetime default null comment '创建时间', `create_user` varchar(20) default null comment '创建用户', `modify_time` datetime default null comment '更新时间', `modify_user` varchar(20) default null comment '更新用户', `deleted` tinyint(1) DEFAULT 0 COMMENT '是否删除', `cid` int default null comment '所属公司编号', primary key (`id`) ); /*支付配置*/ CREATE TABLE if not exists `pay_config` ( `id` INT(10) NOT NULL AUTO_INCREMENT COMMENT '主键编号', `oper_id` INT(10) NULL DEFAULT NULL, `wx_app_id` VARCHAR(32) NULL DEFAULT NULL COMMENT '微信公众号ID' COLLATE 'utf8mb3_general_ci', `wx_app_secret` VARCHAR(32) NULL DEFAULT NULL COMMENT '微信公众号秘钥' COLLATE 'utf8mb3_general_ci', `wx_app_pay_key` VARCHAR(32) NULL DEFAULT NULL COMMENT '微信商户支付APIV2秘钥' COLLATE 'utf8mb3_general_ci', `wx_api_cert` VARCHAR(4096) NULL DEFAULT NULL COMMENT '微信支付的API证书(格式:p12)' COLLATE 'utf8mb4_general_ci', `mch_id` VARCHAR(32) NULL DEFAULT NULL COMMENT '微信商户号' COLLATE 'utf8mb3_general_ci', `wx_enable` INT(10) NOT NULL DEFAULT '1' COMMENT '是否启用微信充值,0-否 1-是', `alipay_public_key` VARCHAR(2048) NULL DEFAULT NULL COMMENT '支付宝支付公钥' COLLATE 'utf8mb3_general_ci', `alipay_private_key` VARCHAR(2048) NULL DEFAULT NULL COMMENT '支付宝支付私钥' COLLATE 'utf8mb3_general_ci', `alipay_app_id` VARCHAR(32) NULL DEFAULT NULL COMMENT '支付宝商户ID' COLLATE 'utf8mb3_general_ci', `wx_mp_app_id` VARCHAR(32) NULL DEFAULT NULL COMMENT '微信小程序的appid' COLLATE 'utf8mb4_general_ci', `wx_mp_app_secret` VARCHAR(32) NULL DEFAULT NULL COMMENT '小程序密钥' COLLATE 'utf8mb4_general_ci', `biz_id` VARCHAR(32) NULL DEFAULT NULL COMMENT '业务ID' COLLATE 'utf8mb3_general_ci', `biz_name` VARCHAR(64) NULL DEFAULT NULL COMMENT '业务名称' COLLATE 'utf8mb3_general_ci', `callback_url` VARCHAR(255) NULL DEFAULT NULL COMMENT '支付回调地址' COLLATE 'utf8mb3_general_ci', `refund_notify_url` VARCHAR(255) NULL DEFAULT NULL COMMENT '退款结果业务回调地址' COLLATE 'utf8mb4_general_ci', `app_key` VARCHAR(32) NULL DEFAULT NULL COMMENT '应用key' COLLATE 'utf8mb3_general_ci', `alipay_enable` INT(10) NOT NULL DEFAULT '1' COMMENT '否是启用支付宝。0-否 1-是', `create_user` VARCHAR(30) NULL DEFAULT NULL COMMENT '创建人' COLLATE 'utf8mb3_general_ci', `create_time` DATETIME NULL DEFAULT NULL COMMENT '创建时间', `create_remark` VARCHAR(100) NULL DEFAULT NULL COMMENT '创建备注' COLLATE 'utf8mb3_general_ci', `modify_user` VARCHAR(30) NULL DEFAULT NULL COMMENT '修改人' COLLATE 'utf8mb3_general_ci', `modify_time` DATETIME NULL DEFAULT NULL COMMENT '修改时间', `modify_remark` VARCHAR(200) NULL DEFAULT NULL COMMENT '修改备注' COLLATE 'utf8mb3_general_ci', PRIMARY KEY (`id`) USING BTREE ) COMMENT='支付配置' COLLATE='utf8mb3_general_ci' ENGINE=InnoDB ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ; CREATE TABLE if not exists `recharge_order` ( `id` INT(10) NOT NULL AUTO_INCREMENT COMMENT '主键,自动递增', `oper_id` INT(10) NULL DEFAULT NULL, `order_no` VARCHAR(32) NOT NULL COMMENT '订单号' COLLATE 'utf8mb4_general_ci', `uid` INT(10) NOT NULL COMMENT '用户ID', `money` DECIMAL(10,2) NULL DEFAULT '0.00' COMMENT '支付金额,单位:元', `refund` DECIMAL(10,2) NULL DEFAULT NULL COMMENT '已退金额,单位:元', `pay_type` INT(10) NULL DEFAULT NULL COMMENT '支付方式:1-微信 2-支付宝', `status` TINYINT(3) NULL DEFAULT '0' COMMENT '订单状态。0-待支付 1-支付中 2-支付成功 3-支付失败 4-超时未支付 5-已退款', `remark` VARCHAR(255) NULL DEFAULT NULL COMMENT '备注' COLLATE 'utf8mb3_general_ci', `pay_time` DATETIME NULL DEFAULT NULL COMMENT '支付时间', `create_user` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci', `create_time` DATETIME NULL DEFAULT NULL, `create_remark` VARCHAR(100) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci', `modify_user` VARCHAR(30) NULL DEFAULT NULL COLLATE 'utf8mb4_general_ci', `modify_time` DATETIME NULL DEFAULT NULL, `modify_remark` VARCHAR(100) NULL DEFAULT NULL COLLATE 'utf8mb3_general_ci', PRIMARY KEY (`id`) USING BTREE, INDEX `idx_idnum` (`uid`) USING BTREE ) COMMENT='充值订单' COLLATE='utf8mb4_general_ci' ENGINE=InnoDB ROW_FORMAT=DYNAMIC AUTO_INCREMENT=1 ;