diff --git a/dsBigData/Business/School/SchoolController/SchoolController.go b/dsBigData/Business/School/SchoolController/SchoolController.go index 8cc441b2..1779a772 100644 --- a/dsBigData/Business/School/SchoolController/SchoolController.go +++ b/dsBigData/Business/School/SchoolController/SchoolController.go @@ -419,10 +419,17 @@ func PageStageBySchoolId(c *gin.Context) { return } - c.JSON(http.StatusOK, Model.Res{ - Success: true, - List: resArr, - }) + if resArr != nil { + c.JSON(http.StatusOK, Model.Res{ + Success: true, + List: resArr, + }) + } else { + c.JSON(http.StatusOK, Model.Res{ + Success: true, + List: make([]map[string]interface{}, 0), + }) + } } /** @@ -612,7 +619,7 @@ func GetSchoolCountByCity(c *gin.Context) { var schoolCount SchoolModel.SchoolCount schoolCount.AreaCode = cityCode - schoolCount.AreaName = "市直属" + schoolCount.AreaName = "中省直" schoolCount.Count = cityDirectlyCount schoolCountArr = append(schoolCountArr, schoolCount) } diff --git a/dsBigData/Business/School/SchoolDao/SchoolDao.go b/dsBigData/Business/School/SchoolDao/SchoolDao.go index e4ab87ff..c3aed09c 100644 --- a/dsBigData/Business/School/SchoolDao/SchoolDao.go +++ b/dsBigData/Business/School/SchoolDao/SchoolDao.go @@ -58,14 +58,25 @@ xxbxlxm -1:全部 func PageSchoolInfoByDistrictCode(districtCode string, xxbxlxm string) ([]SchoolModel.School, error) { enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) - districtCodeTerm := elastic.NewTermQuery("district_code", districtCode) + var districtCodeTerm *elastic.TermQuery + var directlyUnderTypeTerms *elastic.TermsQuery + if strings.HasSuffix(districtCode, "00") { //市 + districtCodeTerm = elastic.NewTermQuery("city_code", districtCode) + interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr([]string{"2", "3", "4"}) + directlyUnderTypeTerms = elastic.NewTermsQuery("data_content.directly_under_type", interfaceArr...) + } else { //区 + districtCodeTerm = elastic.NewTermQuery("district_code", districtCode) + interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr([]string{"1"}) + directlyUnderTypeTerms = elastic.NewTermsQuery("data_content.directly_under_type", interfaceArr...) + } + orgTypeTerm := elastic.NewTermQuery("data_content.org_type", "2") var boolQuery *elastic.BoolQuery if xxbxlxm == "-1" { - boolQuery = elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, districtCodeTerm, orgTypeTerm) + boolQuery = elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, districtCodeTerm, directlyUnderTypeTerms, orgTypeTerm) } else { xxbxlxmTerm := elastic.NewTermQuery("school_type", xxbxlxm) - boolQuery = elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, districtCodeTerm, orgTypeTerm, xxbxlxmTerm) + boolQuery = elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, districtCodeTerm, directlyUnderTypeTerms, orgTypeTerm, xxbxlxmTerm) } result, err := esClient.Search(). Index("org_school"). @@ -135,10 +146,11 @@ func AggsDistrictStatSchoolCount(districtCodeArr []string) ([]SchoolModel.School enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) orgTypeTerm := elastic.NewTermQuery("data_content.org_type", "2") + directlyUnderTypeTerm := elastic.NewTermQuery("data_content.directly_under_type", "1") interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr(districtCodeArr) cityCodeTerm := elastic.NewTermsQuery("district_code", interfaceArr...) - boolQuery := elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, cityCodeTerm, orgTypeTerm) + boolQuery := elastic.NewBoolQuery().Must(enableFlagTerm, delFlagTerm, cityCodeTerm, orgTypeTerm, directlyUnderTypeTerm) districtCodeAggs := elastic. NewTermsAggregation(). @@ -550,10 +562,12 @@ func GetCityDirectlySchoolCount(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) + districtCodeTerm := elastic.NewTermQuery("city_code", cityCode) orgTypeTerm := elastic.NewTermQuery("data_content.org_type", "2") + interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr([]string{"2", "3", "4"}) + directlyUnderTypeTerms := elastic.NewTermsQuery("data_content.directly_under_type", interfaceArr...) - boolQuery := elastic.NewBoolQuery().Must(districtCodeTerm, orgTypeTerm, enableFlagTerm, delFlagTerm, bUseTerm) + boolQuery := elastic.NewBoolQuery().Must(districtCodeTerm, orgTypeTerm, enableFlagTerm, delFlagTerm, bUseTerm, directlyUnderTypeTerms) result, err := esClient.Search(). Index("org_school"). diff --git a/dsBigData/Business/Student/StudentDao/StudentDao.go b/dsBigData/Business/Student/StudentDao/StudentDao.go index c1b2a04f..c16ef8b2 100644 --- a/dsBigData/Business/Student/StudentDao/StudentDao.go +++ b/dsBigData/Business/Student/StudentDao/StudentDao.go @@ -214,12 +214,17 @@ func GetStudentCountAggsRxnf(schoolId string, stageId string) ([]StudentModel.St boolQuery := elastic.NewBoolQuery().Must(orgIdTerm, stageIdTerm, bUseTerm, rxnfRang, enableFlagTerm, delFlagTerm) - rxnfHistogramAggregation := elastic.NewHistogramAggregation().Field("data_content.rxnf").MinDocCount(0).ExtendedBounds(float64(startYear), float64(endYear)).Interval(1) + //rxnfHistogramAggregation := elastic.NewHistogramAggregation().Field("data_content.rxnf").MinDocCount(0).ExtendedBounds(float64(startYear), float64(endYear)).Interval(1) + + rxnfAggs := elastic. + NewTermsAggregation(). + Field("data_content.rxnf"). + Size(100) result, err := esClient.Search(). Index("user_student"). Query(boolQuery). - Aggregation("rxnf", rxnfHistogramAggregation). + Aggregation("rxnf", rxnfAggs). Do(CTX) if err != nil { diff --git a/dsBigData/Business/Teacher/TeacherDao/TeacherDao.go b/dsBigData/Business/Teacher/TeacherDao/TeacherDao.go index 9378252d..52ba373d 100644 --- a/dsBigData/Business/Teacher/TeacherDao/TeacherDao.go +++ b/dsBigData/Business/Teacher/TeacherDao/TeacherDao.go @@ -18,13 +18,14 @@ var CTX = EsUtil.CTX func GetTeacherCountAggsXb(schoolId string) ([]TeacherModel.TeacherCountXb, error) { orgIdTerm := elastic.NewTermQuery("org_id", schoolId) + identityIdTerm := elastic.NewTermQuery("data_content.identity_id", 2) bUseTerm := elastic.NewTermQuery("data_content.b_use", 1) enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr([]string{"1", "2"}) xbTerms := elastic.NewTermsQuery("data_content.xbm", interfaceArr...) - boolQuery := elastic.NewBoolQuery().Must(orgIdTerm, bUseTerm, enableFlagTerm, delFlagTerm, xbTerms) + boolQuery := elastic.NewBoolQuery().Must(orgIdTerm, identityIdTerm, bUseTerm, enableFlagTerm, delFlagTerm, xbTerms) xbAggs := elastic. NewTermsAggregation(). @@ -110,7 +111,7 @@ func GetTeacherCountAggsXxbxlxByCityOrDistrict(districtCode []string, schoolIds boolQuery = elastic.NewBoolQuery().Must(orgIdTerms, enableFlagTerm, delFlagTerm, identityIdTerm, bUseTerm, xxbxlxTerms) } else { areaTerm := elastic.NewTermQuery("district_code", areaCode) - boolQuery = elastic.NewBoolQuery().Must(areaTerm, enableFlagTerm, delFlagTerm, bUseTerm, xxbxlxTerms) + boolQuery = elastic.NewBoolQuery().Must(areaTerm, enableFlagTerm, delFlagTerm, identityIdTerm, bUseTerm, xxbxlxTerms) } xxbxlxAggs := elastic. @@ -154,10 +155,11 @@ func GetTeacherCountAggsOrgId(schoolIds []string) ([]TeacherModel.TeacherCountAg enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) bUseTerm := elastic.NewTermQuery("data_content.b_use", 1) + identityIdTerm := elastic.NewTermQuery("data_content.identity_id", 2) interfaceArr := CommonUtil.ConvertStringArrToInterfaceArr(schoolIds) orgIdTerms := elastic.NewTermsQuery("org_id", interfaceArr...) - boolQuery := elastic.NewBoolQuery().Must(orgIdTerms, enableFlagTerm, delFlagTerm, bUseTerm, orgIdTerms) + boolQuery := elastic.NewBoolQuery().Must(orgIdTerms, enableFlagTerm, delFlagTerm, bUseTerm, identityIdTerm, orgIdTerms) orgIdAggs := elastic. NewTermsAggregation(). @@ -244,12 +246,12 @@ func GetTeacherTotalCount(areaCode string) (int, error) { } else { areaCodeTerm = elastic.NewTermQuery("org_id", areaCode) } - orgTypeTerm := elastic.NewTermQuery("data_content.identity_id", 2) + identityIdTerm := elastic.NewTermQuery("data_content.identity_id", 2) enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) bUseTerm := elastic.NewTermQuery("data_content.b_use", 1) - boolQuery := elastic.NewBoolQuery().Must(areaCodeTerm, orgTypeTerm, enableFlagTerm, delFlagTerm, bUseTerm) + boolQuery := elastic.NewBoolQuery().Must(areaCodeTerm, identityIdTerm, enableFlagTerm, delFlagTerm, bUseTerm) result, err := esClient.Search(). Index("user_teacher"). @@ -287,13 +289,13 @@ func GetTeacherCurrentTermAddCount(areaCode string) (int, error) { } else { areaCodeTerm = elastic.NewTermQuery("org_id", areaCode) } - orgTypeTerm := elastic.NewTermQuery("data_content.identity_id", 2) + identityIdTerm := elastic.NewTermQuery("data_content.identity_id", 2) enableFlagTerm := elastic.NewTermQuery("enable_flag", 1) delFlagTerm := elastic.NewTermQuery("del_flag", 0) bUseTerm := elastic.NewTermQuery("data_content.b_use", 1) createTimeRang := elastic.NewRangeQuery("data_content.create_time").Gte(createTime) - boolQuery := elastic.NewBoolQuery().Must(areaCodeTerm, orgTypeTerm, enableFlagTerm, delFlagTerm, bUseTerm, createTimeRang) + boolQuery := elastic.NewBoolQuery().Must(areaCodeTerm, identityIdTerm, enableFlagTerm, delFlagTerm, bUseTerm, createTimeRang) result, err := esClient.Search(). Index("user_teacher"). diff --git a/dsBigData/build/dsBigData b/dsBigData/build/dsBigData index d9661a77..766f40a0 100644 Binary files a/dsBigData/build/dsBigData and b/dsBigData/build/dsBigData differ