zwxi 7 달 전
부모
커밋
5fbc4d35fa
7개의 변경된 파일265개의 추가작업 그리고 0개의 파일을 삭제
  1. 43 0
      controllers/data_manage/manual.go
  2. 37 0
      controllers/ppt_v2_group.go
  3. 34 0
      models/data_manage/manual.go
  4. 18 0
      routers/commentsRouter.go
  5. 1 0
      routers/router.go
  6. 84 0
      services/data/manual.go
  7. 48 0
      services/ppt/ppt_group.go

+ 43 - 0
controllers/data_manage/manual.go

@@ -0,0 +1,43 @@
+package data_manage
+
+import (
+	"eta/eta_mobile/controllers"
+	"eta/eta_mobile/models"
+	"eta/eta_mobile/services/data"
+)
+
+// 手工数据管理
+type ManualController struct {
+	controllers.BaseAuthController
+}
+
+// @Title 手工数据权限用户搜索
+// @Description 手工数据权限用户搜索
+// @Param   KeyWord   query   string  false       "关键词搜索"
+// @Success 200 {object} data_manage.ManualSysUser
+// @router /manual/sysuser/search [get]
+func (this *ManualController) ManualSysUserSearch() {
+	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
+	}
+	keyWord := this.GetString("KeyWord")
+	list, err := data.GetManualSysUser(keyWord)
+	if err != nil {
+		br.Msg = "获取失败"
+		br.ErrMsg = "获取失败,Err:" + err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "获取成功"
+	br.Data = list
+}
+

+ 37 - 0
controllers/ppt_v2_group.go

