<?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.dy.pipIrrGlobal.daoSe.SeReversalMapper"> 
 | 
  <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeReversal"> 
 | 
    <!--@mbg.generated--> 
 | 
    <!--@Table se_reversal--> 
 | 
    <id column="id" jdbcType="BIGINT" property="id" /> 
 | 
    <result column="cardId" jdbcType="BIGINT" property="cardid" /> 
 | 
    <result column="clientId" jdbcType="BIGINT" property="clientid" /> 
 | 
    <result column="cardBalance" jdbcType="FLOAT" property="cardbalance" /> 
 | 
    <result column="systemBalance" jdbcType="FLOAT" property="systembalance" /> 
 | 
    <result column="remarks" jdbcType="VARCHAR" property="remarks" /> 
 | 
    <result column="operator" jdbcType="BIGINT" property="operator" /> 
 | 
    <result column="operateDt" jdbcType="TIMESTAMP" property="operatedt" /> 
 | 
  </resultMap> 
 | 
  <sql id="Base_Column_List"> 
 | 
    <!--@mbg.generated--> 
 | 
    id, cardId, clientId, cardBalance, systemBalance, remarks, `operator`, operateDt 
 | 
  </sql> 
 | 
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 
 | 
    <!--@mbg.generated--> 
 | 
    select  
 | 
    <include refid="Base_Column_List" /> 
 | 
    from se_reversal 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </select> 
 | 
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> 
 | 
    <!--@mbg.generated--> 
 | 
    delete from se_reversal 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </delete> 
 | 
  
 | 
  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeReversal"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into se_reversal (id, cardId, clientId, cardBalance, 
 | 
      systemBalance, remarks, `operator`,  
 | 
      operateDt) 
 | 
    values (#{id,jdbcType=BIGINT}, #{cardid,jdbcType=BIGINT}, #{clientid,jdbcType=BIGINT}, #{cardbalance,jdbcType=FLOAT}, 
 | 
      #{systembalance,jdbcType=FLOAT}, #{remarks,jdbcType=VARCHAR}, #{operator,jdbcType=BIGINT},  
 | 
      #{operatedt,jdbcType=TIMESTAMP}) 
 | 
  </insert> 
 | 
  
 | 
  <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeReversal" useGeneratedKeys="true"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into se_reversal 
 | 
    <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
      <if test="cardid != null"> 
 | 
        cardId, 
 | 
      </if> 
 | 
      <if test="clientid != null"> 
 | 
        clientId, 
 | 
      </if> 
 | 
      <if test="cardbalance != null"> 
 | 
        cardBalance, 
 | 
      </if> 
 | 
      <if test="systembalance != null"> 
 | 
        systemBalance, 
 | 
      </if> 
 | 
      <if test="remarks != null"> 
 | 
        remarks, 
 | 
      </if> 
 | 
      <if test="operator != null"> 
 | 
        `operator`, 
 | 
      </if> 
 | 
      <if test="operatedt != null"> 
 | 
        operateDt, 
 | 
      </if> 
 | 
    </trim> 
 | 
    <trim prefix="values (" suffix=")" suffixOverrides=","> 
 | 
      <if test="cardid != null"> 
 | 
        #{cardid,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="clientid != null"> 
 | 
        #{clientid,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="cardbalance != null"> 
 | 
        #{cardbalance,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="systembalance != null"> 
 | 
        #{systembalance,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="remarks != null"> 
 | 
        #{remarks,jdbcType=VARCHAR}, 
 | 
      </if> 
 | 
      <if test="operator != null"> 
 | 
        #{operator,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="operatedt != null"> 
 | 
        #{operatedt,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
    </trim> 
 | 
  </insert> 
 | 
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeReversal"> 
 | 
    <!--@mbg.generated--> 
 | 
    update se_reversal 
 | 
    <set> 
 | 
      <if test="cardid != null"> 
 | 
        cardId = #{cardid,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="clientid != null"> 
 | 
        clientId = #{clientid,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="cardbalance != null"> 
 | 
        cardBalance = #{cardbalance,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="systembalance != null"> 
 | 
        systemBalance = #{systembalance,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="remarks != null"> 
 | 
        remarks = #{remarks,jdbcType=VARCHAR}, 
 | 
      </if> 
 | 
      <if test="operator != null"> 
 | 
        `operator` = #{operator,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="operatedt != null"> 
 | 
        operateDt = #{operatedt,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
    </set> 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeReversal"> 
 | 
    <!--@mbg.generated--> 
 | 
    update se_reversal 
 | 
    set cardId = #{cardid,jdbcType=BIGINT}, 
 | 
      clientId = #{clientid,jdbcType=BIGINT}, 
 | 
      cardBalance = #{cardbalance,jdbcType=FLOAT}, 
 | 
      systemBalance = #{systembalance,jdbcType=FLOAT}, 
 | 
      remarks = #{remarks,jdbcType=VARCHAR}, 
 | 
      `operator` = #{operator,jdbcType=BIGINT}, 
 | 
      operateDt = #{operatedt,jdbcType=TIMESTAMP} 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  <!--根据指定的条件获取冲正记录数--> 
 | 
  <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> 
 | 
    SELECT 
 | 
        COUNT(*) AS recordCount 
 | 
    FROM se_reversal rev 
 | 
    INNER JOIN se_client_card card ON rev.cardId = card.id 
 | 
    INNER JOIN se_client cli ON rev.clientId = cli.id 
 | 
    , (SELECT @i:=0) AS itable 
 | 
    <where> 
 | 
      <if test = "clientName != null and clientName !=''"> 
 | 
        AND cli.name like CONCAT('%',#{clientName},'%') 
 | 
      </if> 
 | 
  
 | 
      <if test = "cardNum != null and cardNum !=''"> 
 | 
        AND card.cardNum like CONCAT('%',#{cardNum},'%') 
 | 
      </if> 
 | 
  
 | 
      <if test = "reversalTimeStart != null and reversalTimeStop != null"> 
 | 
        AND rev.operateDt BETWEEN #{reversalTimeStart} AND #{reversalTimeStop} 
 | 
      </if> 
 | 
    </where> 
 | 
  </select> 
 | 
  
 | 
  <!--根据指定的条件获取冲正记录--> 
 | 
  <select id="getReversals" resultType="com.dy.pipIrrGlobal.voSe.VoReversal"> 
 | 
    SELECT 
 | 
      (@i:=@i+1) AS id, 
 | 
      cli.`name` AS clientName, 
 | 
      cli.clientNum, 
 | 
      card.cardNum, 
 | 
      rev.cardBalance, 
 | 
      (SELECT `name` FROM ba_user WHERE id =  rev.operator) AS operator, 
 | 
      rev.operateDt 
 | 
    FROM se_reversal rev 
 | 
      INNER JOIN se_client_card card ON rev.cardId = card.id 
 | 
      INNER JOIN se_client cli ON rev.clientId = cli.id 
 | 
      , (SELECT @i:=0) AS itable 
 | 
    <where> 
 | 
      <if test = "clientName != null and clientName !=''"> 
 | 
        AND cli.name like CONCAT('%',#{clientName},'%') 
 | 
      </if> 
 | 
  
 | 
      <if test = "cardNum != null and cardNum !=''"> 
 | 
        AND card.cardNum like CONCAT('%',#{cardNum},'%') 
 | 
      </if> 
 | 
  
 | 
      <if test = "reversalTimeStart != null and reversalTimeStop != null"> 
 | 
        AND rev.operateDt BETWEEN #{reversalTimeStart} AND #{reversalTimeStop} 
 | 
      </if> 
 | 
    </where> 
 | 
    ORDER BY rev.operateDt DESC 
 | 
    <trim prefix="limit " > 
 | 
      <if test="start != null and count != null"> 
 | 
        #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} 
 | 
      </if> 
 | 
    </trim> 
 | 
  </select> 
 | 
</mapper> 
 |