|  |  | 
 |  |  |     <!--@Table se_client_card--> | 
 |  |  |     <id column="id" jdbcType="BIGINT" property="id" /> | 
 |  |  |     <result column="cardAddr" jdbcType="VARCHAR" property="cardaddr" /> | 
 |  |  |     <result column="cardNum" jdbcType="BIGINT" property="cardnum" /> | 
 |  |  |     <result column="clientId" jdbcType="BIGINT" property="clientid" /> | 
 |  |  |     <result column="money" jdbcType="FLOAT" property="money" /> | 
 |  |  |     <result column="state" jdbcType="TINYINT" property="state" /> | 
 |  |  | 
 |  |  |   </resultMap> | 
 |  |  |   <sql id="Base_Column_List"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     id, cardAddr, clientId, money, `state`, createDt, replaceDt, rechargeDt, lossDtDt,  | 
 |  |  |     cancelDt, unlockDt, reversalDt, consumeDt, lastOper, remarks | 
 |  |  |     id, cardAddr, cardNum, clientId, money, `state`, createDt, replaceDt, rechargeDt,  | 
 |  |  |     lossDtDt, cancelDt, unlockDt, reversalDt, consumeDt, lastOper, remarks | 
 |  |  |   </sql> | 
 |  |  |   <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </delete> | 
 |  |  |  | 
 |  |  |   <!--依据水卡地址获取水卡编号(主键)--> | 
 |  |  |   <!--依据水卡地址获取水卡编号(12月19日废弃)--> | 
 |  |  |   <select id="getCardIdByAddr" resultType="java.lang.Long"> | 
 |  |  |     SELECT id AS cardId FROM se_client_card WHERE cardAddr = #{cardAddr} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard"> | 
 |  |  |   <!--根据水卡编号获取水卡表主键(12月19日添加后废弃)--> | 
 |  |  |   <select id="getCardIdByNum" resultType="java.lang.Long"> | 
 |  |  |     SELECT id AS cardId FROM se_client_card WHERE cardNum = #{cardNum} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据水卡编号获取水卡表主键及农户编号--> | 
 |  |  |   <select id="getCardIdAndClientNum" resultType="java.util.Map"> | 
 |  |  | <!--    SELECT id AS cardId, clientNum FROM se_client_card WHERE cardNum = #{cardNum}--> | 
 |  |  |     SELECT | 
 |  |  |         card.id AS cardId, | 
 |  |  |         cli.clientNum, | 
 |  |  |         cli.id AS clientId | 
 |  |  |     FROM se_client_card card | 
 |  |  |         INNER JOIN se_client cli ON card.clientId = cli.id | 
 |  |  |     WHERE card.cardNum = #{cardNum} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |  | 
 |  |  |   <!--根据行政区划串模糊查询水卡编号--> | 
 |  |  |   <select id="getCardNumOfMax"  resultType="java.lang.String"> | 
 |  |  |     SELECT cardNum | 
 |  |  |     FROM se_client_card | 
 |  |  |     WHERE cardNum LIKE CONCAT('%',#{areaCode},'%') | 
 |  |  |     ORDER BY cardNum desc | 
 |  |  |     LIMIT 0,1 | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     insert into se_client_card (id, cardAddr, clientId, money, `state`, createDt, replaceDt, rechargeDt, lossDtDt, cancelDt, unlockDt, reversalDt, consumeDt, lastOper, remarks) | 
 |  |  |     values (#{id,jdbcType=BIGINT}, | 
 |  |  |             #{cardaddr,jdbcType=VARCHAR}, | 
 |  |  |             #{clientid,jdbcType=BIGINT}, | 
 |  |  |             #{money,jdbcType=FLOAT}, | 
 |  |  |             #{state,jdbcType=TINYINT}, | 
 |  |  |             #{createdt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{replacedt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{rechargedt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{lossdtdt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{canceldt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{unlockdt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{reversaldt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{consumedt,jdbcType=TIMESTAMP}, | 
 |  |  |             #{lastoper,jdbcType=TINYINT}, | 
 |  |  |             #{remarks,jdbcType=VARCHAR}) | 
 |  |  |     insert into se_client_card (id, cardAddr, cardNum, clientId, | 
 |  |  |       money, `state`, createDt,  | 
 |  |  |       replaceDt, rechargeDt, lossDtDt,  | 
 |  |  |       cancelDt, unlockDt, reversalDt,  | 
 |  |  |       consumeDt, lastOper, remarks | 
 |  |  |       ) | 
 |  |  |     values (#{id,jdbcType=BIGINT}, #{cardaddr,jdbcType=VARCHAR}, #{cardnum,jdbcType=BIGINT}, #{clientid,jdbcType=BIGINT}, | 
 |  |  |       #{money,jdbcType=FLOAT}, #{state,jdbcType=TINYINT}, #{createdt,jdbcType=TIMESTAMP},  | 
 |  |  |       #{replacedt,jdbcType=TIMESTAMP}, #{rechargedt,jdbcType=TIMESTAMP}, #{lossdtdt,jdbcType=TIMESTAMP},  | 
 |  |  |       #{canceldt,jdbcType=TIMESTAMP}, #{unlockdt,jdbcType=TIMESTAMP}, #{reversaldt,jdbcType=TIMESTAMP},  | 
 |  |  |       #{consumedt,jdbcType=TIMESTAMP}, #{lastoper,jdbcType=TINYINT}, #{remarks,jdbcType=VARCHAR} | 
 |  |  |       ) | 
 |  |  |  | 
 |  |  |   </insert> | 
 |  |  |  | 
 |  |  | <!--  <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard" useGeneratedKeys="true">--> | 
 |  |  | <!--    <!–@mbg.generated–>--> | 
 |  |  | <!--    insert into se_client_card (cardAddr, clientId, money, --> | 
 |  |  | <!--      `state`, createDt, replaceDt, --> | 
 |  |  | <!--      rechargeDt, lossDtDt, cancelDt, --> | 
 |  |  | <!--      unlockDt, reversalDt, consumeDt, --> | 
 |  |  | <!--      lastOper, remarks)--> | 
 |  |  | <!--    values (#{cardaddr,jdbcType=VARCHAR}, #{clientid,jdbcType=BIGINT}, #{money,jdbcType=FLOAT}, --> | 
 |  |  | <!--      #{state,jdbcType=TINYINT}, #{createdt,jdbcType=TIMESTAMP}, #{replacedt,jdbcType=TIMESTAMP}, --> | 
 |  |  | <!--      #{rechargedt,jdbcType=TIMESTAMP}, #{lossdtdt,jdbcType=TIMESTAMP}, #{canceldt,jdbcType=TIMESTAMP}, --> | 
 |  |  | <!--      #{unlockdt,jdbcType=TIMESTAMP}, #{reversaldt,jdbcType=TIMESTAMP}, #{consumedt,jdbcType=TIMESTAMP}, --> | 
 |  |  | <!--      #{lastoper,jdbcType=TINYINT}, #{remarks,jdbcType=VARCHAR})--> | 
 |  |  | <!--  </insert>--> | 
 |  |  |  | 
 |  |  |   <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard" useGeneratedKeys="true"> | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     insert into se_client_card | 
 |  |  |     <trim prefix="(" suffix=")" suffixOverrides=","> | 
 |  |  |       <if test="cardaddr != null"> | 
 |  |  |         cardAddr, | 
 |  |  |       </if> | 
 |  |  |       <if test="cardnum != null"> | 
 |  |  |         cardNum, | 
 |  |  |       </if> | 
 |  |  |       <if test="clientid != null"> | 
 |  |  |         clientId, | 
 |  |  | 
 |  |  |     <trim prefix="values (" suffix=")" suffixOverrides=","> | 
 |  |  |       <if test="cardaddr != null"> | 
 |  |  |         #{cardaddr,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="cardnum != null"> | 
 |  |  |         #{cardnum,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="clientid != null"> | 
 |  |  |         #{clientid,jdbcType=BIGINT}, | 
 |  |  | 
 |  |  |       <if test="cardaddr != null"> | 
 |  |  |         cardAddr = #{cardaddr,jdbcType=VARCHAR}, | 
 |  |  |       </if> | 
 |  |  |       <if test="cardnum != null"> | 
 |  |  |         cardNum = #{cardnum,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  |       <if test="clientid != null"> | 
 |  |  |         clientId = #{clientid,jdbcType=BIGINT}, | 
 |  |  |       </if> | 
 |  |  | 
 |  |  |     <!--@mbg.generated--> | 
 |  |  |     update se_client_card | 
 |  |  |     set cardAddr = #{cardaddr,jdbcType=VARCHAR}, | 
 |  |  |       cardNum = #{cardnum,jdbcType=BIGINT}, | 
 |  |  |       clientId = #{clientid,jdbcType=BIGINT}, | 
 |  |  |       money = #{money,jdbcType=FLOAT}, | 
 |  |  |       `state` = #{state,jdbcType=TINYINT}, | 
 |  |  | 
 |  |  |       remarks = #{remarks,jdbcType=VARCHAR} | 
 |  |  |     where id = #{id,jdbcType=BIGINT} | 
 |  |  |   </update> | 
 |  |  |  | 
 |  |  |   <!--根据农户主键获取水卡列表--> | 
 |  |  |   <select id="getCardInfoByClientId" resultType="com.dy.pipIrrGlobal.voSe.VoCardInfo"> | 
 |  |  |     SELECT | 
 |  |  |         cardNum, | 
 |  |  |         '用户卡' AS cardType, | 
 |  |  |         money, | 
 |  |  |         (CASE | 
 |  |  |             WHEN state = 1 THEN "正常" | 
 |  |  |             WHEN state = 2 THEN "已注销" | 
 |  |  |             ELSE "已挂失" | 
 |  |  |         END) AS state | 
 |  |  |     FROM se_client_card | 
 |  |  |     WHERE clientId = ${clientId} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据水卡编号获取操作记录列表--> | 
 |  |  |   <select id="getOperateRecordsByCardNum" resultType="java.util.HashMap"> | 
 |  |  |     SELECT * FROM v_operate WHERE cardNum = ${cardNum} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据水卡编号获取余额--> | 
 |  |  |   <select id="getMoneyByCardNum" resultType="java.lang.Float"> | 
 |  |  |     SELECT money FROM se_client_card WHERE cardNum = ${cardNum} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据水卡编号获取充值总额--> | 
 |  |  |   <select id="sumRechargeByCardNum" resultType="java.lang.Float"> | 
 |  |  |     SELECT | 
 |  |  |       SUM(his.amount) AS amount | 
 |  |  |     FROM se_recharge_history his | 
 |  |  |         INNER JOIN se_client_card card ON his.cardId = card.id | 
 |  |  |     WHERE card.cardNum = ${cardNum} | 
 |  |  |   </select> | 
 |  |  |  | 
 |  |  |   <!--根据水卡编号获取卡片状态:1-开卡,2-补卡,3-充值,4-挂失,5-注销,6-解锁,7-冲正,8-消费--> | 
 |  |  |   <select id="getCardStateByCardNum" resultType="java.lang.String"> | 
 |  |  |     SELECT | 
 |  |  |       (CASE | 
 |  |  |          WHEN lastOper = 1 THEN "开卡" | 
 |  |  |          WHEN lastOper = 2 THEN "补卡" | 
 |  |  |          WHEN lastOper = 3 THEN "充值" | 
 |  |  |          WHEN lastOper = 4 THEN "挂失" | 
 |  |  |          WHEN lastOper = 5 THEN "注销" | 
 |  |  |          WHEN lastOper = 6 THEN "解锁" | 
 |  |  |          WHEN lastOper = 7 THEN "冲正" | 
 |  |  |          WHEN lastOper = 8 THEN "消费" | 
 |  |  |         END) AS stateName | 
 |  |  |     FROM se_client_card | 
 |  |  |     WHERE cardNum = ${cardNum} | 
 |  |  |   </select> | 
 |  |  | </mapper> |