| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330 |
- <?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="cn.start.tz.module.pressure2.dal.mysql.pipetaskorderitem.PipeTaskOrderItemMapper">
- <!--
- 一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
- 无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
- 代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
- 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
- -->
- <select id="selectDetailPage">
- select rownum,a.* from (
- select distinct
- tot.ID as MAIN_ID,eb.ID,eb.EQUIP_DISTRICT,eb.EQUIP_STREET,bto.CHECK_TYPE,tot.FEE,
- eb.NEXT_LEGAL_CHECK_DATE,eb.NEXT_YEAR_CHECK_DATE,
- eb.CONTACT,eb.CONTACT_PHONE,eb.PROJECT_NO,eb.PROJECT_NAME,eb.PIPE_CATEGORY
- ,btoir.TASK_STATUS
- from PRESSURE2_PIPE_TASK_ORDER_ITEM tot
- left join PRESSURE2_EQUIP_PIPE eb on tot.EQUIP_ID = eb.ID
- left join PRESSURE_TASK_ORDER bto on tot.ORDER_ID = bto.ID and bto.EQUIP_MAIN_TYPE = 300
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT btoir ON btoir.ORDER_ID = bto.ID AND btoir.REPORT_TYPE = 100
- <where>
- tot.DELETED = 0 and bto.ID = #{orderId}
- </where>
- ) a
- OFFSET ${(pageNo - 1) * pageSize} ROWS FETCH NEXT #{pageSize} ROWS ONLY
- </select>
- <select id="selectJoinPageMainReportPrepare">
- select rownum,a.* from (
- select
- bto.ORDER_NO,bto.MANAGER_ID,bto.UNIT_NAME,bto.UNIT_CODE,bto.CHECK_TYPE,bto.CHECK_DATE,
- bto.SUBMIT_TIME,bto.SUBMIT_ID,
- btoi.ORDER_ID,btoi.MAIN_CHECKER,btoi.ID,btoir.TASK_STATUS
- ,WM_CONCAT(epp.PROJECT_NO) as PROJECT_NO
- from PRESSURE2_PIPE_TASK_ORDER_INPUT btoi
- left join PRESSURE_TASK_ORDER bto on bto.ID = btoi.ORDER_ID and bto.EQUIP_MAIN_TYPE = 300
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT btoir on btoir.ORDER_ID = btoi.ORDER_ID and btoir.REPORT_TYPE = 100
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT_USER btoiru on btoiru.REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM ptoi on ptoi.ORDER_ID = btoi.ORDER_ID and ptoi.DELETED = 0
- left join (
- -- 先对 PROJECT_NO 和 PROJECT_NAME 去重
- select distinct ID, PROJECT_NO, PROJECT_NAME
- from PRESSURE2_EQUIP_PIPE
- where DELETED = 0
- ) epp on epp.ID = ptoi.EQUIP_ID
- <where>
- btoi.DELETED = 0
- <if test="orderNo != null and orderNo != ''">
- AND bto.ORDER_NO LIKE CONCAT('%',#{orderNo},'%')
- </if>
- <if test="unitName != null and unitName != ''">
- AND bto.UNIT_NAME LIKE CONCAT('%',#{unitName},'%')
- </if>
- <if test="checkType != null and checkType != ''">
- AND bto.CHECK_TYPE = #{checkType}
- </if>
- <if test="checkDate != null and checkDate.size() >= 2">
- AND bto.CHECK_DATE BETWEEN #{checkDate[0]} AND #{checkDate[1]}
- </if>
- <if test="mainCheckerIds != null and mainCheckerIds.size() >= 1">
- AND btoi.MAIN_CHECKER IN
- <foreach close=")" collection="mainCheckerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="managerIds != null and managerIds.size() >= 1">
- AND bto.MANAGER_ID IN
- <foreach close=")" collection="managerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="taskStatus != null and taskStatus != ''">
- AND btoir.TASK_STATUS = #{taskStatus}
- </if>
- </where>
- group by btoi.ID
- <if test="projectNo != null and projectNo != ''">
- HAVING WM_CONCAT(epp.PROJECT_NO) LIKE CONCAT('%',#{projectNo},'%')
- </if>
- order by bto.CREATE_TIME desc
- ) a
- OFFSET ${(pageNo - 1) * pageSize} ROWS FETCH NEXT #{pageSize} ROWS ONLY
- </select>
- <select id="selectJoinPageMainReportPrepareCount">
- select count(*) from (
- select
- bto.ORDER_NO,bto.MANAGER_ID,bto.UNIT_NAME,bto.UNIT_CODE,bto.CHECK_TYPE,bto.CHECK_DATE,
- bto.SUBMIT_TIME,bto.SUBMIT_ID,
- btoi.ORDER_ID,btoi.MAIN_CHECKER,btoi.ID,btoir.TASK_STATUS
- ,WM_CONCAT(epp.PROJECT_NO) as PROJECT_NO
- from PRESSURE2_PIPE_TASK_ORDER_INPUT btoi
- left join PRESSURE_TASK_ORDER bto on bto.ID = btoi.ORDER_ID and bto.EQUIP_MAIN_TYPE = 300
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT btoir on btoir.ORDER_ID = btoi.ORDER_ID and btoir.REPORT_TYPE = 100
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT_USER btoiru on btoiru.REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM ptoi on ptoi.ORDER_ID = btoi.ORDER_ID and ptoi.DELETED = 0
- left join (
- -- 先对 PROJECT_NO 和 PROJECT_NAME 去重
- select distinct ID, PROJECT_NO, PROJECT_NAME
- from PRESSURE2_EQUIP_PIPE
- where DELETED = 0
- ) epp on epp.ID = ptoi.EQUIP_ID
- <where>
- btoi.DELETED = 0
- <if test="orderNo != null and orderNo != ''">
- AND bto.ORDER_NO LIKE CONCAT('%',#{orderNo},'%')
- </if>
- <if test="unitName != null and unitName != ''">
- AND bto.UNIT_NAME LIKE CONCAT('%',#{unitName},'%')
- </if>
- <if test="checkType != null and checkType != ''">
- AND bto.CHECK_TYPE = #{checkType}
- </if>
- <if test="checkDate != null and checkDate.size() >= 2">
- AND bto.CHECK_DATE BETWEEN #{checkDate[0]} AND #{checkDate[1]}
- </if>
- <if test="mainCheckerIds != null and mainCheckerIds.size() >= 1">
- AND btoi.MAIN_CHECKER IN
- <foreach close=")" collection="mainCheckerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="managerIds != null and managerIds.size() >= 1">
- AND bto.MANAGER_ID IN
- <foreach close=")" collection="managerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="taskStatus != null and taskStatus != ''">
- AND btoir.TASK_STATUS = #{taskStatus}
- </if>
- </where>
- group by btoi.ID
- <if test="projectNo != null and projectNo != ''">
- HAVING WM_CONCAT(epp.PROJECT_NO) LIKE CONCAT('%',#{projectNo},'%')
- </if>
- order by bto.CREATE_TIME desc
- ) a
- </select>
- <select id="selectJoinPageBatchReport">
- select rownum,a.* from (
- select btoi.ID,
- bto.ORDER_NO,bto.MANAGER_ID,bto.UNIT_NAME,bto.UNIT_CODE,bto.CHECK_TYPE,bto.CHECK_DATE,bto.REASON,
- bto.SUBMIT_ID,btoir.RECHECK_SUBMIT_TIME as SUBMIT_TIME,
- btoir.RECHECK_STATUS,btoir.STATUS,btoir.TASK_STATUS,btoir.RECHECK_REASON,btoir.RETURN_REASON,
- btoir.REPORT_NAME,btoir.REPORT_URL,btoir.ID as REPORT_ID,btoir.REPORT_TYPE,btoir.PREPARE_NAME,
- btoir.APPROVAL_NAME,btoir.RATIFY_NAME,btoir.RECHECK_NAME,btoir.IS_REPORTED,btoir.PROCESS_INSTANCE_ID,
- btoir.CREATE_TIME as CONFIRM_IME,btoir.RECTIFICATION_STATUS,btoir.RECTIFICATION_URL,
- btoir.PREPARE_JSON,btoir.SIGN_URL,btoir.RECTIFICATION_VIDEO,btoir.RECTIFICATION_IMAGE,
- btoir.REPORT_CONCLUSION,btoir.REJECTION_REASON,btoir.IMAGE,btoir.VIDEO,btoir.ATTACHMENT,
- btoir.REPORT_NO as SUBREPORT_NO,btoir.APPROVAL_ID,btoir.RECHECK_ID
- ,WM_CONCAT(DISTINCT epp.PROJECT_NO) as PROJECT_NO
- from PRESSURE2_PIPE_TASK_ORDER_INPUT btoi
- left join PRESSURE_TASK_ORDER bto on bto.ID = btoi.ORDER_ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT btoir on btoir.ORDER_ID = btoi.ORDER_ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT_USER btoiru on btoiru.REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_RECHECK btoir1 on btoir1.MAIN_REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM ptoi on ptoi.ORDER_ID = btoi.ORDER_ID and ptoi.DELETED = 0
- left join (
- -- 先对 PROJECT_NO 和 PROJECT_NAME 去重
- select distinct ID, PROJECT_NO, PROJECT_NAME
- from PRESSURE2_EQUIP_PIPE
- where DELETED = 0
- ) epp on epp.ID = ptoi.EQUIP_ID
- <where>
- btoi.DELETED = 0 AND btoir.RECHECK_ID != ''
- <if test="orderNo != null and orderNo != ''">
- AND bto.ORDER_NO LIKE CONCAT('%',#{orderNo},'%')
- </if>
- <if test="recordNo != null and recordNo != ''">
- AND btoir.REPORT_NO LIKE CONCAT('%',#{recordNo},'%')
- </if>
- <if test="checkProject != null and checkProject != ''">
- AND btoir.REPORT_NAME LIKE CONCAT('%',#{checkProject},'%')
- </if>
- <if test="unitName != null and unitName != ''">
- AND bto.UNIT_NAME LIKE CONCAT('%',#{unitName},'%')
- </if>
- <if test="checkType != null and checkType != ''">
- AND bto.CHECK_TYPE = #{checkType}
- </if>
- <if test="recheckStatus != null and recheckStatus != ''">
- AND btoir.RECHECK_STATUS = #{recheckStatus}
- </if>
- <if test="approveIds != null and approveIds.size() > 0">
- AND btoir.APPROVAL_ID IN
- <foreach close=")" collection="approveIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="recheckIds != null and recheckIds.size() > 0">
- AND btoir.RECHECK_ID IN
- <foreach close=")" collection="recheckIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="managerIds != null and managerIds.size() > 0">
- AND bto.MANAGER_ID IN
- <foreach close=")" collection="managerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="checkUserIds != null and checkUserIds.size() > 0">
- AND btoiru.USER_ID IN
- <foreach close=")" collection="checkUserIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="permissionUserId != null and permissionUserId != ''">
- AND ( bto.MANAGER_ID = #{permissionUserId}
- or btoiru.USER_ID = #{permissionUserId}
- or btoir.RECHECK_ID = #{permissionUserId} )
- </if>
- <if test="permissionDeptIds != null and permissionDeptIds != ''">
- AND ( bto.DEPT_ID in
- <foreach close=")" collection="permissionDeptIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- )
- </if>
- <if test="hasPermission != null and hasPermission == false">
- AND 1 = 2
- </if>
- group by btoi.ID,btoir.ID
- <if test="projectNo != null and projectNo != ''">
- HAVING WM_CONCAT(epp.PROJECT_NO) LIKE CONCAT('%',#{projectNo},'%')
- </if>
- order by bto.CREATE_TIME desc
- </where>
- ) a
- OFFSET ${(pageNo - 1) * pageSize} ROWS FETCH NEXT #{pageSize} ROWS ONLY
- </select>
- <select id="selectJoinPageBatchReportCount">
- select count(*) from (
- select btoi.ID,
- bto.ORDER_NO,bto.MANAGER_ID,bto.UNIT_NAME,bto.UNIT_CODE,bto.CHECK_TYPE,bto.CHECK_DATE,bto.REASON,
- bto.SUBMIT_ID,btoir.RECHECK_SUBMIT_TIME as SUBMIT_TIME,
- btoir.RECHECK_STATUS,btoir.STATUS,btoir.TASK_STATUS,btoir.RECHECK_REASON,btoir.RETURN_REASON,
- btoir.REPORT_NAME,btoir.REPORT_URL,btoir.ID as REPORT_ID,btoir.REPORT_TYPE,btoir.PREPARE_NAME,
- btoir.APPROVAL_NAME,btoir.RATIFY_NAME,btoir.RECHECK_NAME,btoir.IS_REPORTED,btoir.PROCESS_INSTANCE_ID,
- btoir.CREATE_TIME as CONFIRM_IME,btoir.RECTIFICATION_STATUS,btoir.RECTIFICATION_URL,
- btoir.PREPARE_JSON,btoir.SIGN_URL,btoir.RECTIFICATION_VIDEO,btoir.RECTIFICATION_IMAGE,
- btoir.REPORT_CONCLUSION,btoir.REJECTION_REASON,btoir.IMAGE,btoir.VIDEO,btoir.ATTACHMENT,
- btoir.REPORT_NO as SUBREPORT_NO,btoir.APPROVAL_ID,btoir.RECHECK_ID
- ,WM_CONCAT(DISTINCT epp.PROJECT_NO) as PROJECT_NO
- from PRESSURE2_PIPE_TASK_ORDER_INPUT btoi
- left join PRESSURE_TASK_ORDER bto on bto.ID = btoi.ORDER_ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT btoir on btoir.ORDER_ID = btoi.ORDER_ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_REPORT_USER btoiru on btoiru.REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM_RECHECK btoir1 on btoir1.MAIN_REPORT_ID = btoir.ID
- left join PRESSURE2_PIPE_TASK_ORDER_ITEM ptoi on ptoi.ORDER_ID = btoi.ORDER_ID and ptoi.DELETED = 0
- left join (
- -- 先对 PROJECT_NO 和 PROJECT_NAME 去重
- select distinct ID, PROJECT_NO, PROJECT_NAME
- from PRESSURE2_EQUIP_PIPE
- where DELETED = 0
- ) epp on epp.ID = ptoi.EQUIP_ID
- <where>
- btoi.DELETED = 0 AND btoir.RECHECK_ID != ''
- <if test="orderNo != null and orderNo != ''">
- AND bto.ORDER_NO LIKE CONCAT('%',#{orderNo},'%')
- </if>
- <if test="recordNo != null and recordNo != ''">
- AND btoir.REPORT_NO LIKE CONCAT('%',#{recordNo},'%')
- </if>
- <if test="checkProject != null and checkProject != ''">
- AND btoir.REPORT_NAME LIKE CONCAT('%',#{checkProject},'%')
- </if>
- <if test="unitName != null and unitName != ''">
- AND bto.UNIT_NAME LIKE CONCAT('%',#{unitName},'%')
- </if>
- <if test="checkType != null and checkType != ''">
- AND bto.CHECK_TYPE = #{checkType}
- </if>
- <if test="recheckStatus != null and recheckStatus != ''">
- AND btoir.RECHECK_STATUS = #{recheckStatus}
- </if>
- <if test="approveIds != null and approveIds.size() > 0">
- AND btoir.APPROVAL_ID IN
- <foreach close=")" collection="approveIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="recheckIds != null and recheckIds.size() > 0">
- AND btoir.RECHECK_ID IN
- <foreach close=")" collection="recheckIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="managerIds != null and managerIds.size() > 0">
- AND bto.MANAGER_ID IN
- <foreach close=")" collection="managerIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="checkUserIds != null and checkUserIds.size() > 0">
- AND btoiru.USER_ID IN
- <foreach close=")" collection="checkUserIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- </if>
- <if test="permissionUserId != null and permissionUserId != ''">
- AND ( bto.MANAGER_ID = #{permissionUserId}
- or btoiru.USER_ID = #{permissionUserId}
- or btoir.RECHECK_ID = #{permissionUserId} )
- </if>
- <if test="permissionDeptIds != null and permissionDeptIds != ''">
- AND ( bto.DEPT_ID in
- <foreach close=")" collection="permissionDeptIds" item="listItem" open="(" separator=",">
- #{listItem}
- </foreach>
- )
- </if>
- <if test="hasPermission != null and hasPermission == false">
- AND 1 = 2
- </if>
- group by btoi.ID,btoir.ID
- <if test="projectNo != null and projectNo != ''">
- HAVING WM_CONCAT(epp.PROJECT_NO) LIKE CONCAT('%',#{projectNo},'%')
- </if>
- order by bto.CREATE_TIME desc
- </where>
- ) a
- </select>
- </mapper>
|