From b0f374409775bd30ed8f0dc8d47d015d3edc0abb Mon Sep 17 00:00:00 2001 From: sunty <1172534965@qq.com> Date: 星期二, 03 九月 2024 19:05:52 +0800 Subject: [PATCH] 1、修改查询策略 2、修改地址统计策略 --- rule/service.go | 34 +++++++++++++++++++++++----------- 1 files changed, 23 insertions(+), 11 deletions(-) diff --git a/rule/service.go b/rule/service.go index 5fac3c6..eb9fcbe 100644 --- a/rule/service.go +++ b/rule/service.go @@ -9,6 +9,7 @@ "ruleModelEngine/db" "ruleModelEngine/task" "strconv" + "time" ) // @@ -55,6 +56,7 @@ cameraIds = append(cameraIds, deviceInfo.DeviceCode) } } + if len(cameraIds) == 0 { logger.Info("涓嶅瓨鍦ㄥ晢浣忔ゼ璁惧锛�", cameraIds) return @@ -92,7 +94,7 @@ } fmt.Println("ruleInfo: ", ruleInfo) communityIDs, err := db.GetCommunityIDs() - //fmt.Println("communityIDs:", communityIDs) + fmt.Println("communityIDs:", communityIDs) if err != nil { logger.Error("GetCommunityIDs Error", err) } @@ -103,18 +105,22 @@ //fmt.Println(labeManage) for _, communityID := range communityIDs { executeEnteringButNotLeaving(communityID) + //涓囧叏绀惧尯 //if communityID != "50010101010000001001" { // continue //} fmt.Println("communityID: ", communityID) //continue + now := time.Now() + timeThresholdDay := now.AddDate(0, 0, -config.Api.TimeThreshold) + timeThresholdDayZeroTime := time.Date(timeThresholdDay.Year(), timeThresholdDay.Month(), timeThresholdDay.Day(), 0, 0, 0, 0, timeThresholdDay.Location()).Unix() + fmt.Println("姣斿鏃堕棿鎴筹細", timeThresholdDayZeroTime) //鏌ヨ绀惧尯鍐呬汉鍛樻。妗堬紝鏂逛究鏁版嵁鏇存柊 - personStatusList, err := db.QueryPersonStatusWithPagination(communityID, 30) + personStatusList, err := db.QueryPersonStatusWithPagination(communityID, timeThresholdDayZeroTime) if err != nil { logger.Error("QueryPersonStatusWithPagination err: ", err) } - // documentNumberIDS := make([]string, 0) for _, personStatus := range personStatusList { @@ -122,7 +128,7 @@ documentNumberIDS = append(documentNumberIDS, personStatus.DocumentNumber) //涓氬姟閫昏緫 } - //fmt.Println("len(documentNumberIDS)", len(documentNumberIDS)) + fmt.Println("绀惧尯妗f鎬绘潯鏁帮細", len(documentNumberIDS)) captureInfos := make([]db.CaptureInfo, 0) batchSize := config.Elastic.BatchSize //fmt.Println(batchSize) @@ -133,7 +139,7 @@ } batch := documentNumberIDS[i:end] //fmt.Println("batch: ", batch) - batchCaptureInfos, err := db.Query1MDataByCommunityId(communityID, batch, 30) + batchCaptureInfos, err := db.QueryByTimeThresholdDataByCommunityId(communityID, batch, config.Api.TimeThreshold) if err != nil { logger.Error("Query1MDataByCommunityId Error", err) } @@ -149,7 +155,6 @@ fmt.Println("鍏辫鏈夋。妗堟暟鎹潯鏁颁负锛�", len(captureInfos)) //琛ュ叏鍒嗘瀽鎵�闇�鏁版嵁 for i := range captureInfos { - captureDays, overnightCount := data.CalculateCaptureDays(captureInfos[i].CaptureDetail) captureInfos[i].CaptureDays = captureDays captureInfos[i].OvernightStays = overnightCount @@ -169,31 +174,38 @@ } //fmt.Println("residentCount: ", residentCount) //fmt.Println("captureInfosQ: ", captureInfos) - for _, identity := range labeManage { switch identity.Name { case "鏈嶅姟浜哄憳": identity, attribute := CreateLinearModel(captureInfos, communityID, 2.68, identity.ValidDays, identity.Id) + errIdentity := db.UpdateDBPersonLabel(identity) if errIdentity != nil { logger.Error("UpdateDBPersonLabel Error", errIdentity) } + captureInfos = attribute } } + identity := CreateProcessModel(captureInfos, 30, communityID, labeManage) errIdentity := db.UpdateDBPersonLabel(identity) if errIdentity != nil { logger.Error("UpdateDBPersonLabel Error", errIdentity) } + //continue postCaptureInfos := data.ProcessData(captureInfos, personStatusList, ruleInfo, communityID) - /*for _, inf := range postCaptureInfos { - fmt.Println("inf: ", inf.DocumentNumber, inf.Status, inf.FrequentAddress, inf.LastAppearanceStatusTime) - }*/ - //fmt.Println("鍏辨洿鏂版。妗堟暟锛�", len(postCaptureInfos)) + for _, inf := range postCaptureInfos { + fmt.Println("---->pause prepare: capture ", inf.DocumentNumber, inf.Status, inf.FrequentAddress) + //return + //time.Sleep(time.Second * 10) + + //fmt.Println("inf: ", inf.DocumentNumber, inf.Status, inf.FrequentAddress, inf.LastAppearanceStatusTime) + } + fmt.Println("鍏辨洿鏂版。妗堟暟锛�", len(postCaptureInfos)) //fmt.Println("----->captureInfos: ", len(captureInfos)) //continue UpdatePersonInfoErr := db.UpdatePersonInfo(postCaptureInfos, communityID) -- Gitblit v1.8.0