From 10c28ce3d0b384584c77ce9111a66a0641250752 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 27 二月 2025 18:30:32 +0800
Subject: [PATCH] 最新版本541200007

---
 server/system_service/src/main/java/com/doumee/core/utils/Constants.java |  511 ++++++++++++++++++++++++++++++++++++++++++++++----------
 1 files changed, 414 insertions(+), 97 deletions(-)

diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
index 57c23f5..b66f5bf 100644
--- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
+++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -1,26 +1,17 @@
 package com.doumee.core.utils;
 
 
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.doumee.core.model.LoginUserInfo;
 import com.fasterxml.jackson.annotation.JsonInclude;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.PropertyNamingStrategy;
-import io.swagger.models.auth.In;
-import org.apache.batik.util.Platform;
+import net.sourceforge.pinyin4j.PinyinHelper;
 import org.apache.commons.lang3.StringUtils;
-import org.springframework.util.CollectionUtils;
 
 import java.io.IOException;
 import java.math.BigDecimal;
-import java.net.URLDecoder;
+import java.text.Collator;
 import java.text.SimpleDateFormat;
-import java.util.ArrayList;
-import java.util.Arrays;
-import  java.util.Date;
-import java.util.List;
-import java.util.Random;
 import java.util.*;
 import java.util.Date;
 import java.util.regex.Matcher;
@@ -30,24 +21,35 @@
     public static final String HEADER_USER_TOKEN = "dm_user_token";
     public static final String REDIS_TOKEN_KEY = "token_";
     public static final String REDIS_HK_TOKEN_KEY = "hk_token_";
+    public static final String HK_TOKEN_VALIDITY = "HK_TOKEN_VALIDITY";
     public static final String[]  ALL_SPELL_LIST_FIRST = new String[]{"A", "B", "C", "D", "E", "F", "G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"};
     public static final int ZERO = 0 ;
     public static final int ONE = 1 ;
     public static final int TWO = 2 ;
     public static final String HK_PARAM ="HK_PARAM" ;
+    public static final String LED_CONTENT_SPEED ="LED_CONTENT_SPEED" ;
     public static final String HK_HOST ="HK_HOST" ;
     public static final String HK_APPKEY ="HK_APPKEY" ;
+    public static final String LOGIN_OUT_URL ="LOGIN_OUT" ;
     public static final String HK_APPSECRET ="HK_APPSECRET" ;
     public static final String HK_HTTPS ="HK_HTTPS" ;
     public static final String HK_PUSH_URL = "HK_PUSH_URL";
+    public static final String HK_CARS_OPENAPI_ACCESS_KEY = "HK_CARS_OPENAPI_ACCESS_KEY";
+    public static final String HK_CARS_OPENAPI_ACCESS_SECRET = "HK_CARS_OPENAPI_ACCESS_SECRET";
+    public static final String HK_CARS_OPENAPI_URL = "HK_CARS_OPENAPI_URL";
     public static final String HK_ROOTORG_CODE ="HK_ROOTORG_CODE" ;
     public static final String HK_ROOTORG_NAME ="HK_ROOTORG_NAME" ;
     public static final String PLATFORM ="PLATFORM" ;
+    public static final String POWER_MINUTE ="POWER_MINUTE" ;
+    public static final String SPECIAL_COMPANY_ID ="SPECIAL_COMPANY_ID" ;
+
     public static final String RESERVATION_TOTAL_NUM ="RESERVATION_TOTAL_NUM" ;
     public static final String SIGN_IN_PLACE_LAT ="SIGN_IN_PLACE_LAT" ;
     public static final String SIGN_IN_PLACE_LNT ="SIGN_IN_PLACE_LNT" ;
     public static final String SIGN_IN_PLACE_DISTANCE ="SIGN_IN_PLACE_DISTANCE" ;
     public static final String SIGN_IN_QRCODE ="SIGN_IN_QRCODE" ;
+    public static final String SIGN_IN_ATTENTION ="SIGN_IN_ATTENTION" ;
+    public static final String SIGN_IN_QRCODE_PREFIX ="SIGN_IN_QRCODE_PREFIX" ;
 
 
     //琚嫓璁夸汉淇℃伅鏍¢獙鏂瑰紡锛�0鎵嬫満鍙峰崟鐙牎楠� 1鎵嬫満鍙峰拰濮撳悕缁勫悎鏍¢獙锛�
@@ -68,7 +70,12 @@
     // 璁垮鏉ヨ閰嶇疆
     public static final String VISIT_CONFIG = "VISIT_CONFIG";
     public static final String MEMBER_IMG = "MEMBER_IMG";
