From e89d76539cc91bd13acabbf25a12312d2f8bba56 Mon Sep 17 00:00:00 2001
From: zhanghua <314079846@qq.com>
Date: 星期二, 16 十二月 2025 21:27:06 +0800
Subject: [PATCH] 超过17点不接受报警
---
ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java | 508 +++++++++++++++++++++++++++++++-------------------------
1 files changed, 283 insertions(+), 225 deletions(-)
diff --git a/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java b/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java
index 17429ba..885c482 100644
--- a/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java
+++ b/ycl-platform/src/main/java/com/ycl/common/util/UtilNumber.java
@@ -1,259 +1,317 @@
package com.ycl.common.util;
+import com.ycl.mapper.common.GeneratedCodeMapper;
+import com.ycl.utils.common.RandomUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
import java.lang.reflect.Field;
import java.text.SimpleDateFormat;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Date;
import java.util.List;
-
+@Component
public class UtilNumber {
+ private GeneratedCodeMapper generatedCodeMapper;
+ @Autowired
+ public void setGeneratedCodeMapper(GeneratedCodeMapper generatedCodeMapper) {
+ this.generatedCodeMapper = generatedCodeMapper;
+ }
- public static String getCode(String type ,int n) {
- String code = type + new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date())+RandomStringUtil.getRandomString(n,RandomStringUtil.ALL);
- return code;
- }
- public static String getNumber(String type ,int n) {
- String code = type + new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date())+RandomNumberGenerator.generateNumber(n);
- return code;
- }
- public static String getApplicationCode(String type ,int n) {
- String code = type+getApplicationSecret(n);
- return code;
- }
- public static String getApplicationSecret(int n) {
- String code = RandomStringUtil.getRandomString(n,RandomStringUtil.CAPITAL_NUM_LOWER);
- return code;
- }
- public static String getRqUID(String channel) {
- // 6浣嶉殢鏈烘暟,鐢ㄤ簬鐢熸垚璁㈠崟鍙�
+ public static String getCode(String type, int n) {
+ String code = type + new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()) + RandomStringUtil.getRandomString(n, RandomStringUtil.ALL);
+ return code;
+ }
- String rand1 = RandomNumberGenerator.generateNumber(4);
- String rand2 = RandomNumberGenerator.generateNumber(6);
+ public static String getNumber(String type, int n) {
+ String code = type + new SimpleDateFormat("yyyyMMddHHmmssSSS").format(new Date()) + RandomNumberGenerator.generateNumber(n);
+ return code;
+ }
- String rqUID = channel + DateUtils.getNowDate("yyyyMMdd")
- + DateUtils.getNowDate("HHmmss") + rand1 + rand2;
- return rqUID;
- }
- public static String getRqTradeNo(String channel) {
- // 6浣嶉殢鏈烘暟,鐢ㄤ簬鐢熸垚浜ゆ槗鍙�
- String rand2 = RandomNumberGenerator.generateNumber(6);
- String rqUID = channel + DateUtils.getNowDate("yyyyMMdd")
- + DateUtils.getNowDate("HHmmss") + rand2;
- return rqUID;
- }
- public static String getSettleAccount(String memberId) {
- // md5
- String subStr = memberId.substring(memberId.length() - 12,
- memberId.length());
- String md5Str = Md5.md5(Md5.md5(subStr));
+ public static String getApplicationCode(String type, int n) {
+ String code = type + getApplicationSecret(n);
+ return code;
+ }
+
+ public static String getApplicationSecret(int n) {
+ String code = RandomStringUtil.getRandomString(n, RandomStringUtil.CAPITAL_NUM_LOWER);
+ return code;
+ }
+
+ public static String getRqUID(String channel) {
+ // 6浣嶉殢鏈烘暟,鐢ㄤ簬鐢熸垚璁㈠崟鍙�
+
+ String rand1 = RandomNumberGenerator.generateNumber(4);
+ String rand2 = RandomNumberGenerator.generateNumber(6);
+
+ String rqUID = channel + DateUtils.getNowDate("yyyyMMdd")
+ + DateUtils.getNowDate("HHmmss") + rand1 + rand2;
+ return rqUID;
+ }
+
+ public static String getRqTradeNo(String channel) {
+ // 6浣嶉殢鏈烘暟,鐢ㄤ簬鐢熸垚浜ゆ槗鍙�
+ String rand2 = RandomNumberGenerator.generateNumber(6);
+ String rqUID = channel + DateUtils.getNowDate("yyyyMMdd")
+ + DateUtils.getNowDate("HHmmss") + rand2;
+ return rqUID;
+ }
+
+ public static String getSettleAccount(String memberId) {
+ // md5
+ String subStr = memberId.substring(memberId.length() - 12,
+ memberId.length());
+ String md5Str = Md5.md5(Md5.md5(subStr));
// String rand1 = RandomNumberGenerator.generateNumber(4);
// String rand2 = RandomNumberGenerator.generateNumber(6);
- String merchantId = subStr + md5Str.substring(0, 3);
- return merchantId;
+ String merchantId = subStr + md5Str.substring(0, 3);
+ return merchantId;
- }
+ }
- public static String getShopQRCode(String memberId) {
- // md5
- String rand1 = RandomNumberGenerator.generateNumber(4);
- String rand2 = RandomNumberGenerator.generateNumber(6);
- String shopQRCode = Md5.md5(memberId.substring(0, 12) + rand1 + rand2);
- return shopQRCode;
+ public static String getShopQRCode(String memberId) {
+ // md5
+ String rand1 = RandomNumberGenerator.generateNumber(4);
+ String rand2 = RandomNumberGenerator.generateNumber(6);
+ String shopQRCode = Md5.md5(memberId.substring(0, 12) + rand1 + rand2);
+ return shopQRCode;
- }
+ }
- public static String getMsgId() {
- String rand1 = RandomNumberGenerator.generateNumber(4);
- String rand2 = RandomNumberGenerator.generateNumber(4);
+ public static String getMsgId() {
+ String rand1 = RandomNumberGenerator.generateNumber(4);
+ String rand2 = RandomNumberGenerator.generateNumber(4);
- String msgId = "merchant"
- + DateUtils.getNowDate("yyyyMMdd")
- + DateUtils.getNowDate("HHmmss") + rand1 + rand2;
- return msgId;
+ String msgId = "merchant"
+ + DateUtils.getNowDate("yyyyMMdd")
+ + DateUtils.getNowDate("HHmmss") + rand1 + rand2;
+ return msgId;
- }
+ }
- public static String toSignStr(Object obj, Class<?> clazz) {
- if (obj == null) {
- return "";
- }
- List<String> listStr = new ArrayList<String>();
+ public static String toSignStr(Object obj, Class<?> clazz) {
+ if (obj == null) {
+ return "";
+ }
+ List<String> listStr = new ArrayList<String>();
- Field[] fields = clazz.getDeclaredFields();// 鏍规嵁Class瀵硅薄鑾峰緱灞炴�� 绉佹湁鐨勪篃鍙互鑾峰緱
- try {
- for (Field f : fields) {
- f.setAccessible(true); // 璁剧疆浜涘睘鎬ф槸鍙互璁块棶鐨�
- Object val = f.get(obj); // 寰楀埌姝ゅ睘鎬х殑鍊�
- String name = f.getName(); // 寰楀埌姝ゅ睘鎬х殑鍚嶇О
- if (!name.equals("sign") && CommonUtils.isNotEmpty(val)) {
- listStr.add(name + "=" + val);
- }
- }
+ Field[] fields = clazz.getDeclaredFields();// 鏍规嵁Class瀵硅薄鑾峰緱灞炴�� 绉佹湁鐨勪篃鍙互鑾峰緱
+ try {
+ for (Field f : fields) {
+ f.setAccessible(true); // 璁剧疆浜涘睘鎬ф槸鍙互璁块棶鐨�
+ Object val = f.get(obj); // 寰楀埌姝ゅ睘鎬х殑鍊�
+ String name = f.getName(); // 寰楀埌姝ゅ睘鎬х殑鍚嶇О
+ if (!name.equals("sign") && CommonUtils.isNotEmpty(val)) {
+ listStr.add(name + "=" + val);
+ }
+ }
- } catch (IllegalAccessException e) {
- }
- // 鑺傜偣闂翠互&绗﹁繛鎺ワ紝褰㈡垚鏈�缁堝緟绛惧悕瀛楃涓�
- Collections.sort(listStr);
- StringBuffer sb = new StringBuffer();
- for (int i = 0; i < listStr.size(); i++) {
- String msg = listStr.get(i);
- if (i > 0) {
- sb.append("&");
- }
- sb.append(msg);
- }
- return sb.toString();
- }
+ } catch (IllegalAccessException e) {
+ }
+ // 鑺傜偣闂翠互&绗﹁繛鎺ワ紝褰㈡垚鏈�缁堝緟绛惧悕瀛楃涓�
+ Collections.sort(listStr);
+ StringBuffer sb = new StringBuffer();
+ for (int i = 0; i < listStr.size(); i++) {
+ String msg = listStr.get(i);
+ if (i > 0) {
+ sb.append("&");
+ }
+ sb.append(msg);
+ }
+ return sb.toString();
+ }
- /**
- *
- * 鍔熻兘鎻忚堪锛氬幓闄ゅ瓧绗︿覆棣栭儴涓�"0"瀛楃
- *
- * @param str
- * 浼犲叆闇�瑕佽浆鎹㈢殑瀛楃涓�
- * @return 杞崲鍚庣殑瀛楃涓�
- */
- public static String removeZero(String str) {
- char ch;
- String result = "";
- if (str != null && str.trim().length() > 0
- && !str.trim().equalsIgnoreCase("null")) {
- try {
- for (int i = 0; i < str.length(); i++) {
- ch = str.charAt(i);
- if (ch != '0') {
- result = str.substring(i);
- break;
- }
- }
- } catch (Exception e) {
- result = "";
- }
- } else {
- result = "";
- }
- return result;
+ /**
+ * 鍔熻兘鎻忚堪锛氬幓闄ゅ瓧绗︿覆棣栭儴涓�"0"瀛楃
+ *
+ * @param str 浼犲叆闇�瑕佽浆鎹㈢殑瀛楃涓�
+ * @return 杞崲鍚庣殑瀛楃涓�
+ */
+ public static String removeZero(String str) {
+ char ch;
+ String result = "";
+ if (str != null && str.trim().length() > 0
+ && !str.trim().equalsIgnoreCase("null")) {
+ try {
+ for (int i = 0; i < str.length(); i++) {
+ ch = str.charAt(i);
+ if (ch != '0') {
+ result = str.substring(i);
+ break;
+ }
+ }
+ } catch (Exception e) {
+ result = "";
+ }
+ } else {
+ result = "";
+ }
+ return result;
- }
+ }
- /**
- *
- * 鍔熻兘鎻忚堪锛氶噾棰濆瓧绗︿覆杞崲锛氬崟浣嶅垎杞垚鍗曞厓
- *
- * @param str
- * 浼犲叆闇�瑕佽浆鎹㈢殑閲戦瀛楃涓�
- * @return 杞崲鍚庣殑閲戦瀛楃涓�
- */
- public static String fenToYuan(Object o) {
- if (o == null)
- return "0.00";
- String s = o.toString();
- int len = -1;
- StringBuilder sb = new StringBuilder();
- if (s != null && s.trim().length() > 0 && !s.equalsIgnoreCase("null")) {
- s = removeZero(s);
- if (s != null && s.trim().length() > 0
- && !s.equalsIgnoreCase("null")) {
- len = s.length();
- int tmp = s.indexOf("-");
- if (tmp >= 0) {
- if (len == 2) {
- sb.append("-0.0").append(s.substring(1));
- } else if (len == 3) {
- sb.append("-0.").append(s.substring(1));
- } else {
- sb.append(s.substring(0, len - 2)).append(".")
- .append(s.substring(len - 2));
- }
- } else {
- if (len == 1) {
- sb.append("0.0").append(s);
- } else if (len == 2) {
- sb.append("0.").append(s);
- } else {
- sb.append(s.substring(0, len - 2)).append(".")
- .append(s.substring(len - 2));
- }
- }
- } else {
- sb.append("0.00");
- }
- } else {
- sb.append("0.00");
- }
- return sb.toString();
- }
+ /**
+ * 鍔熻兘鎻忚堪锛氶噾棰濆瓧绗︿覆杞崲锛氬崟浣嶅垎杞垚鍗曞厓
+ *
+ * @param o 浼犲叆闇�瑕佽浆鎹㈢殑閲戦瀛楃涓�
+ * @return 杞崲鍚庣殑閲戦瀛楃涓�
+ */
+ public static String fenToYuan(Object o) {
+ if (o == null)
+ return "0.00";
+ String s = o.toString();
+ int len = -1;
+ StringBuilder sb = new StringBuilder();
+ if (s != null && s.trim().length() > 0 && !s.equalsIgnoreCase("null")) {
+ s = removeZero(s);
+ if (s != null && s.trim().length() > 0
+ && !s.equalsIgnoreCase("null")) {
+ len = s.length();
+ int tmp = s.indexOf("-");
+ if (tmp >= 0) {
+ if (len == 2) {
+ sb.append("-0.0").append(s.substring(1));
+ } else if (len == 3) {
+ sb.append("-0.").append(s.substring(1));
+ } else {
+ sb.append(s.substring(0, len - 2)).append(".")
+ .append(s.substring(len - 2));
+ }
+ } else {
+ if (len == 1) {
+ sb.append("0.0").append(s);
+ } else if (len == 2) {
+ sb.append("0.").append(s);
+ } else {
+ sb.append(s.substring(0, len - 2)).append(".")
+ .append(s.substring(len - 2));
+ }
+ }
+ } else {
+ sb.append("0.00");
+ }
+ } else {
+ sb.append("0.00");
+ }
+ return sb.toString();
+ }
- /**
- *
- * 鍔熻兘鎻忚堪锛氶噾棰濆瓧绗︿覆杞崲锛氬崟浣嶅厓杞垚鍗曞垎
- *
- * @param str
- * 浼犲叆闇�瑕佽浆鎹㈢殑閲戦瀛楃涓�
- * @return 杞崲鍚庣殑閲戦瀛楃涓�
- */
- public static String yuanToFen(Object o) {
- if (o == null)
- return "0";
- String s = o.toString();
- int posIndex = -1;
- String str = "";
- StringBuilder sb = new StringBuilder();
- if (s != null && s.trim().length() > 0 && !s.equalsIgnoreCase("null")) {
- posIndex = s.indexOf(".");
- if (posIndex > 0) {
- int len = s.length();
- if (len == posIndex + 1) {
- str = s.substring(0, posIndex);
- if (str == "0") {
- str = "";
- }
- sb.append(str).append("00");
- } else if (len == posIndex + 2) {
- str = s.substring(0, posIndex);
- if (str == "0") {
- str = "";
- }
- sb.append(str)
- .append(s.substring(posIndex + 1, posIndex + 2))
- .append("0");
- } else if (len == posIndex + 3) {
- str = s.substring(0, posIndex);
- if (str == "0") {
- str = "";
- }
- sb.append(str).append(
- s.substring(posIndex + 1, posIndex + 3));
- } else {
- str = s.substring(0, posIndex);
- if (str == "0") {
- str = "";
- }
- sb.append(str).append(
- s.substring(posIndex + 1, posIndex + 3));
- }
- } else {
- sb.append(s).append("00");
- }
- } else {
- sb.append("0");
- }
- str = removeZero(sb.toString());
- if (str != null && str.trim().length() > 0
- && !str.trim().equalsIgnoreCase("null")) {
- return str;
- } else {
- return "0";
- }
- }
+ /**
+ * 鍔熻兘鎻忚堪锛氶噾棰濆瓧绗︿覆杞崲锛氬崟浣嶅厓杞垚鍗曞垎
+ *
+ * @param o 浼犲叆闇�瑕佽浆鎹㈢殑閲戦瀛楃涓�
+ * @return 杞崲鍚庣殑閲戦瀛楃涓�
+ */
+ public static String yuanToFen(Object o) {
+ if (o == null)
+ return "0";
+ String s = o.toString();
+ int posIndex = -1;
+ String str = "";
+ StringBuilder sb = new StringBuilder();
+ if (s != null && s.trim().length() > 0 && !s.equalsIgnoreCase("null")) {
+ posIndex = s.indexOf(".");
+ if (posIndex > 0) {
+ int len = s.length();
+ if (len == posIndex + 1) {
+ str = s.substring(0, posIndex);
+ if (str == "0") {
+ str = "";
+ }
+ sb.append(str).append("00");
+ } else if (len == posIndex + 2) {
+ str = s.substring(0, posIndex);
+ if (str == "0") {
+ str = "";
+ }
+ sb.append(str)
+ .append(s.substring(posIndex + 1, posIndex + 2))
+ .append("0");
+ } else if (len == posIndex + 3) {
+ str = s.substring(0, posIndex);
+ if (str == "0") {
+ str = "";
+ }
+ sb.append(str).append(
+ s.substring(posIndex + 1, posIndex + 3));
+ } else {
+ str = s.substring(0, posIndex);
+ if (str == "0") {
+ str = "";
+ }
+ sb.append(str).append(
+ s.substring(posIndex + 1, posIndex + 3));
+ }
+ } else {
+ sb.append(s).append("00");
+ }
+ } else {
+ sb.append("0");
+ }
+ str = removeZero(sb.toString());
+ if (str != null && str.trim().length() > 0
+ && !str.trim().equalsIgnoreCase("null")) {
+ return str;
+ } else {
+ return "0";
+ }
+ }
+ /**
+ * 鍒涘缓鍟嗛摵缂栧彿
+ * 搴楅摵缂栧彿锛氬勾鏈堟棩 + 搴忓彿 渚嬶細202210100001
+ *
+ * @param
+ * @return java.lang.String
+ * @author AI
+ * @date 2022-10-10 15:43
+ */
+ public String createShopCode() {
+ String ymd = getYMD();
+ Integer number = generatedCodeMapper.createNumber(ymd, "shop");
+ String numberStr = RandomUtils.formatSign(number, 4);
+ return getYMD() + numberStr;
+ }
+ /**
+ * 鍒涘缓妗堜欢缂栧彿
+ * 妗堜欢缂栧彿瑙勫垯锛氬勾浠� + 鍖哄幙缂栧彿 + 鏈堟棩 + 搴忓彿 渚嬶細202233112310100001
+ *
+ * @param
+ * @return java.lang.String
+ * @author AI
+ * @date 2022-10-10 15:43
+ */
+ public String createCaseCode() {
+ String ymd = getYMD();
+ double num = Math.random();
+ int myRandInt = (int)(num*100+1);
+// Integer number = myRandInt;
+ Integer number = generatedCodeMapper.createNumber(ymd, "case");
+ String numberStr = RandomUtils.formatSign(number, 4);
+ String year = String.valueOf(LocalDateTime.now().getYear());
+ String areaCode = "331123";
+ DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("MMdd");
+ String md = dtf2.format(LocalDateTime.now());
+ StringBuilder stringBuilder = new StringBuilder();
+ stringBuilder.append(year);
+ stringBuilder.append(areaCode);
+ stringBuilder.append(md);
+ stringBuilder.append(numberStr);
+ return stringBuilder.toString();
+ }
- public static void main(String[] args) {
- System.out.println(getRqUID("1"));
+ private static String getYMD() {
+ DateTimeFormatter dtf2 = DateTimeFormatter.ofPattern("yyyyMMdd");
+ return dtf2.format(LocalDateTime.now());
+ }
- }
+ public static void main(String[] args) {
+
+ }
}
--
Gitblit v1.8.0