Quellcode durchsuchen

删除roadshow日程管理和云盘相关代码

- 移除了models目录下的roadshow/calendar.go文件- 删除了controllers目录下的cloud_disk.go文件
- 这些功能模块不再需要,清理相关代码以简化项目结构
Roc vor 4 Monaten
Ursprung
Commit
8c575dba62

+ 0 - 1000
controllers/cloud_disk.go

@@ -1,1000 +0,0 @@
-package controllers
-
-import (
-	"archive/zip"
-	"encoding/json"
-	"eta_gn/eta_api/models"
-	"eta_gn/eta_api/services"
-	"eta_gn/eta_api/services/alarm_msg"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"github.com/h2non/filetype"
-	"github.com/rdlucklib/rdluck_tools/http"
-	"io/ioutil"
-	"os"
-	"path"
-	"strconv"
-	"strings"
-	"time"
-)
-
-// CloudDiskController 共享云盘
-type CloudDiskController struct {
-	BaseAuthController
-}
-
-// MenuCreate 创建文件夹
-// @Title 创建文件夹
-// @Description 创建文件夹
-// @Param	request	body models.CloudDiskMenuCreateReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /menu/create [post]
-func (this *CloudDiskController) MenuCreate() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskMenuCreateReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	req.MenuName = strings.TrimSpace(req.MenuName)
-	if req.MenuName == "" {
-		br.Msg = "文件夹名称不可为空"
-		return
-	}
-
-	// 权限校验
-	ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-		return
-	}
-	if !ok {
-		br.Msg = "无权操作"
-		return
-	}
-
-	// 重名校验
-	existItem := new(models.CloudDiskMenu)
-	existCond := ` AND menu_name = ? AND parent_id = ? `
-	existPars := make([]interface{}, 0)
-	existPars = append(existPars, req.MenuName, req.ParentId)
-	if e := existItem.GetItemByCondition(existCond, existPars); e != nil && !utils.IsErrNoRow(e) {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取重名目录失败, Err: " + e.Error()
-		return
-	}
-	if existItem != nil && existItem.MenuId > 0 {
-		br.Msg = "该文件夹已存在"
-		return
-	}
-
-	nowTime := time.Now().Local()
-	newMenu := &models.CloudDiskMenu{
-		MenuName:   req.MenuName,
-		ParentId:   req.ParentId,
-		AdminId:    this.SysUser.AdminId,
-		AdminName:  this.SysUser.RealName,
-		CreateTime: nowTime,
-		ModifyTime: nowTime,
-	}
-	if e := newMenu.Create(); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "新增目录失败, Err: " + e.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
-// MenuRename 重命名文件夹
-// @Title 重命名文件夹
-// @Description 重命名文件夹
-// @Param	request	body models.CloudDiskMenuRenameReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /menu/rename [post]
-func (this *CloudDiskController) MenuRename() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskMenuRenameReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	if req.MenuId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-	req.MenuName = strings.TrimSpace(req.MenuName)
-	if req.MenuName == "" {
-		br.Msg = "文件夹名称不可为空"
-		return
-	}
-
-	// 权限校验
-	ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-		return
-	}
-	if !ok {
-		br.Msg = "无权操作"
-		return
-	}
-
-	// 重名校验
-	menuItem := new(models.CloudDiskMenu)
-	if e := menuItem.GetItemById(req.MenuId); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取目录信息失败, Err: " + e.Error()
-		return
-	}
-	existItem := new(models.CloudDiskMenu)
-	existCond := ` AND menu_name = ? AND parent_id = ? AND menu_id <> ? `
-	existPars := make([]interface{}, 0)
-	existPars = append(existPars, req.MenuName, menuItem.ParentId, menuItem.MenuId)
-	if e := existItem.GetItemByCondition(existCond, existPars); e != nil && !utils.IsErrNoRow(e) {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取重名目录失败, Err: " + e.Error()
-		return
-	}
-	if existItem != nil && existItem.MenuId > 0 {
-		br.Msg = "该文件夹已存在"
-		return
-	}
-
-	menuItem.MenuName = req.MenuName
-	menuItem.ModifyTime = time.Now().Local()
-	if e := menuItem.Update([]string{"MenuName", "ModifyTime"}); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "目录重命名失败, Err: " + e.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
-// MenuDelete 删除文件夹
-// @Title 删除文件夹
-// @Description 删除文件夹
-// @Param	request	body models.CloudDiskMenuDeleteReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /menu/delete [post]
-func (this *CloudDiskController) MenuDelete() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskMenuDeleteReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	if req.MenuId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-
-	// 权限校验
-	ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-		return
-	}
-	if !ok {
-		br.Msg = "无权操作"
-		return
-	}
-
-	// 获取文件夹子目录IDs
-	menuIds := make([]int, 0)
-	menuIds = append(menuIds, req.MenuId)
-	childIds, e := services.GetCloudDiskMenuIdsByParentId(req.MenuId)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取子目录IDs失败, ErrMsg: " + e.Error()
-		return
-	}
-	menuIds = append(menuIds, childIds...)
-
-	// 删除目录及目录下所有文件
-	if e = models.DeleteCloudDiskMenuAndResourcesByMenuIds(menuIds); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "删除目录及文件失败, Err: " + e.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
-// MenuTree 目录分类树
-// @Title 目录分类树
-// @Description 目录分类树
-// @Success 200 Ret=200 获取成功
-// @router /menu/tree [get]
-func (this *CloudDiskController) MenuTree() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-
-	treeData, e := services.GetCloudDiskMenuTree()
-	if e != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取目录分类树失败, Err: " + e.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = treeData
-}
-
-// MenuResources 目录文件
-// @Title 目录文件
-// @Description 获取目录下所有文件
-// @Param   MenuId  query  int  true  "目录ID"
-// @Success 200 Ret=200 获取成功
-// @router /menu/resources [get]
-func (this *CloudDiskController) MenuResources() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	menuId, _ := this.GetInt("MenuId", 0)
-	if menuId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-
-	menuItem := new(models.CloudDiskMenu)
-	if e := menuItem.GetItemById(menuId); e != nil {
-		br.Msg = "目录已被删除, 请刷新页面"
-		br.ErrMsg = "获取目录信息失败, Err: " + e.Error()
-		return
-	}
-
-	// 获取该目录子目录IDs
-	menuIds := make([]int, 0)
-	menuIds = append(menuIds, menuId)
-	childIds, e := services.GetCloudDiskMenuIdsByParentId(menuId)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取子目录IDs失败, ErrMsg: " + e.Error()
-		return
-	}
-	menuIds = append(menuIds, childIds...)
-
-	// 获取目录下所有文件
-	resourceOB := new(models.CloudDiskResource)
-	resourceCond := ` AND menu_id IN (` + utils.GetOrmInReplace(len(menuIds)) + `) `
-	resourcePars := make([]interface{}, 0)
-	resourcePars = append(resourcePars, menuIds)
-	resourceFieldArr := []string{"resource_id", "resource_name", "resource_suffix", "resource_url", "menu_id"}
-	resourceList, e := resourceOB.GetItemsByCondition(resourceCond, resourcePars, resourceFieldArr, "create_time ASC")
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取目录下所有文件失败, Err: " + e.Error()
-		return
-	}
-
-	// 获取目录列表, 取出parentMap
-	listCond := ``
-	listPars := make([]interface{}, 0)
-	menuList, e := menuItem.GetItemsByCondition(listCond, listPars, []string{}, "")
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取目录列表失败, Err: " + e.Error()
-		return
-	}
-	menuMap := make(map[int]*models.CloudDiskMenu)
-	for i := range menuList {
-		menuMap[menuList[i].MenuId] = menuList[i]
-	}
-
-	type MenuResource struct {
-		ResourceId     int
-		ResourceName   string
-		ResourceSuffix string
-		ResourceUrl    string
-		OriginName     string
-	}
-	respList := make([]*MenuResource, 0)
-	for i := range resourceList {
-		n := resourceList[i].ResourceName + resourceList[i].ResourceSuffix
-		p := services.FillMenuPath2File(resourceList[i].MenuId, resourceList[i].MenuId, n, menuMap) // 完整的文件路径
-		respList = append(respList, &MenuResource{
-			ResourceId:     resourceList[i].ResourceId,
-			ResourceName:   p,
-			ResourceSuffix: resourceList[i].ResourceSuffix,
-			ResourceUrl:    resourceList[i].ResourceUrl,
-			OriginName:     n,
-		})
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = respList
-}
-
-// MenuDownload 目录文件打包下载
-// @Title 目录文件打包下载
-// @Description 目录文件打包下载
-// @Param   MenuId  query  int  true  "目录ID"
-// @Success 200 Ret=200 操作成功
-// @router /menu/download [get]
-func (this *CloudDiskController) MenuDownload() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	menuId, _ := this.GetInt("MenuId", 0)
-	if menuId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-
-	menuItem := new(models.CloudDiskMenu)
-	if e := menuItem.GetItemById(menuId); e != nil {
-		br.Msg = "目录已被删除, 请刷新页面"
-		br.ErrMsg = "获取目录信息失败, Err: " + e.Error()
-		return
-	}
-
-	// 获取该目录子目录IDs
-	menuIds := make([]int, 0)
-	menuIds = append(menuIds, menuId)
-	childIds, e := services.GetCloudDiskMenuIdsByParentId(menuId)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取子目录IDs失败, ErrMsg: " + e.Error()
-		return
-	}
-	menuIds = append(menuIds, childIds...)
-
-	// 获取目录下所有文件
-	resourceOB := new(models.CloudDiskResource)
-	resourceCond := ` AND menu_id IN (` + utils.GetOrmInReplace(len(menuIds)) + `) `
-	resourcePars := make([]interface{}, 0)
-	resourcePars = append(resourcePars, menuIds)
-	resourceFieldArr := []string{"resource_id", "resource_name", "resource_suffix", "resource_url"}
-	resourceList, e := resourceOB.GetItemsByCondition(resourceCond, resourcePars, resourceFieldArr, "create_time ASC")
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取目录下所有文件失败, Err: " + e.Error()
-		return
-	}
-	if len(resourceList) == 0 {
-		br.Msg = "无文件可下载"
-		return
-	}
-
-	// 创建zip
-	zipName := time.Now().Format(utils.FormatDateTimeUnSpace) + utils.GetRandString(5) + ".zip"
-	savePath := zipName
-	zipFile, err := os.Create(zipName)
-	if err != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "生成压缩文件失败, Err: " + e.Error()
-		return
-	}
-	zipWriter := zip.NewWriter(zipFile)
-	// 生成zip过程中报错关闭
-	defer func() {
-		if err != nil {
-			_ = zipWriter.Close()
-			_ = zipFile.Close()
-		}
-		_ = os.Remove(savePath)
-	}()
-
-	// 获取资源, 写入zip
-	for i := range resourceList {
-		if resourceList[i].ResourceName == "" || resourceList[i].ResourceSuffix == "" || resourceList[i].ResourceUrl == "" {
-			continue
-		}
-		fmt.Printf("开始压缩第%d个文件\n", i+1)
-		ioWriter, err := zipWriter.Create(fmt.Sprintf("%s.%s", resourceList[i].ResourceName, resourceList[i].ResourceSuffix))
-		if err != nil {
-			if os.IsPermission(err) {
-				br.Msg = "操作失败"
-				br.ErrMsg = "打包权限不足, Err: " + err.Error()
-				return
-			}
-			br.Msg = "操作失败"
-			br.ErrMsg = "压缩出错, Err: " + err.Error()
-			return
-		}
-
-		var content []byte
-		content, err = http.Get(resourceList[i].ResourceUrl)
-		if err != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "资源获取失败, Err: " + err.Error()
-			return
-		}
-		_, err = ioWriter.Write(content)
-		if err != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "压缩文件写入失败, Err: " + err.Error()
-			return
-		}
-		fmt.Printf("第%d个文件写入成功\n", i+1)
-	}
-	// 生成zip后关闭,否则下载文件会损坏
-	_ = zipWriter.Close()
-	_ = zipFile.Close()
-
-	this.Ctx.Output.Download(savePath, fmt.Sprintf("%s.zip", menuItem.MenuName))
-	br.Ret = 200
-	br.Msg = "下载成功"
-	br.Success = true
-}
-
-// CheckResourceRepeat 校验目录下文件重名
-// @Title 校验目录下文件重名
-// @Description 校验目录下文件重名
-// @Param	request	body models.CloudDiskCheckResourceRepeatReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /resource/check_repeat [post]
-func (this *CloudDiskController) CheckResourceRepeat() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskCheckResourceRepeatReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	// 检测接口允许menuId为0, 上传不允许
-	if len(req.FileNames) == 0 {
-		br.Msg = "请选择文件"
-		return
-	}
-
-	// 获取该级目录下的文件
-	resourceOB := new(models.CloudDiskResource)
-	resourceCond := ` AND menu_id = ? `
-	resourcePars := make([]interface{}, 0)
-	resourcePars = append(resourcePars, req.MenuId)
-	resourceFieldArr := []string{"resource_id", "resource_name", "resource_suffix"}
-	resourceList, e := resourceOB.GetItemsByCondition(resourceCond, resourcePars, resourceFieldArr, "create_time ASC")
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取目录下文件失败, Err: " + e.Error()
-		return
-	}
-	resourceLen := len(resourceList)
-
-	respList := make([]*models.CloudDiskCheckResourceRepeatResp, 0)
-	for i := range req.FileNames {
-		v := new(models.CloudDiskCheckResourceRepeatResp)
-		v.OriginName = req.FileNames[i]
-		r := false
-		a := v.OriginName
-		if resourceLen > 0 {
-			r, a = services.CheckFileNameFormFiles(v.OriginName, "", resourceList, 0)
-		}
-		v.IsRepeat = r
-		v.AvailableName = a
-		respList = append(respList, v)
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-	br.Data = respList
-}
-
-// ResourceUpload 上传文件
-// @Title 上传文件
-// @Description 上传文件
-// @Param   MenuId  query  int  true  "目录ID"
-// @Param   File	query  file  true  "文件"
-// @Success 200 Ret=200 操作成功
-// @router /resource/upload [post]
-func (this *CloudDiskController) ResourceUpload() {
-	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
-	}
-
-	menuId, _ := this.GetInt("MenuId", 0)
-	if menuId <= 0 {
-		br.Msg = "不允许上传文件至根目录"
-		return
-	}
-	originName := this.GetString("OriginName", "")
-	if originName == "" {
-		br.Msg = "请上传文件名"
-		return
-	}
-	if !strings.Contains(originName, ".") {
-		br.Msg = "文件名有误"
-		return
-	}
-	f, h, e := this.GetFile("file")
-	if e != nil {
-		br.Msg = "获取资源信息失败"
-		br.ErrMsg = "获取资源信息失败, Err:" + e.Error()
-		return
-	}
-	defer func() {
-		_ = f.Close()
-	}()
-	extIndex := strings.LastIndex(originName, ".")
-	fileName := originName[:extIndex]
-
-	// 不依赖于文件扩展名检查文件格式
-	fileData, e := ioutil.ReadAll(f)
-	if e != nil {
-		br.Msg = "上传失败"
-		br.ErrMsg = "读取文件失败, Err: " + e.Error()
-		return
-	}
-	// 允许上传图片/音视频/文档/压缩包
-	if !filetype.IsImage(fileData) && !filetype.IsVideo(fileData) && !filetype.IsAudio(fileData) && !filetype.IsDocument(fileData) && !filetype.IsArchive(fileData) {
-		br.Msg = "不允许上传该格式文件"
-		br.ErrMsg = "文件格式有误"
-		return
-	}
-
-	// 重名校验
-	existItem := new(models.CloudDiskResource)
-	existCond := ` AND resource_name = ? AND menu_id = ? `
-	existPars := make([]interface{}, 0)
-	existPars = append(existPars, fileName, menuId)
-	if e := existItem.GetItemByCondition(existCond, existPars); e != nil && !utils.IsErrNoRow(e) {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取重名文件失败, Err: " + e.Error()
-		return
-	}
-	if existItem != nil && existItem.MenuId > 0 {
-		br.Msg = fmt.Sprintf("文件名%s已存在", fileName)
-		return
-	}
-
-	uploadDir := utils.STATIC_DIR + "hongze/" + time.Now().Format("20060102")
-	if e = os.MkdirAll(uploadDir, utils.DIR_MOD); e != nil {
-		br.Msg = "存储目录创建失败"
-		br.ErrMsg = "存储目录创建失败, Err:" + e.Error()
-		return
-	}
-	ext := path.Ext(h.Filename)
-	ossFileName := utils.GetRandStringNoSpecialChar(28) + ext
-	filePath := uploadDir + "/" + ossFileName
-	if e = this.SaveToFile("file", filePath); e != nil {
-		br.Msg = "文件保存失败"
-		br.ErrMsg = "文件保存失败, Err:" + e.Error()
-		return
-	}
-	defer func() {
-		_ = os.Remove(filePath)
-	}()
-	// 上传到阿里云
-	ossDir := utils.RESOURCE_DIR + "cloud_disk/"
-
-	resourceUrl := ``
-	//上传到阿里云 和 minio
-	//if utils.ObjectStorageClient == "minio" {
-	//	resourceUrl, e = services.UploadMinIoToDir(ossFileName, filePath, ossDir, "")
-	//	if e != nil {
-	//		br.Msg = "文件上传失败"
-	//		br.ErrMsg = "文件上传失败, Err:" + e.Error()
-	//		return
-	//	}
-	//} else {
-	//	resourceUrl, e = services.UploadAliyunToDir(ossFileName, filePath, ossDir, "")
-	//	if e != nil {
-	//		br.Msg = "文件上传失败"
-	//		br.ErrMsg = "文件上传失败, Err:" + e.Error()
-	//		return
-	//	}
-	//}
-	savePath := ossDir + time.Now().Format("200601/20060102/") + ossFileName
-	ossClient := services.NewOssClient()
-	if ossClient == nil {
-		br.Msg = "上传失败"
-		br.ErrMsg = "初始化OSS服务失败"
-		return
-	}
-	resourceUrl, e = ossClient.UploadFile(ossFileName, filePath, savePath)
-	if e != nil {
-		br.Msg = "文件上传失败"
-		br.ErrMsg = "文件上传失败,Err:" + e.Error()
-		return
-	}
-
-	// 新增云盘资源
-	extMap := services.GetCloudDiskResourceFileTypeExtMap()
-	resourceIcon := extMap[ext]
-	if resourceIcon == "" {
-		resourceIcon = models.CloudDiskResourceFileTypeIconUnknown
-	}
-	resourceItem := &models.CloudDiskResource{
-		MenuId:         menuId,
-		ResourceName:   fileName,
-		ResourceSuffix: ext,
-		ResourceUrl:    resourceUrl,
-		ResourceIcon:   resourceIcon,
-		AdminId:        this.SysUser.AdminId,
-		AdminName:      this.SysUser.RealName,
-		Size:           h.Size,
-		CreateTime:     time.Now().Local(),
-		ModifyTime:     time.Now().Local(),
-	}
-	if e = resourceItem.Create(); e != nil {
-		br.Msg = "上传失败"
-		br.ErrMsg = "新增云盘资源失败, Err: " + e.Error()
-		return
-	}
-
-	// 更新目录大小
-	go func() {
-		if e = services.UpdateCloudDiskMenuSize(menuId); e != nil {
-			alarm_msg.SendAlarmMsg("更新云盘目录大小失败, Err: "+e.Error(), 3)
-		}
-	}()
-
-	br.Msg = "上传成功"
-	br.Ret = 200
-	br.Success = true
-	br.Data = resourceItem
-}
-
-// ResourceRename 重命名文件
-// @Title 重命名文件
-// @Description 重命名文件
-// @Param	request	body models.CloudDiskResourceRenameReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /resource/rename [post]
-func (this *CloudDiskController) ResourceRename() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskResourceRenameReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	if req.ResourceId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-	req.ResourceName = strings.TrimSpace(req.ResourceName)
-	if req.ResourceName == "" {
-		br.Msg = "文件名称不可为空"
-		return
-	}
-
-	// 权限校验-仅上传人或管理员可操作
-	resourceItem := new(models.CloudDiskResource)
-	if e := resourceItem.GetItemById(req.ResourceId); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取文件信息失败, Err: " + e.Error()
-		return
-	}
-	if resourceItem.AdminId != this.SysUser.AdminId {
-		ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-		if e != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-			return
-		}
-		if !ok {
-			br.Msg = "无权操作"
-			return
-		}
-	}
-
-	// 重名校验
-	existItem := new(models.CloudDiskResource)
-	existCond := ` AND resource_name = ? AND menu_id = ? AND resource_id <> ? `
-	existPars := make([]interface{}, 0)
-	existPars = append(existPars, req.ResourceName, resourceItem.MenuId, resourceItem.ResourceId)
-	if e := existItem.GetItemByCondition(existCond, existPars); e != nil && !utils.IsErrNoRow(e) {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取重名文件失败, Err: " + e.Error()
-		return
-	}
-	if existItem != nil && existItem.MenuId > 0 {
-		br.Msg = "该文件名已存在"
-		return
-	}
-
-	resourceItem.ResourceName = req.ResourceName
-	resourceItem.ModifyTime = time.Now().Local()
-	if e := resourceItem.Update([]string{"ResourceName", "ModifyTime"}); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "文件重命名失败, Err: " + e.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
-// ResourceDelete 删除文件
-// @Title 删除文件
-// @Description 删除文件
-// @Param	request	body models.CloudDiskResourceDeleteReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /resource/delete [post]
-func (this *CloudDiskController) ResourceDelete() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskResourceDeleteReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	if req.ResourceId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-
-	// 权限校验-仅上传人或管理员可操作
-	resourceItem := new(models.CloudDiskResource)
-	if e := resourceItem.GetItemById(req.ResourceId); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取文件信息失败, Err: " + e.Error()
-		return
-	}
-	if resourceItem.AdminId != this.SysUser.AdminId {
-		ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-		if e != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-			return
-		}
-		if !ok {
-			br.Msg = "无权操作"
-			return
-		}
-	}
-
-	if e := resourceItem.Delete(); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "删除文件失败, Err: " + e.Error()
-		return
-	}
-	// 更新目录大小
-	go func() {
-		if e := services.UpdateCloudDiskMenuSize(resourceItem.MenuId); e != nil {
-			alarm_msg.SendAlarmMsg("更新云盘目录大小失败, Err: "+e.Error(), 3)
-		}
-	}()
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
-// List 云盘列表
-// @Title 云盘列表
-// @Description 云盘列表
-// @Param   MenuId  query  int  false  "目录ID"
-// @Param   Keyword  query  string  false  "关键词"
-// @Param   SortType  query  int  false  "排序方式: 0-默认; 1-创建时间倒序; 2-创建时间正序"
-// @Success 200 Ret=200 获取成功
-// @router /list [get]
-func (this *CloudDiskController) List() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	menuId, _ := this.GetInt("MenuId", 0)
-	keyword := this.GetString("Keyword", "")
-	sortType, _ := this.GetInt("SortType", 0)
-
-	menuCond := ``
-	menuPars := make([]interface{}, 0)
-	resourceCond := ``
-	resourcePars := make([]interface{}, 0)
-	if keyword != "" {
-		// 有关键词时全局搜索
-		menuCond += ` AND menu_name LIKE ? `
-		menuPars = append(menuPars, utils.GetLikeKeyword(keyword))
-		resourceCond += ` AND resource_name LIKE ? `
-		resourcePars = append(resourcePars, utils.GetLikeKeyword(keyword))
-	} else {
-		menuCond += ` AND parent_id = ? `
-		menuPars = append(menuPars, menuId)
-		resourceCond += ` AND menu_id = ? `
-		resourcePars = append(resourcePars, menuId)
-	}
-	orderRule := `create_time DESC`
-	if sortType == 2 {
-		orderRule = `create_time ASC`
-	}
-
-	// 父级目录
-	parentItem := new(models.CloudDiskMenu)
-	parentCond := ``
-	parentPars := make([]interface{}, 0)
-	parentList, e := parentItem.GetItemsByCondition(parentCond, parentPars, []string{}, "")
-	if e != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取父级目录列表失败, Err: " + e.Error()
-		return
-	}
-	parentNameMap := make(map[int]string)
-	menuMap := make(map[int]*models.CloudDiskMenu)
-	for i := range parentList {
-		parentNameMap[parentList[i].MenuId] = parentList[i].MenuName
-		menuMap[parentList[i].MenuId] = parentList[i]
-	}
-
-	list, e := models.GetCloudDiskMenuAndResourceList(menuCond, resourceCond, menuPars, resourcePars, orderRule)
-	if e != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取云盘列表数据失败, Err: " + e.Error()
-		return
-	}
-
-	// 管理员权限
-	ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-		return
-	}
-
-	listResp := new(models.CloudDiskListResp)
-	listResp.UploadResourceAuth = true
-	if ok {
-		listResp.CreateMenuAuth = true
-		listResp.BatchDelAuth = true
-	}
-	menuCount := 0
-	for i := range list {
-		list[i].ParentName = parentNameMap[list[i].ParentId]
-		if list[i].ItemType == 1 {
-			menuCount += 1
-			list[i].ItemIcon = models.CloudDiskResourceFileTypeIconMenu
-		}
-		list[i].SizeName = utils.FormatFileSize(list[i].Size)
-		// 按钮权限
-		au := new(models.CloudDiskListButton)
-		if ok || (list[i].AdminId == this.SysUser.AdminId) {
-			au.RenameAuth = true
-			au.DelAuth = true
-		}
-		list[i].ButtonAuth = au
-	}
-	// 根目录无子目录时, 关闭上传文件按钮
-	if menuId == 0 && menuCount == 0 {
-		listResp.UploadResourceAuth = false
-	}
-
-	// 面包屑
-	pathArr := make([]*models.CloudDiskMenuResourcePath, 0)
-	pathArr = services.GetCloudDiskMenuOrResourcePath(menuId, 0, menuMap, menuMap[menuId], pathArr)
-	listResp.ListPath = pathArr
-
-	listResp.List = list
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = listResp
-}
-
-// BatchDelete 批量删除
-// @Title 批量删除
-// @Description 批量删除
-// @Param	request	body models.CloudDiskBatchDeleteReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /batch_delete [post]
-func (this *CloudDiskController) BatchDelete() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.CloudDiskBatchDeleteReq
-	if e := json.Unmarshal(this.Ctx.Input.RequestBody, &req); e != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + e.Error()
-		return
-	}
-	if req.MenuIds == "" && req.ResourceIds == "" {
-		br.Msg = "请选择目录或文件"
-		return
-	}
-	menuIds := make([]int, 0)
-	resourceIds := make([]int, 0)
-	if req.MenuIds != "" {
-		menuIdArr := strings.Split(req.MenuIds, ",")
-		for i := range menuIdArr {
-			n, e := strconv.Atoi(menuIdArr[i])
-			if e != nil {
-				br.Msg = "参数有误"
-				br.ErrMsg = "参数有误, Err:" + e.Error()
-				return
-			}
-			menuIds = append(menuIds, n)
-		}
-	}
-	if req.ResourceIds != "" {
-		resourceIdArr := strings.Split(req.ResourceIds, ",")
-		for i := range resourceIdArr {
-			n, e := strconv.Atoi(resourceIdArr[i])
-			if e != nil {
-				br.Msg = "参数有误"
-				br.ErrMsg = "参数有误, Err:" + e.Error()
-				return
-			}
-			resourceIds = append(resourceIds, n)
-		}
-	}
-
-	// 权限校验-仅管理员可操作
-	ok, e := services.CheckCloudDiskManagerAuth(this.SysUser.RoleTypeCode)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "操作权限校验失败, ErrMsg: " + e.Error()
-		return
-	}
-	if !ok {
-		br.Msg = "无权操作"
-		return
-	}
-	if e = models.BatchDeleteCloudDiskMenuAndResource(menuIds, resourceIds); e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "批量删除目录及文件失败, Err:" + e.Error()
-		return
-	}
-
-	// 更新目录大小
-	if req.MenuId > 0 {
-		go func() {
-			if e := services.UpdateCloudDiskMenuSize(req.MenuId); e != nil {
-				alarm_msg.SendAlarmMsg("更新云盘目录大小失败, Err: "+e.Error(), 3)
-			}
-		}()
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}

