正在显示
8 个修改的文件
包含
214 行增加
和
0 行删除
1 | +package com.sy.model; | ||
2 | + | ||
3 | +public enum BusinessTypeEnum { | ||
4 | + /** | ||
5 | + * 业务类型枚举 | ||
6 | + * todo: 代码暂时不正确 | ||
7 | + */ | ||
8 | + IMPORT_LOCAL_DELIVER("进口提货","100001"), | ||
9 | + EXPORT_LOCAL("出口送货","100002"); | ||
10 | + /** | ||
11 | + * 业务类型 | ||
12 | + */ | ||
13 | + private String name; | ||
14 | + /** | ||
15 | + * 对应金二业务代码 | ||
16 | + */ | ||
17 | + private String code; | ||
18 | + | ||
19 | + BusinessTypeEnum(String name, String code) { | ||
20 | + this.name = name; | ||
21 | + this.code = code; | ||
22 | + } | ||
23 | + | ||
24 | + public String getName() { | ||
25 | + return name; | ||
26 | + } | ||
27 | + | ||
28 | + public String getCode() { | ||
29 | + return code; | ||
30 | + } | ||
31 | +} |
1 | +package com.sy.service; | ||
2 | + | ||
3 | +/** | ||
4 | + * @author mrz | ||
5 | + * 描述:抬杆放行判定接口 | ||
6 | + */ | ||
7 | + | ||
8 | +public interface BayonetReleaseCheck { | ||
9 | + | ||
10 | + /** | ||
11 | + * 车辆过卡信息抬杆指令判定_适配器 | ||
12 | + * @param businesstype 申请业务类型 | ||
13 | + * @param ieType 进出卡口类型 I 进 E 出 | ||
14 | + */ | ||
15 | + public void bayonetCrossCheck(String businesstype,String ieType); | ||
16 | + | ||
17 | + | ||
18 | + /** | ||
19 | + * 车辆信息及车辆备案及黑名单判定 | ||
20 | + * @param veName 车牌号 | ||
21 | + */ | ||
22 | + public void veInfoCHeck(String veName); | ||
23 | +} |
1 | +package com.sy.service; | ||
2 | + | ||
3 | +/** | ||
4 | + * @author mrz | ||
5 | + * 描述:抬杆放行判定适配器 | ||
6 | + */ | ||
7 | + | ||
8 | +public interface BayonetReleaseCheckAdvanced { | ||
9 | + | ||
10 | + /** | ||
11 | + * 进口清关提货 | ||
12 | + * 车辆过卡信息抬杆指令判定_适配器 | ||
13 | + * @param ieType 进出卡口类型 I 进 E 出 | ||
14 | + */ | ||
15 | + public void importLocalDelivery(String ieType); | ||
16 | + | ||
17 | + /** | ||
18 | + * 出口清关送货 | ||
19 | + */ | ||
20 | + public void exportLocalCustoms(String ieType); | ||
21 | + | ||
22 | +} |
1 | +package com.sy.service.adapter; | ||
2 | + | ||
3 | +import com.sy.service.BayonetReleaseCheck; | ||
4 | +import com.sy.service.BayonetReleaseCheckAdvanced; | ||
5 | + | ||
6 | +/** | ||
7 | + * 车辆过卡路由适配器 | ||
8 | + * @author mrz | ||
9 | + * @date 2022-08-07 | ||
10 | + */ | ||
11 | +public class BayonetReleaseCheckAdapter implements BayonetReleaseCheck { | ||
12 | + private static final String IMPORT_LOCAL_DELIVER = "进口提货"; | ||
13 | + private static final String EXPORT_LOCAL = "出口送货"; | ||
14 | + | ||
15 | + private BayonetReleaseCheckAdvanced bayonetReleaseCheckAdvanced; | ||
16 | + | ||
17 | + public BayonetReleaseCheckAdapter(String businesstype) { | ||
18 | + switch (businesstype){ | ||
19 | + case "进口提货": | ||
20 | + bayonetReleaseCheckAdvanced = new BayonetReleaseCheckImportCustomsClearance(); | ||
21 | + break; | ||
22 | + case "出口送货": | ||
23 | + bayonetReleaseCheckAdvanced = new BayonetReleaseCheckExportCustomsClearance(); | ||
24 | + break; | ||
25 | + default: | ||
26 | + System.out.println("无法处理的业务类型"); | ||
27 | + break; | ||
28 | + } | ||
29 | + | ||
30 | + } | ||
31 | + | ||
32 | + @Override | ||
33 | + public void bayonetCrossCheck(String businesstype, String ieType) { | ||
34 | + switch (businesstype){ | ||
35 | + case "进口提货": | ||
36 | + bayonetReleaseCheckAdvanced.importLocalDelivery(ieType); | ||
37 | + break; | ||
38 | + case "出口送货": | ||
39 | + bayonetReleaseCheckAdvanced.exportLocalCustoms(ieType); | ||
40 | + default: | ||
41 | + break; | ||
42 | + } | ||
43 | + } | ||
44 | + | ||
45 | + @Override | ||
46 | + public void veInfoCHeck(String veName) { | ||
47 | + | ||
48 | + } | ||
49 | +} |
1 | +package com.sy.service.adapter; | ||
2 | + | ||
3 | +import com.sy.service.BayonetReleaseCheckAdvanced; | ||
4 | + | ||
5 | +/** | ||
6 | + * 本地出口清关适配器处理器 | ||
7 | + */ | ||
8 | +public class BayonetReleaseCheckExportCustomsClearance implements BayonetReleaseCheckAdvanced { | ||
9 | + | ||
10 | + private static final org.slf4j.Logger log4 = org.slf4j.LoggerFactory.getLogger(BayonetReleaseCheckExportCustomsClearance.class); | ||
11 | + | ||
12 | + | ||
13 | + @Override | ||
14 | + public void importLocalDelivery( String ieType) { | ||
15 | + log4.info("[Adapter]-进口-{}-本地-清关适配器处理,什么也不做",ieType); | ||
16 | + | ||
17 | + } | ||
18 | + | ||
19 | + @Override | ||
20 | + public void exportLocalCustoms(String ieType) { | ||
21 | + log4.info("[Adapter]-出口-{}-本地-清关适配器处理,处理出口送货清关业务",ieType); | ||
22 | + | ||
23 | + } | ||
24 | +} |
1 | +package com.sy.service.adapter; | ||
2 | + | ||
3 | +import com.sy.service.BayonetReleaseCheck; | ||
4 | +import org.slf4j.Logger; | ||
5 | +import org.slf4j.LoggerFactory; | ||
6 | + | ||
7 | +/** | ||
8 | + * 业务类型抬杆指令处理入口 | ||
9 | + * @author mrz | ||
10 | + */ | ||
11 | +public class BayonetReleaseCheckHandle implements BayonetReleaseCheck { | ||
12 | + private static final Logger log4 = LoggerFactory.getLogger(BayonetReleaseCheckHandle.class); | ||
13 | + | ||
14 | + private BayonetReleaseCheckAdapter bayonetReleaseCheckAdapter; | ||
15 | + | ||
16 | + @Override | ||
17 | + public void bayonetCrossCheck(String businesstype, String ieType) { | ||
18 | + | ||
19 | + bayonetReleaseCheckAdapter = new BayonetReleaseCheckAdapter(businesstype); | ||
20 | + bayonetReleaseCheckAdapter.bayonetCrossCheck(businesstype,ieType); | ||
21 | + | ||
22 | + } | ||
23 | + | ||
24 | + @Override | ||
25 | + public void veInfoCHeck(String veName) { | ||
26 | + | ||
27 | + } | ||
28 | +} |
1 | +package com.sy.service.adapter; | ||
2 | + | ||
3 | +import com.sy.service.BayonetReleaseCheckAdvanced; | ||
4 | + | ||
5 | +/** | ||
6 | + * 进口清关适配器处理器 | ||
7 | + */ | ||
8 | +public class BayonetReleaseCheckImportCustomsClearance implements BayonetReleaseCheckAdvanced { | ||
9 | + | ||
10 | + private static final org.slf4j.Logger log4 = org.slf4j.LoggerFactory.getLogger(BayonetReleaseCheckImportCustomsClearance.class); | ||
11 | + | ||
12 | + @Override | ||
13 | + public void importLocalDelivery( String ieType) { | ||
14 | + log4.info("[Adapter]-进口-{}-本地-清关适配器处理,处理本地清关业务",ieType); | ||
15 | + } | ||
16 | + | ||
17 | + @Override | ||
18 | + public void exportLocalCustoms(String ieType) { | ||
19 | + log4.info("[Adapter]-出口-{}-本地清关适配器处理,什么也不做",ieType); | ||
20 | + | ||
21 | + } | ||
22 | +} |
1 | +package com.sy.service.impl; | ||
2 | + | ||
3 | +import com.sy.service.adapter.BayonetReleaseCheckHandle; | ||
4 | +import org.junit.jupiter.api.Test; | ||
5 | + | ||
6 | + | ||
7 | +class BayonetReleaseCheckTest { | ||
8 | + | ||
9 | + @Test | ||
10 | + void bayonetCrossCheck() { | ||
11 | + BayonetReleaseCheckHandle bayonetReleaseCheck = new BayonetReleaseCheckHandle(); | ||
12 | + bayonetReleaseCheck.bayonetCrossCheck("进口提货","I"); | ||
13 | + bayonetReleaseCheck.bayonetCrossCheck("出口送货","I"); | ||
14 | + } | ||
15 | +} |
-
请 注册 或 登录 后发表评论