@@ -4,6 +4,7 @@ import (
 	"encoding/json"
 	"eta/eta_mobile/models"
 	"eta/eta_mobile/services/ppt"
+	"strings"
 )
 
 type PptV2GroupController struct {
@@ -535,3 +536,39 @@ func (this *PptV2GroupController) PptList() {
 	br.Data = data
 	return
 }
+
+// ListSearch
+// @Title 我的/公开PPT搜索
+// @Description 我的/公开PPT搜索
+// @Param   Keyword		query  string	true	"关键字"
+// @Success 200 {object} models.RespGroupPptList
+// @router /ppt/search [get]
+func (this *PptV2GroupController) ListSearch() {
+	br := new(models.BaseResponse).Init()
+	defer func() {
+		if br.ErrMsg == "" {
+			br.IsSendEmail = false
+		}
+		this.Data["json"] = br
+		this.ServeJSON()
+	}()
+	sysUser := this.SysUser
+	if sysUser == nil {
+		br.Msg = "请登录"
+		br.ErrMsg = "请登录,SysUser Is Empty"
+		br.Ret = 408
+		return
+	}
+	keyword := this.GetString("Keyword")
+	keyword = strings.TrimSpace(keyword)
+
+	data, err := ppt.SearchPptList(sysUser.AdminId, keyword)
+	if err != nil {
+		br.Msg = err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "查询成功"
+	br.Data = data
+}

+ 34 - 0
models/data_manage/manual.go

@@ -0,0 +1,34 @@
+package data_manage
+
+import "github.com/beego/beego/v2/client/orm"
+
+type ManualSysUser struct {
+	ItemId   int    `description:"部门/组/用户 id"`
+	ItemName string `description:"部门/组/用户 名称"`
+	Children []*ManualSysUser
+}
+
+type ManualClassifyEdbInfoCount struct {
+	ClassifyId int
+	Total      int
+}
+
+func GetManualClassifyEdbInfoCount() (items []*ManualClassifyEdbInfoCount, err error) {
+	sql := ` SELECT a.classify_id,COUNT(1) AS total FROM edbdata_classify AS a
+			INNER JOIN edbinfo AS b ON a.classify_id=b.classify_id
+			WHERE a.is_show=1
+			GROUP BY a.classify_id `
+	o := orm.NewOrmUsingDB("edb")
+	_, err = o.Raw(sql).QueryRows(&items)
+	return
+}
+
+// GetManualEdbInfoCountByClassifyId 根据手工指标分类id获取指标数
+func GetManualEdbInfoCountByClassifyId(classifyId int) (total int, err error) {
+	sql := ` SELECT COUNT(1) AS total FROM edbdata_classify AS a
+			INNER JOIN edbinfo AS b ON a.classify_id=b.classify_id
+			WHERE a.is_show=1 AND b.classify_id = ?`
+	o := orm.NewOrmUsingDB("edb")
+	err = o.Raw(sql, classifyId).QueryRow(&total)
+	return
+}

+ 18 - 0
routers/commentsRouter.go

@@ -2761,6 +2761,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_mobile/controllers/data_manage:ManualController"] = append(beego.GlobalControllerRouter["eta/eta_mobile/controllers/data_manage:ManualController"],
+        beego.ControllerComments{
+            Method: "ManualSysUserSearch",
+            Router: `/manual/sysuser/search`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_mobile/controllers/data_manage:MyChartController"] = append(beego.GlobalControllerRouter["eta/eta_mobile/controllers/data_manage:MyChartController"],
         beego.ControllerComments{
             Method: "MyChartAdd",
@@ -4930,6 +4939,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_mobile/controllers:PptV2GroupController"] = append(beego.GlobalControllerRouter["eta/eta_mobile/controllers:PptV2GroupController"],
+        beego.ControllerComments{
+            Method: "ListSearch",
+            Router: `/ppt/search`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_mobile/controllers:PptV2GroupController"] = append(beego.GlobalControllerRouter["eta/eta_mobile/controllers:PptV2GroupController"],
         beego.ControllerComments{
             Method: "SharePpt",

+ 1 - 0
routers/router.go

@@ -153,6 +153,7 @@ func init() {
 				&data_manage.PredictEdbInfoController{},
 				&data_manage.ChartThemeController{},
 				&data_manage_permission.DataMangePermissionController{},
+				&data_manage.ManualController{},
 			),
 		),
 		web.NSNamespace("/my_chart",

+ 84 - 0
services/data/manual.go

@@ -0,0 +1,84 @@
+package data
+
+import (
+	"eta/eta_mobile/models/data_manage"
+	"eta/eta_mobile/models/system"
+	"eta/eta_mobile/utils"
+	"fmt"
+)
+
+func GetManualSysUser(keyWord string) (list []*data_manage.ManualSysUser, err error) {
+	//departmentId := 1
+	list = make([]*data_manage.ManualSysUser, 0)
+	departmentItems, err := system.GetSysDepartmentAll()
+	if err != nil {
+		return list, err
+	}
+	for _, dv := range departmentItems {
+		department := new(data_manage.ManualSysUser)
+		department.ItemId = dv.DepartmentId * 10000
+		department.ItemName = dv.DepartmentName
+
+		fmt.Println(department.ItemId, department.ItemName)
+		//GetSysuserList
+
+		var condition string
+		var pars []interface{}
+
+		if keyWord != "" {
+			condition += ` AND (real_name LIKE ? OR admin_name LIKE ? OR mobile LIKE ? )  `
+			pars = utils.GetLikeKeywordPars(pars, keyWord, 3)
+		}
+		sysUsers, err := system.GetSysUserItems(condition, pars)
+		if err != nil {
+			return list, err
+		}
+
+		groups, err := system.GetSysGroupByDepartmentId(dv.DepartmentId)
+		if err != nil {
+			return list, err
+		}
+		dg := make([]*data_manage.ManualSysUser, 0)
+		for _, v := range groups {
+			group := new(data_manage.ManualSysUser)
+			group.ItemId = v.DepartmentId * 100000
+			group.ItemName = v.GroupName
+
+			for _, sv := range sysUsers {
+				user := new(data_manage.ManualSysUser)
+				user.ItemId = sv.AdminId
+				user.ItemName = sv.RealName
+				if sv.GroupId == v.GroupId {
+					group.Children = append(group.Children, user)
+				}
+			}
+			if len(group.Children) > 0 {
+				dg = append(dg, group)
+			}
+		}
+
+		if len(groups) <= 0 {
+			group := new(data_manage.ManualSysUser)
+			group.ItemId = dv.DepartmentId * 100000
+			group.ItemName = "无分组"
+
+			for _, sv := range sysUsers {
+				user := new(data_manage.ManualSysUser)
+				user.ItemId = sv.AdminId
+				user.ItemName = sv.RealName
+				if sv.DepartmentId == dv.DepartmentId && sv.GroupId == 0 {
+					group.Children = append(group.Children, user)
+				}
+			}
+			if len(group.Children) > 0 {
+				dg = append(dg, group)
+			}
+		}
+
+		if len(dg) > 0 {
+			department.Children = dg
+			list = append(list, department)
+		}
+	}
+	return
+}

+ 48 - 0
services/ppt/ppt_group.go

@@ -1744,3 +1744,51 @@ func GetPptList(adminId int, keyword string) (ret models.RespGroupPptList, err e
 	ret.Total = len(list)
 	return
 }
+
+
+// SearchPptList PPT搜索(我的/公开PPT)
+func SearchPptList(adminId int, keyword string) (ret models.RespGroupPptList, err error) {
+	list := make([]*models.RespGroupPptListItem, 0)
+	ret.List = list
+
+	var condition string
+	var pars []interface{}
+
+	// 公开的PPT或是我的非公开PPT
+	condition += ` AND (is_share = 1 OR (admin_id = ? AND is_share = 0)) `
+	pars = append(pars, adminId)
+
+	if keyword != `` {
+		kw := fmt.Sprint("%", keyword, "%")
+		condition += ` AND (title LIKE ? OR admin_real_name LIKE ? ) `
+		pars = append(pars, kw, kw)
+	}
+	pptList, err := models.GetAllPptV2List(condition, pars)
+
+	if len(pptList) <= 0 {
+		return
+	}
+
+	for _, v := range pptList {
+		tmpV := &models.RespGroupPptListItem{
+			GroupPptId:    int64(v.PptId),
+			PptId:         int64(v.PptId),
+			TemplateType:  v.TemplateType,
+			BackgroundImg: v.BackgroundImg,
+			Title:         v.Title,
+			PptCreateTime: v.CreateTime.Format(utils.FormatDateTime),
+			AdminId:       v.AdminId,
+			AdminRealName: v.AdminRealName,
+			PptVersion:    v.PptVersion,
+			IsSingleShare: v.IsShare,
+			PptxUrl:       v.PptxUrl,
+			ReportId:      v.ReportId,
+			ReportCode:    v.ReportCode,
+		}
+		list = append(list, tmpV)
+	}
+
+	ret.List = list
+	ret.Total = len(list)
+	return
+}