+ 0 - 1117
controllers/ppt_english.go

@@ -1,1117 +0,0 @@
-package controllers
-
-import (
-	"encoding/json"
-	"eta_gn/eta_api/models"
-	"eta_gn/eta_api/models/company"
-	"eta_gn/eta_api/models/ppt_english"
-	"eta_gn/eta_api/services"
-	"eta_gn/eta_api/services/ppt"
-	"eta_gn/eta_api/utils"
-	_ "image/gif"
-	_ "image/jpeg"
-	_ "image/png"
-	"os"
-	"path"
-	"strconv"
-	"strings"
-	"time"
-
-	"github.com/rdlucklib/rdluck_tools/paging"
-)
-
-// PptEnglishController 新版ppt模块
-type PptEnglishController struct {
-	BaseAuthController
-}
-
-// PptEnglishCommonController 新版ppt公共模块
-type PptEnglishCommonController struct {
-	BaseCommonController
-}
-
-// ListPpt
-// @Title 获取ppt列表
-// @Description 获取ppt列表接口
-// @Param   PageSize   query   int  true       "每页数据条数"
-// @Param   CurrentIndex   query   int  true       "当前页页码,从1开始"
-// @Param   KeyWord   query   string  true       "搜索关键词"
-// @Success 200 {object} ppt_english.PptEnglishListResp
-// @router /list [get]
-func (this *PptEnglishController) ListPpt() {
-	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"
-		return
-	}
-	pageSize, _ := this.GetInt("PageSize")
-	currentIndex, _ := this.GetInt("CurrentIndex")
-	keyWord := this.GetString("KeyWord")
-
-	var startSize int
-	if pageSize <= 0 {
-		pageSize = utils.PageSize20
-	}
-	if currentIndex <= 0 {
-		currentIndex = 1
-	}
-	startSize = utils.StartIndex(currentIndex, pageSize)
-
-	var condition string
-	var pars []interface{}
-
-	if keyWord != "" {
-		condition += ` AND (title LIKE ? OR admin_real_name LIKE ? ) `
-		pars = utils.GetLikeKeywordPars(pars, keyWord, 2)
-	}
-	total, err := ppt_english.GetPptEnglishListCount(condition, pars)
-
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取失败,Err:" + err.Error()
-		return
-	}
-	list, err := ppt_english.GetPptEnglishList(condition, pars, startSize, pageSize)
-	if err != nil {
-		br.Msg = "获取失败"
-		br.ErrMsg = "获取失败,Err:" + err.Error()
-		return
-	}
-	lenList := len(list)
-	for i := 0; i < lenList; i++ {
-		adminId := list[i].AdminId
-		if adminId == sysUser.AdminId || sysUser.Role == "admin" {
-			list[i].IsAuth = true
-		} else {
-			list[i].IsAuth = false
-		}
-	}
-	page := paging.GetPaging(currentIndex, pageSize, total)
-	resp := new(ppt_english.PptEnglishListResp)
-	resp.Paging = page
-	resp.List = list
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = resp
-}
-
-// AddPpt
-// @Title 新增ppt
-// @Description 新增ppt接口
-// @Param	request	body ppt_english.AddPptEnglishReq true "type json string"
-// @Success 200 Ret=200 新增成功
-// @router /add [post]
-func (this *PptEnglishController) AddPpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.AddPptEnglishReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.FirstPage.Title == "" {
-		br.Msg = "标题不能为空"
-		return
-	}
-
-	var newId int64
-	var msg string
-	if req.PptId <= 0 {
-		if req.GroupId == 0 {
-			br.Msg = "请输入目录ID"
-			return
-		}
-		item, err := ppt_english.GetPptEnglishByTitleAndId(req.FirstPage.Title, this.SysUser.AdminId)
-		if err != nil && !utils.IsErrNoRow(err) {
-			br.Msg = "获取数据异常!"
-			br.ErrMsg = "获取数据异常,Err:" + err.Error()
-			return
-		}
-		if item != nil {
-			br.Msg = "标题已存在,不可重复添加"
-			br.IsSendEmail = false
-			return
-		}
-		pptInfo := &ppt_english.PptEnglish{
-			//PptId:         0,
-			TemplateType:  req.FirstPage.TemplateType,
-			BackgroundImg: req.FirstPage.ImgUrl,
-			Title:         req.FirstPage.Title,
-			ReportType:    req.FirstPage.ReportType,
-			PptDate:       req.FirstPage.PptDate,
-			Content:       req.Content,
-			CoverContent:  req.CoverContent,
-			CreateTime:    time.Now(),
-			ModifyTime:    time.Now(),
-			AdminId:       this.SysUser.AdminId,
-			AdminRealName: this.SysUser.RealName,
-			TitleSetting:  req.TitleSetting,
-		}
-		newId, err = ppt_english.AddPptEnglish(pptInfo)
-		if err != nil {
-			br.Msg = "新增失败"
-			br.ErrMsg = "新增失败,Err:" + err.Error()
-			return
-		}
-		//新增ppt和目录映射
-		_, err = ppt.AddGroupPptEnglishMapping(newId, req.GroupId, this.SysUser.AdminId, this.SysUser.RealName)
-		if err != nil {
-			br.Msg = err.Error()
-			return
-		}
-		msg = "新增成功"
-	} else {
-		newId = req.PptId
-
-		pptInfo, err := ppt_english.GetPptEnglishById(int(req.PptId))
-		if err != nil {
-			br.Msg = "信息获取失败"
-			br.ErrMsg = "信息获取失败,Err:" + err.Error()
-			return
-		}
-		pptInfo.TemplateType = req.FirstPage.TemplateType
-		pptInfo.BackgroundImg = req.FirstPage.ImgUrl
-		pptInfo.Title = req.FirstPage.Title
-		pptInfo.ReportType = req.FirstPage.ReportType
-		pptInfo.PptDate = req.FirstPage.PptDate
-		pptInfo.Content = req.Content
-		pptInfo.CoverContent = req.CoverContent
-		pptInfo.ModifyTime = time.Now()
-		pptInfo.TitleSetting = req.TitleSetting
-		err = pptInfo.Update([]string{"TemplateType", "BackgroundImg", "Title", "ReportType", "PptDate", "Content", "ModifyTime", "CoverContent", "TitleSetting"})
-
-		msg = "保存成功"
-	}
-	resp := ppt_english.AddPptEnglishResp{
-		PptId: newId,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = msg
-	br.Data = resp
-}
-
-// EditPpt
-// @Title 编辑ppt
-// @Description 编辑ppt接口
-// @Param	request	body ppt_english.AddPptEnglishReq true "type json string"
-// @Success 200 Ret=200 编辑成功
-// @router /edit [post]
-func (this *PptEnglishController) EditPpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.AddPptEnglishReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.FirstPage.Title == "" {
-		br.Msg = "标题不能为空"
-		return
-	}
-	item, err := ppt_english.GetPptEnglishByTitleAndId(req.FirstPage.Title, this.SysUser.AdminId)
-	if err != nil && !utils.IsErrNoRow(err) {
-		br.Msg = "获取数据异常!"
-		br.ErrMsg = "获取数据异常,Err:" + err.Error()
-		return
-	}
-	if item != nil && item.PptId > 0 && item.PptId != int(req.PptId) {
-		br.Msg = "标题已存在,不可重复添加"
-		br.IsSendEmail = false
-		return
-	}
-	pptInfo, err := ppt_english.GetPptEnglishById(int(req.PptId))
-	if err != nil {
-		br.Msg = "信息获取失败"
-		br.ErrMsg = "信息获取失败,Err:" + err.Error()
-		return
-	}
-
-	// 判断权限
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		_, err := ppt_english.GetPPtGrantConf(pptInfo.PptId, this.SysUser.AdminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				br.Msg = `该PPT已取消共享,保存失败`
-				br.ErrMsg = `该PPT已取消共享,保存失败`
-				br.IsSendEmail = false
-			} else {
-				br.Msg = `保存失败`
-				br.ErrMsg = `保存失败,ERR:` + err.Error()
-			}
-			return
-		}
-	}
-
-	// 修改
-	pptInfo.TemplateType = req.FirstPage.TemplateType
-	pptInfo.BackgroundImg = req.FirstPage.ImgUrl
-	pptInfo.Title = req.FirstPage.Title
-	pptInfo.ReportType = req.FirstPage.ReportType
-	pptInfo.PptDate = req.FirstPage.PptDate
-	pptInfo.Content = req.Content
-	pptInfo.CoverContent = req.CoverContent
-	pptInfo.ModifyTime = time.Now()
-	pptInfo.TitleSetting = req.TitleSetting
-	err = pptInfo.Update([]string{"TemplateType", "BackgroundImg", "Title", "ReportType", "PptDate", "Content", "ModifyTime", "CoverContent", "TitleSetting"})
-	if err != nil {
-		br.Msg = "编辑失败"
-		br.ErrMsg = "编辑失败,Err:" + err.Error()
-		return
-	}
-
-	pptMap, err := ppt_english.GetPptMappingByPptId(req.PptId)
-	if err != nil {
-		br.Msg = `该PPT信息不存在, 保存失败`
-		br.ErrMsg = `该PPT信息不存在, 保存失败, Err` + err.Error()
-		br.IsSendEmail = false
-		return
-	}
-	pptMapList, err := ppt_english.GetPptMappingListByGroupIdDesc(pptMap.GroupId)
-	if err != nil {
-		br.ErrMsg = "PPT目录信息异常"
-		return
-	}
-	count, err := ppt_english.GetPptMappingCountByGroupPptId(pptMap.GroupPptId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = "获取英文PPT和用户权限关系失败"
-		br.ErrMsg = "获取英文PPT和用户权限关系失败, Err:" + err.Error()
-		return
-	}
-	if !pptMap.IsMoved && len(pptMapList) > 1 && count > 0 {
-		// 如果没有人为移动位置, 默认将当前ppt置顶
-		err = ppt.MoveGroupPptEnglish(pptMap.GroupId, pptMap.GroupPptId, pptMapList[0].GroupPptId, 0, this.SysUser.AdminId)
-		if err != nil {
-			br.Msg = err.Error()
-			br.ErrMsg = "移动失败,Err:" + err.Error()
-			return
-		}
-	}
-
-	// 日志记录
-	{
-		logInfo := &ppt_english.PptEnglishSaveLog{
-			PptId:         pptInfo.PptId,
-			TemplateType:  pptInfo.TemplateType,
-			BackgroundImg: pptInfo.BackgroundImg,
-			Title:         pptInfo.Title,
-			ReportType:    pptInfo.ReportType,
-			PptDate:       pptInfo.PptDate,
-			Content:       pptInfo.Content,
-			CoverContent:  pptInfo.CoverContent,
-			AdminId:       this.SysUser.AdminId,
-			AdminRealName: this.SysUser.RealName,
-			CreateTime:    time.Now(),
-			TitleSetting:  req.TitleSetting,
-		}
-		_, err = ppt_english.AddPptEnglishSaveLog(logInfo)
-	}
-
-	resp := ppt_english.AddPptEnglishResp{
-		PptId: req.PptId,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "编辑成功"
-	br.IsAddLog = true
-	br.Data = resp
-}
-
-// DeletePpt
-// @Title 删除ppt
-// @Description 删除ppt接口
-// @Param	request	body ppt_english.DeletePptEnglishReq true "type json string"
-// @Success 200 Ret=200 删除成功
-// @router /delete [post]
-func (this *PptEnglishController) DeletePpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.DeletePptEnglishReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-	pptInfo, err := ppt_english.GetPptEnglishById(req.PptId)
-	if err != nil {
-		br.Msg = "ppt不存在"
-		return
-	}
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		br.Msg = "无权删除"
-		return
-	}
-	err = ppt_english.DeletePptEnglish(req.PptId)
-	if err != nil {
-		br.Msg = "删除失败"
-		br.ErrMsg = "删除失败,Err:" + err.Error()
-		return
-	}
-	//如果该ppt存在单个共享记录,则删除共享
-	err = ppt.DeleteGroupPptEnglish(req.PptId)
-	if err != nil {
-		br.Msg = "删除失败"
-		br.ErrMsg = "删除失败,Err:" + err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.IsAddLog = true
-	br.Msg = "删除成功"
-}
-
-// DetailPpt
-// @Title 获取ppt详情
-// @Description 获取ppt详情接口
-// @Param   PptId   query   int  true       "PptId"
-// @Success 200 {object} ppt_english.PptEnglish
-// @router /detail [get]
-func (this *PptEnglishController) DetailPpt() {
-	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
-	}
-	pptId, _ := this.GetInt("PptId")
-
-	pptInfo, err := ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		br.Msg = "信息获取失败"
-		br.ErrMsg = "信息获取失败,Err:" + err.Error()
-		return
-	}
-
-	// 查询编辑中
-	editor, e := services.UpdatePptEditing(pptId, 0, sysUser.AdminId, sysUser.RealName, true)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "更新编辑状态失败, err: " + e.Error()
-		return
-	}
-	resp := new(ppt_english.EnglishPPTDetailResp)
-	resp.PptEnglish = pptInfo
-	resp.Editor = editor
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = resp
-}
-
-// DownloadPptx
-// @Title ppt下载
-// @Description ppt下载
-// @Param   PptId   query   int  true       "PptId"
-// @Success 200 下载成功
-// @router /downloadpptx [get]
-func (this *PptEnglishCommonController) DownloadPptx() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	pptId, err := this.GetInt("PptId")
-	if err != nil {
-		br.Msg = "参数错误"
-		br.ErrMsg = "获取,pptId,Err:" + err.Error()
-		return
-	}
-	pptInfo, err := ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		br.Msg = "获取信息失败"
-		br.ErrMsg = "获取信息失败,Err:" + err.Error()
-		return
-	}
-	filePath := pptInfo.PptxUrl
-	fileName := pptInfo.Title + ".pptx"
-	this.Ctx.Output.Download(filePath, fileName)
-	br.Success = true
-	br.Ret = 200
-	br.Msg = "下载成功"
-	return
-}
-
-// Publish
-// @Title 发布接口
-// @Description 发布接口
-// @Param	request	body ppt_english.SavePptEnglishPathReq true "type json string"
-// @Success Ret=200 发布成功
-// @router /publish [post]
-func (this *PptEnglishController) Publish() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-
-	//SavePptEnglishPathReq
-	//PptEnglishPublishReq
-	var req ppt_english.SavePptEnglishPathReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	pptId := req.PptId
-	if pptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-	err = ppt_english.EditPptEnglishPath(pptId, req.PptxUrl)
-	if err != nil {
-		br.Msg = "发布失败"
-		br.ErrMsg = "发布失败,Err:" + err.Error()
-		return
-	}
-	//添加发布记录
-	{
-		record := new(ppt_english.PptEnglishPublishRecord)
-		record.CreateTime = time.Now()
-		record.PptId = pptId
-		record.PptUrl = req.PptxUrl
-		go ppt_english.AddPptEnglishPublishRecord(record)
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "发布成功"
-	br.IsAddLog = true
-	return
-}
-
-// PptUpload
-// @Title ppt上传
-// @Description ppt上传
-// @Param   PptId   query   int  true       "PptId"
-// @Success 200 新增成功
-// @router /pptUpload [post]
-func (this *PptEnglishController) PptUpload() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	pptId, _ := this.GetInt("PptId", 0)
-	if pptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-	_, err := ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		br.Msg = "获取数据失败"
-		br.ErrMsg = "获取PPT详情失败,Err:" + err.Error()
-		return
-	}
-
-	f, h, err := this.GetFile("file")
-	if err != nil {
-		br.Msg = "获取资源信息失败"
-		br.ErrMsg = "获取资源信息失败,Err:" + err.Error()
-		return
-	}
-	uploadFileName := h.Filename //上传的文件名
-	ext := path.Ext(h.Filename)
-	dateDir := time.Now().Format("20060102")
-	uploadDir := utils.STATIC_DIR + "hongze/" + dateDir
-	err = os.MkdirAll(uploadDir, utils.DIR_MOD)
-	if err != nil {
-		br.Msg = "存储目录创建失败"
-		br.ErrMsg = "存储目录创建失败,Err:" + err.Error()
-		return
-	}
-	randStr := utils.GetRandStringNoSpecialChar(28)
-	fileName := randStr + ext
-	fpath := uploadDir + "/" + fileName
-	defer f.Close() //关闭上传文件
-	err = this.SaveToFile("file", fpath)
-	if err != nil {
-		br.Msg = "文件上传失败"
-		br.ErrMsg = "文件上传失败,Err:" + err.Error()
-		return
-	}
-	hzUploadDir := "ppt/"
-	savePptxToOssPath := hzUploadDir + time.Now().Format("200601/20060102/")
-
-	//pptName := strings.Replace(pptItem.Title, "\n", "", -1)
-	//pptName = strings.TrimSuffix(pptName, " ")
-	pptName := utils.GetRandStringNoSpecialChar(28)
-	savePptxToOssPath += pptName + ".pptx"
-
-	defer func() {
-		_ = os.Remove(fpath)
-	}()
-
-	//上传到阿里云 和 minio
-	pptxUrl := ``
-	//if utils.ObjectStorageClient == "minio" {
-	//	err = services.UploadFileToMinIo("", fpath, savePptxToOssPath)
-	//	if err != nil {
-	//		br.Msg = "文件上传失败"
-	//		br.ErrMsg = "文件上传失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	pptxUrl = utils.MinIoImghost + savePptxToOssPath
-	//} else {
-	//	err = services.UploadFileToAliyun("", fpath, savePptxToOssPath)
-	//	if err != nil {
-	//		br.Msg = "文件上传失败"
-	//		br.ErrMsg = "文件上传失败,Err:" + err.Error()
-	//		return
-	//	}
-	//	pptxUrl = utils.Imghost + savePptxToOssPath
-	//}
-	ossClient := services.NewOssClient()
-	if ossClient == nil {
-		br.Msg = "上传失败"
-		br.ErrMsg = "初始化OSS服务失败"
-		return
-	}
-	pptxUrl, err = ossClient.UploadFile("", fpath, savePptxToOssPath)
-	if err != nil {
-		br.Msg = "文件上传失败"
-		br.ErrMsg = "文件上传失败,Err:" + err.Error()
-		return
-	}
-
-	item := &models.Resource{
-		//Id:           0,
-		ResourceUrl:  pptxUrl,
-		CreateTime:   time.Now(),
-		ResourceType: 4,
-	}
-	newId, err := models.AddResource(item)
-	if err != nil {
-		br.Msg = "资源上传失败"
-		br.ErrMsg = "资源上传失败,Err:" + err.Error()
-		return
-	}
-	resp := models.ResourceResp{
-		Id:           newId,
-		ResourceUrl:  pptxUrl,
-		ResourceName: uploadFileName,
-	}
-
-	br.Msg = "上传成功"
-	br.Ret = 200
-	br.Success = true
-	br.Data = resp
-	return
-}
-
-// SaveLog
-// @Title 定时ppt操作日志记录
-// @Description 定时ppt操作日志记录
-// @Param	request	body ppt_english.AddPptEnglishReq true "type json string"
-// @Success 200 新增成功
-// @router /saveLog [post]
-func (this *PptEnglishController) SaveLog() {
-	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
-	}
-	var req ppt_english.AddPptEnglishReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.FirstPage.Title == "" {
-		br.Msg = "标题不能为空"
-		return
-	}
-	var pageContent []services.PPTContent
-	err = json.Unmarshal([]byte(req.Content), &pageContent)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-
-	// 获取ppt
-	item, err := ppt_english.GetPptEnglishByTitleAndId(req.FirstPage.Title, this.SysUser.AdminId)
-	if err != nil && !utils.IsErrNoRow(err) {
-		br.Msg = "获取数据异常!"
-		br.ErrMsg = "获取数据异常,Err:" + err.Error()
-		return
-	}
-	if item != nil && item.PptId > 0 && item.PptId != int(req.PptId) {
-		br.Msg = "标题已存在,不可重复添加"
-		br.IsSendEmail = false
-		return
-	}
-
-	//变更ppt内容
-	pptItem, e := ppt_english.GetPptEnglishById(int(req.PptId))
-	if e != nil {
-		if utils.IsErrNoRow(e) {
-			br.Msg = "PPT已被删除, 请刷新页面"
-			return
-		}
-		br.Msg = "信息获取失败"
-		br.ErrMsg = "信息获取失败,Err:" + e.Error()
-		return
-	}
-
-	// 标记编辑状态
-	if pptItem.PptId > 0 {
-		_, e = services.UpdatePptEditing(pptItem.PptId, 1, sysUser.AdminId, sysUser.RealName, true)
-		if e != nil {
-			br.Msg = "操作失败"
-			br.ErrMsg = "更新编辑状态失败, err: " + e.Error()
-			return
-		}
-	}
-
-	pptItem.TemplateType = req.FirstPage.TemplateType
-	pptItem.BackgroundImg = req.FirstPage.ImgUrl
-	pptItem.Title = req.FirstPage.Title
-	pptItem.ReportType = req.FirstPage.ReportType
-	pptItem.PptDate = req.FirstPage.PptDate
-	pptItem.Content = req.Content
-	pptItem.ModifyTime = time.Now()
-	pptItem.PptPage = len(pageContent)
-	err = pptItem.Update([]string{"TemplateType", "BackgroundImg", "Title", "ReportType", "PptDate", "Content", "ModifyTime", "ppt_page"})
-
-	pptMap, err := ppt_english.GetPptMappingByPptId(req.PptId)
-	if err != nil {
-		br.Msg = `该PPT信息不存在, 保存失败`
-		br.ErrMsg = `该PPT信息不存在, 保存失败, Err` + err.Error()
-		br.IsSendEmail = false
-		return
-	}
-	pptMapList, err := ppt_english.GetPptMappingListByGroupIdDesc(pptMap.GroupId)
-	if err != nil {
-		br.ErrMsg = "PPT目录信息异常"
-		return
-	}
-	count, err := ppt_english.GetPptMappingCountByGroupPptId(pptMap.GroupPptId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = "获取英文PPT和用户权限关系失败"
-		br.ErrMsg = "获取英文PPT和用户权限关系失败, Err:" + err.Error()
-		return
-	}
-	if !pptMap.IsMoved && len(pptMapList) > 1 && count > 0 {
-		// 如果没有人为移动位置, 且当前用户有权限, 默认将当前ppt置顶
-		err = ppt.MoveGroupPptEnglish(pptMap.GroupId, pptMap.GroupPptId, pptMapList[0].GroupPptId, 0, this.SysUser.AdminId)
-		if err != nil {
-			br.Msg = err.Error()
-			br.ErrMsg = "移动失败,Err:" + err.Error()
-			return
-		}
-	}
-
-	//日志记录
-	logInfo := &ppt_english.PptEnglishSaveLog{
-		PptId:         int(req.PptId),
-		TemplateType:  req.FirstPage.TemplateType,
-		BackgroundImg: req.FirstPage.ImgUrl,
-		Title:         req.FirstPage.Title,
-		ReportType:    req.FirstPage.ReportType,
-		PptDate:       req.FirstPage.PptDate,
-		Content:       req.Content,
-		CoverContent:  req.CoverContent,
-		AdminId:       this.SysUser.AdminId,
-		AdminRealName: this.SysUser.RealName,
-		CreateTime:    time.Now(),
-		TitleSetting:  req.TitleSetting,
-	}
-	_, err = ppt_english.AddPptEnglishSaveLog(logInfo)
-	if err != nil {
-		br.Msg = "保存失败"
-		br.ErrMsg = "保存PPT日志失败, Err: " + err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "保存成功"
-}
-
-// GetConfig
-// @Title 获取ppt配置
-// @Description 获取ppt列表接口
-// @Param   PageSize   query   int  true       "每页数据条数"
-// @Param   CurrentIndex   query   int  true       "当前页页码,从1开始"
-// @Param   KeyWord   query   string  true       "搜索关键词"
-// @Success 200 {object} ppt_english.PptEnglishListResp
-// @router /config [get]
-func (this *PptEnglishController) GetConfig() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-
-	crmConfig, err := company.GetConfigDetailByCode("ppt_limit")
-	if err != nil {
-		br.Msg = "获取配置失败"
-		br.ErrMsg = "获取配置失败"
-		br.IsSendEmail = false
-		return
-	}
-	resp := new(ppt_english.PptEnglishConfigResp)
-
-	err = json.Unmarshal([]byte(crmConfig.ConfigValue), resp)
-	if err != nil {
-		br.Msg = "获取配置失败"
-		br.ErrMsg = "获取配置失败;err:" + err.Error()
-		br.IsSendEmail = false
-		return
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "获取成功"
-	br.Data = resp
-}
-
-// Grant
-// @Title 分配ppt权限
-// @Description 分配ppt权限接口
-// @Param	request	body ppt_english.GrantPptReq true "type json string"
-// @Success 200 Ret=200 分配成功
-// @router /grant [post]
-func (this *PptEnglishController) Grant() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.GrantPptReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-
-	// 查找ppt信息
-	pptInfo, err := ppt_english.GetPptEnglishById(req.PptId)
-	if err != nil {
-		br.Msg = "ppt不存在"
-		return
-	}
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		br.Msg = "无权配置"
-		return
-	}
-
-	// 分配
-	err, errMsg := ppt.GrantPptEnglish(req.PptId, req.GrantType, req.AdminIdStr, this.SysUser.AdminId)
-	if errMsg != `` {
-		br.Msg = errMsg
-		br.ErrMsg = errMsg
-		if err != nil {
-			br.ErrMsg = errMsg + ";Err:" + err.Error()
-		} else {
-			br.IsSendEmail = false
-		}
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.IsAddLog = true
-	br.Msg = "分配成功"
-}
-
-// CancelGrant
-// @Title 取消分配ppt权限
-// @Description 取消分配ppt权限
-// @Param	request	body ppt_english.DeletePptEnglishReq true "type json string"
-// @Success 200 Ret=200 分配成功
-// @router /grant/cancel [post]
-func (this *PptEnglishController) CancelGrant() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.DeletePptEnglishReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-
-	// 查找ppt信息
-	pptInfo, err := ppt_english.GetPptEnglishById(req.PptId)
-	if err != nil {
-		br.Msg = "ppt不存在"
-		return
-	}
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		br.Msg = "无权取消配置"
-		return
-	}
-
-	// 分配
-	err, errMsg := ppt.DeleteGrantPptEnglish(req.PptId)
-	if errMsg != `` {
-		br.Msg = errMsg
-		br.ErrMsg = errMsg
-		if err != nil {
-			br.ErrMsg = errMsg + ";Err:" + err.Error()
-		} else {
-			br.IsSendEmail = false
-		}
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.IsAddLog = true
-	br.Msg = "取消成功"
-}
-
-// GrantInfo
-// @Title 获取分配ppt权限详情
-// @Description 获取分配ppt权限详情接口
-// @Param   PptId   query   int  true       "ppt的id"
-// @Success 200 {object} ppt_english.GrantInfoResp
-// @router /grant/info [get]
-func (this *PptEnglishController) GrantInfo() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	pptId, _ := this.GetInt("PptId")
-	if pptId <= 0 {
-		br.Msg = "参数错误"
-		return
-	}
-
-	// 查找ppt信息
-	pptInfo, err := ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		br.Msg = "ppt不存在"
-		return
-	}
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		br.Msg = "无权配置"
-		return
-	}
-
-	pptGrantInfoList, err := ppt_english.GetPPtGrantInfo(pptId)
-	if err != nil {
-		br.Msg = "信息获取失败"
-		br.ErrMsg = "信息获取失败,Err:" + err.Error()
-		return
-	}
-
-	if len(pptGrantInfoList) <= 0 {
-		br.Msg = "未配置"
-		br.IsSendEmail = false
-		return
-	}
-	grantType := 0
-	var adminIdStr string
-	if pptGrantInfoList[0].DepartmentId > 0 { //分配类型;1:全部ficc研究员;2:指定成员
-		grantType = 1
-	} else {
-		grantType = 2
-		adminIdsList := make([]string, 0)
-		for _, v := range pptGrantInfoList {
-			adminIdsList = append(adminIdsList, strconv.Itoa(int(v.GrantAdminId)))
-		}
-		adminIdStr = strings.Join(adminIdsList, ",")
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Data = ppt_english.GrantInfoResp{
-		PptId:      pptId,
-		GrantType:  grantType,
-		AdminIdStr: adminIdStr,
-	}
-	br.Msg = "分配成功"
-}
-
-// ToReport
-// @Title 英文PPT转报告
-// @Description PPT转报告
-// @Param	request	body ppt_english.EnglishPPT2ReportReq true "type json string"
-// @Success 200 Ret=200 转换成功
-// @router /toReport [post]
-func (this *PptEnglishController) ToReport() {
-	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 ppt_english.EnglishPPT2ReportReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId == 0 {
-		br.Msg = "参数有误"
-		return
-	}
-	reportId, reportCode, msg, e := services.SaveEnglishPPTReport(req.PptId, req.ClassifyIdFirst, req.ClassifyIdSecond, req.Title, req.Abstract, sysUser)
-	if e != nil {
-		br.Msg = msg
-		br.ErrMsg = "PPT转报告失败, Err: " + e.Error()
-		return
-	}
-
-	resp := &models.PPT2ReportResp{
-		ReportId:   reportId,
-		ReportCode: reportCode,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "转换成功"
-	br.IsAddLog = true
-	br.Data = resp
-}
-
-// TitleCheck
-// @Title 校验标题是否重复
-// @Description 校验标题是否重复接口
-// @Param   Title   query   int  true       "标题"
-// @Success 200 Ret=200 编辑成功
-// @router /titleCheck [get]
-func (this *PptEnglishController) TitleCheck() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	title := this.GetString("Title")
-	pptId, _ := this.GetInt("PptId")
-	if title == "" {
-		br.Msg = "标题不能为空"
-		return
-	}
-	item, err := ppt_english.GetPptEnglishByTitleAndId(title, this.SysUser.AdminId)
-	if err != nil && !utils.IsErrNoRow(err) {
-		br.Msg = "获取数据异常!"
-		br.ErrMsg = "获取数据异常,Err:" + err.Error()
-		return
-	}
-	if item != nil && item.PptId > 0 && item.PptId != pptId {
-		br.Msg = "标题已存在,不可重复添加"
-		br.IsSendEmail = false
-		return
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "校验成功"
-}
-
-// Editing
-// @Title 标记/查询编辑状态
-// @Description 标记/查询编辑状态
-// @Param	request	body models.PPTEditingReq true "type json string"
-// @Success 200 Ret=200 操作成功
-// @router /editing [post]
-func (this *PptEnglishController) Editing() {
-	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
-	}
-	var req models.PPTEditingReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "参数有误"
-		return
-	}
-	if req.Status < 0 {
-		br.Msg = "标记状态异常"
-		return
-	}
-
-	editor, e := services.UpdatePptEditing(req.PptId, req.Status, sysUser.AdminId, sysUser.RealName, true)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "更新编辑状态失败, err: " + e.Error()
-		return
-	}
-
-	br.Data = editor
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}

