feat: 新增受益人校验

main
wb3298 2026-01-26 16:37:13 +08:00
parent fae913fcae
commit c2e22c1f77
13 changed files with 852 additions and 106 deletions

View File

@ -254,4 +254,19 @@ public class AccountService {
HttpResponse<OpenAccountCompanyResponse> httpResponse = apiClient.post(url, headers, request.toJsonRequest(), OpenAccountCompanyResponse.class);
return httpResponse.getServiceResponse();
}
/**
* 223508-
*
* @author yuchuan
* @since 2026/01/23
*/
public BeneficiaryQueryResponse beneficiaryQuery(BeneficiaryQueryRequest request) {
String url = "/t-account-beneficiary/qcc-query";
HttpResponse<BeneficiaryQueryResponse> httpResponse = apiClient.post(url, HttpHeaders.apiVersionV2(),
request.toJsonRequest(), BeneficiaryQueryResponse.class);
return httpResponse.getServiceResponse();
}
}

View File

@ -0,0 +1,63 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.czcb.scfs.api.core.ApiRequest;
import com.czcb.scfs.api.core.agrs.TransType;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
/**
* 223508-
*
* @author yuchuan
* @since 2026/01/23
*/
@Data
@Accessors(chain = true)
@TransType("223508")
public class BeneficiaryQueryRequest implements ApiRequest {
/**
*
*/
@SerializedName("channel_no")
private String channelNo;
/**
*
*/
@SerializedName("app_no")
private String appNo;
/**
*
*/
@SerializedName("serial_no")
private String serialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("trans_date")
private String transDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("trans_tradetime")
private String transTradeTime;
/**
*
*/
@SerializedName("credit_code")
private String creditCode;
/**
* 10
*/
@SerializedName("is_get_company_info")
private String isGetCompanyInfo;
}

View File

@ -0,0 +1,70 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.czcb.scfs.api.core.ApiResponse;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.util.List;
/**
* 223508-
*
* @author yuchuan
* @since 2026/01/23
*/
@Data
@Accessors(chain = true)
public class BeneficiaryQueryResponse implements ApiResponse {
/**
* 000000
*/
@SerializedName("recode")
private String recode;
/**
*
*/
@SerializedName("recode_info")
private String recodeInfo;
/**
*
*/
@SerializedName("sys_serial_no")
private String sysSerialNo;
/**
* YYYY-MM-DD
*/
@SerializedName("sys_date")
private String sysDate;
/**
* YYYY-MM-DD hh:mm:ss
*/
@SerializedName("sys_time")
private String sysTime;
@SerializedName("qcc_company_info")
private QccCompanyInfo qccCompanyInfo;
//25%以上股权
@SerializedName("qcc_break_through_list")
private List<QccBreakThrough> qccBreakThroughList;
//25%以上表决权、收益权
@SerializedName("qcc_criterion_2nd_info_list")
private List<QccCriterion2ndInfo> qccCriterion2ndInfoList;
//控制/影响自然人
@SerializedName("qcc_criterion_3rd_info_list")
private List<QccCriterion3rdInfo> qccCriterion3rdInfoList;
//日常经营管理人员
@SerializedName("qcc_manager_list")
private List<QccManager> qccManagerList;
}

View File

