浏览代码

ias 自动审核调整,产品查询接口,车辆上传接口调整

master
chenchaod 2 个月前
父节点
当前提交
63707e5335

+ 21
- 2
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/audit/VerificationRuleManagerImpl.java 查看文件

@@ -195,7 +195,7 @@ public class VerificationRuleManagerImpl extends AbstractCommManager implements
builder.append("用户证件正面照识别结果异常;");
}
}
} else if (IdType.TYSHXYDMZS.equals(model.getCustomerIdType())) {
} else if (IdType.YYZZ.equals(model.getCustomerIdType())) {
OcrResult exist = ocrResultRepo.findByUrlAndType(model.getCusPosImageUrl(), OcrType.business_license);
if (exist == null) {
builder.append("用户证件正面照未找到识别结果;");
@@ -213,7 +213,7 @@ public class VerificationRuleManagerImpl extends AbstractCommManager implements
}
}
} else {
builder.append("特殊证件类型;");
builder.append("用户证件-特殊证件类型;");
}
//==================================车主OCR====================================
if (!model.getCustomerName().equals(model.getOwnerName())) {
@@ -234,6 +234,25 @@ public class VerificationRuleManagerImpl extends AbstractCommManager implements
builder.append("车主证件正面照识别结果异常;");
}
}
} else if (IdType.YYZZ.equals(model.getOwnerIdType())) {
OcrResult exist = ocrResultRepo.findByUrlAndType(model.getOwnerPosImgUrl(), OcrType.business_license);
if (exist == null) {
builder.append("车主营业执照未找到识别结果;");
} else {
try {
BusinessLicenseOcrResponse res = JsonTools.json2Object(exist.getResult(), BusinessLicenseOcrResponse.class);
if (!model.getCustomerName().equals(res.getUnitName())) {
builder.append("用户营业执照名称【" + model.getCustomerName() + "】与系统识别结果【" + res.getUnitName() + "】不一致;");
}
if (!model.getCustomerIdNum().equals(res.getSCreditCode())) {
builder.append("用户营业执照证件号码【" + model.getCustomerIdNum() + "】与系统识别结果【" + res.getSCreditCode() + "】不一致;");
}
} catch (IOException e) {
builder.append("车主营业执照识别结果异常;");
}
}
}else {
builder.append("车主证件-特殊证件类型;");
}
}
}

+ 1
- 2
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/order/OrderInitManager.java 查看文件