+ 0 - 601
controllers/ppt_english_group.go

@@ -1,601 +0,0 @@
-package controllers
-
-import (
-	"encoding/json"
-	"eta_gn/eta_api/models"
-	"eta_gn/eta_api/models/ppt_english"
-	"eta_gn/eta_api/services"
-	"eta_gn/eta_api/services/ppt"
-	"fmt"
-	"strings"
-)
-
-type PptEnglishGroupController struct {
-	BaseAuthController
-}
-
-// GroupList
-// @Title 获取可见的目录列表
-// @Description 获取可见的目录列表接口
-// @Success 200 {object} ppt_english.RespGroupList
-// @router /groups [get]
-func (this *PptEnglishGroupController) GroupList() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	data, err := ppt.GetEnglishGroupsByAdminId(this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	br.Data = data
-	return
-}
-
-// AddGroup
-// @Title 新增ppt目录
-// @Description 新增ppt目录接口
-// @Param	request	body ppt_english.ReqAddPptGroup true "type json string"
-// @Success 200 {object} ppt_english.RespAddPptGroup
-// @router /group/add [post]
-func (this *PptEnglishGroupController) AddGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqAddPptGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupName == "" {
-		br.Msg = "请输入目录名称"
-		return
-	}
-	newId, err := ppt.AddEnglishGroup(req.GroupName, this.SysUser.AdminId, 0, 0)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	resp := ppt_english.RespAddPptGroup{
-		GroupId: newId,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "新增成功"
-	br.Data = resp
-}
-
-// DeleteGroup
-// @Title 删除ppt目录
-// @Description 删除ppt目录接口
-// @Param	request	body ppt_english.ReqPptGroup true "type json string"
-// @Success 200 Ret=200 删除成功
-// @router /group/delete [post]
-func (this *PptEnglishGroupController) DeleteGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqPptGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	err = ppt.DelEnglishGroup(req.GroupId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "删除成功"
-}
-
-// ShareGroup
-// @Title 共享/取消共享目录
-// @Description 共享/取消共享目录接口
-// @Param	request	body ppt_english.ReqPptGroup true "type json string"
-// @Success 200 {object} ppt_english.RespPptGroupShare
-// @router /group/share [post]
-func (this *PptEnglishGroupController) ShareGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqPptGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	data, err := ppt.ShareEnglishGroup(req.GroupId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-	br.Data = data
-	return
-}
-
-// CopyGroup
-// @Title 复制目录
-// @Description 复制目录接口
-// @Param	request	body ppt_english.ReqPptGroup true "type json string"
-// @Success 200 Ret=200 复制成功
-// @router /group/copy [post]
-func (this *PptEnglishGroupController) CopyGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqPptGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	err = ppt.CopyEnglishGroup(req.GroupId, this.SysUser.AdminId, this.SysUser.RealName)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "复制成功"
-	return
-}
-
-// RenameGroup
-// @Title 目录重命名
-// @Description 目录重命名接口
-// @Param	request	body ppt_english.ReqRenamePptGroup true "type json string"
-// @Success 200 Ret=200 重命名成功
-// @router /group/rename [post]
-func (this *PptEnglishGroupController) RenameGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqRenamePptGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	if req.GroupName == "" {
-		br.Msg = "请输入目录名称"
-		return
-	}
-	err = ppt.RenameEnglishGroupName(req.GroupId, req.GroupName, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "重命名成功"
-	return
-}
-
-// SharePpt
-// @Title 共享/取消共享单个ppt
-// @Description 共享/取消共享单个ppt接口
-// @Param	request	body ppt_english.ReqPptShare true "type json string"
-// @Success 200 {object} ppt_english.RespPptShare
-// @router /share [post]
-func (this *PptEnglishGroupController) SharePpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqPptShareEnglish
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "请输入目录里的ppt序号"
-		return
-	}
-	pptInfo, err := ppt.ShareSingleGroupPptEnglish(req.PptId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-	br.Data = ppt_english.RespPptShareEnglish{
-		PptId:   pptInfo.PptId,
-		IsShare: pptInfo.IsShare,
-	}
-	return
-}
-
-// GroupPptList
-// @Title 获取默认的ppt列表或者单个目录内的ppt列表
-// @Description 获取可见的目录列表接口
-// @Param   GroupId   query   int  true       "目录ID"
-// @Success 200 {object} ppt_english.RespGroupPptList
-// @router /group/ppt/list [get]
-func (this *PptEnglishGroupController) GroupPptList() {
-	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
-	}
-	groupId, _ := this.GetInt("GroupId")
-
-	data, err := ppt.GetGroupPptEnglishList(int64(groupId), this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		br.IsSendEmail = false
-		return
-	}
-	// 编辑状态
-	for _, v := range data.List {
-		editor, e := services.UpdatePptEditing(int(v.PptId), 0, sysUser.AdminId, sysUser.RealName, true)
-		if e != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = fmt.Sprintf("获取PPT编辑状态失败, err: %s", e.Error())
-			return
-		}
-		v.Editor = editor
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	br.Data = data
-	return
-}
-
-// MoveGroupPpt
-// @Title 移动目录里的ppt
-// @Description 移动目录里的ppt接口
-// @Param	request	body ppt_english.ReqMoveGroupPpt true "type json string"
-// @Success 200 Ret=200 移动成功
-// @router /move [post]
-func (this *PptEnglishGroupController) MoveGroupPpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqMoveGroupPpt
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	err = ppt.MoveGroupPptEnglish(req.GroupId, req.GroupPptId, req.PrevGroupPptId, req.NextGroupPptId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "移动成功"
-}
-
-// MoveGroup
-// @Title 移动目录
-// @Description 移动目录接口
-// @Param	request	body ppt_english.ReqMoveGroup true "type json string"
-// @Success 200 Ret=200 移动成功
-// @router /group/move [post]
-func (this *PptEnglishGroupController) MoveGroup() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqMoveGroup
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	err = ppt.MoveEnglishGroup(req.GroupId, req.PrevGroupId, req.NextGroupId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "移动成功"
-}
-
-// CopyPpt
-// @Title 复制单个ppt
-// @Description 复制目录接口
-// @Param	request	body ppt_english.ReqCopyPpt true "type json string"
-// @Success 200 Ret=200 复制成功
-// @router /copy [post]
-func (this *PptEnglishGroupController) CopyPpt() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req ppt_english.ReqCopyPpt
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请输入目录ID"
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "请输入ppt ID"
-		return
-	}
-	data, err := ppt.CopyPptEnglish(req.PptId, req.GroupId, this.SysUser.AdminId, this.SysUser.RealName)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "复制成功"
-	br.Data = data
-	return
-}
-
-// GroupNameList
-// @Title 查询目录名称列表
-// @Description 查询目录名称列表接口
-// @Success 200 {object} ppt_english.RespPptGroupNameList
-// @router /group/name [get]
-func (this *PptEnglishGroupController) GroupNameList() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-
-	list, err := ppt_english.GetPptGroupIdAndGroupNameByAdminId(this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = "查询目录名称出错" + err.Error()
-		return
-	}
-	data := &ppt_english.RespPptGroupNameList{
-		List: list,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	br.Data = data
-	return
-}
-
-// SearchGroupPptList
-// @Title 按ppt关键词搜索列表
-// @Description 按ppt关键词搜索列表接口
-// @Param   KeyWord   query   int  true       "搜索关键词"
-// @Success 200 {object} ppt_english.RespSearchGroupPptList
-// @router /group/ppt/search [get]
-func (this *PptEnglishGroupController) SearchGroupPptList() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	keyWord := this.GetString("KeyWord")
-	data, err := ppt.SearchGroupPptEnglish(keyWord)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	br.Data = data
-	return
-}
-
-// SharePptList
-// @Title 获取用户开放的公共Ppt
-// @Description 获取用户开放的公共Ppt接口
-// @Param   AdminId		query  int		true	"创建人ID"
-// @Param   Keyword		query  string	true	"关键字"
-// @Param   IsPrivate	query  bool		false	"是否为私有"
-// @Success 200 {object} ppt_english.RespGroupPptList
-// @router /share/ppt/list [get]
-func (this *PptEnglishGroupController) SharePptList() {
-	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
-	}
-	adminId, _ := this.GetInt("AdminId")
-	keyword := this.GetString("Keyword")
-	isPrivate, _ := this.GetBool("IsPrivate", false)
-	if isPrivate && adminId <= 0 {
-		br.Msg = "参数有误, 私有PPT创建人ID不可为空"
-		return
-	}
-
-	data, err := ppt.GetSharePptEnglishList(adminId, keyword, isPrivate)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	// 编辑状态
-	for _, v := range data.List {
-		editor, e := services.UpdatePptEditing(int(v.PptId), 0, sysUser.AdminId, sysUser.RealName, true)
-		if e != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = fmt.Sprintf("获取PPT编辑状态失败, err: %s", e.Error())
-			return
-		}
-		v.Editor = editor
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	br.Data = data
-	return
-}
-
-// GrantPptList
-// @Title 获取用户共享的公共Ppt(分配权限的Ppt)
-// @Description 获取用户共享的公共Ppt(分配权限的Ppt)接口
-// @Param   GroupId   query   int  true       "分组ID,唉,其实不知道用啥名,就这么用吧"
-// @Param   Keyword   query   string  true       "关键字"
-// @Success 200 {object} ppt_english.RespGroupPptList
-// @router /grant/ppt/list [get]
-func (this *PptEnglishGroupController) GrantPptList() {
-	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
-	}
-	groupId, _ := this.GetInt("GroupId")
-	keyword := this.GetString("Keyword")
-
-	var sourceType string
-	switch groupId {
-	case 1:
-		sourceType = "my"
-	case 2:
-		sourceType = "other"
-	default:
-		br.Msg = "错误的来源"
-		br.IsSendEmail = false
-		return
-	}
-	data, err := ppt.GetGrantPptEnglishList(this.SysUser.AdminId, keyword, sourceType)
-	if err != nil {
-		br.Msg = err.Error()
-		return
-	}
-	// 编辑状态
-	for _, v := range data.List {
-		editor, e := services.UpdatePptEditing(int(v.PptId), 0, sysUser.AdminId, sysUser.RealName, true)
-		if e != nil {
-			br.Msg = "获取失败"
-			br.ErrMsg = fmt.Sprintf("获取PPT编辑状态失败, err: %s", e.Error())
-			return
-		}
-		v.Editor = editor
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "查询成功"
-	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
-}

+ 0 - 203
controllers/ppt_v2.go

@@ -4,11 +4,9 @@ import (
 	"encoding/json"
 	"eta_gn/eta_api/models"
 	"eta_gn/eta_api/models/company"
-	"eta_gn/eta_api/models/ppt_english"
 	"eta_gn/eta_api/services"
 	"eta_gn/eta_api/services/ppt"
 	"eta_gn/eta_api/utils"
-	"fmt"
 	_ "image/gif"
 	_ "image/jpeg"
 	_ "image/png"
@@ -1001,207 +999,6 @@ func (this *PptV2Controller) GrantInfo() {
 	br.Msg = "分配成功"
 }
 
-// ToEn
-// @Title 中文PPT转英文
-// @Description 中文PPT转英文
-// @Param	request	body models.EnPPT2CnReq true "type json string"
-// @Success 200 Ret=200 新增成功
-// @router /toEn [post]
-func (this *PptV2Controller) ToEn() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.EnPPT2CnReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptId <= 0 {
-		br.Msg = "请选择PPT"
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请选择目录"
-		return
-	}
-
-	origin, e := models.GetPptV2ById(req.PptId)
-	if e != nil {
-		br.Msg = "原PPT信息有误"
-		br.ErrMsg = "获取原PPT失败, Err: " + e.Error()
-		return
-	}
-
-	// 从基础配置中取出第一张封面图, 作为英文PPT的图片, 没有则取原PPT背景图
-	conf, e := models.GetBusinessConf()
-	if e != nil {
-		br.Msg = "获取PPT图配置失败"
-		br.ErrMsg = "获取PPT图配置失败, Err: " + e.Error()
-		return
-	}
-	coverImg := ""
-	if conf[models.BusinessConfEnPptCoverImgs] != "" {
-		imgArr := strings.Split(conf[models.BusinessConfEnPptCoverImgs], ",")
-		if len(imgArr) > 0 {
-			coverImg = imgArr[0]
-		}
-	}
-	if coverImg == "" {
-		coverImg = origin.BackgroundImg
-	}
-
-	_, e = ppt_english.GetPptGroupByGroupIdAdminId(int64(req.GroupId), this.SysUser.AdminId)
-	if e != nil {
-		br.Msg = "目录信息有误"
-		br.ErrMsg = "获取转换的英文PPT目录失败, Err: " + e.Error()
-		return
-	}
-
-	// 同一PPT可重复转换, 但是标题不能重复, 所以此处进行一个处理, 在原标题后+(int)作为新标题
-	newTitle, e := ppt.GetEnglishCopyUsableTitle(origin.Title)
-	if e != nil {
-		br.Msg = "标题信息有误"
-		br.ErrMsg = "获取可用标题失败, Err: " + e.Error()
-		return
-	}
-	var newId int64
-	pptInfo := &ppt_english.PptEnglish{
-		TemplateType:  origin.TemplateType,
-		BackgroundImg: coverImg,
-		Title:         newTitle,
-		ReportType:    origin.ReportType,
-		PptDate:       origin.PptDate,
-		Content:       origin.Content,
-		CoverContent:  origin.CoverContent,
-		CreateTime:    time.Now(),
-		ModifyTime:    time.Now(),
-		AdminId:       this.SysUser.AdminId,
-		AdminRealName: this.SysUser.RealName,
-		TitleSetting:  origin.TitleSetting,
-	}
-	newId, e = ppt_english.AddPptEnglish(pptInfo)
-	if e != nil {
-		br.Msg = "转换失败"
-		br.ErrMsg = "转换英文PPT失败, Err: " + e.Error()
-		return
-	}
-	// 新增ppt和目录映射
-	_, e = ppt.AddGroupPptEnglishMapping(newId, int64(req.GroupId), this.SysUser.AdminId, this.SysUser.RealName)
-	if e != nil {
-		br.Msg = "转换失败"
-		br.ErrMsg = "新增英文PPT和目录映射失败, Err: " + e.Error()
-		return
-	}
-
-	resp := ppt_english.AddPptEnglishResp{
-		PptId: newId,
-	}
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-	br.Data = resp
-}
-
-// BatchToEn
-// @Title 中文PPT批量转英文
-// @Description 中文PPT转英文
-// @Param	request	body models.BatchEnPPT2CnReq true "type json string"
-// @Success 200 Ret=200 新增成功
-// @router /batchToEn [post]
-func (this *PptV2Controller) BatchToEn() {
-	br := new(models.BaseResponse).Init()
-	defer func() {
-		this.Data["json"] = br
-		this.ServeJSON()
-	}()
-	var req models.BatchEnPPT2CnReq
-	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
-	if err != nil {
-		br.Msg = "参数解析异常!"
-		br.ErrMsg = "参数解析失败,Err:" + err.Error()
-		return
-	}
-	if req.PptIds == "" {
-		br.Msg = "请选择PPT"
-		return
-	}
-	if req.GroupId <= 0 {
-		br.Msg = "请选择目录"
-		return
-	}
-
-	pptIds := utils.JoinStr2IntArr(req.PptIds, ",")
-	if len(pptIds) == 0 {
-		br.Msg = "请选择PPT"
-		return
-	}
-	ppts, e := models.GetPptV2ByIds(pptIds)
-	if e != nil {
-		br.Msg = "操作失败"
-		br.ErrMsg = "获取原PPT列表失败, Err: " + e.Error()
-		return
-	}
-	if len(ppts) == 0 {
-		br.Msg = "请选择PPT"
-		return
-	}
-
-	_, e = ppt_english.GetPptGroupByGroupIdAdminId(int64(req.GroupId), this.SysUser.AdminId)
-	if e != nil {
-		br.Msg = "目录信息有误"
-		br.ErrMsg = "获取转换的英文PPT目录失败, Err: " + e.Error()
-		return
-	}
-
-	// 批量转换
-	nowTime := time.Now().Local()
-	for i := range ppts {
-		origin := ppts[i]
-		// 同一PPT可重复转换, 但是标题不能重复, 所以此处进行一个处理, 在原标题后+(int)作为新标题
-		newTitle, e := ppt.GetEnglishCopyUsableTitle(origin.Title)
-		if e != nil {
-			br.Msg = "标题信息有误"
-			br.ErrMsg = "获取可用标题失败, Err: " + e.Error()
-			return
-		}
-		var newId int64
-		pptInfo := &ppt_english.PptEnglish{
-			TemplateType:  origin.TemplateType,
-			BackgroundImg: origin.BackgroundImg,
-			Title:         newTitle,
-			ReportType:    origin.ReportType,
-			PptDate:       origin.PptDate,
-			Content:       origin.Content,
-			CoverContent:  origin.CoverContent,
-			CreateTime:    nowTime,
-			ModifyTime:    nowTime,
-			AdminId:       this.SysUser.AdminId,
-			AdminRealName: this.SysUser.RealName,
-		}
-		newId, e = ppt_english.AddPptEnglish(pptInfo)
-		if e != nil {
-			br.Msg = fmt.Sprintf("PPT: %s, 转换失败", ppts[i].Title)
-			br.ErrMsg = "转换英文PPT失败, Err: " + e.Error()
-			return
-		}
-		// 新增ppt和目录映射
-		_, e = ppt.AddGroupPptEnglishMapping(newId, int64(req.GroupId), this.SysUser.AdminId, this.SysUser.RealName)
-		if e != nil {
-			br.Msg = fmt.Sprintf("PPT: %s, 转换失败", ppts[i].Title)
-			br.ErrMsg = "新增英文PPT和目录映射失败, Err: " + e.Error()
-			return
-		}
-	}
-
-	br.Ret = 200
-	br.Success = true
-	br.Msg = "操作成功"
-}
-
 // TitleCheck
 // @Title 校验标题是否重复
 // @Description 校验标题是否重复接口

+ 0 - 107
models/cloud_disk_menu.go

@@ -1,107 +0,0 @@
-package models
-
-import (
-	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"strings"
-	"time"
-)
-
-type CloudDiskMenu struct {
-	MenuId     int       `gorm:"column:menu_id;primaryKey"` // `orm:"column(menu_id);pk" gorm:"primaryKey"  description:"目录ID"`
-	MenuName   string    `gorm:"column:menu_name"`          //`description:"目录名称"`
-	ParentId   int       `gorm:"column:parent_id"`          //`description:"父级ID"`
-	Size       int64     `gorm:"column:size"`               //`description:"目录大小"`
-	AdminId    int       `gorm:"column:admin_id"`           //`description:"创建人ID"`
-	AdminName  string    `gorm:"column:admin_name"`         //`description:"创建人名称"`
-	CreateTime time.Time `grom:"column:create_time"`        //`description:"创建时间"`
-	ModifyTime time.Time `gorm:"column:modify_time"`        //`description:"修改时间"`
-}
-
-func (m *CloudDiskMenu) TableName() string {
-	return "cloud_disk_menu"
-}
-
-func (m *CloudDiskMenu) Create() (err error) {
-	err = global.DEFAULT_DmSQL.Create(m).Error
-	return
-}
-
-func (m *CloudDiskMenu) Update(cols []string) (err error) {
-	err = global.DEFAULT_DmSQL.Select(cols).Updates(m).Error
-	return
-}
-
-func (m *CloudDiskMenu) GetItemById(id int) (err error) {
-	sql := `SELECT * FROM cloud_disk_menu WHERE menu_id = ? LIMIT 1`
-	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&m).Error
-	return
-}
-
-func (m *CloudDiskMenu) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	sql := `SELECT * FROM cloud_disk_menu WHERE 1=1 `
-	sql += condition
-	sql += ` LIMIT 1`
-	err = global.DEFAULT_DmSQL.Raw(sql, pars...).First(&m).Error
-	return
-}
-
-func (m *CloudDiskMenu) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*CloudDiskMenu, err error) {
-	fields := strings.Join(fieldArr, ",")
-	if len(fieldArr) == 0 {
-		fields = `*`
-	}
-	order := ``
-	if orderRule != "" {
-		order = ` ORDER BY ` + orderRule
-	}
-	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	err = global.DEFAULT_DmSQL.Raw(sql, pars...).Find(&items).Error
-	return
-}
-
-type CloudDiskMenuCreateReq struct {
-	MenuName string `description:"目录名称"`
-	ParentId int    `description:"父级ID"`
-}
-
-type CloudDiskMenuRenameReq struct {
-	MenuId   int    `description:"目录ID"`
-	MenuName string `description:"目录名称"`
-}
-
-type CloudDiskMenuDeleteReq struct {
-	MenuId int `description:"目录ID"`
-}
-
-// DeleteCloudDiskMenuAndResourcesByMenuIds 根据目录IDs删除目录及文件
-func DeleteCloudDiskMenuAndResourcesByMenuIds(menuIds []int) (err error) {
-	menuLens := len(menuIds)
-	if menuLens == 0 {
-		return
-	}
-	tx := global.DEFAULT_DmSQL.Begin()
-	defer func() {
-		if err != nil {
-			_ = tx.Rollback()
-		} else {
-			_ = tx.Commit()
-		}
-	}()
-
-	sql := `DELETE FROM cloud_disk_menu WHERE menu_id IN (` + utils.GetOrmInReplace(menuLens) + `)`
-	if err = tx.Exec(sql, menuIds).Error; err != nil {
-		return
-	}
-	sql = `DELETE FROM cloud_disk_resource WHERE menu_id IN (` + utils.GetOrmInReplace(menuLens) + `)`
-	if err = tx.Exec(sql, menuIds).Error; err != nil {
-		return
-	}
-	return
-}
-
-type CloudDiskMenuTree struct {
-	*CloudDiskMenu
-	Children []*CloudDiskMenuTree `gorm:"-"`
-}

