Commit c17f6262 by Water Wang Committed by jianan

optimize

parent 720eaf5c
......@@ -22,8 +22,8 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
<java.version>1.8</java.version>
<!-- 编译时的编码 -->
<!-- 编译时的编码 -->
<maven.compiler.encoding>UTF-8</maven.compiler.encoding>
</properties>
......@@ -228,56 +228,19 @@
<systemPath>${basedir}/lib/com-libs-pdf-0.0.1.jar</systemPath>
</dependency>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.1</version>
</dependency>
</dependencies>
<build>
<finalName>ydapi</finalName>
<resources>
<resource>
<!--<targetPath>/WEB-INF/classes</targetPath>-->
<directory>src/main/resources</directory>
<includes>
<include>**/*.*</include>
</includes>
<filtering>false</filtering>
</resource>
</resources>
<finalName>ydapi</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.10</version>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>compile</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>${project.build.directory}/${project.build.finalName}/WEB-INF/lib</outputDirectory>
<includeScope>system</includeScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
......
package com.yd.rmi.n22;
import com.yd.rmi.n22.organization.pojo.GetOrganizationRequestVO;
import com.yd.rmi.n22.organization.pojo.GetOrganizationResponseVO;
import com.yd.rmi.n22.policy.pojo.policydetail.PolicyDetailQueryRequestVO;
import com.yd.rmi.n22.policy.pojo.policylist.PolicyListQueryRequestVO;
import com.yd.rmi.n22.policy.pojo.policylist.PolicyListQueryResponseVO;
import com.yd.util.JsonUtil;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class Test {
public static void main(String[] args) {
Test test = new Test();
// test.organization();
test.messageTest();
}
private void organization() {
}
private void messageTest() {
String responseJson = null;
StringBuffer stringBuffer = new StringBuffer();
try {
File file = new File("/Users/water/Desktop/request.txt");// c:\Users\water\Desktop\pingan.txt
if (file.isFile() && file.exists()) {
InputStreamReader reader = new InputStreamReader(new FileInputStream(file), "UTF-8");
BufferedReader bufferedReader = new BufferedReader(reader);
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuffer.append(line);
}
responseJson = stringBuffer.toString();
reader.close();
}
} catch (Exception e) {
e.printStackTrace();
}
PolicyDetailQueryRequestVO response = (PolicyDetailQueryRequestVO) JsonUtil.jsonToObj(responseJson, PolicyDetailQueryRequestVO.class);
System.out.println(JsonUtil.format(responseJson));
// System.out.println(response.getResponseBody().getPolicyList().get(0).getPolNameChn());
System.out.println(response.getRequestHead().getSourceCode());
// System.out.println("【totalAgreePremium】:"+response.getData().getResultCode());
}
}
package com.yd.rmi.n22.common.pojo;
import lombok.Data;
@Data
public class RequestHead {
private String seqNo;//请求唯一编码
private String sourceCode;//来源ID
private String requestTime;//请求时间
}
package com.yd.rmi.n22.common.pojo;
import lombok.Data;
@Data
public class ResponseHead {
private String seqNo;//请求唯一编码
private String code;//保险经纪接口错误返回代码
private String message;//保险经纪接口错误返回信息
private String esbCode;//esb接口错误返回代码,无esb系统则无需解析
private String esbMessage;//esb接口错误返回信息,无esb系统则无需解析
private String appCode;//app接口错误返回代码,无app对接则无需解析
private String appMessage;//app接口错误返回信息,无app对接则无需解析
private String status;
}
package com.yd.rmi.n22.common.pojo;
import lombok.Data;
@Data
public class SecureEntry {
private String channel;// 客户代码
private String bussinessName;//接口名称
private String accessKey;//加密key
private String accessData;//加密报文
}
package com.yd.rmi.n22.common.utils;
import com.google.common.base.Strings;
import com.yd.rmi.cache.SystemConstants;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.PostMethod;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.RequestEntity;
import org.apache.commons.httpclient.methods.StringRequestEntity;
import org.apache.commons.httpclient.params.HttpMethodParams;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
public class N22Utils {
/**
* 发送请求
* @param url 接口地址
* @param requestJson 请求报文
* @return 响应报文
*/
private static String postTransaction(String url,String requestJson){
String responseJson = null;
if(!Strings.isNullOrEmpty(url) && !Strings.isNullOrEmpty(requestJson)){
HttpClient httpClient = new HttpClient();
PostMethod postMethod = new PostMethod(url);
StringBuilder buffer = new StringBuilder();
InputStream inputStream;
BufferedReader reader;
String line;
httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(SystemConstants.COMMON_CONNECTION_TIMEOUT);
httpClient.getHttpConnectionManager().getParams().setSoTimeout(SystemConstants.COMMON_SO_TIMEOUT);
try{
postMethod.setDoAuthentication(true);
postMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET,"GBK");
postMethod.setRequestHeader("Content_Type","application/json;charset=utf-8");
postMethod.setRequestHeader("Accept","application/json;charset=utf-8");
RequestEntity requestEntity = new StringRequestEntity(requestJson,"application/json","UTF-8");
postMethod.setRequestEntity(requestEntity);
int statusCode = httpClient.executeMethod(postMethod);
if(statusCode != HttpStatus.SC_OK){
throw new IllegalStateException("transaction method error description :"+postMethod.getStatusLine());
}
inputStream = postMethod.getResponseBodyAsStream();
reader = new BufferedReader(new InputStreamReader(inputStream));
while((line = reader.readLine())!= null){
buffer.append(line);
}
responseJson = buffer.toString();
}catch(Exception e){
e.printStackTrace();
}finally{
postMethod.releaseConnection();
}
}
return responseJson;
}
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class GetOrganizationRequestBody {
@JsonProperty("epid")
private String epId;//saas项目必须,带下划线的epid
@JsonProperty("rolegroup_id")
private String rolegroupId;//机构编码
@JsonProperty("createddateStart")
private String createdDateStart;//创建时间起:yyyy-MM-dd
@JsonProperty("createddateEnd")
private String createdDateEnd;//创建时间止:yyyy-MM-dd
@JsonProperty("effectivedateStart")
private String effectiveDateStart;//生效时间起:yyyy-MM-dd
@JsonProperty("effectivedateEnd")
private String effectiveDateEnd;//生效时间止:yyyy-MM-dd
}
package com.yd.rmi.n22.organization.pojo;
import com.yd.rmi.n22.common.pojo.RequestHead;
import lombok.Data;
@Data
public class GetOrganizationRequestVO {
private RequestHead requestHead;
private GetOrganizationRequestBody requestBody;
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class GetOrganizationResponseBody {
@JsonProperty("Organization")
private Organization organization;
}
package com.yd.rmi.n22.organization.pojo;
import com.yd.rmi.n22.common.pojo.ResponseHead;
import lombok.Data;
@Data
public class GetOrganizationResponseVO {
private ResponseHead responseHead;
private GetOrganizationResponseBody responseBody;
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class Organization {
private List<Role> roles;
@JsonProperty("rolegrouptypes")
private List<RoleGroupType> roleGroupTypes;
@JsonProperty("rolegroups")
private List<RoleGroup> roleGroups;
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class Role {
@JsonProperty("role_id")
private String roleId;
@JsonProperty("rolename")
private String roleName;
private String status;
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class RoleGroup {
@JsonProperty("rolegroup_id")
private String roleGroupId;//组代码
@JsonProperty("rolegroupdescription")
private String roleGroupDescription;//组描述
private String status;//组状态
@JsonProperty("parent_rolegroupid")
private String parentRoleGroupId;//上级组代码
@JsonProperty("org_id")
private String orgId;//机构代码
@JsonProperty("rolegrouptype")
private String roleGroupType;//组类型代码
@JsonProperty("rolegrouptypedesc")
private String roleGroupTypeDesc;//组类型描述
@JsonProperty("createddate")
private String createDate;//创建时间
@JsonProperty("modifieddate")
private String modifiedDate;//修改时间
@JsonProperty("createdby")
private String createdBy;//创建人代码
@JsonProperty("createdname")
private String createdName;//创建人姓名
@JsonProperty("modifiedby")
private String modifiedBy;//修改人代码
@JsonProperty("modifiedname")
private String modifiedName;//修改人代码
@JsonProperty("effectivedate")
private String effectiveDate;//生效时间
@JsonProperty("province_id")
private String provinceId;//省代码
@JsonProperty("province_desc")
private String provinceDesc;//省
@JsonProperty("city_id")
private String cityId;//市代码
@JsonProperty("city_desc")
private String cityDesc;//市
@JsonProperty("area_id")
private String areaId;//区代码
@JsonProperty("area_desc")
private String areaDesc;//区
}
package com.yd.rmi.n22.organization.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class RoleGroupType {
@JsonProperty("rolegrouptype")
private String roleGroupType;
@JsonProperty("rolegrouptypedesc")
private String roleGroupTypeDesc;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class AgentN22 {
private String tenantCode;//租户代码此栏位无需填写
private String organizationCode;//机构代码此栏位无需填写
private String accountName;//账户名称.此栏位必须填写, 同时自动根据此栏位填写tenantCode, organizationCode和accountId
private String accountId;//账户序列号, 内部使用.此栏位无需填写
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class BuryingPointN22 {
@JsonProperty("Pointname")
private String pointName;//埋点名称
@JsonProperty("PointStartDate")
private String pointStartDate;//埋点开始时间
@JsonProperty("PointEndDate")
private String pointEndDate;//埋点结束时间
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class CarInfo {
@JsonProperty("CARINSUREDRELATION")
private String carInsuredRelation;//被保险人与车辆关系
@JsonProperty("CAROWNER")
private String carOwner;//车主
@JsonProperty("AGREEDRIVERFLAG")
private String agreeDriverFlag;//是否约定驾驶员标志
@JsonProperty("NEWDEVICEFLAG")
private String newDeviceFlag;//是否投保新增设备标志
@JsonProperty("VEHICLECATEGORYCODE")
private String vehicleCategoryCode;//车主性质代码
@JsonProperty("VEHICLEOWNERNATURE")
private String vehicleOwnerNature;//车主性质
@JsonProperty("CARKINDCODE")
private String carKindCode;//车辆种类代码
@JsonProperty("USENATURECODE")
private String useNatureCode;//使用性质代码
@JsonProperty("LICENSEKINDCODE")
private String licenseKindCode;//号牌种类
@JsonProperty("VEHICLE_CODE")
private String vehicleCode;//车型代码
@JsonProperty("VEHICLE_NAME")
private String vehicleName;//车型名称
@JsonProperty("VEHICLE_DESCRIPTION")
private String vehicleDescription;//车型描述
@JsonProperty("VEHICLE_BRAND")
private String vehicleBrand;//品牌名称
@JsonProperty("VEHICLE_FAMILY")
private String vehicleFamily;//车系名称
@JsonProperty("MAKEDATE")
private String makeDate;//出厂日期
@JsonProperty("IMPORT_FLAG")
private String importFlag;//车型种类
@JsonProperty("REGISTMODELCODE")
private String registerModelCode;//行驶证车型
@JsonProperty("LICENSENO")
private String licenseNo;//车牌号码
@JsonProperty("FRAMENO")
private String frameNo;//车架号
@JsonProperty("ENGINENO")
private String engineNo;//发动机号
@JsonProperty("LICENSEFLAG")
private String licenseFlag;//是否上牌照
@JsonProperty("DEMETICCARFLG")
private String domesticCarFlg;//是否外地车
@JsonProperty("CHGOWNERFLAG")
private String chgOwnerFlag;//二手车标志
@JsonProperty("LOANVEHICLEFLAG")
private String loanVehicleFlag;//是否车贷投保多年标志
@JsonProperty("SEATAMOUNT")
private String seatAmount;//座位数
@JsonProperty("COLORCODE")
private String colorCode;//车身颜色代码
@JsonProperty("LICENSECOLORCODE")
private String licenseColorCode;//车牌底色代码
@JsonProperty("HKLICENSENO")
private String hkLicenseNo;//港澳车牌号码
@JsonProperty("TONCOUNT")
private String tonCount;//核定载质量(千克)
@JsonProperty("EXHAUSTSCALE")
private String exhaustScale;//排量
@JsonProperty("CARWEIGHT")
private String carWeight;//整备质量
@JsonProperty("PURCHASEPRICE")
private String purchasePrice;//新车购置价
@JsonProperty("ACTUALVALUE")
private String actualValue;//实际价值
@JsonProperty("ENROLLDATE")
private String enrollDate;//初登日期
@JsonProperty("USEYEARS")
private String useYears;//使用年限
@JsonProperty("RUNAREACODE")
private String runAreaCode;//行驶区域code
@JsonProperty("RUNAREANAME")
private String runAreaName;//行驶区域名称
@JsonProperty("RUNMILES")
private String runMiles;//行驶里程
@JsonProperty("ADDONCOUNT")
private String addOnCount;//交通违法
@JsonProperty("TRANSFERDATE")
private String transferDate;//转移登记日
@JsonProperty("CURRENCY")
private String currency;//币别代码
@JsonProperty("MADEFACTORY")
private String madeFactory;//验车人代码
@JsonProperty("NEWVEHICLEFLAG")
private String newVehicleFlag;//验车状态
@JsonProperty("VEHICLEPRICESERIALNO")
private String vehiclePriceSerialNo;//验车时间
@JsonProperty("CARCHECKREASON")
private String carCheckReason;//验车原因
@JsonProperty("PAYMETHOD")
private String payMethod;//交通违章记录
@JsonProperty("PMFUELTYPE")
private String pmFuelType;//交管能源种类
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class CarShipTax {
@JsonProperty("relation_id")
private String relationId;//保单唯一标识
@JsonProperty("insurance_id")
private String insuranceId;//投保单流水号
@JsonProperty("ALLMASS")
private String allMass;//总质量
@JsonProperty("BASETAXATION")
private String baseTaxation;//减免税计算方式
@JsonProperty("CALCULATEMODE")
private String calculateMode;//计算方式
@JsonProperty("CARKINDJG")
private String carKindJG;//行驶证车型
@JsonProperty("COMPLETEKERBMASS")
private String completekerbMass;//整备质量
@JsonProperty("FLAG")
private String flag;//标志字段
@JsonProperty("FREERATE")
private String freeRate;//减免比例
@JsonProperty("HISPOLICYENDDATE")
private String hisPolicyEndDate;//前次保单止期
@JsonProperty("LATEFEE")
private String lateFee;//滞纳金
@JsonProperty("PAIDFREECERTIFICATE")
private String paidFreeCertificate;//完税(减免税)凭证号
@JsonProperty("PAYENDDATE")
private String payEndDate;//税款所属止期
@JsonProperty("PAYLASTYEAR")
private String payLastYear;//前次缴费年度
@JsonProperty("PAYSTARTDATE")
private String payStartDate;//税款所属起期
@JsonProperty("PAYTAXFLAG")
private String payTaxFlag;//是否已完税
@JsonProperty("PAYTAXWAY")
private String payTaxWay;//缴纳税款方式
@JsonProperty("PREFERENTIALDAYS")
private String preferEntailDays;//减免天数
@JsonProperty("PREFERENTIALFORMUAL")
private String preferEntailFormula;//减免保费计算公式
@JsonProperty("PREFERENTIALPREMIUM")
private String preferEntailPremium;//减免保费
@JsonProperty("PREVIOUSPAY")
private String previousPay;//往年补缴
@JsonProperty("REGISTERAREA")
private String registerArea;//车辆注册地
@JsonProperty("RELIFREASON")
private String reLifReason;//减免税原因
@JsonProperty("SUMPAYTAX")
private String sumPayTax;//车船税合计金额
@JsonProperty("TAXACTUAL")
private String taxActual;//当年应缴
@JsonProperty("TAXCOMCODE")
private String taxComCode;//开具税务机关代码
@JsonProperty("TAXCOMNAME")
private String taxComName;//开具税务机关名称
@JsonProperty("TAXDUE")
private String taxDue;//年单位税额
@JsonProperty("TAXITEMCODE")
private String taxItemCode;//税目代码
@JsonProperty("TAXITEMDETAILCODE")
private String taxItemDetailCode;//税目子类代码
@JsonProperty("TAXITEMDETAILNAME")
private String taxItemDetailName;//税目子类名称
@JsonProperty("TAXITEMNAME")
private String taxItemName;//税目名称
@JsonProperty("TAXPAYERCERTITYPE")
private String taxPayerCertiType;//纳税人证件类型
@JsonProperty("TAXPAYERCODE")
private String taxPayerCode;//纳税人证件号码
@JsonProperty("TAXPAYERIDENTIFIER")
private String taxPayerIdentifier;//纳税人识别号
@JsonProperty("TAXPAYERNAME")
private String taxPayerName;//纳税人名称
@JsonProperty("TAXPAYERTYPE")
private String taxPayerType;//纳税人类型
@JsonProperty("TAXRELIEF")
private String taxRelief;//减免税额
@JsonProperty("TAXRELIFFLAG")
private String taxReLifFlag;//车船税标志
@JsonProperty("TAXUNIT")
private String taxUnit;//计税单位值(吨/辆)
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class CommissionJson {
@JsonProperty("hierarchy")
private String hierarchy;//层级
@JsonProperty("calcType")
private String calcType;//计算方式
@JsonProperty("commissionPercent")
private String commissionPercent;//佣金比率
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class CommissionN22 {
@JsonProperty("commissionId")
private String commissionId;//
@JsonProperty("type")
private String type;//
@JsonProperty("amount")
private String amount;//
@JsonProperty("fromTenantCode")
private String fromTenantCode;//
@JsonProperty("fromOrganCode")
private String fromOrganCode;//
@JsonProperty("toTenantCode")
private String toTenantCode;//
@JsonProperty("toOrganCode")
private String toOrganCode;//
@JsonProperty("toAccountName")
private String toAccountName;//
@JsonProperty("toAccountId")
private String toAccountId;//
@JsonProperty("installment")
private String installment;//
@JsonProperty("settleDate")
private String settleDate;//
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class CommissionsN22 {
@JsonProperty("hierarchy")
private String hierarchy;//层级
@JsonProperty("calcType")
private String calcType;//计算方式
@JsonProperty("commissionPercent")
private String commissionPercent;//佣金比率
@JsonProperty("fromVendor")
private String fromVendor;//
@JsonProperty("toDirectAgent")
private String toDirectAgent;//
@JsonProperty("commissions")
private List<CommissionN22> commissions;//
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class CoverageFee {
private String app;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class CoverageN22 {
private String coverageId;//险种序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private String coverageCode;//险种代码
private String coverageName;//险种名称
private CoverageFee coverageFee;//险种费用. 参考 保单费用模型
private ExtensionDataCoverage extensionData;//扩展栏位, 存放一切未显式定义的内容. 参考险种扩展栏位说明
private String insuredId;//标的序列号, 关联用. 内部使用如果是第三方输入数据, 该字段无需填写.
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class DeclarationN22 {
private String version;//告知问题的版本
private String code;//告知问题的代码
private String parameters;//告知问题的输入参数, 可按照告知参数实际情况选择类型.如果是JSON STRING, 格式需自行定义.
private String remark;//告知问题的备注
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
import java.util.Date;
@Data
public class DocumentN22 {
private String documentType;//文档类型
private String coverageCode;//险种(保项)的代码
private String uri;//文档URI
private Boolean front;//是否为正面,如果是,则true; 否则false
private Date uploadTime;//上传时间
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class DriverInfo {
@JsonProperty("SERIALNO")
private String serialNo;//顺序号
@JsonProperty("DRIVINGLICENSENO")
private String drivingLicenseNo;//驾驶证号码
@JsonProperty("CHANGELESSFLAG")
private String changeLessFlag;//是否固定驾驶员标志
@JsonProperty("DRIVERNAME")
private String driverName;//驾驶员姓名
@JsonProperty("IDENTIFYNUMBER")
private String identifyNumber;//身份证号码
@JsonProperty("SEX")
private String sex;//性别
@JsonProperty("AGE")
private String age;//年龄
@JsonProperty("MARRIAGE")
private String marriage;//婚姻状况
@JsonProperty("ACCEPTLICENSEDATE")
private String acceptLicenseDate;//初次领证日期
@JsonProperty("DRIVINGYEARS")
private String drivingYears;//驾龄
@JsonProperty("DRIVINGCARTYPE")
private String drivingCarType;//准驾车型
@JsonProperty("APPLIYEARTYPE")
private String applyYearType;//投保年度
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class ExtensionDataCoverage {
private String installment;//交费期间,参考缴费方式
private String installmentName;//缴费期间名称
private String coveragePeriod;//保障期间
private String coveragePeriodName;//保障期间名称
private String payPeriod;//年金/生存金/满期金领取期间
private String payPeriodName;//
private String payInsure;//保证领取期间
private String sumInsured;//保额
private String benefitLevel;//档次
private String unit;//份数
private String coverageType;//险种类型,主附险区分标志 0主险 1附加险
@JsonProperty("displayPremIndi")
private String displayPremInDi;//是否显示保费
@JsonProperty("autoRenewalIndi")
private String autoRenewalInDi;//是否自动续保
private String firstYearPrem;//首年保费
private String paymentFreq;//缴费频率
private String paymentFreqName;//缴费频率名称
private String externalCode;//保司险种代码
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class ExtensionDataInsured {
private String insuredPartySerialId;//如果是第三方输入数据, 该字段无需填写.
private String relationWithPH;//与投保人的关系, 参考人际关系
private String idValidTill;//证件有效期
@JsonProperty("idLongTermIndi")
private String idLongTermInDi;//是否为长期
private String maritalStatus;//婚姻状况
private String jobCategory;//职业类别
private String height;//身高
private String weight;//体重
private String annualIncome;//年收入
@JsonProperty("smokingIndi")
private String smokingInDi;//是否抽烟Y/N
@JsonProperty("socialInsuranceInDi")
private String socialInsuranceInDi;//是否社保Y/N
private String declarations ;//被保人文档清单, 元素模型参考文档模型
private String documents ;//被保人告知清单, 元素模型参考告知模型
private String age ;//年龄
private String nationality;//国籍
private String jobCateCode;//职业代码
@JsonProperty("legalIndi")
private String legalInDi;//是否法定受益人(Y,N)仅限受益人类型为2
private String job1 ;//一级职业
@JsonProperty("Job2")
private String job2 ;//二级职业
@JsonProperty("Job3")
private String job3 ;//三级职业
@JsonProperty("Job4")
private String job4 ;//四级职业
private String workUnit;//工作单位
@JsonProperty("carinfo")
private CarInfo carInfo;
@JsonProperty("driver")
private List<DriverInfo> driverInfos;
@JsonProperty("CARSHIPTAX")
private CarShipTax carShipTax;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class ExtensionDataParticipant {
private String insuredPartySerialId;//如果是第三方输入数据, 该字段无需填写.
private String relationWithPH;//与投保人的关系, 参考人际关系
private String idValidTill;//证件有效期
@JsonProperty("idLongTermIndi")
private String idLongTermInDi;//是否为长期
private String maritalStatus;//婚姻状况
private String jobCategory;//职业类别
private String height;//身高
private String weight;//体重
private String annualIncome;//年收入
@JsonProperty("smokingIndi")
private String smokingInDi;//是否抽烟Y/N
@JsonProperty("socialInsuranceInDi")
private String socialInsuranceInDi;//是否社保Y/N
private String age ;//年龄
private String nationality;//国籍
private String jobCateCode;//职业代码
@JsonProperty("legalIndi")
private String legalInDi;//是否法定受益人(Y,N)仅限受益人类型为2
private String job1 ;//一级职业
@JsonProperty("Job2")
private String job2 ;//二级职业
@JsonProperty("Job3")
private String job3 ;//三级职业
@JsonProperty("Job4")
private String job4 ;//四级职业
private String workUnit;//工作单位
private String beneficiaryType;//受益类型, 参考收益类型 1.生存,2身故
private String relationWithInsured;//与被保人的关系, 参考人际关系
private String benefitOrder;//受益顺序
private String benefitRatio;//受益比例,同一受益顺序下,受益比例之和必须为100
private String declarations;//受益人告知清单, 元素模型参考告知模型
private String documents;//受益人文档清单, 元素模型参考文档模型
private String partySerialId;//
@JsonProperty("coverageSeriaId")
private String coverageSerialId;//
@JsonProperty("readDeclation")
private String readDeclaration;//
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class ExtensionN22 {
private List<DeclarationN22> declarations;//保单级告知, 参考保单级告知模型
private List<DocumentN22> documents;//保单级文档, 参考保单级文档模型
private List<ShortMessageN22> shortMessages;//短信,参考短信模型
private List<UwResultN22> uwResults;//核保结果,参考核保结果模型
private PaymentInfoN22 paymentInfo;//支付信息,参考支付信息模型
private String advice;//建议
private String showAdvice;//是否显示建议(true : false)
private Integer verificationType;//1,2,3 身份验证类型
private Boolean verificationResult;//true,false 验证结果
private CommissionJson commissionJson;//佣金层级,参考佣金层级模型
private Object agentHierarchy;//代理人层级
@JsonProperty("csms")
private String csMs;//表示从csms页面进入的数据,值是租户CODE
private String thirdPartyReturnUrl;//第三方接口调用投保流程页面完成后,返回第三方页面时的路径
private Long expirationTime;//支付超时时间戳
private NextPaymentInfo nextPaymentInfo;//续期支付信息(北京人寿B2C添加,B2A不需要),参考续期支付信息模型
private String currentStep;//当前投保步骤键值
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class InstallmentPremiumN22 {
private String periods;//期数
@JsonProperty("share_ratio")
private String shareRatio;//分期比率
private String premium;//分期金额
@JsonProperty("chargedate")
private String chargeDate;//分期付款时间
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
import java.util.List;
@Data
public class InsuredDetailN22 {
private Long feeId;//费用序列号, 内部使用.目前该字段无需填写.
private Long sgp;//毛保费
private Long agp;//调整后毛保费
private Long snp;//净保费
private Long anp;//调整后净保费
private Long app;//实付保费
private Object feeAmounts;//费用明细清单
private String insuredId;//标的序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private String insuredType;//标的类型. 参考标的类型
private String insuredName;//标的名称
private String keyNo;//标的关键号码. 例如身份证号码, 车牌号码等
private InsuredFee insuredFee;//标的费用. 参考 保单费用模型
private ExtensionDataInsured extensionData;//扩展栏位, 存放一切未显式定义的内容. 参考标的扩展栏位说明
private List<ParticipantN22> participants;//被保人受益人
private List<CoverageN22> coverages;//险种. 参考 险种模型
private String policyId;//保单序列号, 关联用. 内部使用如果是第三方输入数据, 该字段无需填写.
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class InsuredFee {
private String app;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class NextPaymentInfo {
private String nextHolderName;//续期帐号户名
private String nextBankCardType;//续期银行卡类型
private String nextBankName;//续期银行
private String nextBankCard;//续期银行卡号
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class NoticesN22 {
private String noticeNo;//函件编号
private String noticeName;//函件名称
private String noticeType;//函件类型
private String noticeUrl;//函件地址
private String letterStatus;//函件是否回复
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class ParticipantN22 {
private String insuredParticipantId;//被保人受益人主键 如果是第三方输入数据, 该字段无需填写.
private String firstName;//姓名
private String middleName;//中间名
private String lastName;//姓
private String fullName;//姓名
private String idNo;//证件号码
private String email;//电子邮箱地址
private String addressLine1;//地址栏1
private String addressLine2;//地址栏2
private String addressLine3;//地址栏3
private String gender;//性别.F: 女; M: 男
private String dateOfBirth;//出生日期 1988/01/01 00:00:00
private ExtensionDataParticipant extensionData;//扩展栏位, 存放一切未显式定义的内容. 参考被保人扩展栏位说明, 受益人扩展栏位说明
private String accountId;//账号序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private String accountName;//账号名称.填写本栏位自动填写accountId.如果本栏位不为空, 系统在没有找到该用户的情况下, 会使用当前操作用户的租户和机构, 主动创建账户.
private String idType;//证件类型
private String mobile;//手机号码
private String customerType;//2被保人/ 3受益人
private String countryCode;//国家代码
private String provinceCode;//省份代码
private String cityCode;//城市代码
private String regionCode;//区域代码
private String postCode;//邮政编码
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class PaymentInfoN22 {
private String bankCardType;//支付方式,参考支付方式
private String mobile;//银行预留的手机号码
private String bankName;//银行
private String bankCard;//银行卡号
private String paymentMsg;//支付失败原因
private String paymentTransNo;//交易流水号,非页面输入,在调用支付接口后,自动设置此流水号
private String paymentDate;//支付日期
private String paymentStatus;//支付状态,参考支付状态
private String bankCode;//银行代码 ,参考银行代码
private String accountType;//帐户类型,参考帐户类型
private String credit;//是否为信用卡(false : true)(可以不填,通过bankCardType辨别。)
private String bankAccountCity;//帐户所在城市
private String bankAccountProvince;//帐户所在省份
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class PolicyDetailQueryRequestBody {
@JsonProperty("Epid")
private String epId;//epid :saas为当前库的代码如e00008 非saas忽略
@JsonProperty("Loginname")
private String loginName;//员工ID
@JsonProperty("policyNo")
private String policyNo;//保单号
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.yd.rmi.n22.common.pojo.RequestHead;
import lombok.Data;
@Data
public class PolicyDetailQueryRequestVO {
private RequestHead requestHead;
private PolicyDetailQueryRequestBody requestBody;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
@Data
public class PolicyDetailQueryResponseBody {
private Long policyId;//保单序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private Long productId;//产品序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private String vendorCode;//产品提供商代码, 必须提供
private String vendorName;//产品供应商名称(保司名称)
private String productCode;//产品代码, 必须提供
private String productName;//产品名称
private String productVersion;//产品版本, 必须提供.
private Date effectiveDate;//保单生效日2017/10/18 00:00:00
private Date expiryDate;//保单失效日2017/10/18 00:00:00
private Date quotationNo;//订单号, 内部使用.
private String policyNo;//保单号.
private Date issueDate;//出单日
private Date quoteDate;//首次报价日
private String thirdQuoteNo;//第三方(例如:保司)报价单号
private String thirdOrderNo;//第三方(例如:保司)订单号
private String ePolicyDownloadUrl;//电子保单下载地址
private Double premium;//保费.
private Boolean renewal;//是否是续保 Y/N
private String lastPolicyNo;//上一张保单的保单号, 只有在续保件的时候才会有值, 并且必须有值.
private String policyStatus;//保单状态.
private String policyFee;//保单层级费用. 参考 保单费用 说明
private CommissionsN22 commissions;//保单级佣金. 参考 保单佣金 说明
private ExtensionN22 extensionData;//扩展栏位, 存放一切未显式定义的内容. 参考保单扩展栏位 说明
private List<InsuredDetailN22> insureds;//标的. 例如寿险的被保人, 车险的车辆等
private PolicyHolderN22 policyHolder;//投保人. 参考 投保人 说明
private AgentN22 agent;//代理人. 参考 代理人 说明
private String thirdPartyAgentId;//第三方代理人号,对于第三方的只做保存,用于报表显示.
private String thirdPartyAgentName;//第三方代理人姓名,对于第三方的只做保存,用于报表显示.
@JsonProperty("order_player")
private String orderPlayer;//打单员
@JsonProperty("beto_rolegroup")
private String betoRoleGroup;//机构code
@JsonProperty("beto_rolegroupdesc")
private String betoRoleGroupDesc;//机构名称
private List<BuryingPointN22> buryingPointList;//互联网产品埋点列表,用于记录在投保过程中各个阶段的时间点
@JsonProperty("BuryingVideo")
private String buryingVideo;//埋点视频编号
@JsonProperty("installment_premium")
private List<InstallmentPremiumN22> installmentPremium;//保单分期列表
private String sourceCode;//保单来源,如XXAPP下单,在保单同步时填写后,会在这里体现
private String butler;//管家
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import com.yd.rmi.n22.common.pojo.ResponseHead;
import lombok.Data;
@Data
public class PolicyDetailQueryResponseVO {
private ResponseHead responseHead;
private PolicyDetailQueryResponseBody responseBody;
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class PolicyHolderN22 {
private String firstName;//名
private String middleName;//中间名
private String lastName;//姓
private String fullName;//姓名
private String idNo;//证件号码
private String email;//电子邮箱地址
private String addressLine1;//地址栏1
private String addressLine2;//地址栏2
private String addressLine3;//地址栏3
private String gender;//性别.F:女;M:男
private String dateOfBirth;//1988/1/1 0:00
private String accountId;//账号序列号, 内部使用.如果是第三方输入数据, 该字段无需填写.
private String accountName;//账号名称.填写本栏位自动填写accountId.如果本栏位不为空, 系统在没有找到该用户的情况下, 会使用当前操作用户的租户和机构, 主动创建账户
private String idType;//证件类型
private String mobile;//手机号码
private String countryCode;//国家代码
private String provinceCode;//省份代码
private String cityCode;//城市代码
private String regionCode;//区域代码
private String postCode;//邮政编码
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class ShortMessageN22 {
private String phone;//手机号码
private String content;//短信内容
}
package com.yd.rmi.n22.policy.pojo.policydetail;
import lombok.Data;
@Data
public class UwResultN22 {
private String resultCode;//核保结果代码
private Object reasons;//核保不通过时的原因
}
package com.yd.rmi.n22.policy.pojo.policylist;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
@Data
public class InsuredInfoN22 {
private String insuredName;//被保人姓名
@JsonProperty("cust_guid")
private String customerGuid;//被保人唯一ID
}
package com.yd.rmi.n22.policy.pojo.policylist;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
@Data
public class PolicyInfoN22 {
@JsonProperty("relation_id")
private String relationId;//保单唯一ID
@JsonProperty("policyno")
private String policyNo;//保单号
@JsonProperty("app_num")
private String appNum;//订单号
@JsonProperty("company_guid")
private String companyGuid;//保司唯一ID
@JsonProperty("companyname")
private String companyName;//保司名称
@JsonProperty("policystatus")
private String policyStatus;//保单状态
@JsonProperty("Pol_app_date")
private String polAppDate;//起保时间
@JsonProperty("channel_guid")
private String channelGuid;//渠道唯一ID
@JsonProperty("channelname")
private String channelName;//渠道名称
@JsonProperty("insurancename")
private String insuranceName;//投保人姓名
@JsonProperty("insuredname")
private String insuredName;//被保人姓名
@JsonProperty("staff_id")
private String staffId;//员工内部唯一编号
@JsonProperty("agent_id")
private String agentId;//员工工号
@JsonProperty("staffname")
private String staffName;//员工姓名
@JsonProperty("pol_name_chn")
private String polNameChn;//保单计划名称
@JsonProperty("CONTENT")
private String content;//保单对应计划中主险的展业信息
private String premium;//保费
@JsonProperty("insureArray")
private List<InsuredInfoN22> insuredArray;//被保人列表
@JsonProperty("Enddate")
private String endDate;//保单止期
@JsonProperty("product_name")
private String productName;//计划的主险险种名称
private String insuranceType;//险种分类
@JsonProperty("MyTrustPolicy")
private String myTrustPolicy;//我托管的保单
private String lastTimeToPay;//最近一次的应缴时间
private String butler;//管家
}
package com.yd.rmi.n22.policy.pojo.policylist;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
* IsInsuredArray、MyPolicyType必填,staffInfo必填,有渠道编号则IsInsuredArray、MyPolicyType必填,staffInfo不必填
*/
@Data
public class PolicyListQueryRequestBody {
@JsonProperty("epid")
private String epId;//epid :saas为当前库的代码如_e00008 非saas忽略
@JsonProperty("policyno")
private String policyNo;//保单号
@JsonProperty("policystatus")
private String policyStatus;//保单状态
@JsonProperty("staffInfo")
private String staffInfo;//可填员工内部唯一编号staffId
@JsonProperty("loginname")
private String loginName;//登录工号
@JsonProperty("staff_name")
private String staffName;//员工姓名
@JsonProperty("staffInfo2")
private String staffInfo2;//MyPolicyType=1时,选填
@JsonProperty("insurance_guid")
private String insuranceGuid;//投保人唯一ID
@JsonProperty("insured_guid")
private String insuredGuid;//被保人唯一ID
@JsonProperty("insurancename")
private String insuranceName;//投保人姓名
@JsonProperty("insuredname")
private String insuredName;//被保人姓名
@JsonProperty("starttime")
private String starttTime;//保险起期
@JsonProperty("endtime")
private String endTime;//保险止期
@JsonProperty("MyPolicyType")
private String myPolicyType;//我管的1、我的2
@JsonProperty("RolegroupId")
private String roleGroupId;//部门ID
@JsonProperty("IsInsuredArray")
private String IsInsuredArray;//是否需要被保人列表,1需要,0不需要
@JsonProperty("product_name")
private String productName;//保单险种名称
@JsonProperty("order_player")
private String orderPlayer;//打单员
@JsonProperty("MyTrustPolicy")
private String myTrustPolicy;//我托管的保单,填1查询,其他不查
@JsonProperty("chanelCode")
private String channelCode;//渠道编码
@JsonProperty("buyer_id")
private String buyerId;//订单编号
@JsonProperty("relationType")
private String relationType;//保单关联人类型,保单投保人或被保人同: 1投保人,2投保人,3投保人或被保人
@JsonProperty("insuranceID")
private String insuranceID;//投保人证件号码
@JsonProperty("insurdId")
private String insuredId;//被保人证件号码
@JsonProperty("beneficiary_GUID")
private String beneficiaryGUID;//受益人唯一ID
@JsonProperty("beneficiaryName")
private String beneficiaryName;//受益人姓名
@JsonProperty("beneficiaryId")
private String beneficiaryId;//受益人证件号码
@JsonProperty("source_code")
private String sourceCode;//保单来源,保单同步时会传进来
@JsonProperty("appl_num")
private String applyNum;//投保单号
@JsonProperty("butler")
private String butler;//管家
@JsonProperty("IsInsureArray")
private String isInsureArray;//
}
package com.yd.rmi.n22.policy.pojo.policylist;
import com.yd.rmi.n22.common.pojo.RequestHead;
import lombok.Data;
@Data
public class PolicyListQueryRequestVO {
private RequestHead requestHead;
private PolicyListQueryRequestBody requestBody;
}
package com.yd.rmi.n22.policy.pojo.policylist;
import lombok.Data;
import java.util.List;
@Data
public class PolicyListQueryResponseBody {
private List<PolicyInfoN22> policyList;
}
package com.yd.rmi.n22.policy.pojo.policylist;
import com.yd.rmi.n22.common.pojo.ResponseHead;
import lombok.Data;
@Data
public class PolicyListQueryResponseVO {
private ResponseHead responseHead;
private PolicyListQueryResponseBody responseBody;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment