SysUserLinkPtlAgreementMapper.xml 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ydtech.modules.admin.dao.SysUserLinkPtlAgreementMapper">
  6. <sql id="Base_Column_List">
  7. link.id as id,
  8. user.id as "sysUser.id",
  9. user.name as "sysUser.name",
  10. t2.id AS "sysUser.deptId",
  11. t2.`name` AS "sysUser.deptName",
  12. agree.id as "ptlAgreement.id",
  13. agree.companies_type as "ptlAgreement.companiesType",
  14. agree.agreement_type as "ptlAgreement.agreementType",
  15. agree.agreement_code as "ptlAgreement.agreementCode",
  16. agree.agreement_name as "ptlAgreement.agreementName",
  17. agree.agreement_abbreviation as "ptlAgreement.underwritingDescription",
  18. agree.partner_companies_id as "ptlAgreement.partnerCompaniesId",
  19. agree.association_companies_id as "ptlAgreement.associationCompaniesId",
  20. agree.insurance_company as "ptlAgreement.insuranceCompany",
  21. agree.insurance_company_id as "ptlAgreement.insuranceCompanyId",
  22. agree.start_date as "ptlAgreement.startDate",
  23. agree.end_date as "ptlAgreement.endDate",
  24. agree.money_time as "ptlAgreement.moneyTime",
  25. agree.match_type as "ptlAgreement.matchType",
  26. agree.docking_person as "ptlAgreement.dockingPerson",
  27. agree.docking_phone as "ptlAgreement.dockingPhone",
  28. agree.with_tax as "ptlAgreement.withTax",
  29. agree.money_type as "ptlAgreement.moneyType",
  30. agree.valid_status as "ptlAgreement.validStatus",
  31. agree.file_id as "ptlAgreement.fileId",
  32. agree.audit_content as "ptlAgreement.auditContent",
  33. agree.audit_status as "ptlAgreement.auditStatus",
  34. agree.serial_number as "ptlAgreement.serialNumber",
  35. agree.underwriting_description as "ptlAgreement.underwritingDescription",
  36. com.name as "ptlAgreement.partnerCompaniesName"
  37. </sql>
  38. <select id="queryPage" resultType="com.ydtech.modules.admin.model.dto.SysUserLinkPtlAgreementDto">
  39. SELECT
  40. <include refid="Base_Column_List"/>
  41. FROM
  42. sys_user_link_pl_agreement link
  43. LEFT JOIN sys_user USER ON link.user_id = USER.id
  44. LEFT JOIN sys_dept t2 ON USER.dept_id = t2.id
  45. LEFT JOIN sys_dept sd2 ON sd2.id = t2.parent_id
  46. LEFT JOIN ptl_agreement agree ON link.ptl_agreement_id = agree.id
  47. left join esm_ins_company com on com.id = agree.partner_companies_id
  48. <where>
  49. <if test="vo.userId != null and vo.userId != ''">
  50. and link.user_id = #{vo.userId}
  51. </if>
  52. <if test="vo.userName != null and vo.userName != ''">
  53. and USER.name like CONCAT('%', #{vo.userName}, '%')
  54. </if>
  55. <if test="ids != null and ids.size>0">
  56. and agree.partner_companies_id in
  57. <foreach collection="ids" item="item" open="(" separator="," close=")">
  58. #{item}
  59. </foreach>
  60. </if>
  61. </where>
  62. order by agree.agreement_code
  63. </select>
  64. <delete id="deleteByUserId">
  65. delete from sys_user_link_pl_agreement
  66. where user_id=#{userId}
  67. </delete>
  68. <select id="findPtlAgreementListByUserId" resultType="com.ydtech.modules.admin.model.dto.SysUserLinkPtlAgreementDto">
  69. SELECT
  70. <include refid="Base_Column_List"/>
  71. FROM
  72. sys_user_link_pl_agreement link
  73. LEFT JOIN sys_user USER ON link.user_id = USER.id
  74. LEFT JOIN sys_dept t2 ON t1.dept_id = t2.id
  75. LEFT JOIN sys_dept sd2 ON sd2.id = t2.parent_id
  76. LEFT JOIN ptl_agreement agree ON link.ptl_agreement_id = agree.id
  77. left join esm_ins_company com on link.id = agree.partner_companies_id
  78. <where>
  79. <if test="userId != null and userId != ''">
  80. and link.user_id = #{userId}
  81. </if>
  82. </where>
  83. order by agree.agreement_code
  84. </select>
  85. <select id="findAllPtlAgreementListByUserId" resultType="com.ydtech.modules.protocol.entity.po.PtlAgreement">
  86. SELECT
  87. pl.*,
  88. (
  89. SELECT
  90. count(0)
  91. FROM
  92. sys_user_link_pl_agreement link
  93. WHERE
  94. link.user_id = #{userId}
  95. AND link.ptl_agreement_id = pl.id
  96. ) as flag
  97. FROM
  98. ptl_agreement pl
  99. order by agreement_code
  100. </select>
  101. </mapper>