@ -261,65 +261,71 @@ public class OpenAccountCompanyRequest implements ApiRequest {
@SerializedName("operator_opto")
private String operatorOpto;
/**
*
*/
@SerializedName("bene_name")
private String beneName;
// /**
// * 受益人姓名
// */
// @SerializedName("bene_name")
// private String beneName;
//
// /**
// * 受益人性别0:男 1:女
// */
// @SerializedName("bene_sex")
// private String beneSex;
//
// /**
// * 受益人国籍 默认中国
// */
// @SerializedName("bene_nationality")
// private String beneNationality;
//
// /**
// * 受益人是否股东 1:是 2
// */
// @SerializedName("bene_is_shareholider")
// private String beneIsShareholider;
//
// /**
// * 受益人持股比例(百分比)
// */
// @SerializedName("bene_ratio")
// private String beneRatio;
//
// /**
// * 受益人地址
// */
// @SerializedName("bene_addr")
// private String beneAddr;
//
// /**
// * 受益人证件类型
// */
// @SerializedName("bene_id_type")
// private String beneIdType;
//
// /**
// * 受益人证件号码
// */
// @SerializedName("bene_id_no")
// private String beneIdNo;
//
// /**
// * 受益人证件有效期 yyyy-MM-dd
// */
// @SerializedName("bene_opto")
// private String beneOpto;
//
// /**
// * 受益所有人
// */
// @SerializedName("bene_owner")
// private String beneOwner;
/**
* 0: 1:
* List
*/
@SerializedName("bene_sex")
private String beneSex;
/**
*
*/
@SerializedName("bene_nationality")
private String beneNationality;
/**
* 1: 2
*/
@SerializedName("bene_is_shareholider")
private String beneIsShareholider;
/**
*
*/
@SerializedName("bene_ratio")
private String beneRatio;
/**
*
*/
@SerializedName("bene_addr")
private String beneAddr;
/**
*
*/
@SerializedName("bene_id_type")
private String beneIdType;
/**
*
*/
@SerializedName("bene_id_no")
private String beneIdNo;
/**
* yyyy-MM-dd
*/
@SerializedName("bene_opto")
private String beneOpto;
/**
*
*/
@SerializedName("bene_owner")
private String beneOwner;
@SerializedName("beneficiary_list")
private List<TAccountBeneficiaryVO> beneficiaryList;
/**
*
@ -369,6 +375,88 @@ public class OpenAccountCompanyRequest implements ApiRequest {
@SerializedName("trans_tradetime")
private String transTradeTime;
@Data
public static class TAccountBeneficiaryVO implements Serializable {
@SerializedName("bene_name")
private String beneName;//受益人姓名
@SerializedName("bene_id_type")
private String beneIdType;//受益人证件类型
@SerializedName("bene_id_no")
private String beneIdNo;//受益人证件号码
@SerializedName("bene_opto")
private String beneOpto;//受益人证件有效期
@SerializedName("bene_sex")
private String beneSex;//受益人性别
@SerializedName("bene_nationality")
private String beneNationality;//受益人国籍
@SerializedName("bene_birthday")
private String beneBirthday;//受益人出生日期
@SerializedName("bene_address")
private String beneAddress;//受益人地址
@SerializedName("bene_mobile")
private String beneMobile;//受益人联系电话
@SerializedName("act_ctrl")
private String actCtrl;//是否直接或间接拥有公司、合伙企业25%以上股权、股份份额、合伙权益 Y-是 N-否
@SerializedName("act_hd_rat")
private String actHdRat;//持有股权、股份、合伙权益的比例(% 小数点后两位
@SerializedName("share_ratio_start_date")
private String shareRatioStartDate;//受益所有权形成日期25%以上股权、股份) yyyy-MM-dd
@SerializedName("share_ratio_end_date")
private String shareRatioEndDate;//受益所有权终止日期25%以上股权、股份) yyyy-MM-dd
@SerializedName("pri_benfit")
private String priBenfit;//是否是可最终获得公司、合伙企业25%以上收益权,表决权 Y-是 N-否
@SerializedName("act_owner_profit_ratio")
private String actOwnerProfitRatio;//收益权比例(%)小数点后两位
@SerializedName("profit_ratio_start_date")
private String profitRatioStartDate;//受益所有权形成日期(收益权) yyyy-MM-dd
@SerializedName("profit_ratio_end_date")
private String profitRatioEndDate;//受益所有权终止日期(收益权) yyyy-MM-dd
@SerializedName("act_owner_profit_ratio_vote")
private String actOwnerProfitRatioVote;//表决权比例(%)小数点后两
@SerializedName("profit_ratio_vote_start_date")
private String profitRatioVoteStartDate;//表决所有权形成日期(表决权) yyyy-MM-dd
@SerializedName("profit_ratio_vote_end_date")
private String profitRatioVoteEndDate;//表决所有权终止日期(表决权) yyyy-MM-dd
@SerializedName("act_ctrl_cpny")
private String actCtrlCpny;//实际控制公司、合伙企业对应的类型 2 协议约定形式 3 其他形式
@SerializedName("act_ctrl_type")
private String actCtrlType;//实施实际控制的内容/形式 0 决定法定代表人、董事、监事、高级管理人员的任免 1 决定公司或者合伙企业重大经营、管理决策的制定或者执行 2 决定公司公司或者合伙企业的财务收支 3 长期实际支配使用公司公司或者合伙企业重要资产或者主要资金
@SerializedName("obtain_act_date")
private String obtainActDate;//受益所有权形成日期(实施实际控制) yyyy-MM-dd
@SerializedName("termination_act_date")
private String terminationActDate;//受益所有权终止日期(实施实际控制) yyyy-MM-dd
@SerializedName("act_con_upper_market")
private String actConUpperMarket;//是否存在上一层备案主体 Y-是 N-否
@SerializedName("act_con_upper_ent_name")
private String actConUpperEntName;//实际控制备案主体的上一层备案主体名称
@SerializedName("act_con_uni_scid")
private String actConUniScid;//实际控制备案主体的统一社会信用代码
@SerializedName("act_other_forms")
private String actOtherForms;//其它形式详细内容(文本)
@SerializedName("senior_mgr")
private String seniorMgr;//是否为负责日常经营管理的(高级管理)人员 Y-是 N-否
@SerializedName("senior_mgr_pos")
private String seniorMgrPos;//负责日常经营管理的(高级管理)人员职位 10 法定代表人 11 董事长 12 经理 13 董事 14 执行合伙事务的自然人 15 其他人员
@SerializedName("act_daily_mgmt_post_other")
private String actDailyMgmtPostOther;//公司章程规定的其他(高级管理)人员的具体职位
@SerializedName("senior_mgr_cn")
private String seniorMgrCn;//是否为在华最高层级的高级管理人员 Y-是 N-否
@SerializedName("senior_mgr_pos_cn")
private String seniorMgrPosCn;//在华最高层级的高级管理职位 0 分支机构负责人 1 其他高级管理人员
@SerializedName("ben_start_date")
private String benStartDate;//受益所有权形成日期
@SerializedName("ben_end_date")
private String benEndDate;//受益所有权终止日期
@SerializedName("owner_right_mgmt_post_other")
private String ownerRightMgmtPostOther;//在华最高层级的高级管理其他职位(文本)
}
@Data
public static class FileList implements Serializable {

View File

@ -0,0 +1,63 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Accessors(chain = true)
public class QccBreakThrough implements Serializable {
/**
*
*/
@SerializedName("name")
private String name;
/**
* keyNo
*/
@SerializedName("key_no")
private String keyNo;
/**
*
*/
@SerializedName("benifit_type")
private String benifitType;
/**
* 穿
*/
@SerializedName("total_stock_percent")
private String totalStockPercent;
/**
* 穿
*/
@SerializedName("calculation")
private String calculation;
/**
*
*/
@SerializedName("position")
private String position;
/**
*
*/
@SerializedName("ubo_date")
private String uboDate;
@SerializedName("is_recommend")
private Boolean isRecommend;
@SerializedName("qcc_break_through_detail_list")
private List<QccBreakThroughDetail> qccBreakThroughDetailList;
}

