package calendar import ( "errors" "spaceofcheng/services/models/calendar" "spaceofcheng/services/models/model" "spaceofcheng/services/service" "spaceofcheng/services/utils" ) // CalendarServ 系统处理 type CalendarServ struct { ctx *utils.Context dao *calendar.CalendarDAO } // NewCalendarServ 初始化 func NewCalendarServ(ctx *utils.Context) *CalendarServ { return &CalendarServ{ ctx: ctx, dao: calendar.NewCalendarDAO(ctx), } } // GetCalendarList 后台日历列表 func (s *CalendarServ) GetCalendarList(caseid, name, phone, makeStatus string, page, pageSize int) (map[string]interface{}, error) { if pageSize == 0 { pageSize = service.PAGENUM } list, err := s.dao.GetCalendarList(caseid, name, phone, makeStatus, page, pageSize) if err != nil { utils.LogError("获取日历活动列表失败: " + err.Error()) return nil, errors.New("获取日历活动列表失败") } total, err := s.dao.GetCalendarListCount(caseid, name, phone, makeStatus) if err != nil { utils.LogError("获取日历活动列表失败: " + err.Error()) return nil, errors.New("获取日历活动列表失败") } return map[string]interface{}{ "list": list, "pageSize": pageSize, "pagenum": total, "page": page, }, nil } // GetCalendarListFront 前台活动我的日历列表 func (s *CalendarServ) GetCalendarListFront(customerId string, page, pageSize int) (map[string]interface{}, error) { if pageSize == 0 { pageSize = service.PAGENUM } list, err := s.dao.GetCalendarListFront(customerId, page, pageSize) if err != nil { utils.LogError("获取日历活动列表失败: " + err.Error()) return nil, errors.New("获取日历活动列表失败") } total, err := s.dao.GetCalendarListFrontCount(customerId) if err != nil { utils.LogError("获取日历活动列表失败: " + err.Error()) return nil, errors.New("获取日历活动列表失败") } return map[string]interface{}{ "list": list, "pageSize": pageSize, "pagenum": total, "page": page, }, nil } // GetCalendarFrontDetailById 获取日历活动详情 func (s *CalendarServ) GetCalendarFrontDetailById(calendarId string) (*calendar.CalendarFrontDetail, error) { list, err := s.dao.GetCalendarFrontDetailById(calendarId) if err != nil { utils.LogError("获取日历活动详情失败: " + err.Error()) return nil, errors.New("获取日历活动详情失败") } if len(list) <= 0 { return nil, nil } img, err := s.dao.GetCalendarFrontImgDetailById(calendarId) if err != nil { utils.LogError("获取日历活动详情失败: " + err.Error()) return nil, errors.New("获取日历活动详情失败") } detail := list[0] detail.Imgs = img return &detail, nil } // ChangeMakeStaus 制作完成 func (s *CalendarServ) ChangeMakeStaus(calendarId string) error { err := s.dao.ChangeMakeStaus(calendarId) if err != nil { utils.LogError("修改日历活动状态失败: " + err.Error()) return errors.New("修改日历活动状态失败") } return nil } // GetCalendarList 后台日历列表Excel导出 func (s *CalendarServ) GetCalendarListExcel(caseid, name, phone string) ([]calendar.CalendarList, error) { list, err := s.dao.GetCalendarListExcel(caseid, name, phone) if err != nil { utils.LogError("获取日历excel失败: " + err.Error()) return nil, errors.New("获取日历excel失败") } return list, nil } // GetCalendarFrontImgDetailById 获取日历详情图片 func (s *CalendarServ) GetCalendarImgs(calendarId string) ([]model.TaCalendarImg, error) { list, err := s.dao.GetCalendarFrontImgDetailById(calendarId) if err != nil { utils.LogError("获取日历图片失败: " + err.Error()) return nil, errors.New("获取日历图片失败") } return list, nil } // AddCalendar 新增日历活动 func (s *CalendarServ) AddCalendar(calendar model.TaCustomerCalendar) (*model.TaCustomerCalendar, error) { customerCalendar, err := s.dao.AddCalendar(calendar) if err != nil { utils.LogError("新增日历活动失败: " + err.Error()) return nil, errors.New("新增日历活动失败") } return customerCalendar, nil } // AddCalendarImg 新增日历活动图片 func (s *CalendarServ) AddCalendarImg(img []model.TaCalendarImg, calendarId string) error { for i := 0; i < len(img); i++ { img[i].CustomerCalendarId = calendarId err := s.dao.AddCalendarImg(img[i]) if err != nil { utils.LogError("新增日历活动失败: " + err.Error()) return errors.New("新增日历活动失败") } } return nil } func (s *CalendarServ) IsCustomerAttend(customerId string) (bool, error) { flag, err := s.dao.IsCustomerAttend(customerId) if err != nil { utils.LogError("查询用户是否参与失败: " + err.Error()) return false, errors.New("查询用户是否参与失败") } return flag, nil }