Roc 3 달 전
부모
커밋
24eabdf51f

+ 2 - 2
controllers/data_manage/chart_info.go

@@ -2206,7 +2206,7 @@ func (this *ChartInfoController) ChartInfoSearchByEs() {
 			allChildClassifyItemList, err, _ := data.GetAllChartChildClassifyByParentId(classifyId)
 			if err != nil {
 				br.Msg = "获取失败"
-				br.ErrMsg = "获取指标分类信息失败,Err:" + err.Error()
+				br.ErrMsg = "获取图表分类信息失败,Err:" + err.Error()
 				return
 			}
 			searchClassifyIdList = append(searchClassifyIdList, classifyId)
@@ -2218,7 +2218,7 @@ func (this *ChartInfoController) ChartInfoSearchByEs() {
 			allChildClassifyItemList, err, _ := obj.GetAllChildClassifyByParentId(classifyId)
 			if err != nil {
 				br.Msg = "获取失败"
-				br.ErrMsg = "获取指标分类信息失败,Err:" + err.Error()
+				br.ErrMsg = "获取图表分类信息失败,Err:" + err.Error()
 				return
 			}
 			searchPublicClassifyIdList = append(searchPublicClassifyIdList, classifyId)

+ 23 - 21
controllers/data_manage/chart_info_share.go

@@ -49,29 +49,19 @@ func (c *ChartInfoShareController) UserList() {
 		br.ErrMsg = "参数错误"
 		return
 	}
-	_, err := data_manage.GetChartInfoById(chartInfoId)
+	chartInfo, err := data_manage.GetChartInfoById(chartInfoId)
 	if err != nil {
 		br.Msg = "获取失败"
 		br.ErrMsg = "获取图表信息失败,Err:" + err.Error()
 		return
 	}
 
-	//// TODO 权限校验
-	//{
-	//	classifyMap := make(map[int]*data_manage.ChartClassifyIdItems)
-	//	for _, v := range classifyList {
-	//		classifyMap[v.ClassifyId] = v
-	//	}
-	//	if currClassify, ok := classifyMap[chartInfo.ClassifyId]; ok {
-	//		haveOperaAuth, err := data_manage_permission.CheckChartPermission(chartInfo.IsJoinPermission, currClassify.IsJoinPermission, c.SysUser.AdminId, chartInfo.ChartInfoId, chartInfo.ClassifyId)
-	//		if err != nil {
-	//			br.Msg = err.Error()
-	//			br.ErrMsg = "校验图表权限失败,err:" + err.Error()
-	//			return
-	//		}
-	//		resp.HaveOperaAuth = haveOperaAuth
-	//	}
-	//}
+	if chartInfo.SysUserId != sysUser.AdminId {
+		br.Msg = "您没有权限设置共享"
+		br.ErrMsg = "您没有权限设置共享,ChartInfoId:" + strconv.Itoa(chartInfoId)
+		br.IsSendEmail = false
+		return
+	}
 
 	resp := response.ChartInfoShareUserResp{}
 
@@ -203,7 +193,6 @@ func (c *ChartInfoShareController) Tree() {
 		resp.Send = sortList
 	}
 
-	// TODO 不确定加了用户这个顶级,会不会对前端造成一定影响
 	// 我收到的
 	{
 		sendList, err := data.GetAllShareChartListByReceivedUserId(sysUser.AdminId)
@@ -328,7 +317,7 @@ func (c *ChartInfoShareController) List() {
 	// 分类筛选
 	classifyId, _ := c.GetInt("ClassifyId")
 	if classifyId > 0 {
-		childClassify, e, _ := data.GetChildClassifyByClassifyId(classifyId)
+		childClassify, e, _ := data.GetChildChartClassifyByClassifyId(classifyId)
 		if e != nil && !utils.IsErrNoRow(e) {
 			br.Msg = "获取失败"
 			br.ErrMsg = "获取分类信息失败, GetChartClassify,Err:" + e.Error()
@@ -336,9 +325,9 @@ func (c *ChartInfoShareController) List() {
 		}
 		var classifyIds []int
 		for _, v := range childClassify {
-			classifyIds = append(classifyIds, v.ClassifyId)
+			classifyIds = append(classifyIds, v.ChartClassifyId)
 		}
-		condition += fmt.Sprintf(` AND b.classify_id IN (%s) `, utils.GetOrmInReplace(len(classifyIds)))
+		condition += fmt.Sprintf(` AND b.chart_classify_id IN (%s) `, utils.GetOrmInReplace(len(classifyIds)))
 		pars = append(pars, classifyIds)
 	}
 
@@ -360,6 +349,19 @@ func (c *ChartInfoShareController) List() {
 		return
 	}
 
+	editShareEdbInfoIdMap, err := data.GetAllEditSharedChartInfoIdMapByReceivedUserId(c.SysUser.AdminId)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取所有有编辑权限的分享指标失败,Err:" + err.Error()
+		return
+	}
+	for _, chartInfo := range respList {
+		chartInfo.HaveOperaAuth = true
+		button := data.GetChartOpButton(c.SysUser, chartInfo.SysUserId, chartInfo.ChartInfoId, chartInfo.HaveOperaAuth, editShareEdbInfoIdMap)
+		chartInfo.Button.IsEdit = button.OpButton
+		chartInfo.Button.IsCopy = button.DeleteButton
+	}
+
 	page = paging.GetPaging(currentIndex, pageSize, int(dataCount))
 
 	resp := response.ChartInfoChartListResp{

+ 9 - 19
controllers/data_manage/edb_info_share.go

@@ -48,29 +48,19 @@ func (c *EdbInfoShareController) UserList() {
 		br.ErrMsg = "参数错误"
 		return
 	}
-	_, err := data_manage.GetEdbInfoById(edbInfoId)
+	edbInfo, err := data_manage.GetEdbInfoById(edbInfoId)
 	if err != nil {
 		br.Msg = "获取失败"
 		br.ErrMsg = "获取指标信息失败,Err:" + err.Error()
 		return
 	}
 
-	//// TODO 权限校验
-	//{
-	//	classifyMap := make(map[int]*data_manage.EdbClassifyIdItems)
-	//	for _, v := range classifyList {
-	//		classifyMap[v.ClassifyId] = v
-	//	}
-	//	if currClassify, ok := classifyMap[edbInfo.ClassifyId]; ok {
-	//		haveOperaAuth, err := data_manage_permission.CheckEdbPermission(edbInfo.IsJoinPermission, currClassify.IsJoinPermission, c.SysUser.AdminId, edbInfo.EdbInfoId, edbInfo.ClassifyId)
-	//		if err != nil {
-	//			br.Msg = err.Error()
-	//			br.ErrMsg = "校验指标权限失败,err:" + err.Error()
-	//			return
-	//		}
-	//		resp.HaveOperaAuth = haveOperaAuth
-	//	}
-	//}
+	if edbInfo.SysUserId != sysUser.AdminId {
+		br.Msg = "您没有权限设置共享"
+		br.ErrMsg = "您没有权限设置共享,EdbInfoId:" + strconv.Itoa(edbInfo.EdbInfoId)
+		br.IsSendEmail = false
+		return
+	}
 
 	resp := response.EdbInfoShareUserResp{}
 
@@ -196,7 +186,6 @@ func (c *EdbInfoShareController) Tree() {
 		resp.Send = nodeList
 	}
 
-	// TODO 不确定加了用户这个顶级,会不会对前端造成一定影响
 	// 我收到的
 	{
 		sendList, err := data.GetAllShareEdbListByReceivedUserId(sysUser.AdminId)
@@ -363,7 +352,8 @@ func (c *EdbInfoShareController) List() {
 		return
 	}
 	for _, edbInfo := range respList {
-		edbInfo.Button = data.GetEdbOpButton(c.SysUser, edbInfo.SysUserId, edbInfo.EdbInfoId, edbInfo.EdbType, edbInfo.EdbInfoType, true, editShareEdbInfoIdMap)
+		edbInfo.HaveOperaAuth = true
+		edbInfo.Button = data.GetEdbOpButton(c.SysUser, edbInfo.SysUserId, edbInfo.EdbInfoId, edbInfo.EdbType, edbInfo.EdbInfoType, edbInfo.HaveOperaAuth, editShareEdbInfoIdMap)
 	}
 
 	page = paging.GetPaging(currentIndex, pageSize, int(dataCount))

+ 6 - 3
services/data/public_chart_classify.go

@@ -470,7 +470,6 @@ func MoveChartPublicClassify(req data_manage.MoveChartClassifyReq, sysUser *syst
 // @return err
 // @return errMsg
 func movePublicChartOrClassify(parentChartClassifyInfo, chartClassifyInfo, prevClassify, nextClassify *data_manage.ChartPublicClassify, chartInfo, prevChartInfo, nextChartInfo *data_manage.ChartInfo, parentClassifyId int, prevSort, nextSort, source int) (err error, errMsg string) {
-
 	if chartClassifyInfo != nil {
 		// 移动分类
 		return movePublicChartClassify(parentChartClassifyInfo, chartClassifyInfo, prevClassify, nextClassify, prevChartInfo, nextChartInfo, parentClassifyId, prevSort, nextSort, source)
@@ -803,8 +802,12 @@ func movePublicChartClassify(parentChartClassifyInfo, chartClassifyInfo, prevCla
 
 	oldClassifyIdPath := chartClassifyInfo.ChartPublicClassifyIdPath
 	oldClassifyNamePath := chartClassifyInfo.ChartPublicClassifyNamePath
-	newClassifyNamePath := fmt.Sprint(parentChartClassifyInfo.ChartPublicClassifyNamePath, `|`, chartClassifyInfo.ChartPublicClassifyName)
-	newClassifyIdPath := fmt.Sprint(parentChartClassifyInfo.ChartPublicClassifyIdPath, `,`, chartClassifyInfo.ChartPublicClassifyId)
+	newClassifyNamePath := chartClassifyInfo.ChartPublicClassifyName
+	newClassifyIdPath := fmt.Sprint(chartClassifyInfo.ChartPublicClassifyId)
+	if parentChartClassifyInfo != nil {
+		newClassifyNamePath = fmt.Sprint(parentChartClassifyInfo.ChartPublicClassifyNamePath, `|`, chartClassifyInfo.ChartPublicClassifyName)
+		newClassifyIdPath = fmt.Sprint(parentChartClassifyInfo.ChartPublicClassifyIdPath, `,`, chartClassifyInfo.ChartPublicClassifyId)
+	}
 
 	//更新
 	if len(updateCol) > 0 {

+ 6 - 3
services/data/public_edb_classify.go

@@ -458,7 +458,6 @@ func MoveEdbPublicClassify(req data_manage.MoveEdbClassifyReq, sysUser *system.A
 // @return err
 // @return errMsg
 func movePublicEdbOrClassify(parentEdbClassifyInfo, edbClassifyInfo, prevClassify, nextClassify *data_manage.EdbPublicClassify, edbInfo, prevEdbInfo, nextEdbInfo *data_manage.EdbInfo, parentClassifyId int, prevSort, nextSort int, classifyType uint8) (err error, errMsg string) {
-
 	if edbClassifyInfo != nil {
 		// 移动分类
 		return movePublicEdbClassify(parentEdbClassifyInfo, edbClassifyInfo, prevClassify, nextClassify, prevEdbInfo, nextEdbInfo, parentClassifyId, prevSort, nextSort, classifyType)
@@ -791,8 +790,12 @@ func movePublicEdbClassify(parentEdbClassifyInfo, edbClassifyInfo, prevClassify,
 
 	oldClassifyIdPath := edbClassifyInfo.EdbPublicClassifyIdPath
 	oldClassifyNamePath := edbClassifyInfo.EdbPublicClassifyNamePath
-	newClassifyNamePath := fmt.Sprint(parentEdbClassifyInfo.EdbPublicClassifyNamePath, `|`, edbClassifyInfo.EdbPublicClassifyName)
-	newClassifyIdPath := fmt.Sprint(parentEdbClassifyInfo.EdbPublicClassifyIdPath, `,`, edbClassifyInfo.EdbPublicClassifyId)
+	newClassifyNamePath := edbClassifyInfo.EdbPublicClassifyName
+	newClassifyIdPath := fmt.Sprint(edbClassifyInfo.EdbPublicClassifyId)
+	if parentEdbClassifyInfo != nil {
+		newClassifyNamePath = fmt.Sprint(parentEdbClassifyInfo.EdbPublicClassifyNamePath, `|`, edbClassifyInfo.EdbPublicClassifyName)
+		newClassifyIdPath = fmt.Sprint(parentEdbClassifyInfo.EdbPublicClassifyIdPath, `,`, edbClassifyInfo.EdbPublicClassifyId)
+	}
 
 	//更新
 	if len(updateCol) > 0 {