View File

@ -0,0 +1,56 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
public class QccBreakThroughDetail implements Serializable {
/**
*
*/
@SerializedName("capital_type")
private String capitalType;
/**
*
*/
@SerializedName("path")
private String path;
/**
*
*/
@SerializedName("stock_percent")
private String stockPercent;
/**
*
*/
@SerializedName("level")
private String level;
/**
*
*/
@SerializedName("stock_type")
private String stockType;
/**
* /
*/
@SerializedName("should_capi")
private String shouldCapi;
/**
* 穿
*/
@SerializedName("breakthrough_stock_percent")
private String breakthroughStockPercent;
}

View File

@ -0,0 +1,198 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
public class QccCompanyInfo implements Serializable {
/**
*
*/
@SerializedName("is_overseas_company")
private String isOverseasCompany;
/**
* id
*/
@SerializedName("snapshot_id")
private String snapshotId;
/**
*
*/
@SerializedName("status")
private String status;
/**
*
*/
@SerializedName("regist_capi")
private String registCapi;
/**
*
*/
@SerializedName("credit_code")
private String creditCode;
/**
*
*/
@SerializedName("tax_no")
private String taxNo;
/**
*
*/
@SerializedName("staffs")
private String staffs;
/**
*
*/
@SerializedName("belong_org")
private String belongOrg;
/**
*
*/
@SerializedName("no")
private String no;
/**
*
*/
@SerializedName("econ_kind")
private String econKind;
/**
*
*/
@SerializedName("address")
private String address;
/**
*
*/
@SerializedName("industry_v3")
private String industryV3;
/**
*
*/
@SerializedName("org_no")
private String orgNo;
/**
*
*/
@SerializedName("oper")
private String oper;
/**
*
*/
@SerializedName("name")
private String name;
/**
*
*/
@SerializedName("term_start")
private String termStart;
/**
* key_no
*/
@SerializedName("key_no")
private String keyNo;
/**
*
*/
@SerializedName("team_end")
private String teamEnd;
/**
*
*/
@SerializedName("city")
private String city;
/**
*
*/
@SerializedName("county")
private String county;
/**
*
*/
@SerializedName("province")
private String province;
/**
*
*/
@SerializedName("scope")
private String scope;
/**
*
*/
@SerializedName("check_date")
private String checkDate;
/**
*
*/
@SerializedName("short_status")
private String shortStatus;
/**
*
*/
@SerializedName("english_name")
private String englishName;
/**
*
*/
@SerializedName("rec_cap")
private String recCap;
/**
*
*/
@SerializedName("ix_code")
private String ixCode;
/**
*
*/
@SerializedName("taxpayer_type")
private String taxpayerType;
/**
*
*/
@SerializedName("staff_scale")
private String staffScale;
@SerializedName("paid_count")
private String paidCount;
@SerializedName("ubo_category")
private String uboCategory;
@SerializedName("subject_type")
private String subjectType;
}

