| <?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.matrix.system.hive.dao.SysProjuseFreezeDao" > | 
|   <resultMap id="SysProjuseFreeze" type="com.matrix.system.hive.bean.SysProjuseFreeze" > | 
|     <id column="id" property="id" /> | 
|     <result column="freeze_time" property="freezeTime"/> | 
|     <result column="vip_id" property="vipId" /> | 
|     <result column="order_item_id" property="orderItemId"/> | 
|     <result column="gap_days" property="gapDays"/> | 
|      | 
|      | 
|   </resultMap> | 
|   <sql id="Base_Column_List" > | 
|     id, freeze_time, vip_id,order_item_id | 
|   </sql> | 
|   <select id="selectById" resultMap="SysProjuseFreeze" parameterType="java.lang.Long" > | 
|     select  | 
|     <include refid="Base_Column_List" /> | 
|     from sys_projuse_freeze | 
|     where id = #{id} | 
|   </select> | 
|    | 
|   <insert id="insert" parameterType="com.matrix.system.hive.bean.SysProjuseFreeze"  useGeneratedKeys="true" | 
|         keyProperty="id"> | 
|      | 
|     INSERT into sys_projuse_freeze ( | 
|      id, | 
|      freeze_time, | 
|      vip_id, | 
|      order_item_id | 
|       ) | 
|     values ( | 
|     #{id},  | 
|     #{freezeTime},  | 
|     #{vipId}, | 
|     #{orderItemId} | 
|       ) | 
|   </insert> | 
|    | 
|   <update id="update" parameterType="java.lang.Long" > | 
|     update sys_projuse_freeze | 
|     <set > | 
|       <if test="freezeTime != null" > | 
|         freeze_time = #{freezeTime}, | 
|       </if> | 
|       <if test="vipId != null" > | 
|         vip_id = #{vipId}, | 
|       </if> | 
|       <if test="orderItemId != null" > | 
|         order_item_id = #{orderItemId}, | 
|       </if> | 
|     </set> | 
|     where id = #{id,jdbcType=BIGINT} | 
|   </update> | 
|  <select id="selectByOrderItemId" resultMap="SysProjuseFreeze"> | 
|     select  | 
|         id, freeze_time, vip_id,order_item_id ,(select to_days(now()) - to_days(freeze_time)) gap_days | 
|     from sys_projuse_freeze | 
|     where order_item_id = #{orderItemId} | 
|           and  vip_id = #{vipId} | 
|   </select> | 
| </mapper> |