sys_company.go 1.8 KB
package domain

import (
	"context"
	"gitlab.fjmaimaimai.com/allied-creation/su-micro/pkg/transaction"
)

type SysCompany struct {
	Id        int64           `json:",omitempty"` // 唯一标识
	Name      string          `json:",omitempty"` // 公司名称
	Logo      string          `json:",omitempty"` // 公司图标
	AdminId   int64           `json:",omitempty"` // 管理员
	BaseInfo  CompanyBaseInfo `json:",omitempty"` // 基本信息
	Status    int             `json:",omitempty"` // 状态 1:启用 2:禁用
	CreatedAt int64           `json:",omitempty"`
	UpdatedAt int64           `json:",omitempty"`
	DeletedAt int64           `json:",omitempty"`
	Version   int             `json:",omitempty"`
}

type CompanyBaseInfo struct {
	UnifiedSocialCreditCode string `json:",omitempty"` // 统一社会信用代码
	ContactName             string `json:",omitempty"` // 联系人
	ContactPhone            string `json:",omitempty"` // 联系人电话
	Address                 string `json:",omitempty"` // 惬意地址
	Remark                  string `json:",omitempty"` // 备注信息
	BusinessLicenseImage    string `json:",omitempty"` // 营业执照-照片地址
}

type SysCompanyRepository interface {
	Insert(ctx context.Context, conn transaction.Conn, dm *SysCompany) (*SysCompany, error)
	Update(ctx context.Context, conn transaction.Conn, dm *SysCompany) (*SysCompany, error)
	UpdateWithVersion(ctx context.Context, conn transaction.Conn, dm *SysCompany) (*SysCompany, error)
	Delete(ctx context.Context, conn transaction.Conn, dm *SysCompany) (*SysCompany, error)
	FindOne(ctx context.Context, conn transaction.Conn, id int64) (*SysCompany, error)
	FindOneUnscoped(ctx context.Context, conn transaction.Conn, id int64) (*SysCompany, error)
	Find(ctx context.Context, conn transaction.Conn, queryOptions map[string]interface{}) (int64, []*SysCompany, error)
}