PtlAgreementMapper.xml 1.0 KB

1234567891011121314151617181920212223242526272829
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.jzg.mapper.PtlAgreementMapper">
  4. <select id="getUserAgreementByCompanyIds" resultType="com.jzg.commons.entity.po.PtlAgreement">
  5. WITH RECURSIVE company_tree AS (
  6. SELECT id
  7. FROM esm_ins_company
  8. WHERE id IN
  9. <foreach collection="companyIds" item="cid" open="(" separator="," close=")">
  10. #{cid}
  11. </foreach>
  12. AND is_delete = 0
  13. UNION ALL
  14. SELECT c.id
  15. FROM esm_ins_company c
  16. JOIN company_tree ct ON c.parent_id = ct.id
  17. WHERE c.is_delete = 0
  18. )
  19. SELECT pa.*
  20. FROM ptl_agreement_dept pad
  21. JOIN ptl_agreement pa ON pad.agreement_id = pa.id AND pa.is_delete = 0
  22. JOIN company_tree ct ON pa.company_id = ct.id
  23. <where>
  24. AND pad.is_delete = 0
  25. AND pad.dept_id = #{deptId}
  26. </where>
  27. </select>
  28. </mapper>