This commit is contained in:
Lemon
2023-07-06 15:48:14 +08:00
5 changed files with 88 additions and 13 deletions

View File

@@ -13,7 +13,7 @@ import java.util.List;
@NoArgsConstructor
@AllArgsConstructor
@Builder
public class CreateSettleAccountDTO {
public class SettleAccountDTO {
// 运营商id
private String merchantId;

View File

@@ -68,4 +68,13 @@ public class QueryCorpMemberResponse {
// 当前交易状态,参见 状态 说明
private String status;
// 银行代码
private String bank_code;
// 银行卡号
private String card_no;
// 银行卡对应的户名
private String card_name;
}

View File

@@ -5,11 +5,8 @@ import com.alibaba.fastjson2.JSONObject;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import com.huifu.adapay.core.exception.BaseAdaPayException;
import com.huifu.adapay.model.CorpMember;
import com.huifu.adapay.model.Drawcash;
import com.huifu.adapay.model.Member;
import com.huifu.adapay.model.SettleAccount;
import com.jsowell.adapay.dto.CreateSettleAccountDTO;
import com.huifu.adapay.model.*;
import com.jsowell.adapay.dto.SettleAccountDTO;
import com.jsowell.adapay.dto.UpdateAccountConfigDTO;
import com.jsowell.adapay.dto.WithdrawDTO;
import com.jsowell.adapay.response.QueryCorpMemberResponse;
@@ -51,7 +48,7 @@ public class AdapayMemberService {
@Autowired
private IAdapayMemberAccountService adapayMemberAccountService;
public void createSettleAccount(CreateSettleAccountDTO dto) throws Exception {
public void createSettleAccount(SettleAccountDTO dto) throws Exception {
String bankAcctType = dto.getBankAcctType();
if (StringUtils.equals(bankAcctType, Constants.ONE)) {
createCorpMember(dto);
@@ -67,7 +64,7 @@ public class AdapayMemberService {
* @throws Exception
*/
@Transactional(readOnly = false, propagation = Propagation.REQUIRED)
public void createMember(CreateSettleAccountDTO dto) throws Exception {
public void createMember(SettleAccountDTO dto) throws Exception {
AdapayMemberAccount adapayMemberAccount = adapayMemberAccountService.selectByMerchantId(dto.getMerchantId());
if (adapayMemberAccount != null) {
log.error("通过merchantId:{}, 没有查询到结算账户配置", dto.getMerchantId());
@@ -166,7 +163,7 @@ public class AdapayMemberService {
List<AdapaySettleAccountVO> list = null;
AdapayCorpMemberVO adapayCorpMemberVO = null;
if (StringUtils.startsWith(adapayMemberId, Constants.ADAPAY_MEMBER_PREFIX)) {
bankAcctType = Constants.ONE;
bankAcctType = Constants.TWO;
// 查询个人用户
adapayMemberInfoVO = queryAdapayMemberInfo(adapayMemberId);
if (adapayMemberInfoVO != null) {
@@ -181,7 +178,7 @@ public class AdapayMemberService {
map.put("settleAccountList", list);
} else {
bankAcctType = Constants.TWO;
bankAcctType = Constants.ONE;
// 查询企业用户
adapayCorpMemberVO = queryCorpAdapayMemberInfo(adapayMemberId);
}
@@ -253,6 +250,11 @@ public class AdapayMemberService {
.telphone(response.getTelphone())
.zipCode(response.getZip_code())
.email(response.getEmail())
.socialCreditCode(response.getSocial_credit_code())
.socialCreditCodeExpires(response.getSocial_credit_code_expires())
.bankCode(response.getBank_code())
.cardName(response.getCard_name())
.cardNo(response.getCard_no())
.build();
return corpMemberVO;
}
@@ -359,7 +361,7 @@ public class AdapayMemberService {
/**
* 创建企业用户
*/
public void createCorpMember(CreateSettleAccountDTO dto) throws BaseAdaPayException, IOException {
public void createCorpMember(SettleAccountDTO dto) throws BaseAdaPayException, IOException {
Map<String, Object> memberParams = Maps.newHashMap();
String adapayMemberId = Constants.ADAPAY_CORP_MEMBER_PREFIX + IdUtils.getMemberId();
memberParams.put("member_id", adapayMemberId);
@@ -421,4 +423,36 @@ public class AdapayMemberService {
Map<String, Object> settleCount = Drawcash.create(settleCountParams);
log.info("取现接口返回参数" + JSON.toJSONString(settleCount));
}
public Map<String, Object> updateAdapayMember(SettleAccountDTO dto) throws BaseAdaPayException {
AdapayMemberAccount adapayMemberAccount = adapayMemberAccountService.selectByMerchantId(dto.getMerchantId());
if (adapayMemberAccount == null) {
log.error("通过merchantId:{}, 没有查询到结算账户配置", dto.getMerchantId());
return null;
}
Map<String, Object> memberParams = Maps.newHashMap();
memberParams.put("adapay_func_code", "corp_members.update");
memberParams.put("member_id", adapayMemberAccount.getAdapayMemberId());
memberParams.put("app_id", ADAPAY_APP_ID);
memberParams.put("order_no", "jsdk_order_" + System.currentTimeMillis());
memberParams.put("social_credit_code_expires", dto.getSocialCreditCodeExpires());
memberParams.put("business_scope", dto.getBusinessScope());
memberParams.put("name", dto.getNickname());
memberParams.put("prov_code", dto.getProvCode());
memberParams.put("area_code", dto.getAreaCode());
memberParams.put("legal_person", dto.getLegalPerson());
memberParams.put("legal_cert_id", dto.getLegalCertId());
memberParams.put("legal_cert_id_expires", dto.getLegalCertIdExpires());
memberParams.put("legal_mp", dto.getLegalMp());
memberParams.put("address", dto.getAddress());
memberParams.put("zip_code", dto.getZipCode());
memberParams.put("telphone", dto.getTelphone());
memberParams.put("email", dto.getEmail());
File file = ZipUtil.createZipFileFromImages(dto.getImgList());
log.info("更新企业账户param:{}", memberParams);
Map<String, Object> member = AdapayCommon.requestAdapayFile(memberParams, file);
log.info("更新企业账户result:{}", JSON.toJSONString(member));
return null;
}
}

View File

@@ -59,4 +59,13 @@ public class AdapayCorpMemberVO {
// 统一社会信用证有效期格式YYYYMMDD例如20190909
private String socialCreditCodeExpires;
// 银行代码
private String bankCode;
// 银行卡号
private String cardNo;
// 银行卡对应的户名
private String cardName;
}