浏览代码

fix:选择单个用户的时候

Roc 1 年之前
父节点
当前提交
d6e8432479

+ 151 - 1
controllers/data_manage/data_manage_permission.go → controllers/data_manage/data_manage_permission/data_manage_permission.go

@@ -1,4 +1,4 @@
-package data_manage
+package data_manage_permission
 
 import (
 	"encoding/json"
@@ -9,6 +9,8 @@ import (
 	"eta/eta_api/utils"
 )
 
+// 资产的含义:指标/图表/表格
+
 // DataMangePermissionController 数据权限管理
 type DataMangePermissionController struct {
 	controllers.BaseAuthController
@@ -197,3 +199,151 @@ func (c *DataMangePermissionController) SetEdbChartClassifyPermission() {
 	br.Success = true
 	br.Msg = "设置成功"
 }
+
+// GetEdbChartPermission
+// @Title 指标/图表/表格权限设置接口
+// @Description 指标/图表/表格权限设置接口
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
+// @Param   SubSource   query   int  false       "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
+// @Param   UserId   query   int  false       "用户id"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/permission/show_by_user [get]
+func (c *DataMangePermissionController) GetEdbChartPermission() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	source, _ := c.GetInt("Source")
+	if source <= 0 || source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	subSource, _ := c.GetInt("SubSource")
+	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	userId, _ := c.GetInt("UserId")
+
+	// 来源判断
+	if source <= 0 || source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 用户判断
+	if userId <= 0 {
+		br.Msg = "请选择用户"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 获取已经配置了的资产id列表
+	idList, err := data_manage_permission.GetEdbChartIdListPermissionByUserId(source, subSource, userId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = idList
+}
+
+// GetEdbChartClassifyPermission
+// @Title 获取指标/图表/表格分类权限设置接口
+// @Description 获取指标/图表/表格分类权限设置接口
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
+// @Param   SubSource   query   int  false       "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
+// @Param   UserId   query   int  false       "用户id"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/classify/permission/show_by_user [get]
+func (c *DataMangePermissionController) GetEdbChartClassifyPermission() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	source, _ := c.GetInt("Source")
+	if source <= 0 || source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	subSource, _ := c.GetInt("SubSource")
+	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	userId, _ := c.GetInt("UserId")
+
+	// 来源判断
+	if source <= 0 || source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 用户判断
+	if userId <= 0 {
+		br.Msg = "请选择用户"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 获取已经配置了的分类id列表
+	idList, err := data_manage_permission.GetEdbChartClassifyIdListPermissionByUserId(source, subSource, userId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = idList
+}

+ 276 - 0
controllers/data_manage/data_manage_permission/data_move.go

@@ -0,0 +1,276 @@
+package data_manage_permission
+
+import (
+	"encoding/json"
+	"eta/eta_api/models"
+	"eta/eta_api/models/data_manage"
+	"eta/eta_api/services/data"
+	"eta/eta_api/services/data/data_manage_permission"
+	"eta/eta_api/utils"
+	"github.com/rdlucklib/rdluck_tools/paging"
+)
+
+// MoveEdbChartList
+// @Title 获取指标/图表创建人列表数据接口
+// @Description 获取指标/图表创建人列表数据接口
+// @Param   PageSize   query   int  true       "每页数据条数"
+// @Param   CurrentIndex   query   int  true       "当前页页码,从1开始"
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
+// @Param   SubSource   query   int  false       "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
+// @Param   Keyword   query   string  false       "关键字,code或者名称"
+// @Param   Classify   query   string  false       "分类id"
+// @Param   UserId   query   int  false       "创建人id"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/list [get]
+func (c *DataMangePermissionController) MoveEdbChartList() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	source, _ := c.GetInt("Source")
+	if source <= 0 || source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	subSource, _ := c.GetInt("SubSource")
+	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	userId, _ := c.GetInt("UserId")
+	keyword := c.GetString("Keyword")
+	classify := c.GetString("Classify")
+	pageSize, _ := c.GetInt("PageSize")
+	currentIndex, _ := c.GetInt("CurrentIndex")
+
+	var startSize int
+	if pageSize <= 0 {
+		pageSize = utils.PageSize20
+	}
+	if currentIndex <= 0 {
+		currentIndex = 1
+	}
+	startSize = paging.StartIndex(currentIndex, pageSize)
+	resp := data_manage.MoveEdbChartListResp{}
+	var total int
+	page := paging.GetPaging(currentIndex, pageSize, total)
+	defaultList := make([]data_manage.MoveEdbChartList, 0)
+	resp.List = defaultList
+	resp.Paging = page
+	// 没有传入条件,那就默认自动返回
+	//if userId <= 0 && keyword == `` && classify == `` {
+	//	br.Ret = 200
+	//	br.Success = true
+	//	br.Msg = "获取成功"
+	//	br.Data = resp
+	//	return
+	//}
+
+	list, total, err := data_manage_permission.GetMoveEdbChartList(source, subSource, userId, keyword, classify, startSize, pageSize)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+	if list == nil {
+		list = defaultList
+	}
+
+	page = paging.GetPaging(currentIndex, pageSize, total)
+	resp.Paging = page
+	resp.List = list
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.IsAddLog = false
+	br.Data = resp
+}
+
+// MoveEdbChartUser
+// @Title 指标/图表创建人变更接口
+// @Description 指标/图表创建人变更接口
+// @Param	request	body data_manage.MoveEdbChartReq true "type json string"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/change_user [post]
+func (c *DataMangePermissionController) MoveEdbChartUser() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	var req data_manage.MoveEdbChartReq
+	err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+
+	if req.Source <= 0 || req.Source > 6 {
+		br.Msg = "错误的来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
+	if req.Source == 6 && (req.SubSource <= utils.EXCEL_DEFAULT || req.SubSource > utils.CUSTOM_ANALYSIS_TABLE) {
+		br.Msg = "错误的子来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	if !req.IsSelectAll && len(req.DataIdList) <= 0 {
+		br.Msg = "请勾选数据项"
+		br.IsSendEmail = false
+		return
+	}
+	if req.NewUserId <= 0 {
+		br.Msg = "请选择新的创建人"
+		br.IsSendEmail = false
+		return
+	}
+
+	err, errMsg := data_manage_permission.MoveEdbChart(req.Source, req.SubSource, req.UserId, req.NewUserId, req.IsSelectAll, req.DataIdList, req.NoDataIdList, req.Keyword, req.ClassifyId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "移动失败"
+		if errMsg != `` {
+			br.Msg = errMsg
+		}
+		br.ErrMsg = "移动失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.IsAddLog = true
+	br.Success = true
+	br.Msg = "修改成功"
+}
+
+// MoveAllEdbChartUser
+// @Title 通过原创建人转移指标/图表创建人接口
+// @Description 通过原创建人转移指标/图表创建人接口
+// @Param	request	body data_manage.MoveAllEdbChartReq true "type json string"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/all/change_user [post]
+func (c *DataMangePermissionController) MoveAllEdbChartUser() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	var req data_manage.MoveAllEdbChartReq
+	err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
+	if err != nil {
+		br.Msg = "参数解析异常!"
+		br.ErrMsg = "参数解析失败,Err:" + err.Error()
+		return
+	}
+
+	if len(req.Source) < 0 {
+		br.Msg = "请选择来源"
+		br.IsSendEmail = false
+		return
+	}
+
+	if len(req.OldUserId) <= 0 {
+		br.Msg = "请选择旧的创建人"
+		br.IsSendEmail = false
+		return
+	}
+	if req.NewUserId <= 0 {
+		br.Msg = "请选择新的创建人"
+		br.IsSendEmail = false
+		return
+	}
+
+	err, errMsg := data.MoveAllEdbChart(req.Source, req.OldUserId, req.NewUserId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "移动失败"
+		if errMsg != `` {
+			br.Msg = errMsg
+		}
+		br.ErrMsg = "移动失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.IsAddLog = true
+	br.Success = true
+	br.Msg = "移动成功"
+}
+
+// MoveEdbChartCount
+// @Title 获取指标/图表创建人汇总数据接口
+// @Description 获取指标/图表创建人汇总数据接口
+// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
+// @Param   UserId   query   int  false       "创建人id"
+// @Success 200 {object} data_manage.ChartListResp
+// @router /edb_chart/count [get]
+func (c *DataMangePermissionController) MoveEdbChartCount() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		c.Data["json"] = br
+		c.ServeJSON()
+	}()
+	sysUser := c.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+
+	userId, _ := c.GetInt("UserId")
+
+	// 没有传入条件,那就默认自动返回
+	if userId <= 0 {
+		br.Ret = 200
+		br.Success = true
+		br.Msg = "获取成功"
+		//br.Data = resp
+		return
+	}
+
+	resp, err := data.GetMoveEdbChartCount(userId)
+	if err != nil {
+		//br.Success = true
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = resp
+}

+ 0 - 265
controllers/data_manage/edb_info.go

@@ -4004,165 +4004,6 @@ func (this *EdbInfoController) RelationEdbList() {
 	br.Data = resp
 }
 
-// MoveEdbChartList
-// @Title 获取指标/图表创建人列表数据接口
-// @Description 获取指标/图表创建人列表数据接口
-// @Param   PageSize   query   int  true       "每页数据条数"
-// @Param   CurrentIndex   query   int  true       "当前页页码,从1开始"
-// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
-// @Param   SubSource   query   int  false       "子来源 :目前作用于ETA表格,2024-3-26 14:12:09"
-// @Param   Keyword   query   string  false       "关键字,code或者名称"
-// @Param   Classify   query   string  false       "分类id"
-// @Param   UserId   query   int  false       "创建人id"
-// @Success 200 {object} data_manage.ChartListResp
-// @router /edb_chart/list [get]
-func (this *EdbInfoController) MoveEdbChartList() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	sysUser := this.SysUser
-	if sysUser == nil {
-		br.Msg = "请登录"
-		br.ErrMsg = "请登录,SysUser Is Empty"
-		br.Ret = 408
-		return
-	}
-
-	source, _ := this.GetInt("Source")
-	if source <= 0 || source > 6 {
-		br.Msg = "错误的来源"
-		br.IsSendEmail = false
-		return
-	}
-
-	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
-	subSource, _ := this.GetInt("SubSource")
-	if source == 6 && (subSource <= utils.EXCEL_DEFAULT || subSource > utils.CUSTOM_ANALYSIS_TABLE) {
-		br.Msg = "错误的子来源"
-		br.IsSendEmail = false
-		return
-	}
-
-	userId, _ := this.GetInt("UserId")
-	keyword := this.GetString("Keyword")
-	classify := this.GetString("Classify")
-	pageSize, _ := this.GetInt("PageSize")
-	currentIndex, _ := this.GetInt("CurrentIndex")
-
-	var startSize int
-	if pageSize <= 0 {
-		pageSize = utils.PageSize20
-	}
-	if currentIndex <= 0 {
-		currentIndex = 1
-	}
-	startSize = paging.StartIndex(currentIndex, pageSize)
-	resp := data_manage.MoveEdbChartListResp{}
-	var total int
-	page := paging.GetPaging(currentIndex, pageSize, total)
-	defaultList := make([]data_manage.MoveEdbChartList, 0)
-	resp.List = defaultList
-	resp.Paging = page
-	// 没有传入条件,那就默认自动返回
-	//if userId <= 0 && keyword == `` && classify == `` {
-	//	br.Ret = 200
-	//	br.Success = true
-	//	br.Msg = "获取成功"
-	//	br.Data = resp
-	//	return
-	//}
-
-	list, total, err := data_manage_permission.GetMoveEdbChartList(source, subSource, userId, keyword, classify, startSize, pageSize)
-	if err != nil {
-		//br.Success = true
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取失败,Err:" + err.Error()
-		return
-	}
-	if list == nil {
-		list = defaultList
-	}
-
-	page = paging.GetPaging(currentIndex, pageSize, total)
-	resp.Paging = page
-	resp.List = list
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.IsAddLog = false
-	br.Data = resp
-}
-
-// MoveEdbChartUser
-// @Title 指标/图表创建人变更接口
-// @Description 指标/图表创建人变更接口
-// @Param	request	body data_manage.MoveEdbChartReq true "type json string"
-// @Success 200 {object} data_manage.ChartListResp
-// @router /edb_chart/change_user [post]
-func (this *EdbInfoController) MoveEdbChartUser() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	sysUser := this.SysUser
-	if sysUser == nil {
-		br.Msg = "请登录"
-		br.ErrMsg = "请登录,SysUser Is Empty"
-		br.Ret = 408
-		return
-	}
-
-	var req data_manage.MoveEdbChartReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-
-	if req.Source <= 0 || req.Source > 6 {
-		br.Msg = "错误的来源"
-		br.IsSendEmail = false
-		return
-	}
-
-	// 子来源(目前作用于ETA表格,2024-3-26 14:12:09)
-	if req.Source == 6 && (req.SubSource <= utils.EXCEL_DEFAULT || req.SubSource > utils.CUSTOM_ANALYSIS_TABLE) {
-		br.Msg = "错误的子来源"
-		br.IsSendEmail = false
-		return
-	}
-
-	if !req.IsSelectAll && len(req.DataIdList) <= 0 {
-		br.Msg = "请勾选数据项"
-		br.IsSendEmail = false
-		return
-	}
-	if req.NewUserId <= 0 {
-		br.Msg = "请选择新的创建人"
-		br.IsSendEmail = false
-		return
-	}
-
-	err, errMsg := data_manage_permission.MoveEdbChart(req.Source, req.SubSource, req.UserId, req.NewUserId, req.IsSelectAll, req.DataIdList, req.NoDataIdList, req.Keyword, req.ClassifyId)
-	if err != nil {
-		//br.Success = true
-		br.Msg = "移动失败"
-		if errMsg != `` {
-			br.Msg = errMsg
-		}
-		br.ErrMsg = "移动失败,Err:" + err.Error()
-		return
-	}
-	br.Ret = 200
-	br.IsAddLog = true
-	br.Success = true
-	br.Msg = "修改成功"
-}
-
 // EdbChartClassifyList
 // @Title 获取指标/图表分类列表数据接口
 // @Description 获取指标/图表分类列表数据接口
@@ -6243,109 +6084,3 @@ func (this *EdbInfoController) SmmEdbInfoBatchAdd() {
 	br.Data = resp
 	br.IsAddLog = true
 }
-
-// MoveAllEdbChartUser
-// @Title 通过原创建人转移指标/图表创建人接口
-// @Description 通过原创建人转移指标/图表创建人接口
-// @Param	request	body data_manage.MoveAllEdbChartReq true "type json string"
-// @Success 200 {object} data_manage.ChartListResp
-// @router /edb_chart/all/change_user [post]
-func (this *EdbInfoController) MoveAllEdbChartUser() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	sysUser := this.SysUser
-	if sysUser == nil {
-		br.Msg = "请登录"
-		br.ErrMsg = "请登录,SysUser Is Empty"
-		br.Ret = 408
-		return
-	}
-
-	var req data_manage.MoveAllEdbChartReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-
-	if len(req.Source) < 0 {
-		br.Msg = "请选择来源"
-		br.IsSendEmail = false
-		return
-	}
-
-	if len(req.OldUserId) <= 0 {
-		br.Msg = "请选择旧的创建人"
-		br.IsSendEmail = false
-		return
-	}
-	if req.NewUserId <= 0 {
-		br.Msg = "请选择新的创建人"
-		br.IsSendEmail = false
-		return
-	}
-
-	err, errMsg := data.MoveAllEdbChart(req.Source, req.OldUserId, req.NewUserId)
-	if err != nil {
-		//br.Success = true
-		br.Msg = "移动失败"
-		if errMsg != `` {
-			br.Msg = errMsg
-		}
-		br.ErrMsg = "移动失败,Err:" + err.Error()
-		return
-	}
-	br.Ret = 200
-	br.IsAddLog = true
-	br.Success = true
-	br.Msg = "移动成功"
-}
-
-// MoveEdbChartCount
-// @Title 获取指标/图表创建人汇总数据接口
-// @Description 获取指标/图表创建人汇总数据接口
-// @Param   Source   query   int  false       "来源 :1:手工数据指标 2:钢联化工数据库 3:ETA指标库 4:ETA预测指标 5:图库 6:ETA表格"
-// @Param   UserId   query   int  false       "创建人id"
-// @Success 200 {object} data_manage.ChartListResp
-// @router /edb_chart/count [get]
-func (this *EdbInfoController) MoveEdbChartCount() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	sysUser := this.SysUser
-	if sysUser == nil {
-		br.Msg = "请登录"
-		br.ErrMsg = "请登录,SysUser Is Empty"
-		br.Ret = 408
-		return
-	}
-
-	userId, _ := this.GetInt("UserId")
-
-	// 没有传入条件,那就默认自动返回
-	if userId <= 0 {
-		br.Ret = 200
-		br.Success = true
-		br.Msg = "获取成功"
-		//br.Data = resp
-		return
-	}
-
-	resp, err := data.GetMoveEdbChartCount(userId)
-	if err != nil {
-		//br.Success = true
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取失败,Err:" + err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = resp
-}

