CompanyEmailHistoryMapper.xml 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  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.simuwang.base.mapper.CompanyEmailSendHistoryMapper">
  4. <resultMap id="BaseResultMap" type="com.simuwang.base.pojo.vo.CompanyEmailSendHistoryVO">
  5. <id column="id" property="id"/>
  6. <result column="company_id" property="companyId"/>
  7. <result column="company_name" property="companyName"/>
  8. <result column="email" property="email"/>
  9. <result column="send_status" property="sendStatus"/>
  10. <result column="send_time" property="sendTime"/>
  11. <result column="send_remark" property="sendRemark"/>
  12. </resultMap>
  13. <update id="deleteEmailHistory">
  14. update PPW_EMAIL.company_email_send_history set isvalid =0,updatetime=sysdate() where email=#{email}
  15. </update>
  16. <update id="deleteEmailHistoryByIds">
  17. update PPW_EMAIL.company_email_send_history set isvalid =0,updatetime=sysdate() where id in
  18. <foreach item="id" collection="ids" open="(" separator="," close=")">
  19. #{id}
  20. </foreach>
  21. </update>
  22. <select id="searchCompanyEmailList" resultMap="BaseResultMap">
  23. SELECT
  24. cec.id,
  25. cec.company_id,
  26. c.company_name,
  27. cec.email,
  28. MAX(cesh.send_time) AS send_time,
  29. cesh.send_remark,
  30. cesh.send_status
  31. FROM
  32. PPW_EMAIL.company_email_config cec
  33. JOIN PPW_EMAIL.company_information c
  34. ON cec.company_id = c.company_id
  35. LEFT JOIN PPW_EMAIL.company_email_send_history cesh
  36. ON cec.email = cesh.email AND cesh.isvalid = 1
  37. WHERE cec.isvalid = 1 and c.isvalid=1
  38. <if test="companyName != null and companyName !=''">
  39. and (c.company_name like concat('',#{companyName},'') or c.company_short_name like concat('',#{companyName},''))
  40. </if>
  41. <if test="email != null and email !=''">
  42. and cec.email like concat('',#{email},'')
  43. </if>
  44. <if test="sendStatus != null and sendStatus !=''">
  45. and cesh.send_status=#{sendStatus}
  46. </if>
  47. </select>
  48. <select id="searchEmailHistory" resultMap="BaseResultMap">
  49. SELECT
  50. cec.id,
  51. cec.company_id,
  52. c.company_name,
  53. cec.email,
  54. cesh.send_time,
  55. cesh.send_remark,
  56. cesh.send_status
  57. FROM
  58. PPW_EMAIL.company_email_send_history cesh
  59. JOIN PPW_EMAIL.company_email_config cec
  60. JOIN PPW_EMAIL.company_information c
  61. ON cec.company_id = c.company_id
  62. ON cec.email = cesh.email
  63. WHERE cec.isvalid = 1
  64. AND cesh.isvalid = 1 and c.isvalid =1
  65. <if test="email != null and email !=''">
  66. and cec.email=#{email}
  67. </if>
  68. </select>
  69. </mapper>