From e6a9e6f750115579c8cc90d7e6d5bf1eebe79b90 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期二, 05 十一月 2024 15:26:24 +0800 Subject: [PATCH] 获取农户数据去掉重复记录,微信支付的传参、返回值、接口、数据库表金额都以元为单位 --- pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml | 135 +++++++++++++++++++++++++++++++------------- 1 files changed, 94 insertions(+), 41 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml index 54511ba..d38ce76 100644 --- a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVirtualCardMapper.xml @@ -8,6 +8,7 @@ <result column="vc_num" jdbcType="BIGINT" property="vcNum" /> <result column="client_id" jdbcType="BIGINT" property="clientId" /> <result column="money" jdbcType="FLOAT" property="money" /> + <result column="state" jdbcType="TINYINT" property="state" /> <result column="last_operate" jdbcType="TINYINT" property="lastOperate" /> <result column="last_operate_time" jdbcType="TIMESTAMP" property="lastOperateTime" /> <result column="in_use" jdbcType="TINYINT" property="inUse" /> @@ -16,12 +17,13 @@ </resultMap> <sql id="Base_Column_List"> <!--@mbg.generated--> - id, vc_num, client_id, money, last_operate, last_operate_time, in_use, intake_id, create_time + id, vc_num, client_id, money, state, last_operate, last_operate_time, in_use, intake_id, create_time </sql> <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> <!--@mbg.generated--> select - <include refid="Base_Column_List" /> +<!-- <include refid="Base_Column_List" />--> + * from se_virtual_card where id = #{id,jdbcType=BIGINT} </select> @@ -33,10 +35,10 @@ <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVirtualCard"> <!--@mbg.generated--> insert into se_virtual_card (id, vc_num, client_id, - money, last_operate, last_operate_time, + money, state, last_operate, last_operate_time, in_use, intake_id, create_time) values (#{id,jdbcType=BIGINT}, #{vcNum,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT}, - #{money,jdbcType=FLOAT}, #{lastOperate,jdbcType=TINYINT}, #{lastOperateTime,jdbcType=TIMESTAMP}, + #{money,jdbcType=FLOAT}, #{state,jdbcType=TINYINT}, #{lastOperate,jdbcType=TINYINT}, #{lastOperateTime,jdbcType=TIMESTAMP}, #{inUse,jdbcType=TINYINT}, #{intakeId,jdbcType=BIGINT},#{createTime,jdbcType=TIMESTAMP}) </insert> <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVirtualCard"> @@ -54,6 +56,9 @@ </if> <if test="money != null"> money, + </if> + <if test="state != null"> + state, </if> <if test="lastOperate != null"> last_operate, @@ -83,6 +88,9 @@ </if> <if test="money != null"> #{money,jdbcType=FLOAT}, + </if> + <if test="state != null"> + #{state,jdbcType=TINYINT}, </if> <if test="lastOperate != null"> #{lastOperate,jdbcType=TINYINT}, @@ -114,6 +122,9 @@ <if test="money != null"> money = #{money,jdbcType=FLOAT}, </if> + <if test="state != null"> + state = #{state,jdbcType=TINYINT}, + </if> <if test="lastOperate != null"> last_operate = #{lastOperate,jdbcType=TINYINT}, </if> @@ -138,6 +149,7 @@ set vc_num = #{vcNum,jdbcType=BIGINT}, client_id = #{clientId,jdbcType=BIGINT}, money = #{money,jdbcType=FLOAT}, + state = #{state,jdbcType=TINYINT}, last_operate = #{lastOperate,jdbcType=TINYINT}, last_operate_time = #{lastOperateTime,jdbcType=TIMESTAMP}, in_use = #{inUse,jdbcType=TINYINT}, @@ -151,11 +163,17 @@ intake_id = null where intake_id = #{intakeId,jdbcType=BIGINT} </update> + <update id="updateMoney" > + update se_virtual_card + set money = #{money,jdbcType=FLOAT} + where id = #{id,jdbcType=BIGINT} + </update> <!--楠岃瘉鍐滄埛鏄惁鎷ユ湁鎸囧畾鍚嶇О鐨勮櫄鎷熷崱--> <select id="getRecordCountByName" resultType="java.lang.Integer"> SELECT COUNT(*) AS recordCount FROM se_virtual_card <where> + AND state = 1 <if test = "clientId != null and clientId > 0"> AND client_id = #{clientId} </if> @@ -169,96 +187,131 @@ <!--鑾峰彇鍐滄埛鍏ㄩ儴铏氭嫙鍗�--> <select id="getVCs" resultType="com.dy.pipIrrGlobal.voSe.VoVirtualCard"> SELECT - CAST(id AS char) AS id, + id, vc_num AS vcNum, - money, + ROUND(money / 100, 2) AS money, in_use AS inUse, (CASE - WHEN in_use = 0 THEN "鏈娇鐢�" - WHEN in_use = 1 THEN "浣跨敤涓�" - END) AS inUseName + WHEN money <= #{alarmValue} THEN true + ELSE FALSE + END) AS isAlarmValue FROM se_virtual_card <where> + AND state = 1 <if test = "clientId != null"> AND client_id = #{clientId} </if> </where> - ORDER BY in_use, money + ORDER BY in_use, money DESC </select> <!--鏍规嵁铏氭嫙鍗D鑾峰彇铏氭嫙鍗″璞�--> <select id="getVcById" resultType="com.dy.pipIrrGlobal.voSe.VoVirtualCard"> SELECT - CAST(id AS char) AS id, + id, vc_num AS vcNum, +<!-- ROUND(money / 100,2) AS money,--> money, in_use AS inUse, (CASE - WHEN in_use = 0 THEN "鏈娇鐢�" - WHEN in_use = 1 THEN "浣跨敤涓�" + WHEN in_use = 0 THEN '鏈娇鐢�' + WHEN in_use = 1 THEN '浣跨敤涓�' END) AS inUseName FROM se_virtual_card - WHERE id = #{vcId} + WHERE state = 1 AND id = #{vcId} </select> <!--鏍规嵁铏氭嫙鍗$紪鍙疯幏鍙栬櫄鎷熷崱--> <select id="getVcCardByNum" resultType="com.dy.pipIrrGlobal.pojoSe.SeVirtualCard"> select <include refid="Base_Column_List" /> - FROM se_virtual_card WHERE vc_num = #{vcNum} + FROM se_virtual_card WHERE state = 1 AND vc_num = #{vcNum} </select> <!--鏍规嵁铏氭嫙鍗$紪鍙疯幏鍙栬櫄鎷熷崱ID--> <select id="getVcIdByNum" resultType="java.lang.Long"> - SELECT id FROM se_virtual_card WHERE vc_num = #{vcNum} + SELECT id FROM se_virtual_card WHERE state = 1 AND vc_num = #{vcNum} + </select> + + <!--鏍规嵁铏氭嫙鍗$紪鍙疯幏鍙栬櫄鎷熷崱ID--> + <select id="getClientIdAndNameByVsCardNo" resultType="java.util.Map"> + SELECT + cli.id AS clientId, + cli.name AS clientName + FROM se_virtual_card card + INNER JOIN se_client cli ON card.client_id = cli.id + WHERE card.state = 1 AND card.vc_num = #{vcNum} + </select> + + <!-- 鏍规嵁姘村崱缂栧彿鑾峰彇铏氭嫙姘村崱 --> + <select id="getCardsByNum" resultType="com.dy.pipIrrGlobal.voSe.VoCardInfo1"> + SELECT + id, + money + FROM se_virtual_card + WHERE state = 1 AND vc_num = #{cardNum} </select> <!--鏍规嵁琛屾斂鍖哄垝涓叉ā绯婃煡璇㈣櫄鎷熷崱缂栧彿--> <select id="getVcCardNumOfMax" resultType="java.lang.String"> SELECT vc_num FROM se_virtual_card - WHERE vc_num LIKE CONCAT('%',#{areaCode},'%') + WHERE state = 1 AND vc_num LIKE CONCAT('%',#{areaCode},'%') ORDER BY vc_num desc LIMIT 0,1 </select> - <!--鑾峰彇铏氭嫙鍗″厖鍊艰褰�--> + <!--鑾峰彇铏氭嫙鍗″厖鍊艰褰曪紝涓嶅寘鎷凡宸叉敞閿�鍗$殑鍏呭�艰褰�--> <select id="getVcRechargeRecords" resultType="com.dy.pipIrrGlobal.voSe.VoVcRecharge" > SELECT - CAST(id AS char) AS id, - CAST(vc_id AS char) AS vcId, - CAST(client_id AS char) AS clientId, - money, - after_recharge AS afterRecharge, - order_number AS orderNumber, - recharge_amount AS rechargeAmount, - order_time AS orderTime, - recharge_time AS rechargeTime, - order_state AS orderState, - (CASE - WHEN order_state = 1 THEN "鏈敮浠�" - WHEN order_state = 2 THEN "宸叉敮浠�" - END) AS orderStateName - FROM se_vc_recharge + rec.vc_id AS vcId, + rec.client_id AS clientId, + rec.recharge_time AS rechargeTime, + rec.recharge_amount AS rechargeAmount, + rec.after_recharge AS afterRecharge, + '寰俊鏀粯' AS rechargeType + <!-- CASE--> + <!-- WHEN card.state = 1 THEN '姝e父閿�铏氭嫙鍗�'--> + <!-- WHEN card.state = 2 THEN '宸叉敞閿�铏氭嫙鍗�'--> + <!-- END AS cardState,--> + FROM se_vc_recharge rec + INNER JOIN se_virtual_card card ON card.id = rec.vc_id <where> - <if test = "orderState != null"> - order_state = #{orderState,jdbcType=TINYINT} + AND card.state = 1 + AND rec.order_state = 2 + <if test = "vcId != null and vcId > 0"> + AND rec.vc_id = #{vcId} </if> </where> - order by recharge_time DESC - <if test="pageCurr != null and pageSize != null"> - LIMIT ${(pageCurr-1)*pageSize}, ${pageSize} + order by rec.recharge_time DESC + <if test="start != null and count != null"> + LIMIT #{start}, #{count} </if> </select> <select id="getRechargeRecordCount" resultType="java.lang.Long"> SELECT COUNT(*) - FROM se_vc_recharge + FROM se_vc_recharge rec + INNER JOIN se_virtual_card card ON card.id = rec.vc_id <where> - <if test = "orderState != null"> - order_state = #{orderState,jdbcType=TINYINT} + AND card.state = 1 + AND rec.order_state = 2 + <if test = "vcId != null and vcId > 0"> + AND rec.vc_id = #{vcId} </if> </where> </select> + + <!--鏍规嵁鍐滄埛ID鍙婅櫄鎷熷崱ID鑾峰彇姝e父鐘舵�佺殑铏氭嫙鍗″璞★紝閿�鍗′娇鐢�--> + <select id="getVcByClientIdAndVcId" resultType="com.dy.pipIrrGlobal.pojoSe.SeVirtualCard"> + SELECT * FROM se_virtual_card + WHERE state = 1 AND client_id = #{clientId} AND id = #{vcId} + </select> + + <!--娉ㄩ攢铏氭嫙鍗�--> + <update id="cancelVc"> + UPDATE se_virtual_card SET state = 2, last_operate = 4 , last_operate_time = NOW() + WHERE id = #{vcId} AND client_id = #{clientId} + </update> </mapper> \ No newline at end of file -- Gitblit v1.8.0