package controllers import ( "hongze/hongze_clpt/models" "hongze/hongze_clpt/services" "hongze/hongze_clpt/utils" "strconv" ) type ChartController struct { BaseAuthController } // @Title 图表详情 // @Description 我的收藏接口 // @Param ChartId query int true "图表ID" // @Success 200 {object} models.CygxChartDetail // @router /detail [get] func (this *ChartController) Detail() { br := new(models.BaseResponse).Init() defer func() { this.Data["json"] = br this.ServeJSON() }() user := this.User if user == nil { br.Msg = "请重新登录" br.Ret = 408 return } mobile := user.Mobile if mobile == "" { br.Msg = "请绑定手机号!" return } chartId, _ := this.GetInt("ChartId") if chartId <= 0 { br.Msg = "图表信息不存在!" return } detail, err := models.GetChartDetailById(chartId, user.UserId) if err != nil { br.Msg = "获取信息失败" br.ErrMsg = "获取信息失败,Err:" + err.Error() return } chartUserTokenByMobile, _ := services.GetUserTokenByMobile(mobile) if chartUserTokenByMobile != "" { GetIsCollectionChart, err := services.GetIsCollectionChart(mobile, chartId) if err != nil { br.Msg = "获取信息失败" br.ErrMsg = "获取三方关注信息失败,Err:" + err.Error() return } detail.IsCollection = GetIsCollectionChart detail.HttpUrl = utils.CHART_INFO_HTTP_URL + strconv.Itoa(chartId) + "?token=" + chartUserTokenByMobile } else { if detail.CollectionNum > 0 { detail.IsCollection = true } } go services.ServerAddCygxChartRecord(user, chartId) //用户阅读图表,添加浏览记录 go services.KeyChartWxUserRaiLabelRedisAdd(chartId, user.UserId, "") //用户阅读图表,添加浏览记录 br.Ret = 200 br.Success = true br.Msg = "获取成功" br.Data = detail }