## 数据字典
### 插件表
此表用于存储所有的扩展插件信息
~~~
CREATE TABLE IF NOT EXISTS `dc_addons` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`name` varchar(255) NOT NULL COMMENT '插件名称',
`bzname` varchar(50) NOT NULL COMMENT '标识名',
`desc` text COMMENT '描述',
`version` varchar(10) NOT NULL COMMENT '版本号',
`author` varchar(50) NOT NULL COMMENT '作者姓名',
`logo` varchar(255) NOT NULL COMMENT 'LOGO',
`status` int(1) NOT NULL DEFAULT '1' COMMENT '状态',
`config` text COMMENT '插件配置',
`type` varchar(50) DEFAULT NULL COMMENT '插件分类'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='插件表';
~~~
### 插件权限表
此表用于控制插件的启用/禁用状态
~~~
CREATE TABLE IF NOT EXISTS `dc_addons_access` (
`user_id` int(10) NOT NULL,
`addon` varchar(50) NOT NULL,
`mpid` int(10) NOT NULL,
`status` tinyint(1) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 插件封面入口表
此表用于存储插件的封面入口信息
~~~
CREATE TABLE IF NOT EXISTS `dc_addon_entry` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`addon` varchar(50) NOT NULL COMMENT '插件名称',
`name` varchar(255) DEFAULT NULL COMMENT '入口名称',
`act` varchar(50) NOT NULL COMMENT '操作',
`title` varchar(255) NOT NULL COMMENT '封面标题',
`desc` text COMMENT '封面描述',
`cover` varchar(255) NOT NULL DEFAULT '0' COMMENT '封面图片'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='插件功能入口表';
~~~
### 插件设置表
此表用于存储插件的配置参数
~~~
CREATE TABLE IF NOT EXISTS `dc_addon_setting` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`addon` varchar(50) NOT NULL COMMENT '插件标识',
`name` varchar(50) NOT NULL COMMENT '配置项',
`value` text NOT NULL COMMENT '配置值'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='插件配置参数表';
~~~
### 附件表
此表用于存储公众号上传的图片等附件
~~~
CREATE TABLE IF NOT EXISTS `dc_attach` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) DEFAULT NULL COMMENT '公众号ID',
`user_id` int(10) DEFAULT NULL COMMENT '上传者的用户ID',
`file_name` varchar(255) DEFAULT NULL COMMENT '文件名',
`file_extension` varchar(10) DEFAULT NULL COMMENT '附件后缀名',
`file_size` int(10) DEFAULT NULL COMMENT '附件大小',
`file_path` varchar(255) DEFAULT NULL COMMENT '附件存储位置',
`hash` varchar(50) DEFAULT NULL COMMENT '哈希',
`create_time` int(10) DEFAULT NULL COMMENT '附件创建时间',
`item_type` varchar(50) DEFAULT NULL COMMENT '类型'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='附件表';
~~~
### 公众号表
此表用于存储所有的公众号信息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`user_id` int(10) NOT NULL COMMENT '用户ID',
`group_id` varchar(50) DEFAULT NULL COMMENT '可用套餐ID',
`name` varchar(50) NOT NULL COMMENT '公众号名称',
`origin_id` varchar(50) NOT NULL COMMENT '公众号原始ID',
`type` int(1) NOT NULL DEFAULT '0' COMMENT '公众号类型(1:普通订阅号;2:认证订阅号;3:普通服务号;4:认证服务号',
`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '状态(0:禁用,1:正常,2:审核中)',
`create_time` int(10) NOT NULL COMMENT '创建时间',
`valid_token` varchar(40) DEFAULT NULL COMMENT '接口验证Token',
`token` varchar(50) DEFAULT NULL COMMENT '公众号标识',
`encodingaeskey` varchar(50) DEFAULT NULL COMMENT '消息加解密秘钥',
`appid` varchar(50) DEFAULT NULL COMMENT 'AppId',
`appsecret` varchar(50) DEFAULT NULL COMMENT 'AppSecret',
`mp_number` varchar(50) DEFAULT NULL COMMENT '微信号',
`desc` text COMMENT '描述',
`headimg` varchar(255) DEFAULT NULL COMMENT '头像',
`qrcode` varchar(255) DEFAULT NULL COMMENT '二维码',
`login_name` varchar(50) DEFAULT NULL COMMENT '公众号登录名'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号表';
~~~
### 公众号自动回复表
此表用于存储公众号的自动回复规则
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_auto_reply` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`type` varchar(50) DEFAULT NULL COMMENT '回复场景',
`reply_type` varchar(50) DEFAULT NULL COMMENT '回复类型',
`material_id` int(10) DEFAULT NULL COMMENT '回复素材ID',
`keyword` varchar(50) DEFAULT NULL COMMENT '绑定的关键词',
`addon` varchar(50) DEFAULT NULL COMMENT '处理消息的插件'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号自动回复表';
~~~
### 公众号粉丝表
此表用于存储公众号的粉丝信息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_fans` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`openid` varchar(255) NOT NULL COMMENT '粉丝标识',
`is_subscribe` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否关注',
`subscribe_time` int(10) NOT NULL COMMENT '关注时间',
`unsubscribe_time` int(10) DEFAULT NULL COMMENT '取消关注时间',
`nickname` varchar(50) DEFAULT NULL COMMENT '粉丝昵称',
`sex` tinyint(1) DEFAULT NULL COMMENT '粉丝性别',
`headimgurl` varchar(255) DEFAULT NULL COMMENT '粉丝头像',
`relname` varchar(50) DEFAULT NULL COMMENT '真实姓名',
`signature` text COMMENT '个性签名',
`mobile` varchar(15) DEFAULT NULL COMMENT '手机号',
`is_bind` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否绑定',
`language` varchar(50) DEFAULT NULL COMMENT '使用语言',
`country` varchar(50) DEFAULT NULL COMMENT '国家',
`province` varchar(50) DEFAULT NULL COMMENT '身份',
`city` varchar(50) DEFAULT NULL COMMENT '城市',
`remark` varchar(50) DEFAULT NULL COMMENT '备注',
`groupid` int(10) DEFAULT NULL COMMENT '分组ID',
`tagid_list` varchar(255) DEFAULT NULL COMMENT '标签',
`score` int(10) DEFAULT '0' COMMENT '积分',
`money` int(10) DEFAULT '0' COMMENT '金钱',
`latitude` varchar(50) DEFAULT NULL COMMENT '纬度',
`longitude` varchar(50) DEFAULT NULL COMMENT '经度',
`location_precision` varchar(50) DEFAULT NULL COMMENT '精度'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号粉丝表';
~~~
### 公众号分组表
此表用于存储公众号的分组信息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_group` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`name` varchar(255) NOT NULL COMMENT '套餐名称',
`addons` text COMMENT '可管理的插件'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号套餐表';
~~~
### 公众号素材表
此表用于存储公众号的素材信息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_material` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`type` varchar(50) DEFAULT NULL COMMENT '素材类型',
`content` text COMMENT '文本素材内容',
`image` varchar(255) DEFAULT NULL COMMENT '图片素材路径',
`title` varchar(255) DEFAULT NULL COMMENT '图文素材标题',
`picurl` varchar(255) DEFAULT NULL COMMENT '图文素材封面',
`url` varchar(255) DEFAULT NULL COMMENT '图文链接',
`description` text COMMENT '图文素材描述',
`create_time` int(10) DEFAULT NULL COMMENT '素材创建时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号素材表';
~~~
### 公众号消息表
此表用于存储公众号接收到的微信消息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_message` (
`id` int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`openid` varchar(50) NOT NULL COMMENT '用户标识',
`msgid` varchar(50) DEFAULT NULL COMMENT '消息ID',
`msgtype` varchar(10) NOT NULL COMMENT '消息类型',
`content` text COMMENT '消息内容',
`create_time` int(10) NOT NULL COMMENT '消息发送时间',
`picurl` varchar(255) DEFAULT NULL COMMENT '图片链接',
`mediaid` varchar(255) DEFAULT NULL COMMENT '媒体ID',
`format` varchar(50) DEFAULT NULL COMMENT '语音格式',
`recognition` text COMMENT '语音识别结果',
`thumb_mediaid` varchar(255) DEFAULT NULL COMMENT '视频消息缩略图ID',
`location_x` float DEFAULT NULL COMMENT '地理位置纬度',
`location_y` float DEFAULT NULL COMMENT '地理位置精度',
`scale` int(5) DEFAULT NULL COMMENT '地图缩放大小',
`label` varchar(50) DEFAULT NULL COMMENT '地理位置信息',
`title` varchar(255) DEFAULT NULL COMMENT '链接消息标题',
`description` varchar(255) DEFAULT NULL COMMENT '链接消息描述',
`url` varchar(255) DEFAULT NULL COMMENT '链接消息地址',
`reply_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '回复状态',
`save_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '保存为素材状态'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='消息表';
~~~
### 公众号支付记录表
此表用于存储调用微信支付产生的支付记录
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_payment` (
`id` int(10) NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`openid` varchar(255) DEFAULT NULL COMMENT '用户标识',
`orderid` varchar(255) DEFAULT NULL COMMENT '订单号',
`create_time` int(10) DEFAULT NULL COMMENT '支付时间',
`detail` text COMMENT '支付详情'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号支付配置';
~~~
### 公众号响应规则表
此表用于存储公众号的响应规则
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_rule` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号ID',
`addon` varchar(50) DEFAULT NULL COMMENT '插件标识',
`keyword` varchar(255) DEFAULT NULL COMMENT '关键词内容',
`type` varchar(50) DEFAULT NULL COMMENT '触发类型',
`entry_id` int(10) DEFAULT NULL COMMENT '功能入口ID',
`reply_id` int(10) DEFAULT NULL COMMENT '自动回复ID'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号响应规则';
~~~
### 积分记录表
此表用于存储公众号粉丝的积分记录
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_score_record` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号标识',
`openid` varchar(255) NOT NULL COMMENT '粉丝openid',
`type` varchar(50) DEFAULT 'score' COMMENT '积分类型,socre、money等',
`source` varchar(50) DEFAULT 'system' COMMENT '积分来源,system,addon',
`value` int(10) NOT NULL COMMENT '积分值',
`flag` varchar(50) DEFAULT NULL COMMENT '标识,fans_bind,IdouChat',
`remark` text COMMENT '积分说明'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='积分记录表';
~~~
### 公众号设置表
此表用于存储公众号的设置信息
~~~
CREATE TABLE IF NOT EXISTS `dc_mp_setting` (
`id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`mpid` int(10) NOT NULL COMMENT '公众号ID',
`name` varchar(255) NOT NULL COMMENT '配置项',
`value` text COMMENT '配置值'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号配置';
~~~
### 权限控制表
此表用于控制系统的访问权限
~~~
CREATE TABLE IF NOT EXISTS `dc_rbac_access` (
`role_id` smallint(6) unsigned NOT NULL,
`node_id` smallint(6) unsigned NOT NULL,
`level` tinyint(1) NOT NULL,
`module` varchar(50) DEFAULT NULL,
`status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '开启状态'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 公众号权限控制表
此表用于控制公众号的操作权限
~~~
CREATE TABLE IF NOT EXISTS `dc_rbac_mp_access` (
`role_id` int(10) NOT NULL COMMENT '角色ID',
`mp_groups` varchar(255) DEFAULT NULL COMMENT '可使用的公众号套餐',
`mp_count` int(5) DEFAULT NULL COMMENT '可创建公众号数',
`register_invite_count` int(10) DEFAULT NULL COMMENT '注册邀请数',
`addons` varchar(255) DEFAULT NULL COMMENT '插件权限'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='公众号权限表';
~~~
### 权限节点表
此表用于存储所有的权限节点信息
~~~
CREATE TABLE IF NOT EXISTS `dc_rbac_node` (
`id` smallint(6) unsigned AUTO_INCREMENT PRIMARY KEY NOT NULL,
`name` varchar(20) NOT NULL,
`title` varchar(50) DEFAULT NULL,
`status` tinyint(1) DEFAULT '0',
`remark` varchar(255) DEFAULT NULL,
`sort` smallint(6) unsigned DEFAULT NULL,
`pid` smallint(6) unsigned NOT NULL,
`level` tinyint(1) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 权限角色表
此表用于存储所有的角色信息
~~~
CREATE TABLE IF NOT EXISTS `dc_rbac_role` (
`id` smallint(6) unsigned AUTO_INCREMENT PRIMARY KEY NOT NULL,
`name` varchar(20) NOT NULL,
`pid` smallint(6) DEFAULT NULL,
`status` tinyint(1) unsigned DEFAULT NULL,
`remark` varchar(255) DEFAULT NULL,
`type` varchar(50) DEFAULT NULL COMMENT '角色类型'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 角色用户映射表
此表用于存储不同角色和用户的映射关系
~~~
CREATE TABLE IF NOT EXISTS `dc_rbac_role_user` (
`role_id` mediumint(9) unsigned DEFAULT NULL,
`user_id` char(32) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 场景二维码表
此表用于存储公众号生成的场景二维码信息
~~~
CREATE TABLE IF NOT EXISTS `dc_scene_qrcode` (
`id` int(10) unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '主键',
`mpid` int(10) DEFAULT NULL COMMENT '公众号标识',
`scene_name` varchar(255) DEFAULT NULL COMMENT '场景名称',
`keyword` varchar(255) DEFAULT NULL COMMENT '关联关键词',
`scene_type` char(10) DEFAULT '0' COMMENT '二维码类型',
`scene_id` int(32) DEFAULT NULL COMMENT '场景值ID',
`scene_str` varchar(255) DEFAULT NULL COMMENT '场景值字符串',
`expire` int(10) DEFAULT NULL COMMENT '过期时间',
`ticket` varchar(255) DEFAULT NULL COMMENT '二维码Ticket',
`url` varchar(255) DEFAULT NULL COMMENT '二维码图片解析后的地址',
`ctime` int(10) DEFAULT NULL COMMENT '二维码创建时间',
`short_url` varchar(255) DEFAULT NULL COMMENT '二维码短地址'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 二维码扫描统计表
此表用于存储场景二维码的扫描结果
~~~
CREATE TABLE IF NOT EXISTS `dc_scene_qrcode_statistics` (
`id` int(10) unsigned NOT NULL PRIMARY KEY AUTO_INCREMENT COMMENT '主键',
`mpid` int(10) DEFAULT NULL COMMENT '公众号标识',
`openid` varchar(255) DEFAULT NULL COMMENT '扫码者openid',
`scene_name` varchar(255) DEFAULT NULL COMMENT '场景名称',
`keyword` varchar(255) DEFAULT NULL COMMENT '关联关键词',
`scene_id` varchar(255) DEFAULT NULL COMMENT '场景ID/场景字符串',
`scan_type` varchar(255) DEFAULT NULL COMMENT '扫描类型',
`ctime` int(10) DEFAULT NULL COMMENT '扫描时间',
`qrcode_id` int(10) DEFAULT NULL COMMENT '二维码ID'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
~~~
### 系统设置表
此表用于存储所有的系统设置
~~~
CREATE TABLE IF NOT EXISTS `dc_system_setting` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`name` varchar(255) NOT NULL COMMENT '配置项',
`value` text COMMENT '配置值'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='全局配置表';
~~~
### 用户表
此表用于存储所有的用户信息
~~~
CREATE TABLE IF NOT EXISTS `dc_user` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT '自增ID',
`username` varchar(255) NOT NULL COMMENT '用户名',
`password` varchar(255) NOT NULL COMMENT '密码',
`nickname` varchar(50) DEFAULT NULL COMMENT '昵称',
`headimg` varchar(255) DEFAULT NULL COMMENT '头像',
`default_mpid` int(10) DEFAULT NULL COMMENT '默认管理的公众号ID',
`email` varchar(255) DEFAULT NULL COMMENT '用户邮箱',
`group_id` int(11) DEFAULT NULL COMMENT '用户组',
`register_time` int(10) NOT NULL COMMENT '注册时间'
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
~~~
- 更新日志
- 入门
- 关于豆信
- 系统安装
- 功能介绍
- 公众号对接
- 小程序对接
- 系统架构
- 数据字典
- 框架目录结构
- 插件目录结构
- 运行流程
- 插件开发
- 新建插件
- info.php
- 设计数据表
- 插件控制器
- 后台管理控制器
- 移动端控制器
- 交互响应控制器
- 接口管理控制器
- 插件模型
- 插件视图
- 发布插件
- 自定义模型
- 通用增删改查
- common_lists
- common_add
- common_edit
- common_delete
- setMetaTitle
- setSubmitType
- setModel
- setListMap
- setListSearch
- setListOrder
- setListPer
- setEditMap
- setDeleteMap
- setFindMap
- addCrumb
- addNav
- addButton
- setTip
- 函数手册
- get_addon
- get_addon_settings
- tomedia
- get_fans_info
- 小程序开发专题
- 小程序对接插件.js
- 获取插件配置
- 获取用户信息
- 更新用户资料
- 公众号开发专题
- 获取粉丝信息
- 自定义分享
- 消息上下文
- 微信支付
- 企业付款
- 发送现金红包
- 发送模板消息
- 发送客服消息
- 引入前端资源
- 限制页面仅在微信浏览器访问
- 在插件页面中引入样式文件
- 在插件中创建跳转链接
- 数据预处理
- 插件开发实例
- 聊天机器人
- 留言板
- 常见问题解答