瀏覽代碼

云燕2次提供最新代码

15810770710@163.com 4 年之前
父節點
當前提交
50965a8f6d

+ 2 - 2
pom.xml

@@ -1,4 +1,4 @@
-<project xmlns="http://maven.apache.org/POM/4.0.0"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
 		 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 		 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
 	<modelVersion>4.0.0</modelVersion>
@@ -12,7 +12,7 @@
 
 	<groupId>info.aspirecn.iov.yysj</groupId>
 	<artifactId>cloud-yysj-check-info</artifactId>
-	<version>1.1.3</version>
+	<version>1.1.8</version>
 	<packaging>jar</packaging>
 
 	<name>cloud-yysj-infocheck</name>

+ 4 - 1
src/main/java/info/aspirecn/iov/yysj/check/info/CheckInfo.java

@@ -98,6 +98,9 @@ public class CheckInfo {
 		return new EIDInforFilter();
 	}
 
-
+	@Bean
+	public RoadTransportFilter addRoadTransportFilter(){
+		return new RoadTransportFilter();
+	}
 
 }

+ 10 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/common/CommonUtil.java

@@ -69,7 +69,17 @@ public class CommonUtil {
        }
         return false;
     }
+    //校验道路运输url
+    public static boolean checkRoadTransUrl(String url){
+       Constants.RoadTransportUrl[] requestUrls = Constants.RoadTransportUrl.values();
 
+       for(Constants.RoadTransportUrl requestUrl : requestUrls){
+           if(requestUrl.getValue().equals(url)){
+               return true;
+           }
+       }
+        return false;
+    }
     //获取所有请求url
     public static boolean checkAllUrl(String url){
         Constants.RequestUrl[] requestUrls = Constants.RequestUrl.values();

文件差異過大導致無法顯示
+ 1040 - 772
src/main/java/info/aspirecn/iov/yysj/check/info/common/TransferParam.java


文件差異過大導致無法顯示
+ 243 - 2
src/main/java/info/aspirecn/iov/yysj/check/info/common/ZuulHelper.java


+ 4 - 1
src/main/java/info/aspirecn/iov/yysj/check/info/entity/BillResultObject.java

@@ -1,11 +1,14 @@
 package info.aspirecn.iov.yysj.check.info.entity;
 
 
+import com.alibaba.fastjson.annotation.JSONType;
+
 @lombok.Data
+@JSONType(orders={"traceId","resultCode","resultMsg","data"})
 public class BillResultObject {
+    private String traceId;
     private String resultCode;
     private String resultMsg;
-    private String traceId;
     private Object data;
 
 }

+ 73 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/entity/CarRoadTransportObject.java

@@ -0,0 +1,73 @@
+package info.aspirecn.iov.yysj.check.info.entity;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.text.DecimalFormat;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.annotation.JSONField;
+import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
+
+import lombok.Getter;
+import lombok.Setter;
+import lombok.extern.slf4j.Slf4j;
+
+@Setter
+@Getter
+@Slf4j
+public class CarRoadTransportObject{
+	@JSONField(serialize=false)
+	private Map<String,String> map;
+
+	private String vehicleNumber;//车辆牌照号
+	private String vehiclePlateColorCode;//	车牌颜色代码
+	private String vin;//车辆识别代号。
+	private Integer vehicleLength;//车辆长度
+	private Integer vehicleWidth;//车辆宽度
+	private Integer vehicleHigh;//车辆高度
+
+	private Integer tractionTonnage;//车辆准牵引总质量
+	private String businessState;//车辆营运状态
+	private String vehicleType;//车辆类型
+
+	private String vehicleEnergyType;//车辆能源类型	 上游没有返回
+	private String vehicleTonnage;//车辆核定载质量状态
+	private String roadTransportCertificateNumber;//道路运输证号
+	
+	private String roadTransportCertificateValidPeriodFrom;//道路运输证有效期自
+	private String roadTransportCertificateValidPeriodTo;//道路运输证有效期至
+	private String roadTransportLicenseIssueOrganName;//道路运输证发证机构名称
+	
+	
+	private String entName;//企业名称
+	private String businessScopeDesc;//车辆经营范围	
+	private String permitNumber;//道路运输经营许可证编号   上游没有返回
+	
+	private String unifiedSocialCreditIdentifier;//道路运输经营许可证编号  上游没有返回
+
+	public CarRoadTransportObject() {
+		map = new HashMap<>();
+		
+		map.put("vehiclePlateColorCode", "licensePlateTypeCode");
+		map.put("vin", "vinNo");
+		map.put("vehicleHigh", "vehicleHeight");
+		map.put("vehicleTonnage","vehicleTonnage");
+		map.put("tractionTonnage", "vehicleMaximumTractionWeight");
+		map.put("vehicleType", "vehicleClassification");
+		map.put("vehicleEnergyType", "fuelType");
+
+		map.put("roadTransportCertificateValidPeriodFrom", "periodStartDate");
+		map.put("roadTransportCertificateValidPeriodTo", "periodEndDate");
+		
+		map.put("roadTransportLicenseIssueOrganName", "certificationUnit");
+		map.put("entName", "vehicleCorporationName");
+		map.put("businessScopeDesc", "businessScope");
+		map.put("unifiedSocialCreditIdentifier", "organizationCode");
+	}
+
+
+
+}

+ 49 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/entity/CompanyRoadTransportObject.java

@@ -0,0 +1,49 @@
+package info.aspirecn.iov.yysj.check.info.entity;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import com.alibaba.fastjson.annotation.JSONField;
+
+import lombok.Data;
+
+@Data
+public class CompanyRoadTransportObject extends RoadTransportTem{
+	@JSONField(serialize=false)
+	Map<String,String> map;
+	public CompanyRoadTransportObject() {
+		map = new HashMap<>();
+		map.put("entName", "enterpriseName");
+		map.put("entAddress", "enterpriseRegistrationAddress");
+		
+		map.put("businessScopeDesc", "businessScope");
+
+		map.put("licenseIssueDate", "permitGrantDate");
+		map.put("permitValidPeriodFrom", "periodStartDate");
+		map.put("permitValidPeriodTo", "periodEndDate");
+		map.put("permitLicenseIssueOrganName", "certificationUnit");
+		map.put("unifiedSocialCreditIdentifier", "organizationCode");
+
+	}
+	public  String getUpKey(String key) {//根据属性名获取上游返回对象属性名
+		return map.get(key);
+		
+	}
+
+
+
+	private String entName;//企业名称
+	private String unifiedSocialCreditIdentifier;//	统一社会信用代码 上游没有返回
+	private String entAddress;//企业注册地址
+	private String permitNumber;//道路运输经营许可证编号
+	private String businessScopeDesc;//企业经营范围
+	private String licenseIssueDate;//道路运输经营许可证核发日期
+
+	private String permitValidPeriodFrom;//道路运输经营许可证有效期自
+	private String permitValidPeriodTo;//道路运输经营许可证有效期至
+	private String permitLicenseIssueOrganName;//道路运输经营许可证发证单位
+
+	private String operatingStatus;//经营状态  上游没有返回
+	
+
+}

+ 74 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/entity/PersonRoadTransportObject.java

@@ -0,0 +1,74 @@
+package info.aspirecn.iov.yysj.check.info.entity;
+
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.text.DecimalFormat;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.annotation.JSONField;
+
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.lang.StringUtils;
+
+@Getter
+@Setter
+@Slf4j
+public class PersonRoadTransportObject{
+	@JSONField(serialize=false)
+	Map<String,Object> map;
+	public PersonRoadTransportObject() {
+		map = new HashMap<>();
+		map.put("gender", "gender");
+		map.put("driverName", "nameOfPerson");
+		map.put("drivingLicense", "identityDocumentNumber");
+		Map<String,String> subMap = new HashMap<String,String>();
+		subMap.put("qualificationCertificateLicenseIssueOrganName","certificationUnit");
+		subMap.put("qualificationCertificate","qualificationCertificateNumber");
+		subMap.put("certificateState","certificateState");
+		subMap.put("certificateFirstIssueDate","licenseInitialReleaseDate");
+
+
+		subMap.put("qualificationCertificateValidPeriodTo","periodEndDate");
+		subMap.put("qualificationCertificateValidPeriodFrom","periodStartDate");
+		subMap.put("workTypeCode","qualificationCertificateCategoryCode");
+		map.put("qualificationCertificateInfo",subMap);
+	}
+
+	
+	private String driverName;//姓名
+	private String drivingLicense;//	身份证号
+
+	private String gender;//性别
+
+	private List<QualificationCertificateInfo> qualificationCertificateInfo;
+	@Data
+    public static class QualificationCertificateInfo implements Comparable{
+		private String qualificationCertificateLicenseIssueOrganName;//从业资格证发证机构名称
+		private String qualificationCertificate;//从业资格证号
+		private String certificateState;//证照状态  上游没有返回
+		private String certificateFirstIssueDate;//从业资格证初领时间
+		private String qualificationCertificateValidPeriodFrom;//从业资格证有效期自
+
+		private String qualificationCertificateValidPeriodTo;//从业资格证有效期至
+		private String workTypeCode;//从业资格类别
+
+		@Override
+		public int compareTo(Object o) {
+			if(o instanceof QualificationCertificateInfo){
+				QualificationCertificateInfo qualificationCertificateInfo = (QualificationCertificateInfo)o;
+				return this.certificateFirstIssueDate.compareTo(qualificationCertificateInfo.getCertificateFirstIssueDate());
+			}
+			return 0;
+		}
+	}
+
+	
+
+}

+ 25 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/entity/RoadTransportObject.java

@@ -0,0 +1,25 @@
+package info.aspirecn.iov.yysj.check.info.entity;
+import lombok.Data;
+@Data
+public class RoadTransportObject {
+	private VerifyResultSet verifyResultSet;
+	private String remark;
+	
+	public RoadTransportObject(VerifyResultSet verifyResultSet, String remark) {
+		super();
+		this.verifyResultSet = verifyResultSet;
+		this.remark = remark;
+	}
+
+	@Data
+	public static class VerifyResultSet{
+		private Errorresult errorResult;
+		private Object correctResult;
+		@Data
+		public static class Errorresult{
+			private String errorInfo;
+		}
+	}
+	
+	
+}

+ 7 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/entity/RoadTransportTem.java

@@ -0,0 +1,7 @@
+package info.aspirecn.iov.yysj.check.info.entity;
+
+public class RoadTransportTem {
+	public  String getUpKey(String key) {
+		return "";
+	}
+}

+ 1 - 1
src/main/java/info/aspirecn/iov/yysj/check/info/pre/InterfaceFilter.java

@@ -29,7 +29,7 @@ public class InterfaceFilter extends ZuulFilter {
 		requestContext.getRequest().setAttribute("paramBody",new HashMap());
 		requestContext.getRequest().setAttribute("queryParam",new HashMap());
 		requestContext.getRequest().setAttribute("CheckDetails",new ArrayList<>());
-		return  !CommonUtil.checkAllUrl(url);
+		return  !CommonUtil.checkAllUrl(url)&&!CommonUtil.checkRoadTransUrl(url);
 	}
 
 	@Override

+ 25 - 9
src/main/java/info/aspirecn/iov/yysj/check/info/pre/RequestBodyFilter.java

@@ -7,6 +7,9 @@ import com.netflix.zuul.context.RequestContext;
 import info.aspirecn.cloud.yysj.commons.lang.Constants;
 import info.aspirecn.iov.yysj.check.info.common.*;
 import info.aspirecn.iov.yysj.check.info.entity.BillResultObject;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject.VerifyResultSet;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject.VerifyResultSet.Errorresult;
 import info.aspirecn.iov.yysj.paramtransfer.inter.YysjUserActionInterface;
 import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjUser;
 import io.jsonwebtoken.SignatureAlgorithm;
@@ -17,7 +20,10 @@ import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
 import org.springframework.data.redis.core.StringRedisTemplate;
 
 import javax.servlet.http.HttpServletRequest;
-import java.util.*;
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
 import java.util.concurrent.TimeUnit;
 
 /**
@@ -40,7 +46,7 @@ public class RequestBodyFilter extends ZuulFilter {
 	public boolean shouldFilter() {
 		RequestContext requestContext = RequestContext.getCurrentContext();
 		String url = requestContext.getRequest().getRequestURI();
-		boolean isExist =  CommonUtil.checkAllUrl(url)&& CommonUtil.isContinue();
+		boolean isExist =  (CommonUtil.checkAllUrl(url) || CommonUtil.checkRoadTransUrl(url))&& CommonUtil.isContinue();
 		return isExist;
 	}
 
@@ -53,6 +59,9 @@ public class RequestBodyFilter extends ZuulFilter {
 		String userId = request.getHeader(Constants.HEADER_USER_ID);
 		String body = CommonUtil.getBody(request);
 		BillResultObject responseObject= new BillResultObject();
+
+
+
 		try {
 			try{
 				if(body==null){
@@ -115,7 +124,7 @@ public class RequestBodyFilter extends ZuulFilter {
 						if(products ==null || products.size()==0){
 							throw new ResultCodeException(Constants.ResultDesc.SERVERERROR.getCode(),Constants.ResultDesc.SERVERERROR.getValue(),"数据交互列表为空");
 						}
-						productIds = org.apache.commons.lang.StringUtils.join(products, ",");
+						productIds = StringUtils.join(products, ",");
 						claims.put("productIds", productIds);
 						Calendar calendar = Calendar.getInstance();
 						calendar.add(Calendar.MINUTE, 30);
@@ -130,14 +139,21 @@ public class RequestBodyFilter extends ZuulFilter {
 				return null;
 			} catch (ResultCodeException ex){
 				log.error("resultCodeException:{}",ex);
-				responseObject.setResultCode(ex.getCode());
-				responseObject.setResultMsg(ex.getMessage());
-				responseObject.setTraceId((String)requestContext.get(Constants.HEADER_TRACEID_KEY));
+
+
+					responseObject.setResultCode(ex.getCode());
+					responseObject.setResultMsg(ex.getMessage());
+					responseObject.setTraceId((String)requestContext.get(Constants.HEADER_TRACEID_KEY));
+
+
+
 			}catch (Exception ex) {
 				log.error("Exception:{}",ex);
-				responseObject.setResultCode(Constants.ResultDesc.SERVERERROR.getCode());
-				responseObject.setResultMsg(Constants.ResultDesc.SERVERERROR.getValue());
-				responseObject.setTraceId((String)requestContext.get(Constants.HEADER_TRACEID_KEY));
+
+					responseObject.setResultCode(Constants.ResultDesc.SERVERERROR.getCode());
+					responseObject.setResultMsg(Constants.ResultDesc.SERVERERROR.getValue());
+					responseObject.setTraceId((String)requestContext.get(Constants.HEADER_TRACEID_KEY));
+
 			}
 			helper.responseHandle(responseObject,requestContext,false);
 		} catch (JsonProcessingException e) {

+ 3 - 2
src/main/java/info/aspirecn/iov/yysj/check/info/pre/ResultFilter.java

@@ -4,6 +4,7 @@ import com.fasterxml.jackson.databind.ObjectMapper;
 import com.netflix.zuul.ZuulFilter;
 import com.netflix.zuul.context.RequestContext;
 import info.aspirecn.cloud.yysj.commons.lang.Constants;
+import info.aspirecn.iov.yysj.check.info.common.CommonUtil;
 import info.aspirecn.iov.yysj.check.info.entity.BillResultObject;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -16,7 +17,7 @@ public class ResultFilter extends ZuulFilter {
 
     @Override
     public boolean shouldFilter() {
-        return true;
+    	return true;
     }
 
     @Override
@@ -42,7 +43,7 @@ public class ResultFilter extends ZuulFilter {
 
     @Override
     public int filterOrder() {
-        return FilterConstants.SERVLET_30_WRAPPER_FILTER_ORDER + 5;
+        return FilterConstants.SERVLET_30_WRAPPER_FILTER_ORDER + 7;
     }
 
 }

+ 179 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/pre/RoadTransportFilter.java

@@ -0,0 +1,179 @@
+package info.aspirecn.iov.yysj.check.info.pre;
+
+import java.util.ArrayList;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import javax.servlet.http.HttpServletRequest;
+
+import info.aspirecn.iov.yysj.check.info.entity.BillResultObject;
+import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+import com.netflix.zuul.ZuulFilter;
+import com.netflix.zuul.context.RequestContext;
+
+import info.aspirecn.cloud.yysj.commons.lang.BillItemResult;
+import info.aspirecn.cloud.yysj.commons.lang.Constants;
+import info.aspirecn.cloud.yysj.commons.lang.ProductCheckRequest;
+import info.aspirecn.iov.yysj.check.info.common.ChannelRibbonHandle;
+import info.aspirecn.iov.yysj.check.info.common.CommonUtil;
+import info.aspirecn.iov.yysj.check.info.common.ResultCodeException;
+import info.aspirecn.iov.yysj.check.info.common.TransferParam;
+import info.aspirecn.iov.yysj.check.info.common.ZuulHelper;
+import info.aspirecn.iov.yysj.check.info.entity.CheckDetailLogObject;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject.VerifyResultSet;
+import info.aspirecn.iov.yysj.check.info.entity.RoadTransportObject.VerifyResultSet.Errorresult;
+import info.aspirecn.iov.yysj.paramtransfer.inter.YysjUserActionInterface;
+import info.aspirecn.iov.yysj.paramtransfer.inter.vo.YysjProduct;
+import lombok.extern.slf4j.Slf4j;
+@Slf4j
+public class RoadTransportFilter extends ZuulFilter{
+	@Autowired
+	private ZuulHelper helper;
+	@Autowired
+	private YysjUserActionInterface yysjUserActionInterface;
+	@Autowired
+	private ChannelRibbonHandle channelRibbonHandle;
+	@Autowired
+	private TransferParam transferParam;
+	@Autowired
+	private ObjectMapper mapper;
+	@Override
+	public boolean shouldFilter() {
+		RequestContext requestContext = RequestContext.getCurrentContext();
+		String url = requestContext.getRequest().getRequestURI();
+		return  CommonUtil.checkRoadTransUrl(url);
+	}
+
+	@Override	
+	public Object run() {
+
+		RequestContext requestContext = RequestContext.getCurrentContext();
+		HttpServletRequest request = requestContext.getRequest();
+		
+		//获取流水号
+		String traceId = (String)requestContext.get(Constants.HEADER_TRACEID_KEY);
+		
+		requestContext.set(Constants.Url,request.getRequestURI());
+		
+		//获取userId
+		String userId = request.getHeader(Constants.HEADER_USER_ID);
+		//获取url
+		String url = requestContext.getRequest().getRequestURI();
+		//根据url获取订购项类型
+		int type = helper.getType(url);
+		
+		//响应对象
+
+		
+		try{
+
+			BillResultObject billResultObject = new BillResultObject();
+			VerifyResultSet verifyResultSet =new VerifyResultSet();
+			RoadTransportObject roadTransportObject = new RoadTransportObject(verifyResultSet,null);
+			billResultObject.setTraceId((String)requestContext.get(Constants.HEADER_TRACEID_KEY));
+			try {
+				String consistent = Constants.consistent_code;
+				List<YysjProduct> yysjProducts =yysjUserActionInterface.getYysjProductIdByUserId(userId,type);
+				if(yysjProducts==null || yysjProducts.size()==0){
+					throw new ResultCodeException(Constants.ResultDesc.NO_PERMISSION.getCode(),"未订购核验项","根据类型和用户没有获取到校验资格项");
+
+				}
+				YysjProduct yysjProduct = yysjProducts.get(0);
+				
+				//开始组装请求参数
+				Map<String,String> map = (Map<String,String>)requestContext.get("bodyMap");
+
+				String token = (String) requestContext.get(Constants.HEADER_TOKEN_KEY);
+				List<CheckDetailLogObject>  checkDetails = new ArrayList<CheckDetailLogObject>();
+				Set<String> emptyList = new HashSet<>();
+				Set<String> erroList = new HashSet<>();
+
+					Map<String,Object> cutomeMap=  transferParam.getCustomBody(map,url,emptyList,erroList);
+					if(emptyList.size()!=0){
+						String emptyNode = StringUtils.joinWith(",",emptyList.toArray());
+						throw new ResultCodeException(Constants.ResultDesc.PARAMNULL.getCode(),emptyNode+"必填项为空","存在空值在必须校验的项上"+emptyNode);
+
+					}
+					if(erroList.size()!=0){
+						String emptyNode = StringUtils.joinWith(",",erroList.toArray());
+						throw new ResultCodeException(Constants.ResultDesc.PARAMERROR.getCode(),emptyNode+"参数不符合规格","存在错误的校验项上"+emptyNode);
+
+					}
+
+
+
+					ProductCheckRequest productCheckRequest = new ProductCheckRequest();
+					productCheckRequest.setYysjProductId(yysjProduct.getYysjProductId());
+					productCheckRequest.setProductCode(yysjProduct.getYysjProductCode());
+					List<String> list = yysjProduct.getSjjhProductId();
+					productCheckRequest.setSjjhProductId(list);
+					productCheckRequest.setCustomBody(cutomeMap);
+					String requestBody = mapper.writeValueAsString(productCheckRequest);
+
+					BillItemResult billItemResult = channelRibbonHandle.channelRibbonHandle(token, requestBody, userId, traceId, yysjProduct.getYysjProductId());
+					if("1".equals(billItemResult.getResult())) {//上游返回一致
+						String detail = billItemResult.getDetail();
+						Object object = helper.transResponse(url, detail);
+						verifyResultSet.setCorrectResult(object);
+					}else {
+						consistent = Constants.inconsistent_code;
+						BillItemResult.ErrorResponse errorResponse = billItemResult.getExceptionInformation();
+						String errorInfo = "";
+						if(errorResponse.getCode() == Constants.ErrorCode.Exception.getErrorCode()){
+							errorInfo = Constants.errorInfo;
+						}else if(errorResponse.getCode() == Constants.ErrorCode.MONEYNOTENOUGH.getErrorCode()){
+							errorInfo = Constants.moneyNotEnough;
+						}else {
+							Set<String> resultList = errorResponse.getResultList();
+							Set<String> resultSet = transferParam.resultTransferParam(yysjProduct.getYysjProductCode(),resultList);
+							if (errorResponse.getCode() == Constants.ErrorCode.NULL.getErrorCode()) {
+								errorInfo="数据源" + StringUtils.join(resultSet.toArray(), ",") + "为空";
+							} else {
+								errorInfo="数据源" + StringUtils.join(resultSet.toArray(), ",") + "为不一致";
+							}
+						}
+						Errorresult errorresult = new Errorresult();
+						errorresult.setErrorInfo(errorInfo);
+						verifyResultSet.setErrorResult(errorresult);
+					}
+				request.setAttribute("consistent",consistent);
+				billResultObject.setResultCode(Constants.ResultDesc.SUCCESS.getCode());
+				billResultObject.setResultMsg(Constants.ResultDesc.SUCCESS.getValue());
+				billResultObject.setData(roadTransportObject);
+		} catch (ResultCodeException ex){
+				log.error("resultCodeException:{}",ex);
+				billResultObject.setResultCode(ex.getCode());
+				billResultObject.setResultMsg(ex.getMessage());
+
+		}catch (Exception ex) {
+				log.error("Exception:{}",ex);
+				billResultObject.setResultCode(Constants.ResultDesc.SERVERERROR.getCode());
+				billResultObject.setResultMsg(Constants.ResultDesc.SERVERERROR.getValue());
+
+		}
+		helper.responseHandle(billResultObject, requestContext,false);
+	}catch (JsonProcessingException e) {
+			log.error("解析对象出错,message:{}", e);
+		}
+		return null;
+
+	}
+
+	@Override
+	public String filterType() {
+		return FilterConstants.PRE_TYPE;
+	}
+
+	@Override
+	public int filterOrder() {
+		return FilterConstants.SERVLET_30_WRAPPER_FILTER_ORDER + 6;
+	}
+}

+ 2 - 0
src/main/java/info/aspirecn/iov/yysj/check/info/pre/WayBillFilter.java

@@ -164,6 +164,8 @@ public class WayBillFilter extends ZuulFilter {
 							concreteCheckResult.setErrorInfo(Constants.errorInfo);
 						}else if(errorResponse.getCode() == Constants.ErrorCode.WEIGTHOVER.getErrorCode()){
 							concreteCheckResult.setErrorInfo(Constants.weightOverInfo);
+						}else if(errorResponse.getCode() == Constants.ErrorCode.MONEYNOTENOUGH.getErrorCode()){
+							concreteCheckResult.setErrorInfo(Constants.moneyNotEnough);
 						}else {
 							Set<String> resultList = errorResponse.getResultList();
 							Set<String> resultSet = transferParam.resultTransferParam(yysjProduct.getYysjProductCode(),resultList);

+ 34 - 0
src/main/resources/config/logback-access-spring.xml

@@ -0,0 +1,34 @@
+<!DOCTYPE configuration>
+<configuration>
+    <!-- <include resource="org/springframework/boot/logging/logback/console-appender.xml" />
+    <include resource="org/springframework/boot/logging/logback/file-appender.xml" /> -->
+
+    <property name="LOG_FILE" value="${LOG_FILE:-${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}/spring.log}"/>
+
+
+    <springProperty scope="context" name="CONSOLE_LOG_PATTERN" source="server.tomcat.accesslog.pattern" defaultValue="common" />
+
+    <springProperty scope="context" name="FILE_LOG_PATTERN" source="server.tomcat.accesslog.pattern" defaultValue="common" />
+
+    <statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
+    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+        </encoder>
+    </appender>
+
+    <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <encoder>
+            <pattern>${FILE_LOG_PATTERN}</pattern>
+        </encoder>
+        <file>${LOG_FILE}</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz</fileNamePattern>
+            <maxFileSize>${LOG_FILE_MAX_SIZE:-10MB}</maxFileSize>
+            <maxHistory>${LOG_FILE_MAX_HISTORY:-30}</maxHistory>
+        </rollingPolicy>
+    </appender>
+    ​
+    <appender-ref ref="CONSOLE" />
+    <appender-ref ref="FILE" />
+</configuration>