yanxuan_special.go 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  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. "time"
  9. )
  10. // 更新研选专栏 写入首页最新 cygx_resource_data 表
  11. func UpdateYanxuanSpecialResourceData(sourceId int) {
  12. var err error
  13. defer func() {
  14. if err != nil {
  15. go alarm_msg.SendAlarmMsg(fmt.Sprint("更新研选专栏失败ourceId: ", sourceId), 2)
  16. }
  17. }()
  18. var source = utils.CYGX_OBJ_YANXUANSPECIAL
  19. var condition string
  20. var pars []interface{}
  21. condition = ` AND status = 3 AND id = ? `
  22. pars = append(pars, sourceId)
  23. total, e := cygx.GetCygxYanxuanSpecialCount(condition, pars)
  24. if e != nil {
  25. err = errors.New("GetCygxYanxuanSpecialCount, Err: " + e.Error())
  26. return
  27. }
  28. //如果取消发布了就做删除处理
  29. if total == 0 {
  30. e = cygx.DeleteResourceData(sourceId, source)
  31. if e != nil {
  32. err = errors.New("DeleteResourceData, Err: " + e.Error())
  33. return
  34. }
  35. } else {
  36. //判断是否存在,如果不存在就新增,存在就更新
  37. totalData, e := cygx.GetCygxResourceDataBySourceAndIdCount(sourceId, source)
  38. if e != nil {
  39. err = errors.New("GetCygxReportSelectionBySourceAndId, Err: " + e.Error())
  40. return
  41. }
  42. publishDate := time.Now().Format(utils.FormatDateTime)
  43. item := new(cygx.CygxResourceData)
  44. item.SourceId = sourceId
  45. item.Source = source
  46. item.PublishDate = publishDate
  47. item.CreateTime = time.Now()
  48. if totalData == 0 {
  49. _, e := cygx.AddCygxResourceData(item)
  50. if e != nil {
  51. err = errors.New("AddCygxResourceData, Err: " + e.Error())
  52. return
  53. }
  54. } else {
  55. e = cygx.UpdateResourceDataByItem(item)
  56. if e != nil {
  57. err = errors.New("UpdateResourceDataByItem, Err: " + e.Error())
  58. return
  59. }
  60. }
  61. }
  62. return
  63. }