|
@@ -291,15 +291,42 @@ func (this *LineFeaturesChartClassifyController) DeleteChartClassifyCheck() {
|
|
|
}
|
|
|
var deleteStatus int
|
|
|
var tipsMsg string
|
|
|
+ childIds := make([]int, 0)
|
|
|
//删除分类
|
|
|
if req.ChartClassifyId > 0 && req.ChartInfoId == 0 {
|
|
|
//判断统计特征图表分类下,是否含有图表
|
|
|
- count, err := data_manage.GetChartInfoCountByClassifyId(req.ChartClassifyId)
|
|
|
+ classifyAll, err := data_manage.GetChartClassifyAllBySource(utils.CHART_SOURCE_LINE_FEATURE_STANDARD_DEVIATION)
|
|
|
if err != nil {
|
|
|
br.Msg = "删除失败"
|
|
|
- br.ErrMsg = "分类下是否含有图表失败,Err:" + err.Error()
|
|
|
+ br.ErrMsg = "获取分类数据失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ classifyAllMap := make(map[int]*data_manage.ChartClassifyItems)
|
|
|
+ for _, v := range classifyAll {
|
|
|
+ classifyAllMap[v.ChartClassifyId] = v
|
|
|
+ }
|
|
|
+ data.GetChartClassifyChildIds(req.ChartClassifyId, classifyAllMap, &childIds)
|
|
|
+ condition := ``
|
|
|
+ pars := make([]interface{}, 0)
|
|
|
+ if len(childIds) > 0 {
|
|
|
+ ids := utils.IntArr2joinString(childIds, ",")
|
|
|
+ condition = ` AND chart_classify_id IN (`+ ids +`) `
|
|
|
+ } else {
|
|
|
+ condition = ` AND chart_classify_id = ? `
|
|
|
+ pars = append(pars, req.ChartClassifyId)
|
|
|
+ }
|
|
|
+ count, err := data_manage.GetChartInfoCountByCondition(condition, pars)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "判断图表名称是否存在失败"
|
|
|
+ br.ErrMsg = "判断图表名称是否存在失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ //count, err := data_manage.GetChartInfoCountByClassifyId(req.ChartClassifyId)
|
|
|
+ //if err != nil {
|
|
|
+ // br.Msg = "删除失败"
|
|
|
+ // br.ErrMsg = "分类下是否含有图表失败,Err:" + err.Error()
|
|
|
+ // return
|
|
|
+ //}
|
|
|
|
|
|
if count > 0 {
|
|
|
deleteStatus = 1
|
|
@@ -308,13 +335,13 @@ func (this *LineFeaturesChartClassifyController) DeleteChartClassifyCheck() {
|
|
|
}
|
|
|
|
|
|
if deleteStatus != 1 && req.ChartInfoId == 0 {
|
|
|
- classifyCount, err := data_manage.GetChartClassifyCountByClassifyId(req.ChartClassifyId)
|
|
|
- if err != nil && !utils.IsErrNoRow(err) {
|
|
|
- br.Msg = "删除失败"
|
|
|
- br.ErrMsg = "分类下是否含有图表失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
- if classifyCount > 0 {
|
|
|
+ //classifyCount, err := data_manage.GetChartClassifyCountByClassifyId(req.ChartClassifyId)
|
|
|
+ //if err != nil && !utils.IsErrNoRow(err) {
|
|
|
+ // br.Msg = "删除失败"
|
|
|
+ // br.ErrMsg = "分类下是否含有图表失败,Err:" + err.Error()
|
|
|
+ // return
|
|
|
+ //}
|
|
|
+ if len(childIds) > 0 {
|
|
|
deleteStatus = 2
|
|
|
tipsMsg = "确认删除当前目录及包含的子目录吗"
|
|
|
}
|
|
@@ -370,12 +397,39 @@ func (this *LineFeaturesChartClassifyController) DeleteChartClassify() {
|
|
|
//删除分类
|
|
|
if req.ChartClassifyId > 0 && req.ChartInfoId == 0 {
|
|
|
//判断是否含有指标
|
|
|
- count, err := data_manage.GetChartInfoCountByClassifyId(req.ChartClassifyId)
|
|
|
- if err != nil && !utils.IsErrNoRow(err) {
|
|
|
+ childIds := make([]int, 0)
|
|
|
+ classifyAll, err := data_manage.GetChartClassifyAllBySource(utils.CHART_SOURCE_LINE_FEATURE_STANDARD_DEVIATION)
|
|
|
+ if err != nil {
|
|
|
br.Msg = "删除失败"
|
|
|
- br.ErrMsg = "判断名称是否已存在失败,Err:" + err.Error()
|
|
|
+ br.ErrMsg = "获取分类数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ classifyAllMap := make(map[int]*data_manage.ChartClassifyItems)
|
|
|
+ for _, v := range classifyAll {
|
|
|
+ classifyAllMap[v.ChartClassifyId] = v
|
|
|
+ }
|
|
|
+ data.GetChartClassifyChildIds(req.ChartClassifyId, classifyAllMap, &childIds)
|
|
|
+ condition := ``
|
|
|
+ pars := make([]interface{}, 0)
|
|
|
+ if len(childIds) > 0 {
|
|
|
+ ids := utils.IntArr2joinString(childIds, ",")
|
|
|
+ condition = ` AND chart_classify_id IN (`+ ids +`) `
|
|
|
+ } else {
|
|
|
+ condition = ` AND chart_classify_id = ? `
|
|
|
+ pars = append(pars, req.ChartClassifyId)
|
|
|
+ }
|
|
|
+ count, err := data_manage.GetChartInfoCountByCondition(condition, pars)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "判断图表名称是否存在失败"
|
|
|
+ br.ErrMsg = "判断图表名称是否存在失败,Err:" + err.Error()
|
|
|
return
|
|
|
}
|
|
|
+ //count, err := data_manage.GetChartInfoCountByClassifyId(req.ChartClassifyId)
|
|
|
+ //if err != nil && !utils.IsErrNoRow(err) {
|
|
|
+ // br.Msg = "删除失败"
|
|
|
+ // br.ErrMsg = "判断名称是否已存在失败,Err:" + err.Error()
|
|
|
+ // return
|
|
|
+ //}
|
|
|
|
|
|
if count > 0 {
|
|
|
br.Msg = "该目录下存在关联指标,不可删除"
|