From b397edee2be2dfcc3f28eeac50298b4de26b1afa Mon Sep 17 00:00:00 2001
From: liurunyu <lry9898@163.com>
Date: 星期五, 13 十二月 2024 16:53:45 +0800
Subject: [PATCH] 取水口日取水量表中,出现一些大数,明显不正确,发析系统日志,发现一些阀控器会上报一些累计流量为0的数据,且无规律,推测是其不能从水表读取到累计流量时会上报0值。如果间歇上报0值,间歇上报一些非0值,非0值减去0值,就会出现大数,一天中出现几次那么会大数进行累加,数值将更大。为此变更算法,规避这种情况,但也会丢失一些流量值。

---
 pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/CreateRandom.java |   28 ++++++++++++++--------------
 1 files changed, 14 insertions(+), 14 deletions(-)

diff --git a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/CreateRandom.java b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/CreateRandom.java
index 1491ef3..38a13ca 100644
--- a/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/CreateRandom.java
+++ b/pipIrr-platform/pipIrr-common/src/main/java/com/dy/common/util/CreateRandom.java
@@ -11,15 +11,20 @@
 
 	/*
 	public static void main(String[] args) {
-		System.out.println(CreateRandom.Random(1, 0));
-		System.out.println(CreateRandom.Random(2, 0));
-		System.out.println(CreateRandom.Random(3, 0));
-		System.out.println(CreateRandom.Random(4, 0));
-		System.out.println(CreateRandom.Random(5, 0));
-		System.out.println(CreateRandom.Random(100, 0));
-		System.out.println(CreateRandom.Random(1256, 1234));
+//		System.out.println(CreateRandom.random(1, 0));
+//		System.out.println(CreateRandom.random(2, 0));
+//		System.out.println(CreateRandom.random(3, 0));
+//		System.out.println(CreateRandom.random(4, 0));
+//		System.out.println(CreateRandom.random(5, 0));
+//		System.out.println(CreateRandom.random(100, 0));
+//		System.out.println(CreateRandom.random(1256, 1234));
+		System.out.println("=======================");
+		for(int i = 0 ; i < 100; i++){
+			System.out.println(create_between(10, 100));
+		}
 	}
 	*/
+
 	
 	/**
 	 * 4浣嶉殢鏈烘暟鎹�
@@ -79,13 +84,8 @@
 		if(max - min < min/2){
 			return min ;
 		}
-		String minStr = String.valueOf(min) ;
-		int len = minStr.length() ;
-		char minFirst = minStr.charAt(0) ;
-	    double d = Math.random();
-	    d = d * 10000000 ;
-	    String s = String.valueOf(d);
-	    s = minFirst + s ;
+		int len = String.valueOf(min).length() ;
+	    String s = String.valueOf(Math.random() * 10000000);
 	    s = s.substring(0 ,len) ;
 	    int n = Integer.parseInt(s) ;
 	    if(n < min || n > max){

--
Gitblit v1.8.0