正在显示
8 个修改的文件
包含
81 行增加
和
10 行删除
@@ -77,7 +77,9 @@ feign.httpclient.enabled=true | @@ -77,7 +77,9 @@ feign.httpclient.enabled=true | ||
77 | # 是否启用hystrix | 77 | # 是否启用hystrix |
78 | feign.hystrix.enabled=true | 78 | feign.hystrix.enabled=true |
79 | # 请求连接超时时间(毫秒) | 79 | # 请求连接超时时间(毫秒) |
80 | -feign.httpclient.connection-timeout=3000 | 80 | +feign.httpclient.connection-timeout=5000 |
81 | +# 设置 Hystrix 的超时时间为 5000 毫秒 | ||
82 | +hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=5000 | ||
81 | 83 | ||
82 | #logback日志配置 | 84 | #logback日志配置 |
83 | 85 |
@@ -2,6 +2,7 @@ package com.sy.feign; | @@ -2,6 +2,7 @@ package com.sy.feign; | ||
2 | 2 | ||
3 | import feign.RequestInterceptor; | 3 | import feign.RequestInterceptor; |
4 | import feign.RequestTemplate; | 4 | import feign.RequestTemplate; |
5 | +import feign.Retryer; | ||
5 | import org.springframework.context.annotation.Bean; | 6 | import org.springframework.context.annotation.Bean; |
6 | import org.springframework.context.annotation.Configuration; | 7 | import org.springframework.context.annotation.Configuration; |
7 | import org.springframework.web.context.request.RequestContextHolder; | 8 | import org.springframework.web.context.request.RequestContextHolder; |
@@ -12,6 +13,17 @@ import javax.servlet.http.HttpServletRequest; | @@ -12,6 +13,17 @@ import javax.servlet.http.HttpServletRequest; | ||
12 | @Configuration | 13 | @Configuration |
13 | public class NmmsInterceptor { | 14 | public class NmmsInterceptor { |
14 | 15 | ||
16 | + | ||
17 | + /** | ||
18 | + * 设置feign重试次数 | ||
19 | + * @return | ||
20 | + */ | ||
21 | + @Bean | ||
22 | + public Retryer feignRetryer() { | ||
23 | + // 设置最大重试次数为3次 | ||
24 | + return new Retryer.Default(1000, 5000, 3); | ||
25 | + } | ||
26 | + | ||
15 | @Bean | 27 | @Bean |
16 | public RequestInterceptor requestInterceptor() { | 28 | public RequestInterceptor requestInterceptor() { |
17 | return new RequestInterceptor() { | 29 | return new RequestInterceptor() { |
@@ -9,6 +9,7 @@ import com.sy.model.LandBusinessTypeList | @@ -9,6 +9,7 @@ import com.sy.model.LandBusinessTypeList | ||
9 | import com.sy.model.LandRoadVe | 9 | import com.sy.model.LandRoadVe |
10 | import com.sy.response.ResultJson | 10 | import com.sy.response.ResultJson |
11 | import com.sy.service.CommandLogService | 11 | import com.sy.service.CommandLogService |
12 | +import com.sy.service.EnginCheckService | ||
12 | import com.sy.service.RedisService | 13 | import com.sy.service.RedisService |
13 | import com.sy.service.feigin.G2X81FeignService | 14 | import com.sy.service.feigin.G2X81FeignService |
14 | import com.sy.service.feigin.StationManageFeignService | 15 | import com.sy.service.feigin.StationManageFeignService |
@@ -47,9 +48,19 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | @@ -47,9 +48,19 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | ||
47 | */ | 48 | */ |
48 | GatherInfo info = (GatherInfo) executeParams.get("GatherInfo"); | 49 | GatherInfo info = (GatherInfo) executeParams.get("GatherInfo"); |
49 | LandRoadVe ve = (LandRoadVe) executeParams.get("LandRoadVe"); | 50 | LandRoadVe ve = (LandRoadVe) executeParams.get("LandRoadVe"); |
51 | + | ||
50 | ApplicationContext context = getContext(); | 52 | ApplicationContext context = getContext(); |
51 | G2X81FeignService g2X81FeignService = context.getBean(G2X81FeignService.class); | 53 | G2X81FeignService g2X81FeignService = context.getBean(G2X81FeignService.class); |
52 | 54 | ||
55 | + EnginCheckService enginCheckService = context.getBean(EnginCheckService.class); | ||
56 | + | ||
57 | + /** | ||
58 | + * 写入本地验放通过信息 | ||
59 | + */ | ||
60 | + enginCheckService.commandlog(info,true,"双验放:本地验放通过:等待金二验放指令",executeParams); | ||
61 | + | ||
62 | + | ||
63 | + | ||
53 | if (info!=null){ | 64 | if (info!=null){ |
54 | //缓存X21 的 seqn 需要作为异步X82回执验放时用到的信息 | 65 | //缓存X21 的 seqn 需要作为异步X82回执验放时用到的信息 |
55 | cacheWithSeqno(info); | 66 | cacheWithSeqno(info); |
@@ -92,6 +103,8 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | @@ -92,6 +103,8 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | ||
92 | commandLogService.commandlog(info,result,reason,landBusinessTypeList,null,0.0,0.0,0.0,0.0); | 103 | commandLogService.commandlog(info,result,reason,landBusinessTypeList,null,0.0,0.0,0.0,0.0); |
93 | } | 104 | } |
94 | 105 | ||
106 | + | ||
107 | + | ||
95 | String x22TransToX81(GatherInfo gatherInfo,LandRoadVe ve){ | 108 | String x22TransToX81(GatherInfo gatherInfo,LandRoadVe ve){ |
96 | log.info("[SEQN]-处理X21报文:{}",gatherInfo.getSeqno()); | 109 | log.info("[SEQN]-处理X21报文:{}",gatherInfo.getSeqno()); |
97 | //当前时间作为X81申报时间 | 110 | //当前时间作为X81申报时间 |
@@ -115,15 +128,15 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | @@ -115,15 +128,15 @@ class G2X81Notice extends Script implements ChannelCheckScript{ | ||
115 | JSONObject yard = chanel.getJSONObject("yard"); | 128 | JSONObject yard = chanel.getJSONObject("yard"); |
116 | String stationG2 = yard.getString("stationIdG2"); | 129 | String stationG2 = yard.getString("stationIdG2"); |
117 | log.info("[G2-YARD]-{}",stationG2); | 130 | log.info("[G2-YARD]-{}",stationG2); |
131 | + log.info("[VE-RFID-NO]:车辆电子车牌号:{}",ve.getVeCustomsNo()); | ||
118 | 132 | ||
119 | - log.info("[G2-TEMPLATE]-{}",G2X81Template.template) | ||
120 | String x81XML= G2X81Template.template.replace("#{ie_flag}",gatherInfo.getIetype()) | 133 | String x81XML= G2X81Template.template.replace("#{ie_flag}",gatherInfo.getIetype()) |
121 | .replace("#{area_id}",stationG2) | 134 | .replace("#{area_id}",stationG2) |
122 | .replace("#{chnl_no}",channelG2) | 135 | .replace("#{chnl_no}",channelG2) |
123 | .replace("#{session_id}",gatherInfo.getSeqno()) | 136 | .replace("#{session_id}",gatherInfo.getSeqno()) |
124 | .replace("#{ve_license_no}",gatherInfo.getVename()) | 137 | .replace("#{ve_license_no}",gatherInfo.getVename()) |
125 | .replace("#{gross_wt}",gatherInfo.getGrosswt().toString()) | 138 | .replace("#{gross_wt}",gatherInfo.getGrosswt().toString()) |
126 | - .replace("#{rfid_id}",gatherInfo.getCarecno()) | 139 | + .replace("#{rfid_id}",ve.getVeCustomsNo()) |
127 | .replace("#{ve_wt}",ve.getSelfWt()) | 140 | .replace("#{ve_wt}",ve.getSelfWt()) |
128 | .replace("#{operate_time}",startTime); | 141 | .replace("#{operate_time}",startTime); |
129 | log.info("[X21-TO-X81]-{}",x81XML); | 142 | log.info("[X21-TO-X81]-{}",x81XML); |
@@ -5,11 +5,9 @@ import com.sy.model.GatherInfo; | @@ -5,11 +5,9 @@ import com.sy.model.GatherInfo; | ||
5 | import com.sy.model.X82Feedback; | 5 | import com.sy.model.X82Feedback; |
6 | import com.sy.service.X82Service; | 6 | import com.sy.service.X82Service; |
7 | import com.sy.service.router.MessageRouterG2; | 7 | import com.sy.service.router.MessageRouterG2; |
8 | -import com.sy.socket.CommandClient; | ||
9 | import com.sy.utils.Base64Tool; | 8 | import com.sy.utils.Base64Tool; |
10 | import lombok.extern.slf4j.Slf4j; | 9 | import lombok.extern.slf4j.Slf4j; |
11 | import org.apache.commons.lang.StringUtils; | 10 | import org.apache.commons.lang.StringUtils; |
12 | -import org.springframework.beans.factory.annotation.Autowired; | ||
13 | import org.springframework.stereotype.Component; | 11 | import org.springframework.stereotype.Component; |
14 | 12 | ||
15 | @Component | 13 | @Component |
@@ -121,6 +121,14 @@ public class LandRoadVe { | @@ -121,6 +121,14 @@ public class LandRoadVe { | ||
121 | 121 | ||
122 | private Date updateDate; | 122 | private Date updateDate; |
123 | 123 | ||
124 | + private String veState; | ||
125 | + | ||
126 | + private String veCustomsNo; | ||
127 | + | ||
128 | + private String icCode; | ||
129 | + | ||
130 | + private String lockNum; | ||
131 | + | ||
124 | public String getVeState() { | 132 | public String getVeState() { |
125 | return veState; | 133 | return veState; |
126 | } | 134 | } |
@@ -129,8 +137,6 @@ public class LandRoadVe { | @@ -129,8 +137,6 @@ public class LandRoadVe { | ||
129 | this.veState = veState; | 137 | this.veState = veState; |
130 | } | 138 | } |
131 | 139 | ||
132 | - private String veState; | ||
133 | - | ||
134 | public String getId() { | 140 | public String getId() { |
135 | return id; | 141 | return id; |
136 | } | 142 | } |
@@ -602,4 +608,28 @@ public class LandRoadVe { | @@ -602,4 +608,28 @@ public class LandRoadVe { | ||
602 | public void setUpdateDate(Date updateDate) { | 608 | public void setUpdateDate(Date updateDate) { |
603 | this.updateDate = updateDate; | 609 | this.updateDate = updateDate; |
604 | } | 610 | } |
611 | + | ||
612 | + public String getVeCustomsNo() { | ||
613 | + return veCustomsNo; | ||
614 | + } | ||
615 | + | ||
616 | + public void setVeCustomsNo(String veCustomsNo) { | ||
617 | + this.veCustomsNo = veCustomsNo; | ||
618 | + } | ||
619 | + | ||
620 | + public String getIcCode() { | ||
621 | + return icCode; | ||
622 | + } | ||
623 | + | ||
624 | + public void setIcCode(String icCode) { | ||
625 | + this.icCode = icCode; | ||
626 | + } | ||
627 | + | ||
628 | + public String getLockNum() { | ||
629 | + return lockNum; | ||
630 | + } | ||
631 | + | ||
632 | + public void setLockNum(String lockNum) { | ||
633 | + this.lockNum = lockNum; | ||
634 | + } | ||
605 | } | 635 | } |
@@ -84,7 +84,7 @@ public class EnginCheckServiceImpl implements EnginCheckService { | @@ -84,7 +84,7 @@ public class EnginCheckServiceImpl implements EnginCheckService { | ||
84 | * 核销判定需要另外执行.这里需要跳过. | 84 | * 核销判定需要另外执行.这里需要跳过. |
85 | */ | 85 | */ |
86 | if (ruleChannelConfigs.get(i).ruleConfig != null && "核销判定".equals(ruleChannelConfigs.get(i).ruleConfig.getRuleType())){ | 86 | if (ruleChannelConfigs.get(i).ruleConfig != null && "核销判定".equals(ruleChannelConfigs.get(i).ruleConfig.getRuleType())){ |
87 | - return true; | 87 | + continue; |
88 | } | 88 | } |
89 | // 执行脚本中指定的方法 changeProduct | 89 | // 执行脚本中指定的方法 changeProduct |
90 | EngineExecutorResult executorResult = engineExecutor.execute( | 90 | EngineExecutorResult executorResult = engineExecutor.execute( |
@@ -62,6 +62,9 @@ | @@ -62,6 +62,9 @@ | ||
62 | <result column="UPDATE_BY" jdbcType="VARCHAR" property="updateBy" /> | 62 | <result column="UPDATE_BY" jdbcType="VARCHAR" property="updateBy" /> |
63 | <result column="UPDATE_DATE" jdbcType="TIMESTAMP" property="updateDate" /> | 63 | <result column="UPDATE_DATE" jdbcType="TIMESTAMP" property="updateDate" /> |
64 | <result column="VE_STATE" jdbcType="VARCHAR" property="veState" /> | 64 | <result column="VE_STATE" jdbcType="VARCHAR" property="veState" /> |
65 | + <result column="VE_CUSTOMS_NO" jdbcType="VARCHAR" property="veCustomsNo" /> | ||
66 | + <result column="IC_CODE" jdbcType="VARCHAR" property="icCode" /> | ||
67 | + <result column="LOCK_NUM" jdbcType="VARCHAR" property="lockNum" /> | ||
65 | </resultMap> | 68 | </resultMap> |
66 | <sql id="Base_Column_List"> | 69 | <sql id="Base_Column_List"> |
67 | ID, EPORT_ID, MAIN_PORT, CO_CODE, VE_TARGET_NO, DOMESTIC_LISENCE_NO, DOMESTIC_LICENSE_COLOR, | 70 | ID, EPORT_ID, MAIN_PORT, CO_CODE, VE_TARGET_NO, DOMESTIC_LISENCE_NO, DOMESTIC_LICENSE_COLOR, |
@@ -73,7 +76,7 @@ | @@ -73,7 +76,7 @@ | ||
73 | FRONT_45C_PIC, BACK_45C_PIC, OIL_BOX_PIC, VE_BOTTOM_PIC, MEMO, PROPOSER, PROPOSE_TIME, | 76 | FRONT_45C_PIC, BACK_45C_PIC, OIL_BOX_PIC, VE_BOTTOM_PIC, MEMO, PROPOSER, PROPOSE_TIME, |
74 | VE_CLASS_FLAG, OPERATION_TYPE, TRAILER_LICENSE_NO, TRAILER_FRAME_NO, APPRO_NO_PIC, | 77 | VE_CLASS_FLAG, OPERATION_TYPE, TRAILER_LICENSE_NO, TRAILER_FRAME_NO, APPRO_NO_PIC, |
75 | VE_FRAME_NO_PIC, MOTOR_NO_PIC, FOREIGN_LICENSE_PIC, NATIONALITY, RETURNMESSAGE, CREATE_BY, | 78 | VE_FRAME_NO_PIC, MOTOR_NO_PIC, FOREIGN_LICENSE_PIC, NATIONALITY, RETURNMESSAGE, CREATE_BY, |
76 | - CREATE_DATE, UPDATE_BY, UPDATE_DATE,VE_STATE | 79 | + CREATE_DATE, UPDATE_BY, UPDATE_DATE,VE_STATE,VE_CUSTOMS_NO,IC_CODE,LOCK_NUM |
77 | </sql> | 80 | </sql> |
78 | <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap"> | 81 | <select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap"> |
79 | select | 82 | select |
@@ -47,7 +47,7 @@ | @@ -47,7 +47,7 @@ | ||
47 | - rule_config、 | 47 | - rule_config、 |
48 | - rule_channel_config、 | 48 | - rule_channel_config、 |
49 | - land_business_type_config | 49 | - land_business_type_config |
50 | - 3. 打开二维码正式环境获取接口,申请接口\取消申请接口\异常处理接口 | 50 | + 3. 打开二维码正式环境获取接口,申请接口\取消申请接口\异常处理接口\车辆备案接口 |
51 | 4. 打包编译 | 51 | 4. 打包编译 |
52 | 5. 上传正式服务器 | 52 | 5. 上传正式服务器 |
53 | 7. 备份正在运行版本 | 53 | 7. 备份正在运行版本 |
@@ -73,3 +73,16 @@ | @@ -73,3 +73,16 @@ | ||
73 | - 配置业务类型管理权限 | 73 | - 配置业务类型管理权限 |
74 | - 重新配置验放端规则信息到redis | 74 | - 重新配置验放端规则信息到redis |
75 | 75 | ||
76 | + | ||
77 | +# VER 6.1 Date:2023-08-21 周三 | ||
78 | + - 功能 | ||
79 | + ## 新增金二验放规则 | ||
80 | + ## 新增金二回执处理接口 | ||
81 | + ## 针对双验放规则进行升级改造 | ||
82 | + ## 做一线进出口业务的需要备案电子车牌信息 | ||
83 | + - 数据库 | ||
84 | + 1. 车辆备案表新增电子车牌字段 | ||
85 | + - 验放服务 | ||
86 | + 1. 增加熔断器配置项 | ||
87 | + # 设置 Hystrix 的超时时间为 5000 毫秒 | ||
88 | + hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=5000 |
-
请 注册 或 登录 后发表评论