+    public static final String PLATFORM_EVENT_IMG = "PLATFORM_EVENT_IMG";
     public static final String VISIT_NOTICE = "VISIT_NOTICE";
+    public static final String TIME_OUT_CONFIG = "TIME_OUT_CONFIG";
+    public static final String VISIT_REPORT_TIME_OUT_MOBILE = "VISIT_REPORT_TIME_OUT_MOBILE";
+    public static final String VISIT_TIME_OUT_MOBILE = "VISIT_TIME_OUT_MOBILE";
+
     //鍋ュ悍璇侀厤缃�
     public static final String LW_HEALTH_CARD = "LW_HEALTH_CARD";
     public static final String HEALTH_CARD = "HEALTH_CARD";
@@ -98,6 +105,7 @@
     public static final String FTP_USERNAME ="FTP_USERNAME" ;
     public static final String FTP_PWD ="FTP_PWD" ;
     public static final String FTP_RESOURCE_PATH ="FTP_RESOURCE_PATH" ;
+    public static final String FTP_LOCAL_RESOURCE_PATH ="FTP_LOCAL_RESOURCE_PATH" ;
     public static final String ERP_ORGLIST_URL ="ERP_ORGLIST_URL" ;
     public static final String ERP_USERLIST_URL ="ERP_USERLIST_URL" ;
     public static final String ERP_APPROVE_URL ="ERP_APPROVE_URL" ;
@@ -118,10 +126,31 @@
     public static final String HK_NGINX_URL = "HK_NGINX_URL";
     public static final String PLATFORM_BOOKING_TIPS = "PLATFORM_BOOKING_TIPS";
     public static final String PLATFORM_GUIDEMAP = "PLATFORM_GUIDEMAP";
-    public static final String WSM_PARAM ="WSM_PARAM" ;
+    public static final String WMS_PARAM ="WMS_PARAM" ;
     public static final String WMS_INBOUND_PLATFROM_URL ="WMS_INBOUND_PLATFROM_URL" ;
     public static final String WMS_GET_INVENTORYLIST_URL ="WMS_GET_INVENTORYLIST_URL" ;
     public static final String WMS_OUTBOUND_PLATFROM_URL ="WMS_OUTBOUND_PLATFROM_URL" ;
+    public static final String TSM_PARAM ="TSM_PARAM" ;
+    public static final String TMS_INTERFACE_URL_PREFIX ="TMS_INTERFACE_URL_PREFIX" ;
+    public static final String MYSQL_BACKUP_CDOE ="MYSQL_BACKUP_CDOE" ;
+    public static final String MYSQL_BACKUP_DIR ="MYSQL_BACKUP_DIR" ;
+    public static final String EVENT_FILES_PRIVATE_DOMAIN ="EVENT_FILES_PRIVATE_DOMAIN" ;
+    public static final String EVENT_FILES_PUBLIC_DOMAIN ="EVENT_FILES_PUBLIC_DOMAIN" ;
+    public static final String TEMPERATURE_HUMIDITY ="TEMPERATURE_HUMIDITY" ;
+
+    public static final String HK_WXTOKEN_CONFIGID ="HK_WXTOKEN_CONFIGID" ;
+    public static final String HK_WXTOKEN_TAGID ="HK_WXTOKEN_TAGID" ;
+    public static final String WMS_TOTAL_STOCK_NUM ="WMS_TOTAL_STOCK_NUM" ;
+    public static final String WMS_LIQUID_LEVEL ="WMS_LIQUID_LEVEL" ;
+    public static final String WMS_PRESSURE_LEVEL ="WMS_PRESSURE_LEVEL" ;
+    public static final String WX_REDIRECT_URL = "WX_REDIRECT_URL";
+    public static final String HK_CHANGNEI_SCREEN_INDEXCODES = "HK_CHANGNEI_SCREEN_INDEXCODES";
+    public static final String CITY_XH_REASON_ID ="CITY_XH_REASON_ID" ;
+    public static final String ATWL_XH_PLATFORM_ID ="ATWL_XH_PLATFORM_ID" ;
+    public static final String SCREEN_SEVENT_ARRIVAL_STARTDATE = "SCREEN_SEVENT_ARRIVAL_STARTDATE";
+    public static final String EARLY_START_WX_NOTICE = "EARLY_START_WX_NOTICE";
+    public static final String OVER_NOTICE_WX = "OVER_NOTICE_WX";
+
     public static  boolean DEALING_HK_SYNCPRIVILEGE= false;
     public static  boolean DEALING_HK_SYNCDEVICE = false;
     public static  boolean DEALING_HK_SYNCPLATFORM = false;
