package com.ruoyi.framework.util; import org.springframework.stereotype.Component; import org.springframework.web.multipart.MultipartFile; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Objects; import java.util.Random; import java.util.StringJoiner; @Component public class MyUtil { /** * 自定义调试工具类 * @return */ public static void PrintLog(String str){ // 类名 String className = Thread.currentThread().getStackTrace()[2].getClassName(); // 函数名 String methodName = Thread.currentThread().getStackTrace()[2].getMethodName(); System.out.println("\033[1;94m" + className + "-->" + methodName + "-->" + str + "\033[0m"); } /** * 日期工具类 * @return */ public static String MyDateFormat(){ //获取日期 //导 import java.util.Date; 下的包 Date date = new Date(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); return sdf.format(date); } /** * 获取随机加密盐 * @param n 位数 * @return 返回随机加密盐 */ public static String getSalt(int n) { char[] chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890!@$%^&*.?".toCharArray(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < n; i++) { char c = chars[new Random().nextInt(chars.length)]; sb.append(c); } return sb.toString(); } /** * 获取随机数字 * @param n 位数 * @return 返回随机值 */ public static String getNumber(int n) { char[] chars = "1234567890".toCharArray(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < n; i++) { char c = chars[new Random().nextInt(chars.length)]; sb.append(c); } return sb.toString(); } public static String getTimeSixNumberCode(String prefix, String keyName){ SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd"); String format = simpleDateFormat.format(new Date()); String timeStr = format.replace("-", ""); long incrNum = RedisUtil.incr(keyName, 1); if(incrNum == 1){ RedisUtil.expire(keyName, 60 * 60 * 24); } String sixIncr = String.format("%06d", incrNum); return prefix + timeStr + sixIncr; } /** * 判断是否为excel * @param file * @return */ public static boolean isExcelFile(MultipartFile file) { if (file.isEmpty()) { return false; } String originalFilename = file.getOriginalFilename(); if (originalFilename == null) { return false; } String[] parts = originalFilename.split("\\."); if (parts.length == 0) { return false; } String fileExtension = parts[parts.length - 1].toLowerCase(); return fileExtension.equals("xls") || fileExtension.equals("xlsx"); } /** * * @param delimiter * @param elements * @return */ public static String joinChars(String delimiter,String... elements){ Objects.requireNonNull(delimiter); Objects.requireNonNull(elements); // Number of elements not likely worth Arrays.stream overhead. StringJoiner joiner = new StringJoiner(delimiter); for (String cs: elements) { joiner.add(Objects.isNull(cs)?"":cs); } return joiner.toString(); } }