|
@@ -1687,7 +1687,7 @@ func (this *ChartInfoController) ChartInfoSearch() {
|
|
|
return
|
|
|
}
|
|
|
keyWord := this.GetString("KeyWord")
|
|
|
- searchList := make([]*data_manage.ChartInfo, 0)
|
|
|
+ searchList := make([]data_manage.ChartInfoMore, 0)
|
|
|
//var err error
|
|
|
//if KeyWord == "" {
|
|
|
// searchList, err = data_manage.ChartInfoSearchByKeyWord(KeyWord)
|
|
@@ -1728,15 +1728,53 @@ func (this *ChartInfoController) ChartInfoSearch() {
|
|
|
}
|
|
|
for _, nv := range newSearchList {
|
|
|
if _, ok := existMap[nv.ChartInfoId]; !ok {
|
|
|
- searchList = append(searchList, nv)
|
|
|
+ searchList = append(searchList, data_manage.ChartInfoMore{
|
|
|
+ ChartInfo: *nv,
|
|
|
+ })
|
|
|
}
|
|
|
existMap[nv.ChartInfoId] = nv.ChartName
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if searchList == nil {
|
|
|
- searchList = make([]*data_manage.ChartInfo, 0)
|
|
|
+ searchList = make([]data_manage.ChartInfoMore, 0)
|
|
|
}
|
|
|
+
|
|
|
+ // 数据权限
|
|
|
+ if len(searchList) > 0 {
|
|
|
+ // 涉及分类id
|
|
|
+ classifyIdList := make([]int, 0)
|
|
|
+ for _, v := range searchList {
|
|
|
+ classifyIdList = append(classifyIdList, v.ChartClassifyId)
|
|
|
+ }
|
|
|
+
|
|
|
+ // 图表分类
|
|
|
+ chartClassifyList, err := data_manage.GetChartClassifyByIdList(classifyIdList)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取图表分类失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ chartClassifyMap := make(map[int]*data_manage.ChartClassify)
|
|
|
+ for _, v := range chartClassifyList {
|
|
|
+ chartClassifyMap[v.ChartClassifyId] = v
|
|
|
+ }
|
|
|
+
|
|
|
+ // 已授权图表和分类id
|
|
|
+ permissionChartIdList, permissionClassifyIdList, err := data_manage_permission.GetUserChartAndClassifyPermissionList(sysUser.AdminId, 0, 0)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "已授权图表和分类id失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ // 权限判断
|
|
|
+ for k, v := range searchList {
|
|
|
+ searchList[k].HaveOperaAuth = data_manage_permission.CheckChartPermissionByPermissionIdList(v.IsJoinPermission, v.IsJoinPermission, v.ChartInfoId, v.ChartClassifyId, permissionChartIdList, permissionClassifyIdList)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
//新增搜索词记录
|
|
|
{
|
|
|
searchKeyword := new(data_manage.SearchKeyword)
|
|
@@ -1824,10 +1862,14 @@ func (this *ChartInfoController) ChartInfoSearchByEs() {
|
|
|
|
|
|
finalList := make([]*data_manage.ChartInfoMore, 0)
|
|
|
if len(searchList) > 0 {
|
|
|
+ // 涉及分类id
|
|
|
+ classifyIdList := make([]int, 0)
|
|
|
+
|
|
|
chartInfoIds := ""
|
|
|
chartEdbMap := make(map[int][]*data_manage.ChartEdbInfoMapping)
|
|
|
for _, v := range searchList {
|
|
|
chartInfoIds += strconv.Itoa(v.ChartInfoId) + ","
|
|
|
+ classifyIdList = append(classifyIdList, v.ChartClassifyId)
|
|
|
}
|
|
|
if chartInfoIds != "" {
|
|
|
chartInfoIds = strings.Trim(chartInfoIds, ",")
|
|
@@ -1843,6 +1885,27 @@ func (this *ChartInfoController) ChartInfoSearchByEs() {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ // 图表分类
|
|
|
+ chartClassifyList, err := data_manage.GetChartClassifyByIdList(classifyIdList)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取图表分类失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ chartClassifyMap := make(map[int]*data_manage.ChartClassify)
|
|
|
+ for _, v := range chartClassifyList {
|
|
|
+ chartClassifyMap[v.ChartClassifyId] = v
|
|
|
+ }
|
|
|
+
|
|
|
+ // 已授权图表和分类id
|
|
|
+ permissionChartIdList, permissionClassifyIdList, err := data_manage_permission.GetUserChartAndClassifyPermissionList(sysUser.AdminId, 0, 0)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "已授权图表和分类id失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
for _, v := range searchList {
|
|
|
tmp := new(data_manage.ChartInfoMore)
|
|
|
tmp.ChartInfo = *v
|
|
@@ -1850,6 +1913,10 @@ func (this *ChartInfoController) ChartInfoSearchByEs() {
|
|
|
if edbTmpList, ok := chartEdbMap[v.ChartInfoId]; ok {
|
|
|
tmp.IsEnChart = data.CheckIsEnChart(v.ChartNameEn, edbTmpList, v.Source, v.ChartType)
|
|
|
}
|
|
|
+
|
|
|
+ // 图表权限
|
|
|
+ tmp.HaveOperaAuth = data_manage_permission.CheckChartPermissionByPermissionIdList(v.IsJoinPermission, v.IsJoinPermission, v.ChartInfoId, v.ChartClassifyId, permissionChartIdList, permissionClassifyIdList)
|
|
|
+
|
|
|
finalList = append(finalList, tmp)
|
|
|
}
|
|
|
}
|