医疗互助补助模块
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
-- 医疗互助疾病类型基础表;脚本可重复执行。
|
||||
CREATE TABLE IF NOT EXISTS `medical_disease_type` (
|
||||
`id` varchar(32) NOT NULL COMMENT 'ID',
|
||||
`diseaseName` varchar(50) NOT NULL COMMENT '疾病名称',
|
||||
`diseaseCode` varchar(20) NOT NULL COMMENT '疾病编码',
|
||||
`isMajorDiseases` tinyint(1) NOT NULL DEFAULT 1 COMMENT '是否重大疾病',
|
||||
`createdBy` varchar(32) DEFAULT NULL COMMENT '创建人',
|
||||
`createdAt` bigint DEFAULT NULL COMMENT '创建时间',
|
||||
`updatedBy` varchar(32) DEFAULT NULL COMMENT '修改人',
|
||||
`updatedAt` bigint DEFAULT NULL COMMENT '修改时间',
|
||||
`delFlag` tinyint(1) DEFAULT 0 COMMENT '删除标记',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_medical_disease_type_code` (`diseaseCode`),
|
||||
KEY `idx_medical_disease_type_name` (`diseaseName`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='医疗互助疾病类型表';
|
||||
@@ -0,0 +1,71 @@
|
||||
DROP TABLE IF EXISTS `tb_mutual_apply`;
|
||||
CREATE TABLE `tb_mutual_apply` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`apply_no` varchar(50) DEFAULT NULL COMMENT '申请编号',
|
||||
`user_id` varchar(50) DEFAULT NULL COMMENT '申请人用户ID',
|
||||
`login_name` varchar(50) DEFAULT NULL COMMENT '申请人工号/登录名',
|
||||
`user_name` varchar(50) NOT NULL COMMENT '申请人姓名',
|
||||
`sex` varchar(20) DEFAULT NULL COMMENT '性别',
|
||||
`birthday` date DEFAULT NULL COMMENT '出生年月',
|
||||
`native_place` varchar(100) DEFAULT NULL COMMENT '籍贯',
|
||||
`education` varchar(50) DEFAULT NULL COMMENT '学历',
|
||||
`professional_title` varchar(100) DEFAULT NULL COMMENT '职称',
|
||||
`dept_id` varchar(50) DEFAULT NULL COMMENT '工作部门ID',
|
||||
`dept_name` varchar(200) DEFAULT NULL COMMENT '工作部门(系部)',
|
||||
`id_card` varchar(30) DEFAULT NULL COMMENT '身份证号码',
|
||||
`mobile` varchar(30) DEFAULT NULL COMMENT '联系电话',
|
||||
`bank_card_no` varchar(50) DEFAULT NULL COMMENT '工资银行卡号',
|
||||
`bank_name` varchar(200) DEFAULT NULL COMMENT '开户行',
|
||||
`join_date` date DEFAULT NULL COMMENT '入会时间',
|
||||
`join_year` int DEFAULT NULL COMMENT '加入年份',
|
||||
`disease_type_id` varchar(32) DEFAULT NULL COMMENT '大病类型ID',
|
||||
`disease_name` varchar(200) NOT NULL COMMENT '大病名称',
|
||||
`hospital_desc` varchar(500) DEFAULT NULL COMMENT '何时何病住何医院',
|
||||
`medical_total_amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '全年医疗费用总金额',
|
||||
`self_pay_amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '自付金额',
|
||||
`sign_file_id` varchar(50) DEFAULT NULL COMMENT '申请人签名文件ID',
|
||||
`sign_time` datetime DEFAULT NULL COMMENT '申请人签名时间',
|
||||
`status` tinyint NOT NULL DEFAULT 0 COMMENT '状态 0未审核 1已审核',
|
||||
`submit_time` datetime DEFAULT NULL COMMENT '提交时间',
|
||||
`audit_by` varchar(50) DEFAULT NULL COMMENT '审核人',
|
||||
`audit_time` datetime DEFAULT NULL COMMENT '审核时间',
|
||||
`audit_opinion` varchar(500) DEFAULT NULL COMMENT '审核意见',
|
||||
`config_id` bigint DEFAULT NULL COMMENT '审核使用的互助金配置ID',
|
||||
`config_year` int DEFAULT NULL COMMENT '审核使用的配置年度',
|
||||
`subsidy_total_amount` decimal(12,2) DEFAULT NULL COMMENT '补助小计',
|
||||
`bonus_ratio` decimal(5,2) DEFAULT NULL COMMENT '奖励/补助系数',
|
||||
`actual_subsidy_amount` decimal(12,2) DEFAULT NULL COMMENT '实际补助金额',
|
||||
`continuous_unapply_year` int DEFAULT NULL COMMENT '连续未申请年数',
|
||||
`limit_amount` decimal(12,2) DEFAULT NULL COMMENT '本次适用最高补助限额',
|
||||
`remark` varchar(500) DEFAULT NULL COMMENT '备注',
|
||||
`create_by` varchar(50) DEFAULT NULL COMMENT '创建人',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
`update_by` varchar(50) DEFAULT NULL COMMENT '更新人',
|
||||
`update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_user_id` (`user_id`),
|
||||
KEY `idx_login_name` (`login_name`),
|
||||
KEY `idx_dept_id` (`dept_id`),
|
||||
KEY `idx_status` (`status`),
|
||||
KEY `idx_disease_type_id` (`disease_type_id`),
|
||||
KEY `idx_join_year` (`join_year`),
|
||||
KEY `idx_submit_time` (`submit_time`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='互助金申请表';
|
||||
|
||||
DROP TABLE IF EXISTS `tb_mutual_apply_subsidy`;
|
||||
CREATE TABLE `tb_mutual_apply_subsidy` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`apply_id` bigint NOT NULL COMMENT '申请ID',
|
||||
`ratio_id` bigint DEFAULT NULL COMMENT '使用的补助比例配置ID',
|
||||
`range_name` varchar(100) DEFAULT NULL COMMENT '区间名称',
|
||||
`start_amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '区间开始金额',
|
||||
`end_amount` decimal(12,2) DEFAULT NULL COMMENT '区间结束金额(NULL表示无限)',
|
||||
`ratio` decimal(5,2) NOT NULL DEFAULT '0.00' COMMENT '补助比例(%)',
|
||||
`base_amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '本区间参与计算金额',
|
||||
`subsidy_amount` decimal(12,2) NOT NULL DEFAULT '0.00' COMMENT '本区间补助金额',
|
||||
`sort` int DEFAULT 1 COMMENT '排序',
|
||||
`create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `idx_apply_id` (`apply_id`),
|
||||
KEY `idx_ratio_id` (`ratio_id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='互助金补贴金额明细表';
|
||||
@@ -0,0 +1,51 @@
|
||||
-- 医疗互助疾病类型 PC 端与移动端菜单。
|
||||
-- 使用 permission 做幂等判断,重复执行不会插入重复菜单。
|
||||
|
||||
-- PC 端一级菜单。
|
||||
INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService)
|
||||
SELECT 'e5d7a110aa214cdf8505fd0000000001', '', LPAD(IFNULL(MAX(CAST(path AS UNSIGNED)), 0) + 1, 4, '0'), '医疗互助', 'Medical Mutual Aid', 'menu', '', '', 'ti-heart', 1, 0, 'medicalMutualAid', NULL, 992, 1, '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'y', 0, 0
|
||||
FROM sys_menu
|
||||
WHERE platform = 'PC' AND (parentId = '' OR parentId IS NULL) AND CHAR_LENGTH(path) = 4
|
||||
HAVING NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'medicalMutualAid' AND platform = 'PC') t);
|
||||
|
||||
-- PC 端医疗管理分组。
|
||||
INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService)
|
||||
SELECT 'e5d7a110aa214cdf8505fd0000000002', p.id, CONCAT(p.path, '0001'), '医疗管理', 'Medical Manage', 'menu', '', '', '', 1, 0, 'medicalMutualAid.medical', NULL, 1, 1, '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'y', 0, 0
|
||||
FROM sys_menu p
|
||||
WHERE p.permission = 'medicalMutualAid' AND p.platform = 'PC'
|
||||
AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'medicalMutualAid.medical' AND platform = 'PC') t);
|
||||
|
||||
-- PC 端疾病种类页面。
|
||||
INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService)
|
||||
SELECT 'e5d7a110aa214cdf8505fd0000000003', p.id, CONCAT(p.path, '0001'), '疾病种类', 'Disease Type', 'menu', '/platform/medicalMutualAid/medical/diseaseType', 'data-pjax', '', 1, 0, 'medicalMutualAid.medical.diseaseType', NULL, 1, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'PC', NULL, NULL, 'j', 0, 0
|
||||
FROM sys_menu p
|
||||
WHERE p.permission = 'medicalMutualAid.medical' AND p.platform = 'PC'
|
||||
AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'medicalMutualAid.medical.diseaseType' AND platform = 'PC') t);
|
||||
|
||||
-- 移动端一级菜单。
|
||||
INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService)
|
||||
SELECT 'e5d7a110aa214cdf8505fd0000000004', '', LPAD(IFNULL(MAX(CAST(path AS UNSIGNED)), 0) + 1, 4, '0'), '医疗互助', 'Medical Mutual Aid', 'menu', '', '', 'heart-o', 1, 0, 'h5.medicalMutualAid', NULL, 992, 1, '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'H5', NULL, NULL, 'y', 0, 0
|
||||
FROM sys_menu
|
||||
WHERE platform = 'H5' AND (parentId = '' OR parentId IS NULL) AND CHAR_LENGTH(path) = 4
|
||||
HAVING NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'h5.medicalMutualAid' AND platform = 'H5') t);
|
||||
|
||||
-- 移动端疾病种类页面,权限严格使用 h5. 前缀。
|
||||
INSERT INTO sys_menu (id, parentId, path, name, aliasName, type, href, target, icon, showit, disabled, permission, note, location, hasChildren, createdBy, createdAt, updatedBy, updatedAt, delFlag, platform, moduleId, picIcon, initialPinyinName, isRecommendApp, isRecommendService)
|
||||
SELECT 'e5d7a110aa214cdf8505fd0000000005', p.id, CONCAT(p.path, '0001'), '疾病种类', 'Disease Type', 'menu', '/platform/h5/medicalMutualAid/medical/diseaseType', 'data-pjax', '', 1, 0, 'h5.medicalMutualAid.medical.diseaseType', NULL, 1, 0, '', UNIX_TIMESTAMP(NOW()) * 1000, '', UNIX_TIMESTAMP(NOW()) * 1000, 0, 'H5', NULL, NULL, 'j', 0, 0
|
||||
FROM sys_menu p
|
||||
WHERE p.permission = 'h5.medicalMutualAid' AND p.platform = 'H5'
|
||||
AND NOT EXISTS (SELECT 1 FROM (SELECT id FROM sys_menu WHERE permission = 'h5.medicalMutualAid.medical.diseaseType' AND platform = 'H5') t);
|
||||
|
||||
-- 默认授予系统管理员,其他角色可在角色管理中按需分配。
|
||||
INSERT INTO sys_role_menu (roleId, menuId)
|
||||
SELECT r.id, m.id
|
||||
FROM sys_role r
|
||||
JOIN sys_menu m ON m.permission IN (
|
||||
'medicalMutualAid',
|
||||
'medicalMutualAid.medical',
|
||||
'medicalMutualAid.medical.diseaseType',
|
||||
'h5.medicalMutualAid',
|
||||
'h5.medicalMutualAid.medical.diseaseType'
|
||||
)
|
||||
LEFT JOIN sys_role_menu rm ON rm.roleId = r.id AND rm.menuId = m.id
|
||||
WHERE r.code = 'SYSADMIN' AND rm.roleId IS NULL;
|
||||
Reference in New Issue
Block a user