| | |
| | | <!--@Table se_client_card--> |
| | | <id column="id" jdbcType="BIGINT" property="id" /> |
| | | <result column="cardAddr" jdbcType="VARCHAR" property="cardaddr" /> |
| | | <result column="cardNum" jdbcType="VARCHAR" property="cardnum" /> |
| | | <result column="clientNum" jdbcType="VARCHAR" property="clientnum" /> |
| | | <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" /> |
| | | <result column="original_card_id" jdbcType="BIGINT" property="originalCardId"/> |
| | | <result column="createDt" jdbcType="TIMESTAMP" property="createdt" /> |
| | | <result column="replaceDt" jdbcType="TIMESTAMP" property="replacedt" /> |
| | | <result column="rechargeDt" jdbcType="TIMESTAMP" property="rechargedt" /> |
| | |
| | | <result column="cancelDt" jdbcType="TIMESTAMP" property="canceldt" /> |
| | | <result column="unlockDt" jdbcType="TIMESTAMP" property="unlockdt" /> |
| | | <result column="reversalDt" jdbcType="TIMESTAMP" property="reversaldt" /> |
| | | <result column="refundDt" jdbcType="TIMESTAMP" property="refunddt" /> |
| | | <result column="consumeDt" jdbcType="TIMESTAMP" property="consumedt" /> |
| | | <result column="lastOper" jdbcType="TINYINT" property="lastoper" /> |
| | | <result column="remarks" jdbcType="VARCHAR" property="remarks" /> |
| | | </resultMap> |
| | | <sql id="Base_Column_List"> |
| | | <!--@mbg.generated--> |
| | | id, cardAddr, cardNum, clientNum, money, `state`, createDt, replaceDt, rechargeDt, |
| | | lossDtDt, cancelDt, unlockDt, reversalDt, consumeDt, lastOper, remarks |
| | | id, cardAddr, cardNum, clientId, money, `state`, original_card_id, createDt, replaceDt, rechargeDt, |
| | | lossDtDt, cancelDt, unlockDt, reversalDt, refundDt, consumeDt, lastOper, remarks |
| | | </sql> |
| | | <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> |
| | | <!--@mbg.generated--> |
| | |
| | | |
| | | <!--根据水卡编号获取水卡表主键及农户编号--> |
| | | <select id="getCardIdAndClientNum" resultType="java.util.Map"> |
| | | SELECT id AS cardId, clientNum FROM se_client_card WHERE cardNum = #{cardNum} |
| | | <!-- 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 |
| | |
| | | LIMIT 0,1 |
| | | </select> |
| | | |
| | | <!--添加水卡记录--> |
| | | <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard" useGeneratedKeys="true"> |
| | | <insert id="insert" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard"> |
| | | <!--@mbg.generated--> |
| | | insert into se_client_card (id, cardAddr, cardNum, clientNum, |
| | | money, `state`, createDt, |
| | | replaceDt, rechargeDt, lossDtDt, |
| | | cancelDt, unlockDt, reversalDt, |
| | | insert into se_client_card (id, cardAddr, cardNum, clientId, |
| | | money, `state`, original_card_id, createDt, |
| | | replaceDt, rechargeDt, lossDtDt, |
| | | cancelDt, unlockDt, reversalDt, refundDt, |
| | | consumeDt, lastOper, remarks |
| | | ) |
| | | values (#{id,jdbcType=BIGINT}, #{cardaddr,jdbcType=VARCHAR}, #{cardnum,jdbcType=VARCHAR}, #{clientnum,jdbcType=VARCHAR}, |
| | | #{money,jdbcType=FLOAT}, #{state,jdbcType=TINYINT}, #{createdt,jdbcType=TIMESTAMP}, |
| | | #{replacedt,jdbcType=TIMESTAMP}, #{rechargedt,jdbcType=TIMESTAMP}, #{lossdtdt,jdbcType=TIMESTAMP}, |
| | | values (#{id,jdbcType=BIGINT}, #{cardaddr,jdbcType=VARCHAR}, #{cardnum,jdbcType=BIGINT}, #{clientid,jdbcType=BIGINT}, |
| | | #{money,jdbcType=FLOAT}, #{state,jdbcType=TINYINT}, #{originalCardId,jdbcType=BIGINT}, #{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} |
| | | #{refunddt,jdbcType=TIMESTAMP}, #{consumedt,jdbcType=TIMESTAMP}, #{lastoper,jdbcType=TINYINT}, #{remarks,jdbcType=VARCHAR} |
| | | ) |
| | | </insert> |
| | | |
| | | </insert> |
| | | <insert id="insertSelective" keyColumn="id" keyProperty="id" parameterType="com.dy.pipIrrGlobal.pojoSe.SeClientCard" useGeneratedKeys="true"> |
| | | <!--@mbg.generated--> |
| | | insert into se_client_card |
| | |
| | | <if test="cardnum != null"> |
| | | cardNum, |
| | | </if> |
| | | <if test="clientnum != null"> |
| | | clientNum, |
| | | <if test="clientid != null"> |
| | | clientId, |
| | | </if> |
| | | <if test="money != null"> |
| | | money, |
| | | </if> |
| | | <if test="state != null"> |
| | | `state`, |
| | | </if> |
| | | <if test="originalCardId != null"> |
| | | original_card_id, |
| | | </if> |
| | | <if test="createdt != null"> |
| | | createDt, |
| | |
| | | <if test="reversaldt != null"> |
| | | reversalDt, |
| | | </if> |
| | | <if test="refunddt != null"> |
| | | refundDt, |
| | | </if> |
| | | <if test="consumedt != null"> |
| | | consumeDt, |
| | | </if> |
| | |
| | | #{cardaddr,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="cardnum != null"> |
| | | #{cardnum,jdbcType=VARCHAR}, |
| | | #{cardnum,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="clientnum != null"> |
| | | #{clientnum,jdbcType=VARCHAR}, |
| | | <if test="clientid != null"> |
| | | #{clientid,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="money != null"> |
| | | #{money,jdbcType=FLOAT}, |
| | | </if> |
| | | <if test="state != null"> |
| | | #{state,jdbcType=TINYINT}, |
| | | </if> |
| | | <if test="originalCardId != null"> |
| | | #{originalCardId,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="createdt != null"> |
| | | #{createdt,jdbcType=TIMESTAMP}, |
| | |
| | | <if test="reversaldt != null"> |
| | | #{reversaldt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="refunddt != null"> |
| | | #{refunddt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="consumedt != null"> |
| | | #{consumedt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | |
| | | cardAddr = #{cardaddr,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="cardnum != null"> |
| | | cardNum = #{cardnum,jdbcType=VARCHAR}, |
| | | cardNum = #{cardnum,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="clientnum != null"> |
| | | clientNum = #{clientnum,jdbcType=VARCHAR}, |
| | | <if test="clientid != null"> |
| | | clientId = #{clientid,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="money != null"> |
| | | money = #{money,jdbcType=FLOAT}, |
| | | </if> |
| | | <if test="state != null"> |
| | | `state` = #{state,jdbcType=TINYINT}, |
| | | </if> |
| | | <if test="originalCardId != null"> |
| | | `original_card_id` = #{originalCardId,jdbcType=BIGINT}, |
| | | </if> |
| | | <if test="createdt != null"> |
| | | createDt = #{createdt,jdbcType=TIMESTAMP}, |
| | |
| | | <if test="reversaldt != null"> |
| | | reversalDt = #{reversaldt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="refunddt != null"> |
| | | refundDt = #{refunddt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="consumedt != null"> |
| | | consumeDt = #{consumedt,jdbcType=TIMESTAMP}, |
| | | </if> |
| | |
| | | <!--@mbg.generated--> |
| | | update se_client_card |
| | | set cardAddr = #{cardaddr,jdbcType=VARCHAR}, |
| | | cardNum = #{cardnum,jdbcType=VARCHAR}, |
| | | clientNum = #{clientnum,jdbcType=VARCHAR}, |
| | | cardNum = #{cardnum,jdbcType=BIGINT}, |
| | | clientId = #{clientid,jdbcType=BIGINT}, |
| | | money = #{money,jdbcType=FLOAT}, |
| | | `state` = #{state,jdbcType=TINYINT}, |
| | | original_card_id = #{originalCardId,jdbcType=BIGINT}, |
| | | createDt = #{createdt,jdbcType=TIMESTAMP}, |
| | | replaceDt = #{replacedt,jdbcType=TIMESTAMP}, |
| | | rechargeDt = #{rechargedt,jdbcType=TIMESTAMP}, |
| | |
| | | cancelDt = #{canceldt,jdbcType=TIMESTAMP}, |
| | | unlockDt = #{unlockdt,jdbcType=TIMESTAMP}, |
| | | reversalDt = #{reversaldt,jdbcType=TIMESTAMP}, |
| | | refundDt = #{refunddt,jdbcType=TIMESTAMP}, |
| | | consumeDt = #{consumedt,jdbcType=TIMESTAMP}, |
| | | lastOper = #{lastoper,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 |
| | | (CASE |
| | | WHEN state = 1 THEN '正常' |
| | | WHEN state = 2 THEN '已注销' |
| | | WHEN state = 3 THEN '已挂失' |
| | | END) AS stateName |
| | | FROM se_client_card |
| | | WHERE cardNum = ${cardNum} |
| | | </select> |
| | | |
| | | <!--根据指定条件获取水卡列表记录数,应用程序使用--> |
| | | <select id="getCardsCount" parameterType="java.util.Map" resultType="java.lang.Long"> |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | FROM se_client_card card |
| | | INNER JOIN se_client cli ON card.clientId = cli.id |
| | | <where> |
| | | <if test = "clientNum != null and clientNum !=''"> |
| | | AND cli.clientNum like CONCAT('%',#{clientNum},'%') |
| | | </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> |
| | | </where> |
| | | </select> |
| | | |
| | | <!--根据指定条件获取水卡列表,应用程序使用--> |
| | | <select id="getCards" resultType="com.dy.pipIrrGlobal.voSe.VoCards"> |
| | | SELECT |
| | | cli.clientNum, |
| | | cli.name AS clientName, |
| | | card.cardNum, |
| | | cli.phone, |
| | | cli.idCard, |
| | | card.state AS cardState, |
| | | (CASE |
| | | WHEN card.state = 1 THEN '正常' |
| | | WHEN card.state = 2 THEN '已注销' |
| | | WHEN card.state = 3 THEN '已挂失' |
| | | End) AS stateName, |
| | | '农户卡' AS cardType, |
| | | FORMAT(card.money, 2) AS money |
| | | FROM se_client_card card |
| | | INNER JOIN se_client cli ON card.clientId = cli.id |
| | | <where> |
| | | <if test = "clientNum != null and clientNum !=''"> |
| | | AND cli.clientNum like CONCAT('%',#{clientNum},'%') |
| | | </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> |
| | | </where> |
| | | ORDER BY card.id |
| | | <trim prefix="limit " > |
| | | <if test="start != null and count != null"> |
| | | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | |
| | | <!--获取已挂失未补卡的记录数量--> |
| | | <select id="getUnreplacedRecordCount" resultType="java.lang.Long"> |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | FROM se_client_card card |
| | | INNER JOIN se_client cli ON card.clientId = cli.id |
| | | WHERE card.state = 3 AND NOT EXISTS (SELECT * FROM se_client_card card2 WHERE card2.original_card_id = card.cardNum) |
| | | </select> |
| | | |
| | | <!--获取已挂失未补卡的记录--> |
| | | <select id="getUnreplaced" resultType="com.dy.pipIrrGlobal.voSe.VoCards"> |
| | | SELECT |
| | | cli.clientNum, |
| | | cli.name AS clientName, |
| | | card.cardNum, |
| | | cli.phone, |
| | | cli.idCard, |
| | | card.state AS cardState, |
| | | (CASE |
| | | WHEN card.state = 1 THEN '正常' |
| | | WHEN card.state = 2 THEN '已注销' |
| | | WHEN card.state = 3 THEN '已挂失' |
| | | End) AS stateName, |
| | | '农户卡' AS cardType, |
| | | FORMAT(card.money,2) AS money |
| | | FROM se_client_card card |
| | | INNER JOIN se_client cli ON card.clientId = cli.id |
| | | WHERE card.state = 3 AND NOT EXISTS (SELECT * FROM se_client_card card2 WHERE card2.original_card_id = card.cardNum) |
| | | ORDER BY card.id |
| | | <trim prefix="limit " > |
| | | <if test="start != null and count != null"> |
| | | #{start,javaType=Integer,jdbcType=INTEGER}, #{count,javaType=Integer,jdbcType=INTEGER} |
| | | </if> |
| | | </trim> |
| | | </select> |
| | | |
| | | <!--判断指定水卡是否为挂失状态且无补卡记录--> |
| | | <select id="isLostAndUnreplaced" resultType="java.lang.Integer"> |
| | | SELECT |
| | | COUNT(*) AS recordCount |
| | | FROM se_client_card card |
| | | INNER JOIN se_client_card card2 ON card2.original_card_id = card.cardNum |
| | | <where> |
| | | AND card.state = 3 |
| | | <if test = "cardNum != null and cardNum > 0"> |
| | | AND card.cardNum = #{cardNum} |
| | | </if> |
| | | </where> |
| | | </select> |
| | | </mapper> |