1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 |
- package channel
-
- import (
- "errors"
- "spaceofcheng/services/models/channel"
- "spaceofcheng/services/models/model"
- "spaceofcheng/services/service"
- "spaceofcheng/services/utils"
- )
-
- // ChannelServ 系统处理
- type ChannelServ struct {
- ctx *utils.Context
- dao *channel.ChannelDAO
- }
-
- // NewChannelServ 初始化
- func NewChannelServ(ctx *utils.Context) *ChannelServ {
- return &ChannelServ{
- ctx: ctx,
- dao: channel.NewChannelDAO(ctx),
- }
- }
-
- // GetChannelList 获取渠道列表
- func (s *ChannelServ) GetChannelList(caseid string, page, pageSize int) (map[string]interface{}, error) {
- if pageSize == 0 {
- pageSize = service.PAGENUM
- }
- channels, err := s.dao.GetChannels(caseid, page, pageSize)
- if err != nil {
- utils.LogError("获取渠道列表失败: " + err.Error())
- return nil, errors.New("获取渠道列表失败")
- }
- total, err := s.dao.GetChannelsCount(caseid)
- if err != nil {
- utils.LogError("获取渠道列表失败: " + err.Error())
- return nil, errors.New("获取渠道列表失败")
- }
- return map[string]interface{}{
- "list": channels,
- "pageSize": pageSize,
- "pagenum": total,
- "page": page,
- }, nil
- }
-
- // GetChannelById 根据渠道id获取渠道
- func (s *ChannelServ) GetChannelById(channelId string) (*model.TaChannel, error) {
- channel, err := s.dao.GetChannelById(channelId)
- if err != nil {
- utils.LogError("获取渠道信息失败: " + err.Error())
- return nil, errors.New("获取渠道信息失败")
- }
- return channel, nil
- }
-
- // SaveChannel 保存渠道
- func (s *ChannelServ) SaveChannel(channel model.TaChannel) (*model.TaChannel, error) {
- var newChannel *model.TaChannel
- var err error
- if channel.ChannelId == "" {
- newChannel, err = s.dao.AddNewChannel(channel)
- } else {
- err = s.dao.UpdateChannel(channel)
- newChannel = &channel
- }
- if err != nil {
- utils.LogError("保存渠道信息失败: " + err.Error())
- return nil, errors.New("保存渠道信息失败")
- }
- return newChannel, nil
- }
-
- // DeleteChannel 删除渠道
- func (s *ChannelServ) DeleteChannel(caseid string) error {
- err := s.dao.DeleteChannel(caseid)
- if err != nil {
- utils.LogError("删除渠道信息失败: " + err.Error())
- return errors.New("删除渠道信息失败")
- }
- return err
- }
|