View File

@ -0,0 +1,65 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.List;
@Data
@Accessors(chain = true)
public class QccCriterion2ndInfo implements Serializable {
/**
*
*/
@SerializedName("name")
private String name;
/**
* keyNo
*/
@SerializedName("key_no")
private String keyNo;
/**
*
*/
@SerializedName("percent")
private String percent;
/**
*
*/
@SerializedName("ubo_date")
private String uboDate;
/**
*
*/
@SerializedName("voting_percent")
private String votingPercent;
/**
*
*/
@SerializedName("total_Stock_percent")
private String totalStockPercent;
/**
* 10
*/
@SerializedName("merge_ind")
private String mergeInd;
@SerializedName("is_recommend")
private Boolean isRecommend;
//25%以上表决权、收益权控制链
@SerializedName("qcc_voting_path_list")
private List<QccVotingPath> qccVotingPathList;
}

View File

@ -0,0 +1,41 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
public class QccCriterion3rdInfo implements Serializable {
/**
*
*/
@SerializedName("name")
private String name;
/**
* keyNo
*/
@SerializedName("key_no")
private String keyNo;
/**
*
*/
@SerializedName("position")
private String position;
/**
*
*/
@SerializedName("ubo_date")
private String uboDate;
@SerializedName("is_recommend")
private Boolean isRecommend;
}

View File

@ -0,0 +1,32 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
public class QccManager implements Serializable {
/**
*
*/
@SerializedName("name")
private String name;
/**
* keyNo
*/
@SerializedName("key_no")
private String keyNo;
/**
*
*/
@SerializedName("position")
private String position;
}

View File

@ -0,0 +1,37 @@
package com.czcb.scfs.api.service.v2.account.model;
import com.google.gson.annotations.SerializedName;
import lombok.Data;
import lombok.experimental.Accessors;
import java.io.Serializable;
@Data
@Accessors(chain = true)
public class QccVotingPath implements Serializable {
/**
*
*/
@SerializedName("name")
private String name;
/**
* (CP)
*/
@SerializedName("name_type")
private String nameType;
/**
*
*/
@SerializedName("level")
private String level;
/**
* /
*/
@SerializedName("percent")
private String percent;
}

View File

