From 4bed5db8f22f333e5357cc7dbe9b0f98ed840f30 Mon Sep 17 00:00:00 2001 From: "autumn.g@foxmail.com" Date: Thu, 15 Jun 2023 14:06:33 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E6=B1=87=E4=BB=98=E4=BC=9A=E5=91=98?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/java/SpringBootTestController.java | 18 +++++ .../adapay/response/QueryMemberResponse.java | 64 ++++++++++++++++ .../adapay/service/AdapayMemberService.java | 73 +++++++------------ .../merchant/components/walletSummary.vue | 2 +- jsowell-ui/src/views/pile/merchant/detail.vue | 2 +- jsowell-ui/vue.config.js | 4 +- 6 files changed, 112 insertions(+), 51 deletions(-) create mode 100644 jsowell-pile/src/main/java/com/jsowell/adapay/response/QueryMemberResponse.java diff --git a/jsowell-admin/src/test/java/SpringBootTestController.java b/jsowell-admin/src/test/java/SpringBootTestController.java index 96d26866e..5b6a3f874 100644 --- a/jsowell-admin/src/test/java/SpringBootTestController.java +++ b/jsowell-admin/src/test/java/SpringBootTestController.java @@ -8,8 +8,10 @@ import com.fasterxml.jackson.databind.PropertyNamingStrategies; import com.google.common.collect.ImmutableMap; import com.google.common.collect.Maps; import com.google.common.primitives.Bytes; +import com.huifu.adapay.core.exception.BaseAdaPayException; import com.huifu.adapay.model.Refund; import com.jsowell.JsowellApplication; +import com.jsowell.adapay.service.AdapayMemberService; import com.jsowell.common.constant.CacheConstants; import com.jsowell.common.constant.Constants; import com.jsowell.common.core.domain.entity.SysDictData; @@ -160,6 +162,22 @@ public class SpringBootTestController { @Autowired private IAdapayRefundRecordService adapayRefundRecordService; + @Autowired + private AdapayMemberService adapayMemberService; + + @Test + public void testQueryAdapayMemberInfo() { + String adapayMemberId = "AM25703321"; + String settleAccountId = "0489089447022976"; + try { + // adapayMemberService.queryAdapayMemberInfo(adapayMemberId); + + adapayMemberService.queryAdapaySettleAccount(adapayMemberId, settleAccountId); + } catch (BaseAdaPayException e) { + throw new RuntimeException(e); + } + } + @Test public void testSaveAdapayCallbackRecord() throws JsonProcessingException { String data = "{\n" + diff --git a/jsowell-pile/src/main/java/com/jsowell/adapay/response/QueryMemberResponse.java b/jsowell-pile/src/main/java/com/jsowell/adapay/response/QueryMemberResponse.java new file mode 100644 index 000000000..f6da0899f --- /dev/null +++ b/jsowell-pile/src/main/java/com/jsowell/adapay/response/QueryMemberResponse.java @@ -0,0 +1,64 @@ +package com.jsowell.adapay.response; + +import lombok.*; + +import java.util.List; + +/** + * 查询汇付会员返回参数 + */ +@Getter +@Setter +@NoArgsConstructor +@AllArgsConstructor +@Builder +public class QueryMemberResponse { + private String member_id; + private String created_time; + private String cert_type; + private String gender; + private String identified; + private String tel_no; + private String prod_mode; + private String nickname; + private String disabled; + private String location; + private List settle_accounts; + private String email; + private String object; + private String status; + + @Getter + @Setter + @NoArgsConstructor + @AllArgsConstructor + @Builder + public static class SettleAccount { + private String member_id; + private String upd_ts; + private AccountInfo account_info; + private String channel; + private String id; + private String type; + private String app_id; + private String cre_ts; + } + + @Getter + @Setter + @NoArgsConstructor + @AllArgsConstructor + @Builder + public static class AccountInfo { + private String bank_code; + private String cert_type; + private String tel_no; + private String area_code; + private String bank_name; + private String card_name; + private String cert_id; + private String bank_acct_type; + private String prov_code; + private String card_id; + } +} diff --git a/jsowell-pile/src/main/java/com/jsowell/adapay/service/AdapayMemberService.java b/jsowell-pile/src/main/java/com/jsowell/adapay/service/AdapayMemberService.java index a3cda77ec..4486da79e 100644 --- a/jsowell-pile/src/main/java/com/jsowell/adapay/service/AdapayMemberService.java +++ b/jsowell-pile/src/main/java/com/jsowell/adapay/service/AdapayMemberService.java @@ -9,6 +9,7 @@ import com.huifu.adapay.core.exception.BaseAdaPayException; import com.huifu.adapay.model.Member; import com.huifu.adapay.model.SettleAccount; import com.jsowell.adapay.dto.AdapayMemberInfoDTO; +import com.jsowell.adapay.response.QueryMemberResponse; import com.jsowell.adapay.vo.AdapayAccountBalanceVO; import com.jsowell.adapay.vo.AdapayMemberVO; import com.jsowell.adapay.vo.AdapaySettleAccountVO; @@ -116,6 +117,7 @@ public class AdapayMemberService { String errorMsg = settleCount == null ? "创建汇付结算账户失败" : (String) settleCount.get("error_msg"); throw new BusinessException("00500001", errorMsg); } + JSONObject account_info = JSON.parseObject((String) settleCount.get("account_info")); AdapaySettleAccount adapaySettleAccount = new AdapaySettleAccount(); adapaySettleAccount.setSettleAccountId((String) settleCount.get("id")); @@ -126,10 +128,10 @@ public class AdapayMemberService { adapaySettleAccount.setCertId(dto.getCertId()); adapaySettleAccount.setCertType(Constants.DOUBLE_ZERO); adapaySettleAccount.setTelNo(dto.getTelNo()); - adapaySettleAccount.setBankCode(dto.getBankCode()); adapaySettleAccount.setBankAcctType(dto.getBankAcctType()); - adapaySettleAccount.setProvCode(dto.getProvCode()); - adapaySettleAccount.setAreaCode(dto.getAreaCode()); + adapaySettleAccount.setBankCode(account_info.getString("bank_code")); + adapaySettleAccount.setProvCode(account_info.getString("prov_code")); + adapaySettleAccount.setAreaCode(account_info.getString("area_code")); adapaySettleAccountService.insertAdapaySettleAccount(adapaySettleAccount); } @@ -153,55 +155,32 @@ public class AdapayMemberService { return resultVO; } + /** - * 创建结算账户 + * 查询汇付会员信息 */ - public void createSettleAccount(AdapayMemberInfoDTO dto) throws BaseAdaPayException { - Map accountInfo = Maps.newHashMap(); - // 银行卡号 - accountInfo.put("card_id", dto.getCardId()); - // 银行卡对应的户名 - accountInfo.put("card_name", dto.getCardName()); - // 证件号,银行账户类型为对私时,必填 - accountInfo.put("cert_id", dto.getCertId()); - // 证件类型,仅支持:00-身份证,银行账户类型为对私时,必填 - accountInfo.put("cert_type", "00"); - // 手机号 - accountInfo.put("tel_no", dto.getTelNo()); - // 银行编码,详见附录 银行代码,银行账户类型对公时,必填 - accountInfo.put("bank_code", dto.getBankCode()); - // 银行账户类型:1-对公;2-对私 - accountInfo.put("bank_acct_type", dto.getBankAcctType()); - // 银行账户开户银行所在省份编码 (省市编码),银行账户类型为对公时,必填 - accountInfo.put("prov_code", dto.getAreaCode()); - // 银行账户开户银行所在地区编码(省市编码),银行账户类型为对公时,必填 - accountInfo.put("area_code", dto.getAreaCode()); + public void queryAdapayMemberInfo(String adapayMemberId) throws BaseAdaPayException { + Map memberParams = Maps.newHashMap(); + memberParams.put("member_id", adapayMemberId); + memberParams.put("app_id", ADAPAY_APP_ID); + log.info("查询用户,请求参数:{}", JSON.toJSONString(memberParams)); + Map member = Member.query(memberParams); + QueryMemberResponse queryMemberResponse = JSON.parseObject(JSON.toJSONString(member), QueryMemberResponse.class); + log.info("查询用户,返回参数:{}", JSON.toJSONString(queryMemberResponse)); + } + /** + * 查询汇付结算账户信息 + */ + public void queryAdapaySettleAccount(String adapayMemberId, String settleAccountId) throws BaseAdaPayException { Map settleCountParams = Maps.newHashMap(); - settleCountParams.put("member_id", dto.getAdapayMemberId()); + settleCountParams.put("settle_account_id", settleAccountId); + settleCountParams.put("member_id", adapayMemberId); settleCountParams.put("app_id", ADAPAY_APP_ID); - // channel String Y 目前仅支持:bank_account(银行卡) - settleCountParams.put("channel", "bank_account"); - settleCountParams.put("account_info", accountInfo); - Map settleCount = SettleAccount.create(settleCountParams); - log.info("创建汇付结算账户result:{}", settleCount); - - if (settleCount != null && "succeeded".equals(settleCount.get("status"))) { - AdapaySettleAccount adapaySettleAccount = new AdapaySettleAccount(); - adapaySettleAccount.setSettleAccountId((String) settleCount.get("id")); - adapaySettleAccount.setMerchantId(dto.getMerchantId()); - adapaySettleAccount.setAdapayMemberId(dto.getAdapayMemberId()); - adapaySettleAccount.setCardId(dto.getCardId()); - adapaySettleAccount.setCardName(dto.getCardName()); - adapaySettleAccount.setCertId(dto.getCertId()); - adapaySettleAccount.setCertType("00"); - adapaySettleAccount.setTelNo(dto.getTelNo()); - adapaySettleAccount.setBankCode(dto.getBankCode()); - adapaySettleAccount.setBankAcctType(dto.getBankAcctType()); - adapaySettleAccount.setProvCode(dto.getProvCode()); - adapaySettleAccount.setAreaCode(dto.getAreaCode()); - adapaySettleAccountService.insertAdapaySettleAccount(adapaySettleAccount); - } + log.info("查询汇付结算账户信息param:{}", JSON.toJSONString(settleCountParams)); + Map settleCount = SettleAccount.query(settleCountParams); + QueryMemberResponse.SettleAccount settleAccount = JSON.parseObject(JSON.toJSONString(settleCount), QueryMemberResponse.SettleAccount.class); + log.info("查询汇付结算账户信息result:{}", JSON.toJSONString(settleAccount)); } /** diff --git a/jsowell-ui/src/views/pile/merchant/components/walletSummary.vue b/jsowell-ui/src/views/pile/merchant/components/walletSummary.vue index 4d2924686..e19777a8e 100644 --- a/jsowell-ui/src/views/pile/merchant/components/walletSummary.vue +++ b/jsowell-ui/src/views/pile/merchant/components/walletSummary.vue @@ -5,7 +5,7 @@

钱包汇总

运营商:举视新能源

商家性质:企业

-

开户状态:进件成功

+

开户行名称:中国农业银行股份有限公司

收款卡号:46456412

预留手机号:452584

diff --git a/jsowell-ui/src/views/pile/merchant/detail.vue b/jsowell-ui/src/views/pile/merchant/detail.vue index 81917364b..053d01139 100644 --- a/jsowell-ui/src/views/pile/merchant/detail.vue +++ b/jsowell-ui/src/views/pile/merchant/detail.vue @@ -6,7 +6,7 @@ 配置管理 - 角色管理 + diff --git a/jsowell-ui/vue.config.js b/jsowell-ui/vue.config.js index 6f2d63df2..91b937c42 100644 --- a/jsowell-ui/vue.config.js +++ b/jsowell-ui/vue.config.js @@ -35,9 +35,9 @@ module.exports = { proxy: { // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { - // target: `http://localhost:8080`, + target: `http://localhost:8080`, // 更改代理为本地地址 - target: `http://192.168.2.3:8080`, + // target: `http://192.168.2.3:8080`, changeOrigin: true, pathRewrite: { ["^" + process.env.VUE_APP_BASE_API]: "",