From 3c74bcb86928c153c180b939c651d586c39de937 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期二, 27 二月 2024 14:03:59 +0800 Subject: [PATCH] ERP接口 --- server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java | 97 +++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 91 insertions(+), 6 deletions(-) diff --git a/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java b/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java index d5a038b..a1f5f3f 100644 --- a/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java +++ b/server/dmvisit_service/src/main/java/com/doumee/core/utils/Constants.java @@ -135,10 +135,27 @@ * 鍒ゆ柇鏄惁涓烘湁鏁堣溅鐗屽彿 */ public static boolean checkCarNo(String str) { - String patt="^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹宸濋潚钘忕惣瀹佺Е宸漖\\\\d{5}[A-Z]$"; - Pattern r = Pattern.compile(patt); - Matcher matcher = r.matcher(str); - return matcher.find(); +// String patt="^[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹宸濋潚钘忕惣瀹佺Е宸漖\\\\d{5}[A-Z]$"; +// Pattern r = Pattern.compile(patt); +// Matcher matcher = r.matcher(str); +// String regex = "^[\u4e00-\u9fa5]{1}[A-Z]{1}[A-HJ-NP-Z]{1}[A-HJ-NP-Z0-9]{4}[D0-9X]$"; +// Pattern pattern = Pattern.compile(regex); +// Matcher matcher = pattern.matcher(str); +// boolean isMatcher = matcher.matches(); +// return isMatcher; + + + if (str.length() >= 7 && str.length() <= 8){ + Pattern pattern = Pattern.compile("^([浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[a-zA-Z](([ABCDF]((?![IO])[a-zA-Z0-9](?![IO]))[0-9]{4})|([0-9]{5}[ABCDF]))|[浜触娌笣鍐�璞簯杈介粦婀樼殩椴佹柊鑻忔禉璧i剛妗傜敇鏅嬭挋闄曞悏闂借吹绮ら潚钘忓窛瀹佺惣浣块A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9鎸傚璀︽腐婢砞{1})$"); + Matcher m = pattern.matcher(str); + if (!m.matches()){ + return false; + } + return true; + }else { + return false; + } + } public static String getTuominStr(String s){ @@ -328,10 +345,78 @@ int otherDeal = 4;//浠栦汉宸插鐞� } + /** + * 鑾峰彇杞︾墝绫诲瀷淇℃伅 + * + * @param plateNo + * @return 杩斿洖null锛岃〃绀鸿溅鐗屼笉鍖归厤 + */ + public static VehiclePlateNoEnum getVehiclePlateNo(String plateNo) { + for (VehiclePlateNoEnum vehiclePlateNoEnum : VehiclePlateNoEnum.values()) { + Matcher matcher = vehiclePlateNoEnum.pattern.matcher(plateNo); + if (matcher.find()) { + return vehiclePlateNoEnum; + } + } + return null; + } + + + public enum VehiclePlateNoEnum { + /** + * 鍖归厤姘戠敤杞︾墝鍜屼娇棣嗚溅鐗� + * 1銆佺涓�浣嶄负姹夊瓙鐪佷唤缂╁啓 + * 2銆佺浜屼綅涓哄ぇ鍐欏瓧姣嶅煄甯傜紪鐮� + * 3銆佸悗闈㈡槸5浣嶄粎鍚瓧姣嶅拰鏁板瓧鐨勭粍鍚� + */ + CIVIL_LICENSE_PLATE_AND_EMBASSY_LICENSE_PLATE(1, "姘戠敤杞︾墝鍜屼娇棣嗚溅鐗�", Pattern.compile("^[浜触鍐�鏅嬭挋杈藉悏榛戞勃鑻忔禉鐨栭椊璧i瞾璞剛婀樼菠妗傜惣宸濊吹浜戞笣钘忛檿鐢橀潚瀹佹柊]{1}[A-Z]{1}[0-9a-zA-Z]{5}$")), + /** + * 鍖归厤鐗圭杞︾墝(鎸�,璀�,瀛�,棰�,娓�,婢�) + */ + SPECIAL_LICENSE_PLATES(2, "鐗圭杞︾墝", Pattern.compile("^[浜触鍐�鏅嬭挋杈藉悏榛戞勃鑻忔禉鐨栭椊璧i瞾璞剛婀樼菠妗傜惣宸濊吹浜戞笣钘忛檿鐢橀潚瀹佹柊]{1}[A-Z]{1}[0-9a-zA-Z]{4}[鎸傝瀛﹂娓境]{1}$")), + /** + * 鍖归厤 + */ + ARMED_POLICE_CAR(3, "姝﹁杞︾墝", Pattern.compile("^WJ[浜触鍐�鏅嬭挋杈藉悏榛戞勃鑻忔禉鐨栭椊璧i瞾璞剛婀樼菠妗傜惣宸濊吹浜戞笣钘忛檿鐢橀潚瀹佹柊]?[0-9a-zA-Z]{5}$")), + /** + * 鍖归厤鍐涚墝 + */ + MILITARY_CAR(4, "鍐涚敤杞︾墝", Pattern.compile("^[A-Z]{2}[0-9]{5}$")), + /** + * 灏忓瀷鏂拌兘婧愯溅 + * 1銆佸尮閰嶆柊鑳芥簮杞﹁締6浣嶈溅鐗� + */ + SMALL_NEW_ENERGY_VEHICLE(5, "灏忓瀷鏂拌兘婧愯溅鐗�", Pattern.compile("^[浜触鍐�鏅嬭挋杈藉悏榛戞勃鑻忔禉鐨栭椊璧i瞾璞剛婀樼菠妗傜惣宸濊吹浜戞笣钘忛檿鐢橀潚瀹佹柊]{1}[A-Z]{1}[DF]{1}[0-9a-zA-Z]{5}$")), + /** + * 澶у瀷鏂拌兘婧愯溅 + */ + LARGE_NEW_ENERGY_VEHICLE(6, "澶у瀷鏂拌兘婧愯溅鐗�", Pattern.compile("^[浜触鍐�鏅嬭挋杈藉悏榛戞勃鑻忔禉鐨栭椊璧i瞾璞剛婀樼菠妗傜惣宸濊吹浜戞笣钘忛檿鐢橀潚瀹佹柊]{1}[A-Z]{1}[0-9a-zA-Z]{5}[DF]{1}$")); + private int code; + + private String description; + + private Pattern pattern; + + VehiclePlateNoEnum(int code, String description, Pattern pattern) { + this.code = code; + this.description = description; + this.pattern = pattern; + } + + public int getCode() { + return code; + } + + public String getDescription() { + return description; + } + } public static void main(String[] args) { - System.out.println(Constants.checkCarNo("婀楤40D17")); - System.out.println(Constants.checkCarNo("鐨朅P0637")); + System.out.println(Constants.getVehiclePlateNo("婀楤D40D17").getDescription()); + + System.out.println(Constants.getVehiclePlateNo("婀楤140D17").getDescription()); + System.out.println(Constants.getVehiclePlateNo("瀹緼P0637").getDescription()); } -- Gitblit v1.9.3