You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

246 lines
8.4 KiB

6 years ago
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ccsens.tall.persist.dao.ProMemberDao">
<resultMap id="resultMap_ProMemberInfo" type="com.ccsens.tall.bean.vo.MemberVo$MemberInfo">
<id column="mId" property="id" />
<result column="mUserId" property="userId" />
6 years ago
<!--<result column="mMemberRoleId" property="memberRoleId" />-->
6 years ago
<result column="mNickName" property="nickname" />
<result column="mAvatarUrl" property="avatarUrl" />
<result column="mNo" property="no" />
<result column="mPhone" property="phone" />
<result column="mDescription" property="description" />
<result column="mJoinTime" property="joinTime" />
</resultMap>
<resultMap id="memberInfos" type="com.ccsens.tall.bean.vo.ProjectVo$MembersByProject">
<id column="memberId" property="memberId"/>
<result column="name" property="name"/>
<result column="account" property="account"/>
<result column="phone" property="phone"/>
<result column="sId" property="sId"/>
<result column="sName" property="sName"/>
<result column="sAccount" property="sAccount"/>
<result column="sPhone" property="sPhone"/>
<collection property="belongRole" ofType="com.ccsens.tall.bean.vo.ProjectVo$MembersByProject$BelongRole">
<id column="roleId" property="roleId"/>
<result column="roleName" property="roleName"/>
</collection>
</resultMap>
6 years ago
<select id="selectByProjectIdAndUserId" parameterType="java.util.Map"
resultMap="resultMap_ProMemberInfo">
select
m.id as mId,
m.user_id as mUserId,
m.nickname as mNickName,
m.avatar_url as mAvatarUrl,
m.no as mNo,
m.phone as mPhone,
m.description as mDescription,
m.join_time as mJoinTime
from
t_pro_member m
where
m.user_id = #{userId}
and
m.project_id = #{projectId}
</select>
<select id="selectById" parameterType="java.util.Map"
resultMap="resultMap_ProMemberInfo">
select
m.id as mId,
m.user_id as mUserId,
m.nickname as mNickName,
m.avatar_url as mAvatarUrl,
m.no as mNo,
m.phone as mPhone,
m.description as mDescription,
m.join_time as mJoinTime
from
t_pro_member m
where
id = #{id}
</select>
<select id="selectByProjectId" parameterType="java.util.Map"
resultMap="resultMap_ProMemberInfo">
select
m.id as mId,
m.user_id as mUserId,
m.nickname as mNickName,
m.avatar_url as mAvatarUrl,
m.no as mNo,
m.phone as mPhone,
m.description as mDescription,
m.join_time as mJoinTime
from
t_pro_member m
where
m.project_id = #{projectId}
</select>
<select id="selectAuthedMemberByProjectId" parameterType="java.util.Map"
resultMap="resultMap_ProMemberInfo">
select
m.id as mId,
m.user_id as mUserId,
m.nickname as mNickName,
m.avatar_url as mAvatarUrl,
m.no as mNo,
m.phone as mPhone,
m.description as mDescription,
m.join_time as mJoinTime
from
t_pro_member m
where
m.user_id is not null
and
m.project_id = #{projectId}
</select>
6 years ago
<select id="selectByRoleId" parameterType="java.util.Map" resultType="com.ccsens.tall.bean.vo.WbsVo$Member">
select
m.id as id,
m.nickname as name
FROM
t_pro_member m join t_pro_member_role mr on m.id = mr.member_id
WHERE
m.rec_status = 0
and
mr.role_id = #{roleId}
</select>
6 years ago
<select id="selectMemberByRoleId" parameterType="java.util.Map" resultType="com.ccsens.tall.bean.po.ProMember">
select
*
FROM
t_pro_member m join t_pro_member_role mr on m.id = mr.member_id
WHERE
m.rec_status = 0
and
mr.role_id = #{roleId}
</select>
6 years ago
<select id="getMemberAndStakeholder" parameterType="java.util.Map" resultType="com.ccsens.tall.bean.vo.WbsVo$MemberAndStakeholder">
SELECT
t.memberName,
t.memberPhone,
pm.nickname as stakeholderName,
pm.phone as stakeholderPhone
from
t_pro_member pm RIGHT JOIN
(
SELECT
m.nickname as memberName,
m.phone as memberPhone,
m.stakeholder_id as stakeholderId
FROM
t_pro_member m join t_pro_member_role mr on m.id = mr.member_id join t_pro_role r on r.id = mr.role_id
WHERE
m.project_id = #{projectId}
and
r.name != 'MoneyStakeholder'
GROUP BY m.nickname
) t
on pm.id = t.stakeholderId
</select>
6 years ago
<select id="queryUserIdsByProjectId" resultType="Long">
(select user_id from t_pro_member where project_id = #{projectId} and rec_status = 0)
except
(select m.user_id from t_pro_member m,t_pro_member_role mr, t_pro_role r
where m.id = mr.member_id and mr.role_id = r.id and r.name = 'MoneyStakeholder'
and m.project_id = #{projectId} and m.rec_status = 0
and mr.rec_status = 0 and r.rec_status = 0)
</select>
6 years ago
<select id="selectMembersByProjectId" parameterType="java.util.Map" resultMap="memberInfos">
SELECT
m.id as memberId,
m.nickname as name,
r.id as roleId,
r.name as roleName,
a.identifier as account,
m.phone as phone,
t.sId as sId,
t.sNickname as sName,
t.sAccount as sAccount,
t.sPhone as sPhone
FROM
t_pro_member m LEFT JOIN t_pro_member_role mr on mr.member_id = m.id
LEFT JOIN t_pro_role r on r.id = mr.role_id
LEFT JOIN t_sys_auth a on a.user_id = m.user_id and a.identify_type = 3 and a.rec_status = 0
LEFT JOIN
(
SELECT
m.id as sId,
m.nickname as sNickname,
r.id as srId,
a.identifier as sAccount,
m.phone as sPhone
FROM
t_pro_member m LEFT JOIN t_pro_member_role mr on mr.member_id = m.id
LEFT JOIN t_pro_role r on r.id = mr.role_id
LEFT JOIN t_sys_auth a on a.user_id = m.user_id and a.identify_type = 3 and a.rec_status = 0
WHERE
m.rec_status = 0
and
r.rec_status = 0
and
r.name = 'MoneyStakeholder'
) t on t.sId = m.stakeholder_id
WHERE
m.rec_status = 0
and
r.rec_status = 0
and
m.project_id = #{projectId}
</select>
6 years ago
<select id="getMemberInfoByMemberId" parameterType="java.util.Map" resultMap="memberInfos">
SELECT
m.id as memberId,
m.nickname as name,
r.id as roleId,
r.name as roleName,
a.identifier as account,
m.phone as phone,
t.sId as sId,
t.sNickname as sName,
t.sAccount as sAccount,
t.sPhone as sPhone
FROM
t_pro_member m LEFT JOIN t_pro_member_role mr on mr.member_id = m.id
LEFT JOIN t_pro_role r on r.id = mr.role_id
LEFT JOIN t_sys_auth a on a.user_id = m.user_id and a.identify_type = 3 and a.rec_status = 0
LEFT JOIN
(
SELECT
m.id as sId,
m.nickname as sNickname,
r.id as srId,
a.identifier as sAccount,
m.phone as sPhone
FROM
t_pro_member m LEFT JOIN t_pro_member_role mr on mr.member_id = m.id
LEFT JOIN t_pro_role r on r.id = mr.role_id
LEFT JOIN t_sys_auth a on a.user_id = m.user_id and a.identify_type = 3 and a.rec_status = 0
WHERE
m.rec_status = 0
and
r.rec_status = 0
and
r.name = 'MoneyStakeholder'
) t on t.sId = m.stakeholder_id
WHERE
m.rec_status = 0
and
r.rec_status = 0
and
m.id = #{memberId}
</select>
6 years ago
</mapper>