CrmCustomerPropertyMapper.xml 6.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  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.fs.crm.mapper.CrmCustomerPropertyMapper">
  6. <resultMap type="CrmCustomerProperty" id="CrmCustomerPropertyResult">
  7. <result property="id" column="id" />
  8. <result property="customerId" column="customer_id" />
  9. <result property="propertyId" column="property_id" />
  10. <result property="propertyName" column="property_name" />
  11. <result property="propertyValue" column="property_value" />
  12. <result property="propertyValueType" column="property_value_type" />
  13. <result property="tradeType" column="trade_type" />
  14. <result property="aiAnalysis" column="ai_analysis" />
  15. <result property="intention" column="intention" />
  16. <result property="likeRatio" column="like_ratio" />
  17. <result property="createTime" column="create_time" />
  18. <result property="createBy" column="create_by" />
  19. <result property="updateTime" column="update_time" />
  20. <result property="updateBy" column="update_by" />
  21. <result property="remark" column="remark" />
  22. </resultMap>
  23. <sql id="selectCrmCustomerPropertyVo">
  24. select id, customer_id, property_id, property_name, property_value, property_value_type, trade_type, ai_analysis, intention, like_ratio, create_time, create_by, update_time, update_by, remark from crm_customer_property
  25. </sql>
  26. <select id="selectCrmCustomerPropertyList" parameterType="CrmCustomerProperty" resultMap="CrmCustomerPropertyResult">
  27. <include refid="selectCrmCustomerPropertyVo"/>
  28. <where>
  29. <if test="customerId != null"> and customer_id = #{customerId}</if>
  30. <if test="propertyId != null"> and property_id = #{propertyId}</if>
  31. <if test="propertyName != null and propertyName != ''"> and property_name like concat('%', #{propertyName}, '%')</if>
  32. <if test="propertyValue != null and propertyValue != ''"> and property_value like concat('%', #{propertyValue}, '%')</if>
  33. <if test="propertyValueType != null and propertyValueType != ''"> and property_value_type = #{propertyValueType}</if>
  34. <if test="tradeType != null and tradeType != ''"> and trade_type = #{tradeType}</if>
  35. </where>
  36. order by id desc
  37. </select>
  38. <select id="selectCrmCustomerPropertyById" parameterType="Long" resultMap="CrmCustomerPropertyResult">
  39. <include refid="selectCrmCustomerPropertyVo"/>
  40. where id = #{id}
  41. </select>
  42. <insert id="insertCrmCustomerProperty" parameterType="CrmCustomerProperty" useGeneratedKeys="true" keyProperty="id">
  43. insert into crm_customer_property
  44. <trim prefix="(" suffix=")" suffixOverrides=",">
  45. <if test="customerId != null">customer_id,</if>
  46. <if test="propertyId != null">property_id,</if>
  47. <if test="propertyName != null">property_name,</if>
  48. <if test="propertyValue != null">property_value,</if>
  49. <if test="propertyValueType != null">property_value_type,</if>
  50. <if test="tradeType != null">trade_type,</if>
  51. <if test="aiAnalysis != null">ai_analysis,</if>
  52. <if test="intention != null">intention,</if>
  53. <if test="likeRatio != null">like_ratio,</if>
  54. <if test="createTime != null">create_time,</if>
  55. <if test="createBy != null">create_by,</if>
  56. <if test="updateTime != null">update_time,</if>
  57. <if test="updateBy != null">update_by,</if>
  58. <if test="remark != null">remark,</if>
  59. </trim>
  60. <trim prefix="values (" suffix=")" suffixOverrides=",">
  61. <if test="customerId != null">#{customerId},</if>
  62. <if test="propertyId != null">#{propertyId},</if>
  63. <if test="propertyName != null">#{propertyName},</if>
  64. <if test="propertyValue != null">#{propertyValue},</if>
  65. <if test="propertyValueType != null">#{propertyValueType},</if>
  66. <if test="tradeType != null">#{tradeType},</if>
  67. <if test="aiAnalysis != null">#{aiAnalysis},</if>
  68. <if test="intention != null">#{intention},</if>
  69. <if test="likeRatio != null">#{likeRatio},</if>
  70. <if test="createTime != null">#{createTime},</if>
  71. <if test="createBy != null">#{createBy},</if>
  72. <if test="updateTime != null">#{updateTime},</if>
  73. <if test="updateBy != null">#{updateBy},</if>
  74. <if test="remark != null">#{remark},</if>
  75. </trim>
  76. </insert>
  77. <update id="updateCrmCustomerProperty" parameterType="CrmCustomerProperty">
  78. update crm_customer_property
  79. <trim prefix="SET" suffixOverrides=",">
  80. <if test="customerId != null">customer_id = #{customerId},</if>
  81. <if test="propertyId != null">property_id = #{propertyId},</if>
  82. <if test="propertyName != null">property_name = #{propertyName},</if>
  83. <if test="propertyValue != null">property_value = #{propertyValue},</if>
  84. <if test="propertyValueType != null">property_value_type = #{propertyValueType},</if>
  85. <if test="tradeType != null">trade_type = #{tradeType},</if>
  86. <if test="aiAnalysis != null">ai_analysis = #{aiAnalysis},</if>
  87. <if test="intention != null">intention = #{intention},</if>
  88. <if test="likeRatio != null">like_ratio = #{likeRatio},</if>
  89. <if test="createTime != null">create_time = #{createTime},</if>
  90. <if test="createBy != null">create_by = #{createBy},</if>
  91. <if test="updateTime != null">update_time = #{updateTime},</if>
  92. <if test="updateBy != null">update_by = #{updateBy},</if>
  93. <if test="remark != null">remark = #{remark},</if>
  94. </trim>
  95. where id = #{id}
  96. </update>
  97. <delete id="deleteCrmCustomerPropertyById" parameterType="Long">
  98. delete from crm_customer_property where id = #{id}
  99. </delete>
  100. <delete id="deleteCrmCustomerPropertyByIds" parameterType="String">
  101. delete from crm_customer_property where id in
  102. <foreach item="id" collection="array" open="(" separator="," close=")">
  103. #{id}
  104. </foreach>
  105. </delete>
  106. <select id="selectCrmCustomerPropertyByCustomerId" parameterType="Long" resultMap="CrmCustomerPropertyResult">
  107. <include refid="selectCrmCustomerPropertyVo"/>
  108. where customer_id = #{customerId}
  109. order by id desc
  110. </select>
  111. <select id="selectByCustomerIdAndPropertyId" resultMap="CrmCustomerPropertyResult">
  112. <include refid="selectCrmCustomerPropertyVo"/>
  113. where customer_id = #{customerId} and property_id = #{propertyId}
  114. limit 1
  115. </select>
  116. <delete id="deleteByCustomerIdAndPropertyId">
  117. delete from crm_customer_property where customer_id = #{customerId} and property_id = #{propertyId}
  118. </delete>
  119. </mapper>