diff --git a/dsBigData/Business/School/SchoolController/SchoolController.go b/dsBigData/Business/School/SchoolController/SchoolController.go index abd30618..8cc441b2 100644 --- a/dsBigData/Business/School/SchoolController/SchoolController.go +++ b/dsBigData/Business/School/SchoolController/SchoolController.go @@ -477,6 +477,23 @@ func GetEduAssistCountByCity(c *gin.Context) { eduAssistCountArr = append(eduAssistCountArr, eduAssistCount) } + if areaType == "1" { + cityDirectlyCount, err := SchoolService.GetCityDirectlyEduAssistCount(cityCode) + if err != nil { + c.JSON(http.StatusOK, Model.Res{ + Success: false, + Message: err.Error(), + }) + return + } + + var eduAssistCount SchoolModel.EduAssistCount + eduAssistCount.AreaCode = cityCode + eduAssistCount.AreaName = "市直属" + eduAssistCount.Count = cityDirectlyCount + eduAssistCountArr = append(eduAssistCountArr, eduAssistCount) + } + c.JSON(http.StatusOK, Model.Res{ Success: true, List: eduAssistCountArr, diff --git a/dsBigData/Business/School/SchoolDao/SchoolDao.go b/dsBigData/Business/School/SchoolDao/SchoolDao.go index 1e9a007e..28834996 100644 --- a/dsBigData/Business/School/SchoolDao/SchoolDao.go +++ b/dsBigData/Business/School/SchoolDao/SchoolDao.go @@ -567,5 +567,29 @@ func GetCityDirectlySchoolCount(cityCode string) (int, error) { } return int(result.TotalHits()), nil +} + +/** +功能:根据市编码获取教辅单位数量 +*/ +func GetCityDirectlyEduAssistCount(cityCode string) (int, error) { + enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) + delFlagTerm := elastic.NewTermQuery("del_flag", 0) + bUseTerm := elastic.NewTermQuery("data_content.b_use", 1) + districtCodeTerm := elastic.NewTermQuery("district_code", cityCode) + orgTypeTerm := elastic.NewTermQuery("org_type", "3") + + boolQuery := elastic.NewBoolQuery().Must(districtCodeTerm, orgTypeTerm, enableFlagTerm, delFlagTerm, bUseTerm) + result, err := esClient.Search(). + Index("org_school"). + Query(boolQuery). + Size(0). + Do(CTX) + + if err != nil { + return 0, err + } + + return int(result.TotalHits()), nil } diff --git a/dsBigData/Business/School/SchoolService/SchoolService.go b/dsBigData/Business/School/SchoolService/SchoolService.go index c62ce5d9..1c47d6c1 100644 --- a/dsBigData/Business/School/SchoolService/SchoolService.go +++ b/dsBigData/Business/School/SchoolService/SchoolService.go @@ -87,3 +87,8 @@ func GetCityDirectlySchoolCount(cityCode string) (int, error) { count, err := SchoolDao.GetCityDirectlySchoolCount(cityCode) return count, err } + +func GetCityDirectlyEduAssistCount(cityCode string) (int, error) { + count, err := SchoolDao.GetCityDirectlyEduAssistCount(cityCode) + return count, err +} \ No newline at end of file diff --git a/dsBigData/Business/Student/StudentDao/StudentDao.go b/dsBigData/Business/Student/StudentDao/StudentDao.go index 88301d39..caf90f2a 100644 --- a/dsBigData/Business/Student/StudentDao/StudentDao.go +++ b/dsBigData/Business/Student/StudentDao/StudentDao.go @@ -204,7 +204,7 @@ func GetStudentCountAggsRxnf(schoolId string, stageId string) ([]StudentModel.St resCount := gjson.Get(resStr, "rxnf.buckets.#") for i := 0; i < int(resCount.Num); i++ { var studentCountRxnf StudentModel.StudentCountRxnf - studentCountRxnf.Rxnf = CommonUtil.ConverFloat64ToString(gjson.Get(resStr, "rxnf.buckets."+CommonUtil.ConvertIntToString(i)+".key").Num) + studentCountRxnf.Rxnf = CommonUtil.ConverFloat64ToString(gjson.Get(resStr, "rxnf.buckets."+CommonUtil.ConvertIntToString(i)+".key").Num) + "级" studentCountRxnf.Count = int(gjson.Get(resStr, "rxnf.buckets."+CommonUtil.ConvertIntToString(i)+".doc_count").Num) studentCountRxnfArr = append(studentCountRxnfArr, studentCountRxnf) diff --git a/dsBigData/build/dsBigData b/dsBigData/build/dsBigData index e33d2a1d..e119168a 100644 Binary files a/dsBigData/build/dsBigData and b/dsBigData/build/dsBigData differ