linwe
2024-09-03 764d883b5ea3bdc06abbec548b6df0511e567978
src/main/java/org/springblade/modules/task/mapper/TaskResidencePermitApplyMapper.xml
@@ -12,6 +12,10 @@
        select
        jtrpa.*,
        br.town_name streetName,
        case
        when TIMESTAMPDIFF(year, substring(jtrpa.id_card, 7, 8), now()) < 18 then 2
        when TIMESTAMPDIFF(year, substring(jtrpa.id_card, 7, 8), now()) >= 18 then 1
        end as minors,
        jg.grid_name,
        jda.aoi_name,
        br.village_name communityName,
@@ -23,30 +27,41 @@
        left join blade_region br on br.code = jg.community_code
        <where>
            and jtrpa.is_deleted = 0
            <if test="residen.id != null ">and id = #{residen.id}</if>
            <if test="residen.name != null  and residen.name != ''">and name = #{residen.name}</if>
            <if test="residen.phone != null  and residen.phone != ''">and phone = #{residen.phone}</if>
            <if test="residen.idCard != null  and residen.idCard != ''">and id_card = #{residen.idCard}</if>
            <if test="residen.address != null  and residen.address != ''">and address = #{residen.address}</if>
            <if test="residen.houseCode != null  and residen.houseCode != ''">and house_code = #{residen.houseCode}</if>
            <if test="residen.taskId != null ">and task_id = #{residen.taskId}</if>
            <if test="residen.createTime != null ">and create_time = #{residen.createTime}</if>
            <if test="residen.updateTime != null ">and update_time = #{residen.updateTime}</if>
            <if test="residen.createUser != null ">and create_user = #{residen.createUser}</if>
            <if test="residen.houseRentalId != null ">and house_rental_id = #{residen.houseRentalId}</if>
            <if test="residen.isDeleted != null ">and is_deleted = #{residen.isDeleted}</if>
            <if test="residen.remak != null  and residen.remak != ''">and remak = #{residen.remak}</if>
            <if test="residen.gridCode != null  and residen.gridCode != ''"> and grid_code = #{residen.gridCode}</if>
            <if test="residen.updateUser != null "> and update_user = #{residen.updateUser}</if>
            <if test="residen.confirmUserId != null "> and confirm_user_id = #{residen.confirmUserId}</if>
            <if test="residen.confirmTime != null "> and confirm_time = #{residen.confirmTime}</if>
            <if test="residen.confirmFlag != null "> and confirm_flag = #{residen.confirmFlag}</if>
            <if test="residen.confirmNotion != null  and residen.confirmNotion != ''"> and confirm_notion = #{residen.confirmNotion}</if>
            <if test="residen.jwGridCode != null  and residen.jwGridCode != ''"> and jw_grid_code = #{residen.jwGridCode}</if>
            <if test="residen.minors!=null and residen.minors ==2">
                and TIMESTAMPDIFF(year, substring(jtrpa.id_card, 7, 8), now()) &lt; 18
            </if>
            <if test="residen.minors!=null and residen.minors ==1">
                and TIMESTAMPDIFF(year, substring(jtrpa.id_card, 7, 8), now()) &gt;= 18
            </if>
            <if test="residen.communityCode != null  and residen.communityCode != ''"> and jg.community_code = #{residen.communityCode}</if>
            <if test="residen.id != null ">and jtrpa.id = #{residen.id}</if>
            <if test="residen.name != null  and residen.name != ''">and jtrpa.name like CONCAT('%',#{residen.name},'%')</if>
            <if test="residen.phone != null  and residen.phone != ''">and jtrpa.phone like CONCAT('%',#{residen.phone},'%')</if>
            <if test="residen.idCard != null  and residen.idCard != ''">and jtrpa.id_card like CONCAT('%',#{residen.idCard},'%')</if>
            <if test="residen.address != null  and residen.address != ''">and jtrpa.address like CONCAT('%',#{residen.address},'%')</if>
            <if test="residen.houseCode != null  and residen.houseCode != ''">and jtrpa.house_code = #{residen.houseCode}</if>
            <if test="residen.taskId != null ">and jtrpa.task_id = #{residen.taskId}</if>
            <if test="residen.startTime != null and residen.startTime != '' and residen.endTime != null and residen.endTime != '' ">
                AND jtrpa.create_time BETWEEN #{residen.startTime} and #{residen.endTime}
            </if>
            <if test="residen.updateTime != null ">and jtrpa.update_time = #{residen.updateTime}</if>
            <if test="residen.createUser != null ">and jtrpa.create_user = #{residen.createUser}</if>
            <if test="residen.houseRentalId != null ">and jtrpa.house_rental_id = #{residen.houseRentalId}</if>
            <if test="residen.isDeleted != null ">and jtrpa.is_deleted = #{residen.isDeleted}</if>
            <if test="residen.remak != null  and residen.remak != ''">and jtrpa.remak = #{residen.remak}</if>
            <if test="residen.gridCode != null  and residen.gridCode != ''"> and jtrpa.grid_code = #{residen.gridCode}</if>
            <if test="residen.updateUser != null "> and jtrpa.update_user = #{residen.updateUser}</if>
            <if test="residen.confirmUserId != null "> and jtrpa.confirm_user_id = #{residen.confirmUserId}</if>
            <if test="residen.confirmTime != null "> and jtrpa.confirm_time = #{residen.confirmTime}</if>
            <if test="residen.confirmFlag != null "> and jtrpa.confirm_flag = #{residen.confirmFlag}</if>
            <if test="residen.confirmNotion != null  and residen.confirmNotion != ''"> and jtrpa.confirm_notion = #{residen.confirmNotion}</if>
            <if test="residen.jwGridCode != null  and residen.jwGridCode != ''"> and jtrpa.jw_grid_code = #{residen.jwGridCode}</if>
            <if test="isAdministrator==2">
                <!-- 网格员及其他 -->
                <if test="vo.roleType ==null">
                <if test="residen.roleType ==null and residen.roleName !='inhabitant'">
                    <choose>
                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                            and (
@@ -55,7 +70,7 @@
                                #{code}
                            </foreach>
                            or
                            jp.grid_code in
                            jtrpa.jw_grid_code in
                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
@@ -70,34 +85,64 @@
                            <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            or
                            jp.grid_code in
                            <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            )
                        </when>
                        <otherwise>
                            and jg.grid_code in ('')
                        </otherwise>
                    </choose>
                    <if test="vo.confirmUserId != null ">
                        or jtrfr.confirm_user_id = #{vo.confirmUserId}
                    <if test="residen.confirmUserId != null ">
                        or jtrfr.confirm_user_id = #{residen.confirmUserId}
                    </if>
                </if>
            </if>
        </where>
        order by jtrpa.create_time desc
    </select>
    <select id="getCount" resultType="java.lang.Integer">
        SELECT count(1)
        FROM jczz_task_residence_permit_apply jtrpa
        WHERE jtrpa.jw_grid_code IN
              (SELECT jpag.jw_grid_code FROM jczz_police_affairs_grid jpag WHERE jpag.police_user_id like concat('%',${userId},'%') )
          AND jtrpa.`confirm_flag` = 1
        from jczz_task_residence_permit_apply jtrpa
        left join jczz_doorplate_address jda on jda.address_code = jtrpa.house_code
        LEFT JOIN jczz_house jh on jh.house_code=jtrpa.house_code
        left join jczz_grid jg on jg.grid_code = jh.grid_code and jg.is_deleted = 0
        left join blade_region br on br.code = jg.community_code
        <where>
            and jtrpa.is_deleted = 0
            <if test="neiCode != null  and neiCode != ''"> and jg.community_code = #{neiCode}</if>
            <if test="status != null  and status != ''"> and jtrpa.confirm_flag = #{status}</if>
           <if test="isAdministrator==2">
<!--                <if test="residen.roleType ==null ">-->
                    <choose>
                        <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                            and (
                            jg.grid_code in
                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            or
                            jtrpa.jw_grid_code in
                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            )
                        </when>
                    </choose>
                    <choose>
                        <when test="gridCodeList !=null and gridCodeList.size()>0">
                            and (
                            jg.grid_code in
                            <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                #{code}
                            </foreach>
                            )
                        </when>
                    </choose>
<!--                </if>-->
            </if>
        </where>
    </select>