From 210ade5f473fbba8f4ae92dea07327f3557a6473 Mon Sep 17 00:00:00 2001 From: Hawking Date: Wed, 31 May 2023 18:50:46 +0800 Subject: [PATCH] =?UTF-8?q?Adapay=5Fpayment=20=E6=94=AF=E4=BB=98=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ghy/common/adapay/model/PaymentDTO.java | 23 ++++-- .../ghy/payment/service/AdapayService.java | 5 +- .../mapper/payment/PaymentMapper.xml | 82 ++++++++++--------- 3 files changed, 61 insertions(+), 49 deletions(-) diff --git a/ghy-common/src/main/java/com/ghy/common/adapay/model/PaymentDTO.java b/ghy-common/src/main/java/com/ghy/common/adapay/model/PaymentDTO.java index db5ef7dd..e1c45d58 100644 --- a/ghy-common/src/main/java/com/ghy/common/adapay/model/PaymentDTO.java +++ b/ghy-common/src/main/java/com/ghy/common/adapay/model/PaymentDTO.java @@ -41,9 +41,6 @@ public class PaymentDTO { @JSONField(name = "query_url") private String queryUrl; - @JSONField(name = "reason") - private String reason; - /** * 当前交易状态 * pending 交易处理中 @@ -95,6 +92,12 @@ public class PaymentDTO { @JSONField(name = "refunded_amt") private String refundedAmt; + /** + * 现金支付金额 + */ + @JSONField(name = "cash_pay_amt") + private String cashPayAmt; + /** * 创建时间(Adapay) */ @@ -107,13 +110,19 @@ public class PaymentDTO { @JSONField(name = "end_time") private String endTime; + // --------- 以上为Adapay原生字段 --------- + // --------- 以下为扩展字段 --------- + + private Long deptId; + private String payStatus; + private String availableAmt; + /** - * 用户支付完成时间(我方生成) + * 用户支付完成时间 */ private LocalDateTime payTime; - /** - * 更新时间(我方生成/更新) - */ private LocalDateTime updateTime; + + private LocalDateTime createTime; } diff --git a/ghy-payment/src/main/java/com/ghy/payment/service/AdapayService.java b/ghy-payment/src/main/java/com/ghy/payment/service/AdapayService.java index 3ec635ae..bf88fd64 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/service/AdapayService.java +++ b/ghy-payment/src/main/java/com/ghy/payment/service/AdapayService.java @@ -7,8 +7,8 @@ import com.ghy.common.adapay.AdapayProperties; import com.ghy.common.adapay.model.*; import com.ghy.common.enums.RefundType; import com.huifu.adapay.core.exception.BaseAdaPayException; -import com.huifu.adapay.model.*; import com.huifu.adapay.model.PaymentConfirm; +import com.huifu.adapay.model.*; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -473,7 +473,8 @@ public class AdapayService { paymentParams.put("expend", expend); log.debug("paymentParams: {}", paymentParams.toJSONString()); JSONObject response = (JSONObject) Payment.create(paymentParams, deptId.toString()); - executor.execute(() -> payCallbackService.onResponse(response)); + response.put("deptId", deptId); + payCallbackService.onResponse(response); return response; } diff --git a/ghy-payment/src/main/resources/mapper/payment/PaymentMapper.xml b/ghy-payment/src/main/resources/mapper/payment/PaymentMapper.xml index 2a2b8499..1d3e113e 100644 --- a/ghy-payment/src/main/resources/mapper/payment/PaymentMapper.xml +++ b/ghy-payment/src/main/resources/mapper/payment/PaymentMapper.xml @@ -2,64 +2,66 @@ - - + + - - - - - + - + + + + + + + + + + + + + + + + + + - - SELECT id, order_no, prod_mode, app_id, pay_channel, pay_amt, party_order_id, query_url, - currency, status, pay_time, created_time, update_time - FROM adapay_pay_log + + SELECT id, dept_id, pay_status, status, pay_amt, discount_amt, fee_amt, cash_pay_amt, confirmed_amt, + reserved_amt, refunded_amt, available_amt, order_no, prod_mode, app_id, open_id, pay_channel, + query_url, pay_time, create_time, update_time + FROM adapay_payment - INSERT INTO adapay_pay_log( - `id`, - `order_no`, - `prod_mode`, - `app_id`, - `pay_channel`, - `pay_amt`, - `party_order_id`, - `query_url`, - `status`, - created_time - )VALUES( - #{id}, - #{orderNo}, - #{prodMode}, - #{appId}, - #{payChannel}, - #{payAmt}, - #{partyOrderId}, - #{queryUrl}, - #{status}, - SYSDATE() - ) + INSERT INTO adapay_payment(id, dept_id, status, pay_amt, discount_amt, fee_amt, cash_pay_amt, + order_no, query_url, prod_mode, app_id, open_id, pay_channel) + VALUES (#{id}, #{deptId}, #{status}, #{payAmt}, #{discountAmt}, #{feeAmt}, #{cashPayAmt}, + #{orderNo}, #{queryUrl}, #{prodMode}, #{appId}, #{openId}, #{payChannel}) - UPDATE adapay_pay_log + UPDATE adapay_payment - status = #{status}, pay_time = #{payTime}, - update_time = SYSDATE() + status = #{status}, + pay_status = #{payStatus}, + open_id = #{openId}, + fee_amt = #{feeAmt}, + discount_amt = #{discountAmt}, + confirmed_amt = #{confirmedAmt}, + reserved_amt = #{reservedAmt}, + refunded_amt = #{refundedAmt}, + available_amt = #{availableAmt}, WHERE id = #{id} - + WHERE id = #{id} \ No newline at end of file