12345678910111213141516171819202122232425262728293031323334353637383940 |
- package flexCdn
- import (
- "context"
- v1 "github.com/go-nunu/nunu-layout-advanced/api/v1"
- "github.com/go-nunu/nunu-layout-advanced/internal/repository"
- )
- type CcRepository interface {
- GetCcList(ctx context.Context, serviceId int64) ([]v1.CCList, error)
- GetCcId(ctx context.Context, serviceId int64, ip string) (int64, error)
- }
- func NewCcRepository(
- repository *repository.Repository,
- ) CcRepository {
- return &ccRepository{
- Repository: repository,
- }
- }
- type ccRepository struct {
- *repository.Repository
- }
- func (r *ccRepository) GetCcList(ctx context.Context, serviceId int64) ([]v1.CCList, error) {
- var req []v1.CCList
- if err := r.DBWithName(ctx,"cdn").Table("cloud_ip_items").Where("sourceServerId = ? AND state = 1", serviceId).Select("value,type,reason,sourceURL,sourceUserAgent,createdAt,expiredAt").Scan(&req).Error; err != nil {
- return nil, err
- }
- return req, nil
- }
- func (r *ccRepository) GetCcId(ctx context.Context, serviceId int64, ip string) (int64, error) {
- var req int64
- if err := r.DBWithName(ctx,"cdn").Table("cloud_ip_items").Where("sourceServerId = ? AND value = ? AND state = 1", serviceId, ip).Select("id").Scan(&req).Error; err != nil {
- return 0, err
- }
- return req, nil
- }
|