PtlAgreementCostExternalMapper.xml 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188
  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.organization.mapper.PtlAgreementCostExternalMapper">
  4. <resultMap id="CostExternalVoMap" type="com.jzg.commons.entity.vo.CostExternalVo">
  5. <result column="ids" property="ids" />
  6. <result column="contact_person" property="contactPerson" />
  7. <result column="contact_mobile" property="contactMobile" />
  8. <collection property="costExternalListVo" column="ids" ofType="com.jzg.commons.entity.vo.CostExternalListVo" select="selectByIds" />
  9. </resultMap>
  10. <resultMap id="CostExternalListVoMap" type="com.jzg.commons.entity.vo.CostExternalListVo">
  11. <result column="id" property="id" />
  12. <result column="product_name" property="productName" />
  13. <result column="product_id" property="productId" />
  14. <result column="cost_describe" property="costDescribe" />
  15. <result column="is_inquiry" property="isInquiry" />
  16. <result column="effective_time" property="effectiveTime" />
  17. <result column="failure_time" property="failureTime" />
  18. <result column="effective" property="effective" />
  19. <result column="audit_status" property="auditStatus" />
  20. <result column="is_enabled" property="isEnabled" />
  21. <result column="audit_person" property="auditPerson" />
  22. <result column="audit_time" property="auditTime" />
  23. <result column="review_description" property="reviewDescription" />
  24. <result column="agreement_title" property="agreementTitle" />
  25. <collection property="costExternalTypeAdds" column="id" ofType="com.jzg.commons.entity.vo.CostExternalTypeVo" select="selectCostExternalTypeVo" />
  26. </resultMap>
  27. <resultMap id="ExternalListVoMap" type="com.jzg.commons.entity.vo.CostExternalListVo">
  28. <result column="id" property="id" />
  29. <result column="agreement_code" property="agreementCode" />
  30. <result column="agreement_abbreviation" property="agreementAbbreviation" />
  31. <result column="product_name" property="productName" />
  32. <result column="product_id" property="productId" />
  33. <result column="cost_describe" property="costDescribe" />
  34. <result column="is_inquiry" property="isInquiry" />
  35. <result column="effective_time" property="effectiveTime" />
  36. <result column="failure_time" property="failureTime" />
  37. <result column="effective" property="effective" />
  38. <result column="audit_status" property="auditStatus" />
  39. <result column="is_enabled" property="isEnabled" />
  40. <result column="contact_person" property="contactPerson" />
  41. <result column="contact_mobile" property="contactMobile" />
  42. <result column="audit_method" property="auditMethod" />
  43. <result column="create_time" property="createTime" />
  44. <result column="create_by" property="createBy" />
  45. <collection property="costExternalTypeAdds" column="id" ofType="com.jzg.commons.entity.vo.CostExternalTypeVo" select="selectCostExternalTypeVo" />
  46. </resultMap>
  47. <sql id="Base_Column">
  48. SELECT
  49. ce.id,ce.ptl_agreement_id,ce.product_name,ce.product_id,ce.effective_time,ce.failure_time,ce.audit_method,ce.audit_status,ce.is_enabled,
  50. ce.review_description,ce.audit_person,ce.audit_time,ce.is_inquiry,ce.cost_describe,ce.contact_person,ce.contact_mobile,ce.is_delete,
  51. pa.agreement_title
  52. FROM
  53. ptl_agreement_cost_external ce
  54. LEFT JOIN ptl_agreement pa ON pa.id = ce.ptl_agreement_id
  55. </sql>
  56. <sql id="Base_Column_type">
  57. SELECT
  58. id,ptl_agreement_cost_external_id,cost_type,inlet,export,add_throw,keep_point_ratio
  59. FROM
  60. ptl_agreement_cost_external_type
  61. </sql>
  62. <delete id="deleteByIAgreementId">
  63. DELETE FROM ptl_agreement_cost_external WHERE ptl_agreement_id = #{ptlAgreementId} AND contact_mobile = #{contactMobile}
  64. </delete>
  65. <select id="selectById" resultMap="CostExternalListVoMap">
  66. <include refid="Base_Column" /> WHERE ce.id = #{id}
  67. </select>
  68. <select id="costExternalList" resultMap="CostExternalVoMap">
  69. SELECT
  70. contact_person,
  71. contact_mobile,
  72. GROUP_CONCAT(id) as ids
  73. FROM
  74. ptl_agreement_cost_external
  75. <where>
  76. is_delete = 0
  77. <if test="ptlAgreementId != null and ptlAgreementId != ''">
  78. AND ptl_agreement_id = #{ptlAgreementId}
  79. </if>
  80. GROUP BY contact_person,contact_mobile
  81. </where>
  82. </select>
  83. <select id="selectByIds" resultMap="CostExternalListVoMap">
  84. <include refid="Base_Column" /> WHERE ce.id in (${ids})
  85. </select>
  86. <select id="selectCostExternalTypeVo" resultType="com.jzg.commons.entity.vo.CostExternalTypeVo">
  87. <include refid="Base_Column_type" /> WHERE ptl_agreement_cost_external_id = #{id}
  88. </select>
  89. <select id="pageList" resultMap="ExternalListVoMap">
  90. SELECT
  91. ce.id,
  92. ce.product_name,
  93. ce.product_id,
  94. ce.cost_describe,
  95. ce.is_inquiry,
  96. ce.effective_time,
  97. ce.failure_time,
  98. ce.audit_status,
  99. ce.is_enabled,
  100. ce.contact_person,
  101. ce.contact_mobile,
  102. ce.audit_method,
  103. ce.create_time,
  104. ce.create_by,
  105. pa.agreement_code,
  106. pa.agreement_abbreviation
  107. FROM
  108. ptl_agreement_cost_external ce
  109. LEFT JOIN ptl_agreement pa ON pa.id = ce.ptl_agreement_id
  110. <where>
  111. ce.is_delete = 0
  112. <if test="costParam.agreement != null and costParam.agreement != ''">
  113. AND (pa.agreement_title like concat('%',#{costParam.agreement},'%') or
  114. pa.agreement_code like concat('%',#{costParam.agreement},'%') or
  115. pa.agreement_abbreviation like concat('%',#{costParam.agreement},'%') or
  116. pa.id = #{costParam.agreement})
  117. </if>
  118. <if test="costParam.productId != null and costParam.productId != ''">
  119. AND ce.product_id = #{costParam.productId}
  120. </if>
  121. <if test="costParam.rulesName != null and costParam.rulesName != ''">
  122. AND ce.rule_description like concat('%',#{costParam.rulesName},'%')
  123. </if>
  124. <if test="costParam.costDescribe != null and costParam.costDescribe != ''">
  125. AND ce.cost_describe like concat('%',#{costParam.costDescribe},'%')
  126. </if>
  127. <if test="costParam.agreementStatus != null and costParam.agreementStatus != ''">
  128. AND ce.is_enabled = #{costParam.agreementStatus}
  129. </if>
  130. <if test="costParam.auditStatus != null and costParam.auditStatus != ''">
  131. AND ce.audit_status = #{costParam.auditStatus}
  132. </if>
  133. <if test="costParam.validState == 0">
  134. AND ce.failure_time &gt;= NOW()
  135. </if>
  136. <if test="costParam.validState == 1">
  137. AND ce.failure_time &lt;= NOW()
  138. </if>
  139. <if test="costParam.effectiveTime != null and costParam.effectiveTime.size() > 0">
  140. AND ce.effective_time BETWEEN #{costParam.effectiveTime[0]} AND #{costParam.effectiveTime[1]}
  141. </if>
  142. <if test="costParam.failureTime != null and costParam.failureTime.size() > 0">
  143. AND ce.failure_time BETWEEN #{costParam.failureTime[0]} AND #{costParam.failureTime[1]}
  144. </if>
  145. <if test="costParam.createTimeArr != null and costParam.createTimeArr.size() > 0">
  146. AND ce.create_time BETWEEN #{costParam.createTimeArr[0]} AND #{costParam.createTimeArr[1]}
  147. </if>
  148. </where>
  149. order by ce.create_time desc
  150. </select>
  151. <select id="selectByAgreementIdAll" resultMap="CostExternalListVoMap">
  152. <include refid="Base_Column" />
  153. <where>
  154. ce.is_delete = 0
  155. <if test="ptlAgreementId != null and ptlAgreementId != ''">
  156. AND ce.ptl_agreement_id = #{ptlAgreementId}
  157. </if>
  158. <if test="contactPerson != null and contactPerson != ''">
  159. AND ce.contact_person = #{contactPerson}
  160. </if>
  161. <if test="contactMobile != null and contactMobile != ''">
  162. AND ce.contact_mobile = #{contactMobile}
  163. </if>
  164. </where>
  165. </select>
  166. </mapper>