You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

56 lines
1.2 KiB

package service
import (
"context"
"time"
"go-common/app/admin/main/growup/model"
)
// Banners Get Banners
func (s *Service) Banners(c context.Context, from, limit int64) (total int64, bs []*model.Banner, err error) {
total, err = s.dao.TotalBannerCount(c)
if err != nil {
return
}
bs, err = s.dao.Banners(c, from, limit)
return
}
// AddBanner Add Banner
func (s *Service) AddBanner(c context.Context, image, link string, startAt, endAt int64) (dup int64, err error) {
if startAt > endAt {
return
}
dup, err = s.dao.DupBanner(c, startAt, endAt, time.Now().Unix())
if err != nil {
return
}
if dup > 0 {
return
}
_, err = s.dao.InsertBanner(c, image, link, startAt, endAt)
return
}
// EditBanner Update Banner
func (s *Service) EditBanner(c context.Context, id, startAt, endAt int64, image, link string) (dup int64, err error) {
if startAt > endAt {
return
}
dup, err = s.dao.DupEditBanner(c, startAt, endAt, time.Now().Unix(), id)
if err != nil {
return
}
if dup > 0 {
return
}
_, err = s.dao.UpdateBanner(c, image, link, startAt, endAt, id)
return
}
// Off set end time to now
func (s *Service) Off(c context.Context, endAt, id int64) (err error) {
_, err = s.dao.UpdateBannerEndAt(c, endAt, id)
return
}