From 78c5692e45a4357adffb864dfe105fa36c814ed3 Mon Sep 17 00:00:00 2001
From: sunty <1172534965@qq.com>
Date: 星期四, 05 九月 2024 13:55:28 +0800
Subject: [PATCH] 添加阈值到配置文件

---
 config/config.go            |   13 +++++++------
 data/prepare.go             |   22 ++++++++++++----------
 config/rulemodelengine.yaml |    4 +++-
 3 files changed, 22 insertions(+), 17 deletions(-)

diff --git a/config/config.go b/config/config.go
index f29e1cd..61d850f 100644
--- a/config/config.go
+++ b/config/config.go
@@ -42,12 +42,13 @@
 }
 
 type api struct {
-	Host          string `mapstructure: "host"`
-	Port          string `mapstructure: "port"`
-	TimeThreshold int    `mapstructure:"timeThreshold"`
-	CsTimes       int    `mapstructure:"csTimes"`
-	CsHours       int    `mapstructure:"csHours"`
-	AInterval     int    `mapstructure:"aInterval"`
+	Host                 string `mapstructure: "host"`
+	Port                 string `mapstructure: "port"`
+	CapAddrDaysThreshold int    `mapstructure:"capAddrDaysThreshold"`
+	TimeThreshold        int    `mapstructure:"timeThreshold"`
+	CsTimes              int    `mapstructure:"csTimes"`
+	CsHours              int    `mapstructure:"csHours"`
+	AInterval            int    `mapstructure:"aInterval"`
 }
 
 var LogConf = &LogConfig{}
diff --git a/config/rulemodelengine.yaml b/config/rulemodelengine.yaml
index aa9cd5f..7bf547e 100644
--- a/config/rulemodelengine.yaml
+++ b/config/rulemodelengine.yaml
@@ -28,7 +28,9 @@
 api:
   host: 192.168.20.115
   port: 4101
-  timeThreshold: 90 #timeThreshold 鏌ヨ妗f鏃堕棿鑼冨洿锛屼负涔嬪墠timeThreshold澶╀箣鍐呯殑鏁版嵁
+  capAddrDaysThreshold: 50 #capAddrDaysThreshold 鎶撴媿闈炵┖闈�1妤奸潪鍦颁笅鍦板潃澶╂暟鍗犳�诲ぉ鏁版瘮鍊硷紝鐧惧垎鍒�
+  timeThreshold: 270 #timeThreshold 鏌ヨ妗f鏃堕棿鑼冨洿锛屼负涔嬪墠timeThreshold澶╀箣鍐呯殑鏁版嵁
   csTimes: 10 #climbed stairs times 绐滄ゼ娆℃暟
   csHours: 5 #climbed stairs hours 绐滄ゼ棰勮鏃堕棿 璇sHours鏃堕棿鑼冨洿涔嬪唴
   aInterval: 3 #interval time between anomalies  杩涘嚭寮傚父闂撮殧鏃堕棿
+  parse2excel: true #鑻ヤ负true锛屾湰娆′粎鐢熸垚鎶ヨ〃锛屼笉璺戣鍒�
diff --git a/data/prepare.go b/data/prepare.go
index 600949c..6fec710 100644
--- a/data/prepare.go
+++ b/data/prepare.go
@@ -3,6 +3,7 @@
 import (
 	"fmt"
 	"regexp"
+	"ruleModelEngine/config"
 	"ruleModelEngine/db"
 	"strings"
 	"time"
@@ -120,10 +121,11 @@
 			//濡傛灉鏄紝 鎻愬墠璁剧疆濂藉鐢ㄥ湴鍧� floor1Address = detail.CaptureAddress
 			floor1Address = detail.CaptureAddress
 		}
