Browse Source

fix:修复自动保存ppt的bug

zqbao 9 tháng trước cách đây
mục cha
commit
bd08e210d9

+ 8 - 2
controllers/ppt_english.go

@@ -774,8 +774,14 @@ func (this *PptEnglishController) SaveLog() {
 		br.ErrMsg = "PPT目录信息异常"
 		return
 	}
-	if !pptMap.IsMoved && len(pptMapList) > 1 {
-		// 如果没有人为移动位置, 默认将当前ppt置顶
+	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()

+ 8 - 2
controllers/ppt_v2.go

@@ -747,8 +747,14 @@ func (this *PptV2Controller) SaveLog() {
 		br.ErrMsg = "PPT目录信息异常"
 		return
 	}
-	if !pptMap.IsMoved && len(pptMapList) > 1 {
-		// 如果没有人为移动位置, 默认将当前ppt置顶
+	count, err := models.GetPptMappingByGroupPptCountId(pptMap.GroupPptId, this.SysUser.AdminId)
+	if err != nil {
+		br.Msg = "查询映射关系失败"
+		br.ErrMsg = "查询映射关系失败, 保存失败, Err:" + err.Error()
+
+	}
+	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()

+ 8 - 0
models/ppt_english/ppt_english_group_mapping.go

@@ -78,6 +78,14 @@ func GetPptMappingByGroupPptId(groupPptId int64, adminId int) (item *PptEnglishG
 	return
 }
 
+// GetPptMappingByGroupPptId 查询根据映射ID,查询单个映射关系数量
+func GetPptMappingCountByGroupPptId(groupPptId int64, adminId int) (count int, err error) {
+	o := orm.NewOrmUsingDB("rddp")
+	sql := `select COUNT(*) AS count from ppt_english_group_mapping where group_ppt_id=? and admin_id=?`
+	err = o.Raw(sql, groupPptId, adminId).QueryRow(&count)
+	return
+}
+
 // Update 更新ppt目录映射的基本信息
 func (item *PptEnglishGroupMapping) Update(cols []string) (err error) {
 	o := orm.NewOrmUsingDB("rddp")

+ 8 - 0
models/ppt_v2_group_mapping.go

@@ -62,6 +62,14 @@ func GetPptMappingByGroupPptId(groupPptId int64, adminId int) (item *PptV2GroupM
 	return
 }
 
+// GetPptMappingByGroupPptId 查询根据映射ID,查询单个映射关系数量
+func GetPptMappingByGroupPptCountId(groupPptId int64, adminId int) (count int, err error) {
+	o := orm.NewOrmUsingDB("rddp")
+	sql := `select COUNT(*) AS count from ppt_v2_group_mapping where group_ppt_id=? and admin_id=?`
+	err = o.Raw(sql, groupPptId, adminId).QueryRow(&count)
+	return
+}
+
 // GetPptMappingByPptId 查询根据ppt_Id, 查询当映单个映射关系
 func GetPptMappingByPptId(pptId int64) (item *PptV2GroupMapping, err error) {
 	o := orm.NewOrmUsingDB("rddp")