feat: 邀请函邮件发送 + 首次设密/密码为空 + 姓名单一可信源
邀请发送 (菜单暂隐藏, 待确认参数见 发送邀请-待确认参数.md): - 后端: BizInvite / BizInviteRecipient + Controller/Service/Mapper/XML - 邮件: InviteMailSender (spring-boot-starter-mail SMTP) + application*.yml 邮件配置 - 上传进度: UploadProgressRegistry + UploadProgressController - 前端: InviteList / InviteNew / InviteDetail / InviteView + api/business/invite.js - 原型: proto/html/components/invite-detail / new-invitation / send-invitation 登录/账号: - 首次设密: /getInfo 返回 isPasswordEmpty, SysProfileController 密码为空时跳过旧密码校验, ForcePasswordDialog 强制弹窗 - 姓名单一可信源 resolveDisplayName: doctor→biz_expert.name, sponsor/executor→biz_person.name, 其余回退 nick_name - OA compliance 门禁改为按手机号查 ecology 视图 (不再限定 manager/leader) 其它: - OSS zip 在线查看 (列清单+取单文件, 公开只读) + SecurityConfig permitAll - doctor 项目详情 ProjectDetail.vue - 数据库/测试/设计文档 (md) 入库
This commit is contained in:
@@ -101,19 +101,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
-->
|
||||
<select id="selectUserExtendList" parameterType="SysUserExtendVo" resultMap="SysUserExtendResult">
|
||||
select u.user_id, u.dept_id, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.update_by, u.update_time, u.remark, d.dept_name, d.leader,
|
||||
u.role_type as u_role_type,
|
||||
u.role_type as u_role_type, u.account_type,
|
||||
coalesce(
|
||||
(select o.org_name from biz_org o where o.user_id = u.user_id limit 1),
|
||||
(select o.org_name from biz_org o join biz_person p on p.org_id = o.org_id where p.user_id = u.user_id limit 1)
|
||||
(select o.org_name from biz_org o where o.user_id = u.user_id and o.del_flag = '0' limit 1),
|
||||
(select o.org_name from biz_org o join biz_person p on p.org_id = o.org_id where p.user_id = u.user_id and o.del_flag = '0' limit 1)
|
||||
) as org_name
|
||||
from sys_user u
|
||||
left join sys_dept d on u.dept_id = d.dept_id
|
||||
where u.del_flag = '0'
|
||||
<!-- 支持方/执行人: 单位不存在的过滤掉 (单位被硬删后 org_name 为 NULL, 孤儿账号不展示) -->
|
||||
<!-- 支持方/执行方: 单位不存在或已被软删除(del_flag='1')的过滤掉 (孤儿账号不展示) -->
|
||||
AND (
|
||||
coalesce(u.role_type, '') not in ('sponsor', 'executor')
|
||||
OR exists (select 1 from biz_org o where o.user_id = u.user_id)
|
||||
OR exists (select 1 from biz_person p join biz_org o2 on o2.org_id = p.org_id where p.user_id = u.user_id)
|
||||
OR exists (select 1 from biz_org o where o.user_id = u.user_id and o.del_flag = '0')
|
||||
OR exists (select 1 from biz_person p join biz_org o2 on o2.org_id = p.org_id where p.user_id = u.user_id and o2.del_flag = '0')
|
||||
)
|
||||
<if test="userId != null and userId != 0">
|
||||
AND u.user_id = #{userId}
|
||||
|
||||
Reference in New Issue
Block a user