@ -1346,9 +1346,9 @@ class AccountServiceTest {
request.setTransTradeTime("setTransTradeTime");
request.setControllerOpto("setControllerOpto");
request.setOperatorIdType("setOperatorIdType");
request.setBeneIsShareholider("setBeneIsShareholider");
// request.setBeneIsShareholider("setBeneIsShareholider");
request.setOperatorIdName("setOperatorIdName");
request.setBeneNationality("setBeneNationality");
// request.setBeneNationality("setBeneNationality");
request.setControllerIdType("setControllerIdType");
request.setControllerIdName("setControllerIdName");
request.setOperatorMobile("setOperatorMobile");
@ -1358,15 +1358,15 @@ class AccountServiceTest {
request.setLeaderMobile("setLeaderMobile");
request.setLeaderOpto("setLeaderOpto");
request.setOperatorIdNo("setOperatorIdNo");
request.setBeneName("setBeneName");
// request.setBeneName("setBeneName");
request.setOperatorOpto("setOperatorOpto");
request.setBeneSex("setBeneSex");
// request.setBeneSex("setBeneSex");
request.setCompanyIdType("setCompanyIdType");
request.setBeneRatio("setBeneRatio");
request.setBeneAddr("setBeneAddr");
request.setBeneIdType("setBeneIdType");
request.setBeneIdNo("setBeneIdNo");
request.setBeneOpto("setBeneOpto");
// request.setBeneRatio("setBeneRatio");
// request.setBeneAddr("setBeneAddr");
// request.setBeneIdType("setBeneIdType");
// request.setBeneIdNo("setBeneIdNo");
// request.setBeneOpto("setBeneOpto");
request.setAccountClass("setAccountClass");
request.setCompanyIdName("setCompanyIdName");
request.setCompanyIdNo("setCompanyIdNo");
@ -1375,7 +1375,7 @@ class AccountServiceTest {
request.setLeaderIdNo("setLeaderIdNo");
request.setLeaderIdName("setLeaderIdName");
request.setZsopscope("setZsopscope");
request.setBeneOwner("setBeneOwner");
// request.setBeneOwner("setBeneOwner");
OpenAccountCompanyRequest.FileList filelist = new OpenAccountCompanyRequest.FileList();
extractedOpenAccountCompanyRequestFileListNestParams(filelist);
request.setFileList(Lists.list(filelist));
@ -1421,9 +1421,9 @@ class AccountServiceTest {
Assertions.assertEquals("setTransTradeTime", request.getTransTradeTime());
Assertions.assertEquals("setControllerOpto", request.getControllerOpto());
Assertions.assertEquals("setOperatorIdType", request.getOperatorIdType());
Assertions.assertEquals("setBeneIsShareholider", request.getBeneIsShareholider());
// Assertions.assertEquals("setBeneIsShareholider", request.getBeneIsShareholider());
Assertions.assertEquals("setOperatorIdName", request.getOperatorIdName());
Assertions.assertEquals("setBeneNationality", request.getBeneNationality());
// Assertions.assertEquals("setBeneNationality", request.getBeneNationality());
Assertions.assertEquals("setControllerIdType", request.getControllerIdType());
Assertions.assertEquals("setControllerIdName", request.getControllerIdName());
Assertions.assertEquals("setOperatorMobile", request.getOperatorMobile());
@ -1433,15 +1433,15 @@ class AccountServiceTest {
Assertions.assertEquals("setLeaderMobile", request.getLeaderMobile());
Assertions.assertEquals("setLeaderOpto", request.getLeaderOpto());
Assertions.assertEquals("setOperatorIdNo", request.getOperatorIdNo());
Assertions.assertEquals("setBeneName", request.getBeneName());
// Assertions.assertEquals("setBeneName", request.getBeneName());
Assertions.assertEquals("setOperatorOpto", request.getOperatorOpto());
Assertions.assertEquals("setBeneSex", request.getBeneSex());
// Assertions.assertEquals("setBeneSex", request.getBeneSex());
Assertions.assertEquals("setCompanyIdType", request.getCompanyIdType());
Assertions.assertEquals("setBeneRatio", request.getBeneRatio());
Assertions.assertEquals("setBeneAddr", request.getBeneAddr());
Assertions.assertEquals("setBeneIdType", request.getBeneIdType());
Assertions.assertEquals("setBeneIdNo", request.getBeneIdNo());
Assertions.assertEquals("setBeneOpto", request.getBeneOpto());
// Assertions.assertEquals("setBeneRatio", request.getBeneRatio());
// Assertions.assertEquals("setBeneAddr", request.getBeneAddr());
// Assertions.assertEquals("setBeneIdType", request.getBeneIdType());
// Assertions.assertEquals("setBeneIdNo", request.getBeneIdNo());
// Assertions.assertEquals("setBeneOpto", request.getBeneOpto());
Assertions.assertEquals("setAccountClass", request.getAccountClass());
Assertions.assertEquals("setCompanyIdName", request.getCompanyIdName());
Assertions.assertEquals("setCompanyIdNo", request.getCompanyIdNo());
@ -1450,7 +1450,7 @@ class AccountServiceTest {
Assertions.assertEquals("setLeaderIdNo", request.getLeaderIdNo());
Assertions.assertEquals("setLeaderIdName", request.getLeaderIdName());
Assertions.assertEquals("setZsopscope", request.getZsopscope());
Assertions.assertEquals("setBeneOwner", request.getBeneOwner());
// Assertions.assertEquals("setBeneOwner", request.getBeneOwner());
for (OpenAccountCompanyRequest.FileList filelist : request.getFileList()) {
extractedOpenAccountCompanyRequestFileListNestAssertions(filelist);
}
@ -1700,30 +1700,30 @@ class AccountServiceTest {
request.setOpenTradeTime("setOpenTradeTime");
request.setOpenLongitude("setOpenLongitude");
request.setTransDate("setTransDate");
request.setBeneName("setBeneName");
request.setBeneOpto("setBeneOpto");
request.setBeneSex("setBeneSex");
// request.setBeneName("setBeneName");
// request.setBeneOpto("setBeneOpto");
// request.setBeneSex("setBeneSex");
OpenAccountCompanyRequest.FileList filelist = new OpenAccountCompanyRequest.FileList();
extractedOpenAccountCompanyRequestFileListNestParamsReligion(filelist);
request.setFileList(Lists.list(filelist));
request.setOpenIp("setOpenIp");
request.setBeneIdType("setBeneIdType");
request.setBeneIdNo("setBeneIdNo");
request.setBeneOwner("setBeneOwner");
// request.setBeneIdType("setBeneIdType");
// request.setBeneIdNo("setBeneIdNo");
// request.setBeneOwner("setBeneOwner");
request.setOpenDate("setOpenDate");
request.setBeneRatio("setBeneRatio");
request.setBeneAddr("setBeneAddr");
// request.setBeneRatio("setBeneRatio");
// request.setBeneAddr("setBeneAddr");
request.setAccountProperty("setAccountProperty");
request.setPrimaryAccount("setPrimaryAccount");
request.setControllerIdType("setControllerIdType");
request.setControllerIdNo("setControllerIdNo");
request.setControllerIdName("setControllerIdName");
request.setControllerOpto("setControllerOpto");
request.setBeneNationality("setBeneNationality");
// request.setBeneNationality("setBeneNationality");
request.setOperatorMobile("setOperatorMobile");
request.setTransTradeTime("setTransTradeTime");
request.setOpenDimensions("setOpenDimensions");
request.setBeneIsShareholider("setBeneIsShareholider");
// request.setBeneIsShareholider("setBeneIsShareholider");
request.setOperatorIdName("setOperatorIdName");
request.setOperatorIdType("setOperatorIdType");
}
@ -1773,30 +1773,30 @@ class AccountServiceTest {
Assertions.assertEquals("setOpenTradeTime", request.getOpenTradeTime());
Assertions.assertEquals("setOpenLongitude", request.getOpenLongitude());
Assertions.assertEquals("setTransDate", request.getTransDate());
Assertions.assertEquals("setBeneName", request.getBeneName());
Assertions.assertEquals("setBeneOpto", request.getBeneOpto());
Assertions.assertEquals("setBeneSex", request.getBeneSex());
// Assertions.assertEquals("setBeneName", request.getBeneName());
// Assertions.assertEquals("setBeneOpto", request.getBeneOpto());
// Assertions.assertEquals("setBeneSex", request.getBeneSex());
for (OpenAccountCompanyRequest.FileList filelist : request.getFileList()) {
extractedOpenAccountCompanyRequestFileListNestAssertionsReligion(filelist);
}
Assertions.assertEquals("setOpenIp", request.getOpenIp());
Assertions.assertEquals("setBeneIdType", request.getBeneIdType());
Assertions.assertEquals("setBeneIdNo", request.getBeneIdNo());
Assertions.assertEquals("setBeneOwner", request.getBeneOwner());
// Assertions.assertEquals("setBeneIdType", request.getBeneIdType());
// Assertions.assertEquals("setBeneIdNo", request.getBeneIdNo());
// Assertions.assertEquals("setBeneOwner", request.getBeneOwner());
Assertions.assertEquals("setOpenDate", request.getOpenDate());
Assertions.assertEquals("setBeneRatio", request.getBeneRatio());
Assertions.assertEquals("setBeneAddr", request.getBeneAddr());
// Assertions.assertEquals("setBeneRatio", request.getBeneRatio());
// Assertions.assertEquals("setBeneAddr", request.getBeneAddr());
Assertions.assertEquals("setAccountProperty", request.getAccountProperty());
Assertions.assertEquals("setPrimaryAccount", request.getPrimaryAccount());
Assertions.assertEquals("setControllerIdType", request.getControllerIdType());
Assertions.assertEquals("setControllerIdNo", request.getControllerIdNo());
Assertions.assertEquals("setControllerIdName", request.getControllerIdName());
Assertions.assertEquals("setControllerOpto", request.getControllerOpto());
Assertions.assertEquals("setBeneNationality", request.getBeneNationality());
// Assertions.assertEquals("setBeneNationality", request.getBeneNationality());
Assertions.assertEquals("setOperatorMobile", request.getOperatorMobile());
Assertions.assertEquals("setTransTradeTime", request.getTransTradeTime());
Assertions.assertEquals("setOpenDimensions", request.getOpenDimensions());
Assertions.assertEquals("setBeneIsShareholider", request.getBeneIsShareholider());
// Assertions.assertEquals("setBeneIsShareholider", request.getBeneIsShareholider());
Assertions.assertEquals("setOperatorIdName", request.getOperatorIdName());
Assertions.assertEquals("setOperatorIdType", request.getOperatorIdType());
}

View File

@ -12,6 +12,7 @@ import org.springframework.boot.test.context.SpringBootTest;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
@SpringBootTest
class AccountServiceTest {
@ -139,16 +140,16 @@ class AccountServiceTest {
request.setOperatorIdName("");
request.setOperatorMobile("");
request.setOperatorOpto("");
request.setBeneName("裴久红");
request.setBeneSex("0");
request.setBeneNationality("CHNHAHAHA");
request.setBeneIsShareholider("");
request.setBeneRatio("");
request.setBeneAddr("浙江省衢州市开化县池淮镇星口村");
request.setBeneIdType("1");
request.setBeneIdNo("411836197710087251");
request.setBeneOpto("2031-07-25");
request.setBeneOwner("朱高炽");
// request.setBeneName("裴久红");
// request.setBeneSex("0");
// request.setBeneNationality("CHNHAHAHA");
// request.setBeneIsShareholider("");
// request.setBeneRatio("");
// request.setBeneAddr("浙江省衢州市开化县池淮镇星口村");
// request.setBeneIdType("1");
// request.setBeneIdNo("411836197710087251");
// request.setBeneOpto("2031-07-25");
// request.setBeneOwner("朱高炽");
List<OpenAccountCompanyRequest.FileList> list = getFileListList();
request.setFileList(list);
@ -247,4 +248,21 @@ class AccountServiceTest {
list.add(proto14);
return list;
}
@Test
void beneficiaryQuery() {
BeneficiaryQueryRequest request = new BeneficiaryQueryRequest();
request.setChannelNo("0000");
request.setAppNo("10");
request.setSerialNo(UUID.randomUUID().toString().replace("-", ""));
request.setTransDate("2024-03-20");
request.setTransTradeTime("2024-01-02 09:11:53");
request.setIsGetCompanyInfo("1");
request.setCreditCode("91310000MA1G108K3G");
BeneficiaryQueryResponse response = accountService.beneficiaryQuery(request);
System.out.println(response);
}
}