|
|
|
<?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.epmet.dao.UserBadgeDao">
|
|
|
|
|
|
|
|
<!-- 更新认证徽章记录最新 -->
|
|
|
|
<update id="updateCertificateRecordIsLast">
|
|
|
|
UPDATE user_badge_certificate_record
|
|
|
|
SET is_last = 'no'
|
|
|
|
WHERE DEL_FLAG = '0'
|
|
|
|
AND BADGE_ID = #{badgeId}
|
|
|
|
AND USER_ID = #{userId}
|
|
|
|
</update>
|
|
|
|
|
|
|
|
<!-- 个人中心-取消/点亮徽章 -->
|
|
|
|
<update id="updateIsOpen">
|
|
|
|
UPDATE resi_user_badge
|
|
|
|
SET IS_OPENED = (case when IS_OPENED = 1 THEN 0 ELSE 1 END),
|
|
|
|
UPDATED_TIME = NOW()
|
|
|
|
WHERE DEL_FLAG = '0'
|
|
|
|
AND USER_ID = #{userId}
|
|
|
|
AND BADGE_ID = #{badgeId}
|
|
|
|
</update>
|
|
|
|
|
|
|
|
<!-- 查询已经点亮的徽章 -->
|
|
|
|
<select id="selectBadgeList" resultType="com.epmet.dto.result.UserBadgeListResultDTO">
|
|
|
|
SELECT
|
|
|
|
ub.BADGE_ID,
|
|
|
|
ub.IS_OPENED,
|
|
|
|
b.FIXATION_BADGE_TYPE as badgeType
|
|
|
|
FROM resi_user_badge ub
|
|
|
|
LEFT JOIN badge b ON b.ID = ub.BADGE_ID
|
|
|
|
WHERE ub.DEL_FLAG = '0'
|
|
|
|
AND b.DEL_FLAG = 0
|
|
|
|
AND ub.CERTIFICATION_AUTID_STATUS = 'approved'
|
|
|
|
AND b.CUSTOMER_ID = 'default'
|
|
|
|
AND b.BADGE_STATUS = 'online'
|
|
|
|
AND ub.USER_ID = #{userId}
|
|
|
|
ORDER BY ub.UPDATED_TIME DESC
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询默认徽章和改名后的徽章 -->
|
|
|
|
<select id="selectAllBadge" resultType="com.epmet.dto.result.UserBadgeListResultDTO">
|
|
|
|
SELECT
|
|
|
|
id AS badgeId,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
BADGE_NAME,
|
|
|
|
BADGE_ICON,
|
|
|
|
FIXATION_BADGE_TYPE AS badgeType
|
|
|
|
FROM (
|
|
|
|
SELECT * FROM badge
|
|
|
|
WHERE CUSTOMER_ID = #{customerId} AND DEL_FLAG = '0'
|
|
|
|
UNION ALL
|
|
|
|
SELECT * FROM badge a
|
|
|
|
WHERE CUSTOMER_ID = 'default' AND a.DEL_FLAG = '0' AND BADGE_STATUS = 'online'
|
|
|
|
AND NOT EXISTS
|
|
|
|
( SELECT ID FROM badge b WHERE CUSTOMER_ID = #{customerId} AND a.ID = b.ID)) t
|
|
|
|
ORDER BY
|
|
|
|
CREATED_TIME DESC
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询徽章认证记录 -->
|
|
|
|
<select id="selectAuthRecord" resultType="com.epmet.dto.result.UserOperListResultDTO">
|
|
|
|
SELECT
|
|
|
|
CUSTOMER_ID,
|
|
|
|
BADGE_ID,
|
|
|
|
CERTIFICATION_IMG,
|
|
|
|
AUDIT_STATUS
|
|
|
|
FROM user_badge_certificate_record
|
|
|
|
WHERE DEL_FLAG = 0
|
|
|
|
AND IS_LAST = 'yes'
|
|
|
|
AND USER_ID = #{userId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 根据UserId查询个人徽章点亮信息 -->
|
|
|
|
<select id="selectBadgeByUserId" resultType="com.epmet.dto.result.UserOperListResultDTO">
|
|
|
|
SELECT
|
|
|
|
BADGE_ID,
|
|
|
|
IS_OPENED
|
|
|
|
FROM resi_user_badge
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = '0'
|
|
|
|
AND CERTIFICATION_AUTID_STATUS = 'approved'
|
|
|
|
AND USER_ID = #{userId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 查询单个徽章的认证记录 -->
|
|
|
|
<select id="selectBadgeAuthRecord" resultType="com.epmet.dto.result.CertificationDetailResultDTO">
|
|
|
|
SELECT
|
|
|
|
SURNAME,
|
|
|
|
NAME,
|
|
|
|
ID_NUM AS idcard,
|
|
|
|
( CASE WHEN AUDIT_STATUS = 'approved' THEN 'yes' ELSE 'no' END ) AS isCertificated,
|
|
|
|
MOBILE,
|
|
|
|
CERTIFICATION_IMG,
|
|
|
|
REMAEK AS remark,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
BADGE_ID,
|
|
|
|
CERTIFICATION_IMG,
|
|
|
|
AUDIT_STATUS,
|
|
|
|
AUDIT_STATUS AS authResult,
|
|
|
|
AUDIT_REMARK AS authReason,
|
|
|
|
ID AS recordId
|
|
|
|
FROM
|
|
|
|
user_badge_certificate_record
|
|
|
|
WHERE
|
|
|
|
DEL_FLAG = 0
|
|
|
|
AND IS_LAST = 'yes'
|
|
|
|
AND BADGE_ID = #{badgeId}
|
|
|
|
AND USER_ID = #{userId}
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 个人中心-查询徽章要显示的认证信息字段 -->
|
|
|
|
<select id="selectAuthField" resultType="com.epmet.dto.result.AuthFieldResultDTO">
|
|
|
|
SELECT
|
|
|
|
cf.CN_NAME,
|
|
|
|
cf.EN_NAME,
|
|
|
|
cf.FIELD_TYPE,
|
|
|
|
cf.IS_REQUIRED,
|
|
|
|
cf.SORT
|
|
|
|
FROM badge_certification_config_field cf
|
|
|
|
LEFT JOIN badge_certification_config cc ON cc.CERTIFICATION_TYPE = cf.CERTIFICATION_TYPE
|
|
|
|
WHERE cf.DEL_FLAG = 0
|
|
|
|
AND cc.DEL_FLAG = 0
|
|
|
|
AND cc.CUSTOMER_ID = #{customerId}
|
|
|
|
AND cc.BADGE_ID = #{badgeId}
|
|
|
|
ORDER BY cf.SORT
|
|
|
|
</select>
|
|
|
|
<select id="selectBadgeByBadgeId" resultType="com.epmet.dto.result.UserBadgeListResultDTO">
|
|
|
|
SELECT
|
|
|
|
ID AS badgeId,
|
|
|
|
BADGE_NAME,
|
|
|
|
BADGE_ICON,
|
|
|
|
BADGE_STATUS
|
|
|
|
FROM
|
|
|
|
(
|
|
|
|
SELECT * FROM badge
|
|
|
|
WHERE CUSTOMER_ID = #{customerId}
|
|
|
|
AND DEL_FLAG = '0'
|
|
|
|
AND ID = #{badgeId}
|
|
|
|
UNION ALL
|
|
|
|
SELECT * FROM badge a
|
|
|
|
WHERE CUSTOMER_ID = 'default'
|
|
|
|
AND a.DEL_FLAG = '0'
|
|
|
|
AND BADGE_STATUS = 'online'
|
|
|
|
AND ID = #{badgeId}
|
|
|
|
AND NOT EXISTS
|
|
|
|
( SELECT ID FROM badge b WHERE CUSTOMER_ID = #{customerId} AND a.ID = b.ID)
|
|
|
|
) t
|
|
|
|
</select>
|
|
|
|
|
|
|
|
<!-- 徽章审核记录表插入 -->
|
|
|
|
<insert id="insertUserBadgeCertificateRecord">
|
|
|
|
INSERT INTO user_badge_certificate_record (
|
|
|
|
ID,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
GRID_ID,
|
|
|
|
USER_ID,
|
|
|
|
BADGE_ID,
|
|
|
|
SURNAME,
|
|
|
|
NAME,
|
|
|
|
MOBILE,
|
|
|
|
ID_NUM,
|
|
|
|
CERTIFICATION_IMG,
|
|
|
|
REMAEK,
|
|
|
|
AUDIT_STATUS,
|
|
|
|
AUDIT_REMARK,
|
|
|
|
STAFF_ID,
|
|
|
|
AUDIT_TIME,
|
|
|
|
IS_LAST,
|
|
|
|
DEL_FLAG,
|
|
|
|
REVISION,
|
|
|
|
CREATED_BY,
|
|
|
|
CREATED_TIME,
|
|
|
|
UPDATED_BY,
|
|
|
|
UPDATED_TIME
|
|
|
|
)
|
|
|
|
VALUES
|
|
|
|
(
|
|
|
|
REPLACE ( UUID(), '-', '' ),
|
|
|
|
#{customerId},
|
|
|
|
#{gridId},
|
|
|
|
#{userId},
|
|
|
|
#{badgeId},
|
|
|
|
#{surname},
|
|
|
|
#{name},
|
|
|
|
#{mobile},
|
|
|
|
#{idNum},
|
|
|
|
#{certificationImg},
|
|
|
|
#{remark},
|
|
|
|
#{auditStatus},
|
|
|
|
#{auditRemark},
|
|
|
|
#{staffId},
|
|
|
|
#{auditTime},
|
|
|
|
#{isLast},
|
|
|
|
#{delFlag},
|
|
|
|
#{revision},
|
|
|
|
#{createdBy},
|
|
|
|
NOW(),
|
|
|
|
#{updatedBy},
|
|
|
|
NOW()
|
|
|
|
)
|
|
|
|
</insert>
|
|
|
|
|
|
|
|
<!-- 查找用户全部的显示徽章(排序) -->
|
|
|
|
<select id="selectUserSortedBadge" resultType="com.epmet.dto.form.UserBadgeUnitFormDTO">
|
|
|
|
SELECT
|
|
|
|
userBadge.badge_id,
|
|
|
|
badgeInfo.BADGE_NAME,
|
|
|
|
badgeInfo.BADGE_ICON
|
|
|
|
FROM
|
|
|
|
resi_user_badge userBadge
|
|
|
|
LEFT JOIN (
|
|
|
|
SELECT
|
|
|
|
id AS badgeId,
|
|
|
|
CUSTOMER_ID,
|
|
|
|
BADGE_NAME,
|
|
|
|
BADGE_ICON
|
|
|
|
FROM
|
|
|
|
(
|
|
|
|
SELECT
|
|
|
|
*
|
|
|
|
FROM
|
|
|
|
badge
|
|
|
|
WHERE
|
|
|
|
CUSTOMER_ID = #{customerId}
|
|
|
|
AND DEL_FLAG = '0'
|
|
|
|
AND BADGE_STATUS = 'online'
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
|
|
*
|
|
|
|
FROM
|
|
|
|
badge a
|
|
|
|
WHERE
|
|
|
|
CUSTOMER_ID = 'default'
|
|
|
|
AND a.DEL_FLAG = '0'
|
|
|
|
AND BADGE_STATUS = 'online'
|
|
|
|
AND NOT EXISTS ( SELECT ID FROM badge b WHERE CUSTOMER_ID = #{customerId} AND a.ID = b.ID )
|
|
|
|
) temp
|
|
|
|
) badgeInfo ON userBadge.badge_id = badgeInfo.badgeId
|
|
|
|
WHERE
|
|
|
|
userBadge.del_flag = '0'
|
|
|
|
AND userBadge.user_id = #{userId}
|
|
|
|
AND userBadge.customer_id = #{customerId}
|
|
|
|
AND userBadge.is_opened = 1
|
|
|
|
AND userBadge.certification_autid_status = 'approved'
|
|
|
|
ORDER BY
|
|
|
|
userBadge.updated_time DESC
|
|
|
|
</select>
|
|
|
|
</mapper>
|