This commit is contained in:
zlwu committed 2026-08-14 16:01:47 +08:00
1 parent 85b0b454bf
commit 1bdf979a70
23 files changed
+5514 -4394

No files matched your search

-8
View File
@@ -1,8 +0,0 @@
-- 员工微信小程序 openid 绑定字段(微信授权登录)
-- MySQL 5.7:唯一索引允许多个 NULL
ALTER TABLE `sys_user`
ADD COLUMN `wx_openid` varchar(64) DEFAULT NULL COMMENT '微信小程序 openid' AFTER `phone_no`;
ALTER TABLE `sys_user`
ADD UNIQUE INDEX `uk_sys_user_wx_openid` (`wx_openid`);
@@ -0,0 +1,57 @@
-- 将「开启微信通知」(OA007) 授予全部未删除角色
-- 前置:已执行 docs/sql/mobile_menu_oa_wechat_notify.sql(菜单须已存在)
-- 幂等:可重复执行;已有有效授权跳过;软删则恢复
-- 说明:
-- 1) 用户变量显式 utf8mb4_unicode_ci,避免 collation 混用报错 1267
-- 2) 主键用 MD5(role_id|menu_id),避免 INSERT…SELECT 中 UUID() 只算一次导致重复主键
SET @menu_id = CONVERT('MINI000000000000000000000000OA007' USING utf8mb4) COLLATE utf8mb4_unicode_ci;
SET @tenant_no = CONVERT('zkxw' USING utf8mb4) COLLATE utf8mb4_unicode_ci;
-- 1) 恢复历史上已软删的授权(按 role_id + menu_id)
UPDATE sys_role_menu rm
INNER JOIN sys_role r
ON r.id COLLATE utf8mb4_unicode_ci = rm.role_id COLLATE utf8mb4_unicode_ci
AND r.del_flag = 0
AND r.tenant_no COLLATE utf8mb4_unicode_ci = @tenant_no
SET
rm.del_flag = 0,
rm.update_time = NOW(),
rm.remark = 'grant wechat-notify to all roles'
WHERE rm.menu_id COLLATE utf8mb4_unicode_ci = @menu_id
AND rm.tenant_no COLLATE utf8mb4_unicode_ci = @tenant_no
AND rm.del_flag = 1;
-- 2) 为尚未关联该菜单的角色新增授权
INSERT INTO sys_role_menu (
id, role_id, menu_id, tenant_no, order_num, remark,
create_by, create_dept_id, create_time, update_by, update_time, del_flag
)
SELECT
UPPER(MD5(CONCAT(r.id, '|', @menu_id))),
r.id,
@menu_id,
@tenant_no,
0,
'grant wechat-notify to all roles',
'admin',
'',
NOW(),
NULL,
NOW(),
0
FROM sys_role r
WHERE r.del_flag = 0
AND r.tenant_no COLLATE utf8mb4_unicode_ci = @tenant_no
AND EXISTS (
SELECT 1 FROM sys_menu m
WHERE m.id COLLATE utf8mb4_unicode_ci = @menu_id
AND m.del_flag = 0
)
AND NOT EXISTS (
SELECT 1 FROM sys_role_menu rm
WHERE rm.role_id COLLATE utf8mb4_unicode_ci = r.id COLLATE utf8mb4_unicode_ci
AND rm.menu_id COLLATE utf8mb4_unicode_ci = @menu_id
AND rm.tenant_no COLLATE utf8mb4_unicode_ci = @tenant_no
AND rm.del_flag = 0
);
-17
View File
@@ -1,17 +0,0 @@
-- 中国节假日日历缓存
-- MySQL 5.7 / utf8mb4
CREATE TABLE IF NOT EXISTS `sys_cn_holiday_day` (
`id` VARCHAR(64) NOT NULL COMMENT 'UUID',
`day_date` DATE NOT NULL COMMENT '日历日',
`day_type` TINYINT NOT NULL COMMENT '0工作日1周末2节日3调休放假4补班',
`day_name` VARCHAR(64) DEFAULT NULL COMMENT '名称',
`week` TINYINT DEFAULT NULL COMMENT '1-7周一到周日',
`is_rest_day` TINYINT NOT NULL DEFAULT 0 COMMENT '1休息0工作',
`raw_json` TEXT COMMENT '原始JSON片段',
`sync_time` DATETIME DEFAULT NULL COMMENT '同步时间',
`create_time` DATETIME DEFAULT NULL,
`update_time` DATETIME DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_day_date` (`day_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='中国节假日日历缓存';