hsun 1 рік тому
батько
коміт
783228d4de

+ 37 - 0
controllers/ppt_english_group.go

@@ -5,6 +5,7 @@ import (
 	"eta/eta_api/models"
 	"eta/eta_api/models/ppt_english"
 	"eta/eta_api/services/ppt"
+	"strings"
 )
 
 type PptEnglishGroupController struct {
@@ -506,3 +507,39 @@ func (this *PptEnglishGroupController) GrantPptList() {
 	br.Data = data
 	return
 }
+
+// ListSearch
+// @Title 我的/公开PPT搜索
+// @Description 我的/公开PPT搜索
+// @Param   Keyword		query  string	true	"关键字"
+// @Success 200 {object} ppt_english.RespGroupPptList
+// @router /ppt/search [get]
+func (this *PptEnglishGroupController) 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.SearchEnglishPptList(sysUser.AdminId, keyword)
+	if err != nil {
+		br.Msg = err.Error()
+		return
+	}
+	br.Ret = 200
+	br.Success = true
+	br.Msg = "查询成功"
+	br.Data = data
+}

+ 37 - 0
controllers/ppt_v2_group.go

@@ -4,6 +4,7 @@ import (
 	"encoding/json"
 	"eta/eta_api/models"
 	"eta/eta_api/services/ppt"
+	"strings"
 )
 
 type PptV2GroupController struct {
@@ -508,3 +509,39 @@ func (this *PptV2GroupController) GrantPptList() {
 	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
+}

+ 18 - 0
routers/commentsRouter.go

@@ -4912,6 +4912,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:PptEnglishGroupController"],
+        beego.ControllerComments{
+            Method: "ListSearch",
+            Router: `/ppt/search`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:PptEnglishGroupController"],
         beego.ControllerComments{
             Method: "SharePpt",
@@ -5191,6 +5200,15 @@ func init() {
             Filters: nil,
             Params: nil})
 
+    beego.GlobalControllerRouter["eta/eta_api/controllers:PptV2GroupController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:PptV2GroupController"],
+        beego.ControllerComments{
+            Method: "ListSearch",
+            Router: `/ppt/search`,
+            AllowHTTPMethods: []string{"get"},
+            MethodParams: param.Make(),
+            Filters: nil,
+            Params: nil})
+
     beego.GlobalControllerRouter["eta/eta_api/controllers:PptV2GroupController"] = append(beego.GlobalControllerRouter["eta/eta_api/controllers:PptV2GroupController"],
         beego.ControllerComments{
             Method: "SharePpt",

+ 46 - 0
services/ppt/ppt_english_group.go

@@ -1365,3 +1365,49 @@ func GetEnglishCopyUsableTitle(title string) (newTitle string, err error) {
 	}
 	return
 }
+
+// SearchEnglishPptList PPT搜索(我的/公开PPT)
+func SearchEnglishPptList(adminId int, keyword string) (ret ppt_english.RespGroupPptList, err error) {
+	list := make([]*ppt_english.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 := ppt_english.GetAllPptEnglishList(condition, pars)
+
+	if len(pptList) <= 0 {
+		return
+	}
+
+	for _, v := range pptList {
+		tmpV := &ppt_english.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,
+			IsSingleShare: v.IsShare,
+			PptxUrl:       v.PptxUrl,
+			ReportId:      v.ReportId,
+			ReportCode:    v.ReportCode,
+		}
+		list = append(list, tmpV)
+	}
+
+	ret.List = list
+	ret.Total = len(list)
+	return
+}

+ 47 - 0
services/ppt/ppt_group.go

@@ -1686,3 +1686,50 @@ func GetGrantPptList(adminId int, keyword, sourceType string) (ret models.RespGr
 	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
+}