1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
- <mapper namespace="com.smppw.analysis.domain.mapper.MarketIndexesDoMapper">
- <resultMap id="BaseResultMap" type="com.smppw.analysis.domain.dataobject.MarketIndexesDo">
- <!--@mbg.generated-->
- <!--@Table market_indexes-->
- <id column="id" property="id" />
- <result column="index_id" property="indexId" />
- <result column="index_code" property="indexCode" />
- <result column="price_date" property="priceDate" />
- <result column="preclose" property="preclose" />
- <result column="open" property="open" />
- <result column="high" property="high" />
- <result column="low" property="low" />
- <result column="close" property="close" />
- <result column="trade_volumen" property="tradeVolumen" />
- <result column="trade_amount" property="tradeAmount" />
- <result column="wave_range" property="waveRange" />
- <result column="day_price_limit" property="dayPriceLimit" />
- <result column="duration" property="duration" />
- <result column="convexity" property="convexity" />
- <result column="ret_final" property="retFinal" />
- <result column="avg_coupon_rate" property="avgCouponRate" />
- <result column="creatorid" property="creatorid" />
- <result column="createtime" property="createtime" />
- <result column="updaterid" property="updaterid" />
- <result column="updatetime" property="updatetime" />
- <result column="isvalid" property="isvalid" />
- </resultMap>
- <sql id="Base_Column_List">
- <!--@mbg.generated-->
- id, index_id, index_code, price_date, preclose, `open`, high, low, `close`, trade_volumen,
- trade_amount, wave_range, day_price_limit, duration, convexity, ret_final, avg_coupon_rate,
- creatorid, createtime, updaterid, updatetime, isvalid
- </sql>
- <select id="listNavByTimeInterval" resultMap="BaseResultMap">
- select index_id, price_date, `close`
- <if test="needUpdateAndCreateTime">
- , updatetime, createtime
- </if>
- from market_indexes where isvalid = 1
- <if test="startDate != null and startDate != ''">
- AND price_date >= #{startDate}
- </if>
- <if test="endDate != null and endDate != ''">
- AND price_date <= #{endDate}
- </if>
- AND index_id in
- <foreach collection="indexIdList" item="indexId" index="index" open="(" separator="," close=")">
- #{indexId}
- </foreach>
- </select>
- <resultMap id="NavDto" type="com.smppw.common.pojo.dto.NavDto">
- <result property="fundId" column="index_id"/>
- <result property="priceDate" column="price_date"/>
- <result property="nav" column="close"/>
- </resultMap>
- <select id="getLatestInfoByIndexId" resultMap="NavDto">
- SELECT
- t.index_id,
- t.price_date,
- m.close
- FROM
- market_indexes m
- INNER JOIN (
- SELECT
- index_id,
- max( price_date ) AS price_date
- FROM
- market_indexes
- WHERE
- index_id
- IN
- <foreach collection="indexIds" index="index" item="indexId" open="(" close=")" separator=",">
- #{indexId}
- </foreach>
- GROUP BY index_id
- ) AS t ON t.index_id = m.index_id
- AND t.price_date = m.price_date
- </select>
- <select id="selectIndexNavByPriceDate" resultType="com.smppw.analysis.domain.dataobject.MarketIndexesDo">
- select index_id as indexId, close as close, price_date as priceDate
- from market_indexes
- where index_id = #{indexId} and isvalid=1
- and price_date in
- <foreach collection="priceDateList" index="index" item="priceDate" open="(" separator="," close=")">
- #{priceDate}
- </foreach>
- </select>
- </mapper>
|