From d16984b80d2b8bebc5038a6f70990f7443d8d4a0 Mon Sep 17 00:00:00 2001 From: zhubaomin <zhubaomin> Date: 星期六, 10 八月 2024 11:02:27 +0800 Subject: [PATCH] 2024-08-10 朱宝民 注册虚拟卡、虚拟卡充值添加操作记录(新加操作记录表) --- pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java | 21 +++ pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java | 3 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/enums/LastOperateENUM.java | 9 pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java | 22 +++ pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentSv.java | 14 ++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcOperateMapper.java | 27 ++++ pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcOperate.java | 75 ++++++++++++ pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/enums/LastOperateENUM.java | 9 pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml | 126 +++++++++++++++++++++ pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java | 35 ++++- pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java | 11 - 11 files changed, 316 insertions(+), 36 deletions(-) diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcOperateMapper.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcOperateMapper.java new file mode 100644 index 0000000..95c21b5 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/daoSe/SeVcOperateMapper.java @@ -0,0 +1,27 @@ +package com.dy.pipIrrGlobal.daoSe; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.dy.pipIrrGlobal.pojoSe.SeVcOperate; +import org.apache.ibatis.annotations.Mapper; + +/** + * @author ZhuBaoMin + * @date 2024-08-10 10:15 + * @LastEditTime 2024-08-10 10:15 + * @Description + */ + +@Mapper +public interface SeVcOperateMapper extends BaseMapper<SeVcOperate> { + int deleteByPrimaryKey(Long id); + + int insert(SeVcOperate record); + + int insertSelective(SeVcOperate record); + + SeVcOperate selectByPrimaryKey(Long id); + + int updateByPrimaryKeySelective(SeVcOperate record); + + int updateByPrimaryKey(SeVcOperate record); +} \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcOperate.java b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcOperate.java new file mode 100644 index 0000000..f1464a5 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/java/com/dy/pipIrrGlobal/pojoSe/SeVcOperate.java @@ -0,0 +1,75 @@ +package com.dy.pipIrrGlobal.pojoSe; + +/** + * @author ZhuBaoMin + * @date 2024-08-10 10:15 + * @LastEditTime 2024-08-10 10:15 + * @Description + */ + +import com.alibaba.fastjson2.annotation.JSONField; +import com.alibaba.fastjson2.writer.ObjectWriterImplToString; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import com.dy.common.po.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.*; + +import java.util.Date; + +/** + * 铏氭嫙鍗℃搷浣滆〃 + */ +@TableName(value = "se_vc_operate", autoResultMap = true) +@Data +@Builder +@ToString +@NoArgsConstructor +@AllArgsConstructor +public class SeVcOperate implements BaseEntity { + public static final long serialVersionUID = 202408100908001L; + + /** + * 涓婚敭 + */ + @JSONField(serializeUsing = ObjectWriterImplToString.class) + @TableId(type = IdType.INPUT) + private Long id; + + /** + * 铏氭嫙鍗D + */ + @JSONField(serializeUsing = ObjectWriterImplToString.class) + private Long vcId; + + /** + * 鍐滄埛ID + */ + @JSONField(serializeUsing = ObjectWriterImplToString.class) + private Long clientId; + + /** + * 鎿嶄綔绫诲瀷;1-寮�鎴凤紝2-鍏呭�硷紝3-娑堣垂锛�4-閿�鎴凤紝5-鐢宠閫�娆撅紝6-閫�娆惧鏍革紝7-閫�娆� + */ + private Byte operateType; + + /** + * 鍏呭�糏D;鍏呭�兼椂濉啓 + */ + @JSONField(serializeUsing = ObjectWriterImplToString.class) + private Long rechargeId; + + /** + * 鎿嶄綔浜� + */ + @JSONField(serializeUsing = ObjectWriterImplToString.class) + private Long operator; + + /** + * 鎿嶄綔鏃堕棿 + */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date operateTime; + +} \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml new file mode 100644 index 0000000..0e5b341 --- /dev/null +++ b/pipIrr-platform/pipIrr-global/src/main/resources/mapper/SeVcOperateMapper.xml @@ -0,0 +1,126 @@ +<?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.SeVcOperateMapper"> + <resultMap id="BaseResultMap" type="com.dy.pipIrrGlobal.pojoSe.SeVcOperate"> + <!--@mbg.generated--> + <!--@Table se_vc_operate--> + <id column="id" jdbcType="BIGINT" property="id" /> + <result column="vc_id" jdbcType="BIGINT" property="vcId" /> + <result column="client_id" jdbcType="BIGINT" property="clientId" /> + <result column="operate_type" jdbcType="TINYINT" property="operateType" /> + <result column="recharge_id" jdbcType="BIGINT" property="rechargeId" /> + <result column="operator" jdbcType="BIGINT" property="operator" /> + <result column="operate_time" jdbcType="TIMESTAMP" property="operateTime" /> + </resultMap> + <sql id="Base_Column_List"> + <!--@mbg.generated--> + id, vc_id, client_id, operate_type, recharge_id, `operator`, operate_time + </sql> + <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap"> + <!--@mbg.generated--> + select + <include refid="Base_Column_List" /> + from se_vc_operate + where id = #{id,jdbcType=BIGINT} + </select> + <delete id="deleteByPrimaryKey" parameterType="java.lang.Long"> + <!--@mbg.generated--> + delete from se_vc_operate + where id = #{id,jdbcType=BIGINT} + </delete> + <insert id="insert" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate"> + <!--@mbg.generated--> + insert into se_vc_operate (id, vc_id, client_id, + operate_type, recharge_id, `operator`, + operate_time) + values (#{id,jdbcType=BIGINT}, #{vcId,jdbcType=BIGINT}, #{clientId,jdbcType=BIGINT}, + #{operateType,jdbcType=TINYINT}, #{rechargeId,jdbcType=BIGINT}, #{operator,jdbcType=BIGINT}, + #{operateTime,jdbcType=TIMESTAMP}) + </insert> + <insert id="insertSelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate"> + <!--@mbg.generated--> + insert into se_vc_operate + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null"> + id, + </if> + <if test="vcId != null"> + vc_id, + </if> + <if test="clientId != null"> + client_id, + </if> + <if test="operateType != null"> + operate_type, + </if> + <if test="rechargeId != null"> + recharge_id, + </if> + <if test="operator != null"> + `operator`, + </if> + <if test="operateTime != null"> + operate_time, + </if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="id != null"> + #{id,jdbcType=BIGINT}, + </if> + <if test="vcId != null"> + #{vcId,jdbcType=BIGINT}, + </if> + <if test="clientId != null"> + #{clientId,jdbcType=BIGINT}, + </if> + <if test="operateType != null"> + #{operateType,jdbcType=TINYINT}, + </if> + <if test="rechargeId != null"> + #{rechargeId,jdbcType=BIGINT}, + </if> + <if test="operator != null"> + #{operator,jdbcType=BIGINT}, + </if> + <if test="operateTime != null"> + #{operateTime,jdbcType=TIMESTAMP}, + </if> + </trim> + </insert> + <update id="updateByPrimaryKeySelective" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate"> + <!--@mbg.generated--> + update se_vc_operate + <set> + <if test="vcId != null"> + vc_id = #{vcId,jdbcType=BIGINT}, + </if> + <if test="clientId != null"> + client_id = #{clientId,jdbcType=BIGINT}, + </if> + <if test="operateType != null"> + operate_type = #{operateType,jdbcType=TINYINT}, + </if> + <if test="rechargeId != null"> + recharge_id = #{rechargeId,jdbcType=BIGINT}, + </if> + <if test="operator != null"> + `operator` = #{operator,jdbcType=BIGINT}, + </if> + <if test="operateTime != null"> + operate_time = #{operateTime,jdbcType=TIMESTAMP}, + </if> + </set> + where id = #{id,jdbcType=BIGINT} + </update> + <update id="updateByPrimaryKey" parameterType="com.dy.pipIrrGlobal.pojoSe.SeVcOperate"> + <!--@mbg.generated--> + update se_vc_operate + set vc_id = #{vcId,jdbcType=BIGINT}, + client_id = #{clientId,jdbcType=BIGINT}, + operate_type = #{operateType,jdbcType=TINYINT}, + recharge_id = #{rechargeId,jdbcType=BIGINT}, + `operator` = #{operator,jdbcType=BIGINT}, + operate_time = #{operateTime,jdbcType=TIMESTAMP} + where id = #{id,jdbcType=BIGINT} + </update> +</mapper> \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/enums/LastOperateENUM.java b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/enums/LastOperateENUM.java index 5d0411c..dd49cb9 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/enums/LastOperateENUM.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-sell/src/main/java/com/dy/pipIrrSell/virtualCard/enums/LastOperateENUM.java @@ -16,11 +16,10 @@ OPEN_ACCOUNT((byte)1, "寮�鎴�"), RECHARGE((byte)2, "鍏呭��"), CONSUME((byte)3, "娑堣垂"), - APPLY_REFUND((byte)4, "鐢宠閫�娆�"), - AUDIT_REFUND((byte)5, "閫�娆惧鏍�"), - REFUND((byte)6, "閫�娆�"), - OPEN_VALVE((byte)7, "寮�闃�"), - CLOSE_VALVE((byte)8, "鍏抽榾"); + CLOSING_ACCOUNT((byte)4, "閿�鎴�"), + APPLY_REFUND((byte)5, "鐢宠閫�娆�"), + AUDIT_REFUND((byte)6, "閫�娆惧鏍�"), + REFUND((byte)7, "閫�娆�"); private final Byte code; private final String message; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java index 8884740..6b3e977 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/client/ClientCtrl.java @@ -4,18 +4,9 @@ import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; -import com.dy.pipIrrGlobal.voSt.VoClient; -import com.dy.pipIrrGlobal.voSt.VoClientOpenCardCount; -import com.dy.pipIrrGlobal.voSt.VoClientRechargeTotal; -import com.dy.pipIrrGlobal.voSt.VoICCard; +import com.dy.pipIrrGlobal.voSt.*; import com.dy.pipIrrStatistics.card.IcCardqo.CommonQO; import com.dy.pipIrrStatistics.client.qo.*; -import com.dy.pipIrrGlobal.voSt.VoDayClient; -import com.dy.pipIrrGlobal.voSt.VoMonthClient; -import com.dy.pipIrrStatistics.client.qo.AmountSpentQO; -import com.dy.pipIrrStatistics.client.qo.OpenCountQO; -import com.dy.pipIrrStatistics.client.qo.WaterConsumptionQO; -import com.dy.pipIrrStatistics.client.qo.WaterDurationQO; import com.dy.pipIrrStatistics.intake.qo.ClientAmountQO; import com.dy.pipIrrStatistics.result.StatisticlResultCode; import jakarta.validation.Valid; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java index 2d103d1..0525e6f 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-statistics/src/main/java/com/dy/pipIrrStatistics/intake/IntkeCtrl.java @@ -10,6 +10,7 @@ import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.jetbrains.annotations.NotNull; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; @@ -335,7 +336,7 @@ */ @GetMapping(path = "/getDayIntakeAmount") @SsoAop() - public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> getDayIntakeAmount(IntakeAmountQO qo) { + public BaseResponse<QueryResultVo<List<VoDayIntakeAmount>>> getDayIntakeAmount(@NotNull IntakeAmountQO qo) { if(qo.getYearMonth() == null) { return BaseResponseUtils.buildErrorMsg(StatisticlResultCode.YEAR_AND_MONTH_CANNOT_BE_NULL.getMessage()); } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java index 727175d..3c8baf4 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardCtrl.java @@ -3,6 +3,7 @@ import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; +import com.dy.pipIrrGlobal.pojoSe.SeVcOperate; import com.dy.pipIrrGlobal.pojoSe.SeVirtualCard; import com.dy.pipIrrGlobal.voSe.VoVcRecharge; import com.dy.pipIrrGlobal.voSe.VoVirtualCard; @@ -15,6 +16,7 @@ import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.transaction.annotation.Transactional; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -48,6 +50,7 @@ * @return */ @PostMapping(path = "add_vc") + @Transactional(rollbackFor = Exception.class) public BaseResponse<Boolean> addVC(@RequestBody @Valid DtoRegist po, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); @@ -79,6 +82,7 @@ vcNum = areaCode + "00001"; } + // 鐢熸垚铏氭嫙鍗¤褰� SeVirtualCard seVirtualCard = new SeVirtualCard(); seVirtualCard.setVcNum(Long.parseLong(vcNum)); seVirtualCard.setClientId(clientId); @@ -87,10 +91,23 @@ seVirtualCard.setLastOperateTime(new Date()); seVirtualCard.setInUse((byte) 0); seVirtualCard.setCreateTime(new Date()); - Long rec = virtualCardSv.insertVirtualCard(seVirtualCard); - if(rec == null) { + Long vcId = virtualCardSv.insertVirtualCard(seVirtualCard); + if(vcId == null) { return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage()); } + + // 鐢熸垚铏氭嫙鍗℃搷浣滆褰曪紝娉ㄥ唽铏氭嫙鍗℃搷浣滀汉涓哄啘鎴� + SeVcOperate seVcOperate = new SeVcOperate(); + seVcOperate.setVcId(vcId); + seVcOperate.setClientId(clientId); + seVcOperate.setOperateType(LastOperateENUM.OPEN_ACCOUNT.getCode()); + seVcOperate.setOperator(clientId); + seVcOperate.setOperateTime(new Date()); + Long vcOperateId = virtualCardSv.insertVcOperate(seVcOperate); + if(vcOperateId == null) { + return BaseResponseUtils.buildErrorMsg(WechatResultCode.VC_OPEN_ACCOUNT_FAIL.getMessage()); + } + return BaseResponseUtils.buildSuccess(true) ; } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java index 2f4a5ff..d6d9cd4 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/VirtualCardSv.java @@ -4,10 +4,7 @@ import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.daoSe.*; -import com.dy.pipIrrGlobal.pojoSe.SeVcRecharge; -import com.dy.pipIrrGlobal.pojoSe.SeVcRefund; -import com.dy.pipIrrGlobal.pojoSe.SeVcRefundItem; -import com.dy.pipIrrGlobal.pojoSe.SeVirtualCard; +import com.dy.pipIrrGlobal.pojoSe.*; import com.dy.pipIrrGlobal.voSe.VoOrders; import com.dy.pipIrrGlobal.voSe.VoVcRecharge; import com.dy.pipIrrGlobal.voSe.VoVirtualCard; @@ -50,6 +47,9 @@ @Autowired private SeClientMapper seClientMapper; + + @Autowired + private SeVcOperateMapper seVcOperateMapper; /** * 鏍规嵁鍐滄埛ID鑾峰彇5绾ц鏀垮尯鍒掍唬鐮侊紝娉ㄥ唽铏氭嫙鍗′娇鐢� @@ -128,9 +128,10 @@ * 娣诲姞铏氭嫙鍗″厖鍊艰褰� * JSAPI涓嬪崟鍚庣敓鎴愰儴鍒嗗厖鍊艰褰� * @param po - * @return + * @return -1锛氳櫄鎷熷崱涓嶅瓨鍦紝0锛氭坊鍔犲厖鍊艰褰曞け璐� */ - public BaseResponse<Boolean> insertVCRecharge(DtoVirtualCard po) { + //public BaseResponse<Boolean> insertVCRecharge(DtoVirtualCard po) { + public Long insertVCRecharge(DtoVirtualCard po) { String orderNumber = po.getOrderNumber(); Long virtualId = po.getVirtualId(); Long clientId = po.getClientId(); @@ -138,8 +139,9 @@ // 楠岃瘉璇ヨ櫄鎷熷崱璐︽埛鏄惁瀛樺湪骞跺彇鍑哄綋鍓嶈处鎴蜂綑棰� SeVirtualCard seVirtualCard = seVirtualCardMapper.selectByPrimaryKey(virtualId); + if(seVirtualCard == null) { - return BaseResponseUtils.buildFail(WechatResultCode.NO_ACCOUNT.getMessage()); + return -1L; } Double money = seVirtualCard.getMoney(); @@ -152,11 +154,12 @@ seVcRecharge.setRechargeAmount(rechargeAmount); seVcRecharge.setOrderTime(new Date()); seVcRecharge.setOrderState(OrderStateENUM.NON_PAYMENT.getCode()); - Integer rec = seVcRechargeMapper.insert(seVcRecharge); - if(rec == null) { - return BaseResponseUtils.buildFail(WechatResultCode.RECHARGE_FAIL.getMessage()); + seVcRechargeMapper.insert(seVcRecharge); + Long rechargeId = seVcRecharge.getId(); + if(rechargeId == null) { + return 0L; } - return BaseResponseUtils.buildSuccess(true) ; + return rechargeId; } /** @@ -349,4 +352,14 @@ return rsVo; } + + /** + * 娣诲姞铏氭嫙鍗℃搷浣滆褰� + * @param po + * @return + */ + public Long insertVcOperate(SeVcOperate po) { + seVcOperateMapper.insert(po); + return po.getId(); + } } \ No newline at end of file diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/enums/LastOperateENUM.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/enums/LastOperateENUM.java index 7a4cc72..d637a61 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/enums/LastOperateENUM.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/virtualCard/enums/LastOperateENUM.java @@ -16,11 +16,10 @@ OPEN_ACCOUNT((byte)1, "寮�鎴�"), RECHARGE((byte)2, "鍏呭��"), CONSUME((byte)3, "娑堣垂"), - APPLY_REFUND((byte)4, "鐢宠閫�娆�"), - AUDIT_REFUND((byte)5, "閫�娆惧鏍�"), - REFUND((byte)6, "閫�娆�"), - OPEN_VALVE((byte)7, "寮�闃�"), - CLOSE_VALVE((byte)8, "鍏抽榾"); + CLOSING_ACCOUNT((byte)4, "閿�鎴�"), + APPLY_REFUND((byte)5, "鐢宠閫�娆�"), + AUDIT_REFUND((byte)6, "閫�娆惧鏍�"), + REFUND((byte)7, "閫�娆�"); private final Byte code; private final String message; diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java index b6043c0..356ac1f 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentCtrl.java @@ -237,8 +237,26 @@ virtualCard.setClientId(clientId); virtualCard.setOrderNumber(orderNumber); virtualCard.setRechargeAmount(rechargeAmount); - BaseResponse result = virtualCardSv.insertVCRecharge(virtualCard); - if(!result.getCode().equals("0001")) { + + // -1锛氳櫄鎷熷崱涓嶅瓨鍦紝0锛氭坊鍔犲厖鍊艰褰曞け璐� + Long rechargeId = virtualCardSv.insertVCRecharge(virtualCard); + if(rechargeId.equals(-1)) { + return BaseResponseUtils.buildFail(WechatResultCode.NO_ACCOUNT.getMessage()); + } + if(rechargeId.equals(0)) { + return BaseResponseUtils.buildFail(WechatResultCode.RECHARGE_FAIL.getMessage()); + } + + // 鐢熸垚鍏呭�兼搷浣滆褰曪紝鍏呭�兼搷浣滀汉涓哄啘鎴� + SeVcOperate seVcOperate = new SeVcOperate(); + seVcOperate.setVcId(virtualId); + seVcOperate.setClientId(clientId); + seVcOperate.setOperateType(LastOperateENUM.RECHARGE.getCode()); + seVcOperate.setRechargeId(rechargeId); + seVcOperate.setOperator(clientId); + seVcOperate.setOperateTime(new Date()); + Long vcOperateId = virtualCardSv.insertVcOperate(seVcOperate); + if(vcOperateId == null) { return BaseResponseUtils.buildErrorMsg(WechatResultCode.RECHARGE_ADD_FAIL.getMessage()); } diff --git a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentSv.java b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentSv.java index bac6e73..50edb2b 100644 --- a/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentSv.java +++ b/pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/wechatpay/PaymentSv.java @@ -2,6 +2,7 @@ import com.dy.pipIrrGlobal.daoSe.SeClientMapper; import com.dy.pipIrrGlobal.daoSe.SeOpenIdMapper; +import com.dy.pipIrrGlobal.daoSe.SeVcOperateMapper; import com.dy.pipIrrGlobal.daoSe.SeVcRechargeMapper; import com.dy.pipIrrGlobal.pojoSe.SeClient; import com.dy.pipIrrGlobal.pojoSe.SeOpenId; @@ -30,6 +31,9 @@ @Autowired private SeClientMapper seClientMapper; + + @Autowired + private SeVcOperateMapper seVcOperateMapper; /** * 鏍规嵁鐧诲綍鎬両D鑾峰彇鐧诲綍鎬佸璞� @@ -80,4 +84,14 @@ //return po.getClientId(); return po.getId(); } + + /** + * 娣诲姞铏氭嫙鍗℃搷浣滆褰� + * @param po + * @return + */ + //public Long insertVcOperate(SeVcOperate po) { + // seVcOperateMapper.insert(po); + // return po.getId(); + //} } \ No newline at end of file -- Gitblit v1.8.0