1
0

EmailFileInfoMapper.xml 4.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  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.EmailFileInfoMapper">
  4. <resultMap id="BaseResultMap" type="com.simuwang.base.pojo.dos.EmailFileInfoDO">
  5. <id column="id" property="id"/>
  6. <result column="email_id" property="emailId"/>
  7. <result column="file_name" property="fileName"/>
  8. <result column="file_path" property="filePath"/>
  9. <result column="isvalid" property="isvalid"/>
  10. <result column="creatorid" property="creatorId"/>
  11. <result column="createtime" property="createTime"/>
  12. <result column="updaterid" property="updaterId"/>
  13. <result column="updatetime" property="updateTime"/>
  14. </resultMap>
  15. <insert id="insert" parameterType="com.simuwang.base.pojo.dos.EmailFileInfoDO" useGeneratedKeys="true"
  16. keyProperty="id" keyColumn="id">
  17. insert into PPW_EMAIL.email_file_info(email_id, file_name, file_path,
  18. isvalid, creatorid, createtime, updaterid, updatetime)
  19. values (#{itemDo.emailId}, #{itemDo.fileName}, #{itemDo.filePath},
  20. #{itemDo.isvalid}, #{itemDo.creatorId}, #{itemDo.createTime}, #{itemDo.updaterId}, #{itemDo.updateTime})
  21. </insert>
  22. <select id="getEmailFileById" resultMap="BaseResultMap"
  23. parameterType="java.lang.Integer">
  24. select id ,email_id, file_name, file_path,
  25. isvalid, creatorid, createtime, updaterid, updatetime
  26. from PPW_EMAIL.email_file_info where id=#{id} and isvalid=1
  27. </select>
  28. <select id="queryByEmailId" resultMap="BaseResultMap">
  29. select id, file_name, file_path,
  30. from PPW_EMAIL.email_file_info
  31. where email - id = #{emailId}
  32. and isvalid = 1
  33. </select>
  34. <select id="searchFundFileInfo" resultType="com.simuwang.base.pojo.vo.FundFileInfoVO">
  35. SELECT DISTINCT
  36. efn.fund_id as "fundId",
  37. efn.fund_name as "fundName",
  38. efi.file_name as "fileName",
  39. efi.file_path as "filePath"
  40. FROM
  41. PPW_EMAIL.EMAIL_FILE_INFO efi
  42. JOIN PPW_EMAIL.EMAIL_FUND_NAV efn
  43. ON efi.id = efn.file_id
  44. JOIN PPW_EMAIL.EMAIL_PARSE_INFO epi
  45. ON epi.id = efi.email_id
  46. WHERE efi.isvalid = 1
  47. AND efn.isvalid = 1
  48. AND epi.isvalid = 1
  49. AND epi.EMAIL_TYPE = #{fileType} and efn.fund_id=#{fundId}
  50. </select>
  51. <resultMap id="BaseDetailMap" type="com.simuwang.base.pojo.vo.EmailParseDetailVO">
  52. <result column="fund_id" property="fundId"/>
  53. <result column="fund_name" property="fundName"/>
  54. <result column="register_number" property="registerNumber"/>
  55. <result column="price_date" property="priceDate"/>
  56. <result column="nav" property="nav"/>
  57. <result column="cumulative_nav_withdrawal" property="cumulativeNavWithdrawal"/>
  58. <result column="asset_net" property="assetNet"/>
  59. <result column="asset_share" property="assetShare"/>
  60. </resultMap>
  61. <select id="searchEmailDetailById" resultMap="BaseDetailMap"
  62. parameterType="java.lang.Integer">
  63. SELECT distinct
  64. IFNULL(nav.fund_id,asset.fund_id) as fund_id,
  65. IFNULL(nav.fund_name,asset.fund_name) as fund_name,
  66. IFNULL(nav.register_number,asset.register_number) as register_number,
  67. IFNULL(nav.price_date,asset.price_date) as price_date,
  68. nav.nav,
  69. nav.cumulative_nav_withdrawal,
  70. asset.asset_net,
  71. asset.asset_share
  72. FROM
  73. PPW_EMAIL.EMAIL_FILE_INFO efi
  74. LEFT JOIN PPW_EMAIL.email_fund_nav nav
  75. ON efi.id = nav.file_id
  76. AND nav.isvalid = 1
  77. LEFT JOIN PPW_EMAIL.email_fund_asset asset
  78. ON efi.id = asset.file_id
  79. AND asset.isvalid = 1 AND (nav.fund_id=asset.fund_id OR nav.register_number=asset.register_number OR nav.fund_name= asset.fund_name) AND nav.price_date=asset.price_date
  80. WHERE efi.isvalid = 1
  81. AND efi.email_id =#{emailId}
  82. order by fund_name desc,price_date desc
  83. </select>
  84. </mapper>