structure.php 16.4 KB
<?php
/**
 * 应用的数据表结构文件
 * structure.php
 * $Author$
 */
return "
CREATE TABLE IF NOT EXISTS `oa_task_customtask` (
  `customtask_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `ea_id` char(32) NOT NULL DEFAULT '' COMMENT '创建人ID',
  `ea_name` varchar(50) NOT NULL DEFAULT '0' COMMENT '创建人姓名',
  `task_name` varchar(20) NOT NULL DEFAULT '' COMMENT '任务名称',
  `description` longtext NOT NULL COMMENT '任务描述',
  `start_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '任务开始时间',
  `end_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '任务结束时间',
  `is_reward` tinyint(1) NOT NULL DEFAULT '0' COMMENT '发放激励(1=不发放;2=发放)',
  `reward_setting` text NOT NULL COMMENT '激励设置(序列化)',
  `is_notice` tinyint(1) NOT NULL DEFAULT '0' COMMENT '发布消息提醒(1=不提醒;2=提醒)',
  `user_total` int(10) NOT NULL DEFAULT '0' COMMENT '参与人数',
  `complete_total` int(10) NOT NULL DEFAULT '0' COMMENT '已完成人数',
  `task_status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '任务状态(1=草稿;2=未开始;3=进行中;4=已结束;5=已终止)',
  `send_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '发布时间',
  `update_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间(创建、编辑后刷新)',
  `count_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '统计时间(统计已完成人数、参与人数后刷新)',
  `stop_ea_id` char(32) NOT NULL DEFAULT '' COMMENT '终止人ID',
  `stop_ea_name` varchar(50) NOT NULL DEFAULT '' COMMENT '终止人姓名',
  `stop_desc` varchar(60) NOT NULL DEFAULT '' COMMENT '终止原因',
  `stop_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '终止时间',
  `is_auto_remind` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否自动提醒(1=否;2=是)',
  `interval_time` int(10) NOT NULL DEFAULT '0' COMMENT '提醒间隔时间(单位:小时)',
  `reminder_time` bigint(13) NOT NULL DEFAULT '0' COMMENT '最近一次提醒时间',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`customtask_id`),
  KEY `task_name` (`task_name`),
  KEY `start_time` (`start_time`),
  KEY `end_time` (`end_time`),
  KEY `update_time` (`update_time`),
  KEY `task_status` (`task_status`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='常规任务表';

CREATE TABLE IF NOT EXISTS `oa_task_customtask_content` (
  `customtask_content_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `app_data_id` int(10) NOT NULL DEFAULT '0' COMMENT '应用数据ID',
  `title` varchar(100) NOT NULL DEFAULT '' COMMENT '标题',
  `order` int(10) NOT NULL DEFAULT '0' COMMENT '排序',
  `content_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '内容状态(1=正常;2=已删除)',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`customtask_content_id`),
  KEY `customtask_id` (`customtask_id`),
  KEY `domain` (`domain`),
  KEY `status` (`status`),
  KEY `app` (`app`) USING BTREE,
  KEY `app_data_id` (`app_data_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='常规任务内容表';

CREATE TABLE IF NOT EXISTS `oa_task_customtask_cron` (
  `customtask_cron_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `cron_id` char(32) NOT NULL DEFAULT '' COMMENT '计划任务ID',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`customtask_cron_id`),
  KEY `customtask_id` (`customtask_id`),
  KEY `cron_id` (`cron_id`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='常规任务计划任务表';

CREATE TABLE IF NOT EXISTS `oa_task_customtask_right` (
  `customtask_right_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `obj_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '权限类型(1=全公司;2=部门;3=标签;4=人员;5=职位;6=角色)',
  `obj_id` char(32) NOT NULL DEFAULT '' COMMENT '部门ID、标签ID、人员ID、职位ID、角色ID',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`customtask_right_id`),
  KEY `domain` (`domain`) USING BTREE,
  KEY `status` (`status`) USING BTREE,
  KEY `obj_type` (`obj_type`) USING BTREE,
  KEY `obj_id` (`obj_id`) USING BTREE,
  KEY `customtask_id` (`customtask_id`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='常规任务权限表';

CREATE TABLE IF NOT EXISTS `oa_task_dailytask` (
  `dailytask_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `rules` text NOT NULL COMMENT '任务规则',
  `is_open` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否开启(1=未开启;2=已开启)',
  `update_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`dailytask_id`),
  KEY `app` (`app`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='每日任务表';

CREATE TABLE IF NOT EXISTS `oa_task_setting` (
  `setting_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `key` varchar(255) NOT NULL DEFAULT '' COMMENT '变量名',
  `value` text NOT NULL COMMENT '变量值',
  `type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '缓存类型:0=非数组; 1=数组',
  `comment` text NOT NULL COMMENT '说明',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`setting_id`),
  KEY `key` (`key`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='系统配置表';

CREATE TABLE IF NOT EXISTS `oa_task_syscache` (
  `syscache_id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键自增id',
  `name` varchar(255) NOT NULL DEFAULT '' COMMENT '缓存文件名',
  `type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '缓存类型:0=非数组,1=数组',
  `data` mediumblob NOT NULL COMMENT '数据',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`syscache_id`),
  KEY `name` (`name`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='系统缓存';

CREATE TABLE IF NOT EXISTS `oa_task_user_action` (
  `user_action_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `app_data_id` int(10) NOT NULL DEFAULT '0' COMMENT '数据ID',
  `action_key` varchar(50) NOT NULL DEFAULT '' COMMENT '动作Key',
  `description` varchar(50) NOT NULL DEFAULT '' COMMENT '描述',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_action_id`),
  KEY `domain` (`domain`,`status`),
  KEY `uid` (`uid`,`customtask_id`,`app`,`app_data_id`,`action_key`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户动作数据表';

CREATE TABLE IF NOT EXISTS `oa_task_user_content` (
  `user_content_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `customtask_content_id` int(10) NOT NULL DEFAULT '0' COMMENT '任务内容ID',
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `app_data_id` int(10) NOT NULL DEFAULT '0' COMMENT '应用数据ID',
  `content_status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '内容完成状态(1=未完成;2=已完成)',
  `complete_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '完成时间',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_content_id`),
  KEY `uid` (`uid`),
  KEY `customtask_id` (`customtask_id`),
  KEY `customtask_content_id` (`customtask_content_id`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户常规任务内容表';

CREATE TABLE IF NOT EXISTS `oa_task_user_notice` (
  `user_notice_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `rule_name` varchar(50) NOT NULL DEFAULT '' COMMENT '规则名称',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_notice_id`),
  KEY `uid` (`uid`) USING BTREE,
  KEY `app` (`app`) USING BTREE,
  KEY `rule_name` (`rule_name`) USING BTREE,
  KEY `domain` (`domain`) USING BTREE,
  KEY `status` (`status`),
  KEY `created` (`created`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户每日任务完成通知表';

CREATE TABLE IF NOT EXISTS `oa_task_user_reward` (
  `user_reward_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `app` varchar(20) NOT NULL DEFAULT '' COMMENT '应用',
  `rule_name` varchar(50) NOT NULL DEFAULT '' COMMENT '规则名称',
  `integral` int(10) NOT NULL DEFAULT '0' COMMENT '获得积分',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_reward_id`),
  KEY `uid` (`uid`),
  KEY `rule_name` (`rule_name`),
  KEY `domain` (`domain`),
  KEY `status` (`status`),
  KEY `created` (`created`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户每日任务激励领取表';

CREATE TABLE IF NOT EXISTS `oa_task_user_sign` (
  `user_sign_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `sign_total` int(10) NOT NULL DEFAULT '0' COMMENT '签到总数',
  `integral` int(10) NOT NULL DEFAULT '0' COMMENT '最后一次获得的积分',
  `update_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_sign_id`),
  KEY `uid` (`uid`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户签到统计表';

CREATE TABLE IF NOT EXISTS `oa_task_user_sign_record` (
  `user_sign_record_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `domain` char(32) NOT NULL DEFAULT '' COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_sign_record_id`),
  KEY `uid` (`uid`),
  KEY `domain` (`domain`),
  KEY `status` (`status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户签到记录表';

CREATE TABLE IF NOT EXISTS `oa_task_user_task` (
  `user_task_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `uid` char(32) NOT NULL DEFAULT '' COMMENT '用户ID',
  `username` varchar(50) NOT NULL DEFAULT '' COMMENT '用户姓名',
  `customtask_id` int(10) NOT NULL DEFAULT '0' COMMENT '常规任务ID',
  `progress` tinyint(3) NOT NULL DEFAULT '0' COMMENT '任务进度',
  `complete_status` tinyint(1) NOT NULL DEFAULT '2' COMMENT '完成状态(2=执行中;3=已完成)',
  `task_status` tinyint(1) NOT NULL DEFAULT '3' COMMENT '任务状态(3=进行中;4=已结束;5=已终止)',
  `update_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `complete_time` bigint(20) NOT NULL DEFAULT '0' COMMENT '完成时间',
  `domain` char(32) NOT NULL DEFAULT ''  COMMENT '企业域名',
  `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '数据状态(1=新创建;2=已更新;3=已删除)',
  `created` bigint(20) NOT NULL DEFAULT '0' COMMENT '创建时间',
  `updated` bigint(20) NOT NULL DEFAULT '0' COMMENT '更新时间',
  `deleted` bigint(20) NOT NULL DEFAULT '0' COMMENT '删除时间',
  PRIMARY KEY (`user_task_id`),
  KEY `uid` (`uid`),
  KEY `domain` (`domain`),
  KEY `status` (`status`),
  KEY `customtask_id` (`customtask_id`) USING BTREE,
  KEY `complete_status` (`complete_status`),
  KEY `task_status` (`task_status`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='用户常规任务进度表';
";