| <?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.SeActiveCardMapper"> | 
|   <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeActiveCard"> | 
|     <!--@mbg.generated--> | 
|     <!--@Table se_active_card--> | 
|     <id column="id" jdbcType="BIGINT" property="id" /> | 
|     <result column="cardId" jdbcType="BIGINT" property="cardid" /> | 
|     <result column="clientId" jdbcType="BIGINT" property="clientid" /> | 
|     <result column="cardCost" jdbcType="INTEGER" property="cardcost" /> | 
|     <result column="paymentId" jdbcType="BIGINT" property="paymentid" /> | 
|     <result column="reissueAmount" jdbcType="DOUBLE" property="reissueamount" /> | 
|     <result column="operateType" jdbcType="TINYINT" property="operatetype" /> | 
|     <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, cardCost, paymentId, reissueAmount, operateType, remarks, `operator`,  | 
|     operateDt | 
|   </sql> | 
|   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
|     <!--@mbg.generated--> | 
|     select  | 
|     <include refid="Base_Column_List" /> | 
|     from se_active_card | 
|     where id = #{id,jdbcType=BIGINT} | 
|   </select> | 
|   <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> | 
|     <!--@mbg.generated--> | 
|     delete from se_active_card | 
|     where id = #{id,jdbcType=BIGINT} | 
|   </delete> | 
|   | 
|   <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard"> | 
|     <!--@mbg.generated--> | 
|     insert into se_active_card (id, cardId, clientId, cardCost, | 
|       paymentId, reissueAmount, operateType,  | 
|       remarks, `operator`, operateDt | 
|       ) | 
|     values (#{id,jdbcType=BIGINT}, #{cardid,jdbcType=BIGINT}, #{clientid,jdbcType=BIGINT}, #{cardcost,jdbcType=INTEGER}, | 
|       #{paymentid,jdbcType=BIGINT}, #{reissueamount,jdbcType=DOUBLE}, #{operatetype,jdbcType=TINYINT},  | 
|       #{remarks,jdbcType=VARCHAR}, #{operator,jdbcType=BIGINT}, #{operatedt,jdbcType=TIMESTAMP} | 
|       ) | 
|   </insert> | 
|   | 
|   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeActiveCard" useGeneratedKeys="true"> | 
|     <!--@mbg.generated--> | 
|     insert into se_active_card | 
|     <trim prefix="(" suffix=")" suffixOverrides=","> | 
|       <if test="cardid != null"> | 
|         cardId, | 
|       </if> | 
|       <if test="clientid != null"> | 
|         clientId, | 
|       </if> | 
|       <if test="cardcost != null"> | 
|         cardCost, | 
|       </if> | 
|       <if test="paymentid != null"> | 
|         paymentId, | 
|       </if> | 
|       <if test="reissueamount != null"> | 
|         reissueAmount, | 
|       </if> | 
|       <if test="operatetype != null"> | 
|         operateType, | 
|       </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="cardcost != null"> | 
|         #{cardcost,jdbcType=INTEGER}, | 
|       </if> | 
|       <if test="paymentid != null"> | 
|         #{paymentid,jdbcType=BIGINT}, | 
|       </if> | 
|       <if test="reissueamount != null"> | 
|         #{reissueamount,jdbcType=DOUBLE}, | 
|       </if> | 
|       <if test="operatetype != null"> | 
|         #{operatetype,jdbcType=TINYINT}, | 
|       </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.SeActiveCard"> | 
|     <!--@mbg.generated--> | 
|     update se_active_card | 
|     <set> | 
|       <if test="cardid != null"> | 
|         cardId = #{cardid,jdbcType=BIGINT}, | 
|       </if> | 
|       <if test="clientid != null"> | 
|         clientId = #{clientid,jdbcType=BIGINT}, | 
|       </if> | 
|       <if test="cardcost != null"> | 
|         cardCost = #{cardcost,jdbcType=INTEGER}, | 
|       </if> | 
|       <if test="paymentid != null"> | 
|         paymentId = #{paymentid,jdbcType=BIGINT}, | 
|       </if> | 
|       <if test="reissueamount != null"> | 
|         reissueAmount = #{reissueamount,jdbcType=DOUBLE}, | 
|       </if> | 
|       <if test="operatetype != null"> | 
|         operateType = #{operatetype,jdbcType=TINYINT}, | 
|       </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.SeActiveCard"> | 
|     <!--@mbg.generated--> | 
|     update se_active_card | 
|     set cardId = #{cardid,jdbcType=BIGINT}, | 
|       clientId = #{clientid,jdbcType=BIGINT}, | 
|       cardCost = #{cardcost,jdbcType=INTEGER}, | 
|       paymentId = #{paymentid,jdbcType=BIGINT}, | 
|       reissueAmount = #{reissueamount,jdbcType=DOUBLE}, | 
|       operateType = #{operatetype,jdbcType=TINYINT}, | 
|       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_active_card act | 
|     INNER JOIN se_client cli ON act.clientId = cli.id | 
|     INNER JOIN se_client_card card ON act.cardId = card.id | 
|     , (SELECT @i:=0) AS itable | 
|     <where> | 
|       <if test = "operateType != null and operateType > 0"> | 
|         AND act.operateType = ${operateType} | 
|       </if> | 
|   | 
|       <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 = "state != null and state > 0"> | 
|         AND card.state = ${state} | 
|       </if> | 
|   | 
|       <if test = "activeTimeStart != null and activeTimeStop != null"> | 
|         AND act.operateDt BETWEEN #{activeTimeStart} AND #{activeTimeStop} | 
|       </if> | 
|     </where> | 
|   </select> | 
|   | 
|   <!--根据指定的条件获取开卡记录--> | 
|   <select id="getActiveCards" resultType="com.dy.pipIrrGlobal.voSe.VoActiveCard"> | 
|     SELECT | 
|         (@i:=@i+1) AS id, | 
|         cli.`name` AS clientName, | 
|         cli.clientNum, | 
|         card.cardNum, | 
|         card.state, | 
|         (CASE | 
|             WHEN card.state = 1 THEN "正常" | 
|             WHEN card.state = 2 THEN "已注销" | 
|             ELSE "已挂失" | 
|         END) AS stateName, | 
|         act.reissueAmount, | 
|         act.cardCost, | 
|         act.paymentId, | 
|         (SELECT `name` FROM ba_user WHERE id =  act.operator) AS operator, | 
|         act.operateDt | 
|     FROM se_active_card act | 
|         INNER JOIN se_client cli ON act.clientId = cli.id | 
|         INNER JOIN se_client_card card ON act.cardId = card.id | 
|         , (SELECT @i:=0) AS itable | 
|     <where> | 
|       <if test = "operateType != null and operateType > 0"> | 
|         AND act.operateType = ${operateType} | 
|       </if> | 
|   | 
|       <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 = "state != null and state > 0"> | 
|         AND card.state = ${state} | 
|       </if> | 
|   | 
|       <if test = "activeTimeStart != null and activeTimeStop != null"> | 
|         AND act.operateDt BETWEEN #{activeTimeStart} AND #{activeTimeStop} | 
|       </if> | 
|     </where> | 
|     ORDER BY act.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> |