@@ -134,6 +163,7 @@
     public static  boolean DEALING_HK_DEL_USER = false;
     public static  boolean DEALING_HK_VISIT = false;
     public static  boolean DEALING_HK_VISIT_EXPIRE = false;
+    public static  boolean DEALING_HK_NOTICE_LIST = false;
     public static  boolean DEALING_FROM_HK_VISIT = false;
     public static  boolean DEALING_HK_EMPOWER = false;
     public static  boolean DEALING_HK_EMPOWER_DETAIL = false;
@@ -171,6 +201,24 @@
 
         return sb.toString();
     }
+
+    /**
+     * 鑾峰彇鍏紬鍙疯烦杞噸瀹氬悜涓氬姟鍦板潃
+     * @param code
+     * @param paramCode
+     * @param ywid
+     * @return
+     */
+    public static String getWxUrl(String code, WxUrlParams paramCode, String ywid) {
+        String url = code.replace("${type}",paramCode.type+"").replace("${yw}",paramCode.yw).replace("${ywid}",ywid);
+//        try {
+//            url = URLEncoder.encode(code,"UTF-8");
+//        }catch (Exception e){
+//
+//        }
+        return url;
+    }
+
     public interface VisitIccmStatus{
         //璁垮鐘舵��(0:鏈鍒�,1:宸茬鍒�,2:宸茬閫�,3:婊炵暀,4:鏈闂�,5:鑷姩绛剧,6:鏈閫�)
         int waitSign = 0;
@@ -229,6 +277,7 @@
         return  null;
     }
 
+
     /**
      *   鍒ゆ柇鏄惁涓烘湁鏁堣溅鐗屽彿
      */
@@ -278,6 +327,24 @@
         }
         return s.substring(0,5)+"*******"+s.substring(l-6,l);
 }
+
+
+    public static  String  carCodeTuominStr(String s){
+        if(StringUtils.isEmpty(s)){
+            return "";
+        }
+        int l = s.length();
+        if(l >= 7){
+            String tt = "";
+            for (int i = 0; i < l-6; i++) {
+                tt = tt+"*";
+            }
+            return s.substring(0,2)+tt+s.substring(l-4,l);
+        }
+        return s;
+    }
+
+
 
     /**
      * 鍒囧垎閫楀彿鎷兼帴鐨勬暣褰㈤泦鍚�
@@ -343,6 +410,17 @@
          int invalid =9;
     }
 
+    public interface RetentionCarType{
+        //杞﹁締绫诲瀷 0鍐呴儴杞﹁締 1鐩稿叧鏂硅溅杈� 2璁垮杞﹁締 3鍐呰繍鐗╂祦杞� 4澶栧崗杞﹁締 5甯傚叕鍙稿嵏璐ц溅
+         int internal = 0;
+         int relation = 1;
+         int visitor = 2;
+         int selfTruck = 3;
+         int outTruck = 4;
+         int cityComTruck = 5;
+         int unknown = 6;
+    }
+
 
     public interface EmpowerStatus{
         //涓�鍗¢�氭巿鏉冧笅鍙戠姸鎬� 0寰呬笅鍙� 1宸蹭笅鍙� 2涓嬪彂鎴愬姛   3宸插彇娑� 4涓嬪彂澶辫触 5浠诲姟涓嬭浇宸茬粨鏉�
@@ -393,7 +471,10 @@
 
 
     public interface RedisKeys {
+        public static final String IMPORTING_CARS ="IMPORTING_CARS";
         public static final String IMPORTING_MEMBER ="IMPORTING_MEMBER";
+        public static final String BIGSCREEN_UUID ="BIGSCREEN_UUID";
+        public static final String IMPORTING_GAS ="IMPORTING_GAS";
         public static final String ERP_TOKEN ="ERP_TOKEN";
         public static final long EXPIRE_TIME = 7200;
 
@@ -421,6 +502,22 @@
         d = d.setScale(4, BigDecimal.ROUND_HALF_UP);
         return  d;
     }
+    public static BigDecimal formatBigdecimal0Float(BigDecimal d) {
+        if (d == null) {
+            d = new BigDecimal(0.0);
+        }
+        //淇濈暀涓や綅灏忔暟涓斿洓鑸嶄簲鍏�
+        d = d.setScale(0, BigDecimal.ROUND_HALF_UP);
+        return  d;
+    }
+    public static BigDecimal formatBigdecimal2Float(BigDecimal d) {
+        if (d == null) {
+            d = new BigDecimal(0.0);
+        }
+        //淇濈暀涓や綅灏忔暟涓斿洓鑸嶄簲鍏�
+        d = d.setScale(2, BigDecimal.ROUND_HALF_UP);
+        return  d;
+    }
 
 
 
@@ -446,10 +543,15 @@
     }
 
 
+    /**
+     * 杩愬崟浜嗗崟浣嶇被鍨� 0涓囨敮 1绠�
+     */
+    public static final  int UNIT_TYPE =1;
 public interface  memberType{
     int driver = 0;//鍙告満浜哄憳
     int visitor = 1;//鏅�氳瀹�
     int internal = 2;//鍐呴儴浜哄憳
+    int gkuser = 3;//绠℃帶浜哄憳锛堣繍鍗曟煡璇級
 }
 
 
