1.添加手机号和身份证的安全性和保密性

2.添加对应的定时任务
This commit is contained in:
sh
2026-03-19 17:26:28 +08:00
parent e61cdafa9d
commit bbb106489e
40 changed files with 1321 additions and 52 deletions

View File

@@ -152,4 +152,88 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
order by b.create_time desc
</select>
<update id="batchUpdateIdCardAndPhone">
UPDATE app_user
SET id_card = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCard}
</foreach>
END,
id_card_cipher = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCardCipher}
</foreach>
END,
id_card_encrypt = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCardEncrypt}
</foreach>
END,
phone = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phone}
</foreach>
END,
phone_cipher = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phoneCipher}
</foreach>
END,
phone_encrypt = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phoneEncrypt}
</foreach>
END
WHERE user_id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.userId}
</foreach>
</update>
<update id="batchUpdateSysUserEncrypt">
UPDATE sys_user
SET id_card = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCard}
</foreach>
END,
id_card_cipher = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCardCipher}
</foreach>
END,
id_card_encrypt = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.idCardEncrypt}
</foreach>
END,
phonenumber = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phonenumber}
</foreach>
END,
phonenumber_cipher = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phonenumberCipher}
</foreach>
END,
phonenumber_encrypt = CASE
<foreach collection="list" item="item" separator="">
WHEN user_id = #{item.userId} THEN #{item.phonenumberEncrypt}
</foreach>
END
WHERE user_id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item.userId}
</foreach>
</update>
<select id="getSysUserListEncrypt" resultType="com.ruoyi.common.core.domain.entity.SysUser">
select a.user_id,a.phonenumber,a.id_card, b.roleIdsStr
from sys_user a
inner join (SELECT user_id, STRING_AGG(CAST(role_id AS TEXT), ',') AS roleIdsStr
FROM sys_user_role GROUP BY user_id) b
on a.user_id = b.user_id and (phonenumber is not null or id_card is not null)
</select>
</mapper>