From 1f7dfd8ef9d0dd35f7ed9b9ad91d3314f33eeef8 Mon Sep 17 00:00:00 2001 From: herenshan112 Date: Thu, 25 Nov 2021 11:28:10 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/v1/examtestpage/healthreportstat.go | 171 +++++++++--------- 1 file changed, 89 insertions(+), 82 deletions(-) diff --git a/server/api/v1/examtestpage/healthreportstat.go b/server/api/v1/examtestpage/healthreportstat.go index 78f5d5f..40ef522 100644 --- a/server/api/v1/examtestpage/healthreportstat.go +++ b/server/api/v1/examtestpage/healthreportstat.go @@ -252,103 +252,110 @@ func (h *HealthReportStat) PostReportAnswerListAll(c *gin.Context) { func (d *dataLockStatistics) getUserAnswerList(jobid, tadayTime string, page int, pageSize int64, legalAreaList []locationing.LegalArea) { d.mutext.Lock() defer d.mutext.Unlock() - _, reportAnswerInfoList, _, _ := commonus.GetUserWriteAnswer(jobid, tadayTime, page, pageSize) - var AdmDivStruct []commonus.AdministrativeDivision - var writeInfo []locationing.ReportAddress - for _, v := range reportAnswerInfoList.Answers { - for _, v_sun := range v.ReportValues { - if v_sun.Text != "" { - var writeInfoUser locationing.ReportAddress - var AdmDiv commonus.AdministrativeDivision - AdmDivMap := commonus.MapOut() - countSplit := strings.Split(v_sun.Text, "省") - if len(countSplit) >= 2 { - writeInfoUser.WechatId = v.Userid - writeInfoUser.Userid = v.Userid - writeInfoUser.AddTime = time.Now().Unix() - writeInfoUser.Address = v_sun.Text - calCulTime := tadayTime + " 12:00:00" - writeInfoUser.CalCulTime = commonus.DateToTimeStamp(calCulTime) - - AdmDiv.Userid = v.Userid - AdmDiv.Province = countSplit[0] + "省" - writeInfoUser.Province = countSplit[0] + "省" - AdmDivMap["userid"] = v.Userid - AdmDivMap["province"] = countSplit[0] + "省" - - AdmDivMap["id"] = v.IdType - - countSplitSun := strings.Split(countSplit[1], "市") - if len(countSplitSun) > 2 { - AdmDiv.City = countSplitSun[0] + "市" - AdmDiv.County = countSplitSun[1] + "市" - writeInfoUser.City = countSplitSun[0] + "市" - writeInfoUser.County = countSplitSun[1] + "市" - - AdmDivMap["city"] = countSplitSun[0] + "市" - AdmDivMap["county"] = countSplitSun[1] + "市" - } else { - AdmDiv.City = countSplitSun[0] + "市" - writeInfoUser.City = countSplitSun[0] + "市" - AdmDivMap["city"] = countSplitSun[0] + "市" - if len(countSplitSun) == 2 { - countSplitSunes := strings.Split(countSplitSun[1], "县") - if len(countSplitSun) > 1 { - AdmDiv.County = countSplitSunes[0] + "县" - writeInfoUser.County = countSplitSunes[0] + "县" - AdmDivMap["county"] = countSplitSunes[0] + "县" - } - countSplitSunesi := strings.Split(countSplitSun[1], "区") - if len(countSplitSunesi) > 1 { - AdmDiv.County = countSplitSunesi[0] + "区" - writeInfoUser.County = countSplitSunes[0] + "区" - AdmDivMap["county"] = countSplitSunesi[0] + "区" + calCulTime := tadayTime + " 12:00:00" + timeStamp := commonus.DateToTimeStamp(calCulTime) + var judgeWriteInfoUser locationing.ReportAddress + getReportAddressErr := global.GVA_DB_HealthReport.Where("calcultime = ?", timeStamp).Take(&judgeWriteInfoUser).Error + if getReportAddressErr != nil { + + _, reportAnswerInfoList, _, _ := commonus.GetUserWriteAnswer(jobid, tadayTime, page, pageSize) + var AdmDivStruct []commonus.AdministrativeDivision + var writeInfo []locationing.ReportAddress + for _, v := range reportAnswerInfoList.Answers { + for _, v_sun := range v.ReportValues { + if v_sun.Text != "" { + var writeInfoUser locationing.ReportAddress + var AdmDiv commonus.AdministrativeDivision + AdmDivMap := commonus.MapOut() + countSplit := strings.Split(v_sun.Text, "省") + if len(countSplit) >= 2 { + writeInfoUser.WechatId = v.Userid + writeInfoUser.Userid = v.Userid + writeInfoUser.AddTime = time.Now().Unix() + writeInfoUser.Address = v_sun.Text + + writeInfoUser.CalCulTime = commonus.DateToTimeStamp(calCulTime) + + AdmDiv.Userid = v.Userid + AdmDiv.Province = countSplit[0] + "省" + writeInfoUser.Province = countSplit[0] + "省" + AdmDivMap["userid"] = v.Userid + AdmDivMap["province"] = countSplit[0] + "省" + + AdmDivMap["id"] = v.IdType + + countSplitSun := strings.Split(countSplit[1], "市") + if len(countSplitSun) > 2 { + AdmDiv.City = countSplitSun[0] + "市" + AdmDiv.County = countSplitSun[1] + "市" + writeInfoUser.City = countSplitSun[0] + "市" + writeInfoUser.County = countSplitSun[1] + "市" + + AdmDivMap["city"] = countSplitSun[0] + "市" + AdmDivMap["county"] = countSplitSun[1] + "市" + } else { + AdmDiv.City = countSplitSun[0] + "市" + writeInfoUser.City = countSplitSun[0] + "市" + AdmDivMap["city"] = countSplitSun[0] + "市" + if len(countSplitSun) == 2 { + countSplitSunes := strings.Split(countSplitSun[1], "县") + if len(countSplitSun) > 1 { + AdmDiv.County = countSplitSunes[0] + "县" + writeInfoUser.County = countSplitSunes[0] + "县" + AdmDivMap["county"] = countSplitSunes[0] + "县" + } + countSplitSunesi := strings.Split(countSplitSun[1], "区") + if len(countSplitSunesi) > 1 { + AdmDiv.County = countSplitSunesi[0] + "区" + writeInfoUser.County = countSplitSunes[0] + "区" + AdmDivMap["county"] = countSplitSunesi[0] + "区" + } + + // fmt.Printf("%v切割地址%v-------------%v\n", v.Userid, countSplitSunes, len(countSplitSunes)) } - // fmt.Printf("%v切割地址%v-------------%v\n", v.Userid, countSplitSunes, len(countSplitSunes)) } - } - - //获取个人信息 - weChatUserCont := getWechatUserInfo(v.Userid) + // //获取个人信息 + // weChatUserCont := getWechatUserInfo(v.Userid) - writeInfoUser.UserName = weChatUserCont.Name - writeInfoUser.UserTel = weChatUserCont.Mobile + // writeInfoUser.UserName = weChatUserCont.Name + // writeInfoUser.UserTel = weChatUserCont.Mobile - AdmDivMap["user_name"] = weChatUserCont.Name - AdmDivMap["user_tel"] = weChatUserCont.Name + // AdmDivMap["user_name"] = weChatUserCont.Name + // AdmDivMap["user_tel"] = weChatUserCont.Name - abnormalIsTrue := false - for _, expVal := range legalAreaList { - if expVal.ProvinceName == AdmDiv.Province { - if expVal.CityName == AdmDiv.City { - abnormalIsTrue = true + abnormalIsTrue := false + for _, expVal := range legalAreaList { + if expVal.ProvinceName == AdmDiv.Province { + if expVal.CityName == AdmDiv.City { + abnormalIsTrue = true + } } } + AdmDivMap["abnormalIsTrue"] = abnormalIsTrue + if abnormalIsTrue == true { + writeInfoUser.IsDbnormal = 1 + // fmt.Printf("报警1=====>%v", abnormalIsTrue) + } else { + writeInfoUser.IsDbnormal = 2 + d.baoJing = append(d.baoJing, AdmDivMap) + // fmt.Printf("报警2=====>%v", abnormalIsTrue) + } + AdmDivStruct = append(AdmDivStruct, AdmDiv) + d.dataMap = append(d.dataMap, AdmDivMap) + writeInfo = append(writeInfo, writeInfoUser) } - AdmDivMap["abnormalIsTrue"] = abnormalIsTrue - if abnormalIsTrue == true { - writeInfoUser.IsDbnormal = 1 - // fmt.Printf("报警1=====>%v", abnormalIsTrue) - } else { - writeInfoUser.IsDbnormal = 2 - d.baoJing = append(d.baoJing, AdmDivMap) - // fmt.Printf("报警2=====>%v", abnormalIsTrue) - } - AdmDivStruct = append(AdmDivStruct, AdmDiv) - d.dataMap = append(d.dataMap, AdmDivMap) - writeInfo = append(writeInfo, writeInfoUser) - } + } } + } + errDb := global.GVA_DB_HealthReport.Create(&writeInfo).Error + if errDb != nil { + } } - // errDb := global.GVA_DB_HealthReport.Create(&writeInfo).Error - // if errDb != nil { - - // } // fmt.Printf("%v切割地址%v-------------%v\n", page, jhs, len(AdmDivStruct)) myStatisWg.Done() }