CREATE TABLE `qy_user` (
  `id` int NOT NULL AUTO_INCREMENT COMMENT '主键编号',
  `oper_id` int DEFAULT NULL COMMENT '操作序号',
  `open_userid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '全局唯一',
  `userid` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '成员UserID。对应管理端的账号，企业内必须唯一。不区分大小写',
  `ab98_user_id` bigint DEFAULT NULL COMMENT '汇邦云用户id',
  `name` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '成员名称',
  `mobile` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '手机号码',
  `department` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '成员所属部门id列表',
  `user_order` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '部门内的排序值，默认为0',
  `position` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '职务信息',
  `gender` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '性别。0表示未定义，1表示男性，2表示女性。',
  `email` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '邮箱',
  `biz_mail` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '企业邮箱',
  `is_leader_in_dept` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '表示在所在的部门内是否为部门负责人，数量与department一致',
  `direct_leader` varchar(200) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '直属上级UserID',
  `avatar` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `thumb_avatar` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '头像缩略图url',
  `telephone` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '座机',
  `alias` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '别名',
  `extattr` varchar(300) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '扩展属性',
  `status` varchar(10) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '激活状态: 1=已激活，2=已禁用，4=未激活，5=退出企业。',
  `qr_code` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '员工个人二维码',
  `external_profile` varchar(300) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '成员对外属性',
  `external_position` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '对外职务',
  `address` varchar(300) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '地址',
  `main_department` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '主部门，仅当应用对主部门有查看权限时返回。',
  `enable` varchar(2) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '1' COMMENT '有效标志(1-有效，0-无效)',
  `corpid` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '企业微信id',
  `appid` varchar(30) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '应用ID',
  `cid` int DEFAULT NULL COMMENT '公司ID',
  `creator_id` bigint NOT NULL DEFAULT '0' COMMENT '创建者ID',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater_id` bigint NOT NULL DEFAULT '0' COMMENT '更新者ID',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标志（0存在 1删除）',
  `balance` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '用户余额（精度与商品价格对齐）',
  `use_balance` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '已使用用户余额',
  `balance_limit` decimal(15,2) NOT NULL DEFAULT '0.00' COMMENT '余额额度',
  `sys_role_id` bigint DEFAULT NULL COMMENT '系统角色id',
  PRIMARY KEY (`id`),
  KEY `ik_qy_user_cid` (`corpid`),
  KEY `ik_qy_user_userid` (`userid`),
  KEY `ik_qy_user_mobile` (`mobile`)
) ENGINE=InnoDB AUTO_INCREMENT=831 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='企业微信-人员信息';

CREATE TABLE `ab98_user` (
  `ab98_user_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `openid` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT 'openid',
  `userid` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '汇邦云用户唯一ID',
  `qy_user_id` bigint DEFAULT NULL COMMENT '企业用户id',
  `name` varchar(50) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '真实姓名',
  `tel` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '手机号码',
  `idnum` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '身份证号码',
  `sex` char(8) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '性别（男 女）',
  `face_img` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '人脸照片地址',
  `idcard_front` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '身份证正面地址',
  `idcard_back` varchar(500) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '身份证背面地址',
  `address` varchar(200) COLLATE utf8mb4_unicode_ci DEFAULT NULL COMMENT '身份证登记地址',
  `registered` tinyint(1) NOT NULL DEFAULT '0' COMMENT '是否已注册（0未注册 1已注册）',
  `creator_id` bigint DEFAULT '0' COMMENT '创建者ID',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater_id` bigint DEFAULT '0' COMMENT '更新者ID',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标志（0存在 1删除）',
  `ab98_balance` int NOT NULL DEFAULT '0' COMMENT '用户余额（单位：分）',
  PRIMARY KEY (`ab98_user_id`),
  KEY `idx_openid` (`openid`),
  KEY `idx_tel` (`tel`),
  KEY `idx_name` (`name`)
) ENGINE=InnoDB AUTO_INCREMENT=81 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='汇邦云用户信息表';

CREATE TABLE `user_balance` (
  `user_balance_id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键ID',
  `corpid` varchar(50) NOT NULL COMMENT '企业微信id',
  `openid` varchar(32) DEFAULT NULL COMMENT 'openid',
  `ab98_user_id` bigint NOT NULL COMMENT '汇邦云用户ID',
  `qy_user_id` bigint DEFAULT NULL COMMENT '企业用户id',
  `balance` bigint NOT NULL DEFAULT 0 COMMENT '用户余额（单位：分）',
  `use_balance` bigint NOT NULL DEFAULT 0 COMMENT '用户余额（单位：分）',
  `balance_limit` bigint NOT NULL DEFAULT 0 COMMENT '用户余额（单位：分）',
  `creator_id` bigint NULL DEFAULT 0 COMMENT '创建者ID',
  `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `updater_id` bigint NULL DEFAULT 0 COMMENT '更新者ID',
  `update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  `deleted` tinyint(1) NOT NULL DEFAULT '0' COMMENT '删除标志（0存在 1删除）',
  PRIMARY KEY (`user_balance_id`),
  KEY `idx_openid` (`openid`),
  KEY `idx_ab98_user_id` (`ab98_user_id`),
  KEY `idx_corpid` (`corpid`),
  UNIQUE KEY `uk_corpid_user` (`corpid`, `ab98_user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='用户余额表';