@@ -58,8 +58,7 @@ public class OrderInitManager extends AbstractOrderManager<OrderInitRequest> {
private IssueProductPromotionRepo promotionRepo;
@Autowired
private IssueProductPayRepo productPayRepo;
@Autowired
private IssueOrderPayRepo orderPayRepo;


@Override
protected String getDataId(OrderInitRequest req) {

+ 33
- 29
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/order/ProductQueryManager.java 查看文件

@@ -1,19 +1,27 @@
package cn.com.taiji.ias.manager.order;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.entity.issue.IssueMultipleEquity;
import cn.com.taiji.core.entity.issue.IssueProduct;
import cn.com.taiji.core.entity.issue.IssueSingleEquity;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.ias.order.ProductQueryModel;
import cn.com.taiji.core.model.comm.protocol.ias.order.ProductQueryRequest;
import cn.com.taiji.core.model.comm.protocol.ias.order.ProductQueryResponse;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.repo.jpa.issue.IssueMultipleEquityRepo;
import cn.com.taiji.core.repo.jpa.issue.IssueProductPromotionRepo;
import cn.com.taiji.core.repo.jpa.issue.IssueSingleEquityRepo;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.model.ServiceLogEvent;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.time.LocalDateTime;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.stream.Collectors;

/**
* @Author : cehnchaod
@@ -27,8 +35,10 @@ public class ProductQueryManager extends AbstractOrderManager<ProductQueryReques

@Autowired
private IssueProductPromotionRepo promotionRepo;
// @Autowired
// private CsmsnSingleEquityInfoRepo singleEquityInfoRepo;
@Autowired
private IssueSingleEquityRepo issueSingleEquityRepo;
@Autowired
private IssueMultipleEquityRepo issueMultipleEquityRepo;

public ProductQueryManager() {
super(DataType.PRODUCT_QUERY);
@@ -47,33 +57,27 @@ public class ProductQueryManager extends AbstractOrderManager<ProductQueryReques
@Override
protected void businessValidateInternal(ErrorMsgBuilder builder, ProductQueryRequest req, ServiceLogEvent event,
Map<String, Object> dataStream) throws ServiceHandleException {
// List<CsmsnPromoteDistPro> pros = promoteDistProRepo.findByAgencyId("%"+req.getAgentId()+"%");
// List<String> releaseIds = pros.stream().map(CsmsnPromoteDistPro::getReleaseId).collect(Collectors.toList());
// List<CsmsnReleaseProStandards> listByReleaseIds = releaseProStandardsRepo.findListByReleaseIds(releaseIds);
// List<IssueOrderQueryProductModel> products = listByReleaseIds.stream().map(t -> {
// IssueOrderQueryProductModel productModel = new IssueOrderQueryProductModel();
// String substring =
// t.getEquityServicesId().substring(t.getEquityServicesId().length() - 1);
// if ("S".equals(substring)) {
// //单项权益
// CsmsnSingleEquityInfo csmsnSingleEquityInfo =
// singleEquityInfoRepo.findallBySingleEquityId(t.getEquityServicesId());
// String s = Optional.ofNullable(csmsnSingleEquityInfo).map(CsmsnSingleEquityInfo::getSellingPoint).orElse(null);
// productModel.setInfo(s);//产品概述
// } else if ("M".equals(substring)){
// //权益包
// CsmsnMultipleEquityInfo csmsnMultipleEquityInfo =
// csmsnMultipleEquityInfoRepo.findallByMultipleEquityId(t.getEquityServicesId());
// String s = Optional.ofNullable(csmsnMultipleEquityInfo).map(CsmsnMultipleEquityInfo::getSellingPoint).orElse(null);
// productModel.setInfo(s);//产品概述
// }
// productModel.setProductId(t.getReleaseId());
// productModel.setProductName(t.getProductName());
// productModel.setPrice(t.getAmount().intValue());
// return productModel;
// }).collect(Collectors.toList());
// dataStream.put(PRODUCTS, products);

List<String> releaseIds = promotionRepo.findReleaseIds(req.toLikeStr(req.getAgentId()), LocalDateTime.now());
List<IssueProduct> productList = issueProductRepo.findListByReleaseIds(releaseIds);
List<ProductQueryModel> products = productList.stream().map(t -> {
ProductQueryModel productModel = new ProductQueryModel();
if (t.getEquityServicesId().endsWith("S")) {
//单项权益
IssueSingleEquity singleEquity = issueSingleEquityRepo.findBySingleEquityId(t.getEquityServicesId());
String s = Optional.ofNullable(singleEquity).map(IssueSingleEquity::getSellingPoint).orElse(null);
productModel.setInfo(s);//产品概述
} else if (t.getEquityServicesId().endsWith("M")){
//权益包
IssueMultipleEquity multipleEquity = issueMultipleEquityRepo.findByMultipleEquityId(t.getEquityServicesId());
String s = Optional.ofNullable(multipleEquity).map(IssueMultipleEquity::getSellingPoint).orElse(null);
productModel.setInfo(s);//产品概述
}
productModel.setProductId(t.getReleaseId());
productModel.setProductName(t.getProductName());
productModel.setPrice(t.getAmount().intValue());
return productModel;
}).collect(Collectors.toList());
dataStream.put(PRODUCTS, products);
}
@Override
protected AbstractSignTypeResponse getRes(ProductQueryRequest req, ServiceLogEvent event,

+ 43
- 1
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/order/SignQueryManager.java 查看文件

@@ -1,15 +1,21 @@
package cn.com.taiji.ias.manager.order;

import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.core.entity.comm.CommonWxSignConfig;
import cn.com.taiji.core.entity.dict.basic.Gender;
import cn.com.taiji.core.entity.dict.basic.PlateColorType;
import cn.com.taiji.core.entity.issue.IssueOrderinfo;
import cn.com.taiji.core.entity.issue.IssueOrderinfoExt;
import cn.com.taiji.core.model.comm.protocol.AbstractSignTypeResponse;
import cn.com.taiji.core.model.comm.protocol.ats.weiXin.AtsVehicleUserStateRequest;
import cn.com.taiji.core.model.comm.protocol.ats.weiXin.AtsVehicleUserStateResponse;
import cn.com.taiji.core.model.comm.protocol.ias.order.SignQueryRequest;
import cn.com.taiji.core.model.comm.protocol.valid.ErrorMsgBuilder;
import cn.com.taiji.core.repo.jpa.comm.CommonWxSignConfigRepo;
import cn.com.taiji.ias.dict.DataType;
import cn.com.taiji.ias.model.MyFinals;
import cn.com.taiji.ias.model.ServiceLogEvent;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Map;
@@ -22,12 +28,14 @@ import java.util.Map;
@Service
public class SignQueryManager extends AbstractOrderManager<SignQueryRequest> {

// public static final String SIGN_QUERY_RESPONSE = "signQueryResponse";

public SignQueryManager() {
super(DataType.SIGN_QUERY);
}

@Autowired
private CommonWxSignConfigRepo commonWxSignConfigRepo;

@Override
protected String getDataId(SignQueryRequest req) {
return req.getOrderNo();
@@ -53,6 +61,18 @@ public class SignQueryManager extends AbstractOrderManager<SignQueryRequest> {
Map<String, Object> dataStream) throws ServiceHandleException {
IssueOrderinfo order = (IssueOrderinfo)dataStream.get(ORDER);
IssueOrderinfoExt orderInfoExt = orderInfoExtRepo.findByOrderNo(order.getOrderNo());
Integer vehiclePlateColor = order.getVehiclePlateColor();
switch (PlateColorType.valueOfCode(vehiclePlateColor)){
case BLUE:
case GREEN:
carSignV2(request,order);
break;
case YELLOW:
carSignV3(request,order);
break;
default: throw newBusinessException("当前只支持,蓝、渐变绿、黄,三种车牌签约");
}

// 查询签约结果
// WxChannelUserSignQueryPostResponse signQueryRes = queryUserSign(request, order, orderInfoExt);
// 更新订单签约结果
@@ -63,6 +83,28 @@ public class SignQueryManager extends AbstractOrderManager<SignQueryRequest> {
// dataStream.put(SIGN_QUERY_RESPONSE, signQueryRes);
}

private void carSignV2(SignQueryRequest req, IssueOrderinfo order) throws ServiceHandleException {
CommonWxSignConfig signConfig = commonWxSignConfigRepo.findByAgencyIdAndVersion(order.getAgencyId(), 2);
AtsVehicleUserStateRequest request = new AtsVehicleUserStateRequest();
request.setAppId(signConfig.getAppId());
request.setSubAppId(signConfig.getSubAppId());
request.setMchId(signConfig.getMchId());
request.setSubMchId(signConfig.getSubMchId());
request.setSignKey(signConfig.getSignKey());
request.setPlateNumber(order.getVehiclePlate());
request.setSubOpenId(req.getSubOpenId());
AtsVehicleUserStateResponse response = jsonPostRepeat(request);

if (response.getUserState())


}

private void carSignV3(SignQueryRequest request, IssueOrderinfo order) {

}


// @Override
// protected void onSuccessInternal(IssueOrderSignQueryRequest req, ServiceLogEvent event,
// Map<String, Object> dataStream) {

+ 2
- 9
zhywpt-service-ias/src/main/java/cn/com/taiji/ias/manager/order/VehicleUploadManager.java 查看文件

@@ -5,10 +5,7 @@ import cn.com.taiji.common.manager.net.http.ServiceHandleException;
import cn.com.taiji.common.pub.StringTools;
import cn.com.taiji.core.entity.basic.QtkCustomerInfo;
import cn.com.taiji.core.entity.basic.QtkVehicleInfo;
import cn.com.taiji.core.entity.dict.basic.IdType;
import cn.com.taiji.core.entity.dict.basic.SourceType;
import cn.com.taiji.core.entity.dict.basic.UseUserType;
import cn.com.taiji.core.entity.dict.basic.VehicleType;
import cn.com.taiji.core.entity.dict.basic.*;
import cn.com.taiji.core.entity.dict.issue.IssueOrderStatus;
import cn.com.taiji.core.entity.dict.issue.IssueOrderStep;
import cn.com.taiji.core.entity.dict.issue.OrderType;
@@ -268,11 +265,7 @@ public class VehicleUploadManager extends AbstractOrderManager<VehicleUploadRequ
vehicle.setTotalMass(request.getTotalMass());
vehicle.setMaintenaceMass(request.getMaintenaceMass());
vehicle.setPermittedWeight(request.getPermittedWeight());
String vehicleDimensions = request.getVehicleDimensions();
if (StringTools.hasText(vehicleDimensions)) {
vehicleDimensions = vehicleDimensions.replace("m","");
}
vehicle.setVehicleDimensions(vehicleDimensions);
vehicle.setVehicleDimensions(request.getVehicleDimensions().replace("m",""));
vehicle.setPermittedTowWeight(request.getPermittedTowWeight());
vehicle.setAxleCount(request.getAxleCount());
vehicle.setIssueDate(request.getIssueDate());

正在加载...
取消
保存