package quantification import ( "encoding/json" "fmt" "github.com/flipped-aurora/gin-vue-admin/server/commonus" "github.com/flipped-aurora/gin-vue-admin/server/model/assessmentmodel" ) //行政维度统计计算 /* @taskId 执行中的考核方案ID @dataAry 接收的界定参数 */ func OrgDimensionStatistics(taskId string, dataAry natureParameter) (outputData GraphicStatistics, outErr bool) { //当同时查询多个指标时启用 获取指标名称 outErr = true var normName string = "" if len(dataAry.TargetId) > 1 { //当同时查询多个指标时启用 获取指标名称 var qualEvalCont assessmentmodel.QualitativeEvaluation qualEvaWhe := commonus.MapOut() qualEvaWhe["qe_id"] = taskId qualEvalCont.GetCont(qualEvaWhe, "qe_target") taskCont, taskErr := commonus.GetTargetInfo(qualEvalCont.Target) if taskErr == true { normName = taskCont.Title outErr = taskErr } else { // outErr = error.Error("此考核项目没有数据!") outErr = taskErr return } } //获取时间参数 timeFrame := EstimatedTime(dataAry) //获取组织架构参数 orgAry, orgList := getGroupOrg(dataAry.Org) //统计方式 statisticalMethod := 3 if len(dataAry.AccMethod) == 1 { if commonus.IsItTrueInt(1, dataAry.AccMethod) == true { statisticalMethod = 1 } else { statisticalMethod = 2 } } for _, v := range orgList { if commonus.IsItTrueString(v.Name, outputData.XLine) == false { outputData.XLine = append(outputData.XLine, v.Name) for _, tv := range timeFrame { //在部门维度下进行时间跨度计算 switch tv.Class { case 1: //半年 case 2: //季度 case 3: //月 default: //全年 // wherStr := fmt.Sprintf("fld_evaluation_id = %v AND `fl_year` = %v", taskId, tv.YearName) } } } } outErr = true fmt.Printf("orgAry====>%v\n", orgAry) jn, je := json.Marshal(orgList) fmt.Printf("orgList-====>%v-====>%v\n", string(jn), je) fmt.Printf("timeFrame-====>%v\n", timeFrame) fmt.Printf("normName-====>%v\n", normName) fmt.Printf("statisticalMethod-====>%v\n", statisticalMethod) return }