calendar.go 4.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152
  1. package calendar
  2. import (
  3. "errors"
  4. "spaceofcheng/services/models/calendar"
  5. "spaceofcheng/services/models/model"
  6. "spaceofcheng/services/service"
  7. "spaceofcheng/services/utils"
  8. )
  9. // CalendarServ 系统处理
  10. type CalendarServ struct {
  11. ctx *utils.Context
  12. dao *calendar.CalendarDAO
  13. }
  14. // NewCalendarServ 初始化
  15. func NewCalendarServ(ctx *utils.Context) *CalendarServ {
  16. return &CalendarServ{
  17. ctx: ctx,
  18. dao: calendar.NewCalendarDAO(ctx),
  19. }
  20. }
  21. // GetCalendarList 后台日历列表
  22. func (s *CalendarServ) GetCalendarList(caseid, name, phone, makeStatus string, page, pageSize int) (map[string]interface{}, error) {
  23. if pageSize == 0 {
  24. pageSize = service.PAGENUM
  25. }
  26. list, err := s.dao.GetCalendarList(caseid, name, phone, makeStatus, page, pageSize)
  27. if err != nil {
  28. utils.LogError("获取日历活动列表失败: " + err.Error())
  29. return nil, errors.New("获取日历活动列表失败")
  30. }
  31. total, err := s.dao.GetCalendarListCount(caseid, name, phone, makeStatus)
  32. if err != nil {
  33. utils.LogError("获取日历活动列表失败: " + err.Error())
  34. return nil, errors.New("获取日历活动列表失败")
  35. }
  36. return map[string]interface{}{
  37. "list": list,
  38. "pageSize": pageSize,
  39. "pagenum": total,
  40. "page": page,
  41. }, nil
  42. }
  43. // GetCalendarListFront 前台活动我的日历列表
  44. func (s *CalendarServ) GetCalendarListFront(customerId string, page, pageSize int) (map[string]interface{}, error) {
  45. if pageSize == 0 {
  46. pageSize = service.PAGENUM
  47. }
  48. list, err := s.dao.GetCalendarListFront(customerId, page, pageSize)
  49. if err != nil {
  50. utils.LogError("获取日历活动列表失败: " + err.Error())
  51. return nil, errors.New("获取日历活动列表失败")
  52. }
  53. total, err := s.dao.GetCalendarListFrontCount(customerId)
  54. if err != nil {
  55. utils.LogError("获取日历活动列表失败: " + err.Error())
  56. return nil, errors.New("获取日历活动列表失败")
  57. }
  58. return map[string]interface{}{
  59. "list": list,
  60. "pageSize": pageSize,
  61. "pagenum": total,
  62. "page": page,
  63. }, nil
  64. }
  65. // GetCalendarFrontDetailById 获取日历活动详情
  66. func (s *CalendarServ) GetCalendarFrontDetailById(calendarId string) (*calendar.CalendarFrontDetail, error) {
  67. list, err := s.dao.GetCalendarFrontDetailById(calendarId)
  68. if err != nil {
  69. utils.LogError("获取日历活动详情失败: " + err.Error())
  70. return nil, errors.New("获取日历活动详情失败")
  71. }
  72. if len(list) <= 0 {
  73. return nil, nil
  74. }
  75. img, err := s.dao.GetCalendarFrontImgDetailById(calendarId)
  76. if err != nil {
  77. utils.LogError("获取日历活动详情失败: " + err.Error())
  78. return nil, errors.New("获取日历活动详情失败")
  79. }
  80. detail := list[0]
  81. detail.Imgs = img
  82. return &detail, nil
  83. }
  84. // ChangeMakeStaus 制作完成
  85. func (s *CalendarServ) ChangeMakeStaus(calendarId string) error {
  86. err := s.dao.ChangeMakeStaus(calendarId)
  87. if err != nil {
  88. utils.LogError("修改日历活动状态失败: " + err.Error())
  89. return errors.New("修改日历活动状态失败")
  90. }
  91. return nil
  92. }
  93. // GetCalendarList 后台日历列表Excel导出
  94. func (s *CalendarServ) GetCalendarListExcel(caseid, name, phone string) ([]calendar.CalendarList, error) {
  95. list, err := s.dao.GetCalendarListExcel(caseid, name, phone)
  96. if err != nil {
  97. utils.LogError("获取日历excel失败: " + err.Error())
  98. return nil, errors.New("获取日历excel失败")
  99. }
  100. return list, nil
  101. }
  102. // GetCalendarFrontImgDetailById 获取日历详情图片
  103. func (s *CalendarServ) GetCalendarImgs(calendarId string) ([]model.TaCalendarImg, error) {
  104. list, err := s.dao.GetCalendarFrontImgDetailById(calendarId)
  105. if err != nil {
  106. utils.LogError("获取日历图片失败: " + err.Error())
  107. return nil, errors.New("获取日历图片失败")
  108. }
  109. return list, nil
  110. }
  111. // AddCalendar 新增日历活动
  112. func (s *CalendarServ) AddCalendar(calendar model.TaCustomerCalendar) (*model.TaCustomerCalendar, error) {
  113. customerCalendar, err := s.dao.AddCalendar(calendar)
  114. if err != nil {
  115. utils.LogError("新增日历活动失败: " + err.Error())
  116. return nil, errors.New("新增日历活动失败")
  117. }
  118. return customerCalendar, nil
  119. }
  120. // AddCalendarImg 新增日历活动图片
  121. func (s *CalendarServ) AddCalendarImg(img []model.TaCalendarImg, calendarId string) error {
  122. for i := 0; i < len(img); i++ {
  123. img[i].CustomerCalendarId = calendarId
  124. err := s.dao.AddCalendarImg(img[i])
  125. if err != nil {
  126. utils.LogError("新增日历活动失败: " + err.Error())
  127. return errors.New("新增日历活动失败")
  128. }
  129. }
  130. return nil
  131. }
  132. func (s *CalendarServ) IsCustomerAttend(customerId string) (bool, error) {
  133. flag, err := s.dao.IsCustomerAttend(customerId)
  134. if err != nil {
  135. utils.LogError("查询用户是否参与失败: " + err.Error())
  136. return false, errors.New("查询用户是否参与失败")
  137. }
  138. return flag, nil
  139. }