mitao
1 天以前 d9a63819279a0b17070d4af08d24f567ba8904e4
ruoyi-system/src/main/resources/mapper/system/OaApprovalApplicationDisposeMapper.xml
@@ -18,4 +18,51 @@
        id, approval_application_id, title, asset_type_id, dispose_time, dispose_type, dispose_total_amount
    </sql>
    <!-- 分页查询资产处置申请列表 -->
    <select id="getDisposePageList" resultType="com.ruoyi.system.vo.dispose.OaApprovalApplicationDisposePageVO">
        SELECT
            app.id,
            app.application_code AS applicationCode,
            dispose.title,
            u.nick_name AS applicantName,
            dispose.dispose_time AS disposeTime,
            dispose.dispose_type AS disposeType,
            CASE dispose.dispose_type
                WHEN 0 THEN '报废'
                WHEN 1 THEN '报损'
                WHEN 2 THEN '捐赠'
                ELSE '未知'
            END AS disposeTypeName,
            dispose.dispose_total_amount AS disposeTotalAmount,
            app.application_reason AS applicationReason,
            CONCAT(
                IFNULL(pt.type_name, ''),
                CASE WHEN pt.type_name IS NOT NULL AND ct.type_name IS NOT NULL THEN '-' ELSE '' END,
                IFNULL(ct.type_name, '')
            ) AS assetTypeDetail,
            app.approval_status AS approvalStatus,
            CASE app.approval_status
                WHEN 0 THEN '待审核'
                WHEN 1 THEN '审核中'
                WHEN 2 THEN '已通过'
                WHEN 3 THEN '已拒绝'
                ELSE '未知'
            END AS approvalStatusName
        FROM oa_approval_applications app
        INNER JOIN oa_approval_application_dispose dispose ON app.id = dispose.approval_application_id
        LEFT JOIN sys_user u ON app.applicant_user_id = u.user_id
        LEFT JOIN asset_type ct ON dispose.asset_type_id = ct.id
        LEFT JOIN asset_type pt ON ct.parent_id = pt.id
        LEFT JOIN t_dept d ON app.dept_id = d.id
        WHERE app.disabled = 0
        <if test="query.keyword != null and query.keyword != ''">
            AND (dispose.title LIKE CONCAT('%', #{query.keyword}, '%')
                 OR app.application_code LIKE CONCAT('%', #{query.keyword}, '%'))
        </if>
        <if test="query.deptId != null">
            AND (d.id = #{query.deptId} OR FIND_IN_SET(#{query.deptId}, d.ancestors))
        </if>
        ORDER BY app.create_time DESC
    </select>
</mapper>