19 Star 54 Fork 27

Jonluo/baasmanager

Create your Gitee Account
Explore and code with more than 14 million developers,Free private repositories !:)
Sign up
文件
Clone or Download
channel_service.go 2.38 KB
Copy Edit Raw Blame History
Jonluo authored 2019-05-16 11:39 +08:00 . 重构服务结构
package service
import (
"gitee.com/jonluo/baasmanager/apimanager/entity"
"github.com/go-xorm/xorm"
"gitee.com/jonluo/baasmanager/apimanager/model"
"encoding/json"
"time"
)
type ChannelService struct {
DbEngine *xorm.Engine
FabircService *FabricService
}
func (l *ChannelService) Add(channel *entity.Channel) (bool, string) {
i, err := l.DbEngine.Insert(channel)
if err != nil {
logger.Error(err.Error())
}
if i > 0 {
return true, "add success"
}
return false, "add fail"
}
func (l *ChannelService) Update(channel *entity.Channel) (bool, string) {
i, err := l.DbEngine.Where("id = ?", channel.Id).Update(channel)
if err != nil {
logger.Error(err.Error())
}
if i > 0 {
return true, "update success"
}
return false, "update fail"
}
func (l *ChannelService) Delete(id int) (bool, string) {
i, err := l.DbEngine.Where("id = ?", id).Delete(&entity.Channel{})
if err != nil {
logger.Error(err.Error())
}
if i > 0 {
return true, "delete success"
}
return false, "delete fail"
}
func (l *ChannelService) GetByChannel(channel *entity.Channel) (bool, *entity.Channel) {
has, err := l.DbEngine.Get(channel)
if err != nil {
logger.Error(err.Error())
}
return has, channel
}
func (l *ChannelService) GetList(channel *entity.Channel, page, size int) (bool, []*entity.Channel) {
channels := make([]*entity.Channel, 0)
values := make([]interface{}, 0)
where := "1=1"
err := l.DbEngine.Where(where, values...).Limit(size, page).Find(&channels)
if err != nil {
logger.Error(err.Error())
}
return true, channels
}
func (l *ChannelService) GetAllList(chainId int) (bool, []*entity.Channel) {
channels := make([]*entity.Channel, 0)
err := l.DbEngine.Where("chain_id = ?", chainId).Find(&channels)
if err != nil {
logger.Error(err.Error())
}
return true, channels
}
func (l *ChannelService) AddChannel(chain *entity.Chain, channel *entity.Channel) (bool, string) {
fc := entity.ParseFabircChainAndChannel(chain, channel)
resp := l.FabircService.DefChannel(fc)
var ret model.RespData
err := json.Unmarshal(resp, &ret)
if err != nil {
return false, "add fail"
}
if ret.Code == 0 {
channel.Created = time.Now().Unix()
return l.Add(channel)
} else {
return false, "add fail"
}
}
func NewChannelService(engine *xorm.Engine, fabircService *FabricService) *ChannelService {
return &ChannelService{
DbEngine: engine,
FabircService: fabircService,
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/jonluo/baasmanager.git
git@gitee.com:jonluo/baasmanager.git
jonluo
baasmanager
baasmanager
3986dddaf5d2

Search