111
k94314517
2025-02-20 171de641204992c462047fb1552009e753b562fe
server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -1,18 +1,20 @@
package com.doumee.core.constants;
import ch.qos.logback.core.util.COWArrayList;
import com.doumee.dao.business.web.request.LocaltionDTO;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.lang3.StringUtils;
import javax.servlet.http.HttpServletRequest;
import java.awt.*;
import java.io.UnsupportedEncodingException;
import java.math.BigDecimal;
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.*;
import java.util.List;
import java.util.UUID;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
@@ -23,16 +25,67 @@
  public static final String FALSE = "f";
  public static final String TOKEN ="TOKEN" ;
    public static final String SYSTEM ="SYSTEM" ;
    public static final String DINGDING ="DINGDING" ;
    public static final String DINGDING_APPKEY ="DINGDING_APPKEY" ;
    public static final String DINGDING_CHATTOKEN ="DINGDING_CHATTOKEN" ;
    public static final String DINGDING_ROBOTCODE ="DINGDING_ROBOTCODE" ;
    public static final String DINGDING_SECRET ="DINGDING_SECRET" ;
    public static final String DINGDING_TOKEN ="DINGDING_TOKEN" ;
    public static final String MINI_PROGRAMME ="MINI_PROGRAMME" ;
    public static final String FREE_RENT_TIME ="FREE_RENT_TIME" ;
    public static final String LOW_VOLTAGE ="LOW_VOLTAGE" ;
    public static final String ACCESS_TOKEN ="ACCESS_TOKEN" ;
    public static final String IMG_DIR = "IMG_DIR";
    public static final String FILE_DIR ="FILE_DIR" ;
    public static final String PRIVATE_KEY = "PRIVATE_KEY";
    public static final String PROJECT_FILE = "PROJECT_FILE";
    public static final String PROJECTS = "PROJECTS";
    public static final String DISCOUNT = "DISCOUNT";
    public static final String ELEC_BIKE_CONTRIL_API_URL = "ELEC_BIKE_CONTRIL_API_URL";
    public static final String FORCE_BACK_LOCK = "FORCE_BACK_LOCK";
    public static final String FORCE_BACK_SITE = "FORCE_BACK_SITE";
    //车辆类型数据
    public static final String  BIKE_TYPE ="0,1,2,3,4,5,6,7,8" ;
    public static final String MINI_PROGRAMME_REALEASE ="MINI_PROGRAMME_REALEASE" ;
    public static final String TIME_OUT_TEMPID ="TIME_OUT_TEMPID" ;
    public static final int FOUR =4 ;
    public static final String PAUSE_BIKE_TYPE ="PAUSE_BIKE_TYPE" ;
    public static final String HEART_TIME_EXPIRE_TIME ="HEART_TIME_EXPIRE_TIME" ;
    public static final String PARK_LAT_LNG_LIST = "PARK_LAT_LNG_LIST";
    public static final String LOW_BIKE_VOLTAGE ="LOW_BIKE_VOLTAGE" ;
    public static final String EBIKE_PREFIX ="ebike-" ;
    public static String REDIS_DEBUG_STR="test_";
    public static final String AD = "AD";
    public static String REPAIR = "REPAIR";
    public static final String NOTICE_SITE_LINK_LIMIT="NOTICE_SITE_LINK_LIMIT";
    public static boolean equalsInteger(Integer a, Integer b) {
        if (formatIntegerNum(a) == formatIntegerNum(b)) {
            return true;
        }
        return false;
    }
    public  interface MqttTopic{
        //开锁
        String openLock = "OPENLOCK";
        //关闭锁头
        String closeLock = "CLOSELOCK";
        String topic_index = "device/lock/";
        //开锁(发布)
        String pub_openLock = "device/lock/{siteId}/{lockId}/unlock";
        //站点全量锁头数量信息
        String sub_siteInfo = "device/lock/+/siteInfo";
        //管理员刷卡记录上报
        String sub_adminCard = "device/lock/+/+/adminCard";
        //锁信息,在初始化、状态变更时会推送锁的完整状态(订阅)
        String sub_lockInfo = "device/lock/+/+/info";
        //还车锁头(订阅)
        String sub_closeLock = "device/lock/+/+/bike";
        String sub_health= "device/lock/+/health";
        String sub_brokers = "$SYS/brokers/+/clients/#";
        //实时获取锁信息(发布)
        String pub_getLockInfo = "device/lock/{siteId}/{lockId}/getInfo";
    }
    /**
@@ -44,6 +97,14 @@
        int all =2;
        int partful = 3;
  }
    public interface LockStatus{
      //  //状态,0闭合, 1打开,2运行中, 3异常 -1自检
        int closed =0;
        int open =1;
        int running =2;
        int error= 3;
        int checking= -1;
    }
    public interface goodsorderStatus{
        int waitPay =0;
        int pay =1;
@@ -55,19 +116,72 @@
        int waitPay =0;
        int pay =1;
    }
    public interface transactionsType{
        int deposit =0;
        int consumption =1;
    public enum TRANSACTIONS_TYPE{
      //交易类型 0租车押金 1结算实际消费 2结算退款 3平台退款"
        DEPOSIT(0,"租车押金", "租车押金"),
        int refund =2;
        int platformRefund = 3;
        CONSUMPTION(1,"订单消费结算", "订单消费结算"),
        REFUND(2,"结算退押金", "结算退押金"),
        PLATFORM_REFUND(3,"平台退款", "平台退款"),
        DISCOUNT(4,"平台套餐", "平台套餐")
        ;
        String name;
        Integer key;
        String info;
        TRANSACTIONS_TYPE(Integer key, String name, String info) {
            this.name = name;
            this.key = key;
            this.info = info;
        }
        public static TRANSACTIONS_TYPE get(int key) {
            TRANSACTIONS_TYPE[] values = TRANSACTIONS_TYPE.values();
            for (TRANSACTIONS_TYPE object : values) {
                if (object.key == key) {
                    return object;
                }
            }
            return null;
        }
        public String getName() {
            return name;
        }
        public void setName(String name) {
            this.name = name;
        }
        public Integer getKey() {
            return key;
        }
        public void setKey(Integer key) {
            this.key = key;
        }
        public String getInfo() {
            return info;
        }
        public void setInfo(String info) {
            this.info = info;
        }
    }
public static  String getUUID(){
      return UUID.randomUUID().toString().replace("-","");
}
        public interface RedisKeys {
            public static final String submission_period_key = "sp_";
            public static final String import_bikes = "import_bikes";
        }
        public static final String ACCESS_ID = "ACCESS_ID";
@@ -95,6 +209,8 @@
        public static final String RENT_DEPOSIT = "RENT_DEPOSIT";
        //温馨提示
        public static final String TIPS = "TIPS";
        //温馨提示
        public static final String RENT_NOTICE = "RENT_NOTICE";
        //小程序停止服务提示
        public static final String STOP_SERVE_TIPS = "STOP_SERVE_TIPS";
        //小程序是否停止服务 0否 1是
@@ -107,6 +223,17 @@
        public static final String BUSINESS_STARTTIME = "BUSINESS_STARTTIME";
        //小程序每日服务结束时间
        public static final String BUSINESS_ENDTIME = "BUSINESS_ENDTIME";
        //电车二维码前缀
        public static final String ELECTRICITY_PREFIX = "ELECTRICITY_PREFIX";
        //钉钉通知地址
        public static final String DINGDING_URL = "DINGDING_URL";
        //钉钉签名
        //小程序满载预警(%)最大值
        public static final String WARN_MAX = "WARN_MAX";
        //小程序满载预警(%)最小值
        public static final String WARN_MIN = "WARN_MIN";
        public static final String FILES_DIR = "FILES_DIR";
@@ -121,6 +248,14 @@
                return 0;
            }
            return num;
        }
        public static Integer formatIntegerFromStr(String num) {
            try {
                return  Integer.parseInt(num);
            }catch (Exception e){
            }
            return null;
        }
        public interface UserActionsType {
@@ -236,13 +371,13 @@
    public enum REFUND_TYPE{
        // '退款类型 0用户结算退款 1平台自动结算退款 2强制结算退款 3结算后退款'
        NORMAL(  0,"用户结算退款",""),
        NORMAL(  0,"用户结算退款","结算退押金"),
        PLAT_AUTO( 1,"平台自动结算退款",""),
        PLAT_AUTO( 1,"平台自动结算退款","平台退押金"),
        PLAT_FORCE( 2,"强制结算退款",""),
        PLAT_FORCE( 2,"强制结算退款","平台退押金"),
        BACK( 3,"结算后退款",""),
        BACK( 3,"结算后退款","平台退款"),
        ;
        String name;
@@ -258,6 +393,15 @@
            this.info = info;
        }
        public static REFUND_TYPE get(int key) {
            REFUND_TYPE[] values = REFUND_TYPE.values();
            for (REFUND_TYPE object : values) {
                if (object.key == key) {
                    return object;
                }
            }
            return null;
        }
        public String getName() {
            return name;
        }
@@ -290,7 +434,8 @@
            BACK_CYCLING("已还车", 2,"已还车"),
            LOCKING_DEFEAT("开锁失败", 3,"开锁失败")
            LOCKING_DEFEAT("开锁失败", 3,"开锁失败"),
            RIDES_PAUSING("临停中", 4,"临停中")
            ;
            String name;
@@ -469,4 +614,10 @@
        }
        public static BigDecimal translateMoney(BigDecimal money){
            return  Constants.formatDecimalNum(money).divide(new BigDecimal(100), 2, BigDecimal.ROUND_UP);
        }
}