+ 0 - 210
models/cloud_disk_resource.go

@@ -1,210 +0,0 @@
-package models
-
-import (
-	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"strings"
-	"time"
-)
-
-// 文件格式图标
-const (
-	CloudDiskResourceFileTypeIconMenu    = "https://hzstatic.hzinsights.com/static/icon/file_type_menu.png"
-	CloudDiskResourceFileTypeIconUnknown = "https://hzstatic.hzinsights.com/static/icon/file_type_unknown.png"
-)
-
-type CloudDiskResource struct {
-	ResourceId     int       `gorm:"column(resource_id);primaryKey;autoIncrement" description:"资源ID"`
-	MenuId         int       `gorm:"column(menu_id)" description:"目录ID"`
-	ResourceName   string    `gorm:"column(resource_name)" description:"文件名"`
-	ResourceSuffix string    `gorm:"column(resource_suffix)" description:"文件后缀名"`
-	ResourceUrl    string    `gorm:"column(resource_url)" description:"文件地址"`
-	ResourceIcon   string    `gorm:"column(resource_icon)" description:"文件类型图标"`
-	AdminId        int       `gorm:"column(admin_id)" description:"创建人ID"`
-	AdminName      string    `gorm:"column(admin_name)" description:"创建人名称"`
-	Size           int64     `gorm:"column(size)" description:"目录大小"`
-	CreateTime     time.Time `gorm:"column(create_time);autoCreateTime" description:"创建时间"`
-	ModifyTime     time.Time `gorm:"column(modify_time);autoUpdateTime" description:"修改时间"`
-}
-
-func (m *CloudDiskResource) TableName() string {
-	return "cloud_disk_resource"
-}
-
-func (m *CloudDiskResource) Create() (err error) {
-	err = global.DEFAULT_DmSQL.Create(m).Error
-	return
-}
-
-func (m *CloudDiskResource) Update(cols []string) (err error) {
-	err = global.DEFAULT_DmSQL.Select(cols).Updates(m).Error
-	return
-}
-
-func (m *CloudDiskResource) Delete() (err error) {
-	sql := `DELETE FROM cloud_disk_resource WHERE resource_id = ? LIMIT 1`
-	err = global.DEFAULT_DmSQL.Raw(sql, m.ResourceId).Error
-	return
-}
-
-func (m *CloudDiskResource) GetItemById(id int) (err error) {
-	sql := fmt.Sprintf(`SELECT * FROM %s WHERE resource_id = ? LIMIT 1`, m.TableName())
-	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&m).Error
-	return
-}
-
-func (m *CloudDiskResource) GetItemByCondition(condition string, pars []interface{}) (err error) {
-	sql := fmt.Sprintf(`SELECT * FROM %s WHERE 1=1 %s LIMIT 1`, m.TableName(), condition)
-	err = global.DEFAULT_DmSQL.Raw(sql, pars...).First(&m).Error
-	return
-}
-
-func (m *CloudDiskResource) GetItemsByCondition(condition string, pars []interface{}, fieldArr []string, orderRule string) (items []*CloudDiskResource, err error) {
-	fields := strings.Join(fieldArr, ",")
-	if len(fieldArr) == 0 {
-		fields = `*`
-	}
-	order := ``
-	if orderRule != "" {
-		order = ` ORDER BY ` + orderRule
-	}
-	sql := fmt.Sprintf(`SELECT %s FROM %s WHERE 1=1 %s %s`, fields, m.TableName(), condition, order)
-	err = global.DEFAULT_DmSQL.Raw(sql, pars...).Find(&items).Error
-	return
-}
-
-// CloudDiskCheckResourceRepeatReq 校验文件重名请求体
-type CloudDiskCheckResourceRepeatReq struct {
-	MenuId    int      `description:"目录ID"`
-	FileNames []string `description:"文件名"`
-}
-
-// CloudDiskCheckResourceRepeatResp 校验文件重名响应体
-type CloudDiskCheckResourceRepeatResp struct {
-	OriginName    string `description:"原文件名(包含后缀名)"`
-	IsRepeat      bool   `description:"是否重复"`
-	AvailableName string `description:"可用名"`
-}
-
-// CloudDiskResourceRenameReq 重命名文件请求体
-type CloudDiskResourceRenameReq struct {
-	ResourceId   int    `description:"文件ID"`
-	ResourceName string `description:"文件名称"`
-}
-
-// CloudDiskResourceDeleteReq 删除文件请求体
-type CloudDiskResourceDeleteReq struct {
-	ResourceId int `description:"文件ID"`
-}
-
-// CloudDiskListResp 云盘列表响应体
-type CloudDiskListResp struct {
-	List               []*CloudDiskListItem         `description:"列表数据"`
-	CreateMenuAuth     bool                         `description:"新建文件夹权限"`
-	UploadResourceAuth bool                         `description:"上传文件的权限"`
-	BatchDelAuth       bool                         `description:"批量删除目录/文件的权限(仅管理员有)"`
-	ListPath           []*CloudDiskMenuResourcePath `description:"面包屑"`
-}
-
-// CloudDiskListItem 云盘列表数据
-type CloudDiskListItem struct {
-	ItemId      int                  `description:"ID"`
-	ItemName    string               `description:"名称"`
-	ItemType    int                  `description:"类型: 1-目录; 2-文件"`
-	ParentId    int                  `description:"父级目录ID"`
-	ParentName  string               `description:"父级目录文件名"`
-	Size        int64                `description:"大小"`
-	SizeName    string               `description:"目录/文件大小(格式化)"`
-	ResourceUrl string               `description:"文件地址"`
-	ItemIcon    string               `description:"图标"`
-	AdminId     int                  `description:"创建人ID"`
-	AdminName   string               `description:"创建人"`
-	CreateTime  string               `description:"创建时间"`
-	ButtonAuth  *CloudDiskListButton `description:"按钮权限"`
-}
-
-// CloudDiskListButton 云盘列表按钮权限
-type CloudDiskListButton struct {
-	RenameAuth bool `description:"重命名文件夹的权限"`
-	DelAuth    bool `description:"删除文件夹的权限"`
-}
-
-// CloudDiskMenuResourcePath 云盘目录/文件面包屑
-type CloudDiskMenuResourcePath struct {
-	MenuId   int    `description:"目录ID"`
-	MenuName string `description:"目录名称"`
-	ParentId int    `description:"父级目录ID"`
-	Sort     int    `description:"排序"`
-	Selected bool   `description:"是否选中"`
-}
-
-// GetCloudDiskMenuAndResourceList UNION获取云盘列表数据
-func GetCloudDiskMenuAndResourceList(menuCond, resourceCond string, menuPars, resourcePars []interface{}, orderRule string) (items []*CloudDiskListItem, err error) {
-	//o := orm.NewOrm()
-	base := `SELECT menu_id AS item_id, menu_name AS item_name, 1 AS item_type, parent_id, size, "" AS resource_url, "" AS item_icon, admin_id, admin_name, create_time FROM cloud_disk_menu
-			WHERE 1=1 %s
-			UNION
-			SELECT resource_id, CONCAT(resource_name,resource_suffix), 2, menu_id, size, resource_url, resource_icon, admin_id, admin_name, create_time FROM cloud_disk_resource
-			WHERE 1=1 %s %s`
-	order := ` ORDER BY item_type ASC `
-	if orderRule != "" {
-		order = ` ORDER BY ` + orderRule
-	}
-	sql := fmt.Sprintf(base, menuCond, resourceCond, order)
-	pars := append(menuPars, resourcePars...)
-	err = global.DEFAULT_DmSQL.Raw(sql, pars...).Find(&items).Error
-	return
-}
-
-// GetSizeTotalByMenuIds 获取目录所属文件总大小
-func GetSizeTotalByMenuIds(menuIds []int) (sizeTotal int64, err error) {
-	if len(menuIds) == 0 {
-		return
-	}
-	sql := `SELECT SUM(size) FROM cloud_disk_resource WHERE menu_id IN (` + utils.GetOrmInReplace(len(menuIds)) + `)`
-	err = global.DEFAULT_DmSQL.Raw(sql, menuIds).First(&sizeTotal).Error
-	return
-}
-
-// CloudDiskBatchDeleteReq 批量删除请求体
-type CloudDiskBatchDeleteReq struct {
-	MenuId      int    `description:"当前目录ID"`
-	MenuIds     string `description:"目录IDs"`
-	ResourceIds string `description:"文件IDs"`
-}
-
-// BatchDeleteCloudDiskMenuAndResource 批量删除目录及文件
-func BatchDeleteCloudDiskMenuAndResource(menuIds, resourceIds []int) (err error) {
-	menuLens := len(menuIds)
-	resourceLens := len(resourceIds)
-	if menuLens == 0 && resourceLens == 0 {
-		return
-	}
-
-	tx := global.DEFAULT_DmSQL.Begin()
-	defer func() {
-		if err != nil {
-			_ = tx.Rollback()
-		} else {
-			_ = tx.Commit()
-		}
-	}()
-	if menuLens > 0 {
-		sql := `DELETE FROM cloud_disk_menu WHERE menu_id IN (` + utils.GetOrmInReplace(menuLens) + `)`
-		if err = tx.Exec(sql, menuIds).Error; err != nil {
-			return
-		}
-		sql = `DELETE FROM cloud_disk_resource WHERE menu_id IN (` + utils.GetOrmInReplace(menuLens) + `)`
-		if err = tx.Exec(sql, menuIds).Error; err != nil {
-			return
-		}
-	}
-	if resourceLens > 0 {
-		sql := `DELETE FROM cloud_disk_resource WHERE resource_id IN (` + utils.GetOrmInReplace(resourceLens) + `)`
-		if err = tx.Exec(sql, resourceIds).Error; err != nil {
-			return
-		}
-	}
-	return
-}

+ 0 - 28
models/db2.go