-		if matchFlagNoF && floor1Address != "" {
+		if matchFlagNoF && floor1Address == "" {
 			//濡傛灉鏄紝 鎻愬墠璁剧疆濂藉鐢ㄥ湴鍧� floor1Address = detail.CaptureAddress
 			floor1Address = detail.CaptureAddress
 		}
+		//fmt.Println("now floor1Address:", floor1Address,"\tnow detail CaptureAddress",detail.CaptureAddress)
 		//鍒ゆ柇鏃ユ湡鏍囨槸鍚︽弧瓒虫潯浠� 鍒ゆ柇鏃ユ湡鏍囨槸鍚︿负绌猴紝鑻ヤ负绌鸿〃绀烘槸绗竴涓厓绱狅紝鍒濆鍖栨棩鏈熼澏鏍�
 		if pointDate == "" {
 			//鍒濆鍖栨棩鏈熼澏鏍囦负褰撳墠鏃ユ湡
@@ -132,7 +134,7 @@
 			pointAddress[detail.CaptureAddress]++
 			//鑻ヤ负鏈�鍚庝竴鏉″垯璁$畻鍗曟棩甯哥敤鍦板潃
 			if index == len(captureDetail)-1 {
-				fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
+				//fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
 				//杩欎唬琛ㄤ粎鏈変竴鏉℃暟鎹紝灏嗕細鐩存帴鎶婂綋鍓嶅湴鍧�鍔犲叆dateAddress 鏃ユ湡姹囨�诲崟鏃ュ父鐢ㄥ湴鍧�琛ㄥ唴 涓嬫柟continue浼氱洿鎺ョ粨鏉熷惊鐜�
 				//鍚﹀垯浼氬垵濮嬪寲pointDate鍜宲ointAddress
 				dateAddress[pointDate] = detail.CaptureAddress
@@ -145,7 +147,7 @@
 			pointAddress[detail.CaptureAddress]++
 			//鑻ヤ负鏈�鍚庝竴鏉″垯璁$畻鍗曟棩甯哥敤鍦板潃
 			if index == len(captureDetail)-1 {
-				fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
+				//fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
 				//璁$畻鍗曟棩甯哥敤鍦板潃 鑻ュ湴鍧�鍐呴兘涓�1F鎴栬�呯┖鍦板潃锛屼細杩斿洖绌哄湴鍧�
 				dateAddress[pointDate] = getfrAddress(pointAddress)
 				continue
@@ -157,7 +159,7 @@
 				//鎶婂綋鍓嶆渶鍚庝竴鏉″姞鍏�	pointAddress闈舵爣鍦板潃
 				pointAddress[detail.CaptureAddress]++
 				//
-				fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
+				//fmt.Println("澶勭悊鍓峱ointAddress琛細", pointAddress)
 				//璁$畻鍗曟棩甯哥敤鍦板潃 鑻ュ湴鍧�鍐呴兘涓�1F鎴栬�呯┖鍦板潃锛屼細杩斿洖绌哄湴鍧�
 				dateAddress[pointDate] = getfrAddress(pointAddress)
 				continue
@@ -169,11 +171,11 @@
 			pointAddress = make(map[string]int, 0)
 		}
 	}
-	fmt.Println("鎶撴媿鍦板潃寰呭鐞嗙粨鏋勮〃锛�", dateAddress)
-	fmt.Println("dareAddress len: ", len(dateAddress))
-	//鍒ゆ柇鎶撴媿鐨勯潪1妤奸潪绌虹殑澶╂暟鍗犳瘮鎬诲ぉ鏁�
-	if float64(len(dateAddress))/float64(len(captureDays))*100 >= 50 {
-		fmt.Println("闈�1妤奸潪绌烘姄鎷嶅崰姣�: ", float64(len(dateAddress))/float64(len(captureDays))*100)
+	//fmt.Println("鎶撴媿鍦板潃寰呭鐞嗙粨鏋勮〃锛�", dateAddress)
+	//fmt.Println("dareAddress len: ", len(dateAddress))
+	//鍒ゆ柇鎶撴媿鐨勯潪1妤奸潪绌洪潪鍦颁笅鐨勫ぉ鏁板崰姣旀�诲ぉ鏁�
+	if float64(len(dateAddress))/float64(len(captureDays))*100 >= float64(config.Api.CapAddrDaysThreshold) {
+		//fmt.Println("闈�1妤奸潪绌烘姄鎷嶅崰姣�: ", float64(len(dateAddress))/float64(len(captureDays))*100)
 		//鍒濆鍖栧湴鍧�鍒楄〃锛屾寜鍦板潃璁℃暟
 		addressCount := make(map[string]int)
 		//閬嶅巻涔嬪墠姹囨�荤殑鍗曟棩甯哥敤鍦板潃鍒楄〃
@@ -193,7 +195,7 @@
 	}
 	//fmt.Println("in address: ", inAddressCounts)
 	//fmt.Println("out address: ", outAddressCounts)
-	fmt.Println("final address: ", frequentAddress)
+	//fmt.Println("final address: ", frequentAddress)
 	return frequentAddress
 }
 

--
Gitblit v1.8.0