xieb
2024-01-23 3dccfd47f114dbbbab6bfa5843f40c8e6415b652
src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml
@@ -7,6 +7,29 @@
        <result column="id" property="id"/>
        <result column="tenant_id" property="tenantId"/>
        <result column="evaluate_task_id" property="evaluateTaskId"/>
        <result column="evaluate_task_category_id" property="evaluateTaskCategoryId"/>
        <result column="evaluate_task_category_name" property="evaluateTaskCategoryName"/>
        <result column="user_id" property="userId"/>
        <result column="user_name" property="userName"/>
        <result column="dept_id" property="deptId"/>
        <result column="dept_name" property="deptName"/>
        <result column="post_name" property="postName"/>
        <result column="remark" property="remark"/>
        <result column="create_user" property="createUser"/>
        <result column="create_dept" property="createDept"/>
        <result column="create_time" property="createTime"/>
        <result column="update_user" property="updateUser"/>
        <result column="update_time" property="updateTime"/>
        <result column="status" property="status"/>
        <result column="is_deleted" property="isDeleted"/>
    </resultMap>
    <resultMap id="mapResult" type="java.util.Map">
        <result column="id" property="id"/>
        <result column="tenant_id" property="tenantId"/>
        <result column="evaluate_task_id" property="evaluateTaskId"/>
        <result column="evaluate_task_category_id" property="evaluateTaskCategoryId"/>
        <result column="evaluate_task_category_name" property="evaluateTaskCategoryName"/>
        <result column="user_id" property="userId"/>
        <result column="user_name" property="userName"/>
        <result column="dept_id" property="deptId"/>
@@ -27,13 +50,51 @@
        select * from yw_evaluate_task_referrer where is_deleted = 0
    </select>
    <select id="selectEvaluateTaskReferrerMapPage" resultMap="mapResult">
        select *,count(*) as voteNum,
               (
                   select case
                              WHEN count(*) > 0 then 1 else 0 end from yw_evaluate_task_category_candidate b
                                                                           LEFT JOIN yw_evaluate_task_category c ON (b.evaluate_task_category_id = c.id)
                   where a.user_id = b.user_id and a.evaluate_task_id = c.evaluate_task_id and b.is_deleted = 0
               ) as isAddCandidate
        from yw_evaluate_task_referrer a
        <where>
            and a.is_deleted = 0 and evaluate_task_id = #{evaluateTaskReferrer.evaluateTaskId}
            <if test="evaluateTaskReferrer.evaluateTaskCategoryId !=null and evaluateTaskReferrer.evaluateTaskCategoryId !=''">
                and evaluate_task_category_id = #{evaluateTaskReferrer.evaluateTaskCategoryId}
            </if>
        </where>
        group by user_id order by dept_id,voteNum DESC
    </select>
    <select id="selectReferrerInfoPage" resultType="org.springblade.modules.evaluate.vo.EvaluateTaskReferrerVO">
        SELECT a.*,b.`name` as voteUserName,c.dept_name AS voteDeptName,d.post_name AS votePostName from (select * from yw_evaluate_task_referrer where is_deleted = 0 ) a
        LEFT JOIN blade_user b ON (a.create_user = b.id)
        LEFT JOIN blade_dept c ON (b.dept_id = c.id)
        LEFT JOIN blade_post d ON (b.post_id = d.id)
        <where>
            <if test="evaluateTaskReferrer.evaluateTaskId != null and evaluateTaskReferrer.evaluateTaskId != ''">
                and a.evaluate_task_id = #{evaluateTaskReferrer.evaluateTaskId}
            </if>
            <if test="evaluateTaskReferrer.userName != null and evaluateTaskReferrer.userName != ''">
                and a.user_name like concat('%', #{evaluateTaskReferrer.userName}, '%')
            </if>
            <if test="evaluateTaskReferrer.voteUserName != null and evaluateTaskReferrer.voteUserName != ''">
                and b.name like concat('%', #{evaluateTaskReferrer.voteUserName}, '%')
            </if>
        </where>
    </select>
    <select id="exportEvaluateTaskReferrer" resultType="org.springblade.modules.evaluate.excel.EvaluateTaskReferrerExcel">
        SELECT * FROM yw_evaluate_task_referrer ${ew.customSqlSegment}
    </select>
    <select id="exportListByTaskId" resultType="org.springblade.modules.evaluate.excel.ReferrerResultGroupExcel">
        SELECT *, count(*) as voteNum FROM yw_evaluate_task_referrer ${ew.customSqlSegment}
        SELECT b.category_name,a.dept_name,a.user_name,a.post_name, count(*) as voteNum FROM yw_evaluate_task_referrer a
        LEFT JOIN yw_evaluate_task_category b on (evaluate_task_category_id = b.id)
        ${ew.customSqlSegment}
    </select>
</mapper>