#
Junjie
7 天以前 1ae2f3acafa9d036dfe4f14f8dcc5c4b5815c46a
src/main/java/com/zy/asrs/utils/Utils.java
@@ -1,15 +1,19 @@
package com.zy.asrs.utils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.core.common.Arith;
import com.core.common.Cools;
import com.core.common.SpringUtils;
import com.zy.common.utils.RedisUtil;
import com.zy.core.enums.RedisKeyType;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.HashMap;
/**
 * Created by vincent on 2020/8/27
 */
public class Utils {
    private static final String LOC_NO_FLAG = "-";
    private static final DecimalFormat fmt = new DecimalFormat("##0.00");
    public static float scale(Float f){
@@ -19,4 +23,93 @@
        return (float) Arith.multiplys(2, f, 1);
    }
    public static String zerofill(String msg, Integer count){
        if (msg.length() == count){
            return msg;
        } else if (msg.length() > count){
            return msg.substring(0, 16);
        } else {
            StringBuilder msgBuilder = new StringBuilder(msg);
            for (int i = 0; i<count-msg.length(); i++){
                msgBuilder.insert(0,"0");
            }
            return msgBuilder.toString();
        }
    }
    /**
     * 通过库位号获取 排
     */
    public static int getRow(String locNo) {
        if (!Cools.isEmpty(locNo)) {
            String[] split = locNo.split(LOC_NO_FLAG);
            return Integer.parseInt(split[0]);
        }
        throw new RuntimeException("库位解析异常");
    }
    /**
     * 通过库位号获取 列
     */
    public static int getBay(String locNo) {
        if (!Cools.isEmpty(locNo)) {
            String[] split = locNo.split(LOC_NO_FLAG);
            return Integer.parseInt(split[1]);
        }
        throw new RuntimeException("库位解析异常");
    }
    /**
     * 通过库位号获取 层
     */
    public static int getLev(String locNo) {
        if (!Cools.isEmpty(locNo)) {
            String[] split = locNo.split(LOC_NO_FLAG);
            return Integer.parseInt(split[2]);
        }
        throw new RuntimeException("库位解析异常");
    }
    public static String getLocNo(Number row, Number bay, Number lev) {
        return row + LOC_NO_FLAG + bay + LOC_NO_FLAG + lev;
    }
    public static boolean isJSON(String value) {
        try {
            JSONObject jsonData = JSON.parseObject(value);
            if (jsonData == null) {
                return false;
            }
            return true;
        } catch (Exception e) {
            return false;
        }
    }
    //获取设备日志采集时间
    public static int getDeviceLogCollectTime() {
        int defaultTime = 200;
        try {
            RedisUtil redisUtil = SpringUtils.getBean(RedisUtil.class);
            if (redisUtil == null) {
                return defaultTime;
            }
            Object object = redisUtil.get(RedisKeyType.SYSTEM_CONFIG_MAP.key);
            if (object == null) {
                return defaultTime;
            }
            HashMap<String, String> systemConfigMap = (HashMap<String, String>) object;
            String deviceLogCollectTime = systemConfigMap.get("deviceLogCollectTime");
            if(deviceLogCollectTime == null){
                return defaultTime;
            }
            return Integer.parseInt(deviceLogCollectTime);
        }catch (Exception e){
            e.printStackTrace();
        }
        return defaultTime;
    }
}