jiangping
2024-12-10 eb275c6d06d3c27fd30bbf4975d27c93d7f56eb2
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -30,24 +30,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 +79,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 +114,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,6 +135,22 @@
    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 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_ORDER_LIST_URL ="TMS_ORDER_LIST_URL" ;
    public static final String TMS_ORDER_DETAIL_URL ="TMS_ORDER_DETAIL_URL" ;
    public static final String TMS_LOCK_STATUS_URL ="TMS_LOCK_STATUS_URL" ;
    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 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  boolean DEALING_HK_SYNCPRIVILEGE= false;
    public static  boolean DEALING_HK_SYNCDEVICE = false;
    public static  boolean DEALING_HK_SYNCPLATFORM = false;
@@ -130,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;
@@ -225,6 +259,7 @@
        return  null;
    }
    /**
     *   判断是否为有效车牌号
     */
@@ -274,6 +309,23 @@
        }
        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(Constants.equalsInteger(l,7)){
            return s.substring(0,3)+"**"+s.substring(l-2,l);
        }
        if(l <= 8){
            return s.substring(0,3)+"***"+s.substring(l-2,l);
        }
        return s;
    }
    /**
     * 切分逗号拼接的整形集合
@@ -339,6 +391,16 @@
         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;
    }
    public interface EmpowerStatus{
        //一卡通授权下发状态 0待下发 1已下发 2下发成功   3已取消 4下发失败 5任务下载已结束
@@ -389,7 +451,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;
@@ -415,6 +480,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;
    }
@@ -490,6 +571,7 @@
    int logisticsCarUse = 4;//物流车审批
    int system = 5;//系统消息
    int reason = 6;//入园原因
    int hknotice = 7;//海康考勤代办
}
@@ -571,7 +653,8 @@
    }
    public static void main(String[] args) {
        System.out.println(Constants.getVehiclePlateNo("皖AA10991").getDescription());
        System.out.println(Constants.checkCarNo("皖A10991"));
        System.out.println(Constants.checkCarNo("皖AA10991"));
//        System.out.println(Constants.getVehiclePlateNo("湘B140D17").getDescription());
//        System.out.println(Constants.getVehiclePlateNo("宿AP0637").getDescription());
@@ -641,103 +724,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;
        }
    }
@@ -746,17 +780,18 @@
     * 0任务创建 1司机确认任务 2司机签到 3入园等待 4月台叫号 5开始作业 6作业完成 7月台转移 8任务挂起 9下发授权离园 10离园
     */
    public  enum PlatformJobLogType {
        CREATE(0, "任务创建","任务创建" ),
        CONFIRM_TASK(1, "司机确认任务","司机确认任务" ),
        SIGN(2, "司机签到","司机签到"),
        IN_WAIT(3, "入园等待","入园等待" ),
        CALLED(4, "月台叫号","月台叫号" ),
        WORKING(5, "开始作业","开始作业" ),
        DONE(6, "作业完成 ","作业完成 " ),
        TRANSFERING(7, "月台转移","月台转移" ),
        EXCEPTION(8, "任务挂起","任务挂起" ),
        CREATE(0, "任务创建","入园预约成功" ),
        CONFIRM_TASK(1, "司机确认任务","已完成时间确认" ),
        SIGN(2, "司机签到","排队等待叫号"),
        IN_WAIT(3, "入园等待","叫号入园等待" ),
        CALLED(4, "月台叫号","{data}叫号" ),
        WORKING(5, "开始作业","进入{data}开始作业" ),
        DONE(6, "作业完成 ","月台作业完成,驶离月台" ),
        TRANSFERING(7, "月台转移","{data}发起月台转移" ),
        EXCEPTION(8, "任务挂起","作业异常被挂起" ),
        AUTHED_LEAVE(9, "下发授权离园","下发授权离园" ),
        LEAVED(10, "已离园 ","已离园 " ),
        LEAVED(10, "已离园 ","车辆从{data}离场 " ),
        OVER_NUMBER(11, "已过号","超时未到指定月台自动过号" ),
        ;
        // 成员变量
@@ -803,24 +838,148 @@
            this.info = info;
        }
    }
    /**
     * 月台作业大屏文案 状态
     * 1、月台空闲:1号月台(月台名称)
     * 2、叫号中:1号月台 皖A12345  叫号中
     * 3、作业中:1号月台 皖A12345 作业中
     * 4、错误停靠:1号月台 皖A12345 当前车辆错误停靠,请尽快驶离
     * 5、超时停靠:1号月台 皖A12345 当前车辆超时停靠,请尽快驶离
     */
    public  enum PlatformLedContent {
        IDEL_CONTNET(1, "空闲中","安泰物流有限责任公司" ),
        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. 叫号中:皖A12345请前往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;
        }
    }
    /**
     * 月台作业 状态
     * 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, "待确认","待确认" ),
        WART_SIGN_IN(1, "待签到","待签到" ),
        WAIT_CALL(2, "已签到","已签到"), //等待叫号入园
        IN_WAIT(3, "入园等待","入园等待" ),//已入园 未叫号进入月台
        WAIT_CALL(2, "已签到","已签到"),
        IN_WAIT(3, "入园等待","入园等待" ),
        CALLED(4, "已叫号","已叫号" ),
        WORKING(5, "作业中","作业中" ),
        DONE(6, "作业完成 ","作业完成 " ),
        DONE(6, "作业完成 ","作业完成" ),
        TRANSFERING(7, "转移中","转移中" ),
        EXCEPTION(8, "异常挂起","异常挂起" ),
        AUTHED_LEAVE(9, "已授权离园","已授权离园" ),
        LEAVED(10, "已离园 ","已离园 " ),
        OVER_NUMBER(11, "已过号","已过号" ),
        CANCEL(12, "已取消","已取消" ),
        ;
        // 成员变量