@@ -494,6 +596,7 @@
     int logisticsCarUse = 4;//鐗╂祦杞﹀鎵�
     int system = 5;//绯荤粺娑堟伅
     int reason = 6;//鍏ュ洯鍘熷洜
+    int hknotice = 7;//娴峰悍鑰冨嫟浠e姙
 }
 
 
@@ -575,11 +678,60 @@
     }
 
     public static void main(String[] args) {
-        System.out.println(Constants.getVehiclePlateNo("鐨朅A10991").getDescription());
+//        getChinesePingyin("DDaa姹熻悕鐨勫瀵瑰");
+//        System.out.println(DateUtil.getShortTime(new Date()));
+//        System.out.println( "2025-01-14 10:50:56".substring(0,10));
+//        System.out.println(Constants.checkCarNo("鐨朅A10991"));
 //        System.out.println(Constants.getVehiclePlateNo("婀楤140D17").getDescription());
 //        System.out.println(Constants.getVehiclePlateNo("瀹緼P0637").getDescription());
 
-        
+        System.out.println("<script> SELECT \n" +
+                "t1.REALNAME `REALNAME`,\n" +
+                "MAX(t1.`01`) `januaryCount`,\n" +
+                "MAX(t1.`02`) `februaryCount`,\n" +
+                "MAX(t1.`03`) `marchCount`,\n" +
+                "MAX(t1.`04`) `aprilCount`,\n" +
+                "MAX(t1.`05`) `mayCount`,\n" +
+                "MAX(t1.`06`) `juneCount`,\n" +
+                "MAX(t1.`07`) `julyCount`,\n" +
+                "MAX(t1.`08`) `augustCount`,\n" +
+                "MAX(t1.`09`) `septemberCount`,\n" +
+                "MAX(t1.`10`) `octoberCount`,\n" +
+                "MAX(t1.`11`) `novemberCount`,\n" +
+                "MAX(t1.`12`) `decemberCount`\n" +
+                "FROM(\n" +
+                "SELECT \n" +
+                "t.id,\n" +
+                "t.REALNAME,\n" +
+                "CASE  WHEN t.yue='01' THEN t.c ELSE 0 END AS `01`,\n" +
+                "CASE  WHEN t.yue='02' THEN t.c ELSE 0 END AS `02`,\n" +
+                "CASE  WHEN t.yue='03' THEN t.c ELSE 0 END AS `03`,\n" +
+                "CASE  WHEN t.yue='04' THEN t.c ELSE 0 END AS `04`,\n" +
+                "CASE  WHEN t.yue='05' THEN t.c ELSE 0 END AS `05`,\n" +
+                "CASE  WHEN t.yue='06' THEN t.c ELSE 0 END AS `06`,\n" +
+                "CASE  WHEN t.yue='07' THEN t.c ELSE 0 END AS `07`,\n" +
+                "CASE  WHEN t.yue='08' THEN t.c ELSE 0 END AS `08`,\n" +
+                "CASE  WHEN t.yue='09' THEN t.c ELSE 0 END AS `09`,\n" +
+                "CASE  WHEN t.yue='10' THEN t.c ELSE 0 END AS `10`,\n" +
+                "CASE  WHEN t.yue='11' THEN t.c ELSE 0 END AS `11`,\n" +
+                "CASE  WHEN t.yue='12' THEN t.c ELSE 0 END AS `12`  \n" +
+                "FROM   \n" +
+                "(SELECT \n" +
+                "su.id,\n" +
+                "su.REALNAME,\n" +
+                "DATE_FORMAT(b.START_TIME,'%m') yue,\n" +
+                "SUM(" +
+                "CONVERT( (UNIX_TIMESTAMP(b.END_TIME) - UNIX_TIMESTAMP(b.START_TIME))/(60*60), DECIMAL(5,1))) c\n" +
+                "FROM \n" +
+                "meeting_user_rel ur\n" +
+                "LEFT JOIN `SYSTEM_USER` su ON ur.USER_ID = su.id \n" +
+                "LEFT JOIN meeting_book b ON ur.OBJ_ID = b.id \n" +
+                "WHERE DATE_FORMAT(b.START_TIME,'%Y') = #{yearNum} AND b.STATUS = 0" +
+                "<if test='userId != null'>"+
+                "and ur.USER_ID = #{userId}\n" +
+                "</if>"+
+                "GROUP BY su.id, DATE_FORMAT(b.START_TIME,'%m')) t) t1 GROUP BY t1.id" +
+                "</script>");
     }
 
 
