正在显示
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 | +} |
-
请 注册 或 登录 后发表评论