<?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.SeConsumeMapper"> 
 | 
  <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeConsume"> 
 | 
    <!--@mbg.generated--> 
 | 
    <!--@Table se_consume--> 
 | 
    <id column="id" jdbcType="BIGINT" property="id" /> 
 | 
    <result column="wallet_id" jdbcType="BIGINT" property="walletId" /> 
 | 
    <result column="client_id" jdbcType="BIGINT" property="clientId" /> 
 | 
    <result column="money" jdbcType="FLOAT" property="money" /> 
 | 
    <result column="consumption" jdbcType="FLOAT" property="consumption" /> 
 | 
    <result column="after_consume" jdbcType="FLOAT" property="afterConsume" /> 
 | 
    <result column="duration" jdbcType="FLOAT" property="duration" /> 
 | 
    <result column="vot" jdbcType="TIMESTAMP" property="vot" /> 
 | 
    <result column="vct" jdbcType="TIMESTAMP" property="vct" /> 
 | 
  </resultMap> 
 | 
  <sql id="Base_Column_List"> 
 | 
    <!--@mbg.generated--> 
 | 
    id, wallet_id, client_id, money, consumption, after_consume, duration, vot, vct 
 | 
  </sql> 
 | 
  <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> 
 | 
    <!--@mbg.generated--> 
 | 
    select  
 | 
    <include refid="Base_Column_List" /> 
 | 
    from se_consume 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </select> 
 | 
  <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> 
 | 
    <!--@mbg.generated--> 
 | 
    delete from se_consume 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </delete> 
 | 
  <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeConsume"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into se_consume (id, wallet_id, client_id,  
 | 
      money, consumption, after_consume,  
 | 
      duration, vot, vct 
 | 
      ) 
 | 
    values (#{id,jdbcType=BIGINT}, #{walletId,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT},  
 | 
      #{money,jdbcType=FLOAT}, #{consumption,jdbcType=FLOAT}, #{afterConsume,jdbcType=FLOAT},  
 | 
      #{duration,jdbcType=FLOAT}, #{vot,jdbcType=TIMESTAMP}, #{vct,jdbcType=TIMESTAMP} 
 | 
      ) 
 | 
  </insert> 
 | 
  <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeConsume"> 
 | 
    <!--@mbg.generated--> 
 | 
    insert into se_consume 
 | 
    <trim prefix="(" suffix=")" suffixOverrides=","> 
 | 
      <if test="id != null"> 
 | 
        id, 
 | 
      </if> 
 | 
      <if test="walletId != null"> 
 | 
        wallet_id, 
 | 
      </if> 
 | 
      <if test="clientId != null"> 
 | 
        client_id, 
 | 
      </if> 
 | 
      <if test="money != null"> 
 | 
        money, 
 | 
      </if> 
 | 
      <if test="consumption != null"> 
 | 
        consumption, 
 | 
      </if> 
 | 
      <if test="afterConsume != null"> 
 | 
        after_consume, 
 | 
      </if> 
 | 
      <if test="duration != null"> 
 | 
        duration, 
 | 
      </if> 
 | 
      <if test="vot != null"> 
 | 
        vot, 
 | 
      </if> 
 | 
      <if test="vct != null"> 
 | 
        vct, 
 | 
      </if> 
 | 
    </trim> 
 | 
    <trim prefix="values (" suffix=")" suffixOverrides=","> 
 | 
      <if test="id != null"> 
 | 
        #{id,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="walletId != null"> 
 | 
        #{walletId,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="clientId != null"> 
 | 
        #{clientId,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="money != null"> 
 | 
        #{money,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="consumption != null"> 
 | 
        #{consumption,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="afterConsume != null"> 
 | 
        #{afterConsume,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="duration != null"> 
 | 
        #{duration,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="vot != null"> 
 | 
        #{vot,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="vct != null"> 
 | 
        #{vct,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
    </trim> 
 | 
  </insert> 
 | 
  <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeConsume"> 
 | 
    <!--@mbg.generated--> 
 | 
    update se_consume 
 | 
    <set> 
 | 
      <if test="walletId != null"> 
 | 
        wallet_id = #{walletId,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="clientId != null"> 
 | 
        client_id = #{clientId,jdbcType=BIGINT}, 
 | 
      </if> 
 | 
      <if test="money != null"> 
 | 
        money = #{money,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="consumption != null"> 
 | 
        consumption = #{consumption,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="afterConsume != null"> 
 | 
        after_consume = #{afterConsume,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="duration != null"> 
 | 
        duration = #{duration,jdbcType=FLOAT}, 
 | 
      </if> 
 | 
      <if test="vot != null"> 
 | 
        vot = #{vot,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
      <if test="vct != null"> 
 | 
        vct = #{vct,jdbcType=TIMESTAMP}, 
 | 
      </if> 
 | 
    </set> 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeConsume"> 
 | 
    <!--@mbg.generated--> 
 | 
    update se_consume 
 | 
    set wallet_id = #{walletId,jdbcType=BIGINT}, 
 | 
      client_id = #{clientId,jdbcType=BIGINT}, 
 | 
      money = #{money,jdbcType=FLOAT}, 
 | 
      consumption = #{consumption,jdbcType=FLOAT}, 
 | 
      after_consume = #{afterConsume,jdbcType=FLOAT}, 
 | 
      duration = #{duration,jdbcType=FLOAT}, 
 | 
      vot = #{vot,jdbcType=TIMESTAMP}, 
 | 
      vct = #{vct,jdbcType=TIMESTAMP} 
 | 
    where id = #{id,jdbcType=BIGINT} 
 | 
  </update> 
 | 
  
 | 
  <!--根据农户ID获取消费汇总记录--> 
 | 
  <select id="getWalletConsumeSum" resultType="java.util.Map"> 
 | 
    SELECT 
 | 
      cli.name AS clientName, 
 | 
      cli.clientNum, 
 | 
      wal.money, 
 | 
      (SELECT SUM(consumption) FROM se_consume WHERE client_id = cli.id) AS totalConsume 
 | 
    FROM se_client cli 
 | 
           INNER JOIN se_wallet wal ON wal.client_id = cli.id 
 | 
    <where> 
 | 
      <if test = "clientId != null and clientId > 0"> 
 | 
        AND cli.id = ${clientId} 
 | 
      </if> 
 | 
    </where> 
 | 
  
 | 
  </select> 
 | 
  
 | 
  <!--根据农户ID获取电子钱包消费记录数--> 
 | 
  <select id="getRecordCount" parameterType="java.util.Map" resultType="java.lang.Long"> 
 | 
    SELECT 
 | 
        COUNT(*) AS recordCount 
 | 
    FROM se_consume 
 | 
    <where> 
 | 
      <if test = "clientId != null and clientId > 0"> 
 | 
        AND client_id = ${clientId} 
 | 
      </if> 
 | 
    </where> 
 | 
  </select> 
 | 
  
 | 
  <!--根据农户ID获取电子钱包消费记录--> 
 | 
  <select id="getWalletConsumes" resultType="com.dy.pipIrrGlobal.voSe.VoWalletConsume"> 
 | 
    SELECT 
 | 
        consumption, 
 | 
        duration, 
 | 
        vot, 
 | 
        vct 
 | 
    FROM se_consume 
 | 
    <where> 
 | 
      <if test = "clientId != null and clientId > 0"> 
 | 
        AND client_id = ${clientId} 
 | 
      </if> 
 | 
    </where> 
 | 
    ORDER BY vct 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> 
 |