zwxi 6 months ago
parent
commit
bdb89c1b4d

+ 34 - 95
controllers/bi_dashboard.go

@@ -15,8 +15,8 @@ type BIDaShboardController struct {
 }
 
 // GroupList
-// @Title 获取可见的目录列表
-// @Description 获取可见的目录列表接口
+// @Title 获取我的列表
+// @Description 获取我的列表接口
 // @Success 200 {object} models.RespGroupList
 // @router /my_list [get]
 func (this *BIDaShboardController) MyList() {
@@ -43,9 +43,9 @@ func (this *BIDaShboardController) MyList() {
 }
 
 // AddDashboard
-// @Title 新增ppt
-// @Description 新增ppt接口
-// @Param	request	body models.AddPptV2Req true "type json string"
+// @Title 新增看板
+// @Description 新增看板接口
+// @Param	request	body models.AddDashboardReq true "type json string"
 // @Success 200 Ret=200 新增成功
 // @router /add [post]
 func (this *BIDaShboardController) AddDashboard() {
@@ -110,133 +110,72 @@ func (this *BIDaShboardController) AddDashboard() {
 }
 
 // EditPpt
-// @Title 编辑ppt
-// @Description 编辑ppt接口
+// @Title 编辑看板
+// @Description 编辑看板接口
 // @Param	request	body models.AddPptV2Req true "type json string"
 // @Success 200 Ret=200 编辑成功
 // @router /edit [post]
-func (this *BIDaShboardController) EditPpt() {
+func (this *BIDaShboardController) EditDashboard() {
 	br := new(models.BaseResponse).Init()
 	defer func() {
 		this.Data["json"] = br
 		this.ServeJSON()
 	}()
-	var req models.AddPptV2Req
+	var req bi_dashboard.EditDashboardReq
 	err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
 	if err != nil {
 		br.Msg = "参数解析异常!"
 		br.ErrMsg = "参数解析失败,Err:" + err.Error()
 		return
 	}
-	if req.FirstPage.Title == "" {
+	if req.BiDashboardName == "" {
 		br.Msg = "标题不能为空"
 		return
 	}
-	item, err := models.GetPptV2ByTitleAndId(req.FirstPage.Title, this.SysUser.AdminId)
+	item, err := bi_dashboard.GetDashboardById(req.BiDashboardId)
 	if err != nil && !utils.IsErrNoRow(err) {
 		br.Msg = "获取数据异常!"
 		br.ErrMsg = "获取数据异常,Err:" + err.Error()
 		return
 	}
-	if item != nil && item.PptId != int(req.PptId) {
-		br.Msg = "标题已存在,不可重复添加"
-		br.IsSendEmail = false
-		return
-	}
-	pptInfo, err := models.GetPptV2ById(int(req.PptId))
-	if err != nil {
-		br.Msg = "信息获取失败"
-		br.ErrMsg = "信息获取失败,Err:" + err.Error()
-		return
-	}
 
 	// 判断权限
-	if pptInfo.AdminId != this.SysUser.AdminId {
-		_, err := models.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
-		}
+	if item.SysAdminId != this.SysUser.AdminId {
+		br.Msg = `无权编辑`
+		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
-	}
+	item.BiDashboardName = req.BiDashboardName
+	item.ModifyTime = time.Now()
 
-	pptMap, err := models.GetPptMappingByPptId(req.PptId)
-	if err != nil {
-		br.Msg = `该PPT信息不存在, 保存失败`
-		br.ErrMsg = `该PPT信息不存在, 保存失败, Err` + err.Error()
-		br.IsSendEmail = false
-		return
-	}
-	pptMapList, err := models.GetPptMappingListByGroupId(pptMap.GroupId)
-	if err != nil {
-		br.ErrMsg = "PPT目录信息异常"
-		return
-	}
-	count, err := models.GetPptMappingByGroupPptCountId(pptMap.GroupPptId, this.SysUser.AdminId)
-	if err != nil {
-		br.Msg = "查询映射关系失败"
-		br.ErrMsg = "查询映射关系失败, 保存失败, Err:" + err.Error()
-		return
-	}
-	if !pptMap.IsMoved && len(pptMapList) > 1 && count > 0 {
-		// 如果没有人为移动位置, 默认将当前ppt置顶
-		err = ppt.MoveGroupPpt(pptMap.GroupId, pptMap.GroupPptId, pptMapList[0].GroupPptId, 0, this.SysUser.AdminId)
-		if err != nil {
-			br.Msg = err.Error()
-			br.ErrMsg = "移动失败,Err:" + err.Error()
-			return
-		}
-	}
+	err = bi_dashboard.EditDashboard(item)
 
-	// 日志记录
-	{
-		logInfo := &models.PptV2SaveLog{
-			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,
+	err = bi_dashboard.DeleteBiDashboardDetail(req.BiDashboardId)
+
+	detailList := make([]*bi_dashboard.BiDashboardDetail, 0)
+	for _, v := range req.List {
+		item := &bi_dashboard.BiDashboardDetail{
+			BiDashboardId: req.BiDashboardId,
+			Type:          v.Type,
+			UniqueCode:    v.UniqueCode,
+			Sort:          v.Sort,
 			CreateTime:    time.Now(),
+			ModifyTime:    time.Now(),
 		}
-		_, err = models.AddPptV2SaveLog(logInfo)
+		detailList = append(detailList, item)
 	}
-
-	resp := models.AddPptResp{
-		PptId: req.PptId,
+	err = bi_dashboard.AddBiDashboardDetailMulti(detailList)
+	if err != nil {
+		br.Msg = "新增详情失败"
+		br.ErrMsg = "新增详情失败,Err:" + err.Error()
+		return
 	}
+
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "编辑成功"
 	br.IsAddLog = true
-	br.Data = resp
 }
 
 // DeletePpt

+ 22 - 1
models/bi_dashboard/bi_dashboard.go

@@ -59,7 +59,6 @@ func GetDashboardById(id int) (item *BiDashboard, err error) {
 	//o := orm.NewOrmUsingDB("rddp")
 	sql := `SELECT * FROM bi_dashboard WHERE bi_dashboard_id = ? limit 1`
 
-
 	//sql += `ORDER BY create_time DESC LIMIT ?,?`
 	//_, err = o.Raw(sql).QueryRows(&items)
 	err = global.DEFAULT_DmSQL.Raw(sql, id).First(&item).Error
@@ -71,3 +70,25 @@ type DashboardDetailResp struct {
 	*BiDashboard
 	List []*BiDashboardDetail
 }
+
+type AddDashboardReq struct {
+	List            []*AddDashboardListReq
+	BiDashboardName string `description:"看板名称"`
+}
+
+type AddDashboardListReq struct {
+	Type       int
+	UniqueCode string
+	Sort       int
+}
+
+type EditDashboardReq struct {
+	List            []*AddDashboardListReq
+	BiDashboardId   int    `description:"看板id"`
+	BiDashboardName string `description:"看板名称"`
+}
+
+// update
+func EditDashboard(item *BiDashboard) (err error) {
+	return global.DEFAULT_DmSQL.Model(item).Updates(item).Error
+}

+ 4 - 11
models/bi_dashboard/bi_dashboard_detail.go

@@ -37,14 +37,7 @@ func AddBiDashboardDetailMulti(items []*BiDashboardDetail) (err error) {
 	return global.DEFAULT_DmSQL.CreateInBatches(items, 100).Error
 }
 
-type AddDashboardReq struct {
-	List            []*AddDashboardListReq
-	//ClassifyId      int    `description:"分类id"`
-	BiDashboardName string `description:"看板名称"`
-}
-
-type AddDashboardListReq struct {
-	Type       int
-	UniqueCode string
-	Sort       int
-}
+// del
+func DeleteBiDashboardDetail(id int) (err error) {
+	return global.DEFAULT_DmSQL.Where("bi_dashboard_id = ?", id).Delete(&BiDashboardDetail{}).Error
+}