@@ -13,7 +13,6 @@ import (
 	"eta_gn/eta_api/models/data_manage/supply_analysis"
 	"eta_gn/eta_api/models/data_stat"
 	"eta_gn/eta_api/models/fe_calendar"
-	"eta_gn/eta_api/models/ppt_english"
 	"eta_gn/eta_api/models/report"
 	"eta_gn/eta_api/models/report_approve"
 	"eta_gn/eta_api/models/sandbox"
@@ -65,15 +64,9 @@ func init() {
 	// 英文报告
 	initEnglishReport()
 
-	// 英文ppt
-	initPptEnglish()
-
 	// 期货数据库
 	initFutureGood()
 
-	// 共享网盘
-	initCloudDisk()
-
 	// 语义分析
 	initSemanticAnalysis()
 
@@ -299,18 +292,6 @@ func initEnglishReport() {
 	)
 }
 
-// initPptEnglish ppt英文
-func initPptEnglish() {
-	orm.RegisterModel(
-		new(ppt_english.PptEnglish),
-		new(ppt_english.PptEnglishPublishRecord),
-		new(ppt_english.PptEnglishSaveLog),
-		new(ppt_english.PptEnglishGroup),
-		new(ppt_english.PptEnglishGroupMapping),
-		new(ppt_english.PptEnglishGrant), //ppt授权操作表
-	)
-}
-
 // initFutureGood 注册期货数据 数据表
 func initFutureGood() {
 	//注册对象
@@ -322,15 +303,6 @@ func initFutureGood() {
 	)
 }
 
-// initCloudDisk 共享云盘
-func initCloudDisk() {
-	//注册对象
-	orm.RegisterModel(
-		new(CloudDiskMenu),     // 云盘目录表
-		new(CloudDiskResource), // 云盘资源表
-	)
-}
-
 // initSemanticAnalysis 语义分析
 func initSemanticAnalysis() {
 	orm.RegisterModel(

+ 0 - 344
models/ppt_english/ppt_english.go

@@ -1,344 +0,0 @@
-package ppt_english
-
-import (
-	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"time"
-
-	"github.com/rdlucklib/rdluck_tools/paging"
-)
-
-type PptEnglish struct {
-	PptId         int       `gorm:"primaryKey;column:ppt_id;type:int(11) unsigned;not null"`
-	TemplateType  int       `gorm:"column:template_type;type:int(9) unsigned;default:1"`                           // 模板类型
-	BackgroundImg string    `gorm:"column:background_img;type:varchar(255);default:''"`                            // 背景图
-	Title         string    `gorm:"index:idx_title;column:title;type:varchar(255);default:''"`                     // 标题
-	ReportType    string    `gorm:"column:report_type;type:varchar(50);default:''"`                                // 报告类型
-	PptDate       string    `gorm:"column:ppt_date;type:varchar(20);default:''"`                                   // 选择日期
-	PptUrl        string    `gorm:"column:ppt_url;type:varchar(255);default:''"`                                   // ppt地址
-	PptxUrl       string    `gorm:"column:pptx_url;type:varchar(255);default:''"`                                  // pptx地址
-	Content       string    `gorm:"column:content;type:mediumtext"`                                                // ppt内容
-	CreateTime    time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP"`                    // 创建时间
-	ModifyTime    time.Time `gorm:"column:modify_time;type:datetime;default:CURRENT_TIMESTAMP"`                    // 修改时间
-	AdminId       int       `gorm:"column:admin_id;type:int(11) unsigned;default:0"`                               // 系统用户id
-	AdminRealName string    `gorm:"index:idx_admin_real_name;column:admin_real_name;type:varchar(100);default:''"` // 系统用户名称
-	PptVersion    uint8     `gorm:"column:ppt_version;type:tinyint(9) unsigned;default:2"`                         // 是否ppt的旧版本;1:旧的,2:新的
-	ReportId      int       `gorm:"column:report_id;type:int(10) unsigned;not null;default:0"`                     // 关联的报告ID
-	ReportCode    string    `gorm:"column:report_code;type:varchar(255);not null;default:''"`                      // 关联的报告code
-	IsShare       int8      `gorm:"column:is_share;type:tinyint(9) unsigned;default:0"`                            // 是否分享,0:不分享,1:分享
-	PublishTime   time.Time `gorm:"column:publish_time;type:datetime"`                                             // 发布时间
-	CoverContent  string    `gorm:"column:cover_content;type:text"`                                                // 封面内容-JSON
-	PptPage       int       `gorm:"column:ppt_page;type:int(10)"`                                                  // PPT总页数
-	TitleSetting  string    `gorm:"column:title_setting;type:varchar(255);default:''"`                             // 标题设置
-}
-
-type PptEnglishItem struct {
-	PptId         int       `gorm:"primaryKey;column:ppt_id;type:int(11) unsigned;not null"`
-	TemplateType  int       `gorm:"column:template_type;type:int(9) unsigned;default:1"`                           // 模板类型
-	BackgroundImg string    `gorm:"column:background_img;type:varchar(255);default:''"`                            // 背景图
-	Title         string    `gorm:"index:idx_title;column:title;type:varchar(255);default:''"`                     // 标题
-	ReportType    string    `gorm:"column:report_type;type:varchar(50);default:''"`                                // 报告类型
-	PptDate       string    `gorm:"column:ppt_date;type:varchar(20);default:''"`                                   // 选择日期
-	PptUrl        string    `gorm:"column:ppt_url;type:varchar(255);default:''"`                                   // ppt地址
-	PptxUrl       string    `gorm:"column:pptx_url;type:varchar(255);default:''"`                                  // pptx地址
-	Content       string    `gorm:"column:content;type:mediumtext"`                                                // ppt内容
-	CreateTime    time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP"`                    // 创建时间
-	ModifyTime    time.Time `gorm:"column:modify_time;type:datetime;default:CURRENT_TIMESTAMP"`                    // 修改时间
-	AdminId       int       `gorm:"column:admin_id;type:int(11) unsigned;default:0"`                               // 系统用户id
-	AdminRealName string    `gorm:"index:idx_admin_real_name;column:admin_real_name;type:varchar(100);default:''"` // 系统用户名称
-	PptVersion    uint8     `gorm:"column:ppt_version;type:tinyint(9) unsigned;default:2"`                         // 是否ppt的旧版本;1:旧的,2:新的
-	ReportId      int       `gorm:"column:report_id;type:int(10) unsigned;not null;default:0"`                     // 关联的报告ID
-	ReportCode    string    `gorm:"column:report_code;type:varchar(255);not null;default:''"`                      // 关联的报告code
-	IsShare       int8      `gorm:"column:is_share;type:tinyint(9) unsigned;default:0"`                            // 是否分享,0:不分享,1:分享
-	PublishTime   time.Time `gorm:"column:publish_time;type:datetime"`                                             // 发布时间
-	CoverContent  string    `gorm:"column:cover_content;type:text"`                                                // 封面内容-JSON
-	PptPage       int       `gorm:"column:ppt_page;type:int(10)"`                                                  // PPT总页数
-	TitleSetting  string    `gorm:"column:title_setting;type:varchar(255);default:''"`                             // 标题设置
-	IsAuth        bool      `gorm:"-" description:"true:有操作权限,false:无操作权限"`
-}
-
-func GetPptEnglishList(condition string, pars []interface{}, startSize, pageSize int) (items []*PptEnglishItem, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 `
-	if condition != "" {
-		sql += condition
-	}
-	//
-	sql += `ORDER BY modify_time DESC LIMIT ?,?`
-	pars = append(pars, startSize)
-	pars = append(pars, pageSize)
-	err = global.DmSQL["rddp"].Raw(sql, pars...).Find(&items).Error
-	return
-}
-
-func GetPptEnglishByCondition(condition string, pars []interface{}) (items []*PptEnglish, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 `
-	if condition != "" {
-		sql += condition
-	}
-	//
-	sql += `ORDER BY modify_time DESC`
-	err = global.DmSQL["rddp"].Raw(sql, pars...).Find(&items).Error
-	return
-}
-
-func GetPptEnglishListCount(condition string, pars []interface{}) (count int, err error) {
-	sql := `SELECT COUNT(1) AS count FROM ppt_english WHERE 1=1 `
-	if condition != "" {
-		sql += condition
-	}
-	err = global.DmSQL["rddp"].Raw(sql, pars...).Scan(&count).Error
-	return
-}
-
-type PptEnglishListResp struct {
-	List   []*PptEnglishItem
-	Paging *paging.PagingItem `description:"分页数据"`
-}
-
-// AddPptEnglish 新增PPT
-func AddPptEnglish(item *PptEnglish) (lastId int64, err error) {
-	err = global.DmSQL["rddp"].Create(item).Error
-	lastId = int64(item.PptId)
-	return
-}
-
-// DeletePptEnglish 删除ppt
-func DeletePptEnglish(pptId int) (err error) {
-	sql := `DELETE FROM ppt_english WHERE ppt_id=? `
-	err = global.DmSQL["rddp"].Exec(sql, pptId).Error
-	return
-}
-
-type AddPptEnglishReq struct {
-	PptId     int64 `description:"ppt_id"`
-	FirstPage struct {
-		Title        string `description:"标题"`
-		ReportType   string `description:"类型"`
-		PptDate      string `description:"日期"`
-		ImgUrl       string `description:"图片"`
-		BackIndex    int    `description:"背景图片下标"`
-		TemplateType int    `description:"模版id"`
-	} `description:"首页"`
-	Content      string `description:"ppt的json数据"`
-	GroupId      int64  `description:"目录id"`
-	CoverContent string `description:"PPT内容-JSON"`
-	TitleSetting string `description:"PPT标题设置"`
-}
-
-type AddPptEnglishResp struct {
-	PptId int64 `description:"PptId"`
-}
-
-type ContentPageItems struct {
-	PptId      int64  `json:"PptId" description:"ppt_id" `
-	PptPagesId int    `json:"PptPagesId" description:"章节id,新增时传0"`
-	Title      string `json:"Title" description:"标题"`
-	ResourceId string `json:"ResourceId" description:"来源id,来自上海策略组提供的图表id"`
-	Timestamp  int    `description:"时间戳"`
-}
-
-type EditPptEnglishReq struct {
-	PptId     int64 `description:"pptId"`
-	FirstPage struct {
-		PptPagesId int    `description:"ppt_page_id"`
-		Title      string `description:"标题"`
-		ReportType string `description:"类型"`
-		PptDate    string `description:"日期"`
-		ImgUrl     string `description:"图片路径"`
-		BackIndex  int    `description:"背景图片下标"`
-	}
-	ContentPage []ContentPageItems
-}
-
-// Update 更新ppt基础信息
-func (item *PptEnglish) Update(cols []string) (err error) {
-	err = global.DmSQL["rddp"].Select(cols).Updates(item).Error
-	return
-}
-
-type DeletePptEnglishReq struct {
-	PptId int `description:"PptId" `
-}
-
-// SavePptEnglishPathReq 保存ppt的下载地址请求
-type SavePptEnglishPathReq struct {
-	PptId   int    `description:"PptId" `
-	PptxUrl string `description:"PptxUrl" `
-}
-
-func GetPptEnglishById(pptId int) (item *PptEnglish, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 AND ppt_id=? `
-	err = global.DmSQL["rddp"].Raw(sql, pptId).First(&item).Error
-	return
-}
-
-func GetPptEnglishByIds(pptIds []int) (list []*PptEnglish, err error) {
-	if len(pptIds) == 0 {
-		return
-	}
-	sql := fmt.Sprintf(`SELECT * FROM ppt_english WHERE ppt_id IN (%s)`, utils.GetOrmInReplace(len(pptIds)))
-	err = global.DmSQL["rddp"].Raw(sql, pptIds).Find(&list).Error
-	return
-}
-
-type PptPages struct {
-	PptPagesId int       `orm:"column(ppt_pages_id);pk" description:"报告章节Id"`
-	PptId      int64     `description:"ppt_id"`
-	Title      string    `description:"标题"`
-	ImgUrl     string    `description:"图片路径"`
-	CreateTime time.Time `description:"创建时间"`
-	ModifyTime time.Time `description:"修改时间"`
-	PageCode   string    `description:"编码"`
-	Width      int       `description:"宽度"`
-	Height     int       `description:"高端"`
-	ResourceId string    `description:"来源id,来自上海策略组提供的图表id"`
-	Timestamp  int       `description:"时间戳"`
-	BackIndex  int       `description:"背景图片下标"`
-}
-
-type PptEnglishDetailResp struct {
-	PptPages []*PptPages `description:"ppt详情数据"`
-	Ppt      *PptEnglish `description:"ppt数据"`
-}
-
-type PptEnglishPublishReq struct {
-	PptId        int `description:"PptId"`
-	ScreenHeight int `description:"屏幕宽高"`
-}
-
-// EditPptEnglishPath 编辑Ppt的下载地址
-func EditPptEnglishPath(pptId int, pptxPath string) (err error) {
-	sql := `UPDATE ppt_english SET pptx_url=?,modify_time=NOW(),publish_time=NOW() WHERE ppt_id=? `
-	err = global.DmSQL["rddp"].Exec(sql, pptxPath, pptId).Error
-	return
-}
-
-type PptEnglishPublishRecord struct {
-	Id         int       `gorm:"primaryKey;column:id;type:int(11);not null"`
-	PptId      int       `gorm:"column:ppt_id;type:int(11)"`                                 // 英文ppt id
-	PptUrl     string    `gorm:"column:ppt_url;type:varchar(255)"`                           // Ppt下载地址
-	CreateTime time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP"` // 创建时间
-}
-
-// AddPptEnglishPublishRecord 添加发布记录,主要是记录每次发布的时候,当前的ppt
-func AddPptEnglishPublishRecord(item *PptEnglishPublishRecord) (lastId int64, err error) {
-	err = global.DmSQL["rddp"].Create(item).Error
-	lastId = int64(item.Id)
-	return
-}
-
-type PptEnglishSaveLog struct {
-	Id            int       `gorm:"primaryKey;column:id;type:int(11);not null"`                   // 主键Id
-	PptId         int       `gorm:"index:idx_ppt_id;column:ppt_id;type:int(11);not null"`         // ppt Id
-	TemplateType  int       `gorm:"column:template_type;type:int(9) unsigned;not null;default:0"` // 模板类型
-	BackgroundImg string    `gorm:"column:background_img;type:varchar(255);not null;default:''"`  // 背景图
-	Title         string    `gorm:"column:title;type:varchar(255);not null;default:''"`           // 标题
-	ReportType    string    `gorm:"column:report_type;type:varchar(50);not null;default:''"`      // 报告类型
-	PptDate       string    `gorm:"column:ppt_date;type:varchar(20);not null;default:''"`         // 选择日期
-	Content       string    `gorm:"column:content;type:mediumtext"`                               // ppt内容
-	AdminId       int       `gorm:"column:admin_id;type:int(9) unsigned;default:0"`               // 操作人id
-	AdminRealName string    `gorm:"column:admin_real_name;type:varchar(64);default:''"`           // 操作人姓名
-	CreateTime    time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP"`   // 创建时间
-	CoverContent  string    `gorm:"column:cover_content;type:text"`                               // 封面内容-JSON
-	TitleSetting  string    `gorm:"column:title_setting;type:varchar(255);default:''"`            // 标题设置
-}
-
-// AddPptEnglishSaveLog 新增PPT日志
-func AddPptEnglishSaveLog(item *PptEnglishSaveLog) (lastId int64, err error) {
-	err = global.DmSQL["rddp"].Create(item).Error
-	lastId = int64(item.Id)
-	return
-}
-
-type PptEnglishConfigResp struct {
-	PptNum   int `description:"ppt数量" json:"ppt_num"`
-	ChartNum int `description:"图片数量" json:"chart_num"`
-}
-
-type PPT2ReportReq struct {
-	PptId            int    `description:"PPT主键"`
-	ClassifyIdSecond int    `description:"报告二级分类ID"`
-	Title            string `description:"标题"`
-}
-
-// AddPptEnglishMulti 批量新增ppt
-func AddPptEnglishMulti(list []*PptEnglish) (err error) {
-	err = global.DmSQL["rddp"].CreateInBatches(list, utils.MultiAddNum).Error
-	return
-}
-
-// GetAllPptTitle 获取当前目录的所有名称
-func GetAllPptTitle() (names []string, err error) {
-	sql := "select title from ppt_english"
-	err = global.DmSQL["rddp"].Raw(sql).Scan(&names).Error
-	return
-}
-
-// PPT2ReportResp PPT转报告响应体
-type PPT2ReportResp struct {
-	ReportId   int    `description:"关联的报告ID" json:"report_id"`
-	ReportCode string `description:"关联的报告编码" json:"report_code"`
-}
-
-// GetPptEnglishByReportId 通过关联的报告ID获取PPT
-func GetPptEnglishByReportId(reportId int) (item *PptEnglish, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 AND report_id=? LIMIT 1`
-	err = global.DmSQL["rddp"].Raw(sql, reportId).First(&item).Error
-	return
-}
-
-// GetSharePptEnglish 获取公开分享的ppt
-func GetSharePptEnglish() (items []*PptEnglish, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 AND is_share = 1 ORDER BY create_time DESC `
-	err = global.DmSQL["rddp"].Raw(sql).Find(&items).Error
-	return
-}
-
-// GetAllPptEnglishList 根据条件获取所有的Ppt
-func GetAllPptEnglishList(condition string, pars []interface{}) (items []*PptEnglishItem, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 `
-	if condition != "" {
-		sql += condition
-	}
-	//
-	sql += `ORDER BY modify_time DESC `
-	err = global.DmSQL["rddp"].Raw(sql, pars).Find(&items).Error
-	return
-}
-
-// GetPPTTitleList 获取PPT标题列表
-func GetPPTTitleList() (list []string, err error) {
-	sql := `SELECT title FROM ppt_english`
-	err = global.DmSQL["rddp"].Raw(sql).Scan(&list).Error
-	return
-}
-
-// EnglishPPT2ReportReq 英文PPT转报告请求体
-type EnglishPPT2ReportReq struct {
-	PptId            int    `description:"PPT主键"`
-	ClassifyIdFirst  int    `description:"一级分类ID"`
-	ClassifyIdSecond int    `description:"二级分类ID"`
-	Title            string `description:"标题"`
-	Abstract         string `description:"摘要"`
-}
-
-func GetPptEnglishByTitleAndId(title string, adminId int) (item *PptEnglish, err error) {
-	sql := `SELECT * FROM ppt_english WHERE 1=1 AND title=? AND admin_id=? `
-	err = global.DmSQL["rddp"].Raw(sql, title, adminId).First(&item).Error
-	return
-}
-
-// PPTEditingCache PPT编辑缓存信息
-type PPTEditingCache struct {
-	IsEditing bool   `description:"是否有人编辑"`
-	AdminId   int    `description:"编辑者ID"`
-	Editor    string `description:"编辑者姓名"`
-	Tips      string `description:"提示信息"`
-}
-
-// EnglishPPTDetailResp 英文PPT详情响应体
-type EnglishPPTDetailResp struct {
-	*PptEnglish
-	Editor PPTEditingCache `description:"编辑人信息"`
-}

+ 0 - 119
models/ppt_english/ppt_english_grant.go

@@ -1,119 +0,0 @@
-package ppt_english
-
-import (
-	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/utils"
-	"time"
-)
-
-type PptEnglishGrant struct {
-	GrantId      int64     `gorm:"primaryKey;column:grant_id;type:int(9) unsigned;not null"`              // 授权id
-	PptId        int64     `gorm:"index:idx_pptid;column:ppt_id;type:int(9) unsigned;not null;default:0"` // ppt_id
-	DepartmentId int64     `gorm:"column:department_id;type:int(10) unsigned;not null;default:0"`         // 授权部门id
-	GrantAdminId int64     `gorm:"column:grant_admin_id;type:int(9) unsigned;default:0"`                  // 授权的用户id
-	CreateTime   time.Time `gorm:"column:create_time;type:timestamp;default:CURRENT_TIMESTAMP"`           // 授权时间
-}
-
-// GetPPtGrantInfo 获取已经有权限的ppt列表
-func GetPPtGrantInfo(pptId int) (list []*PptEnglishGrant, err error) {
-	sql := `SELECT * FROM ppt_english_grant WHERE ppt_id=? `
-	err = global.DmSQL["rddp"].Raw(sql, pptId).Find(&list).Error
-	return
-}
-
-// GrantInfoResp ppt权限配置返回数据
-type GrantInfoResp struct {
-	PptId      int    `description:"PptId" `
-	GrantType  int    `description:"分配类型;1:全部ficc研究员;2:指定成员"`
-	AdminIdStr string `description:"指定成员id,多个成员用英文,隔开"`
-}
-
-// GrantPptReq 分配ppt权限
-type GrantPptReq struct {
-	PptId      int    `description:"PptId" `
-	GrantType  int    `description:"分配类型;1:全部ficc研究员;2:指定成员"`
-	AdminIdStr string `description:"指定成员id,多个成员用英文,隔开"`
-}
-
-// MultiAddPptEnglishGrant 批量添加授权记录
-func MultiAddPptEnglishGrant(pptId int, list []*PptEnglishGrant) (err error) {
-	tx := global.DmSQL["rddp"].Begin()
-	defer func() {
-		if err != nil {
-			_ = tx.Rollback()
-			return
-		}
-		_ = tx.Commit()
-	}()
-	sql := "DELETE from ppt_english_grant where ppt_id=?"
-	err = tx.Exec(sql, pptId).Error
-	if err != nil {
-		return
-	}
-
-	// 新增授权记录
-	if len(list) > 0 {
-		e := tx.CreateInBatches(list, utils.MultiAddNum).Error
-		if e != nil {
-			err = e
-			return
-		}
-	}
-	return
-}
-
-// DeletePptEnglishGrant 移除授权记录
-func DeletePptEnglishGrant(pptId int) (err error) {
-	sql := "DELETE from ppt_english_grant where ppt_id=?"
-	err = global.DmSQL["rddp"].Exec(sql, pptId).Error
-	return
-}
-
-type PptEnglishInfoGrantItem struct {
-	PptId         int       `gorm:"column:ppt_id;type:int(11) unsigned;not null"`
-	TemplateType  int       `gorm:"column:template_type;type:int(9) unsigned;default:1"`        // 模板类型
-	BackgroundImg string    `gorm:"column:background_img;type:varchar(255);default:''"`         // 背景图
-	Title         string    `gorm:"column:title;type:varchar(255);default:''"`                  // 标题
-	ReportType    string    `gorm:"column:report_type;type:varchar(50);default:''"`             // 报告类型
-	PptDate       string    `gorm:"column:ppt_date;type:varchar(20);default:''"`                // 选择日期
-	PptUrl        string    `gorm:"column:ppt_url;type:varchar(255);default:''"`                // ppt地址
-	PptxUrl       string    `gorm:"column:pptx_url;type:varchar(255);default:''"`               // pptx地址
-	Content       string    `gorm:"column:content;type:mediumtext"`                             // ppt内容
-	CreateTime    time.Time `gorm:"column:create_time;type:datetime;default:CURRENT_TIMESTAMP"` // 创建时间
-	ModifyTime    time.Time `gorm:"column:modify_time;type:datetime;default:CURRENT_TIMESTAMP"` // 修改时间
-	AdminId       int       `gorm:"column:admin_id;type:int(11) unsigned;default:0"`            // 系统用户id
-	AdminRealName string    `gorm:"column:admin_real_name;type:varchar(100);default:''"`        // 系统用户名称
-	PptVersion    int8      `gorm:"column:ppt_version;type:tinyint(9) unsigned;default:2"`      // 是否ppt的旧版本;1:旧的,2:新的
-	ReportId      int       `gorm:"column:report_id;type:int(10) unsigned;not null;default:0"`  // 关联的报告ID
-	ReportCode    string    `gorm:"column:report_code;type:varchar(255);not null;default:''"`   // 关联的报告code
-	IsShare       int8      `gorm:"column:is_share;type:tinyint(9) unsigned;default:0"`         // 是否分享,0:不分享,1:分享
-	PublishTime   time.Time `gorm:"column:publish_time;type:datetime"`                          // 发布时间
-	PptPage       int       `gorm:"column:ppt_page;type:int(10)"`                               // PPT总页数
-}
-
-// GetAllGrantList 获取已经有权限的ppt列表
-func GetAllGrantList(sysUserId int) (list []*PptEnglishInfoGrantItem, err error) {
-	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
- WHERE a.admin_id=? OR b.department_id=1 OR b.grant_admin_id=? GROUP BY a.ppt_id`
-	err = global.DmSQL["rddp"].Raw(sql, sysUserId, sysUserId).Find(&list).Error
-	return
-}
-
-// GetGrantList 获取我共享出去/别人共享给我的的ppt列表
-func GetGrantList(condition string, pars []interface{}) (list []*PptEnglishInfoGrantItem, err error) {
-	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
- WHERE 1=1 `
-	sql += condition
-
-	sql += ` GROUP BY a.ppt_id ORDER BY a.modify_time DESC `
-	err = global.DmSQL["rddp"].Raw(sql, pars).Find(&list).Error
-	return
-}
-
-// GetPPtGrantConf 根据ppt_id和操作人获取ppt权限配置
-func GetPPtGrantConf(pptId, sysUserId int) (item *PptEnglishInfoGrantItem, err error) {
-	sql := `SELECT a.* FROM ppt_english a JOIN ppt_english_grant b on a.ppt_id=b.ppt_id 
- WHERE a.ppt_id=?  AND (b.department_id=1 OR b.grant_admin_id=?) GROUP BY a.ppt_id`
-	err = global.DmSQL["rddp"].Raw(sql, pptId, sysUserId).First(&item).Error
-	return
-}

+ 0 - 255
models/ppt_english/ppt_english_group.go

@@ -1,255 +0,0 @@
-package ppt_english
-
-import (
-	"eta_gn/eta_api/global"
-	"time"
-)
-
-type PptEnglishGroup struct {
-	GroupId    int64     `gorm:"primaryKey;column:group_id;type:int(11) unsigned;not null"`           // ppt目录Id
-	GroupName  string    `gorm:"column:group_name;type:varchar(100);not null"`                        // 目录名称
-	AdminId    int       `gorm:"column:admin_id;type:int(11);not null"`                               // 目录创建者账号ID
-	IsShare    int8      `gorm:"column:is_share;type:tinyint(2);not null;default:0"`                  // 是否共享,0私有,1共享
-	GroupSort  int64     `gorm:"column:group_sort;type:int(11);not null"`                             // 目录排序标识
-	CreateTime time.Time `gorm:"column:create_time;type:datetime;not null;default:CURRENT_TIMESTAMP"` // 创建时间
-	ModifyTime time.Time `gorm:"column:modify_time;type:datetime;not null;default:CURRENT_TIMESTAMP"` // 修改时间
-	ShareTime  time.Time `gorm:"column:share_time;type:datetime"`                                     // 共享时间
-	IsShareAdd int8      `gorm:"column:is_share_add;type:tinyint(2);not null;default:0"`              // 是否是通过单个ppt共享生成的目录,0不是,1-是
-}
-
-// GetPrivatePptGroupsByAdminId 获取用户自己的私有目录
-func GetPrivatePptGroupsByAdminId(adminId int) (list []*PptEnglishGroup, err error) {
-	sql := "select * from ppt_english_group where admin_id=? AND is_share_add=0 order by group_sort asc, group_id asc"
-	err = global.DmSQL["rddp"].Raw(sql, adminId).Find(&list).Error
-	return
-}
-
-// GetPptGroupByName 根据目录名称查询
-func GetPptGroupByName(groupName string, adminId int) (item *PptEnglishGroup, err error) {
-	sql := "select * from ppt_english_group where admin_id=? and group_name=?"
-	err = global.DmSQL["rddp"].Raw(sql, adminId, groupName).First(&item).Error
-	return
-}
-
-// GetPptGroupByGroupIdAdminId 根据目录Id查询
-func GetPptGroupByGroupIdAdminId(groupId int64, adminId int) (item *PptEnglishGroup, err error) {
-	sql := "select * from ppt_english_group where admin_id=? and group_id=?"
-	err = global.DmSQL["rddp"].Raw(sql, adminId, groupId).First(&item).Error
-	return
-}
-
-// GetPptGroupByGroupId 根据目录Id查询
-func GetPptGroupByGroupId(groupId int64) (item *PptEnglishGroup, err error) {
-	sql := "select * from ppt_english_group where group_id=?"
-	err = global.DmSQL["rddp"].Raw(sql, groupId).First(&item).Error
-	return
-}
-
-// AddPptGroup 新增目录
-func AddPptGroup(item *PptEnglishGroup) (lastId int64, err error) {
-	err = global.DmSQL["rddp"].Create(item).Error
-	lastId = int64(item.GroupId)
-	return
-}
-
-// DeletePptGroup 删除单个ppt目录
-func DeletePptGroup(groupId int64) (err error) {
-	sql := `DELETE FROM ppt_english_group WHERE group_id=? `
-	err = global.DmSQL["rddp"].Exec(sql, groupId).Error
-	return
-}
-
-// DeletePptGroupByGroupIds 删除单个ppt目录
-func DeletePptGroupByGroupIds(groupIds string) (err error) {
-	sql := `DELETE FROM ppt_english_group WHERE group_id in  ` + groupIds
-	err = global.DmSQL["rddp"].Exec(sql).Error
-	return
-}
-
-// Update 更新ppt目录基础信息
-func (item *PptEnglishGroup) Update(cols []string) (err error) {
-	err = global.DmSQL["rddp"].Select(cols).Updates(item).Error
-	return
-}
-
-// MoveUpGroupBySort 往上移动目录
-func MoveUpGroupBySort(nextSort, currentSort int64) (err error) {
-	sql := `update ppt_english_group set group_sort = group_sort + 1 where group_sort >= ? and group_sort< ?`
-	err = global.DmSQL["rddp"].Exec(sql, nextSort, currentSort).Error
-	return
-}
-
-// MoveDownGroupBySort 往下移动目录
-func MoveDownGroupBySort(prevSort, currentSort int64) (err error) {
-	sql := `update ppt_english_group set group_sort = group_sort - 1 where group_sort <= ? and group_sort> ? `
-	err = global.DmSQL["rddp"].Exec(sql, prevSort, currentSort).Error
-	return
-}
-
-// GetPptGroupNamesByAdminId 获取当前目录的所有名称
-func GetPptGroupNamesByAdminId(adminId int) (names []string, err error) {
-	sql := "select group_name from ppt_english_group  where admin_id = ?"
-	err = global.DmSQL["rddp"].Raw(sql, adminId).Scan(&names).Error
-	return
-}
-
-// GetPptGroupIdAndGroupNameByAdminId 查找分组名称和标识
-func GetPptGroupIdAndGroupNameByAdminId(adminId int) (list []*RespPptGroupName, err error) {
-	sql := "select group_id, group_name from ppt_english_group where admin_id = ? and is_share_add != 1 order by group_sort asc, group_id asc"
-	err = global.DmSQL["rddp"].Raw(sql, adminId).Find(&list).Error
-	return
-}
-
-type ReqAddPptGroup struct {
-	GroupName string `description:"目录名称"`
-}
-
-type RespAddPptGroup struct {
-	GroupId int64 `description:"目录id"`
-}
-
-type ReqPptGroup struct {
-	GroupId int64 `description:"目录id"`
-}
-
-type ReqRenamePptGroup struct {
-	GroupId   int64  `description:"目录id"`
-	GroupName string `description:"目录名称"`
-}
-
-type RespPptGroupShare struct {
-	GroupId int64 `description:"目录id"`
-	IsShare int8  `description:"是否共享,0私有,1共享"`
-}
-
-type RespGroupList struct {
-	PublicList  []*RespGroupListItem
-	PrivateList []*RespGroupListItem
-	GrantList   []RespGroupListItem
-}
-
-type RespGroupListItem struct {
-	GroupId   int64  `description:"目录id"`
-	GroupName string `description:"目录名称"`
-	AdminId   int    `description:"目录创建者账号ID"`
-	IsShare   int8   `description:"是否共享,0私有,1共享"`
-	OnlyOld   bool   `description:"是否只包含ppt旧版本的目录,只包含旧版的ppt:true,否则 false"`
-	PptList   []*RespGroupPptNameListItem
-}
-
-type RespGroupPptNameListItem struct {
-	GroupPptId    int64  `description:"目录和ppt绑定序号"`
-	PptId         int64  `description:"ppt ID"`
-	Title         string `description:"标题"`
-	AdminId       int    `description:"移动ppt到该目录的系统用户id"`
-	AdminRealName string `description:"系统用户名称"`
-	PptVersion    int8   `description:"是否ppt的旧版本;1:旧的,2:新的"`
-	IsSingleShare int8   `description:"是否是单个共享ppt,0未单个共享,1共享"`
-	PptxUrl       string `description:"pptx下载地址"`
-	ReportId      int    `description:"关联的报告ID"`
-	ReportCode    string `description:"关联的报告code"`
-	PptCreateTime string `description:"ppt创建时间"`
-	PptModifyTime string `description:"ppt修改时间"`
-	PublishTime   string `description:"发布时间"`
-	PptPage       int    `description:"PPT总页数"`
-	IsReceived    int8   `description:"是否收到的共享,0:不是,1:是"`
-	IsGrant       int8   `description:"是否分配了权限,0:不是,1:是"`
-	TitleSetting  string `description:"PPT标题设置"`
-}
-
-type RespGroupPptListItem struct {
-	GroupPptId    int64           `description:"目录和ppt绑定序号"`
-	PptId         int64           `description:"ppt ID"`
-	TemplateType  int             `description:"模版类型"`
-	BackgroundImg string          `description:"背景图片"`
-	Title         string          `description:"标题"`
-	PptCreateTime string          `description:"ppt创建时间"`
-	PptModifyTime string          `description:"ppt修改时间"`
-	AdminId       int             `description:"移动ppt到该目录的系统用户id"`
-	AdminRealName string          `description:"系统用户名称"`
-	PptVersion    int8            `description:"是否ppt的旧版本;1:旧的,2:新的"`
-	IsSingleShare int8            `description:"是否是单个共享ppt,0未单个共享,1共享"`
-	PptxUrl       string          `description:"pptx下载地址"`
-	PptPage       int             `description:"PPT总页数"`
-	ReportId      int             `description:"关联的报告ID"`
-	ReportCode    string          `description:"关联的报告code"`
-	PublishTime   string          `description:"发布时间"`
-	Editor        PPTEditingCache `description:"编辑人信息"`
-}
-
-func (p RespGroupPptList) Len() int {
-	return len(p.List)
-}
-
-func (p RespGroupPptList) Less(i, j int) bool {
-	if p.List[i].PptCreateTime < p.List[j].PptCreateTime {
-		return false
-	}
-	return true
-}
-
-func (p RespGroupPptList) Swap(i, j int) {
-	p.List[i], p.List[j] = p.List[j], p.List[i]
-}
-
-type ReqPptShare struct {
-	GroupPptId int64 `description:"目录和ppt绑定序号"`
-}
-
-type RespPptShare struct {
-	GroupPptId    int64 `description:"目录和ppt绑定自增序号"`
-	IsSingleShare int8  `description:"是否是单个共享ppt,0未单个共享,1共享"`
-}
-
-type RespGroupPptList struct {
-	List  []*RespGroupPptListItem
-	Total int `description:"ppt总数"`
-}
-
-type ReqMoveGroupPpt struct {
-	GroupId        int64 `description:"目标目录id"`
-	GroupPptId     int64 `description:"当前被移动的目录里的ppt绑定序号"`
-	PrevGroupPptId int64 `description:"上一个目录里的ppt绑定序号,ppt最终在目录中置顶,则传0值"`
-	NextGroupPptId int64 `description:"下一个目录里的ppt绑定序号,ppt最终在目录末尾,则传0值"`
-}
-
-type ReqMoveGroup struct {
-	GroupId     int64 `description:"目标目录id"`
-	PrevGroupId int64 `description:"上一个目录Id,置顶,则传0值"`
-	NextGroupId int64 `description:"下一个目录Id,放到末尾,则传0值"`
-}
-
-type ReqCopyPpt struct {
-	GroupId int64 `description:"目录id"`
-	PptId   int   `description:"PptId" `
-}
-
-type RespPptGroupNameList struct {
-	List []*RespPptGroupName
-}
-
-type RespPptGroupName struct {
-	GroupId   int64  `description:"目录id"`
-	GroupName string `description:"目录名称"`
-}
-
-type RespSearchGroupPptList struct {
-	List []*RespSearchGroupPptListItem
-}
-
-type RespSearchGroupPptListItem struct {
-	GroupPptId int64  `description:"目录和ppt绑定序号"`
-	PptId      int64  `description:"ppt ID"`
-	Title      string `description:"标题"`
-}
-
-// ReqPptShareEnglish 共享ppt请求参数
-type ReqPptShareEnglish struct {
-	PptId int `description:"pptId"`
-}
-
-// RespPptShareEnglish  共享ppt返回参数
-type RespPptShareEnglish struct {
-	PptId   int  `description:"目录和ppt绑定自增序号"`
-	IsShare int8 `description:"是否是单个共享ppt,0未单个共享,1共享"`
-}

+ 0 - 150
models/ppt_english/ppt_english_group_mapping.go

@@ -1,150 +0,0 @@
-package ppt_english
-
-import (
-	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"time"
-)
-
-type PptEnglishGroupMapping struct {
-	GroupPptId      int64     `gorm:"primaryKey;column:group_ppt_id;type:int(11) unsigned;not null"`       // 自增序号
-	GroupId         int64     `gorm:"column:group_id;type:int(11) unsigned;not null"`                      // ppt目录Id
-	PptSort         int64     `gorm:"column:ppt_sort;type:int(11);not null"`                               // Ppt的排序
-	PptId           int64     `gorm:"column:ppt_id;type:int(11) unsigned;not null"`                        // ppt Id
-	CreateTime      time.Time `gorm:"column:create_time;type:datetime;not null;default:CURRENT_TIMESTAMP"` // 创建时间
-	ModifyTime      time.Time `gorm:"column:modify_time;type:datetime;not null;default:CURRENT_TIMESTAMP"` // 修改时间
-	AdminId         int       `gorm:"column:admin_id;type:int(11) unsigned;not null;default:0"`            // 移动ppt到该目录的系统用户id
-	AdminRealName   string    `gorm:"column:admin_real_name;type:varchar(100);default:''"`                 // 系统用户名称
-	ChildGroupPptId int64     `gorm:"column:child_group_ppt_id;type:int(11);not null;default:0"`           // 设置共享后的新映射ID
-	IsMoved         bool      `gorm:"column:is_moved;type:tinyint(1)"`                                     // 1表示人为移动过
-}
-
-// AddPptGroupMapping 新增目录和ppt的映射关系
-func AddPptGroupMapping(item *PptEnglishGroupMapping) (lastId int64, err error) {
-	err = global.DmSQL["rddp"].Create(item).Error
-	lastId = int64(item.GroupPptId)
-	return
-}
-
-// GetPptMappingCountByGroupId 查询目录下,ppt的个数
-func GetPptMappingCountByGroupId(groupId int64) (total int64, err error) {
-	sql := `select count(*) from ppt_english_group_mapping where group_id=?`
-	err = global.DmSQL["rddp"].Raw(sql, groupId).Scan(&total).Error
-	return
-}
-
-// GetPptMappingListByGroupId 查询目录下,ppt列表
-func GetPptMappingListByGroupId(groupId int64) (list []*PptEnglishGroupMapping, err error) {
-	sql := `select group_ppt_id, group_id, ppt_id, ppt_sort, admin_id, admin_real_name, create_time from ppt_english_group_mapping where group_id=? order by ppt_sort asc, group_ppt_id asc `
-	err = global.DmSQL["rddp"].Raw(sql, groupId).Find(&list).Error
-	return
-}
-
-// GetPptMappingListByGroupIds 根据分组ID查找
-func GetPptMappingListByGroupIds(groupIds []int64) (list []*PptEnglishGroupMapping, err error) {
-	if len(groupIds) == 0 {
-		return
-	}
-	sql := fmt.Sprintf(`SELECT * FROM ppt_english_group_mapping WHERE group_id IN (%s) ORDER BY ppt_sort ASC, group_ppt_id DESC`, utils.GetOrmInReplace(len(groupIds)))
-	err = global.DmSQL["rddp"].Raw(sql, groupIds).Find(&list).Error
-	return
-}
-
-// GetPptMappingByPptId 查询目录下, pptId对应的目录映射关系
-func GetPptMappingByPptId(pptId int64) (item *PptEnglishGroupMapping, err error) {
-	sql := ` select * from ppt_english_group_mapping where ppt_id=? `
-	err = global.DmSQL["rddp"].Raw(sql, pptId).First(&item).Error
-	return
-}
-
-// GetPptMappingListByGroupIdDesc 查询目录下,ppt列表, 降序排列
-func GetPptMappingListByGroupIdDesc(groupId int64) (list []*PptEnglishGroupMapping, err error) {
-	sql := `select group_ppt_id, group_id, ppt_id, ppt_sort, admin_id, admin_real_name, create_time from ppt_english_group_mapping where group_id=? order by ppt_sort desc, group_ppt_id desc `
-	err = global.DmSQL["rddp"].Raw(sql, groupId).Find(&list).Error
-	return
-}
-
-// GetPptMappingByGroupPptId 查询根据映射ID,查询单个映射关系
-func GetPptMappingByGroupPptId(groupPptId int64, adminId int) (item *PptEnglishGroupMapping, err error) {
-	sql := `select * from ppt_english_group_mapping where group_ppt_id=? and admin_id=?`
-	err = global.DmSQL["rddp"].Raw(sql, groupPptId, adminId).First(&item).Error
-	return
-}
-
-// GetPptMappingCountByGroupPptId 查询根据映射ID,查询单个映射关系数量
-func GetPptMappingCountByGroupPptId(groupPptId int64, adminId int) (count int, err error) {
-	sql := `select COUNT(*) AS count from ppt_english_group_mapping where group_ppt_id=? and admin_id=?`
-	err = global.DmSQL["rddp"].Raw(sql, groupPptId, adminId).Scan(&count).Error
-	return
-}
-
-// Update 更新ppt目录映射的基本信息
-func (item *PptEnglishGroupMapping) Update(cols []string) (err error) {
-	err = global.DmSQL["rddp"].Select(cols).Updates(item).Error
-	return
-}
-
-// AddPptGroupMappingMulti 批量新增ppt和目录的映射关系
-func AddPptGroupMappingMulti(list []*PptEnglishGroupMapping) (err error) {
-	err = global.DmSQL["rddp"].CreateInBatches(list, utils.MultiAddNum).Error
-	return
-}
-
-// UpdatePptGroupMappingSortMulti 批量更新初始排序标识
-func UpdatePptGroupMappingSortMulti(groupPptIds []int64) (err error) {
-	sql := fmt.Sprintf(`UPDATE ppt_english_group_mapping SET ppt_sort = group_ppt_id WHERE group_ppt_id = ?`)
-	for _, v := range groupPptIds {
-		e := global.DmSQL["rddp"].Exec(sql, v).Error
-		if e != nil {
-			err = fmt.Errorf("remove exec err: %v", e)
-			return
-		}
-	}
-	return
-}
-
-// DeletePptGroupMapping 删除ppt目录
-func DeletePptGroupMapping(groupId int64, adminId int) (err error) {
-	sql := `DELETE FROM ppt_english_group_mapping WHERE group_ppt_id=? and admin_id=? `
-	err = global.DmSQL["rddp"].Exec(sql, groupId, adminId).Error
-	return
-}
-
-// DeletePptGroupMappingByPptId 删除ppt目录
-func DeletePptGroupMappingByPptId(pptId int) (err error) {
-	sql := `DELETE FROM ppt_english_group_mapping WHERE ppt_id=?`
-	err = global.DmSQL["rddp"].Exec(sql, pptId).Error
-	return
-}
-
-// MoveUpGroupPptBySort 往上移动ppt
-func MoveUpGroupPptBySort(groupId, nextSort, currentSort int64) (err error) {
-	sql := `update ppt_english_group_mapping set ppt_sort = ppt_sort + 1 where group_id=? and ppt_sort >= ? and ppt_sort< ?`
-	err = global.DmSQL["rddp"].Exec(sql, groupId, nextSort, currentSort).Error
-	return
-}
-
-// MoveDownGroupPptBySort 往下移动ppt
-func MoveDownGroupPptBySort(groupId, prevSort, currentSort int64) (err error) {
-	sql := `update ppt_english_group_mapping set ppt_sort = ppt_sort - 1 where group_id=? and ppt_sort <= ? and ppt_sort> ? `
-	err = global.DmSQL["rddp"].Exec(sql, groupId, prevSort, currentSort).Error
-	return
-}
-
-// GetGroupPptByPptId 根据pptID 查找各个目录下的ppt
-func GetGroupPptByPptId(pptId int) (list []*PptEnglishGroupMapping, err error) {
-	sql := `select * from ppt_english_group_mapping where ppt_id=?`
-	err = global.DmSQL["rddp"].Raw(sql, pptId).Find(&list).Error
-	return
-}
-
-// GetPublicGroupPptByPptIds 根据pptid查询公共目录下的ppt
-func GetPublicGroupPptByPptIds(pptIds []string) (list []*PptEnglishGroupMapping, err error) {
-	if len(pptIds) == 0 {
-		return
-	}
-	sql := fmt.Sprintf(`SELECT p.* FROM ppt_english_group AS g INNER JOIN ppt_english_group_mapping AS p ON g.group_id = p.group_id WHERE g.is_share = 1 AND p.ppt_id IN (%s) ORDER BY g.share_time ASC, p.ppt_sort ASC`, utils.GetOrmInReplace(len(pptIds)))
-	err = global.DmSQL["rddp"].Raw(sql, pptIds).Find(&list).Error
-	return
-}

+ 9 - 2
models/ppt_v2.go

@@ -2,7 +2,6 @@ package models
 
 import (
 	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/models/ppt_english"
 	"eta_gn/eta_api/utils"
 	"time"
 
@@ -290,5 +289,13 @@ type PPTEditingReq struct {
 // PPTDetailResp PPT详情响应体
 type PPTDetailResp struct {
 	*PptV2
-	Editor ppt_english.PPTEditingCache `description:"编辑人信息"`
+	Editor PPTEditingCache `description:"编辑人信息"`
+}
+
+// PPTEditingCache PPT编辑缓存信息
+type PPTEditingCache struct {
+	IsEditing bool   `description:"是否有人编辑"`
+	AdminId   int    `description:"编辑者ID"`
+	Editor    string `description:"编辑者姓名"`
+	Tips      string `description:"提示信息"`
 }

+ 17 - 18
models/ppt_v2_group.go

@@ -2,7 +2,6 @@ package models
 
 import (
 	"eta_gn/eta_api/global"
-	"eta_gn/eta_api/models/ppt_english"
 	"eta_gn/eta_api/utils"
 	"time"
 )
@@ -194,23 +193,23 @@ type RespGroupPptNameListItem struct {
 }
 
 type RespGroupPptListItem struct {
-	GroupPptId    int64                       `description:"目录和ppt绑定序号"`
-	PptId         int64                       `description:"ppt ID"`
-	TemplateType  int                         `description:"模版类型"`
-	BackgroundImg string                      `description:"背景图片"`
-	Title         string                      `description:"标题"`
-	PptCreateTime string                      `description:"ppt创建时间"`
-	PptModifyTime string                      `description:"ppt修改时间"`
-	AdminId       int                         `description:"移动ppt到该目录的系统用户id"`
-	AdminRealName string                      `description:"系统用户名称"`
-	PptVersion    int8                        `description:"是否ppt的旧版本;1:旧的,2:新的"`
-	IsSingleShare int8                        `description:"是否是单个共享ppt,0未单个共享,1共享"`
-	PptxUrl       string                      `description:"pptx下载地址"`
-	PptPage       int                         `description:"PPT总页数"`
-	ReportId      int                         `description:"关联的报告ID"`
-	ReportCode    string                      `description:"关联的报告code"`
-	PublishTime   string                      `description:"发布时间"`
-	Editor        ppt_english.PPTEditingCache `description:"编辑人信息"`
+	GroupPptId    int64           `description:"目录和ppt绑定序号"`
+	PptId         int64           `description:"ppt ID"`
+	TemplateType  int             `description:"模版类型"`
+	BackgroundImg string          `description:"背景图片"`
+	Title         string          `description:"标题"`
+	PptCreateTime string          `description:"ppt创建时间"`
+	PptModifyTime string          `description:"ppt修改时间"`
+	AdminId       int             `description:"移动ppt到该目录的系统用户id"`
+	AdminRealName string          `description:"系统用户名称"`
+	PptVersion    int8            `description:"是否ppt的旧版本;1:旧的,2:新的"`
+	IsSingleShare int8            `description:"是否是单个共享ppt,0未单个共享,1共享"`
+	PptxUrl       string          `description:"pptx下载地址"`
+	PptPage       int             `description:"PPT总页数"`
+	ReportId      int             `description:"关联的报告ID"`
+	ReportCode    string          `description:"关联的报告code"`
+	PublishTime   string          `description:"发布时间"`
+	Editor        PPTEditingCache `description:"编辑人信息"`
 }
 
 func (p RespGroupPptList) Len() int {

+ 0 - 15
models/roadshow/calendar.go

@@ -1,15 +0,0 @@
-package roadshow
-
-type Researcher struct {
-	AdminId      int    `description:"研究员id"`
-	RealName     string `description:"研究员名称"`
-	GroupId      int    `description:"分组id"`
-	GroupName    string `description:"分组名称"`
-	RoleTypeCode string `description:"角色编码"`
-}
-
-type ResearcherGroup struct {
-	GroupId        int    `description:"分组id"`
-	GroupName      string `description:"分组名称"`
-	ResearcherList []*Researcher
-}

+ 0 - 414
routers/commentsRouter.go

@@ -8953,114 +8953,6 @@ func init() {
 			Filters:          nil,
 			Params:           nil})
 
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "BatchDelete",
-			Router:           `/batch_delete`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "List",
-			Router:           `/list`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuCreate",
-			Router:           `/menu/create`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuDelete",
-			Router:           `/menu/delete`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuDownload",
-			Router:           `/menu/download`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuRename",
-			Router:           `/menu/rename`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuResources",
-			Router:           `/menu/resources`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "MenuTree",
-			Router:           `/menu/tree`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "CheckResourceRepeat",
-			Router:           `/resource/check_repeat`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "ResourceDelete",
-			Router:           `/resource/delete`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "ResourceRename",
-			Router:           `/resource/rename`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CloudDiskController"],
-		beego.ControllerComments{
-			Method:           "ResourceUpload",
-			Router:           `/resource/upload`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
 	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CompanyPermissionController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:CompanyPermissionController"],
 		beego.ControllerComments{
 			Method:           "List",
@@ -9151,294 +9043,6 @@ func init() {
 			Filters:          nil,
 			Params:           nil})
 
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishCommonController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishCommonController"],
-		beego.ControllerComments{
-			Method:           "DownloadPptx",
-			Router:           `/downloadpptx`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "AddPpt",
-			Router:           `/add`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "GetConfig",
-			Router:           `/config`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "DeletePpt",
-			Router:           `/delete`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "DetailPpt",
-			Router:           `/detail`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "EditPpt",
-			Router:           `/edit`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "Editing",
-			Router:           `/editing`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "Grant",
-			Router:           `/grant`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "CancelGrant",
-			Router:           `/grant/cancel`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "GrantInfo",
-			Router:           `/grant/info`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "ListPpt",
-			Router:           `/list`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "PptUpload",
-			Router:           `/pptUpload`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "Publish",
-			Router:           `/publish`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "SaveLog",
-			Router:           `/saveLog`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "TitleCheck",
-			Router:           `/titleCheck`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishController"],
-		beego.ControllerComments{
-			Method:           "ToReport",
-			Router:           `/toReport`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "CopyPpt",
-			Router:           `/copy`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "GrantPptList",
-			Router:           `/grant/ppt/list`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "AddGroup",
-			Router:           `/group/add`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "CopyGroup",
-			Router:           `/group/copy`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "DeleteGroup",
-			Router:           `/group/delete`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "MoveGroup",
-			Router:           `/group/move`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "GroupNameList",
-			Router:           `/group/name`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "GroupPptList",
-			Router:           `/group/ppt/list`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "SearchGroupPptList",
-			Router:           `/group/ppt/search`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "RenameGroup",
-			Router:           `/group/rename`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "ShareGroup",
-			Router:           `/group/share`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "GroupList",
-			Router:           `/groups`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "MoveGroupPpt",
-			Router:           `/move`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "ListSearch",
-			Router:           `/ppt/search`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "SharePpt",
-			Router:           `/share`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptEnglishGroupController"],
-		beego.ControllerComments{
-			Method:           "SharePptList",
-			Router:           `/share/ppt/list`,
-			AllowHTTPMethods: []string{"get"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
 	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2CommonController"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2CommonController"],
 		beego.ControllerComments{
 			Method:           "DownloadPptx",
@@ -9457,15 +9061,6 @@ func init() {
 			Filters:          nil,
 			Params:           nil})
 
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"],
-		beego.ControllerComments{
-			Method:           "BatchToEn",
-			Router:           `/batchToEn`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
 	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"],
 		beego.ControllerComments{
 			Method:           "GetConfig",
@@ -9583,15 +9178,6 @@ func init() {
 			Filters:          nil,
 			Params:           nil})
 
-	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"],
-		beego.ControllerComments{
-			Method:           "ToEn",
-			Router:           `/toEn`,
-			AllowHTTPMethods: []string{"post"},
-			MethodParams:     param.Make(),
-			Filters:          nil,
-			Params:           nil})
-
 	beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"] = append(beego.GlobalControllerRouter["eta_gn/eta_api/controllers:PptV2Controller"],
 		beego.ControllerComments{
 			Method:           "ToReport",

+ 0 - 14
routers/router.go

@@ -96,15 +96,6 @@ func init() {
 				&controllers.PptV2CommonController{},
 			),
 		),
-		web.NSNamespace("/ppt_english",
-			web.NSInclude(
-				&controllers.PptEnglishController{},
-				&controllers.PptEnglishGroupController{},
-			),
-			web.NSInclude(
-				&controllers.PptEnglishCommonController{},
-			),
-		),
 		web.NSNamespace("/entry",
 			web.NSInclude(
 				&controllers.TargetController{},
@@ -253,11 +244,6 @@ func init() {
 				&line_feature.LineFeaturesChartInfoController{},
 			),
 		),
-		web.NSNamespace("/cloud_disk",
-			web.NSInclude(
-				&controllers.CloudDiskController{},
-			),
-		),
 		web.NSNamespace("/semantic_analysis",
 			web.NSInclude(
 				&semantic_analysis.SaLabelController{},

+ 0 - 265
services/cloud_disk.go

@@ -1,265 +0,0 @@
-package services
-
-import (
-	"eta_gn/eta_api/models"
-	"eta_gn/eta_api/models/company"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"sort"
-	"strings"
-	"time"
-)
-
-// CheckCloudDiskManagerAuth 校验云盘管理员权限
-func CheckCloudDiskManagerAuth(roleCode string) (ok bool, err error) {
-	confKey := "cloud_disk_manager_role"
-	conf, e := company.GetConfigDetailByCode(confKey)
-	if e != nil {
-		err = fmt.Errorf("获取管理员权限配置失败, Err: %s", e.Error())
-		return
-	}
-	if conf.ConfigValue == "" {
-		err = fmt.Errorf("管理员权限配置信息有误")
-		return
-	}
-	authArr := strings.Split(conf.ConfigValue, ",")
-	if utils.InArrayByStr(authArr, roleCode) {
-		ok = true
-	}
-	return
-}
-
-// GetCloudDiskMenuIdsByParentId 云盘目录-通过父级ID获取所有子ID
-func GetCloudDiskMenuIdsByParentId(menuId int) (menuIds []int, err error) {
-	menuOB := new(models.CloudDiskMenu)
-	menuCond := ``
-	menuPars := make([]interface{}, 0)
-	menuFields := []string{"menu_id", "parent_id"}
-	menus, e := menuOB.GetItemsByCondition(menuCond, menuPars, menuFields, "")
-	if e != nil {
-		err = fmt.Errorf("获取目录列表失败, Err: %s", e.Error())
-		return
-	}
-	// 若父级ID为0, 取全部
-	if menuId == 0 {
-		for i := range menus {
-			menuIds = append(menuIds, menus[i].MenuId)
-		}
-		return
-	}
-	// 父级ID大于0
-	menuIds = loadChildrenIds(menuId, menus)
-	return
-}
-
-// loadChildrenIds 递归遍历出子分类ID
-func loadChildrenIds(parentId int, menus []*models.CloudDiskMenu) []int {
-	menuIds := make([]int, 0)
-	for i := range menus {
-		if parentId == menus[i].ParentId {
-			childIds := loadChildrenIds(menus[i].MenuId, menus)
-			menuIds = append(menuIds, menus[i].MenuId)
-			menuIds = append(menuIds, childIds...)
-		}
-	}
-	return menuIds
-}
-
-// GetCloudDiskMenuTree 云盘-获取目录分类树
-func GetCloudDiskMenuTree() (list []*models.CloudDiskMenuTree, err error) {
-	menuOB := new(models.CloudDiskMenu)
-	menuCond := ``
-	menuPars := make([]interface{}, 0)
-	menus, e := menuOB.GetItemsByCondition(menuCond, menuPars, []string{}, "create_time DESC")
-	if e != nil {
-		err = fmt.Errorf("获取目录列表失败, Err: %s", e.Error())
-		return
-	}
-
-	list = make([]*models.CloudDiskMenuTree, 0)
-	for i := range menus {
-		if menus[i].ParentId == 0 {
-			v := new(models.CloudDiskMenuTree)
-			v.CloudDiskMenu = menus[i]
-			v.Children = loadMenuTree(menus[i].MenuId, menus, v)
-			list = append(list, v)
-		}
-	}
-	return
-}
-
-// loadMenuTree 递归加载分类树
-func loadMenuTree(parentId int, menus []*models.CloudDiskMenu, parentItem *models.CloudDiskMenuTree) (children []*models.CloudDiskMenuTree) {
-	children = make([]*models.CloudDiskMenuTree, 0)
-	for i := range menus {
-		if parentId == menus[i].ParentId {
-			v := new(models.CloudDiskMenuTree)
-			v.CloudDiskMenu = menus[i]
-			v.Children = loadMenuTree(menus[i].MenuId, menus, v)
-			children = append(children, v)
-		}
-	}
-	parentItem.Children = children
-	return
-}
-
-// CheckFileNameFormFiles 校验文件名并返回可用名
-func CheckFileNameFormFiles(originName, fileName string, fileList []*models.CloudDiskResource, num int) (isRepeat bool, availableName string) {
-	if originName == "" || !strings.Contains(originName, ".") {
-		return
-	}
-	// 从原名称中取出文件名和格式
-	extIndex := strings.LastIndex(originName, ".")
-	name := originName[:extIndex]
-	ext := originName[extIndex:]
-	if fileName == "" {
-		fileName = name
-	}
-	availableName = fileName + ext
-	for i := range fileList {
-		if fileName == fileList[i].ResourceName {
-			fileName = fmt.Sprintf("%s(%d)", name, num+1)
-			isRepeat, availableName = CheckFileNameFormFiles(originName, fileName, fileList, num+1)
-			isRepeat = true
-		}
-	}
-	return
-}
-
-// GetCloudDiskResourceFileTypeExtMap 常见文件类型图标
-func GetCloudDiskResourceFileTypeExtMap() map[string]string {
-	return map[string]string{
-		".doc":  "https://hzstatic.hzinsights.com/static/icon/file_type_docx.png",
-		".docx": "https://hzstatic.hzinsights.com/static/icon/file_type_docx.png",
-
-		".pdf": "https://hzstatic.hzinsights.com/static/icon/file_type_pdf.png",
-
-		".ppt":  "https://hzstatic.hzinsights.com/static/icon/file_type_ppt.png",
-		".pptx": "https://hzstatic.hzinsights.com/static/icon/file_type_ppt.png",
-
-		".xls":  "https://hzstatic.hzinsights.com/static/icon/file_type_xlsx.png",
-		".xlsx": "https://hzstatic.hzinsights.com/static/icon/file_type_xlsx.png",
-
-		".jpg":  "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-		".jpeg": "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-		".png":  "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-		".bmp":  "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-		".svg":  "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-		".gif":  "https://hzstatic.hzinsights.com/static/icon/file_type_pic.png",
-
-		".mp4":  "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".wmv":  "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".mov":  "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".mpeg": "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".avi":  "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".flv":  "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".rm":   "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-		".rmvb": "https://hzstatic.hzinsights.com/static/icon/file_type_video.png",
-
-		".mp3": "https://hzstatic.hzinsights.com/static/icon/file_type_audio.png",
-		".wma": "https://hzstatic.hzinsights.com/static/icon/file_type_audio.png",
-	}
-}
-
-// UpdateCloudDiskMenuSize 更新目录大小
-func UpdateCloudDiskMenuSize(menuId int) (err error) {
-	if menuId <= 0 {
-		return
-	}
-	menuItem := new(models.CloudDiskMenu)
-	if e := menuItem.GetItemById(menuId); e != nil {
-		err = fmt.Errorf("获取目录失败, Err: %s", e.Error())
-		return
-	}
-
-	// 获取目录所属文件总大小
-	menuIds := make([]int, 0)
-	menuIds = append(menuIds, menuId)
-	childrenIds, e := GetCloudDiskMenuIdsByParentId(menuId)
-	if e != nil {
-		err = fmt.Errorf("获取目录子目录IDs失败, Err: %s", e.Error())
-		return
-	}
-	menuIds = append(menuIds, childrenIds...)
-	sizeTotal, e := models.GetSizeTotalByMenuIds(menuIds)
-	if e != nil {
-		err = fmt.Errorf("获取目录所属文件大小失败失败, Err: %s", e.Error())
-		return
-	}
-
-	// 更新
-	menuItem.Size = sizeTotal
-	menuItem.ModifyTime = time.Now().Local()
-	if e = menuItem.Update([]string{"Size", "ModifyTime"}); e != nil {
-		err = fmt.Errorf("更新目录大小失败, Err: %s", e.Error())
-		return
-	}
-	if menuItem.ParentId > 0 {
-		err = UpdateCloudDiskMenuSize(menuItem.ParentId)
-	}
-	return
-}
-
-// GetCloudDiskMenuOrResourcePath 获取目录/文件面包屑
-func GetCloudDiskMenuOrResourcePath(menuId, level int, menuMap map[int]*models.CloudDiskMenu, originMenu *models.CloudDiskMenu, pathArr []*models.CloudDiskMenuResourcePath) []*models.CloudDiskMenuResourcePath {
-	if menuId == 0 || len(menuMap) == 0 || originMenu == nil {
-		return nil
-	}
-	if level == 0 {
-		level = 99
-	}
-	menuItem := menuMap[menuId]
-	if menuItem.ParentId > 0 {
-		parentItem := menuMap[menuItem.ParentId]
-		if parentItem != nil {
-			level -= 1
-			pathArr = append(pathArr, &models.CloudDiskMenuResourcePath{
-				MenuId:   parentItem.MenuId,
-				MenuName: parentItem.MenuName,
-				ParentId: parentItem.ParentId,
-				Sort:     level,
-				Selected: false,
-			})
-			if parentItem.ParentId > 0 {
-				pathArr = GetCloudDiskMenuOrResourcePath(parentItem.MenuId, level-1, menuMap, originMenu, pathArr)
-			} else {
-				pathArr = append(pathArr, &models.CloudDiskMenuResourcePath{
-					MenuId:   originMenu.MenuId,
-					MenuName: originMenu.MenuName,
-					ParentId: originMenu.ParentId,
-					Sort:     99,
-					Selected: true,
-				})
-			}
-		}
-	} else {
-		pathArr = append(pathArr, &models.CloudDiskMenuResourcePath{
-			MenuId:   originMenu.MenuId,
-			MenuName: originMenu.MenuName,
-			ParentId: originMenu.ParentId,
-			Sort:     99,
-			Selected: true,
-		})
-	}
-	sort.Slice(pathArr, func(k, j int) bool {
-		return pathArr[k].Sort < pathArr[j].Sort
-	})
-	return pathArr
-}
-
-// FillMenuPath2File 完善文件的完整路径
-func FillMenuPath2File(originMenuId, menuId int, resourcePath string, menuMap map[int]*models.CloudDiskMenu) string {
-	if menuId == 0 {
-		return resourcePath
-	}
-	menuItem := menuMap[menuId]
-	if menuItem == nil {
-		return resourcePath
-	}
-	// 若文件就在当前目录是不需要加目录路径的, 仅多级才需要加
-	if menuItem.ParentId > 0 {
-		resourcePath = fmt.Sprintf("%s/%s", menuItem.MenuName, resourcePath)
-		resourcePath = FillMenuPath2File(originMenuId, menuItem.ParentId, resourcePath, menuMap)
-	}
-	return resourcePath
-}

+ 2 - 102
services/ppt.go

@@ -4,7 +4,6 @@ import (
 	"encoding/json"
 	"errors"
 	"eta_gn/eta_api/models"
-	"eta_gn/eta_api/models/ppt_english"
 	"eta_gn/eta_api/models/system"
 	"eta_gn/eta_api/services/alarm_msg"
 	"eta_gn/eta_api/services/ppt2img"
@@ -265,25 +264,6 @@ func ResetPPTReport(reportId int, isEnglish bool) (err error) {
 		}
 	}()
 
-	// 英文报告
-	if isEnglish {
-		en, e := ppt_english.GetPptEnglishByReportId(reportId)
-		if e != nil && !utils.IsErrNoRow(e) {
-			err = errors.New("获取英文PPT失败, Err: " + e.Error())
-			return
-		}
-		if en != nil {
-			updateCols := []string{"ReportId", "ReportCode"}
-			en.ReportId = 0
-			en.ReportCode = ""
-			if e = en.Update(updateCols); e != nil {
-				err = errors.New("更新英文PPT关联报告失败, Err: " + e.Error())
-				return
-			}
-		}
-		return
-	}
-
 	// 中文报告
 	item, e := models.GetPptV2ByReportId(reportId)
 	if e != nil && !utils.IsErrNoRow(e) {
@@ -345,88 +325,8 @@ func saveReportPptImg(pptId, reportId int, pptUrl string) {
 	return
 }
 
-// SaveEnglishPPTReport 保存英文PPT报告
-func SaveEnglishPPTReport(pptId, classifyIdFirst, classifyIdSecond int, title, abstract string, adminInfo *system.Admin) (reportId int, reportCode, errMsg string, err error) {
-	defer func() {
-		if err != nil {
-			utils.FileLog.Info("%s", err.Error())
-			go alarm_msg.SendAlarmMsg("PPT转报告失败, SavePPTReport Msg: "+errMsg+", Err: "+err.Error(), 3)
-		}
-	}()
-	if pptId == 0 {
-		errMsg = "参数有误"
-		err = errors.New("参数有误")
-		return
-	}
-	item, e := ppt_english.GetPptEnglishById(pptId)
-	if e != nil {
-		errMsg = "获取PPT失败"
-		err = errors.New("获取PPT失败, Err: " + e.Error())
-		return
-	}
-	// PPT内容转HTML
-	htm, e := pptContent2Html(item.Content, true)
-	if e != nil {
-		errMsg = "转换失败"
-		err = e
-		return
-	}
-
-	// 2023-02-21 PPT可多次转为报告, 不做关联
-	if title == "" {
-		errMsg = "标题不能为空"
-		err = errors.New("标题不能为空")
-		return
-	}
-	if classifyIdFirst <= 0 {
-		errMsg = "请选择报告分类"
-		err = errors.New("报告分类不能为空")
-		return
-	}
-
-	// 分类
-	classifyList, e := models.GetAllEnglishClassify()
-	if e != nil {
-		errMsg = "转换失败"
-		err = errors.New("获取分类列表失败, Err: " + e.Error())
-		return
-	}
-	classifyMap := make(map[int]string, 0)
-	for _, v := range classifyList {
-		classifyMap[v.Id] = v.ClassifyName
-	}
-	classifyNameFirst := classifyMap[classifyIdFirst]
-	classifyNameSecond := classifyMap[classifyIdSecond]
-
-	// 新增报告
-	nowTime := time.Now().Local()
-	reportReq := &models.AddEnglishReportReq{
-		AddType:            1,
-		ClassifyIdFirst:    classifyIdFirst,
-		ClassifyNameFirst:  classifyNameFirst,
-		ClassifyIdSecond:   classifyIdSecond,
-		ClassifyNameSecond: classifyNameSecond,
-		Title:              title,
-		Abstract:           abstract,
-		Author:             "Horizon Insights FICC Team",
-		Frequency:          utils.ReportFrequencyDefault,
-		State:              1,
-		Content:            htm,
-		CreateTime:         nowTime.Format(utils.FormatDateTime),
-	}
-	newReportId, newCode, e := CreateNewEnglishReport(*reportReq, adminInfo)
-	if e != nil {
-		errMsg = "转换失败"
-		err = errors.New("新增报告失败, Err: " + e.Error())
-		return
-	}
-	reportId = int(newReportId)
-	reportCode = newCode
-	return
-}
-
 // UpdatePptEditing 更新PPT编辑状态
-func UpdatePptEditing(pptId, status, userId int, userName string, isEn bool) (ret ppt_english.PPTEditingCache, err error) {
+func UpdatePptEditing(pptId, status, userId int, userName string, isEn bool) (ret models.PPTEditingCache, err error) {
 	if pptId <= 0 {
 		return
 	}
@@ -444,7 +344,7 @@ func UpdatePptEditing(pptId, status, userId int, userName string, isEn bool) (re
 	}
 
 	// 读取缓存中的结果
-	var editor ppt_english.PPTEditingCache
+	var editor models.PPTEditingCache
 	strCache, _ := utils.Rc.RedisString(cacheKey)
 	fmt.Println(strCache)
 	if strCache != "" {

+ 0 - 79
services/ppt/ppt_english_grant.go

@@ -1,79 +0,0 @@
-package ppt
-
-import (
-	"errors"
-	"eta_gn/eta_api/models/ppt_english"
-	"strconv"
-	"strings"
-	"time"
-)
-
-// GrantPptEnglish 授权英文ppt
-func GrantPptEnglish(pptId, grantType int, grantAdminIdStr string, sysUserId int) (err error, errMsg string) {
-	list := make([]*ppt_english.PptEnglishGrant, 0)
-
-	switch grantType {
-	case 1:
-		departmentId := 1 //ficc研究员部门
-		tmpV := &ppt_english.PptEnglishGrant{
-			//GrantId:      0,
-			PptId:        int64(pptId),
-			DepartmentId: int64(departmentId),
-			GrantAdminId: 0,
-			CreateTime:   time.Now(),
-		}
-		list = append(list, tmpV)
-
-	case 2:
-		if grantAdminIdStr == `` {
-			errMsg = `请选择用户`
-			return
-		}
-		grantAdminIdStrList := strings.Split(grantAdminIdStr, ",")
-		lenGrantAdminIdStrList := len(grantAdminIdStrList) //指定用户的人数
-		for _, v := range grantAdminIdStrList {
-			grantAdminId, tmpErr := strconv.Atoi(v)
-			if tmpErr != nil {
-				errMsg = `数据异常`
-				err = errors.New("用户转int失败," + tmpErr.Error())
-				return
-			}
-			//如果只选择了自己作为指定的人,那么就提示他报错。如果多人,那么就过滤自己
-			if grantAdminId == sysUserId {
-				if lenGrantAdminIdStrList == 1 {
-					errMsg = `不允许选择本人作为共享用户`
-					return
-				}
-				continue
-			}
-			tmpV := &ppt_english.PptEnglishGrant{
-				//GrantId:      0,
-				PptId: int64(pptId),
-				//DepartmentId: int64(departmentId),
-				GrantAdminId: int64(grantAdminId),
-				CreateTime:   time.Now(),
-			}
-			list = append(list, tmpV)
-		}
-	}
-	if len(list) <= 0 {
-		errMsg = `请选择用户`
-		return
-	}
-
-	err = ppt_english.MultiAddPptEnglishGrant(pptId, list)
-	if err != nil {
-		errMsg = "设置失败"
-	}
-	return
-}
-
-// DeleteGrantPpt 移除授权ppt
-func DeleteGrantPptEnglish(pptId int) (err error, errMsg string) {
-	err = ppt_english.DeletePptEnglishGrant(pptId)
-	if err != nil {
-		errMsg = "取消失败"
-	}
-
-	return
-}

+ 0 - 1480
services/ppt/ppt_english_group.go

@@ -1,1480 +0,0 @@
-package ppt
-
-import (
-	"encoding/json"
-	"errors"
-	"eta_gn/eta_api/models/ppt_english"
-	"eta_gn/eta_api/models/system"
-	"eta_gn/eta_api/services"
-	"eta_gn/eta_api/utils"
-	"fmt"
-	"sort"
-	"strconv"
-	"strings"
-	"time"
-)
-
-// AddEnglishGroup 新增ppt目录
-func AddEnglishGroup(groupName string, adminId int, isShare int8, isSharedAdd int8) (newId int64, err error) {
-	item, err := ppt_english.GetPptGroupByName(groupName, adminId)
-	if err != nil && !utils.IsErrNoRow(err) {
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	if item != nil {
-		err = errors.New("目录名称已存在,不可重复添加")
-		return
-	}
-	groupInfo := &ppt_english.PptEnglishGroup{
-		GroupName:  groupName,
-		AdminId:    adminId,
-		IsShare:    isShare,
-		IsShareAdd: isSharedAdd,
-	}
-	if isShare == 1 {
-		groupInfo.ShareTime = time.Now()
-	}
-	newId, err = ppt_english.AddPptGroup(groupInfo)
-	if err != nil {
-		err = errors.New("新增失败,Err:" + err.Error())
-		return
-	}
-	groupInfo.GroupSort = newId
-	groupInfo.GroupId = newId
-	// 更新排序标识
-	err = groupInfo.Update([]string{"group_sort"})
-	if err != nil {
-		err = errors.New("更新排序失败:" + err.Error())
-		return
-	}
-	return
-}
-
-// AddGroupPptEnglishMapping 新增ppt和目录映射关系
-func AddGroupPptEnglishMapping(pptId int64, groupId int64, adminId int, adminRealName string) (newId int64, err error) {
-	_, err = ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	bindInfo := &ppt_english.PptEnglishGroupMapping{
-		GroupId:       groupId,
-		PptId:         pptId,
-		AdminId:       adminId,
-		AdminRealName: adminRealName,
-	}
-
-	newId, err = ppt_english.AddPptGroupMapping(bindInfo)
-	if err != nil {
-		err = errors.New("绑定目录失败:" + err.Error())
-		return
-	}
-
-	bindInfo.GroupPptId = newId
-	bindInfo.PptSort = newId
-	err = bindInfo.Update([]string{"ppt_sort"})
-	if err != nil {
-		err = errors.New("更新排序失败:" + err.Error())
-		return
-	}
-	return
-}
-
-// DelEnglishGroup 删除ppt 目录
-func DelEnglishGroup(groupId int64, adminId int) (err error) {
-	_, err = ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	//查询是否有映射存在
-	count, err := ppt_english.GetPptMappingCountByGroupId(groupId)
-	if err != nil {
-		err = errors.New("查询目录里的ppt个数出错:" + err.Error())
-		return
-	}
-
-	if count > 0 {
-		err = errors.New("该目录下有关联PPT,不允许删除")
-		return
-	}
-	err = ppt_english.DeletePptGroup(groupId)
-	if err != nil {
-		err = errors.New("删除失败:" + err.Error())
-		return
-	}
-	return
-}
-
-// ShareEnglishGroup 共享/取消共享目录
-func ShareEnglishGroup(groupId int64, adminId int) (respShare ppt_english.RespPptGroupShare, err error) {
-	// 查询目录是否存在
-	groupInfo, err := ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	// 判断是共享操作还是取消共享操作
-	if groupInfo.IsShare == 1 {
-		//取消共享
-		groupInfo.IsShare = 0
-		//groupInfo.ModifyTime = time.Now()
-		err = groupInfo.Update([]string{"is_share"})
-		if err != nil {
-			err = errors.New("取消共享出错:" + err.Error())
-			return
-		}
-	} else {
-		//设置共享
-		groupInfo.IsShare = 1
-		groupInfo.ShareTime = time.Now()
-		err = groupInfo.Update([]string{"is_share", "share_time"})
-		if err != nil {
-			err = errors.New("设置共享出错:" + err.Error())
-			return
-		}
-		respShare.IsShare = 1
-	}
-
-	respShare.GroupId = groupId
-	return
-}
-
-// CopyEnglishGroup 复制目录
-func CopyEnglishGroup(groupId int64, adminId int, adminRealName string) (err error) {
-	//查询目录是否存在
-	groupInfo, err := ppt_english.GetPptGroupByGroupId(groupId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	//新增公共目录。目录名称在原来的基础上带上复制序号
-	groupNames, err := ppt_english.GetPptGroupNamesByAdminId(adminId)
-	if err != nil {
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	newGroupName := generateCopyName(groupInfo.GroupName, 1, groupNames)
-	newGroupId, err := AddEnglishGroup(newGroupName, adminId, 0, 0)
-	if err != nil {
-		err = errors.New("复制目录出错:" + err.Error())
-		return
-	}
-	//查询该目录下面是否存在ppt,如果存在则批量复制ppt到新目录下
-	mappingList, err := ppt_english.GetPptMappingListByGroupId(groupId)
-	if err != nil {
-		err = errors.New("查询目录里的ppt列表出错:" + err.Error())
-		return
-	}
-	if len(mappingList) <= 0 {
-		return
-	}
-	pptIds := make([]int, 0)
-	for _, v := range mappingList {
-		pptIds = append(pptIds, int(v.PptId))
-	}
-	//批量查询ppt详情
-	pptList, err := ppt_english.GetPptEnglishByIds(pptIds)
-	if err != nil {
-		err = errors.New("查询ppt列表出错:" + err.Error())
-		return
-	}
-	pptNames, err := ppt_english.GetAllPptTitle()
-	if err != nil {
-		err = errors.New("查询ppt标题出错:" + err.Error())
-		return
-	}
-	//批量复制ppt,更新作者为当前账号,并返回新的pptID
-	newPptList := make([]*ppt_english.PptEnglish, 0)
-	for _, v := range pptList {
-		tmp := &ppt_english.PptEnglish{
-			TemplateType:  v.TemplateType,
-			BackgroundImg: v.BackgroundImg,
-			Title:         generateCopyName(v.Title, 1, pptNames),
-			ReportType:    v.ReportType,
-			PptDate:       v.PptDate,
-			Content:       v.Content,
-			CoverContent:  v.CoverContent,
-			CreateTime:    time.Now(),
-			ModifyTime:    time.Now(),
-			AdminId:       adminId,
-			AdminRealName: adminRealName,
-			TitleSetting:  v.TitleSetting,
-		}
-		newPptList = append(newPptList, tmp)
-	}
-	if len(newPptList) > 0 {
-		err = ppt_english.AddPptEnglishMulti(newPptList)
-		if err != nil {
-			err = errors.New("复制目录里的ppt出错:" + err.Error())
-			return
-		}
-
-		newMappings := make([]*ppt_english.PptEnglishGroupMapping, 0)
-		for _, v := range newPptList {
-			tmp := &ppt_english.PptEnglishGroupMapping{
-				GroupId:       newGroupId,
-				PptId:         int64(v.PptId),
-				CreateTime:    time.Now(),
-				ModifyTime:    time.Now(),
-				AdminId:       adminId,
-				AdminRealName: adminRealName,
-			}
-			newMappings = append(newMappings, tmp)
-		}
-		err = ppt_english.AddPptGroupMappingMulti(newMappings)
-		if err != nil {
-			err = errors.New("复制目录里的ppt出错:" + err.Error())
-			return
-		}
-		//批量更新排序字段
-		var newGroupPptIds []int64
-		for _, v := range newMappings {
-			newGroupPptIds = append(newGroupPptIds, v.GroupPptId)
-		}
-		err = ppt_english.UpdatePptGroupMappingSortMulti(newGroupPptIds)
-		if err != nil {
-			err = errors.New("更新排序标识出错:" + err.Error())
-			return
-		}
-	}
-	return
-}
-
-// RenameEnglishGroupName 目录重命名
-func RenameEnglishGroupName(groupId int64, groupName string, adminId int) (err error) {
-	groupInfo, err := ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	if groupInfo.GroupName == groupName {
-		err = errors.New("与原名字一致,无需修改")
-		return
-	}
-	item, err := ppt_english.GetPptGroupByName(groupName, adminId)
-	if err != nil && !utils.IsErrNoRow(err) {
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	if item != nil {
-		err = errors.New("目录名称已存在,不可重复添加")
-		return
-	}
-
-	//更新新名字
-	groupInfo.GroupName = groupName
-	err = groupInfo.Update([]string{"group_name"})
-	if err != nil {
-		err = errors.New("目录重命名失败" + err.Error())
-		return
-	}
-	return
-}
-
-// ShareSingleEnglishGroupPpt 共享单个ppt/取消共享单个ppt,返回共享状态
-func ShareSingleEnglishGroupPpt(groupPptId int64, adminId int, adminRealName string) (ret ppt_english.RespPptShare, err error) {
-	//判断当前登录者是否有共享的权限
-	groupPpt, err := ppt_english.GetPptMappingByGroupPptId(groupPptId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("当前目录下的ppt不存在")
-			return
-		}
-		err = errors.New("目录下的ppt查询出错:" + err.Error())
-		return
-	}
-	groupInfo, err := ppt_english.GetPptGroupByGroupIdAdminId(groupPpt.GroupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	//判断当前的共享状态
-	if groupPpt.ChildGroupPptId > 0 {
-		err = CancelShareSingleGroupPptEnglish(groupPpt, adminId)
-		if err != nil {
-			err = errors.New(err.Error())
-			return
-		}
-		ret.IsSingleShare = 0
-	} else {
-		//如果是未共享状态,则共享该ppt,类似复制流程,并更新共享标识
-		//新增公共目录。目录名称在原来的基础上带上复制序号
-		groupNames, tErr := ppt_english.GetPptGroupNamesByAdminId(adminId)
-		if tErr != nil {
-			err = errors.New("目录查询出错:" + tErr.Error())
-			return
-		}
-		newGroupName := generateCopyName(groupInfo.GroupName, 1, groupNames)
-		newGroupId, tErr := AddGroup(newGroupName, adminId, 1, 1)
-		if tErr != nil {
-			err = errors.New(tErr.Error())
-			return
-		}
-		//新增公共的目录和ppt之间的映射关系
-		newGroupPptId, tErr := AddGroupPptMapping(groupPpt.PptId, newGroupId, adminId, adminRealName)
-		if tErr != nil {
-			err = errors.New(tErr.Error())
-			return
-		}
-		//更新共享标识
-		groupPpt.ChildGroupPptId = newGroupPptId
-		err = groupPpt.Update([]string{"child_group_ppt_id"})
-		if err != nil {
-			err = errors.New("更新共享标识失败" + err.Error())
-			return
-		}
-		ret.IsSingleShare = 1
-	}
-	ret.GroupPptId = groupPptId
-	return
-}
-
-// GetGroupPptEnglishList 公共目录下的ppt列表或者单个目录里的ppt列表
-func GetGroupPptEnglishList(groupId int64, adminId int) (ret ppt_english.RespGroupPptList, err error) {
-	var groupPptList []*ppt_english.PptEnglishGroupMapping
-	var groups []*ppt_english.PptEnglishGroup
-	list := make([]*ppt_english.RespGroupPptListItem, 0)
-	ret.List = list
-	if groupId > 0 {
-		//只查询组内的ppt列表
-		//查询目录是否存在
-		groupInfo, tErr := ppt_english.GetPptGroupByGroupId(groupId)
-		if tErr != nil {
-			if utils.IsErrNoRow(tErr) {
-				err = errors.New("目录不存在")
-				return
-			}
-			err = errors.New("目录查询出错:" + tErr.Error())
-			return
-		}
-		groups = append(groups, groupInfo)
-		groupPptList, tErr = ppt_english.GetPptMappingListByGroupIdDesc(groupId)
-		if tErr != nil {
-			err = errors.New("目录里的ppt查询出错:" + tErr.Error())
-			return
-		}
-	} else {
-		// 获取我的所有的ppt
-		ret, err = GetMyPptEnglishList(adminId, ``)
-		return
-	}
-	if len(groupPptList) <= 0 {
-		return
-	}
-	pptMap := make(map[int]*ppt_english.PptEnglish)
-	groupMap := make(map[int64][]*ppt_english.PptEnglishGroupMapping)
-	pptIds := make([]int, 0)
-	for _, v := range groupPptList {
-		pptIds = append(pptIds, int(v.PptId))
-		groupMap[v.GroupId] = append(groupMap[v.GroupId], v)
-	}
-
-	if len(pptIds) == 0 {
-		// 返回所有空目录
-		return
-	}
-	pptList, err := ppt_english.GetPptEnglishByIds(pptIds)
-	if err != nil {
-		err = errors.New("查询ppt详情出错:" + err.Error())
-		return
-	}
-
-	for _, v := range pptList {
-		// 解决部分历史ppt数据不存在TotalPages的情况
-		if v.PptPage == 0 {
-			var pptContent []services.PPTContent
-			err = json.Unmarshal([]byte(v.Content), &pptContent)
-			if err != nil {
-				err = errors.New("解析ppt内容出错" + err.Error())
-				return
-			}
-			v.PptPage = len(pptContent)
-		}
-		pptMap[v.PptId] = v
-	}
-
-	//按照排序顺序,依次放入ppt
-	hasPpt := make(map[int]struct{})
-	for _, v := range groups {
-		if mapList, ok := groupMap[v.GroupId]; ok {
-			if len(mapList) > 0 {
-				for _, pptV := range mapList {
-					pptInfo, ok1 := pptMap[int(pptV.PptId)]
-					_, ok2 := hasPpt[int(pptV.PptId)]
-					if ok1 && !ok2 {
-						tmp := &ppt_english.RespGroupPptListItem{
-							GroupPptId:    pptV.GroupPptId,
-							PptId:         pptV.PptId,
-							TemplateType:  pptInfo.TemplateType,
-							BackgroundImg: pptInfo.BackgroundImg,
-							Title:         pptInfo.Title,
-							AdminId:       pptV.AdminId,
-							AdminRealName: pptV.AdminRealName,
-							IsSingleShare: 0,
-							PptCreateTime: pptInfo.CreateTime.Format(utils.FormatDateTime),
-							PptModifyTime: pptInfo.ModifyTime.Format(utils.FormatDateTime),
-							PptxUrl:       pptInfo.PptxUrl,
-							ReportId:      pptInfo.ReportId,
-							ReportCode:    pptInfo.ReportCode,
-							PublishTime:   utils.DealDateTimeZero(pptInfo.PublishTime, utils.FormatDateTime),
-							PptPage:       pptInfo.PptPage,
-						}
-						if pptV.ChildGroupPptId > 0 {
-							tmp.IsSingleShare = 1
-						}
-
-						list = append(list, tmp)
-						hasPpt[pptInfo.PptId] = struct{}{}
-					}
-				}
-			}
-		}
-	}
-
-	ret.List = list
-	if groupId <= 0 {
-		sort.Sort(ret)
-	}
-	ret.Total = len(list)
-	return
-}
-
-// MoveGroupPptEnglish 移动ppt操作
-func MoveGroupPptEnglish(groupId, groupPptId, prevGroupPptId, nextGroupPptId int64, adminId int) (err error) {
-	//查询当前映射是否存在
-	//判断当前登录者是否有共享的权限oo
-	groupPpt, err := ppt_english.GetPptMappingByGroupPptId(groupPptId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("当前目录下的ppt不存在")
-			return
-		}
-		err = errors.New("目录下的ppt查询出错:" + err.Error())
-		return
-	}
-	var updateStr []string
-	//如果更换了目录,默认当前排序值为0
-	var currentSort, prevSort, nextSort int64
-	//判断是否更换group
-	if groupPpt.GroupId != groupId {
-		_, err = ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				err = errors.New("目录不存在")
-				return
-			}
-			err = errors.New("目录查询出错:" + err.Error())
-			return
-		}
-		//判断是否需要解除当个ppt共享
-		//解除共享操作
-		err = CancelShareSingleGroupPptEnglish(groupPpt, adminId)
-		if err != nil {
-			err = errors.New(err.Error())
-			return
-		}
-		groupPpt.GroupId = groupId
-		updateStr = append(updateStr, "group_id")
-	}
-	currentSort = groupPpt.PptSort
-
-	var prevGroupPpt *ppt_english.PptEnglishGroupMapping
-	var nextGroupPpt *ppt_english.PptEnglishGroupMapping
-	if prevGroupPptId > 0 {
-		prevGroupPpt, err = ppt_english.GetPptMappingByGroupPptId(prevGroupPptId, adminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				err = errors.New("目录下的ppt不存在")
-				return
-			}
-			err = errors.New("目录下的ppt查询出错:" + err.Error())
-			return
-		}
-		prevSort = prevGroupPpt.PptSort
-	}
-
-	if nextGroupPptId > 0 {
-		nextGroupPpt, err = ppt_english.GetPptMappingByGroupPptId(nextGroupPptId, adminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				err = errors.New("目录下的ppt不存在")
-				return
-			}
-			err = errors.New("目录下的ppt查询出错:" + err.Error())
-			return
-		}
-		nextSort = nextGroupPpt.PptSort
-	}
-
-	updateStr = append(updateStr, "ppt_sort")
-
-	//移到两个排序值中间操作
-	if prevSort >= currentSort {
-		//往下移动
-		err = ppt_english.MoveDownGroupPptBySort(groupId, prevSort, currentSort)
-		if err != nil {
-			err = errors.New("向下移动ppt出错:" + err.Error())
-			return
-		}
-		groupPpt.PptSort = prevSort
-	} else if nextSort <= currentSort && nextSort != 0 {
-		//往上移动
-		err = ppt_english.MoveUpGroupPptBySort(groupId, nextSort, currentSort)
-		if err != nil {
-			err = errors.New("向上移动ppt出错:" + err.Error())
-			return
-		}
-		groupPpt.PptSort = nextSort
-	}
-	//更新当前排序
-	err = groupPpt.Update(updateStr)
-	if err != nil {
-		err = errors.New("移动ppt出错:" + err.Error())
-		return
-	}
-	return
-}
-
-// MoveEnglishGroup 移动目录
-func MoveEnglishGroup(groupId, prevGroupId, nextGroupId int64, adminId int) (err error) {
-	//查询目录是否存在
-	groupInfo, err := ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	//如果更换了目录,默认当前排序值为0
-	var currentSort, prevSort, nextSort int64
-
-	currentSort = groupInfo.GroupSort
-
-	var prevGroup *ppt_english.PptEnglishGroup
-	var nextGroup *ppt_english.PptEnglishGroup
-	if prevGroupId > 0 {
-		prevGroup, err = ppt_english.GetPptGroupByGroupIdAdminId(prevGroupId, adminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				err = errors.New("目录不存在")
-				return
-			}
-			err = errors.New("目录查询出错:" + err.Error())
-			return
-		}
-		prevSort = prevGroup.GroupSort
-	}
-
-	if nextGroupId > 0 {
-		nextGroup, err = ppt_english.GetPptGroupByGroupIdAdminId(nextGroupId, adminId)
-		if err != nil {
-			if utils.IsErrNoRow(err) {
-				err = errors.New("目录不存在")
-				return
-			}
-			err = errors.New("目录查询出错:" + err.Error())
-			return
-		}
-		nextSort = nextGroup.GroupSort
-	}
-	//移到两个排序值中间操作
-	if prevSort >= currentSort {
-		//往下移动
-		err = ppt_english.MoveDownGroupBySort(prevSort, currentSort)
-		if err != nil {
-			err = errors.New("向下移动ppt出错:" + err.Error())
-			return
-		}
-		groupInfo.GroupSort = prevSort
-	} else if nextSort <= currentSort && nextSort != 0 {
-		//往上移动
-		err = ppt_english.MoveUpGroupBySort(nextSort, currentSort)
-		if err != nil {
-			err = errors.New("向上移动ppt出错:" + err.Error())
-			return
-		}
-		groupInfo.GroupSort = nextSort
-	}
-	//更新当前排序
-	err = groupInfo.Update([]string{"group_sort"})
-	if err != nil {
-		err = errors.New("移动目录出错:" + err.Error())
-		return
-	}
-	return
-}
-
-// CancelShareSingleGroupPptEnglish 解除单个共享的ppt
-func CancelShareSingleGroupPptEnglish(groupPpt *ppt_english.PptEnglishGroupMapping, adminId int) (err error) {
-	if groupPpt.ChildGroupPptId <= 0 {
-		return
-	}
-	//如果已经是共享状态,
-	//判断当前登录者是否有取消共享的权限
-	childGroupPpt, tErr := ppt_english.GetPptMappingByGroupPptId(groupPpt.ChildGroupPptId, adminId)
-	if tErr != nil {
-		if !utils.IsErrNoRow(tErr) {
-			err = errors.New("目录下的ppt查询出错:" + tErr.Error())
-			return
-		}
-	}
-
-	if childGroupPpt != nil {
-		//删除共享目录和ppt的映射关系
-		err = ppt_english.DeletePptGroupMapping(childGroupPpt.GroupPptId, adminId)
-		if err != nil {
-			err = errors.New("删除共享目录下的ppt失败:" + err.Error())
-			return
-		}
-		//删除共享出去的公共目录
-		err = ppt_english.DeletePptGroup(childGroupPpt.GroupId)
-		if err != nil {
-			err = errors.New("删除共享目录失败:" + err.Error())
-			return
-		}
-	}
-	//更新共享状态为未共享,
-	//更新共享标识
-	groupPpt.ChildGroupPptId = 0
-	err = groupPpt.Update([]string{"child_group_ppt_id"})
-	if err != nil {
-		err = errors.New("更新共享标识失败" + err.Error())
-		return
-	}
-	return
-}
-
-// DeleteGroupPptEnglish 删除ppt
-func DeleteGroupPptEnglish(PptId int) (err error) {
-	//查询该ppt的所有单个共享出去的目录信息
-	groupPpts, err := ppt_english.GetGroupPptByPptId(PptId)
-	if err != nil {
-		err = errors.New("查询目录里的ppt失败" + err.Error())
-		return
-	}
-	if len(groupPpts) <= 0 {
-		return
-	}
-	//整理出需要删除的groupId
-	groupPptMap := make(map[int64]*ppt_english.PptEnglishGroupMapping)
-	for _, v := range groupPpts {
-		groupPptMap[v.GroupPptId] = v
-	}
-	var delGroupIds string
-	for _, v := range groupPpts {
-		if v.ChildGroupPptId > 0 {
-			if childGroup, ok := groupPptMap[v.ChildGroupPptId]; ok {
-				delGroupIds += strconv.Itoa(int(childGroup.GroupId)) + ","
-			}
-		}
-	}
-	if delGroupIds != "" {
-		delGroupIds = "(" + strings.Trim(delGroupIds, ",") + ")"
-		err = ppt_english.DeletePptGroupByGroupIds(delGroupIds)
-		if err != nil {
-			err = errors.New("删除单个共享目录失败" + err.Error())
-			return
-		}
-	}
-	//再统一删除目录里相关的ppt
-	err = ppt_english.DeletePptGroupMappingByPptId(PptId)
-	if err != nil {
-		err = errors.New("删除目录里的ppt失败" + err.Error())
-		return
-	}
-	return
-}
-
-// CopyPptEnglish 复制单个ppt,并移动到新的目录下面
-func CopyPptEnglish(pptId int, groupId int64, adminId int, adminRealName string) (resp ppt_english.RespGroupPptNameListItem, err error) {
-	//查询ppt详情
-	pptInfo, err := ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("ppt 不存在")
-			return
-		}
-		err = errors.New("查询ppt失败" + err.Error())
-		return
-	}
-	// 查询目录是否存在
-	_, err = ppt_english.GetPptGroupByGroupIdAdminId(groupId, adminId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("目录不存在")
-			return
-		}
-		err = errors.New("目录查询出错:" + err.Error())
-		return
-	}
-	pptNames, err := ppt_english.GetAllPptTitle()
-	if err != nil {
-		err = errors.New("查询ppt标题出错:" + err.Error())
-		return
-	}
-	//复制ppt,更新作者为当前账号,并返回新的pptID
-	var newPptList []*ppt_english.PptEnglish
-	newPpt := &ppt_english.PptEnglish{
-		TemplateType:  pptInfo.TemplateType,
-		BackgroundImg: pptInfo.BackgroundImg,
-		Title:         generateCopyName(pptInfo.Title, 1, pptNames),
-		ReportType:    pptInfo.ReportType,
-		PptDate:       pptInfo.PptDate,
-		Content:       pptInfo.Content,
-		CoverContent:  pptInfo.CoverContent,
-		CreateTime:    time.Now(),
-		ModifyTime:    time.Now(),
-		AdminId:       adminId,
-		AdminRealName: adminRealName,
-		TitleSetting:  pptInfo.TitleSetting,
-	}
-	newPptList = append(newPptList, newPpt)
-
-	err = ppt_english.AddPptEnglishMulti(newPptList)
-	if err != nil {
-		err = errors.New("复制目录里的ppt出错:" + err.Error())
-		return
-	}
-	var newMappings []*ppt_english.PptEnglishGroupMapping
-	newGroupPpt := &ppt_english.PptEnglishGroupMapping{
-		GroupId:       groupId,
-		PptId:         int64(newPpt.PptId),
-		CreateTime:    time.Now(),
-		ModifyTime:    time.Now(),
-		AdminId:       adminId,
-		AdminRealName: adminRealName,
-	}
-	newMappings = append(newMappings, newGroupPpt)
-
-	err = ppt_english.AddPptGroupMappingMulti(newMappings)
-	if err != nil {
-		err = errors.New("复制目录里的ppt出错:" + err.Error())
-		return
-	}
-	//批量更新排序字段
-	err = ppt_english.UpdatePptGroupMappingSortMulti([]int64{newGroupPpt.GroupPptId})
-	if err != nil {
-		err = errors.New("更新排序标识出错:" + err.Error())
-		return
-	}
-	var pptPage int
-	if newPpt.Content != "" {
-		contents := make([]PageContent, 0)
-		if e := json.Unmarshal([]byte(newPpt.Content), &contents); e != nil {
-			err = errors.New(fmt.Sprintf("%d,解析PPT内容页数失败: %s", newPpt.PptId, e.Error()))
-			return
-		}
-		pptPage = len(contents)
-	}
-	resp = ppt_english.RespGroupPptNameListItem{
-		GroupPptId:    newGroupPpt.GroupPptId,
-		PptId:         int64(newPpt.PptId),
-		Title:         newPpt.Title,
-		AdminId:       newPpt.AdminId,
-		AdminRealName: newPpt.AdminRealName,
-		PptCreateTime: newPpt.CreateTime.Format(utils.FormatDateTime),
-		PptPage:       pptPage,
-		TitleSetting:  newPpt.TitleSetting,
-	}
-	return
-}
-
-// generateCopyNameEnglish 生成复制的目录名称
-func generateCopyNameEnglish(originName string, count int, nameList []string) (newName string) {
-	newName = originName + "(" + strconv.Itoa(count) + ")"
-	for _, v := range nameList {
-		if v == newName {
-			count++
-			newName = generateCopyName(originName, count, nameList)
-			return
-		}
-	}
-	return
-}
-
-// SearchGroupPptEnglish 根据ppt标题搜索ppt
-func SearchGroupPptEnglish(keyWord string) (ret ppt_english.RespSearchGroupPptList, err error) {
-	//组装group ppt
-	list := make([]*ppt_english.RespSearchGroupPptListItem, 0)
-	ret.List = list
-	condition := " and title like ? "
-	var pars []interface{}
-	pars = append(pars, utils.GetLikeKeyword(keyWord))
-	pptList, err := ppt_english.GetPptEnglishByCondition(condition, pars)
-	if err != nil {
-		err = errors.New("查询ppt列表出错:" + err.Error())
-		return
-	}
-	if len(pptList) == 0 {
-		return
-	}
-	pptIds := make([]string, 0)
-	pptMap := make(map[int]*ppt_english.PptEnglish)
-	for _, v := range pptList {
-		pptIds = append(pptIds, strconv.Itoa(v.PptId))
-		pptMap[v.PptId] = v
-	}
-
-	groupPptList, err := ppt_english.GetPublicGroupPptByPptIds(pptIds)
-	if err != nil {
-		err = errors.New("查询目录里的ppt列表出错:" + err.Error())
-		return
-	}
-
-	for _, v := range groupPptList {
-		tmp := new(ppt_english.RespSearchGroupPptListItem)
-		tmp.GroupPptId = v.GroupPptId
-		tmp.PptId = v.PptId
-		if i, ok := pptMap[int(v.PptId)]; ok {
-			tmp.Title = i.Title
-		}
-		list = append(list, tmp)
-	}
-	ret.List = list
-	return
-}
-
-func GetEnglishGroupsByAdminId(adminId int) (ret ppt_english.RespGroupList, err error) {
-	myPptList := make([]*ppt_english.RespGroupPptNameListItem, 0)
-	otherPptList := make([]*ppt_english.RespGroupPptNameListItem, 0)
-	grantList := []ppt_english.RespGroupListItem{
-		{
-			GroupId:   1,
-			GroupName: "我共享的",
-			PptList:   myPptList,
-		},
-		{
-			GroupId:   2,
-			GroupName: "收到共享",
-			PptList:   otherPptList,
-		},
-	}
-	ret.PublicList = make([]*ppt_english.RespGroupListItem, 0)
-	ret.PrivateList = make([]*ppt_english.RespGroupListItem, 0)
-	ret.GrantList = grantList
-
-	pptMap := make(map[int]*ppt_english.PptEnglish)
-	groupMap := make(map[int64][]*ppt_english.RespGroupPptNameListItem)
-	groupHasNewPptMap := make(map[int64]struct{})
-	pptIds := make([]int, 0)
-
-	// 获取我的ppt分组
-	privateGroups, err := ppt_english.GetPrivatePptGroupsByAdminId(adminId)
-	if err != nil {
-		err = errors.New("私有目录查询出错:" + err.Error())
-		return
-	}
-	groupIds := make([]int64, 0)
-	for _, v := range privateGroups {
-		groupIds = append(groupIds, v.GroupId)
-	}
-
-	var pptMappings []*ppt_english.PptEnglishGroupMapping
-	// 如果没有分组,那么直接返回
-	if len(groupIds) > 0 {
-		// 遍历分组并拼接
-		for _, v := range privateGroups {
-			tmp := new(ppt_english.RespGroupListItem)
-			tmp.GroupId = v.GroupId
-			tmp.GroupName = v.GroupName
-			tmp.IsShare = v.IsShare
-			tmp.AdminId = v.AdminId
-			ret.PrivateList = append(ret.PrivateList, tmp)
-		}
-		// 通过分组id获取相关的ppt信息,主要是为了获取所有的ppt_id字段
-		pptMappings, err = ppt_english.GetPptMappingListByGroupIds(groupIds)
-		if err != nil {
-			err = errors.New("查询目录里的ppt出错:" + err.Error())
-			return
-		}
-		for _, v := range pptMappings {
-			pptIds = append(pptIds, int(v.PptId))
-		}
-	}
-
-	adminIdList := make([]int, 0)   //需要查询的创建人admin_id列表集合
-	adminIdMap := make(map[int]int) //需要查询的创建人admin_id集合,用来去重的,避免重复id
-
-	// grantList 已经分配权限的ppt
-	grantPptList, err := ppt_english.GetAllGrantList(adminId)
-	for _, v := range grantPptList {
-		pptIds = append(pptIds, v.PptId)
-		if _, ok := adminIdMap[v.AdminId]; !ok {
-			adminIdList = append(adminIdList, v.AdminId) //需要查询的创建人admin_id列表集合
-			adminIdMap[v.AdminId] = v.AdminId            //需要查询的创建人admin_id集合,用来去重的,避免重复id
-		}
-	}
-
-	if len(pptIds) > 0 {
-		// 通过ppt_id列表字段获取所有的ppt信息
-		pptList, tmpErr := ppt_english.GetPptEnglishByIds(pptIds)
-		if tmpErr != nil {
-			err = errors.New("查询ppt详情出错:" + err.Error())
-			return
-		}
-		for _, v := range pptList {
-			pptMap[v.PptId] = v
-		}
-	}
-
-	// 私有的Ppt列表
-	{
-		//组装group ppt
-		for _, v := range pptMappings {
-			i, ok := pptMap[int(v.PptId)]
-			if !ok { //找不到ppt,还干个啥,直接退出当前循环啊
-				continue
-			}
-			pptPage := 0
-			// 因之前并没有存储PPT页数字段,所以此处读取PPT内容的长度
-			if i.Content != "" {
-				contents := make([]PageContent, 0)
-				if e := json.Unmarshal([]byte(i.Content), &contents); e != nil {
-					err = errors.New(fmt.Sprintf("%d,解析PPT内容页数失败: %s", i.PptId, e.Error()))
-					return
-				}
-				pptPage = len(contents)
-			}
-
-			tmp := &ppt_english.RespGroupPptNameListItem{
-				AdminId:       v.AdminId,
-				GroupPptId:    v.GroupPptId,
-				PptId:         v.PptId,
-				AdminRealName: v.AdminRealName,
-				Title:         i.Title,
-				IsSingleShare: i.IsShare,
-				PptxUrl:       i.PptxUrl,
-				ReportId:      i.ReportId,
-				ReportCode:    i.ReportCode,
-				PptCreateTime: i.CreateTime.Format(utils.FormatDateTime),
-				PptModifyTime: i.ModifyTime.Format(utils.FormatDateTime),
-				PublishTime:   utils.DealDateTimeZero(i.PublishTime, utils.FormatDateTime),
-				PptPage:       pptPage,
-			}
-
-			if tmp.PptVersion == 2 {
-				groupHasNewPptMap[v.GroupId] = struct{}{}
-			}
-			groupMap[v.GroupId] = append(groupMap[v.GroupId], tmp)
-		}
-
-		for k, v := range ret.PrivateList {
-			if pptL, ok := groupMap[v.GroupId]; ok {
-				ret.PrivateList[k].PptList = pptL
-				if _, ok1 := groupHasNewPptMap[v.GroupId]; !ok1 && len(pptL) > 0 {
-					ret.PrivateList[k].OnlyOld = true
-				}
-			}
-		}
-	}
-
-	publicAdminIdList := make([]int, 0)
-	publicPptListMap := make(map[int][]*ppt_english.RespGroupPptNameListItem)
-
-	// 获取公开分享的ppt
-	sharePptList, err := ppt_english.GetSharePptEnglish()
-	for _, v := range sharePptList {
-		publicPptList, ok := publicPptListMap[v.AdminId]
-		if !ok {
-			publicPptList = make([]*ppt_english.RespGroupPptNameListItem, 0)
-			publicAdminIdList = append(publicAdminIdList, v.AdminId)
-
-			// 需要查询的创建人信息
-			if _, ok := adminIdMap[v.AdminId]; !ok {
-				adminIdList = append(adminIdList, v.AdminId) //需要查询的创建人admin_id列表集合
-				adminIdMap[v.AdminId] = v.AdminId            //需要查询的创建人admin_id集合,用来去重的,避免重复id
-			}
-		}
-
-		contents := make([]PageContent, 0)
-		if e := json.Unmarshal([]byte(v.Content), &contents); e != nil {
-			err = errors.New("解析PPT内容页数失败: " + e.Error())
-			return
-		}
-		pptPage := len(contents)
-		tmpV := &ppt_english.RespGroupPptNameListItem{
-			GroupPptId:    int64(v.PptId),
-			PptId:         int64(v.PptId),
-			Title:         v.Title,
-			AdminId:       v.AdminId,
-			AdminRealName: v.AdminRealName,
-			IsSingleShare: v.IsShare,
-			PptxUrl:       v.PptxUrl,
-			ReportId:      v.ReportId,
-			ReportCode:    v.ReportCode,
-			PptCreateTime: v.CreateTime.Format(utils.FormatDateTime),
-			PptModifyTime: v.ModifyTime.Format(utils.FormatDateTime),
-			PublishTime:   utils.DealDateTimeZero(v.PublishTime, utils.FormatDateTime),
-			PptPage:       pptPage,
-		}
-		publicPptList = append(publicPptList, tmpV)
-		publicPptListMap[v.AdminId] = publicPptList
-	}
-
-	// 创建人信息
-	systemAdminMap := make(map[int]*system.Admin)
-	systemAdminList, err := system.GetAdminListByIdList(adminIdList)
-	if err != nil {
-		return
-	}
-	for _, v := range systemAdminList {
-		systemAdminMap[v.AdminId] = v
-	}
-
-	// 公开分享的用户列表
-	{
-		for _, v := range publicAdminIdList {
-			systemAdmin, ok := systemAdminMap[v]
-			if !ok {
-				continue
-			}
-
-			// ppt 列表信息
-			respGroupPptNameListItemList, ok := publicPptListMap[v]
-			if !ok {
-				respGroupPptNameListItemList = make([]*ppt_english.RespGroupPptNameListItem, 0)
-			}
-
-			// ppt 分组信息
-			tmpRespGroupListItem := &ppt_english.RespGroupListItem{
-				GroupId:   int64(systemAdmin.AdminId),
-				GroupName: systemAdmin.RealName + "的PPT",
-				AdminId:   systemAdmin.AdminId,
-				IsShare:   1,
-				OnlyOld:   false,
-				PptList:   respGroupPptNameListItemList,
-			}
-			ret.PublicList = append(ret.PublicList, tmpRespGroupListItem)
-		}
-	}
-
-	myGrantPPtIdMap := make(map[int]int) //我分配的ppt的id集合
-	// 共享Ppt
-	{
-		for _, v := range grantPptList {
-			pptPage := 0
-			// 因之前并没有存储PPT页数字段,所以此处读取PPT内容的长度
-			if v.Content != "" {
-				contents := make([]PageContent, 0)
-				if e := json.Unmarshal([]byte(v.Content), &contents); e != nil {
-					err = errors.New("解析PPT内容页数失败: " + e.Error())
-					return
-				}
-			}
-
-			title := v.Title
-			if adminInfo, ok := systemAdminMap[v.AdminId]; ok {
-				title = adminInfo.RealName + "———" + title
-			}
-
-			tmp := &ppt_english.RespGroupPptNameListItem{
-				AdminId: v.AdminId,
-				//GroupPptId:    v.GroupPptId,
-				PptId:         int64(v.PptId),
-				AdminRealName: v.AdminRealName,
-				Title:         title,
-				PptVersion:    v.PptVersion,
-				IsSingleShare: v.IsShare,
-				PptxUrl:       v.PptxUrl,
-				ReportId:      v.ReportId,
-				ReportCode:    v.ReportCode,
-				PptCreateTime: v.CreateTime.Format(utils.FormatDateTime),
-				PptModifyTime: v.ModifyTime.Format(utils.FormatDateTime),
-				PublishTime:   utils.DealDateTimeZero(v.PublishTime, utils.FormatDateTime),
-				PptPage:       pptPage,
-			}
-
-			if v.AdminId == adminId {
-				tmp.IsGrant = 1
-				myPptList = append(myPptList, tmp)
-				myGrantPPtIdMap[v.PptId] = v.PptId
-			} else {
-				tmp.IsReceived = 1
-				otherPptList = append(otherPptList, tmp)
-			}
-		}
-		grantList[0].PptList = myPptList
-		grantList[1].PptList = otherPptList
-		ret.GrantList = grantList
-	}
-
-	// 处理公共ppt里面的关于自个的ppt是否有配置权限的字段数据变更
-	for k, publicList := range ret.PublicList {
-		for kk, pptInfo := range publicList.PptList {
-			// 是否有过权限配置
-			if _, ok := myGrantPPtIdMap[int(pptInfo.PptId)]; ok {
-				pptInfo.IsGrant = 1
-			}
-			publicList.PptList[kk] = pptInfo
-		}
-		ret.PublicList[k] = publicList
-	}
-
-	for k, privateList := range ret.PrivateList {
-		for kk, pptInfo := range privateList.PptList {
-			// 是否有过权限配置
-			if _, ok := myGrantPPtIdMap[int(pptInfo.PptId)]; ok {
-				pptInfo.IsGrant = 1
-			}
-			privateList.PptList[kk] = pptInfo
-		}
-		ret.PrivateList[k] = privateList
-	}
-
-	return
-	//则过滤空文件夹
-	//公共ppt
-	pubList := make([]*ppt_english.RespGroupListItem, 0)
-	for _, v := range ret.PublicList {
-		if len(v.PptList) > 0 {
-			pubList = append(pubList, v)
-		}
-	}
-	ret.PublicList = pubList
-
-	// 私有ppt
-	priList := make([]*ppt_english.RespGroupListItem, 0)
-	for _, v := range ret.PrivateList {
-		if len(v.PptList) > 0 {
-			priList = append(priList, v)
-		}
-	}
-	ret.PrivateList = priList
-	return
-}
-
-// ShareSingleGroupPptEnglishEnglish 共享单个ppt/取消共享单个ppt,返回共享状态
-// @Author roc
-// @Time 2022-08-29 15:22:20
-func ShareSingleGroupPptEnglish(pptId int, adminId int) (pptInfo *ppt_english.PptEnglish, err error) {
-	//判断当前登录者是否有共享的权限
-	pptInfo, err = ppt_english.GetPptEnglishById(pptId)
-	if err != nil {
-		if utils.IsErrNoRow(err) {
-			err = errors.New("当前目录下的ppt不存在")
-			return
-		}
-		err = errors.New("目录下的ppt查询出错:" + err.Error())
-		return
-	}
-	if pptInfo.AdminId != adminId {
-		err = errors.New("该Ppt不是本人创建")
-		return
-	}
-
-	//判断当前的共享状态
-	if pptInfo.IsShare > 0 {
-		pptInfo.IsShare = 0
-		err = pptInfo.Update([]string{"IsShare"})
-		if err != nil {
-			err = errors.New(err.Error())
-			return
-		}
-	} else {
-		pptInfo.IsShare = 1
-		err = pptInfo.Update([]string{"IsShare"})
-		if err != nil {
-			err = errors.New(err.Error())
-			return
-		}
-	}
-	return
-}
-
-func GetMyPptEnglishList(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{}
-
-	condition += ` AND admin_id=? `
-	pars = append(pars, adminId)
-
-	if keyword != `` {
-		condition += ` AND (title LIKE ? OR admin_real_name LIKE ? ) `
-		pars = utils.GetLikeKeywordPars(pars, keyword, 2)
-	}
-	pptList, err := ppt_english.GetAllPptEnglishList(condition, pars)
-
-	if len(pptList) <= 0 {
-		return
-	}
-
-	var pptContent []services.PPTContent
-	for _, v := range pptList {
-		if v.PptPage == 0 {
-			err = json.Unmarshal([]byte(v.Content), &pptContent)
-			if err != nil {
-				return
-			}
-			v.PptPage = len(pptContent)
-		}
-		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),
-			PptModifyTime: v.ModifyTime.Format(utils.FormatDateTime),
-			AdminId:       v.AdminId,
-			AdminRealName: v.AdminRealName,
-			IsSingleShare: v.IsShare,
-			PptxUrl:       v.PptxUrl,
-			ReportId:      v.ReportId,
-			ReportCode:    v.ReportCode,
-			PublishTime:   utils.DealDateTimeZero(v.PublishTime, utils.FormatDateTime),
-			PptPage:       v.PptPage,
-		}
-		list = append(list, tmpV)
-	}
-
-	ret.List = list
-	ret.Total = len(list)
-	return
-}
-
-// GetSharePptList 公共目录下的ppt列表
-// @Author roc
-// @Time 2022-08-29 16:27:59
-func GetSharePptEnglishList(adminId int, keyword string, isPrivate bool) (ret ppt_english.RespGroupPptList, err error) {
-	list := make([]*ppt_english.RespGroupPptListItem, 0)
-	ret.List = list
-
-	var condition string
-	var pars []interface{}
-
-	// 公开的ppt
-	condition += ` AND is_share=? `
-	if isPrivate {
-		pars = append(pars, 0)
-	} else {
-		pars = append(pars, 1)
-	}
-
-	if adminId > 0 {
-		condition += ` AND admin_id=? `
-		pars = append(pars, adminId)
-	}
-	if keyword != `` {
-		condition += ` AND (title LIKE ? OR admin_real_name LIKE ? ) `
-		pars = utils.GetLikeKeywordPars(pars, keyword, 2)
-	}
-	pptList, err := ppt_english.GetAllPptEnglishList(condition, pars)
-
-	if len(pptList) <= 0 {
-		return
-	}
-
-	var pptContent []services.PPTContent
-	for _, v := range pptList {
-		if v.PptPage == 0 {
-			err = json.Unmarshal([]byte(v.Content), &pptContent)
-			if err != nil {
-				return
-			}
-			v.PptPage = len(pptContent)
-		}
-		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),
-			PptModifyTime: v.ModifyTime.Format(utils.FormatDateTime),
-			AdminId:       v.AdminId,
-			AdminRealName: v.AdminRealName,
-			IsSingleShare: v.IsShare,
-			PptxUrl:       v.PptxUrl,
-			ReportId:      v.ReportId,
-			ReportCode:    v.ReportCode,
-			PublishTime:   utils.DealDateTimeZero(v.PublishTime, utils.FormatDateTime),
-			PptPage:       v.PptPage,
-		}
-		list = append(list, tmpV)
-	}
-
-	ret.List = list
-	ret.Total = len(list)
-	return
-}
-
-// GetGrantPptList 公共目录下的ppt列表
-// @Author roc
-// @Time 2022-09-05 15:50:25
-func GetGrantPptEnglishList(adminId int, keyword, sourceType string) (ret ppt_english.RespGroupPptList, err error) {
-	list := make([]*ppt_english.RespGroupPptListItem, 0)
-	ret.List = list
-
-	var condition string
-	var pars []interface{}
-
-	switch sourceType {
-	case "my":
-		condition += ` AND a.admin_id = ? `
-		pars = append(pars, adminId)
-	case "other":
-		condition += ` AND a.admin_id != ? AND (b.department_id = 1 OR b.grant_admin_id = ?) `
-		pars = append(pars, adminId, adminId)
-	default:
-		err = errors.New("无效的来源")
-		return
-	}
-
-	if keyword != `` {
-		condition += ` AND a.title LIKE ? `
-		pars = utils.GetLikeKeywordPars(pars, keyword, 1)
-	}
-
-	pptList, err := ppt_english.GetGrantList(condition, pars)
-	if err != nil {
-		return
-	}
-	if len(pptList) <= 0 {
-		return
-	}
-
-	var pptContent []services.PPTContent
-	for _, v := range pptList {
-		if v.PptPage == 0 {
-			err = json.Unmarshal([]byte(v.Content), &pptContent)
-			if err != nil {
-				return
-			}
-			v.PptPage = len(pptContent)
-		}
-		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),
-			PptModifyTime: v.ModifyTime.Format(utils.FormatDateTime),
-			AdminId:       v.AdminId,
-			AdminRealName: v.AdminRealName,
-			PptVersion:    v.PptVersion,
-			IsSingleShare: v.IsShare,
-			PptxUrl:       v.PptxUrl,
-			ReportId:      v.ReportId,
-			ReportCode:    v.ReportCode,
-			PublishTime:   utils.DealDateTimeZero(v.PublishTime, utils.FormatDateTime),
-			PptPage:       v.PptPage,
-		}
-		list = append(list, tmpV)
-	}
-
-	ret.List = list
-	ret.Total = len(list)
-	return
-}
-
-// GetEnglishCopyUsableTitle 根据原标题获取复制/转换可用的标题
-func GetEnglishCopyUsableTitle(title string) (newTitle string, err error) {
-	if title == "" {
-		return
-	}
-	// 标题列表
-	titles, e := ppt_english.GetPPTTitleList()
-	if e != nil {
-		err = errors.New("获取英文PPT标题列表失败, Err: " + e.Error())
-		return
-	}
-	if !utils.InArrayByStr(titles, title) {
-		newTitle = title
-		return
-	}
-	// 新标题
-	titleFormat := title + "(%d)"
-	for i := 1; i < 999; i++ {
-		newTitle = fmt.Sprintf(titleFormat, i)
-		if !utils.InArrayByStr(titles, newTitle) {
-			return
-		}
-	}
-	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
-	}
-
-	var pptContent []services.PPTContent
-	for _, v := range pptList {
-		if v.PptPage == 0 {
-			err = json.Unmarshal([]byte(v.Content), &pptContent)
-			if err != nil {
-				return
-			}
-			v.PptPage = len(pptContent)
-		}
-		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,
-			PptPage:       v.PptPage,
-		}
-		list = append(list, tmpV)
-	}
-
-	ret.List = list
-	ret.Total = len(list)
-	return
-}

+ 0 - 7
services/system.go

@@ -2,7 +2,6 @@ package services
 
 import (
 	"eta_gn/eta_api/models/company"
-	"eta_gn/eta_api/models/roadshow"
 	"eta_gn/eta_api/models/system"
 	"eta_gn/eta_api/utils"
 	"fmt"
@@ -37,12 +36,6 @@ func GetRoleTypeCode(roleType string) string {
 	return roleTypeCode
 }
 
-type AdminGroup struct {
-	GroupId        int    `description:"分组id"`
-	GroupName      string `description:"分组名称"`
-	ResearcherList []*roadshow.Researcher
-}
-
 // CheckAdminIsSameBigGroup 判断是否两个系统用户是否同一个大组内
 func CheckAdminIsSameBigGroup(adminInfo1, adminInfo2 *system.Admin) (isSame bool, err error) {
 	// 如果销售和创建人是同一个小组