@@ -599,6 +751,10 @@
         LW_FK(0,"鍔冲姟璁垮"),
         PT_FK(1,"鏅�氳瀹�"),
         NB_FK(2,"鍐呴儴浜哄憳"),
+
+        COMPANY_TYPE_REL(0,"鐩稿叧鏂圭粍缁�"),
+        COMPANY_TYPE_INTERNAL(1,"鍐呴儴浜哄憳"),
+        COMPANY_TYPE_FK(3,"璁垮"),
 
         /** 杩涘満绫诲瀷 **/
         OUT(0,"鍑�"),
@@ -645,103 +801,54 @@
     }
 
 
-    public  enum NoticeType {
-
-        ZERO(0, "寰呭鏍�","","","寰呭鏍�","寰呭鐞�","澶勭悊涓�"),
-        ONE(1, "浼佷笟寰呯缃�","","","宸ョ寰呭鏍�","","宸茬粨妗�"),
-        TWO(2, "寰呭嚭鍗�","寰呭鏍�","寰呭鏍�","","",""),
-        THREE(3, "鐢宠閫�鍥�","鐢宠閫�鍥�","鐢宠閫�鍥�","","",""),
-        FOUR(4, "宸查��鍥�","宸查��鍥�","宸查��鍥�","","","宸叉挙閿�"),
-        FIVE(5, "鐢宠椹冲洖","鐢宠椹冲洖","鐢宠椹冲洖","","",""),
-        //缁繚閫氱煡
-        SIX(6, "","","","","",""),
-        //鍟嗘埛绔� 濮旀墭淇� - 鎶曚繚寰呭鏍� 鍔犲噺淇� 鎹㈠巶 寰呭鏍�
-        SEVEN(7, "寰呭鏍�","寰呭鏍�","寰呭鏍�","","",""),
-        EIGHT(8, "","","","","",""),
-        NINE(9, "","","","","",""),
-        ;
+    public  enum PlatformWarnEvent {
+        STOP_TIMEOUT(0, "鍋滈潬瓒呮椂","${carCode}鏈堝彴鍋滈潬瓒呮椂" ),
+        STOP_ERROR(1, "鍋滈潬閿欒","${carCode}鏈堝彴鍋滈潬閿欒" ),
+        WORK_TIMEOUT(2, "浣滀笟瓒呮椂","${carCode}浣滀笟瓒呮椂" );
 
         // 鎴愬憳鍙橀噺
-        private int status;
-        private String insuranceApplyDetail;
-        private String applyChangeDetail;
-        private String changeFactoryDetail;
-        private String dispatchUnitDetail;
-        private String taxesDetail;
-        private String settleClaimsDetail;
+        private int key;
+        private String name;
+        private String info;
 
         // 鏋勯�犳柟娉�
-        NoticeType(int status, String insuranceApplyDetail,String applyChangeDetail
-                , String changeFactoryDetail,String dispatchUnitDetail
-                , String taxesDetail,String settleClaimsDetail) {
-            this.status = status;
-            this.insuranceApplyDetail = insuranceApplyDetail;
-            this.applyChangeDetail = applyChangeDetail;
-            this.changeFactoryDetail = changeFactoryDetail;
-            this.dispatchUnitDetail = dispatchUnitDetail;
-            this.taxesDetail = taxesDetail;
-            this.settleClaimsDetail = settleClaimsDetail;
+        PlatformWarnEvent(int key, String name,String info ) {
+            this.key = key;
+            this.info = info;
+            this.name = name;
+        }
+        public static String getName(int index) {
+            for (PlatformWarnEvent c : PlatformWarnEvent.values()) {
+                if (c.getKey() == index) {
+                    return c.name;
+                }
+            }
+            return null;
         }
 
-
-        // get set 鏂规硶
-        public int getStatus() {
-            return status;
+        public int getKey() {
+            return key;
         }
 
-        public void setStatus(int status) {
-            this.status = status;
+        public void setKey(int key) {
+            this.key = key;
         }
 
-        public String getInsuranceApplyDetail() {
-            return insuranceApplyDetail;
+        public String getName() {
+            return name;
         }
 
-        public void setInsuranceApplyDetail(String name) {
-            this.insuranceApplyDetail = insuranceApplyDetail;
+        public void setName(String name) {
+            this.name = name;
         }
 
-        public String getApplyChangeDetail() {
-            return applyChangeDetail;
+        public String getInfo() {
+            return info;
         }
 
-        public void setApplyChangeDetail(String info) {
-            this.applyChangeDetail = applyChangeDetail;
+        public void setInfo(String info) {
+            this.info = info;
         }
-
-        public String getChangeFactoryDetail() {
-            return changeFactoryDetail;
-        }
-
-        public void setChangeFactoryDetail(String info) {
-            this.changeFactoryDetail = changeFactoryDetail;
-        }
-
-        public String getDispatchUnitDetail() {
-            return dispatchUnitDetail;
-        }
-
-        public void setDispatchUnitDetail(String info) {
-            this.dispatchUnitDetail = dispatchUnitDetail;
-        }
-
-        public String getTaxesDetail() {
-            return taxesDetail;
-        }
-
-        public void setTaxesDetail(String info) {
-            this.taxesDetail = taxesDetail;
-        }
-
-        public String getSettleClaimsDetail() {
-            return settleClaimsDetail;
-        }
-
-        public void setSettleClaimsDetail(String info) {
-            this.settleClaimsDetail = settleClaimsDetail;
-        }
-
-
     }
 
 
@@ -808,10 +915,152 @@
             this.info = info;
         }
     }
+    /**
+     * 鏈堝彴浣滀笟澶у睆鏂囨 鐘舵��
+     * 1銆佹湀鍙扮┖闂诧細1鍙锋湀鍙帮紙鏈堝彴鍚嶇О锛�
+     * 2銆佸彨鍙蜂腑锛�1鍙锋湀鍙� 鐨朅12345  鍙彿涓�
+     * 3銆佷綔涓氫腑锛�1鍙锋湀鍙� 鐨朅12345 浣滀笟涓�
+     * 4銆侀敊璇仠闈狅細1鍙锋湀鍙� 鐨朅12345 褰撳墠杞﹁締閿欒鍋滈潬锛岃灏藉揩椹剁
+     * 5銆佽秴鏃跺仠闈狅細1鍙锋湀鍙� 鐨朅12345 褰撳墠杞﹁締瓒呮椂鍋滈潬锛岃灏藉揩椹剁
+     */
+    public  enum PlatformLedContent {
+        IDEL_CONTNET(1, "绌洪棽涓�","瀹夋嘲鐗╂祦鏈夐檺璐d换鍏徃" ),
+        CALLING(2, "鍙彿涓�","${param} ${param2}  鍙彿涓�"),
+        WORKING(3, "浣滀笟涓�","${param} ${param2} 浣滀笟涓�" ),
+        WRONG_IN(4, "閿欒鍋滈潬","${param} ${param2} 褰撳墠杞﹁締閿欒鍋滈潬锛岃灏藉揩椹剁" ),
+        TIMEOUT_IN(5, "瓒呮椂鍋滈潬","${param} ${param2} 褰撳墠杞﹁締瓒呮椂鍋滈潬锛岃灏藉揩椹剁" ),
+        TIMEOUT_WORK(6, "浣滀笟瓒呮椂","${param} ${param2} 褰撳墠杞﹁締浣滀笟瓒呮椂" ),
+        DONE(7, "浣滀笟瀹屾垚","${param} ${param2} 浣滀笟瀹屾垚" ),
+        ;
+
+        // 鎴愬憳鍙橀噺
+        private int key;
+        private String name;
+        private String info;
+
+        // 鏋勯�犳柟娉�
+        PlatformLedContent(int key, String name,String info ) {
+            this.key = key;
+            this.info = info;
+            this.name = name;
+        }
+        public static String getName(int index) {
+            for (PlatformLedContent c : PlatformLedContent.values()) {
+                if (c.getKey() == index) {
+                    return c.name;
+                }
+            }
+            return null;
+        }
+
+        public int getKey() {
+            return key;
+        }
+
+        public void setKey(int key) {
+            this.key = key;
+        }
+
+        public String getName() {
+            return name;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public String getInfo() {
+            return info;
+        }
+
+        public void setInfo(String info) {
+            this.info = info;
+        }
+    }
+    /**
+     * 骞挎挱閫氱煡鍐呭
+     1. 鍙彿涓細鐨朅12345璇峰墠寰�1鍙锋湀鍙扮瓑寰呬綔涓�
+     2. 浣滀笟瀹屾垚锛氱殩A12345浣滀笟瀹屾垚锛岃灏藉揩椹剁
+     3. 閿欒鍋滈潬锛氱殩A12345鏈堝彴鍋滈潬閿欒锛岃灏藉揩椹剁
+     4. 瓒呮椂鍋滈潬锛氱殩A12345鏈堝彴鍋滈潬瓒呮椂锛岃灏藉揩椹剁璇峰敖蹇┒绂�
+     5. 浣滀笟瓒呮椂锛氱殩A12345鏈堝彴鍋滈潬瓒呮椂锛岃灏藉揩椹剁璇峰敖蹇┒绂�
+     */
+    public  enum PlatformBroadcastContent {
+        CALLING(1, "鍙彿涓�","${param}璇峰墠寰�${param2}绛夊緟浣滀笟"),
+        DONE(2, "浣滀笟瀹屾垚","${param}浣滀笟瀹屾垚锛岃灏藉揩椹剁" ),
+        WRONG_IN(3, "閿欒鍋滈潬","${param}鏈堝彴鍋滈潬閿欒锛岃灏藉揩椹剁" ),
+        TIMEOUT_IN(4, "瓒呮椂鍋滈潬","${param}鏈堝彴鍋滈潬瓒呮椂锛岃灏藉揩椹剁" ),
+        TIMEOUT_WORK(5, "浣滀笟瓒呮椂","${param}浣滀笟瓒呮椂" ),
+        ;
+
+        // 鎴愬憳鍙橀噺
+        private int key;
+        private String name;
+        private String info;
+
+        // 鏋勯�犳柟娉�
+        PlatformBroadcastContent(int key, String name,String info ) {
+            this.key = key;
+            this.info = info;
+            this.name = name;
+        }
+
+        public static String getName(int index) {
+            for (PlatformBroadcastContent c : PlatformBroadcastContent.values()) {
+                if (c.getKey() == index) {
+                    return c.name;
+                }
+            }
+            return null;
+        }
+
+        public int getKey() {
+            return key;
+        }
+
+        public void setKey(int key) {
+            this.key = key;
+        }
+
+        public String getName() {
+            return name;
+        }
+
+        public void setName(String name) {
+            this.name = name;
+        }
+
+        public String getInfo() {
+            return info;
+        }
+
+        public void setInfo(String info) {
+            this.info = info;
+        }
+    }
+    public static String getChinesePingyin(String chinese) {
+        if(StringUtils.isBlank(chinese)){
+            return null;
+        }
+        StringBuilder result = new StringBuilder();
+        for (char ch : chinese.toCharArray()) {
+            String[] pinyinArray = PinyinHelper.toHanyuPinyinStringArray(ch);
+
+            // 濡傛灉瀛楃鏄腑鏂囷紝鍒欒幏鍙栧叾鎷奸煶鐨勯瀛楁瘝
+            if (pinyinArray != null && pinyinArray.length > 0) {
+                result.append(pinyinArray[0].charAt(0));
+            } else {
+                // 闈炰腑鏂囧瓧绗︾洿鎺ユ嫾鎺�
+                result.append(ch);
+            }
+        }
+        System.out.println(result.toString());
+        return result.toString().toUpperCase();
+    }
 
     /**
      * 鏈堝彴浣滀笟 鐘舵��
-     * 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙�
+     * 0寰呯‘璁� 1寰呯鍒� 2绛夊緟鍙彿 3鍏ュ洯绛夊緟 4宸插彨鍙� 5浣滀笟涓� 6浣滀笟瀹屾垚 7杞Щ涓� 8寮傚父鎸傝捣 9宸叉巿鏉冪鍥� 10宸茬鍥� 11 宸茶繃鍙� 12宸插彇娑�
      */
     public  enum PlatformJobStatus {
         WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ),
@@ -819,13 +1068,14 @@
         WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"),
         IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ),
         CALLED(4, "宸插彨鍙�","宸插彨鍙�" ),
-        WORKING(5, "浣滀笟涓�","浣滀笟涓�" ),
-        DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚 " ),
+         WORKING(5, "浣滀笟涓�","浣滀笟涓�" ),
+        DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚" ),
         TRANSFERING(7, "杞Щ涓�","杞Щ涓�" ),
         EXCEPTION(8, "寮傚父鎸傝捣","寮傚父鎸傝捣" ),
         AUTHED_LEAVE(9, "宸叉巿鏉冪鍥�","宸叉巿鏉冪鍥�" ),
         LEAVED(10, "宸茬鍥� ","宸茬鍥� " ),
         OVER_NUMBER(11, "宸茶繃鍙�","宸茶繃鍙�" ),
+        CANCEL(12, "宸插彇娑�","宸插彇娑�" ),
         ;
 
         // 鎴愬憳鍙橀噺
@@ -994,6 +1244,66 @@
         }
 
     }
+    public  enum WxUrlParams {
+        BISCREEN_CODE(0,0, "0", "闂ㄥ彛澶у睆浜岀淮鐮�"),
+        MEETING_CODE(1,2, "1","浼氳瀹ゅぇ灞�"),
+        VISIT_RECORD_VISIT(2,1, "2","璁垮璁板綍-璁垮"),
+        VISIT_RECORD_USER(3,2, "2","璁垮璁板綍-鍛樺伐"),
+        VISIT_REPORT_RECORD_USER(5,2, "3","璁垮鎶ュ璁板綍-鍛樺伐"),
+        HIDDEN_DANGER(6,2, "4","闅愭偅闅忔墜鎷�"),
+        CAR_USE(7,2, "5","鐢ㄨ溅鐢宠"),
+        MEETING(8,2, "6","浼氳璇︽儏"),
+        PLATFORM_BOOK_DRIVER(9,0, "7","鐗╂祦杞﹂绾�-鍙告満"),
+        PLATFORM_BOOK(10,2, "7","鐗╂祦杞﹂绾�-鍛樺伐"),
+        PLATFORM_JOB_DRIVER(11,0, "8","鏈堝彴浣滀笟-鍙告満"),
+        ;
+        // 鎴愬憳鍙橀噺
+        private int key;
+        private int type;//鐢ㄦ埛绫诲瀷 0鍙告満 1璁垮 2鍛樺伐
+        private String yw;//涓氬姟绫诲瀷
+        private String info;//璇存槑
+
+        // 鏋勯�犳柟娉�
+        WxUrlParams(int key,int type, String yw,String  info) {
+            this.yw = yw;
+            this.key = key;
+            this.type = type;
+            this.info= info;
+        }
+
+
+        public int getKey() {
+            return key;
+        }
+
+        public void setKey(int key) {
+            this.key = key;
+        }
+
+        public int getType() {
+            return type;
+        }
+
+        public void setType(int type) {
+            this.type = type;
+        }
+
+        public String getYw() {
+            return yw;
+        }
+
+        public void setYw(String yw) {
+            this.yw = yw;
+        }
+
+        public String getInfo() {
+            return info;
+        }
+
+        public void setInfo(String info) {
+            this.info = info;
+        }
+    }
     public static <T> T toSnakeObject(String json, Class<T> clazz) throws IOException {
         ObjectMapper mapper = new ObjectMapper();
         mapper.setPropertyNamingStrategy(PropertyNamingStrategy.SNAKE_CASE);
@@ -1024,6 +1334,13 @@
         IMPORT_TRAIMETIME(14, "瀵煎叆鍩硅鏈夋晥","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬鍏ュ煿璁湁鏁堛�戞搷浣�" ),
         BE_HEAD(15, "璁句负涓荤","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愯涓轰富绠°�戞搷浣�" ),
         NOT_HEAD(16, "鍙栨秷涓荤","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬彇娑堜富绠°�戞搷浣�" ),
+        MEET_BOOK_DEL(17, "鍒犻櫎浼氳瀹ょ敵璇�","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄や細璁鐢宠銆戞搷浣�,瀵硅薄淇℃伅${param3}" ),
+        VISIT_DEL(18, "鍒犻櫎璁垮鐢宠","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄よ瀹㈢敵璇枫��,瀵硅薄淇℃伅锛�${param3}" ),
+        VISIT_CAR_DEL(19, "鍒犻櫎璁垮鎶ュ","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄よ瀹㈡姤澶囥��,瀵硅薄淇℃伅锛�${param3}" ),
+        PLATFROM_BOOK_DEL(20, "鍒犻櫎鏈堝彴棰勭害浠诲姟","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄ゆ湀鍙伴绾︿换鍔°��,瀵硅薄淇℃伅锛�${param3}"  ),
+        CAR_BOOK_DEL(21, "鍒犻櫎鍏溅鐢宠","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄ゅ叕杞︾敵璇枫��,瀵硅薄淇℃伅锛�${param3}"),
+        PLATFROM_JOB_DEL(22, "鍒犻櫎瀹夋嘲鐗╂祦浣滀笟浠诲姟","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄ゅ畨娉扮墿娴佷綔涓氫换鍔°��,瀵硅薄淇℃伅锛�${param3}"  ),
+        HIDEN_DANGER_DEL(23, "鍒犻櫎闅愭偅闅忔墜鎷�","鐢便��${param1}銆戜簬銆�${param2}銆戯紝杩涜銆愬垹闄ら殣鎮i殢鎵嬫媿銆�,瀵硅薄淇℃伅锛�${param3}"),
         ;
 
         // 鎴愬憳鍙橀噺

--
Gitblit v1.9.3