Browse Source

Merge branch 'eta/2.0.0' into debug

Roc 7 months ago
parent
commit
7851af8e05
6 changed files with 647 additions and 0 deletions
  1. 405 0
      controllers/manual_edb.go
  2. 2 0
      controllers/target.go
  3. 135 0
      models/manual_edb.go
  4. 39 0
      models/target.go
  5. 36 0
      routers/commentsRouter.go
  6. 30 0
      services/data/manual.go

+ 405 - 0
controllers/manual_edb.go

@@ -0,0 +1,405 @@
+package controllers
+
+import (
+	"eta/eta_api/models"
+	"eta/eta_api/models/data_manage"
+	"eta/eta_api/utils"
+	"github.com/rdlucklib/rdluck_tools/paging"
+)
+
+// EdbDetail
+// @Title 指标列表
+// @Description 指标列表
+// @Param   TradeCode   query   string  true       "指标编码"
+// @Success 200 {object} models.TargetDetailResp
+// @router /target/edb/detail [get]
+func (this *TargetController) EdbDetail() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请重新登录"
+		return
+	}
+
+	// 指标编码
+	tradeCode := this.GetString("TradeCode")
+	if tradeCode == `` {
+		br.Msg = "请输入指标编码"
+		br.IsSendEmail = false
+		return
+	}
+
+	manualEdbInfo, err := models.GetTargetByTradeCode(tradeCode)
+	if err != nil {
+		br.Msg = "获取指标失败"
+		br.ErrMsg = "获取指标失败,err:" + err.Error()
+		return
+	}
+
+	// 如果不是超管账号,那么得校验下当前用户是否有该指标的权限
+	if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN {
+		//获取账户所拥有权限的分类id集合
+		count, err := models.GetCountManualUserClassify(sysUser.AdminId, manualEdbInfo.ClassifyId)
+		if err != nil {
+			br.Msg = "获取分类数据失败"
+			br.ErrMsg = "获取分类数据失败,err:" + err.Error()
+			return
+		}
+
+		if count <= 0 {
+			br.Msg = "无权访问"
+			br.ErrMsg = "无权访问"
+			br.IsSendEmail = false
+			return
+		}
+	}
+
+	classifyList := make([]*models.EdbdataClassify, 0)
+	{
+		classify, err := models.GetManualClassifyByClassifyId(manualEdbInfo.ClassifyId)
+		if err != nil {
+			br.Msg = "获取分类信息失败"
+			br.ErrMsg = "获取分类信息失败,err:" + err.Error()
+			return
+		}
+		parentClassify, err := models.GetManualClassifyByClassifyId(classify.ParentId)
+		if err != nil {
+			br.Msg = "获取分类信息失败"
+			br.ErrMsg = "获取父级分类信息失败,err:" + err.Error()
+			return
+		}
+		classifyList = []*models.EdbdataClassify{
+			parentClassify, classify,
+		}
+	}
+
+	dataList, err := models.GetEdbDataListByCode(manualEdbInfo.TradeCode)
+	if err != nil {
+		br.Msg = "获取明细数据失败"
+		br.ErrMsg = "获取明细数据失败,err:" + err.Error()
+		return
+	}
+
+	manualEdbInfo.DataList = dataList
+	resp := models.TargetDetailResp{
+		Detail:       manualEdbInfo,
+		ClassifyList: classifyList,
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	//br.Data = resp
+	br.Data = resp
+}
+
+// ClassifyEdbList
+// @Title 分类指标列表
+// @Description 指标列表
+// @Param   ClassifyId   query   string  true       "分类id"
+// @Success 200 {object} models.TargetDetailResp
+// @router /target/classify/edb/list [get]
+func (this *TargetController) ClassifyEdbList() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.Ret = 408
+		return
+	}
+	resp := new(models.EdbdataClassifyResp)
+
+	classifyId, _ := this.GetInt("ClassifyId") //分类
+	if classifyId <= 0 {
+		br.Msg = "请传入分类"
+		br.ErrMsg = "请传入分类"
+		br.IsSendEmail = false
+	}
+
+	var condition string
+	var pars []interface{}
+
+	// 如果不是超管账号,那么得校验下当前用户是否有该指标的权限
+	if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN {
+		//获取账户所拥有权限的分类id集合
+		count, err := models.GetCountManualUserClassify(sysUser.AdminId, classifyId)
+		if err != nil {
+			br.Msg = "获取分类数据失败"
+			br.ErrMsg = "获取分类数据失败,err:" + err.Error()
+			return
+		}
+
+		if count <= 0 {
+			br.Msg = "无权访问"
+			br.ErrMsg = "无权访问"
+			br.IsSendEmail = false
+			return
+		}
+	}
+
+	list := make([]*models.EdbdataClassifyList, 0)
+
+	condition += ` AND a.classify_id = ? `
+	pars = append(pars, classifyId)
+
+	tmpList, err := models.GetEdbInfoList(condition, pars, 0, 0)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	for _, v := range tmpList {
+		list = append(list, &models.EdbdataClassifyList{
+			ClassifyId:   0,
+			ClassifyName: v.SecName,
+			ParentId:     v.ClassifyId,
+			Child:        nil,
+			TradeCode:    v.TradeCode,
+			UniqueCode:   utils.MD5(v.TradeCode),
+		})
+	}
+
+	resp.List = list
+
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = resp
+}
+
+// EdbSearch
+// @Title 指标搜索
+// @Description 指标搜索
+// @Param   Keyword   query   string  false       "关键字搜索"
+// @Success 200 {object} models.TargetItemListResp
+// @router /target/edb/search [get]
+func (this *TargetController) EdbSearch() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请重新登录"
+		return
+	}
+
+	pageSize, _ := this.GetInt("PageSize")
+	currentIndex, _ := this.GetInt("CurrentIndex")
+
+	var startSize int
+	if pageSize <= 0 {
+		pageSize = utils.PageSize20
+	}
+	if currentIndex <= 0 {
+		currentIndex = 1
+	}
+	startSize = utils.StartIndex(currentIndex, pageSize)
+
+	//关键字
+	keyword := this.GetString("Keyword")
+
+	var condition string
+	var pars []interface{}
+
+	userId := sysUser.AdminId
+	//超管账号可以查看分类下的所有频度数据
+	if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN {
+		classifyList, err := models.GetEdbdataClassify(int64(userId))
+		if err != nil {
+			br.Msg = "获取分类数据失败"
+			br.Msg = "获取拥有的分类数据失败,Err:" + err.Error()
+			return
+		}
+
+		num := len(classifyList)
+		if num > 0 {
+			classifyIdList := make([]int, 0)
+			for _, v := range classifyList {
+				classifyIdList = append(classifyIdList, v.ClassifyId)
+			}
+			condition += ` AND a.classify_id in (` + utils.GetOrmInReplace(num) + `) `
+			pars = append(pars, classifyIdList)
+		}
+
+	}
+
+	if keyword != "" {
+		condition += ` AND (a.SEC_NAME like ?  or a.TRADE_CODE like ? )`
+		pars = utils.GetLikeKeywordPars(pars, keyword, 2)
+	}
+
+	total, err := models.GetCountEdbInfoList(condition, pars)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	list, err := models.GetEdbInfoList(condition, pars, startSize, pageSize)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	for _, v := range list {
+		v.UniqueCode = utils.MD5(v.TradeCode)
+	}
+
+	resp := models.EdbListResp{
+		List:   list,
+		Paging: paging.GetPaging(currentIndex, pageSize, total),
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = resp
+}
+
+// EdbList
+// @Title 获取研究员指标
+// @Description 获取研究员指标
+// @Param   Frequency   query   string  false       "频度;枚举值:日度、周度、月度、季度、半年度、年度"
+// @Param   Keyword   query   string  false       "关键字搜索"
+// @Param   TradeCode   query   string  false       "指标唯一编码"
+// @Param   ClassifyId   query   int  false       "分类id"
+// @Param   EdbShowType   query   string  true       "指标展示类型:0,1,2; 0:不管有没有数据,指标都展示出来, 1:只展示有数据的指标, 2:只展示没有数据的指标"
+// @Success 200 {object} models.TargetItemListResp
+// @router /target/edb/list [get]
+func (this *TargetController) EdbList() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请重新登录"
+		return
+	}
+
+	pageSize, _ := this.GetInt("PageSize")
+	currentIndex, _ := this.GetInt("CurrentIndex")
+
+	var startSize int
+	if pageSize <= 0 {
+		pageSize = utils.PageSize20
+	}
+	if currentIndex <= 0 {
+		currentIndex = 1
+	}
+	startSize = utils.StartIndex(currentIndex, pageSize)
+
+	//关键字
+	keyword := this.GetString("Keyword")
+	//关键字
+	classifyId, _ := this.GetInt("ClassifyId", 0)
+
+	var condition string
+	var pars []interface{}
+
+	userId := sysUser.AdminId
+	//超管账号可以查看分类下的所有频度数据
+	if sysUser.RoleTypeCode != utils.ROLE_TYPE_CODE_ADMIN {
+		classifyList, err := models.GetEdbdataClassify(int64(userId))
+		if err != nil {
+			br.Msg = "获取分类数据失败"
+			br.Msg = "获取拥有的分类数据失败,Err:" + err.Error()
+			return
+		}
+
+		num := len(classifyList)
+		if num > 0 {
+			classifyIdList := make([]int, 0)
+			for _, v := range classifyList {
+				classifyIdList = append(classifyIdList, v.ClassifyId)
+			}
+			condition += ` AND a.classify_id in (` + utils.GetOrmInReplace(num) + `) `
+			pars = append(pars, classifyIdList)
+		}
+
+	}
+
+	// 关键词
+	if keyword != "" {
+		condition += ` AND (a.SEC_NAME like ?  or a.TRADE_CODE like ? )`
+		pars = utils.GetLikeKeywordPars(pars, keyword, 2)
+	}
+
+	// 所属分类
+	if classifyId > 0 {
+		condition += ` AND a.classify_id = ? `
+		pars = append(pars, classifyId)
+	}
+
+	total, err := models.GetCountEdbInfoList(condition, pars)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	list, err := models.GetEdbInfoList(condition, pars, startSize, pageSize)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+
+	edbCodeMap := make(map[string]bool)
+	listNum := len(list)
+	if listNum > 0 {
+		tradeCodeList := make([]string, 0)
+		for _, v := range list {
+			v.UniqueCode = utils.MD5(v.TradeCode)
+			tradeCodeList = append(tradeCodeList, v.TradeCode)
+		}
+
+		// 查找是否加入到指标库
+		{
+			var edbCondition string
+			var edbPars []interface{}
+			edbCondition = ` AND source = ? AND edb_code in (` + utils.GetOrmInReplace(listNum) + `) `
+			edbPars = append(pars, utils.DATA_SOURCE_MANUAL, tradeCodeList)
+
+			edbInfoList, err := data_manage.GetEdbInfoListByCond(edbCondition, edbPars)
+			if err != nil {
+				br.Msg = "获取失败"
+				br.ErrMsg = "获取失败,Err:" + err.Error()
+				return
+			}
+			for _, v := range edbInfoList {
+				edbCodeMap[v.EdbCode] = true
+			}
+		}
+
+		for _, v := range list {
+			// 如果能通过指标编码下标找到,那么说明是加到指标库中
+			if _, ok := edbCodeMap[v.TradeCode]; ok {
+				v.EdbExist = 1
+			}
+		}
+	}
+
+	resp := models.EdbListResp{
+		List:   list,
+		Paging: paging.GetPaging(currentIndex, pageSize, total),
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = resp
+}

