Browse Source

fix: API-活动列表查询类型子类

hsun 3 years ago
parent
commit
f6b5d419cf

+ 7 - 3
controller/activity/activity.go

@@ -82,9 +82,11 @@ func _handleListQuery(c *gin.Context) (string, []interface{}, string) {
 	}
 	reqType := c.DefaultQuery("activity_type", "0")
 	if reqType != "0" {
-		activityType, _ := strconv.Atoi(reqType)
-		condition += ` AND activity_type_id = ?`
-		pars = append(pars, activityType)
+		activityTypeId, _ := strconv.Atoi(reqType)
+		activityTypeIds, _ := activity.GetTypeIdsByPid(activityTypeId)
+		activityTypeIds = append(activityTypeIds, activityTypeId)
+		condition += ` AND activity_type_id IN (?)`
+		pars = append(pars, activityTypeIds)
 	}
 	return condition, pars, order
 }
@@ -100,6 +102,7 @@ func _handleListQuery(c *gin.Context) (string, []interface{}, string) {
 // @Param activity_id query int true "活动ID"
 // @Success 200 {string} string "操作成功"
 // @failure 400 {string} string "操作失败"
+// @failure 4001 {object} activity.RemindCheckInfo "指定错误"
 // @Router /activity/addRemind [post]
 func AddRemind(c *gin.Context) {
 	var req activity2.RemindReq
@@ -168,6 +171,7 @@ func CancelRemind(c *gin.Context) {
 // @Param activity_id query int true "活动ID"
 // @Success 200 {string} string "操作成功"
 // @failure 400 {string} string "操作失败"
+// @failure 4001 {object} activity.RegisterCheckInfo "指定错误"
 // @Router /activity/registerActivity [post]
 func RegisterActivity(c *gin.Context) {
 	var req activity2.RegisterReq

+ 9 - 0
models/tables/yb_activity_type/query.go

@@ -0,0 +1,9 @@
+package yb_activity_type
+
+import "hongze/hongze_yb/global"
+
+// GetTypeByPid 根据pid获取活动类型
+func GetTypeByPid(pid int) (typeList []*YbActivityType, err error) {
+	err = global.DEFAULT_MYSQL.Model(YbActivityType{}).Where("pid", pid).Scan(&typeList).Error
+	return
+}

+ 0 - 2
services/activity/activity.go

@@ -70,10 +70,8 @@ func PageList(condition string, pars []interface{}, page, limit int, order strin
 			temp.ActivityState = getActivityStateByTime(activity.StartTime, activity.EndTime)
 			// 是否有回放
 			tempActivity := activity
-			fmt.Println("活动ID", tempActivity.ActivityID)
 			_, ok := voiceMap[tempActivity.ActivityID]
 			if ok {
-				fmt.Println("录音OK", ok)
 				temp.HasPlayBack = 1
 			}
 			// 是否有提醒

+ 21 - 0
services/activity/activity_type.go

@@ -0,0 +1,21 @@
+package activity
+
+import (
+	"hongze/hongze_yb/models/tables/yb_activity_type"
+	"log"
+)
+
+// GetTypeIdsByPid 根据类型ID获取所有子类id
+func GetTypeIdsByPid(pid int) (typeIds []int, err error) {
+	typeList, err := yb_activity_type.GetTypeByPid(pid)
+	if err != nil {
+		log.Print(err.Error())
+		return
+	}
+	if typeList != nil {
+		for _, item := range typeList{
+			typeIds = append(typeIds, item.ActivityTypeID)
+		}
+	}
+	return
+}