+ 32 - 0
models/data_manage/data_manage_permission/data_manage_permission.go

@@ -314,6 +314,38 @@ func SetPermissionEdbChartClassifyIdByClassifyIdList(classifyIdList []int, userI
 	return
 }
 
+// GetPermissionEdbClassifyIdListByUserId
+// @Description: 根据用户ID获取已经配置的分类id列表
+// @author: Roc
+// @datetime 2024-03-29 16:24:46
+// @param userId int
+// @param classifyType int
+// @return edbClassifyIdList []int
+// @return err error
+func GetPermissionEdbClassifyIdListByUserId(userId int, classifyType int) (edbClassifyIdList []int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `SELECT edb_classify_id FROM edb_classify_permission WHERE edb_classify_type = ? AND sys_user_id = ? `
+	_, err = o.Raw(sql, classifyType, userId).QueryRows(&edbClassifyIdList)
+
+	return
+}
+
+// GetPermissionEdbIdListByUserId
+// @Description: 根据用户ID获取已经配置的资产(指标、图表、表格)id列表
+// @author: Roc
+// @datetime 2024-03-29 16:24:46
+// @param userId int
+// @param classifyType int
+// @return edbIdList []int
+// @return err error
+func GetPermissionEdbIdListByUserId(userId int, edbInfoType int) (edbIdList []int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `SELECT edb_info_id FROM edb_info_permission WHERE edb_info_type = ? AND sys_user_id = ? `
+	_, err = o.Raw(sql, edbInfoType, userId).QueryRows(&edbIdList)
+
+	return
+}
+
 // GetPermissionEdbIdList
 // @Description: 获取用户权限的指标列表
 // @author: Roc

