Commit 015d4257 authored by kang.nie@inzymeits.com's avatar kang.nie@inzymeits.com
Browse files

初始化代码

parent bd38ff8b
Pipeline #3108 failed with stages
in 0 seconds
package com.cusc.nirvana.user.rnr.fp.dto;
import com.cusc.nirvana.user.rnr.fp.common.BaseAuthenticationRespDTO;
import lombok.Data;
/**
* Description: 活体检测响应DTO
* <br />
* CreateDate 2022-02-15 17:57
*
* @author yuy336
**/
@Data
public class LivenessRespDTO extends BaseAuthenticationRespDTO {
/**
* 最佳最佳截图列表,注意:此字段可能返回 null,表示取不到有效值。
*/
public String [] bestFrameList;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
/**
* @author stayAnd
* @date 2022/5/5
*/
@Data
public class LivenessResultDTO {
/**
* 活体视屏上传到文件系统的id
*/
private String videoFileId;
/**
* 活体照片上传到文件系统后的id
*/
private String photoId;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import java.util.Arrays;
/**
* 短信业务类型
*
* @author yubo
* @since 2022-05-03 17:44
*/
public enum MessageBizTypeEnum {
BIND(1, "一车多卡绑定", "surplusMessageCallBackHandler"),
UBIND(2, "原车主解绑", "cardUnBindMessageCallBackHandler"),
SECOND_UNBIND(3, "二手车解绑", ""),
CHANGETBOX(4, "换件", "changeTBoxMessageCallBackHandler"),
UNBIND(5,"企业解绑", "enterpriseUnBindCallBackHandler");
//存入数据库值
private int code;
//说明
private String value;
//短信回调
private String callBackHandlerName;
MessageBizTypeEnum(int code, String value, String callBackHandlerName) {
this.code = code;
this.value = value;
this.callBackHandlerName = callBackHandlerName;
}
public static MessageBizTypeEnum getBizType(int code) {
return Arrays.stream(MessageBizTypeEnum.values()).filter(b -> b.getCode() == code)
.findFirst().get();
}
public int getCode() {
return code;
}
public String getValue() {
return value;
}
public String getMessageCallBackHandlerName() {
return callBackHandlerName;
}
}
package com.cusc.nirvana.user.rnr.fp.dto;
import com.cusc.nirvana.user.rnr.fp.common.BaseAuthenticationReqDTO;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* Description: 自然人OCR识别请求DTO
* <br />
* CreateDate 2022-02-15 17:57
*
* @author yuy336
**/
@Data
public class OcrNpReqDTO extends BaseAuthenticationReqDTO {
/**
* ocr识别的图片
*/
@NotBlank(message = "图片不能为空")
private String ocrPic;
/**
* 裁剪人像图片并返回
* 0不处理(默认值)
* 1 裁剪并返回
*/
private String faceCut;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import com.cusc.nirvana.user.rnr.fp.common.BaseAuthenticationRespDTO;
import lombok.Data;
/**
* Description: 自然人OCR识别响应DTO
* <br />
* CreateDate 2022-02-15 17:57
*
* @author yuy336
**/
@Data
public class OcrNpRespDTO extends BaseAuthenticationRespDTO {
private static final long serialVersionUID = 1L;
/**
* 证件正反面 front 国徽面 back 人像面
*/
private String side;
/**
* 姓名
*/
private String fullName;
/**
* 身份证证件号
*/
private String certNumber;
/**
* 性别(男/女)
*/
private String gender;
/**
* 住址
*/
private String address;
/**
* 生日,格式为YYYY-MM-DD
*/
private String birthday;
/**
* 民族(汉字)
*/
private String race;
/**
* 证件人像照片(入参face_cut=1时处理并返回)
*/
private String facePhoto;
/**
* 签发机关
*/
private String issued;
/**
* 有效日期
*/
private String validDate;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "开户信息", description = "开户信息上传的详细开户信息")
@Data
public class OpenAccountNeededInfo {
@ApiModelProperty(value = "车联网卡MSISDN")
private String msisdn;
@ApiModelProperty(value = "车联网卡ICCID")
private String iccId;
@ApiModelProperty(value = "车辆识别代号或车架号")
private String vin;
@ApiModelProperty(value = "车辆状态")
private String vehicleStatus;
@ApiModelProperty(value = "状态变更时间")
private String statusUpdat;
@ApiModelProperty(value = "状态变更时间")
private String statusUpdatTime;
@ApiModelProperty(value = "受理时间")
private String acceptTime;
@ApiModelProperty(value = "用户类型")
private String customerType;
@ApiModelProperty(value = "用户姓名")
private String customerName;
@ApiModelProperty(value = "用户证件类型")
private String customerCertType;
@ApiModelProperty(value = "用户证件号码")
private String customerCertNumber;
@ApiModelProperty(value = "用户证件地址")
private String customerCertAddress;
@ApiModelProperty(value = "用户证件有效期")
private String customerCertDate;
@ApiModelProperty(value = "用户手机号")
private String customerPosterTelephone;
@ApiModelProperty(value = "用户通讯地址")
private String customerPosterAddress;
@ApiModelProperty(value = "单位名称")
private String companyName;
@ApiModelProperty(value = "单位证件类型")
private String companyCertType;
@ApiModelProperty(value = "单位证件号码")
private String companyCertNumber;
@ApiModelProperty(value = "单位证件地址")
private String companyCertAddress;
@ApiModelProperty(value = "单位通讯地址")
private String companyPosterAddress;
@ApiModelProperty(value = "责任人姓名")
private String corporationName;
@ApiModelProperty(value = "责任人证件类型")
private String corporationCertType;
@ApiModelProperty(value = "责任人证件号码")
private String corporationCertNumber;
@ApiModelProperty(value = "责任人证件地址")
private String corporationCertAddress;
@ApiModelProperty(value = "责任人通讯地址")
private String corporationPosterAddress;
@ApiModelProperty(value = "责任人电话")
private String corporationTelephone;
@ApiModelProperty(value = "代/经办人姓名")
private String operatorName;
@ApiModelProperty(value = "代/经办人证件类型")
private String operatorCertType;
@ApiModelProperty(value = "代/经办人证件号码")
private String operatorCertNumber;
@ApiModelProperty(value = "代/经办人证件地址")
private String operatorCertAddress;
@ApiModelProperty(value = "代/经办人通讯地址")
private String operatorPosterAddress;
@ApiModelProperty(value = "代/经办人电话")
private String operatorTelephone;
@ApiModelProperty(value = "照片文件名")
private String phoName;
@ApiModelProperty(value = "扩展字段")
private Object extendPara;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@NoArgsConstructor
@AllArgsConstructor
public class OpenAccountParamDTO {
private String RequestID;
private String Code;
private String Iccid;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
@Data
public class OpeningAccountInfoDTO {
private String operType;
private String requestID;
private String code;
private String encryptUserInfo;
private String auth;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
/**
* @author stayAnd
* @date 2022/5/3
*/
@Data
public class PersonH5CallBackRequestDTO {
/**
* 租户编号
*/
@NotNull(message = "租户编号不能为空")
private String tenantNo;
/**
* 工单号
*/
@NotNull(message = "工单号不能为空")
private String orderNo;
/**
* 活体返回的两张图片
*/
@NotEmpty(message = "活体返回的两张图片不能为空")
private String[] livenessPicFileId;
/**
* 视屏id
*/
@NotNull(message = "视屏id不能为空")
private String videFileId;
/**
* ciam用户id
*/
private String ciamUserId;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author stayAnd
* @date 2022/8/3
*/
@Data
public class RnrOrderDetailDTO {
/**
* 业务信息
*/
private BizDetailDTO bizDetail;
/**
* 新车主/责任人信息
*/
private PersonDetailDTO rnrDetail;
/**
* 代办人信息
*/
private PersonDetailDTO liaisonDetail;
/**
* 企业信息
*/
private CompanyDetailDTO companyDetail;
/**
* 认证信息
*/
private List<AuthenticationDetailDTO> authenticationList;
/**
* 人工审核信息
*/
private AuditDetailDTO auditDetail;
@Data
public static class BizDetailDTO{
/**
* 租户号
*/
private String tenantNo;
/**
* 租户名称
*/
private String tenantName;
/**
* 业务类型
*/
private Integer orderType;
/**
* 实名
*/
private Date createTime;
/**
* 认证进度
*/
private Integer orderStatus;
}
@Data
public static class PersonDetailDTO{
/**
* 姓名
*/
private String fullName;
/**
* 性别
*/
private Integer gender;
/**
* 证件类型
*/
private String certType;
/**
* 证件类型名称
*/
private String certTypeName;
/**
* 证件号码
*/
private String certNumber;
/**
* 手机号码
*/
private String phone;
/**
* 证件有效期
*/
private String expiredDate;
private List<FileDTO> rnrInfoFile;
}
@Data
public static class CompanyDetailDTO{
/**
* 企业名称
*/
private String companyName;
/**
* 企业性质
*/
private String companyType;
/**
* 企业性质名称
*/
private String companyTypeName;
/**
* 行业类型
*/
private String industryType;
/**
* 行业类型名称
*/
private String industryTypeName;
/**
* 企业证件类型
*/
private String companyCertType;
/**
* 企业证件类型证件名称
*/
private String companyCertTypeName;
/**
* 企业证件号码
*/
private String companyCertNumber;
/**
* 证件地址
*/
private String companyCertAddress;
/**
* 通讯地址
*/
private String companyContactAddress;
private List<FileDTO> companyFile;
}
@Data
public static class AuthenticationDetailDTO{
/**
* 1 本人 2 委托人
*/
private Integer subjectType;
/**
* 认证方式
*/
private String authWayType;
/**
* 认证结果 1-成功 其他失败
*/
private String authResult;
/**
* 认证结果信息描述
*/
private String authResultMsg;
}
@Data
public static class AuditDetailDTO{
/**
* 工单号
*/
private String approvalNo;
/**
* 操作人
*/
private String operator;
/**
* 操作人姓名
*/
private String operatorName;
/**
* 审核意见
*/
private String content;
/**
* 审核时间
*/
private Date auditTime;
}
private List<FileDTO> fileList;
@Data
public static class FileDTO{
/**
* 文件id
*/
private String fileId;
/**
* 文件类型
*/
private Integer fileType;
}
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* @author stayAnd
* @date 2022/8/2
*/
@Data
public class RnrOrderListQueryDTO {
private Integer orderStatus;
private String tenantNo;
private String vin;
private String iccid;
/**
* 查询时间开始
*/
private Date createTimeQueryStart;
/**
* 查询时间结束
*/
private Date createTimeQueryEnd;
@ApiModelProperty(value = "当前页码")
@NotNull
private Integer currPage;
@ApiModelProperty(value = "页面显示行数")
@NotNull
@Max(value = 100,message = "页码最大100")
private Integer pageSize;
/**
* 业务类型
*/
private Integer orderType;
/**
* 企业名称
*/
private String companyName;
/**
* 车主/责任人
*/
private String fullName;
/**
* 车主/责任人手机号
*/
private String phone;
/**
* 车主/责任人证件号
*/
private String certNumber;
/**
* 组织名称
*/
private String organizationName;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
import java.util.Date;
/**
* @author stayAnd
* @date 2022/8/2
*/
@Data
public class RnrOrderListResponseDTO {
/**
* 工单id
*/
private String orderId;
/**
* 工单状态
*/
private Integer orderStatus;
/**
* vin
*/
private String vin;
/**
* iccid
*/
private String iccid;
/**
* 租户号
*/
private String tenantNo;
/**
* 租户名称
*/
private String tenantName;
/**
* 企业名称
*/
private String companyName;
/**
* 车主/责任人姓名
*/
private String fullName;
/**
* 车主/责任人手机号
*/
private String phone;
/**
* 车主/责任人证件号
*/
private String certNumber;
/**
* 认证日期
*/
private Date createTime;
/**
* 业务类型
*/
private Integer orderType;
/**
* 操作人
*/
private String operator;
/**
* 操作人姓名
*/
private String operatorName;
/**
* 审核时间
*/
private Date auditTime;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
/**
* @author stayAnd
* @date 2022/4/18
*/
@Data
public class RnrRequestDTO {
/**
* 租户编号
*/
private String tenantNo;
/**
* 业务id
*/
private String bizUuid;
/**
* 流水号
*/
@NotBlank(message = "流水号不能为空")
private String serialNumber;
/**
* 活体视屏id
*/
private String videoBase64;
/**
* 获取活体数字验证码时 返回的唯一标识
*/
private String requestId;
/**
* 拍摄活体视频的人的信息
*/
private RnrPersonInfo matchVideoPerosinInfo;
/**
* 非活体视频的人的信息 只需要做ocr和身份信息核查
*/
private List<RnrPersonInfo> peorsonList;
@Data
public static class RnrPersonInfo{
/**
* 人的id
*/
private String personId;
/**
* 是否是身份证
*/
private Boolean isIdentityCard;
/**
* 人脸照base64
*/
private String facePicBase64;
/**
* 国徽照 base64
*/
private String nationalEmblemPicBase64;
/**
* 证件号码
*/
private String certNumber;
/**
* 证件姓名
*/
private String fullName;
/**
* 证件失效时期
*/
private String expiredDate;
/**
* 性别
*/
private Integer gender;
}
}
package com.cusc.nirvana.user.rnr.fp.dto;
import com.alibaba.fastjson.JSON;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.util.CollectionUtils;
import java.util.List;
/**
* @author stayAnd
* @date 2022/4/18
*/
@Data
@Slf4j
public class RnrResponseDTO {
/**
* 实名状态
*/
private Boolean rnrResult;
/**
* 活体认证结果
*/
private Boolean livenessResult;
/**
* 活体失败原因
*/
private String livenessFailMsg;
/**
* 活体人证 返回的图片1
*/
private String livenessPic1;
/**
* 活体人证 返回的图片2
*/
private String livenessPic2;
/**
* 所有人 ocr认证的 结果
*/
private Boolean allOcrResult;
/**
* 人证比对结果
*/
private Boolean idCompareResult;
/**
* 认证对比失败原因
*/
private String idCompareFailMsg;
/**
* 人脸对比结果
*/
private Boolean faceCompareResult;
/**
* 人脸对比失败原因
*/
private String faceCompareFailMsg;
/**
* 活体视频对应的人 ocr的结果
*/
private OcrResultInfo videoPerosonOcResult;
/**
* 其他人 ocr的结果
*/
private List<OcrResultInfo> personListOcrResult;
/**
* ocr 认证的结果
*/
@Data
public static class OcrResultInfo{
/**
* 人的原名
*/
private String orgianFullName;
/**
* ocr人证结果
*/
private Boolean ocrResult;
/**
* ocr失败原因
*/
private List<String> ocrFailMsg;
/**
* 身份核查信息
*/
private Boolean certCheckResult;
/**
* ocr人证识别返回的 姓名
*/
private String ocrFullName;
/**
* ocr人证识别返回的 身份证证件号
*/
private String ocrCertNumber;
/**
* ocr人证识别返回的 性别(男/女)
*/
private String ocrGender;
/**
* ocr人证识别返回的 住址
*/
private String ocrAddress;
/**
* ocr人证识别返回的 生日,格式为YYYY-MM-DD
*/
private String ocrBirthday;
/**
* ocr人证识别返回的 民族(汉字)
*/
private String ocrRace;
/**
* ocr人证识别返回的 签发机关
*/
private String ocrIssued;
/**
* ocr人证识别返回的 有效日期
*/
private String ocrValidDate;
}
/**
* 获取车主的ocr扫面的身份证有效期开始时间
* @return
*/
public String getCarOwnerEffectiveOcrTime(){
String effctive = "";
try {
if (!CollectionUtils.isEmpty(this.getPersonListOcrResult())) {
effctive = this.getPersonListOcrResult().get(0).getOcrValidDate();
} else if(null != this.getVideoPerosonOcResult()){
effctive = this.getVideoPerosonOcResult().getOcrValidDate();
}else {
return effctive;
}
return effctive.split("-")[0];
} catch (Exception e) {
log.error("getCarOwnerEffectiveOcrTime has error getPersonListOcrResult{}, getVideoPerosonOcResult{}",JSON.toJSONString(this.getPersonListOcrResult()),JSON.toJSONString(this.getVideoPerosonOcResult()),e);
}
return effctive;
}
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
/**
* @className: RnrReturnDTO
* @author: jk
* @date: 2022/9/29 17:29
* @version: 1.0
**/
@Data
public class RnrReturnDTO {
private String personRnrResultMsg;
private String personH5CallBackMsg;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class SimDTO {
/**iccid*/
@ApiModelProperty(value = "iccid", required = true)
@NotBlank(message = "iccid不能为空")
private String iccid;
@ApiModelProperty(value = "msisdn", required = true)
@NotBlank(message = "msisdn不能为空")
private String msisdn;
@ApiModelProperty(value = "imsi", required = true)
private String imsi;
@ApiModelProperty(value = "ip", required = true)
private String ip;
/**失败原因*/
@ApiModelProperty(value = "返回的错误信息,作为入参时不需要传递", required = false)
private String failReason;
@ApiModelProperty(value = "vin", required = true)
private String vin;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
@Data
public class SimVehicleBindingDTO {
/**组织id*/
@ApiModelProperty(value = "组织uuid,该组织必须为主机厂", required = true)
@NotBlank(message = "组织编码不能为空")
private String organizationId;
@ApiModelProperty(value = "业务标签uuid")
private String tagUuid;
/**车卡关系列表*/
@ApiModelProperty(value = "车卡关系列表")
@NotNull(message = "车卡关系列表不能为空")
private List<SimVehicleDTO> bindingList;
/**创建人*/
@ApiModelProperty(value = "创建人", required = false)
private String creator;
@ApiModelProperty(value = "绑定状态")
private String bindStatus;
@ApiModelProperty("车企名录")
private String companyCode;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
import java.util.List;
@Data
public class SimVehicleBindingResult {
/**成功数量*/
private Integer successCount;
/**失败数量*/
private Integer failCount;
/**失败数据*/
List<SimVehicleDTO> failData;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
@Data
public class SimVehicleDTO {
/**vin码*/
@ApiModelProperty(value = "VIN码", required = true)
@NotBlank(message = "VIN码不能为空")
private String vin;
/**ICCID*/
@ApiModelProperty(value = "iccid", required = true)
@NotBlank(message = "iccid不能为空")
private String iccid;
@ApiModelProperty(value = "msisdn")
private String msisdn;
@ApiModelProperty(value = "imsi")
private String imsi;
@ApiModelProperty(value = "ip")
private String ip;
@ApiModelProperty(value = "是否允许车主自己实名")
private Boolean realBySelf = false;
/**失败原因*/
@ApiModelProperty(value = "返回的错误信息,作为入参时不需要传递")
private String failReason;
@ApiModelProperty(value = "绑定关系 0-已绑定;1-已解绑")
private Integer bindStatus;
/**sim卡运营服务商*/
@ApiModelProperty(value = "sim卡所属运营服务商")
private String serviceProvider;
/**出厂年份*/
@ApiModelProperty(value = "出厂年份")
private Integer years;
/**品牌编码*/
@ApiModelProperty(value = "sim卡所安装的品牌编码")
private String brand;
@ApiModelProperty(value = "sim卡所安装的品牌名称")
private String brandName;
/**车型编码*/
@ApiModelProperty(value = "sim卡所安装的车型编码")
private String vehicleModel;
/**车型名称*/
@ApiModelProperty(value = "sim卡所安装的车型名称")
private String vehicleModelName;
/**车系编码*/
@ApiModelProperty(value = "sim卡所安装的车系编码")
private String vehicleSeries;
/**车系名称*/
@ApiModelProperty(value = "sim卡所安装的车系名称")
private String vehicleSeriesName;
/**sim卡安装位置*/
@ApiModelProperty(value = "sim卡所安装在的位置")
private String installLocation;
}
package com.cusc.nirvana.user.rnr.fp.dto;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Date;
/**
* 查询车卡关系列表参数
*/
@Data
public class SimVehicleQueryDTO {
/**组织id*/
@NotBlank(message = "组织(车厂)编码不能为空")
private String organizationId;
/**VIN码*/
private String vin;
/**ICCID*/
private String iccid;
/**绑定状态*/
private Integer bindStatus;
/**创建开始时间*/
private Date startCreateTime;
/**创建结束时间*/
private Date endCreateTime;
/**开始页*/
private Integer currPage = 1;
/**每页条数*/
private Integer pageSize = 20;
}
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