diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/AccountService.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/AccountService.java index b3ccf5e..b3b3c97 100644 --- a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/AccountService.java +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/AccountService.java @@ -254,4 +254,19 @@ public class AccountService { HttpResponse 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 httpResponse = apiClient.post(url, HttpHeaders.apiVersionV2(), + request.toJsonRequest(), BeneficiaryQueryResponse.class); + return httpResponse.getServiceResponse(); + } + } diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryRequest.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryRequest.java new file mode 100644 index 0000000..0b58da5 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryRequest.java @@ -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; + + /** + * 是否获取企业工商信息 1是0否 + */ + @SerializedName("is_get_company_info") + private String isGetCompanyInfo; + + +} diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryResponse.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryResponse.java new file mode 100644 index 0000000..f1a5ea2 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/BeneficiaryQueryResponse.java @@ -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 qccBreakThroughList; + + //25%以上表决权、收益权 + @SerializedName("qcc_criterion_2nd_info_list") + private List qccCriterion2ndInfoList; + + //控制/影响自然人 + @SerializedName("qcc_criterion_3rd_info_list") + private List qccCriterion3rdInfoList; + + //日常经营管理人员 + @SerializedName("qcc_manager_list") + private List qccManagerList; + + +} diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/OpenAccountCompanyRequest.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/OpenAccountCompanyRequest.java index 147650b..f79fdfa 100644 --- a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/OpenAccountCompanyRequest.java +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/OpenAccountCompanyRequest.java @@ -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 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 { diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThrough.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThrough.java new file mode 100644 index 0000000..23836a0 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThrough.java @@ -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 qccBreakThroughDetailList; + + +} diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThroughDetail.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThroughDetail.java new file mode 100644 index 0000000..682c54a --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccBreakThroughDetail.java @@ -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; + + +} diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCompanyInfo.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCompanyInfo.java new file mode 100644 index 0000000..148bb79 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCompanyInfo.java @@ -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; + + +} diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion2ndInfo.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion2ndInfo.java new file mode 100644 index 0000000..4427f33 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion2ndInfo.java @@ -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; + + /** + * 表决权是否共同持有(1:是,0:否) + */ + @SerializedName("merge_ind") + private String mergeInd; + + @SerializedName("is_recommend") + private Boolean isRecommend; + + //25%以上表决权、收益权控制链 + @SerializedName("qcc_voting_path_list") + private List qccVotingPathList; + + +} \ No newline at end of file diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion3rdInfo.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion3rdInfo.java new file mode 100644 index 0000000..482c977 --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccCriterion3rdInfo.java @@ -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; + +} \ No newline at end of file diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccManager.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccManager.java new file mode 100644 index 0000000..24a7acc --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccManager.java @@ -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; + +} \ No newline at end of file diff --git a/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccVotingPath.java b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccVotingPath.java new file mode 100644 index 0000000..453277b --- /dev/null +++ b/scfs-api-service/src/main/java/com/czcb/scfs/api/service/v2/account/model/QccVotingPath.java @@ -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; + + /** + * 名称类型(C:企业,P:人员) + */ + @SerializedName("name_type") + private String nameType; + + /** + * 层级 + */ + @SerializedName("level") + private String level; + + /** + * 控制权/表决权 + */ + @SerializedName("percent") + private String percent; +} diff --git a/scfs-api-service/src/test/java/com/czcb/scfs/api/service/v2/account/AccountServiceTest.java b/scfs-api-service/src/test/java/com/czcb/scfs/api/service/v2/account/AccountServiceTest.java index 8532cf9..8462156 100644 --- a/scfs-api-service/src/test/java/com/czcb/scfs/api/service/v2/account/AccountServiceTest.java +++ b/scfs-api-service/src/test/java/com/czcb/scfs/api/service/v2/account/AccountServiceTest.java @@ -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()); } diff --git a/scfs-api-test/src/test/java/com/czcb/scfs/api/test/service/AccountServiceTest.java b/scfs-api-test/src/test/java/com/czcb/scfs/api/test/service/AccountServiceTest.java index 4feef29..e2fc386 100644 --- a/scfs-api-test/src/test/java/com/czcb/scfs/api/test/service/AccountServiceTest.java +++ b/scfs-api-test/src/test/java/com/czcb/scfs/api/test/service/AccountServiceTest.java @@ -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 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); + } + + + }