+ 81 - 63
routers/commentsRouter.go

@@ -511,6 +511,87 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "MoveAllEdbChartUser",
+            Router: `/edb_chart/all/change_user`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "MoveEdbChartUser",
+            Router: `/edb_chart/change_user`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "SetPermissionEdbChartClassifyIsPermission",
+            Router: `/edb_chart/classify/permission/is_permission/set`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "SetEdbChartClassifyPermission",
+            Router: `/edb_chart/classify/permission/set`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "GetEdbChartClassifyPermission",
+            Router: `/edb_chart/classify/permission/show_by_user`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "MoveEdbChartCount",
+            Router: `/edb_chart/count`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "MoveEdbChartList",
+            Router: `/edb_chart/list`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "SetEdbChartPermission",
+            Router: `/edb_chart/permission/set`,
+            AllowHTTPMethods: []string{"post"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/data_manage_permission:DataMangePermissionController"],
+        beego.ControllerComments{
+            Method: "GetEdbChartPermission",
+            Router: `/edb_chart/permission/show_by_user`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/excel:CustomAnalysisController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage/excel:CustomAnalysisController"],
         beego.ControllerComments{
             Method: "Add",
@@ -2437,33 +2518,6 @@ func init() {
             Filters: nil,
             Params: nil})
 
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"],
-        beego.ControllerComments{
-            Method: "SetPermissionEdbChartClassifyIsPermission",
-            Router: `/edb_chart/classify/permission/is_permission/set`,
-            AllowHTTPMethods: []string{"post"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"],
-        beego.ControllerComments{
-            Method: "SetEdbChartClassifyPermission",
-            Router: `/edb_chart/classify/permission/set`,
-            AllowHTTPMethods: []string{"post"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:DataMangePermissionController"],
-        beego.ControllerComments{
-            Method: "SetEdbChartPermission",
-            Router: `/edb_chart/permission/set`,
-            AllowHTTPMethods: []string{"post"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbClassifyController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbClassifyController"],
         beego.ControllerComments{
             Method: "AddEdbClassify",
@@ -2842,24 +2896,6 @@ func init() {
             Filters: nil,
             Params: nil})
 
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
-        beego.ControllerComments{
-            Method: "MoveAllEdbChartUser",
-            Router: `/edb_chart/all/change_user`,
-            AllowHTTPMethods: []string{"post"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
-        beego.ControllerComments{
-            Method: "MoveEdbChartUser",
-            Router: `/edb_chart/change_user`,
-            AllowHTTPMethods: []string{"post"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
         beego.ControllerComments{
             Method: "EdbChartClassifyList",
@@ -2869,24 +2905,6 @@ func init() {
             Filters: nil,
             Params: nil})
 
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
-        beego.ControllerComments{
-            Method: "MoveEdbChartCount",
-            Router: `/edb_chart/count`,
-            AllowHTTPMethods: []string{"get"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
-    beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
-        beego.ControllerComments{
-            Method: "MoveEdbChartList",
-            Router: `/edb_chart/list`,
-            AllowHTTPMethods: []string{"get"},
-            MethodParams: param.Make(),
-            Filters: nil,
-            Params: nil})
-
     beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers/data_manage:EdbInfoController"],
         beego.ControllerComments{
             Method: "QueryEdbDataTable",

+ 2 - 1
routers/router.go

@@ -13,6 +13,7 @@ import (
 	"eta/eta_api/controllers/data_manage"
 	"eta/eta_api/controllers/data_manage/correlation"
 	"eta/eta_api/controllers/data_manage/cross_variety"
+	"eta/eta_api/controllers/data_manage/data_manage_permission"
 	"eta/eta_api/controllers/data_manage/excel"
 	future_good2 "eta/eta_api/controllers/data_manage/future_good"
 	"eta/eta_api/controllers/data_manage/line_equation"
@@ -163,7 +164,7 @@ func init() {
 				&data_manage.BaseFromNationalStatisticsController{},
 				&data_manage.JiaYueEdbSourceController{},
 				&data_manage.ChartThemeController{},
-				&data_manage.DataMangePermissionController{},
+				&data_manage_permission.DataMangePermissionController{},
 			),
 		),
 		web.NSNamespace("/my_chart",

+ 135 - 5
services/data/data_manage_permission/edb_permission.go

@@ -22,19 +22,19 @@ import (
 // @param classify string
 // @return err error
 // @return errMsg string
-func SetEdbChartPermission(source, subSource, userId int, userList []int, isSelectAll bool, dataId, noDataId []string, keyword, classify string) (err error, errMsg string) {
+func SetEdbChartPermission(source, subSource, userId int, userList []int, isSelectAll bool, dataIdList, noDataIdList []string, keyword, classify string) (err error, errMsg string) {
 	// TODO 消息通知
 
 	// 如果勾选全部数据,那么
 	if isSelectAll {
 		// 找出不要的指标ID列表
 		noDataIdMap := make(map[string]string, 0)
-		for _, v := range noDataId {
+		for _, v := range noDataIdList {
 			noDataIdMap[v] = v
 		}
 
 		// 需要转义的指标/图表ID列表
-		dataId = make([]string, 0)
+		dataIdList = make([]string, 0)
 		// 获取所有指标/图表
 		list, _, tmpErr := GetMoveEdbChartList(source, subSource, userId, keyword, classify, 0, 100000)
 		if tmpErr != nil {
@@ -43,7 +43,7 @@ func SetEdbChartPermission(source, subSource, userId int, userList []int, isSele
 		}
 		for _, v := range list {
 			if _, ok := noDataIdMap[v.DataId]; !ok {
-				dataId = append(dataId, v.DataId)
+				dataIdList = append(dataIdList, v.DataId)
 			}
 		}
 	}
@@ -66,7 +66,7 @@ func SetEdbChartPermission(source, subSource, userId int, userList []int, isSele
 		if source == 4 {
 			edbInfoType = 1
 		}
-		err = data_manage_permission.SetPermissionEdbChartByEdbIdList(dataId, userList, edbInfoType)
+		err = data_manage_permission.SetPermissionEdbChartByEdbIdList(dataIdList, userList, edbInfoType)
 	//case 5: //图库
 	//	tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
 	//	if tmpErr != nil {
@@ -365,3 +365,133 @@ func CheckEdbPermission(edbIsJoinPermission, edbClassifyIsJoinPermission, userId
 
 	return
 }
+
+// GetEdbChartClassifyIdListPermissionByUserId
+// @Description: 根据用户id获取已经配置的分类id列表
+// @author: Roc
+// @datetime 2024-03-29 16:26:10
+// @param source int
+// @param subSource int
+// @param userId int
+// @return idList []int
+// @return err error
+func GetEdbChartClassifyIdListPermissionByUserId(source, subSource, userId int) (idList []int, err error) {
+	switch source {
+	case 3, 4: //ETA指标库、ETA预测指标
+		//tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
+		//if tmpErr != nil {
+		//	err = tmpErr
+		//	return
+		//}
+		//if len(tmpList) > 0 {
+		//}
+		// 重新设置权限
+		classifyType := 0
+		if source == 4 {
+			classifyType = 1
+		}
+		idList, err = data_manage_permission.GetPermissionEdbClassifyIdListByUserId(userId, classifyType)
+	//case 5: //图库
+	//	tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
+	//	if tmpErr != nil {
+	//		err = tmpErr
+	//		return
+	//	}
+	//	if len(tmpList) > 0 {
+	//		for _, v := range tmpList {
+	//			if v.SysUserId == newUserId {
+	//				errMsg = "新创建人不可和原创建人一致"
+	//				err = errors.New(errMsg)
+	//				return
+	//			}
+	//		}
+	//		// 修改创建人
+	//		err = data_manage.ModifyChartInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
+	//	}
+	//case 6: // ETA表格
+	//	tmpList, tmpErr := excel.GetNoContentExcelListGroupByUserId(dataId)
+	//	if tmpErr != nil {
+	//		err = tmpErr
+	//		return
+	//	}
+	//	if len(tmpList) > 0 {
+	//		for _, v := range tmpList {
+	//			if v.SysUserId == newUserId {
+	//				errMsg = "新创建人不可和原创建人一致"
+	//				err = errors.New(errMsg)
+	//				return
+	//			}
+	//		}
+	//		// 修改创建人
+	//		err = excel.ModifyExcelInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
+	//	}
+	default:
+		return
+	}
+	return
+}
+
+// GetEdbChartIdListPermissionByUserId
+// @Description: 根据用户id获取已经配置的资产(指标、图表、表格)id列表
+// @author: Roc
+// @datetime 2024-03-29 16:26:10
+// @param source int
+// @param subSource int
+// @param userId int
+// @return idList []int
+// @return err error
+func GetEdbChartIdListPermissionByUserId(source, subSource, userId int) (idList []int, err error) {
+	switch source {
+	case 3, 4: //ETA指标库、ETA预测指标
+		//tmpList, tmpErr := data_manage.GetEdbInfoListGroupByUserId(dataId)
+		//if tmpErr != nil {
+		//	err = tmpErr
+		//	return
+		//}
+		//if len(tmpList) > 0 {
+		//}
+		// 重新设置权限
+		edbInfoType := 0
+		if source == 4 {
+			edbInfoType = 1
+		}
+		idList, err = data_manage_permission.GetPermissionEdbIdListByUserId(userId, edbInfoType)
+	//case 5: //图库
+	//	tmpList, tmpErr := data_manage.GetChartInfoListGroupByUserId(dataId)
+	//	if tmpErr != nil {
+	//		err = tmpErr
+	//		return
+	//	}
+	//	if len(tmpList) > 0 {
+	//		for _, v := range tmpList {
+	//			if v.SysUserId == newUserId {
+	//				errMsg = "新创建人不可和原创建人一致"
+	//				err = errors.New(errMsg)
+	//				return
+	//			}
+	//		}
+	//		// 修改创建人
+	//		err = data_manage.ModifyChartInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
+	//	}
+	//case 6: // ETA表格
+	//	tmpList, tmpErr := excel.GetNoContentExcelListGroupByUserId(dataId)
+	//	if tmpErr != nil {
+	//		err = tmpErr
+	//		return
+	//	}
+	//	if len(tmpList) > 0 {
+	//		for _, v := range tmpList {
+	//			if v.SysUserId == newUserId {
+	//				errMsg = "新创建人不可和原创建人一致"
+	//				err = errors.New(errMsg)
+	//				return
+	//			}
+	//		}
+	//		// 修改创建人
+	//		err = excel.ModifyExcelInfoUserIdByCodeList(dataId, adminInfo.AdminId, adminInfo.RealName)
+	//	}
+	default:
+		return
+	}
+	return
+}