askserie_video.go 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. package cygx
  2. import (
  3. "errors"
  4. "fmt"
  5. "hongze/hz_crm_api/models/cygx"
  6. "hongze/hz_crm_api/services/alarm_msg"
  7. "hongze/hz_crm_api/utils"
  8. "strconv"
  9. "strings"
  10. "time"
  11. )
  12. // 获取问答系列产业列表
  13. func GetCygxAskserieVideoLabelListMap(askserieVideoIds []int) (mapResp map[int][]*cygx.IndustrialActivityGroupManagementRep) {
  14. var err error
  15. defer func() {
  16. if err != nil {
  17. fmt.Println(err)
  18. go alarm_msg.SendAlarmMsg("获取产品内测的阅读数据,信息失败,GetCygxAskserieVideoLabelListMap Err:"+err.Error(), 3)
  19. }
  20. }()
  21. lenArr := len(askserieVideoIds)
  22. if lenArr == 0 {
  23. return
  24. }
  25. industrialList, e := cygx.GetCygxIndustrialAskserieVideoGroupManagementList(askserieVideoIds)
  26. if e != nil && e.Error() != utils.ErrNoRow() {
  27. err = errors.New("获取详情失败 GetCygxIndustrialAskserieVideoGroupManagementList Err" + e.Error())
  28. return
  29. }
  30. mapResp = make(map[int][]*cygx.IndustrialActivityGroupManagementRep, 0)
  31. for _, v := range industrialList {
  32. item := new(cygx.IndustrialActivityGroupManagementRep)
  33. item.IndustryName = v.IndustryName
  34. item.IndustrialManagementId = v.IndustrialManagementId
  35. item.ChartPermissionId = v.ChartPermissionId
  36. mapResp[v.AskserieVideoId] = append(mapResp[v.AskserieVideoId], item)
  37. }
  38. return
  39. }
  40. // 获取问答系列产业列表
  41. func GetCygxAskserieVideoLabelMap(askserieVideoIds []int) (mapResp map[int]string) {
  42. var err error
  43. defer func() {
  44. if err != nil {
  45. fmt.Println(err)
  46. go alarm_msg.SendAlarmMsg("获取产品内测的阅读数据,信息失败,GetCygxAskserieVideoLabelListMap Err:"+err.Error(), 3)
  47. }
  48. }()
  49. lenArr := len(askserieVideoIds)
  50. if lenArr == 0 {
  51. return
  52. }
  53. industrialList, e := cygx.GetCygxIndustrialAskserieVideoGroupManagementList(askserieVideoIds)
  54. if e != nil && e.Error() != utils.ErrNoRow() {
  55. err = errors.New("获取详情失败 GetCygxIndustrialAskserieVideoGroupManagementList Err" + e.Error())
  56. return
  57. }
  58. mapIndustryName := make(map[int][]string)
  59. mapResp = make(map[int]string, 0)
  60. for _, v := range industrialList {
  61. mapIndustryName[v.AskserieVideoId] = append(mapIndustryName[v.AskserieVideoId], v.IndustryName)
  62. }
  63. for k, v := range mapIndustryName {
  64. mapResp[k] = strings.Join(v, ",")
  65. }
  66. return
  67. }
  68. //func init() {
  69. // UpdateAskserieVideoResourceData(75)
  70. //}
  71. // 更新问答系列 写入首页最新 cygx_resource_data 表
  72. func UpdateAskserieVideoResourceData(sourceId int) {
  73. var err error
  74. defer func() {
  75. if err != nil {
  76. fmt.Println(err)
  77. go alarm_msg.SendAlarmMsg(fmt.Sprint("更新问答系列ourceId: ", sourceId, err.Error()), 2)
  78. }
  79. }()
  80. var source = utils.CYGX_OBJ_ASKSERIEVIDEO
  81. var condition string
  82. var pars []interface{}
  83. condition = ` AND publish_status = 1 AND askserie_video_id = ? `
  84. pars = append(pars, sourceId)
  85. total, e := cygx.GetCygxAskserieVideoCount(condition, pars)
  86. if e != nil {
  87. err = errors.New("GetCygxAskserieVideoCount, Err: " + e.Error())
  88. return
  89. }
  90. //如果取消发布了就做删除处理
  91. if total == 0 {
  92. e = cygx.DeleteResourceData(sourceId, source)
  93. if e != nil {
  94. err = errors.New("DeleteResourceData, Err: " + e.Error())
  95. return
  96. }
  97. } else {
  98. //判断是否存在,如果不存在就新增,存在就更新
  99. totalData, e := cygx.GetCygxResourceDataBySourceAndIdCount(sourceId, source)
  100. if e != nil {
  101. err = errors.New("GetCygxReportSelectionBySourceAndId, Err: " + e.Error())
  102. return
  103. }
  104. publishDate := time.Now().Format(utils.FormatDateTime)
  105. item := new(cygx.CygxResourceData)
  106. item.SourceId = sourceId
  107. item.Source = source
  108. item.PublishDate = publishDate
  109. item.CreateTime = time.Now()
  110. if totalData == 0 {
  111. _, e := cygx.AddCygxResourceData(item)
  112. if e != nil {
  113. err = errors.New("AddCygxResourceData, Err: " + e.Error())
  114. return
  115. }
  116. } else {
  117. e = cygx.UpdateResourceDataByItem(item)
  118. if e != nil {
  119. err = errors.New("UpdateResourceDataByItem, Err: " + e.Error())
  120. return
  121. }
  122. }
  123. }
  124. return
  125. }
  126. func init12() {
  127. var conditionupload string
  128. var pars []interface{}
  129. conditionupload = " AND voice_name LIKE '%科技问答%' "
  130. listVoice, err := cygx.GetActivityVoiceList(conditionupload, pars)
  131. if err != nil && err.Error() != utils.ErrNoRow() {
  132. fmt.Println(err)
  133. return
  134. }
  135. for _, v := range listVoice {
  136. activityId := v.ActivityId
  137. var industrialManagementIds []string
  138. industrialList, err := cygx.GetIndustrialActivityGroupManagementList(activityId, 1)
  139. if err != nil && err.Error() != utils.ErrNoRow() {
  140. fmt.Println(v.ActivityId)
  141. fmt.Println(err)
  142. return
  143. }
  144. for _, vi := range industrialList {
  145. industrialManagementIds = append(industrialManagementIds, strconv.Itoa(vi.IndustrialManagementId))
  146. }
  147. activityInfo, err := cygx.GetAddActivityInfoById(activityId)
  148. if err != nil {
  149. fmt.Println(v.ActivityId)
  150. fmt.Println(err)
  151. return
  152. }
  153. if activityInfo != nil {
  154. item := new(cygx.CygxAskserieVideo)
  155. //item.AskserieVideoId = askserieVideoId
  156. item.VideoName = v.VoiceName
  157. item.VideoUrl = v.VoiceUrl
  158. item.VideoDuration = v.VoicePlaySeconds
  159. item.ChartPermissionId = activityInfo.ChartPermissionId
  160. item.ChartPermissionName = activityInfo.ChartPermissionName
  161. item.PublishStatus = 1
  162. item.BackgroundImg = v.BackgroundImg
  163. item.ShareImg = v.ShareImg
  164. //item.AdminId = sysUser.AdminId
  165. item.ModifyDate = time.Now()
  166. item.PublishDate = utils.StrTimeToTime(activityInfo.ActivityTime)
  167. item.CreateTime = time.Now()
  168. fmt.Println(item.VideoDuration, "VideoDuration")
  169. fmt.Println(item.ShareImg, "ShareImg")
  170. fmt.Println(item.PublishDate, "PublishDate")
  171. //fmt.Println(item, strings.Join(industrialManagementIds, ","))
  172. newId, err := cygx.AddCygxAskserieVideo(item, strings.Join(industrialManagementIds, ","))
  173. fmt.Println(newId)
  174. if err != nil {
  175. fmt.Println(err)
  176. return
  177. }
  178. }
  179. }
  180. }