+ 2 - 0
controllers/target.go

@@ -776,10 +776,12 @@ func (this *TargetController) ClassifyList() {
 			edbInfoGroupCountMap[edbInfoGroupCount.ClassifyId] = edbInfoGroupCount.Count
 		}
 		for _, classifyList := range list {
+			classifyList.UniqueCode = utils.MD5(fmt.Sprint(classifyList.ClassifyId))
 			if classifyList.Child != nil {
 				for _, classify := range classifyList.Child {
 					if total, ok := edbInfoGroupCountMap[classify.ClassifyId]; ok {
 						classify.EdbInfoTotal = total
+						classify.UniqueCode = utils.MD5(fmt.Sprint(classify.ClassifyId))
 					}
 				}
 			}

+ 135 - 0
models/manual_edb.go

@@ -0,0 +1,135 @@
+package models
+
+import (
+	"github.com/beego/beego/v2/client/orm"
+	"github.com/rdlucklib/rdluck_tools/paging"
+)
+
+// TargetDetailResp 指标数据结构体
+type TargetDetailResp struct {
+	Detail       *EdbInfoItem
+	ClassifyList []*EdbdataClassify
+}
+
+// GetTargetByTradeCode
+// @Description: 根据手工指标编码获取指标信息
+// @author: Roc
+// @datetime 2024-07-16 14:18:10
+// @param tradeCode string
+// @return item *Edbinfo
+// @return err error
+func GetTargetByTradeCode(tradeCode string) (item *EdbInfoItem, err error) {
+	sql := `SELECT * FROM edbinfo WHERE TRADE_CODE = ?  `
+	o := orm.NewOrmUsingDB("edb")
+	err = o.Raw(sql, tradeCode).QueryRow(&item)
+	return
+}
+
+// GetCountManualUserClassify
+// @Description: 根据用户ID和分类ID获取关系数量
+// @author: Roc
+// @datetime 2024-07-16 14:27:58
+// @param sysUserId int
+// @param classifyId int
+// @return total int
+// @return err error
+func GetCountManualUserClassify(sysUserId, classifyId int) (total int, err error) {
+	o := orm.NewOrmUsingDB("data")
+	sql := `SELECT count(1) ct FROM manual_user_classify WHERE admin_id=? AND classify_id = ? `
+	err = o.Raw(sql, sysUserId, classifyId).QueryRow(&total)
+
+	return
+}
+func GetManualClassifyByClassifyId(classifyId int) (item *EdbdataClassify, err error) {
+	o := orm.NewOrmUsingDB("edb")
+	sql := ` SELECT classify_id,classify_name,parent_id FROM edbdata_classify WHERE classify_id = ?  `
+	err = o.Raw(sql, classifyId).QueryRow(&item)
+
+	return
+}
+
+// GetEdbDataListByCode
+// @Description: 通过指标ID获取所有数据
+// @author: Roc
+// @datetime 2024-07-16 15:32:41
+// @param tradeCode string
+// @return items []*Edbdata
+// @return err error
+func GetEdbDataListByCode(tradeCode string) (items []*Edbdata, err error) {
+	sql := ` SELECT  TRADE_CODE,DT,round(CLOSE,4) CLOSE,modify_time  FROM edbdata WHERE TRADE_CODE = ?  GROUP BY TRADE_CODE,DT ORDER BY DT DESC `
+	o := orm.NewOrmUsingDB("edb")
+	_, err = o.Raw(sql, tradeCode).QueryRows(&items)
+	return
+}
+
+// EdbInfoListItem
+type EdbInfoListItem struct {
+	TradeCode    string `orm:"column(TRADE_CODE);pk" description:"指标code"`
+	SecName      string `orm:"column(SEC_NAME);" description:"指标名称"`
+	Unit         string `orm:"column(UNIT);" description:"单位"`
+	Remark       string `orm:"column(REMARK);" description:"备注"`
+	Frequency    string `description:"频度"`
+	ClassifyId   int    `description:"分类id"`
+	ClassifyName string `description:"分类名称"`
+	CreateDate   string `description:"创建时间"`
+	UserId       int    `description:"录入用户id"`
+	NoticeTime   string `description:"通知时间"`
+	Mobile       string `description:"录入者手机号"`
+	ModifyDate   string `description:"待更新日期"`
+	Status       string `description:"状态:未完成/完成"`
+	UniqueCode   string
+	EdbExist     int `description:"指标库是否已添加:0-否;1-是"`
+}
+
+// EdbListResp 指标数据结构体
+type EdbListResp struct {
+	List   []*EdbInfoListItem
+	Paging *paging.PagingItem `description:"分页数据"`
+}
+
+// GetEdbInfoList
+// @Description: 根据条件获取指标列表
+// @author: Roc
+// @datetime 2024-07-17 10:34:05
+// @param condition string
+// @param pars []interface{}
+// @return items []*Edbinfo
+// @return err error
+func GetEdbInfoList(condition string, pars []interface{}, startSize, pageSize int) (items []*EdbInfoListItem, err error) {
+	o := orm.NewOrmUsingDB("edb")
+	sql := `SELECT DISTINCT a.* FROM edbinfo AS a  WHERE a.REMARK='手动' `
+	if condition != "" {
+		sql += condition
+	}
+	sql += ` ORDER BY a.create_date DESC `
+
+	if pageSize > 0 {
+		sql += ` LIMIT ?,? `
+		pars = append(pars, startSize, pageSize)
+	}
+
+	_, err = o.Raw(sql, pars).QueryRows(&items)
+
+	return
+}
+
+// GetCountEdbInfoList
+// @Description: 根据条件获取指标数量
+// @author: Roc
+// @datetime 2024-07-17 14:51:00
+// @param condition string
+// @param pars []interface{}
+// @return total int
+// @return err error
+func GetCountEdbInfoList(condition string, pars []interface{}) (total int, err error) {
+	o := orm.NewOrmUsingDB("edb")
+	sql := `SELECT COUNT(1) ct FROM edbinfo AS a  WHERE a.REMARK='手动' `
+	if condition != "" {
+		sql += condition
+	}
+	sql += ` ORDER BY a.create_date DESC `
+
+	err = o.Raw(sql, pars).QueryRow(&total)
+
+	return
+}

+ 39 - 0
models/target.go

@@ -427,6 +427,8 @@ type EdbdataClassify struct {
 	ClassifyName string
 	ParentId     int
 	EdbInfoTotal int
+	TradeCode    string
+	UniqueCode   string
 }
 
 func GetEdbdataClassifyByClassifyName(classifyName string) (item *EdbdataClassify, err error) {
@@ -441,6 +443,8 @@ type EdbdataClassifyList struct {
 	ClassifyName string
 	ParentId     int
 	Child        []*EdbdataClassify
+	TradeCode    string
+	UniqueCode   string
 }
 
 func GetEdbdataClassify(userId int64) (items []*EdbdataClassifyList, err error) {
@@ -1659,3 +1663,38 @@ func GetEdbInfoAdminList() (list []int, err error) {
 	_, err = o.Raw(sql).QueryRows(&list)
 	return
 }
+
+// GetAllChildManualEdbClassify
+// @Description: 获取手工数据中所有的子分类
+// @author: Roc
+// @datetime 2024-07-16 13:27:28
+// @return items []*EdbdataClassify
+// @return err error
+func GetAllChildManualEdbClassify() (items []*EdbdataClassify, err error) {
+	o := orm.NewOrmUsingDB("edb")
+
+	sql := ` SELECT classify_id,classify_name,parent_id FROM edbdata_classify WHERE parent_id > 0 `
+	_, err = o.Raw(sql).QueryRows(&items)
+
+	return
+}
+
+// GetChildManualEdbClassifyByIdList
+// @Description: 获取手工数据中所有的子分类
+// @author: Roc
+// @datetime 2024-07-16 13:33:57
+// @param idList []int
+// @return items []*EdbdataClassify
+// @return err error
+func GetChildManualEdbClassifyByIdList(idList []int) (items []*EdbdataClassify, err error) {
+	num := len(idList)
+	if num <= 0 {
+		return
+	}
+	o := orm.NewOrmUsingDB("edb")
+
+	sql := ` SELECT classify_id,classify_name,parent_id FROM edbdata_classify WHERE classify_id in (` + utils.GetOrmInReplace(num) + `) `
+	_, err = o.Raw(sql, idList).QueryRows(&items)
+
+	return
+}

+ 36 - 0
routers/commentsRouter.go

@@ -9745,6 +9745,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
+        beego.ControllerComments{
+            Method: "ClassifyEdbList",
+            Router: `/target/classify/edb/list`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
         beego.ControllerComments{
             Method: "TargetDelete",
@@ -9754,6 +9763,33 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
+        beego.ControllerComments{
+            Method: "EdbDetail",
+            Router: `/target/edb/detail`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
+        beego.ControllerComments{
+            Method: "EdbList",
+            Router: `/target/edb/list`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
+    beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
+        beego.ControllerComments{
+            Method: "EdbSearch",
+            Router: `/target/edb/search`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:TargetController"],
         beego.ControllerComments{
             Method: "TargetEdit",

+ 30 - 0
services/data/manual.go

@@ -1,6 +1,7 @@
 package data
 
 import (
+	"eta/eta_api/models"
 	"eta/eta_api/models/data_manage"
 	"eta/eta_api/models/system"
 	"eta/eta_api/utils"
@@ -82,3 +83,32 @@ func GetManualSysUser(keyWord string) (list []*data_manage.ManualSysUser, err er
 	}
 	return
 }
+
+// GetManualEdbClassifyListByAdminId
+// @Description: 根据账户类型获取手工指标分类ID集合
+// @author: Roc
+// @datetime 2024-07-16 13:18:39
+// @param adminId int64
+// @return classifyIdList []int
+// @return err error
+func GetManualEdbClassifyListByAdminId(adminId int64) (classifyIdList []int, err error) {
+	var list []*models.EdbdataClassify
+	if adminId <= 0 {
+		list, err = models.GetAllChildManualEdbClassify()
+	} else {
+		userClassifyList, _ := models.GetManualUserClassify(int(adminId))
+		var userClassifyIdList []int
+		for _, v := range userClassifyList {
+			userClassifyIdList = append(userClassifyIdList, v.ClassifyId)
+		}
+		list, err = models.GetChildManualEdbClassifyByIdList(userClassifyIdList)
+	}
+	if err != nil {
+		return
+	}
+	for _, classify := range list {
+		classifyIdList = append(classifyIdList, classify.ClassifyId)
+	}
+
+	return
+}