zouyu
2025-11-14 113cd73922b9b67c261c19c744e46eb2822d7b41
src/main/resources/mapper/lavorissue/LavorIssueMapper.xml
对比新文件
@@ -0,0 +1,78 @@
<?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.ruoyi.lavorissue.mapper.LavorIssueMapper">
    <select id="listPage" resultType="com.ruoyi.lavorissue.pojo.LaborIssue">
        select
        t1.*,
               t2.staff_name as staffName,
               t2.staff_no as staffNo,
               t3.dict_label as dictName,
               t4.dict_label as dictTypeName
        from labor_issue t1
        left join staff_join_leave_record t2 on t1.staff_id = t2.id
        left join sys_dict_data t3 on t1.dict_id = t3.dict_value
        left join sys_dict_data t4 on t1.dict_type = t4.dict_value
        <where>
            <if test="req.season != null and req.season != ''">
                and (t1.issue_date &gt;= #{req.startDate} and t1.issue_date &lt;= #{req.endDate})
            </if>
            <if test="req.issueDate != null">
                and (t1.issue_date &gt;= #{req.startDate} and t1.issue_date &lt;= #{req.endDate})
            </if>
            <if test="req.staffName != null and req.staffName != ''">
                and t2.staff_name like concat('%',#{req.staffName},'%')
            </if>
            <if test="req.status != null and req.status == 1">
                and t1.adopted_date is not null
            </if>
            <if test="req.status != null and req.status == 2">
                and t1.adopted_date is null
            </if>
            <if test="req.status != null and req.status == 3">
                and t1.adopted_date is not null and t1.issue_date &lt; t1.adopted_date
            </if>
            <if test="req.status != null and req.status == 4">
                and t1.adopted_date is null and t1.issue_date &lt; current_date()
            </if>
        </where>
    </select>
    <select id="list" resultType="com.ruoyi.lavorissue.pojo.LaborIssue">
        select
            t1.*,
            t2.staff_name as staffName,
            t2.staff_no as staffNo,
            t3.dict_label as dictName,
            t4.dict_label as dictTypeName
        from labor_issue t1
                 left join staff_join_leave_record t2 on t1.staff_id = t2.id
                 left join sys_dict_data t3 on t1.dict_id = t3.dict_value
                 left join sys_dict_data t4 on t1.dict_type = t4.dict_value
        <where>
            <if test="req.adoptedDate != null">
                and t1.adopted_date is null
            </if>
            <if test="req.issueDate != null">
                and (t1.issue_date &gt;= #{req.startDate} and t1.issue_date &lt;= #{req.endDate})
            </if>
            <if test="req.staffId != null">
                and t1.staff_id = #{req.staffId}
            </if>
            <if test="req.season != null and req.season != ''">
                and (t1.issue_date &gt;= #{req.startDate} and t1.issue_date &lt;= #{req.endDate})
            </if>
            <if test="req.status != null and req.status == 1">
                and t1.adopted_date is not null
            </if>
            <if test="req.status != null and req.status == 2">
                and t1.adopted_date is null
            </if>
            <if test="req.status != null and req.status == 3">
                and t1.adopted_date is not null and t1.issue_date &lt; t1.adopted_date
            </if>
            <if test="req.status != null and req.status == 4">
                and t1.adopted_date is null and t1.issue_date &lt; current_date()
            </if>
        </where>
    </select>
</mapper>