From 1ba009cf9ec2032389b1dcf9c01d3ce3cb0532b7 Mon Sep 17 00:00:00 2001 From: xx572959496 Date: Mon, 6 Jan 2025 19:38:05 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=8F=82=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/dx/union/CheckLogin.java | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/dx/union/CheckLogin.java b/src/main/java/com/dx/union/CheckLogin.java index 370dafe..9bdaf3f 100644 --- a/src/main/java/com/dx/union/CheckLogin.java +++ b/src/main/java/com/dx/union/CheckLogin.java @@ -34,6 +34,11 @@ public class CheckLogin { private static final Logger log = LogManager.getLogger(CheckLogin.class); private static final char[] HEX_CHARS = new char[]{'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f'}; private static final String DEFAULT_FILE_PATH = "/tmp/users.csv"; + /** + * 1:立即执行 + * 0:间隔运行 + */ + private static final Integer DEFAULT_IS_RUN = 0; public static void main(String[] args) { try { @@ -55,6 +60,7 @@ public class CheckLogin { int singMark = isMorning ? 0 : 1; log.info("现在要打 {} 卡", isMorning ? "上班" : "下班"); String filePath = args.length > 0 ? args[0] : DEFAULT_FILE_PATH; + Integer isNowRun = args.length > 0 ? Integer.valueOf(args[1]) : DEFAULT_IS_RUN; if (!FileUtil.exist(filePath)) { log.error("未自定义账号文件路径(运行命令行添加自定义账号文件路径 例如:java -jar xxx.jar /use/local/user.csv),默认文件路径 {} 读取为空", DEFAULT_FILE_PATH); return; @@ -91,7 +97,10 @@ public class CheckLogin { } // 随机 1-3分钟之后执行下一个人的打卡 // 1 * 60 * 1000 - BigDecimal randomMinute = NumberUtil.round(RandomUtil.randomFloat(1, 3),2); + BigDecimal randomMinute = NumberUtil.round(RandomUtil.randomFloat(0.1F, 1.2F),2); + if (isNowRun == 1) { + randomMinute = BigDecimal.valueOf(0); + } log.info("{}分钟后 执行下个人的打卡任务", randomMinute); ThreadUtil.safeSleep(NumberUtil.mul(randomMinute, 60, 1000)); }));