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.
4257 lines
156 KiB
4257 lines
156 KiB
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.36.6
|
|
// protoc v7.34.1
|
|
// source: db.proto
|
|
|
|
package pb
|
|
|
|
import (
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
unsafe "unsafe"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
// 用户渠道
|
|
type UserChannel int32
|
|
|
|
const (
|
|
UserChannel_UNKNOWN UserChannel = 0 //未知
|
|
UserChannel_CHINA_HUAWEI UserChannel = 1 //中国-华为
|
|
UserChannel_CHINA_XIAOMI UserChannel = 2 //中国-小米
|
|
UserChannel_CHINA_OPPO UserChannel = 3 //中国-OPPO
|
|
UserChannel_CHINA_VIVO UserChannel = 4 //中国-VIVO
|
|
UserChannel_CHINA_HONOR UserChannel = 5 //中国-荣耀
|
|
UserChannel_OFFICIAL UserChannel = 100 //官方包
|
|
UserChannel_GLOBAL_APPLE UserChannel = 101 //全球-苹果
|
|
UserChannel_GLOBAL_GOOGLE UserChannel = 102 //全球-谷歌
|
|
)
|
|
|
|
// Enum value maps for UserChannel.
|
|
var (
|
|
UserChannel_name = map[int32]string{
|
|
0: "UNKNOWN",
|
|
1: "CHINA_HUAWEI",
|
|
2: "CHINA_XIAOMI",
|
|
3: "CHINA_OPPO",
|
|
4: "CHINA_VIVO",
|
|
5: "CHINA_HONOR",
|
|
100: "OFFICIAL",
|
|
101: "GLOBAL_APPLE",
|
|
102: "GLOBAL_GOOGLE",
|
|
}
|
|
UserChannel_value = map[string]int32{
|
|
"UNKNOWN": 0,
|
|
"CHINA_HUAWEI": 1,
|
|
"CHINA_XIAOMI": 2,
|
|
"CHINA_OPPO": 3,
|
|
"CHINA_VIVO": 4,
|
|
"CHINA_HONOR": 5,
|
|
"OFFICIAL": 100,
|
|
"GLOBAL_APPLE": 101,
|
|
"GLOBAL_GOOGLE": 102,
|
|
}
|
|
)
|
|
|
|
func (x UserChannel) Enum() *UserChannel {
|
|
p := new(UserChannel)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x UserChannel) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (UserChannel) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_db_proto_enumTypes[0].Descriptor()
|
|
}
|
|
|
|
func (UserChannel) Type() protoreflect.EnumType {
|
|
return &file_db_proto_enumTypes[0]
|
|
}
|
|
|
|
func (x UserChannel) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use UserChannel.Descriptor instead.
|
|
func (UserChannel) EnumDescriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
type Codetype int32
|
|
|
|
const (
|
|
Codetype_AUTHCODE Codetype = 0 //认证码
|
|
Codetype_DEVICECODE Codetype = 1 //设备码
|
|
)
|
|
|
|
// Enum value maps for Codetype.
|
|
var (
|
|
Codetype_name = map[int32]string{
|
|
0: "AUTHCODE",
|
|
1: "DEVICECODE",
|
|
}
|
|
Codetype_value = map[string]int32{
|
|
"AUTHCODE": 0,
|
|
"DEVICECODE": 1,
|
|
}
|
|
)
|
|
|
|
func (x Codetype) Enum() *Codetype {
|
|
p := new(Codetype)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x Codetype) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (Codetype) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_db_proto_enumTypes[1].Descriptor()
|
|
}
|
|
|
|
func (Codetype) Type() protoreflect.EnumType {
|
|
return &file_db_proto_enumTypes[1]
|
|
}
|
|
|
|
func (x Codetype) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use Codetype.Descriptor instead.
|
|
func (Codetype) EnumDescriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
// 厂家数据管理
|
|
// 方案商所属芯片厂商(分组维度)。一个芯片厂商可以有多套方案,每套方案一条 DBSolutionProvider 记录。
|
|
//
|
|
// ⚠️【2026-09-01 已停止扩充】芯片厂商已转成 chip_vendor 表(后台「芯片管理」页自助增删改,
|
|
// 见 modules/console/model_chipvendor.go)。DBSolutionProvider.vendor 存的是那张表的 id,
|
|
// 表 id 与下面这几个枚举值一一对应(启动时幂等补种),故存量数据无需迁移。
|
|
// 新增厂商请到后台加,**不要再往这个枚举里加值**——加了也没人读,反而会让人以为还得改代码发版。
|
|
// 本枚举保留是为了字段类型不变(proto3 开放枚举按数值收发,表 id ≥5 也能正常传输)。
|
|
type SolutionVendor int32
|
|
|
|
const (
|
|
SolutionVendor_VENDOR_UNKNOWN SolutionVendor = 0 //未指定
|
|
SolutionVendor_VENDOR_JIELI SolutionVendor = 1 //杰里
|
|
SolutionVendor_VENDOR_LANXUN SolutionVendor = 2 //蓝汛
|
|
SolutionVendor_VENDOR_HENGXUAN SolutionVendor = 3 //恒玄
|
|
SolutionVendor_VENDOR_BOTONG SolutionVendor = 4 //博通
|
|
)
|
|
|
|
// Enum value maps for SolutionVendor.
|
|
var (
|
|
SolutionVendor_name = map[int32]string{
|
|
0: "VENDOR_UNKNOWN",
|
|
1: "VENDOR_JIELI",
|
|
2: "VENDOR_LANXUN",
|
|
3: "VENDOR_HENGXUAN",
|
|
4: "VENDOR_BOTONG",
|
|
}
|
|
SolutionVendor_value = map[string]int32{
|
|
"VENDOR_UNKNOWN": 0,
|
|
"VENDOR_JIELI": 1,
|
|
"VENDOR_LANXUN": 2,
|
|
"VENDOR_HENGXUAN": 3,
|
|
"VENDOR_BOTONG": 4,
|
|
}
|
|
)
|
|
|
|
func (x SolutionVendor) Enum() *SolutionVendor {
|
|
p := new(SolutionVendor)
|
|
*p = x
|
|
return p
|
|
}
|
|
|
|
func (x SolutionVendor) String() string {
|
|
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
|
|
}
|
|
|
|
func (SolutionVendor) Descriptor() protoreflect.EnumDescriptor {
|
|
return file_db_proto_enumTypes[2].Descriptor()
|
|
}
|
|
|
|
func (SolutionVendor) Type() protoreflect.EnumType {
|
|
return &file_db_proto_enumTypes[2]
|
|
}
|
|
|
|
func (x SolutionVendor) Number() protoreflect.EnumNumber {
|
|
return protoreflect.EnumNumber(x)
|
|
}
|
|
|
|
// Deprecated: Use SolutionVendor.Descriptor instead.
|
|
func (SolutionVendor) EnumDescriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
// 用户数据
|
|
type DBUser struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" gorm:"uid:50;primaryKey"` //@go_tags(`gorm:"uid:50;primaryKey" json:"uid"`) 用户ID
|
|
Mail string `protobuf:"bytes,2,opt,name=mail,proto3" json:"mail" gorm:"mail:50;index"` //@go_tags(`gorm:"mail:50;index" json:"mail"`) 邮箱
|
|
Phone string `protobuf:"bytes,3,opt,name=phone,proto3" json:"phone" gorm:"phone:50;index"` //@go_tags(`gorm:"phone:50;index" json:"phone"`) 手机号
|
|
Name string `protobuf:"bytes,5,opt,name=name,proto3" json:"name" gorm:"name:50"` //@go_tags(`gorm:"name:50" json:"name"`) 用户名
|
|
Avatar string `protobuf:"bytes,8,opt,name=avatar,proto3" json:"avatar" gorm:"avatar"` //@go_tags(`gorm:"avatar" json:"avatar"`) 玩家头像
|
|
Phonemodel string `protobuf:"bytes,10,opt,name=phonemodel,proto3" json:"phonemodel"` //@go_tags(`json:"phonemodel"`) 手机型号
|
|
Phonemac string `protobuf:"bytes,11,opt,name=phonemac,proto3" json:"phonemac" gorm:"phonemac:50;index"` //@go_tags(`gorm:"phonemac:50;index" json:"phonemac"`) 手机硬件id
|
|
Account string `protobuf:"bytes,12,opt,name=account,proto3" json:"account" gorm:"account:50;index"` //@go_tags(`gorm:"account:50;index" json:"account"`) 登录帐号
|
|
Password string `protobuf:"bytes,13,opt,name=password,proto3" json:"password"` //@go_tags(`json:"password"`) 密码登录
|
|
Lastsgintime int64 `protobuf:"varint,20,opt,name=lastsgintime,proto3" json:"lastsgintime" gorm:"lastsgintime"` //@go_tags(`gorm:"lastsgintime" json:"lastsgintime"`) 最后登录四件
|
|
Createtime int64 `protobuf:"varint,21,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 注册时间
|
|
Language string `protobuf:"bytes,22,opt,name=language,proto3" json:"language" gorm:"language"` //@go_tags(`gorm:"language" json:"language"`) 语言
|
|
Servicetag string `protobuf:"bytes,23,opt,name=servicetag,proto3" json:"servicetag" gorm:"servicetag"` //@go_tags(`gorm:"servicetag" json:"servicetag"`) 服务所属区
|
|
Channel UserChannel `protobuf:"varint,24,opt,name=channel,proto3,enum=UserChannel" json:"channel" gorm:"channel"` //@go_tags(`gorm:"channel" json:"channel"`) 用户渠道
|
|
Version string `protobuf:"bytes,25,opt,name=version,proto3" json:"version" gorm:"version"` //@go_tags(`gorm:"version" json:"version"`) 版本
|
|
State UserState `protobuf:"varint,26,opt,name=State,proto3,enum=UserState" json:"State" gorm:"State"` //@go_tags(`gorm:"State" json:"State"`) 状态
|
|
Canceltime int64 `protobuf:"varint,27,opt,name=canceltime,proto3" json:"canceltime" gorm:"canceltime"` //@go_tags(`gorm:"canceltime" json:"canceltime"`) 注销时间(0 未注销)
|
|
Wxopenid string `protobuf:"bytes,30,opt,name=wxopenid,proto3" json:"wxopenid" gorm:"wxopenid:50;index"` //@go_tags(`gorm:"wxopenid:50;index" json:"wxopenid"`) 微信openid
|
|
Googleopenid string `protobuf:"bytes,31,opt,name=googleopenid,proto3" json:"googleopenid" gorm:"googleopenid:50;index"` //@go_tags(`gorm:"googleopenid:50;index" json:"googleopenid"`) 谷歌openid
|
|
Facebookopenid string `protobuf:"bytes,32,opt,name=facebookopenid,proto3" json:"facebookopenid" gorm:"facebookopenid:50;index"` //@go_tags(`gorm:"facebookopenid:50;index" json:"facebookopenid"`) FaceBook
|
|
Appleopenid string `protobuf:"bytes,33,opt,name=appleopenid,proto3" json:"appleopenid" gorm:"appleopenid:50;index"` //@go_tags(`gorm:"appleopenid:50;index" json:"appleopenid"`)
|
|
Isgiveaway bool `protobuf:"varint,36,opt,name=isgiveaway,proto3" json:"isgiveaway" gorm:"isgiveaway"` //@go_tags(`gorm:"isgiveaway" json:"isgiveaway"`) 是否是第一次绑定
|
|
Gender int32 `protobuf:"varint,37,opt,name=gender,proto3" json:"gender" gorm:"gender"` //@go_tags(`gorm:"gender" json:"gender"` 性别 1-男 2-女
|
|
CountryCode string `protobuf:"bytes,38,opt,name=country_code,json=countryCode,proto3" json:"country_code" gorm:"country_code"` //@go_tags(`gorm:"country_code" json:"country_code"` // 国家编码
|
|
ContinentCode string `protobuf:"bytes,39,opt,name=continent_code,json=continentCode,proto3" json:"continent_code" gorm:"continent_code"` //@go_tags(`gorm:"continent_code" json:"continent_code"` // 国家
|
|
Viplv int32 `protobuf:"varint,40,opt,name=viplv,proto3" json:"viplv" gorm:"viplv:50"` //@go_tags(`gorm:"viplv:50" json:"viplv"`) viplv
|
|
Vipexptime int64 `protobuf:"varint,41,opt,name=vipexptime,proto3" json:"vipexptime" gorm:"vipexptime"` //@go_tags(`gorm:"vipexptime" json:"vipexptime"`) 会员过期时间
|
|
Aichatintegral int64 `protobuf:"varint,42,opt,name=aichatintegral,proto3" json:"aichatintegral" gorm:"aichatintegral"` //@go_tags(`gorm:"aichatintegral" json:"aichatintegral"`) ai聊天积分
|
|
Aichattotalintegral int64 `protobuf:"varint,43,opt,name=aichattotalintegral,proto3" json:"aichattotalintegral" gorm:"aichattotalintegral"` //@go_tags(`gorm:"aichattotalintegral" json:"aichattotalintegral"`) ai聊天总积分
|
|
Tradeintegral int64 `protobuf:"varint,44,opt,name=tradeintegral,proto3" json:"tradeintegral" gorm:"tradeintegral"` //@go_tags(`gorm:"tradeintegral" json:"tradeintegral"`) 翻译积分
|
|
Tradetotalintegral int64 `protobuf:"varint,45,opt,name=tradetotalintegral,proto3" json:"tradetotalintegral" gorm:"tradetotalintegral"` //@go_tags(`gorm:"tradetotalintegral" json:"tradetotalintegral"`) 翻译总积分
|
|
Meetintegral int64 `protobuf:"varint,46,opt,name=meetintegral,proto3" json:"meetintegral" gorm:"meetintegral"` //@go_tags(`gorm:"meetintegral" json:"meetintegral"`) 会议积分
|
|
Meettotalintegral int64 `protobuf:"varint,47,opt,name=meettotalintegral,proto3" json:"meettotalintegral" gorm:"meettotalintegral"` //@go_tags(`gorm:"meettotalintegral" json:"meettotalintegral"`) 会议总积分
|
|
Isactivatecode bool `protobuf:"varint,48,opt,name=isactivatecode,proto3" json:"isactivatecode" gorm:"isactivatecode"` //@go_tags(`gorm:"isactivatecode" json:"isactivatecode"`) 是否已使用过激活码(厂家公码)每账号一生限领一次
|
|
Lastbindproductid uint32 `protobuf:"varint,49,opt,name=lastbindproductid,proto3" json:"lastbindproductid" gorm:"lastbindproductid"` //@go_tags(`gorm:"lastbindproductid" json:"lastbindproductid"`) 最后绑定的产品ID(充值/消耗按此产品归属统计)
|
|
Lastbindchannelid string `protobuf:"bytes,50,opt,name=lastbindchannelid,proto3" json:"lastbindchannelid" gorm:"lastbindchannelid;size:16;index"` //@go_tags(`gorm:"lastbindchannelid;size:16;index" json:"lastbindchannelid"`) 最后绑定设备的渠道商ID(充值/消耗按此渠道商归属统计与结算)
|
|
Idverified bool `protobuf:"varint,51,opt,name=idverified,proto3" json:"idverified" gorm:"idverified;index"` //@go_tags(`gorm:"idverified;index" json:"idverified"`) 是否已通过身份证实名校验(明细见 useridverify 表)
|
|
Idverifiedtime int64 `protobuf:"varint,52,opt,name=idverifiedtime,proto3" json:"idverifiedtime" gorm:"idverifiedtime"` //@go_tags(`gorm:"idverifiedtime" json:"idverifiedtime"`) 实名校验通过时间(0=未通过)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUser) Reset() {
|
|
*x = DBUser{}
|
|
mi := &file_db_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUser) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUser) ProtoMessage() {}
|
|
|
|
func (x *DBUser) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[0]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUser.ProtoReflect.Descriptor instead.
|
|
func (*DBUser) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *DBUser) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetMail() string {
|
|
if x != nil {
|
|
return x.Mail
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetPhone() string {
|
|
if x != nil {
|
|
return x.Phone
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetAvatar() string {
|
|
if x != nil {
|
|
return x.Avatar
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetPhonemodel() string {
|
|
if x != nil {
|
|
return x.Phonemodel
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetPhonemac() string {
|
|
if x != nil {
|
|
return x.Phonemac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetAccount() string {
|
|
if x != nil {
|
|
return x.Account
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetPassword() string {
|
|
if x != nil {
|
|
return x.Password
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetLastsgintime() int64 {
|
|
if x != nil {
|
|
return x.Lastsgintime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetLanguage() string {
|
|
if x != nil {
|
|
return x.Language
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetServicetag() string {
|
|
if x != nil {
|
|
return x.Servicetag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetChannel() UserChannel {
|
|
if x != nil {
|
|
return x.Channel
|
|
}
|
|
return UserChannel_UNKNOWN
|
|
}
|
|
|
|
func (x *DBUser) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetState() UserState {
|
|
if x != nil {
|
|
return x.State
|
|
}
|
|
return UserState_Normal
|
|
}
|
|
|
|
func (x *DBUser) GetCanceltime() int64 {
|
|
if x != nil {
|
|
return x.Canceltime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetWxopenid() string {
|
|
if x != nil {
|
|
return x.Wxopenid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetGoogleopenid() string {
|
|
if x != nil {
|
|
return x.Googleopenid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetFacebookopenid() string {
|
|
if x != nil {
|
|
return x.Facebookopenid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetAppleopenid() string {
|
|
if x != nil {
|
|
return x.Appleopenid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetIsgiveaway() bool {
|
|
if x != nil {
|
|
return x.Isgiveaway
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBUser) GetGender() int32 {
|
|
if x != nil {
|
|
return x.Gender
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetCountryCode() string {
|
|
if x != nil {
|
|
return x.CountryCode
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetContinentCode() string {
|
|
if x != nil {
|
|
return x.ContinentCode
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetViplv() int32 {
|
|
if x != nil {
|
|
return x.Viplv
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetVipexptime() int64 {
|
|
if x != nil {
|
|
return x.Vipexptime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetAichatintegral() int64 {
|
|
if x != nil {
|
|
return x.Aichatintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetAichattotalintegral() int64 {
|
|
if x != nil {
|
|
return x.Aichattotalintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetTradeintegral() int64 {
|
|
if x != nil {
|
|
return x.Tradeintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetTradetotalintegral() int64 {
|
|
if x != nil {
|
|
return x.Tradetotalintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetMeetintegral() int64 {
|
|
if x != nil {
|
|
return x.Meetintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetMeettotalintegral() int64 {
|
|
if x != nil {
|
|
return x.Meettotalintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetIsactivatecode() bool {
|
|
if x != nil {
|
|
return x.Isactivatecode
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBUser) GetLastbindproductid() uint32 {
|
|
if x != nil {
|
|
return x.Lastbindproductid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUser) GetLastbindchannelid() string {
|
|
if x != nil {
|
|
return x.Lastbindchannelid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUser) GetIdverified() bool {
|
|
if x != nil {
|
|
return x.Idverified
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBUser) GetIdverifiedtime() int64 {
|
|
if x != nil {
|
|
return x.Idverifiedtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 用户实名认证记录(表 useridverify)。一个用户一行。
|
|
//
|
|
// 合规口径:身份证号**全文不落库**——只存掩码(展示用)与 SHA-256 指纹(排查同证多号用)。
|
|
// 指纹加了盐(ID_HASH_SALT),避免拿全国身份证号做彩虹表反查。
|
|
// 姓名按业务需要保留原文(开票/客服核实要用),若后续要求更严可再改为加密字段。
|
|
type DBUserIdVerify struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" gorm:"uid;size:50;primaryKey"` //@go_tags(`gorm:"uid;size:50;primaryKey" json:"uid"`) 用户ID
|
|
Realname string `protobuf:"bytes,2,opt,name=realname,proto3" json:"realname" gorm:"realname;size:64"` //@go_tags(`gorm:"realname;size:64" json:"realname"`) 姓名
|
|
Idcardmask string `protobuf:"bytes,3,opt,name=idcardmask,proto3" json:"idcardmask" gorm:"idcardmask;size:32"` //@go_tags(`gorm:"idcardmask;size:32" json:"idcardmask"`) 身份证号掩码,如 4403**********1234
|
|
Idcardhash string `protobuf:"bytes,4,opt,name=idcardhash,proto3" json:"idcardhash" gorm:"idcardhash;size:64;index"` //@go_tags(`gorm:"idcardhash;size:64;index" json:"idcardhash"`) 身份证号加盐 SHA-256(后台排查"同一证件多个账号")
|
|
Provider string `protobuf:"bytes,5,opt,name=provider,proto3" json:"provider" gorm:"provider;size:32"` //@go_tags(`gorm:"provider;size:32" json:"provider"`) 核验服务商 aliyun/tencent
|
|
Svcid string `protobuf:"bytes,6,opt,name=svcid,proto3" json:"svcid" gorm:"svcid;size:64"` //@go_tags(`gorm:"svcid;size:64" json:"svcid"`) 使用的第三方服务配置 id
|
|
Bizcode string `protobuf:"bytes,7,opt,name=bizcode,proto3" json:"bizcode" gorm:"bizcode;size:16"` //@go_tags(`gorm:"bizcode;size:16" json:"bizcode"`) 服务商返回的原始结果码(阿里 BizCode / 腾讯 Result)
|
|
Verifytime int64 `protobuf:"varint,8,opt,name=verifytime,proto3" json:"verifytime" gorm:"verifytime"` //@go_tags(`gorm:"verifytime" json:"verifytime"`) 校验通过时间(0=未通过)
|
|
Failcount int32 `protobuf:"varint,9,opt,name=failcount,proto3" json:"failcount" gorm:"failcount"` //@go_tags(`gorm:"failcount" json:"failcount"`) 累计失败次数(限频用)
|
|
Lastfailtime int64 `protobuf:"varint,10,opt,name=lastfailtime,proto3" json:"lastfailtime" gorm:"lastfailtime"` //@go_tags(`gorm:"lastfailtime" json:"lastfailtime"`) 最后一次失败时间
|
|
Createtime int64 `protobuf:"varint,11,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 首次提交时间
|
|
Updatetime int64 `protobuf:"varint,12,opt,name=updatetime,proto3" json:"updatetime" gorm:"updatetime"` //@go_tags(`gorm:"updatetime" json:"updatetime"`) 最后更新时间
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUserIdVerify) Reset() {
|
|
*x = DBUserIdVerify{}
|
|
mi := &file_db_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUserIdVerify) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUserIdVerify) ProtoMessage() {}
|
|
|
|
func (x *DBUserIdVerify) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[1]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUserIdVerify.ProtoReflect.Descriptor instead.
|
|
func (*DBUserIdVerify) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetRealname() string {
|
|
if x != nil {
|
|
return x.Realname
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetIdcardmask() string {
|
|
if x != nil {
|
|
return x.Idcardmask
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetIdcardhash() string {
|
|
if x != nil {
|
|
return x.Idcardhash
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetProvider() string {
|
|
if x != nil {
|
|
return x.Provider
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetSvcid() string {
|
|
if x != nil {
|
|
return x.Svcid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetBizcode() string {
|
|
if x != nil {
|
|
return x.Bizcode
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetVerifytime() int64 {
|
|
if x != nil {
|
|
return x.Verifytime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetFailcount() int32 {
|
|
if x != nil {
|
|
return x.Failcount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetLastfailtime() int64 {
|
|
if x != nil {
|
|
return x.Lastfailtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserIdVerify) GetUpdatetime() int64 {
|
|
if x != nil {
|
|
return x.Updatetime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 用户设备数据
|
|
type DBUserDivice struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty" gorm:"id:50;primaryKey;autoIncrement json:"` //@go_tags(`gorm:"id:50;primaryKey;autoIncrement json:"id"`) id
|
|
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" gorm:"uid:50;index"` //@go_tags(`gorm:"uid:50;index" json:"uid"`) 用户ID
|
|
Productid uint32 `protobuf:"varint,3,opt,name=productid,proto3" json:"productid" gorm:"productid:50;index"` //@go_tags(`gorm:"productid:50;index" json:"productid"`) 产品ID
|
|
Devicetype DeviceType `protobuf:"varint,4,opt,name=devicetype,proto3,enum=DeviceType" json:"devicetype" gorm:"devicetype:50;index"` //@go_tags(`gorm:"devicetype:50;index" json:"devicetype"`) 设备类型
|
|
Devicename string `protobuf:"bytes,5,opt,name=devicename,proto3" json:"devicename" gorm:"devicename:50"` //@go_tags(`gorm:"devicename:50" json:"devicename"`) 设备名称
|
|
Devicemac string `protobuf:"bytes,6,opt,name=devicemac,proto3" json:"devicemac" gorm:"devicemac:50;index"` //@go_tags(`gorm:"devicemac:50;index" json:"devicemac"`) 设备地址
|
|
License string `protobuf:"bytes,7,opt,name=license,proto3" json:"license" gorm:"license:50;index"` //@go_tags(`gorm:"license:50;index" json:"license"`) 认证码
|
|
Cmei string `protobuf:"bytes,8,opt,name=cmei,proto3" json:"cmei" gorm:"cmei:50;index"` //@go_tags(`gorm:"cmei:50;index" json:"cmei"`) cmei码
|
|
Version string `protobuf:"bytes,9,opt,name=version,proto3" json:"version" gorm:"version:50"` //@go_tags(`gorm:"version:50" json:"version"`) 版本
|
|
Lxsetting string `protobuf:"bytes,10,opt,name=lxsetting,proto3" json:"lxsetting" gorm:"lxsetting:256"` //@go_tags(`gorm:"lxsetting:256" json:"lxsetting"`) 蓝训设置
|
|
Channelid string `protobuf:"bytes,11,opt,name=channelid,proto3" json:"channelid" gorm:"channelid;size:16;index"` //@go_tags(`gorm:"channelid;size:16;index" json:"channelid"`) 渠道商ID(绑定时从授权码带入,空=未分配渠道)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUserDivice) Reset() {
|
|
*x = DBUserDivice{}
|
|
mi := &file_db_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUserDivice) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUserDivice) ProtoMessage() {}
|
|
|
|
func (x *DBUserDivice) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[2]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUserDivice.ProtoReflect.Descriptor instead.
|
|
func (*DBUserDivice) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *DBUserDivice) GetId() uint64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserDivice) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserDivice) GetDevicetype() DeviceType {
|
|
if x != nil {
|
|
return x.Devicetype
|
|
}
|
|
return DeviceType_DeviceTypeUnknown
|
|
}
|
|
|
|
func (x *DBUserDivice) GetDevicename() string {
|
|
if x != nil {
|
|
return x.Devicename
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetDevicemac() string {
|
|
if x != nil {
|
|
return x.Devicemac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetLicense() string {
|
|
if x != nil {
|
|
return x.License
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetCmei() string {
|
|
if x != nil {
|
|
return x.Cmei
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetLxsetting() string {
|
|
if x != nil {
|
|
return x.Lxsetting
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserDivice) GetChannelid() string {
|
|
if x != nil {
|
|
return x.Channelid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 用户画像数据结构
|
|
type DBUserPortrait struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" gorm:"uid:50;primaryKey"` //@go_tags(`gorm:"uid:50;primaryKey" json:"uid"`) 用户ID
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
Gender int32 `protobuf:"varint,3,opt,name=gender,proto3" json:"gender,omitempty"`
|
|
Age string `protobuf:"bytes,4,opt,name=age,proto3" json:"age,omitempty"`
|
|
City string `protobuf:"bytes,5,opt,name=city,proto3" json:"city,omitempty"`
|
|
Homeaddr string `protobuf:"bytes,6,opt,name=homeaddr,proto3" json:"homeaddr,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUserPortrait) Reset() {
|
|
*x = DBUserPortrait{}
|
|
mi := &file_db_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUserPortrait) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUserPortrait) ProtoMessage() {}
|
|
|
|
func (x *DBUserPortrait) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[3]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUserPortrait.ProtoReflect.Descriptor instead.
|
|
func (*DBUserPortrait) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetGender() int32 {
|
|
if x != nil {
|
|
return x.Gender
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetAge() string {
|
|
if x != nil {
|
|
return x.Age
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetCity() string {
|
|
if x != nil {
|
|
return x.City
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserPortrait) GetHomeaddr() string {
|
|
if x != nil {
|
|
return x.Homeaddr
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 智能体数据
|
|
type DBAgent struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" gorm:"id:50;primaryKey"` //@go_tags(`gorm:"id:50;primaryKey" json:"id"`) 智能体id
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name" gorm:"name:50"` //@go_tags(`gorm:"name:50" json:"name"`) 智能体名称
|
|
AvatarUrl string `protobuf:"bytes,3,opt,name=avatarUrl,proto3" json:"avatarUrl" gorm:"avatarUrl:50"` //@go_tags(`gorm:"avatarUrl:50" json:"avatarUrl"`) 头像
|
|
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 智能体描述
|
|
Tag string `protobuf:"bytes,5,opt,name=tag,proto3" json:"tag" gorm:"tag"` //@go_tags(`gorm:"tag" json:"tag"`) 类型 多个用逗号分隔
|
|
Enable bool `protobuf:"varint,6,opt,name=enable,proto3" json:"enable" gorm:"enable"` //@go_tags(`gorm:"enable" json:"enable"`) 是否启用
|
|
IsOnline bool `protobuf:"varint,7,opt,name=isOnline,proto3" json:"isOnline" gorm:"isOnline"` //@go_tags(`gorm:"isOnline" json:"isOnline"`) 是否在线
|
|
WelcomeMessage string `protobuf:"bytes,8,opt,name=welcomeMessage,proto3" json:"welcomeMessage" gorm:"welcomeMessage"` //@go_tags(`gorm:"welcomeMessage" json:"welcomeMessage"`) 文字欢迎消息
|
|
VoiceWelcomeMessage string `protobuf:"bytes,9,opt,name=voiceWelcomeMessage,proto3" json:"voiceWelcomeMessage" gorm:"voiceWelcomeMessage"` //@go_tags(`gorm:"voiceWelcomeMessage" json:"voiceWelcomeMessage"`) 声音欢迎消息
|
|
SystemPrompt string `protobuf:"bytes,10,opt,name=systemPrompt,proto3" json:"systemPrompt" gorm:"systemPrompt"` //@go_tags(`gorm:"systemPrompt" json:"systemPrompt"`) 提示词
|
|
Languages string `protobuf:"bytes,11,opt,name=languages,proto3" json:"languages" gorm:"languages"` //@go_tags(`gorm:"languages" json:"languages"`) 支持语言 多个用逗号分隔 zh-CN,en-US
|
|
Source AgentSource `protobuf:"varint,12,opt,name=source,proto3,enum=AgentSource" json:"source" gorm:"source;index"` //@go_tags(`gorm:"source;index" json:"source"`) Agent来源 0:内置 1:PolyChat 2:阿里云 3:火山
|
|
ServiceData string `protobuf:"bytes,13,opt,name=serviceData,proto3" json:"serviceData" gorm:"serviceData"` //@go_tags(`gorm:"serviceData" json:"serviceData"`) 服务数据 JSON 存放各平台所需的接入参数
|
|
RoleId string `protobuf:"bytes,14,opt,name=roleId,proto3" json:"roleId" gorm:"roleId:50;index"` //@go_tags(`gorm:"roleId:50;index" json:"roleId"`) 角色ID
|
|
Voice string `protobuf:"bytes,15,opt,name=voice,proto3" json:"voice" gorm:"voice"` //@go_tags(`gorm:"voice" json:"voice"`) 音色配置 多个用逗号分隔 平台音色id
|
|
Voices string `protobuf:"bytes,16,opt,name=voices,proto3" json:"voices" gorm:"voices"` //@go_tags(`gorm:"voices" json:"voices"`) 音色配置 多个用逗号分隔 平台音色id
|
|
Sort int32 `protobuf:"varint,17,opt,name=sort,proto3" json:"sort" gorm:"sort;index"` //@go_tags(`gorm:"sort;index" json:"sort"`) 排序权重 值越小越靠前
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBAgent) Reset() {
|
|
*x = DBAgent{}
|
|
mi := &file_db_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBAgent) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBAgent) ProtoMessage() {}
|
|
|
|
func (x *DBAgent) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[4]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBAgent.ProtoReflect.Descriptor instead.
|
|
func (*DBAgent) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *DBAgent) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetAvatarUrl() string {
|
|
if x != nil {
|
|
return x.AvatarUrl
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetTag() string {
|
|
if x != nil {
|
|
return x.Tag
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetEnable() bool {
|
|
if x != nil {
|
|
return x.Enable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBAgent) GetIsOnline() bool {
|
|
if x != nil {
|
|
return x.IsOnline
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBAgent) GetWelcomeMessage() string {
|
|
if x != nil {
|
|
return x.WelcomeMessage
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetVoiceWelcomeMessage() string {
|
|
if x != nil {
|
|
return x.VoiceWelcomeMessage
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetSystemPrompt() string {
|
|
if x != nil {
|
|
return x.SystemPrompt
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetLanguages() string {
|
|
if x != nil {
|
|
return x.Languages
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetSource() AgentSource {
|
|
if x != nil {
|
|
return x.Source
|
|
}
|
|
return AgentSource_AgentSourceBuiltin
|
|
}
|
|
|
|
func (x *DBAgent) GetServiceData() string {
|
|
if x != nil {
|
|
return x.ServiceData
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetRoleId() string {
|
|
if x != nil {
|
|
return x.RoleId
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetVoice() string {
|
|
if x != nil {
|
|
return x.Voice
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetVoices() string {
|
|
if x != nil {
|
|
return x.Voices
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAgent) GetSort() int32 {
|
|
if x != nil {
|
|
return x.Sort
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// mcp 服务列表
|
|
type DBMcpServer struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" gorm:"id:50;primaryKey"` //@go_tags(`gorm:"id:50;primaryKey" json:"id"`) mcp服务id
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name" gorm:"name:50"` //@go_tags(`gorm:"name:50" json:"name"`) mcp服务名称
|
|
Region Region `protobuf:"varint,3,opt,name=region,proto3,enum=Region" json:"region" gorm:"region;index"` //@go_tags(`gorm:"region;index" json:"region"`) 配置组
|
|
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) mcp服务名称
|
|
Url string `protobuf:"bytes,5,opt,name=url,proto3" json:"url" gorm:"url"` //@go_tags(`gorm:"url" json:"url"`) 地址
|
|
Stype MCPServerType `protobuf:"varint,6,opt,name=stype,proto3,enum=MCPServerType" json:"type" gorm:"stype"` //@go_tags(`gorm:"stype" json:"type"`) 服务类型
|
|
Tools string `protobuf:"bytes,7,opt,name=tools,proto3" json:"tools" gorm:"tools"` //@go_tags(`gorm:"tools" json:"tools"`) 启用工具 空表示 全部启用
|
|
Enable bool `protobuf:"varint,8,opt,name=enable,proto3" json:"enable" gorm:"enable"` //@go_tags(`gorm:"enable" json:"enable"`) 是否启用
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBMcpServer) Reset() {
|
|
*x = DBMcpServer{}
|
|
mi := &file_db_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBMcpServer) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBMcpServer) ProtoMessage() {}
|
|
|
|
func (x *DBMcpServer) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[5]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBMcpServer.ProtoReflect.Descriptor instead.
|
|
func (*DBMcpServer) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *DBMcpServer) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBMcpServer) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBMcpServer) GetRegion() Region {
|
|
if x != nil {
|
|
return x.Region
|
|
}
|
|
return Region_RegionUnknown
|
|
}
|
|
|
|
func (x *DBMcpServer) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBMcpServer) GetUrl() string {
|
|
if x != nil {
|
|
return x.Url
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBMcpServer) GetStype() MCPServerType {
|
|
if x != nil {
|
|
return x.Stype
|
|
}
|
|
return MCPServerType_Http
|
|
}
|
|
|
|
func (x *DBMcpServer) GetTools() string {
|
|
if x != nil {
|
|
return x.Tools
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBMcpServer) GetEnable() bool {
|
|
if x != nil {
|
|
return x.Enable
|
|
}
|
|
return false
|
|
}
|
|
|
|
// app 配置数据
|
|
type DBGlobalConfigItem struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty" gorm:"primaryKey;autoIncrement json:"` //@go_tags(`gorm:"primaryKey;autoIncrement json:"group"`) 配置组
|
|
Region Region `protobuf:"varint,2,opt,name=region,proto3,enum=Region" json:"region,omitempty" gorm:"region;index json:"` //@go_tags(`gorm:"region;index json:"region"`) 区域枚举,用于根据区域适配服务配置
|
|
Group string `protobuf:"bytes,3,opt,name=group,proto3" json:"group" gorm:"group:50;index"` //@go_tags(`gorm:"group:50;index" json:"group"`) 配置组
|
|
Key string `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`
|
|
Value string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"`
|
|
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) Reset() {
|
|
*x = DBGlobalConfigItem{}
|
|
mi := &file_db_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBGlobalConfigItem) ProtoMessage() {}
|
|
|
|
func (x *DBGlobalConfigItem) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[6]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBGlobalConfigItem.ProtoReflect.Descriptor instead.
|
|
func (*DBGlobalConfigItem) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetId() uint64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetRegion() Region {
|
|
if x != nil {
|
|
return x.Region
|
|
}
|
|
return Region_RegionUnknown
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetGroup() string {
|
|
if x != nil {
|
|
return x.Group
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetKey() string {
|
|
if x != nil {
|
|
return x.Key
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetValue() string {
|
|
if x != nil {
|
|
return x.Value
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGlobalConfigItem) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// app 配置数据
|
|
type DBAppConfigItem struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty" gorm:"primaryKey;autoIncrement json:"` //@go_tags(`gorm:"primaryKey;autoIncrement json:"group"`) 配置组
|
|
Group string `protobuf:"bytes,3,opt,name=group,proto3" json:"group" gorm:"group:50;index"` //@go_tags(`gorm:"group:50;index" json:"group"`) 配置组
|
|
Key string `protobuf:"bytes,4,opt,name=key,proto3" json:"key,omitempty"`
|
|
Value string `protobuf:"bytes,5,opt,name=value,proto3" json:"value,omitempty"`
|
|
Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBAppConfigItem) Reset() {
|
|
*x = DBAppConfigItem{}
|
|
mi := &file_db_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBAppConfigItem) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBAppConfigItem) ProtoMessage() {}
|
|
|
|
func (x *DBAppConfigItem) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[7]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBAppConfigItem.ProtoReflect.Descriptor instead.
|
|
func (*DBAppConfigItem) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *DBAppConfigItem) GetId() uint64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppConfigItem) GetGroup() string {
|
|
if x != nil {
|
|
return x.Group
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAppConfigItem) GetKey() string {
|
|
if x != nil {
|
|
return x.Key
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAppConfigItem) GetValue() string {
|
|
if x != nil {
|
|
return x.Value
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAppConfigItem) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 方案商(芯片/整体方案提供方)
|
|
// id 是「手工指定的有含义编码」,不是自增:十六进制看,如 0xABEF=杰里老方案、0xC101=杰里01方案。
|
|
// 历史 ID(ABEF/ABF0~ABF4/AB21)已烧录进设备,不可变更;新增方案商一律用 C 开头段(C1xx…)。
|
|
type DBSolutionProvider struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey"` //@go_tags(`gorm:"id;primaryKey" json:"id"`) 方案商id(手工指定,不自增)
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name" gorm:"name;index"` //@go_tags(`gorm:"name;index" json:"name"`) 方案商公司名称
|
|
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 方案说明(这套方案做什么)
|
|
Contactmails string `protobuf:"bytes,4,opt,name=contactmails,proto3" json:"contactmails" gorm:"contactmails"` //@go_tags(`gorm:"contactmails" json:"contactmails"`) 联系人邮箱
|
|
Createtime int64 `protobuf:"varint,5,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间
|
|
Vendor SolutionVendor `protobuf:"varint,6,opt,name=vendor,proto3,enum=SolutionVendor" json:"vendor" gorm:"vendor;index"` //@go_tags(`gorm:"vendor;index" json:"vendor"`) 所属芯片厂商分组(杰里/蓝汛/恒玄/博通)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBSolutionProvider) Reset() {
|
|
*x = DBSolutionProvider{}
|
|
mi := &file_db_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBSolutionProvider) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBSolutionProvider) ProtoMessage() {}
|
|
|
|
func (x *DBSolutionProvider) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[8]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBSolutionProvider.ProtoReflect.Descriptor instead.
|
|
func (*DBSolutionProvider) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetContactmails() string {
|
|
if x != nil {
|
|
return x.Contactmails
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSolutionProvider) GetVendor() SolutionVendor {
|
|
if x != nil {
|
|
return x.Vendor
|
|
}
|
|
return SolutionVendor_VENDOR_UNKNOWN
|
|
}
|
|
|
|
// 品牌商(原厂家;归属一个方案商)
|
|
type DBBrand struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 品牌商id
|
|
Brand string `protobuf:"bytes,2,opt,name=brand,proto3" json:"brand" gorm:"brand"` //@go_tags(`gorm:"brand" json:"brand"`) 品牌商名称
|
|
// 【已废弃】品牌商不归属方案商——方案商是「产品用了哪套芯片方案」,同一品牌不同产品可以用不同方案,
|
|
// 所以归属挂在 DBProduct.providerid 上。本字段与 brand.providerid 列均已停写,仅为兼容旧数据保留,勿再使用。
|
|
Providerid uint32 `protobuf:"varint,3,opt,name=providerid,proto3" json:"providerid" gorm:"providerid;index"` //@go_tags(`gorm:"providerid;index" json:"providerid"`) [已废弃]原「归属方案商id」
|
|
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 描述
|
|
Contactmails string `protobuf:"bytes,5,opt,name=contactmails,proto3" json:"contactmails" gorm:"contactmails"` //@go_tags(`gorm:"contactmails" json:"contactmails"`) 联系人邮箱 xxx@qq.com,xxx@gmail.com
|
|
Productlists string `protobuf:"bytes,7,opt,name=productlists,proto3" json:"productlists" gorm:"productlists"` //@go_tags(`gorm:"productlists" json:"productlists"`) 产品列表 1,2,3
|
|
Sharerate int32 `protobuf:"varint,8,opt,name=sharerate,proto3" json:"sharerate" gorm:"sharerate"` //@go_tags(`gorm:"sharerate" json:"sharerate"`) 分成比例(万分比):平台从订单实付里分给品牌商的总提成,渠道商再从这份里切
|
|
Createtime int64 `protobuf:"varint,9,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间(秒);历史品牌商为0
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBBrand) Reset() {
|
|
*x = DBBrand{}
|
|
mi := &file_db_proto_msgTypes[9]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBBrand) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBBrand) ProtoMessage() {}
|
|
|
|
func (x *DBBrand) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[9]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBBrand.ProtoReflect.Descriptor instead.
|
|
func (*DBBrand) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{9}
|
|
}
|
|
|
|
func (x *DBBrand) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBBrand) GetBrand() string {
|
|
if x != nil {
|
|
return x.Brand
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBBrand) GetProviderid() uint32 {
|
|
if x != nil {
|
|
return x.Providerid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBBrand) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBBrand) GetContactmails() string {
|
|
if x != nil {
|
|
return x.Contactmails
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBBrand) GetProductlists() string {
|
|
if x != nil {
|
|
return x.Productlists
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBBrand) GetSharerate() int32 {
|
|
if x != nil {
|
|
return x.Sharerate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBBrand) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 渠道商(挂在品牌商下,一个品牌商可绑定多个渠道商)
|
|
// id 用 8 位可读短码而非自增:会印在生产台账/结算单上并对外沟通,短码可读、不暴露规模,
|
|
// 且作为统计与结算的维度键(string)跨库不冲突。新增走审批:status=0 时不可用于生产。
|
|
type DBChannel struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" gorm:"column:id;size:16;primaryKey"` //@go_tags(`gorm:"column:id;size:16;primaryKey" json:"id"`) 渠道商id(短码)
|
|
// 归属品牌商id。**0 = 不归属任何品牌商**(后台新增渠道商时已不再要求选品牌商,
|
|
// 渠道商是全局实体)。仅 addOfficialChannel 生成的「品牌官方渠道」才带非 0 值。
|
|
Brandid uint32 `protobuf:"varint,2,opt,name=brandid,proto3" json:"brandid" gorm:"brandid;index"` //@go_tags(`gorm:"brandid;index" json:"brandid"`) 归属品牌商id(0=全局渠道商)
|
|
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name" gorm:"name;index"` //@go_tags(`gorm:"name;index" json:"name"`) 渠道商名称
|
|
Contact string `protobuf:"bytes,4,opt,name=contact,proto3" json:"contact" gorm:"contact"` //@go_tags(`gorm:"contact" json:"contact"`) 联系人/电话
|
|
Contactmails string `protobuf:"bytes,5,opt,name=contactmails,proto3" json:"contactmails" gorm:"contactmails"` //@go_tags(`gorm:"contactmails" json:"contactmails"`) 联系人邮箱 xxx@qq.com,xxx@gmail.com
|
|
Remark string `protobuf:"bytes,6,opt,name=remark,proto3" json:"remark" gorm:"remark"` //@go_tags(`gorm:"remark" json:"remark"`) 备注
|
|
// 【已停止在后台维护,2026-09-02】分成比例改为按【生产批次】设置(production_batch.sharerate),
|
|
// 因为同一渠道商不同批次的比例可能不同。本列保留存量值,月结算暂时仍读它(见 api_settlement.go),
|
|
// 新建渠道商一律为 0。别再在渠道商表单里加回这个字段。
|
|
Sharerate int32 `protobuf:"varint,7,opt,name=sharerate,proto3" json:"sharerate" gorm:"sharerate"` //@go_tags(`gorm:"sharerate" json:"sharerate"`) [遗留]渠道商级分成比例(万分比)
|
|
Status int32 `protobuf:"varint,8,opt,name=status,proto3" json:"status" gorm:"status;index"` //@go_tags(`gorm:"status;index" json:"status"`) 状态 0:待审核 1:启用 2:停用 3:驳回
|
|
Applyaccount string `protobuf:"bytes,9,opt,name=applyaccount,proto3" json:"applyaccount" gorm:"applyaccount"` //@go_tags(`gorm:"applyaccount" json:"applyaccount"`) 申请人账号(品牌商自助添加时记录)
|
|
Auditaccount string `protobuf:"bytes,10,opt,name=auditaccount,proto3" json:"auditaccount" gorm:"auditaccount"` //@go_tags(`gorm:"auditaccount" json:"auditaccount"`) 审核人账号
|
|
Auditremark string `protobuf:"bytes,11,opt,name=auditremark,proto3" json:"auditremark" gorm:"auditremark"` //@go_tags(`gorm:"auditremark" json:"auditremark"`) 审核意见(驳回原因)
|
|
Audittime int64 `protobuf:"varint,12,opt,name=audittime,proto3" json:"audittime" gorm:"audittime"` //@go_tags(`gorm:"audittime" json:"audittime"`) 审核时间
|
|
Createtime int64 `protobuf:"varint,13,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间
|
|
Updatetime int64 `protobuf:"varint,14,opt,name=updatetime,proto3" json:"updatetime" gorm:"updatetime"` //@go_tags(`gorm:"updatetime" json:"updatetime"`) 更新时间
|
|
Official bool `protobuf:"varint,15,opt,name=official,proto3" json:"official" gorm:"official;index"` //@go_tags(`gorm:"official;index" json:"official"`) 品牌官方渠道:随品牌商创建自动生成、直接启用,不可删除(品牌自营的那条销售线)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBChannel) Reset() {
|
|
*x = DBChannel{}
|
|
mi := &file_db_proto_msgTypes[10]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBChannel) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBChannel) ProtoMessage() {}
|
|
|
|
func (x *DBChannel) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[10]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBChannel.ProtoReflect.Descriptor instead.
|
|
func (*DBChannel) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{10}
|
|
}
|
|
|
|
func (x *DBChannel) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetBrandid() uint32 {
|
|
if x != nil {
|
|
return x.Brandid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetContact() string {
|
|
if x != nil {
|
|
return x.Contact
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetContactmails() string {
|
|
if x != nil {
|
|
return x.Contactmails
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetRemark() string {
|
|
if x != nil {
|
|
return x.Remark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetSharerate() int32 {
|
|
if x != nil {
|
|
return x.Sharerate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetStatus() int32 {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetApplyaccount() string {
|
|
if x != nil {
|
|
return x.Applyaccount
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetAuditaccount() string {
|
|
if x != nil {
|
|
return x.Auditaccount
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetAuditremark() string {
|
|
if x != nil {
|
|
return x.Auditremark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannel) GetAudittime() int64 {
|
|
if x != nil {
|
|
return x.Audittime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetUpdatetime() int64 {
|
|
if x != nil {
|
|
return x.Updatetime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannel) GetOfficial() bool {
|
|
if x != nil {
|
|
return x.Official
|
|
}
|
|
return false
|
|
}
|
|
|
|
// 月结算单(每 结算月×渠道商×生产批次 一行)
|
|
//
|
|
// 分成算法(2026-09-02 起):
|
|
//
|
|
// base = 该月归属该 (渠道商, 批次) 的订单实付金额之和(分)
|
|
// channel_amount = base * channel_rate 渠道商分成
|
|
// platform_amount = base - channel_amount 平台留存
|
|
//
|
|
// ⚠️ 为什么按【批次】而不是按渠道商出行:分成比例是一批一谈的,存在
|
|
//
|
|
// production_batch.sharerate 上(见「MAC生成管理 → 生成MAC」的表单)。同一家渠道商
|
|
// 不同批次比例可以不同,一个渠道商一行只能装一个比例,装不下。
|
|
//
|
|
// 订单如何落到批次:payorder 下单时冻结了来源设备快照(src_license / src_mac / src_productid),
|
|
// 拿它去 license_<pid> 分表反查到 batchno。查不到(用户没绑过设备、批次被撤销)的订单
|
|
// 落 batchno=” 的行,比例 0、全归平台。
|
|
//
|
|
// 比例按【结算时快照】存进本行,事后改批次比例不影响已确认的月份。
|
|
//
|
|
// ⚠️ 品牌商维度已移除:生产链路不再涉及品牌商(生成MAC 表单已去掉该字段),
|
|
//
|
|
// 留着只会产出一堆 brandid=0 的行。字段号 2/6/7/10 保留不复用。
|
|
type DBSettlementMonth struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Period uint32 `protobuf:"varint,1,opt,name=period,proto3" json:"period" gorm:"period;primaryKey;index"` //@go_tags(`gorm:"period;primaryKey;index" json:"period"`) 结算月 YYYYMM
|
|
Channelid string `protobuf:"bytes,3,opt,name=channelid,proto3" json:"channelid" gorm:"channelid;size:16;primaryKey;index"` //@go_tags(`gorm:"channelid;size:16;primaryKey;index" json:"channelid"`) 渠道商id(空=无渠道归属)
|
|
Batchno string `protobuf:"bytes,17,opt,name=batchno,proto3" json:"batchno" gorm:"batchno;size:16;primaryKey;index"` //@go_tags(`gorm:"batchno;size:16;primaryKey;index" json:"batchno"`) 生产批次号(空=无法归到批次)
|
|
Productid uint32 `protobuf:"varint,18,opt,name=productid,proto3" json:"productid" gorm:"productid;index"` //@go_tags(`gorm:"productid;index" json:"productid"`) 该批次的产品id(展示用,0=未知)
|
|
OrderCount int64 `protobuf:"varint,4,opt,name=order_count,json=orderCount,proto3" json:"order_count" gorm:"order_count"` //@go_tags(`gorm:"order_count" json:"order_count"`) 已支付订单数
|
|
BaseAmount int64 `protobuf:"varint,5,opt,name=base_amount,json=baseAmount,proto3" json:"base_amount" gorm:"base_amount"` //@go_tags(`gorm:"base_amount" json:"base_amount"`) 结算基数=订单实付金额合计(分)
|
|
ChannelRate int32 `protobuf:"varint,8,opt,name=channel_rate,json=channelRate,proto3" json:"channel_rate" gorm:"channel_rate"` //@go_tags(`gorm:"channel_rate" json:"channel_rate"`) 渠道分成比例快照(万分比,取自该批次)
|
|
ChannelAmount int64 `protobuf:"varint,9,opt,name=channel_amount,json=channelAmount,proto3" json:"channel_amount" gorm:"channel_amount"` //@go_tags(`gorm:"channel_amount" json:"channel_amount"`) 渠道商分成金额(分)
|
|
PlatformAmount int64 `protobuf:"varint,11,opt,name=platform_amount,json=platformAmount,proto3" json:"platform_amount" gorm:"platform_amount"` //@go_tags(`gorm:"platform_amount" json:"platform_amount"`) 平台留存(分)=基数-渠道分成
|
|
Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status" gorm:"status;index"` //@go_tags(`gorm:"status;index" json:"status"`) 状态 0:草稿(可重算) 1:已确认(锁定) 2:已支付
|
|
GenTime int64 `protobuf:"varint,13,opt,name=gen_time,json=genTime,proto3" json:"gen_time" gorm:"gen_time"` //@go_tags(`gorm:"gen_time" json:"gen_time"`) 生成/重算时间
|
|
ConfirmAccount string `protobuf:"bytes,14,opt,name=confirm_account,json=confirmAccount,proto3" json:"confirm_account" gorm:"confirm_account"` //@go_tags(`gorm:"confirm_account" json:"confirm_account"`) 确认人账号
|
|
ConfirmTime int64 `protobuf:"varint,15,opt,name=confirm_time,json=confirmTime,proto3" json:"confirm_time" gorm:"confirm_time"` //@go_tags(`gorm:"confirm_time" json:"confirm_time"`) 确认时间
|
|
Remark string `protobuf:"bytes,16,opt,name=remark,proto3" json:"remark" gorm:"remark"` //@go_tags(`gorm:"remark" json:"remark"`) 备注
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBSettlementMonth) Reset() {
|
|
*x = DBSettlementMonth{}
|
|
mi := &file_db_proto_msgTypes[11]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBSettlementMonth) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBSettlementMonth) ProtoMessage() {}
|
|
|
|
func (x *DBSettlementMonth) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[11]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBSettlementMonth.ProtoReflect.Descriptor instead.
|
|
func (*DBSettlementMonth) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{11}
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetPeriod() uint32 {
|
|
if x != nil {
|
|
return x.Period
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetChannelid() string {
|
|
if x != nil {
|
|
return x.Channelid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetBatchno() string {
|
|
if x != nil {
|
|
return x.Batchno
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetOrderCount() int64 {
|
|
if x != nil {
|
|
return x.OrderCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetBaseAmount() int64 {
|
|
if x != nil {
|
|
return x.BaseAmount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetChannelRate() int32 {
|
|
if x != nil {
|
|
return x.ChannelRate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetChannelAmount() int64 {
|
|
if x != nil {
|
|
return x.ChannelAmount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetPlatformAmount() int64 {
|
|
if x != nil {
|
|
return x.PlatformAmount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetStatus() int32 {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetGenTime() int64 {
|
|
if x != nil {
|
|
return x.GenTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetConfirmAccount() string {
|
|
if x != nil {
|
|
return x.ConfirmAccount
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetConfirmTime() int64 {
|
|
if x != nil {
|
|
return x.ConfirmTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBSettlementMonth) GetRemark() string {
|
|
if x != nil {
|
|
return x.Remark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 生产批次(每次生产一条,记录产品/时间/数量/序号区间/MAC区间;替代原出货单)
|
|
type DBProductionBatch struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 批次id
|
|
Ts int64 `protobuf:"varint,2,opt,name=ts,proto3" json:"ts" gorm:"ts;index"` //@go_tags(`gorm:"ts;index" json:"ts"`) 生产时间戳
|
|
Brandid uint32 `protobuf:"varint,3,opt,name=brandid,proto3" json:"brandid" gorm:"brandid;index"` //@go_tags(`gorm:"brandid;index" json:"brandid"`) 品牌商id
|
|
Productid uint32 `protobuf:"varint,4,opt,name=productid,proto3" json:"productid" gorm:"productid;index"` //@go_tags(`gorm:"productid;index" json:"productid"`) 产品id
|
|
Serialstart int64 `protobuf:"varint,5,opt,name=serialstart,proto3" json:"serialstart" gorm:"serialstart"` //@go_tags(`gorm:"serialstart" json:"serialstart"`) 序号区间起
|
|
Serialend int64 `protobuf:"varint,6,opt,name=serialend,proto3" json:"serialend" gorm:"serialend"` //@go_tags(`gorm:"serialend" json:"serialend"`) 序号区间止
|
|
Startmac string `protobuf:"bytes,7,opt,name=startmac,proto3" json:"startmac" gorm:"startmac:50"` //@go_tags(`gorm:"startmac:50" json:"startmac"`) 开始设备地址
|
|
Endmac string `protobuf:"bytes,8,opt,name=endmac,proto3" json:"endmac" gorm:"endmac:50"` //@go_tags(`gorm:"endmac:50" json:"endmac"`) 结束设备地址
|
|
Devicenum uint32 `protobuf:"varint,9,opt,name=devicenum,proto3" json:"devicenum" gorm:"devicenum"` //@go_tags(`gorm:"devicenum" json:"devicenum"`) 设备数量
|
|
Batchno string `protobuf:"bytes,10,opt,name=batchno,proto3" json:"batchno" gorm:"batchno;size:16;uniqueIndex"` //@go_tags(`gorm:"batchno;size:16;uniqueIndex" json:"batchno"`) 可读批次号(短码,全局唯一)
|
|
Remark string `protobuf:"bytes,11,opt,name=remark,proto3" json:"remark" gorm:"remark"` //@go_tags(`gorm:"remark" json:"remark"`) 备注
|
|
Channelid string `protobuf:"bytes,12,opt,name=channelid,proto3" json:"channelid" gorm:"channelid;size:16;index"` //@go_tags(`gorm:"channelid;size:16;index" json:"channelid"`) 渠道商id(短码,空=未分配渠道)
|
|
// 这批货由哪家代工厂生产(oem_factory.id,0=未指定)。与 brandid「挂谁的牌子卖」是两回事:
|
|
// 同一品牌可以换厂、同一家厂也给多个品牌代工,故独立成维度。存量批次为 0(当时还没有工厂档案)。
|
|
Factoryid uint32 `protobuf:"varint,13,opt,name=factoryid,proto3" json:"factoryid" gorm:"factoryid;index"` //@go_tags(`gorm:"factoryid;index" json:"factoryid"`) 代工厂id(0=未指定)
|
|
// 这一批货给渠道商的分成比例(万分比,0~10000)。放在批次而不是渠道商上:
|
|
// 同一家渠道商不同批次谈的比例可能不同,挂在渠道商上只能存一个值。
|
|
// ⚠️ 生产时冻结,事后改批次比例不影响已算完的结算单。
|
|
Sharerate int32 `protobuf:"varint,14,opt,name=sharerate,proto3" json:"sharerate" gorm:"sharerate"` //@go_tags(`gorm:"sharerate" json:"sharerate"`) 本批次渠道分成比例(万分比)
|
|
// 这一批设备的「绑定赠送」。放在批次而不是产品上:同一款产品不同批次(不同渠道/不同活动)
|
|
// 送的东西经常不一样,挂在产品上只能存一套,改一次会连带改掉已发出去的货的权益。
|
|
// 绑定时按设备所属批次发放,批次三项全为 0 才回退到产品上的旧字段(见 api_binddevice.go)。
|
|
Rewardvip uint32 `protobuf:"varint,15,opt,name=rewardvip,proto3" json:"rewardvip" gorm:"rewardvip"` //@go_tags(`gorm:"rewardvip" json:"rewardvip"`) 绑定赠送VIP天数(0=不送)
|
|
Rewardtranslate uint32 `protobuf:"varint,16,opt,name=rewardtranslate,proto3" json:"rewardtranslate" gorm:"rewardtranslate"` //@go_tags(`gorm:"rewardtranslate" json:"rewardtranslate"`) 绑定赠送翻译时长(分钟,0=不送)
|
|
Rewardmeeting uint32 `protobuf:"varint,17,opt,name=rewardmeeting,proto3" json:"rewardmeeting" gorm:"rewardmeeting"` //@go_tags(`gorm:"rewardmeeting" json:"rewardmeeting"`) 绑定赠送会议时长(分钟,0=不送)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBProductionBatch) Reset() {
|
|
*x = DBProductionBatch{}
|
|
mi := &file_db_proto_msgTypes[12]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBProductionBatch) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBProductionBatch) ProtoMessage() {}
|
|
|
|
func (x *DBProductionBatch) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[12]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBProductionBatch.ProtoReflect.Descriptor instead.
|
|
func (*DBProductionBatch) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{12}
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetTs() int64 {
|
|
if x != nil {
|
|
return x.Ts
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetBrandid() uint32 {
|
|
if x != nil {
|
|
return x.Brandid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetSerialstart() int64 {
|
|
if x != nil {
|
|
return x.Serialstart
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetSerialend() int64 {
|
|
if x != nil {
|
|
return x.Serialend
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetStartmac() string {
|
|
if x != nil {
|
|
return x.Startmac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetEndmac() string {
|
|
if x != nil {
|
|
return x.Endmac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetDevicenum() uint32 {
|
|
if x != nil {
|
|
return x.Devicenum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetBatchno() string {
|
|
if x != nil {
|
|
return x.Batchno
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetRemark() string {
|
|
if x != nil {
|
|
return x.Remark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetChannelid() string {
|
|
if x != nil {
|
|
return x.Channelid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetFactoryid() uint32 {
|
|
if x != nil {
|
|
return x.Factoryid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetSharerate() int32 {
|
|
if x != nil {
|
|
return x.Sharerate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetRewardvip() uint32 {
|
|
if x != nil {
|
|
return x.Rewardvip
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetRewardtranslate() uint32 {
|
|
if x != nil {
|
|
return x.Rewardtranslate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductionBatch) GetRewardmeeting() uint32 {
|
|
if x != nil {
|
|
return x.Rewardmeeting
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 工厂产品
|
|
type DBProduct struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 设备编码
|
|
Brandid uint32 `protobuf:"varint,2,opt,name=brandid,proto3" json:"brandid" gorm:"brandid;index"` //@go_tags(`gorm:"brandid;index" json:"brandid"`) 品牌商id
|
|
Devicetype DeviceType `protobuf:"varint,3,opt,name=devicetype,proto3,enum=DeviceType" json:"devicetype" gorm:"devicetype"` //@go_tags(`gorm:"devicetype" json:"devicetype"`) 设备类型
|
|
Devicename string `protobuf:"bytes,4,opt,name=devicename,proto3" json:"devicename" gorm:"devicename"` //@go_tags(`gorm:"devicename" json:"devicename"`) 设备名称
|
|
Productimage string `protobuf:"bytes,5,opt,name=productimage,proto3" json:"productimage" gorm:"productimage"` //@go_tags(`gorm:"productimage" json:"productimage"`) 产品图片
|
|
Scanuuid string `protobuf:"bytes,6,opt,name=scanuuid,proto3" json:"scanuuid" gorm:"scanuuid"` //@go_tags(`gorm:"scanuuid" json:"scanuuid"`) 设备扫描唯一id
|
|
Version string `protobuf:"bytes,7,opt,name=version,proto3" json:"version" gorm:"version"` //@go_tags(`gorm:"version" json:"version"`) 版本
|
|
Updatedescription string `protobuf:"bytes,9,opt,name=updatedescription,proto3" json:"updatedescription" gorm:"updatedescription"` //@go_tags(`gorm:"updatedescription" json:"updatedescription"`) 描述
|
|
Updatepackageaddress string `protobuf:"bytes,10,opt,name=updatepackageaddress,proto3" json:"updatepackageaddress" gorm:"updatepackageaddress"` //@go_tags(`gorm:"updatepackageaddress" json:"updatepackageaddress"`) 更新包地址=url
|
|
Versionid uint32 `protobuf:"varint,11,opt,name=versionid,proto3" json:"versionid" gorm:"versionid"` //@go_tags(`gorm:"versionid" json:"versionid"`) 版本id
|
|
Iscanbindagain bool `protobuf:"varint,12,opt,name=iscanbindagain,proto3" json:"iscanbindagain" gorm:"iscanbindagain"` //@go_tags(`gorm:"iscanbindagain" json:"iscanbindagain"`) 是否可以反复下发奖励
|
|
Bindrewardvpitime uint32 `protobuf:"varint,13,opt,name=bindrewardvpitime,proto3" json:"bindrewardvpitime" gorm:"bindrewardvpitime"` //@go_tags(`gorm:"bindrewardvpitime" json:"bindrewardvpitime"`) 是否奖励vip时间
|
|
Bindrewardtranslate uint32 `protobuf:"varint,14,opt,name=bindrewardtranslate,proto3" json:"bindrewardtranslate" gorm:"bindrewardtranslate"` //@go_tags(`gorm:"bindrewardtranslate" json:"bindrewardtranslate"`) 绑定奖励翻译次数
|
|
Bindrewardmeeting uint32 `protobuf:"varint,15,opt,name=bindrewardmeeting,proto3" json:"bindrewardmeeting" gorm:"bindrewardmeeting"` //@go_tags(`gorm:"bindrewardmeeting" json:"bindrewardmeeting"`) 绑定奖励会议次数
|
|
Iscontinuouschat bool `protobuf:"varint,16,opt,name=iscontinuouschat,proto3" json:"iscontinuouschat" gorm:"iscontinuouschat"` //@go_tags(`gorm:"iscontinuouschat" json:"iscontinuouschat"`) 是否连续对话
|
|
Eqenable bool `protobuf:"varint,17,opt,name=eqenable,proto3" json:"eqenable" gorm:"eqenable"` //@go_tags(`gorm:"eqenable" json:"eqenable"`) EQ是否启用
|
|
Keyenable bool `protobuf:"varint,18,opt,name=keyenable,proto3" json:"keyenable" gorm:"keyenable"` //@go_tags(`gorm:"keyenable" json:"keyenable"`) 按键是否启用
|
|
Workmodeenable bool `protobuf:"varint,19,opt,name=workmodeenable,proto3" json:"workmodeenable" gorm:"workmodeenable"` //@go_tags(`gorm:"workmodeenable" json:"workmodeenable"`) 工作模式是否启用
|
|
Callmodeenable bool `protobuf:"varint,20,opt,name=callmodeenable,proto3" json:"callmodeenable" gorm:"callmodeenable"` //@go_tags(`gorm:"callmodeenable" json:"callmodeenable"`) 通话模式是否启用
|
|
Ledenable bool `protobuf:"varint,21,opt,name=ledenable,proto3" json:"ledenable" gorm:"ledenable"` //@go_tags(`gorm:"ledenable" json:"ledenable"`) 闪灯开关是否启用
|
|
Finddeviceenable bool `protobuf:"varint,22,opt,name=finddeviceenable,proto3" json:"finddeviceenable" gorm:"finddeviceenable"` //@go_tags(`gorm:"finddeviceenable" json:"finddeviceenable"`) 查找设备开关是否启用
|
|
Noisereductionenable bool `protobuf:"varint,23,opt,name=noisereductionenable,proto3" json:"noisereductionenable" gorm:"noisereductionenable"` //@go_tags(`gorm:"noisereductionenable" json:"noisereductionenable"`) 降噪开关是否启用
|
|
Shutdownenable bool `protobuf:"varint,24,opt,name=shutdownenable,proto3" json:"shutdownenable" gorm:"shutdownenable"` //@go_tags(`gorm:"shutdownenable" json:"shutdownenable"`) 定时关机开关是否启用
|
|
Showcasebattery bool `protobuf:"varint,25,opt,name=showcasebattery,proto3" json:"showcasebattery" gorm:"showcasebattery"` //@go_tags(`gorm:"showcasebattery" json:"showcasebattery"`) 是否显示仓盒电量
|
|
Wakeupenable bool `protobuf:"varint,26,opt,name=wakeupenable,proto3" json:"wakeupenable" gorm:"wakeupenable"` //@go_tags(`gorm:"wakeupenable" json:"wakeupenable"`) 唤醒控制开关是否启用
|
|
Broadcastpeertranslate bool `protobuf:"varint,27,opt,name=broadcastpeertranslate,proto3" json:"broadcastpeertranslate" gorm:"broadcastpeertranslate"` //@go_tags(`gorm:"broadcastpeertranslate" json:"broadcastpeertranslate"`) 是否播报对方翻译内容
|
|
Channel string `protobuf:"bytes,28,opt,name=channel,proto3" json:"channel" gorm:"channel"` //@go_tags(`gorm:"channel" json:"channel"`) 产品渠道方 official/mobile
|
|
Channelextra string `protobuf:"bytes,29,opt,name=channelextra,proto3" json:"channelextra" gorm:"channelextra"` //@go_tags(`gorm:"channelextra" json:"channelextra"`) 渠道附加数据(JSON字符串)
|
|
Hideaiassistant bool `protobuf:"varint,30,opt,name=hideaiassistant,proto3" json:"hideaiassistant" gorm:"hideaiassistant"` //@go_tags(`gorm:"hideaiassistant" json:"hideaiassistant"`) 是否隐藏AI助手功能
|
|
Devicecodecount uint32 `protobuf:"varint,31,opt,name=devicecodecount,proto3" json:"devicecodecount" gorm:"devicecodecount"` //@go_tags(`gorm:"devicecodecount" json:"devicecodecount"`) 每副产品生产的设备码数量(0或1=单份,2=双份)
|
|
Bassfilter uint32 `protobuf:"varint,32,opt,name=bassfilter,proto3" json:"bassfilter" gorm:"bassfilter"` //@go_tags(`gorm:"bassfilter" json:"bassfilter"`) 过滤低音音频参数(0-1000)
|
|
Serialcursor int64 `protobuf:"varint,33,opt,name=serialcursor,proto3" json:"serialcursor" gorm:"serialcursor"` //@go_tags(`gorm:"serialcursor" json:"serialcursor"`) 产品级授权码序号游标(累加分配)
|
|
// 【老客户端兼容】厂家→品牌商改名前发布的 App 包按「非空 int」解析 factoryid,
|
|
// 字段一旦缺失,整个 user_getappconfig / user_getproduct 响应解析就抛 TypeError(设备列表、应用配置全废)。
|
|
// 此字段只出不入:gorm:"-" 不建列、不参与读写,由 user 模块读取层统一填成 brandid 的值下发。
|
|
// 服务端与新端一律以 brandid 为准,勿往这里写值。老包全部淘汰后可删。
|
|
Factoryid uint32 `protobuf:"varint,34,opt,name=factoryid,proto3" json:"factoryid" gorm:"-"` //@go_tags(`gorm:"-" json:"factoryid"`) [兼容]老客户端字段,值同 brandid
|
|
// 产品归属的应用(应用中心 app_product.name,如 Voitrans,Lumi),CSV 可多选、空=未绑定。
|
|
// 品牌商/渠道商账号的「应用」下拉即由本字段推导:只列出自己品牌名下产品绑定过的应用。
|
|
Appnames string `protobuf:"bytes,35,opt,name=appnames,proto3" json:"appnames" gorm:"appnames;size:255"` //@go_tags(`gorm:"appnames;size:255" json:"appnames"`) 绑定应用名CSV(空=未绑定)
|
|
// 产品用的是哪套芯片方案(DBSolutionProvider.id),也就是**方案ID(BID)**。
|
|
// 三个烧进固件的标识口径固定:CID=芯片公司(chip_vendor.id) / BID=方案公司(本字段) / PID=产品(本表 id);
|
|
// CID 由本字段 → solution_provider.vendor 推出,不在产品上另存(另存会在方案商换芯片时变成对不上的旧值)。
|
|
// 以前从品牌商推导,但同一品牌的不同产品可能用不同方案商的方案,推导会串号,故改为产品级绑定,新建产品必填。
|
|
Providerid uint32 `protobuf:"varint,36,opt,name=providerid,proto3" json:"providerid" gorm:"providerid;index"` //@go_tags(`gorm:"providerid;index" json:"providerid"`) 归属方案商id(CID)
|
|
Createtime int64 `protobuf:"varint,37,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间(秒);历史产品为0
|
|
// 产品说明:这款产品是什么、有什么特性,给后台运营与客户看的,与版本更新说明(updatedescription)无关。
|
|
Description string `protobuf:"bytes,38,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 产品说明(特性描述)
|
|
// 这款产品由哪家代工厂生产(oem_factory.id,0=未指定)。产品级是「默认由谁生产」,
|
|
// 生产批次上还有一个 factoryid,那个是「这一批实际由谁生产」——换厂时批次能覆盖,产品不用改。
|
|
// ⚠️ 字段名不能叫 factoryid:上面 34 号已被【老客户端兼容字段】占着,那个 factoryid 是
|
|
// 「厂家→品牌商」改名前老 App 解析用的,值恒等于 brandid、由 user 模块读取层填充,
|
|
// 复用它会让代工厂 id 被 brandid 覆盖掉。
|
|
// 注意芯片没有产品级字段:芯片由 providerid → solution_provider.vendor 推导,
|
|
// 存一份到产品上会在方案商换芯片时变成对不上的旧值,而 CID 是要烧进固件的。
|
|
Oemfactoryid uint32 `protobuf:"varint,39,opt,name=oemfactoryid,proto3" json:"oemfactoryid" gorm:"oemfactoryid;index"` //@go_tags(`gorm:"oemfactoryid;index" json:"oemfactoryid"`) 代工厂id(0=未指定)
|
|
// 固件升级判定放宽:开着时「设备版本 != 服务端版本」就允许升级,而不是只允许升到更高版本。
|
|
// 给开发/测试环境用——测试机的固件常常比后台挂的还新,按「更高才升级」会永远点不动升级按钮,
|
|
// 也没法把耳机刷回旧固件反复验证 OTA 流程。
|
|
// ⚠️ 正式产品别开:一次配置失误(比如后台挂了个旧版固件)就会把全量用户降级。
|
|
Updateonmismatch bool `protobuf:"varint,40,opt,name=updateonmismatch,proto3" json:"updateonmismatch" gorm:"updateonmismatch"` //@go_tags(`gorm:"updateonmismatch" json:"updateonmismatch"`) 版本不一致即可升级(开发用,默认关)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBProduct) Reset() {
|
|
*x = DBProduct{}
|
|
mi := &file_db_proto_msgTypes[13]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBProduct) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBProduct) ProtoMessage() {}
|
|
|
|
func (x *DBProduct) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[13]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBProduct.ProtoReflect.Descriptor instead.
|
|
func (*DBProduct) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{13}
|
|
}
|
|
|
|
func (x *DBProduct) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetBrandid() uint32 {
|
|
if x != nil {
|
|
return x.Brandid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetDevicetype() DeviceType {
|
|
if x != nil {
|
|
return x.Devicetype
|
|
}
|
|
return DeviceType_DeviceTypeUnknown
|
|
}
|
|
|
|
func (x *DBProduct) GetDevicename() string {
|
|
if x != nil {
|
|
return x.Devicename
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetProductimage() string {
|
|
if x != nil {
|
|
return x.Productimage
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetScanuuid() string {
|
|
if x != nil {
|
|
return x.Scanuuid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetUpdatedescription() string {
|
|
if x != nil {
|
|
return x.Updatedescription
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetUpdatepackageaddress() string {
|
|
if x != nil {
|
|
return x.Updatepackageaddress
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetVersionid() uint32 {
|
|
if x != nil {
|
|
return x.Versionid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetIscanbindagain() bool {
|
|
if x != nil {
|
|
return x.Iscanbindagain
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetBindrewardvpitime() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardvpitime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetBindrewardtranslate() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardtranslate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetBindrewardmeeting() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardmeeting
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetIscontinuouschat() bool {
|
|
if x != nil {
|
|
return x.Iscontinuouschat
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetEqenable() bool {
|
|
if x != nil {
|
|
return x.Eqenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetKeyenable() bool {
|
|
if x != nil {
|
|
return x.Keyenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetWorkmodeenable() bool {
|
|
if x != nil {
|
|
return x.Workmodeenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetCallmodeenable() bool {
|
|
if x != nil {
|
|
return x.Callmodeenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetLedenable() bool {
|
|
if x != nil {
|
|
return x.Ledenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetFinddeviceenable() bool {
|
|
if x != nil {
|
|
return x.Finddeviceenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetNoisereductionenable() bool {
|
|
if x != nil {
|
|
return x.Noisereductionenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetShutdownenable() bool {
|
|
if x != nil {
|
|
return x.Shutdownenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetShowcasebattery() bool {
|
|
if x != nil {
|
|
return x.Showcasebattery
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetWakeupenable() bool {
|
|
if x != nil {
|
|
return x.Wakeupenable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetBroadcastpeertranslate() bool {
|
|
if x != nil {
|
|
return x.Broadcastpeertranslate
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetChannel() string {
|
|
if x != nil {
|
|
return x.Channel
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetChannelextra() string {
|
|
if x != nil {
|
|
return x.Channelextra
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetHideaiassistant() bool {
|
|
if x != nil {
|
|
return x.Hideaiassistant
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBProduct) GetDevicecodecount() uint32 {
|
|
if x != nil {
|
|
return x.Devicecodecount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetBassfilter() uint32 {
|
|
if x != nil {
|
|
return x.Bassfilter
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetSerialcursor() int64 {
|
|
if x != nil {
|
|
return x.Serialcursor
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetFactoryid() uint32 {
|
|
if x != nil {
|
|
return x.Factoryid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetAppnames() string {
|
|
if x != nil {
|
|
return x.Appnames
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetProviderid() uint32 {
|
|
if x != nil {
|
|
return x.Providerid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProduct) GetOemfactoryid() uint32 {
|
|
if x != nil {
|
|
return x.Oemfactoryid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProduct) GetUpdateonmismatch() bool {
|
|
if x != nil {
|
|
return x.Updateonmismatch
|
|
}
|
|
return false
|
|
}
|
|
|
|
type DBProductVersion struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 版本id
|
|
Productid uint32 `protobuf:"varint,2,opt,name=productid,proto3" json:"productid" gorm:"productid;index"` //@go_tags(`gorm:"productid;index" json:"productid"`) 产品id
|
|
Version string `protobuf:"bytes,3,opt,name=version,proto3" json:"version" gorm:"version;index"` //@go_tags(`gorm:"version;index" json:"version"`) 版本
|
|
Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 描述
|
|
Updatepackageaddress string `protobuf:"bytes,5,opt,name=updatepackageaddress,proto3" json:"updatepackageaddress" gorm:"updatepackageaddress"` //@go_tags(`gorm:"updatepackageaddress" json:"updatepackageaddress"`) 更新包地址
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBProductVersion) Reset() {
|
|
*x = DBProductVersion{}
|
|
mi := &file_db_proto_msgTypes[14]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBProductVersion) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBProductVersion) ProtoMessage() {}
|
|
|
|
func (x *DBProductVersion) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[14]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBProductVersion.ProtoReflect.Descriptor instead.
|
|
func (*DBProductVersion) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{14}
|
|
}
|
|
|
|
func (x *DBProductVersion) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductVersion) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBProductVersion) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductVersion) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBProductVersion) GetUpdatepackageaddress() string {
|
|
if x != nil {
|
|
return x.Updatepackageaddress
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 渠道分发配置(下发客户端)。后台数据源已从各应用业务库的 channelapp 表迁到
|
|
// console 主库的 channel_app 表(comm.ChannelApp,按 app_name 作用域),此消息只作下发结构。
|
|
type DBChannelApp struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Channel int32 `protobuf:"varint,1,opt,name=channel,proto3" json:"channel" gorm:"channel;primaryKey"` //@go_tags(`gorm:"channel;primaryKey" json:"channel"`) 渠道
|
|
Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version" gorm:"version"` //@go_tags(`gorm:"version" json:"version"`) 当前线上版本
|
|
Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description" gorm:"description"` //@go_tags(`gorm:"description" json:"description"`) 描述
|
|
Address string `protobuf:"bytes,4,opt,name=address,proto3" json:"address" gorm:"address"` //@go_tags(`gorm:"address" json:"address"`) 下载地址
|
|
Tourists bool `protobuf:"varint,5,opt,name=tourists,proto3" json:"tourists" gorm:"tourists"` //@go_tags(`gorm:"tourists" json:"tourists"`) 是否开启游客登录
|
|
Allowskipdevicebinding bool `protobuf:"varint,6,opt,name=allowskipdevicebinding,proto3" json:"allowskipdevicebinding" gorm:"allowskipdevicebinding"` //@go_tags(`gorm:"allowskipdevicebinding" json:"allowskipdevicebinding"`) 是否允许跳过设备绑定
|
|
Paychannels string `protobuf:"bytes,7,opt,name=paychannels,proto3" json:"paychannels" gorm:"paychannels"` //@go_tags(`gorm:"paychannels" json:"paychannels"`) 支付渠道 wxpay,alipay,paypal,google,apple
|
|
Minversion string `protobuf:"bytes,8,opt,name=minversion,proto3" json:"minversion" gorm:"minversion"` //@go_tags(`gorm:"minversion" json:"minversion"`) 最低支持版本,低于它需更新
|
|
Forceupdate bool `protobuf:"varint,9,opt,name=forceupdate,proto3" json:"forceupdate" gorm:"forceupdate"` //@go_tags(`gorm:"forceupdate" json:"forceupdate"`) 强制更新开关(配合 minversion)
|
|
Changelog string `protobuf:"bytes,10,opt,name=changelog,proto3" json:"changelog" gorm:"changelog"` //@go_tags(`gorm:"changelog" json:"changelog"`) 更新日志
|
|
Reviewversion string `protobuf:"bytes,11,opt,name=reviewversion,proto3" json:"reviewversion" gorm:"reviewversion"` //@go_tags(`gorm:"reviewversion" json:"reviewversion"`) 审核中的版本号,客户端报此版本时可隐藏未过审功能
|
|
Status int32 `protobuf:"varint,12,opt,name=status,proto3" json:"status" gorm:"status"` //@go_tags(`gorm:"status" json:"status"`) 上架状态 0草稿 1已上架 2审核中 3已下架
|
|
Touristsversion string `protobuf:"bytes,13,opt,name=touristsversion,proto3" json:"touristsversion" gorm:"touristsversion"` //@go_tags(`gorm:"touristsversion" json:"touristsversion"`) 游客登录生效版本号;非空时仅该版本客户端可见游客登录,其余版本一律隐藏
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBChannelApp) Reset() {
|
|
*x = DBChannelApp{}
|
|
mi := &file_db_proto_msgTypes[15]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBChannelApp) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBChannelApp) ProtoMessage() {}
|
|
|
|
func (x *DBChannelApp) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[15]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBChannelApp.ProtoReflect.Descriptor instead.
|
|
func (*DBChannelApp) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{15}
|
|
}
|
|
|
|
func (x *DBChannelApp) GetChannel() int32 {
|
|
if x != nil {
|
|
return x.Channel
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannelApp) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetDescription() string {
|
|
if x != nil {
|
|
return x.Description
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetAddress() string {
|
|
if x != nil {
|
|
return x.Address
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetTourists() bool {
|
|
if x != nil {
|
|
return x.Tourists
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBChannelApp) GetAllowskipdevicebinding() bool {
|
|
if x != nil {
|
|
return x.Allowskipdevicebinding
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBChannelApp) GetPaychannels() string {
|
|
if x != nil {
|
|
return x.Paychannels
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetMinversion() string {
|
|
if x != nil {
|
|
return x.Minversion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetForceupdate() bool {
|
|
if x != nil {
|
|
return x.Forceupdate
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBChannelApp) GetChangelog() string {
|
|
if x != nil {
|
|
return x.Changelog
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetReviewversion() string {
|
|
if x != nil {
|
|
return x.Reviewversion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBChannelApp) GetStatus() int32 {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBChannelApp) GetTouristsversion() string {
|
|
if x != nil {
|
|
return x.Touristsversion
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 授权码数据(按产品分表 license_<pid十六进制>;核心=productid+number 产品级全局序号)
|
|
type DBAuthCode struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code" gorm:"code;primaryKey"` //@go_tags(`gorm:"code;primaryKey" json:"code"`) 授权码ID
|
|
Codetype Codetype `protobuf:"varint,2,opt,name=codetype,proto3,enum=Codetype" json:"codetype" gorm:"codetype"` //@go_tags(`gorm:"codetype" json:"codetype"`) 授权码类型 0:认证码 1:设备码
|
|
Brandid uint32 `protobuf:"varint,3,opt,name=brandid,proto3" json:"brandid" gorm:"brandid;index"` //@go_tags(`gorm:"brandid;index" json:"brandid"`) 品牌商id
|
|
Productid uint32 `protobuf:"varint,4,opt,name=productid,proto3" json:"productid" gorm:"productid;index:idx_product_mac"` //@go_tags(`gorm:"productid;index:idx_product_mac" json:"productid"`) 产品id
|
|
Number int64 `protobuf:"varint,5,opt,name=number,proto3" json:"number" gorm:"number;index"` //@go_tags(`gorm:"number;index" json:"number"`) 产品级全局序号
|
|
Batchno string `protobuf:"bytes,6,opt,name=batchno,proto3" json:"batchno" gorm:"batchno;size:16;index"` //@go_tags(`gorm:"batchno;size:16;index" json:"batchno"`) 生产批次号(短码,引用 production_batch.batchno)
|
|
Createtime int64 `protobuf:"varint,7,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间
|
|
Usedtime int64 `protobuf:"varint,9,opt,name=usedtime,proto3" json:"usedtime" gorm:"usedtime"` //@go_tags(`gorm:"usedtime" json:"usedtime"`) 使用时间
|
|
Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status" gorm:"status;index"` //@go_tags(`gorm:"status;index" json:"status"`) 状态 0:未使用 1:已使用 2:已过期
|
|
Uid string `protobuf:"bytes,11,opt,name=uid,proto3" json:"uid" gorm:"uid:50;index"` //@go_tags(`gorm:"uid:50;index" json:"uid"`) 用户ID
|
|
Devicemac string `protobuf:"bytes,12,opt,name=devicemac,proto3" json:"devicemac" gorm:"devicemac;index:idx_product_mac"` //@go_tags(`gorm:"devicemac;index:idx_product_mac" json:"devicemac"`) 地址
|
|
Disabled int32 `protobuf:"varint,13,opt,name=disabled,proto3" json:"disabled" gorm:"disabled;index"` //@go_tags(`gorm:"disabled;index" json:"disabled"`) 封禁状态 0:正常 -1:禁用
|
|
Channelid string `protobuf:"bytes,14,opt,name=channelid,proto3" json:"channelid" gorm:"channelid;size:16;index"` //@go_tags(`gorm:"channelid;size:16;index" json:"channelid"`) 渠道商id(短码,生产时随批次落库;空=未分配渠道)
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBAuthCode) Reset() {
|
|
*x = DBAuthCode{}
|
|
mi := &file_db_proto_msgTypes[16]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBAuthCode) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBAuthCode) ProtoMessage() {}
|
|
|
|
func (x *DBAuthCode) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[16]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBAuthCode.ProtoReflect.Descriptor instead.
|
|
func (*DBAuthCode) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{16}
|
|
}
|
|
|
|
func (x *DBAuthCode) GetCode() string {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAuthCode) GetCodetype() Codetype {
|
|
if x != nil {
|
|
return x.Codetype
|
|
}
|
|
return Codetype_AUTHCODE
|
|
}
|
|
|
|
func (x *DBAuthCode) GetBrandid() uint32 {
|
|
if x != nil {
|
|
return x.Brandid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetNumber() int64 {
|
|
if x != nil {
|
|
return x.Number
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetBatchno() string {
|
|
if x != nil {
|
|
return x.Batchno
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAuthCode) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetUsedtime() int64 {
|
|
if x != nil {
|
|
return x.Usedtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetStatus() int32 {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAuthCode) GetDevicemac() string {
|
|
if x != nil {
|
|
return x.Devicemac
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAuthCode) GetDisabled() int32 {
|
|
if x != nil {
|
|
return x.Disabled
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAuthCode) GetChannelid() string {
|
|
if x != nil {
|
|
return x.Channelid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 厂家公码(一厂家可有多码,每码独立启停且独立配置奖励;新用户扫码领奖励)
|
|
type DBFactoryPublicCode struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Code string `protobuf:"bytes,1,opt,name=code,proto3" json:"code" gorm:"column:code;size:32;primaryKey"` //@go_tags(`gorm:"column:code;size:32;primaryKey" json:"code"`) 公码(主键)
|
|
Brandid uint32 `protobuf:"varint,2,opt,name=brandid,proto3" json:"brandid" gorm:"brandid;index"` //@go_tags(`gorm:"brandid;index" json:"brandid"`) 品牌商id
|
|
Productid uint32 `protobuf:"varint,3,opt,name=productid,proto3" json:"productid" gorm:"productid;index"` //@go_tags(`gorm:"productid;index" json:"productid"`) 关联产品id(仅作分类标识,奖励读本表字段)
|
|
Remark string `protobuf:"bytes,4,opt,name=remark,proto3" json:"remark" gorm:"remark"` //@go_tags(`gorm:"remark" json:"remark"`) 备注(如批次/渠道说明)
|
|
Status int32 `protobuf:"varint,5,opt,name=status,proto3" json:"status" gorm:"status;index"` //@go_tags(`gorm:"status;index" json:"status"`) 状态 0:启用 1:停用
|
|
Maxuses uint32 `protobuf:"varint,6,opt,name=maxuses,proto3" json:"maxuses" gorm:"maxuses"` //@go_tags(`gorm:"maxuses" json:"maxuses"`) 最大核销人数 0=不限
|
|
Useduses uint32 `protobuf:"varint,7,opt,name=useduses,proto3" json:"useduses" gorm:"useduses"` //@go_tags(`gorm:"useduses" json:"useduses"`) 已核销人数
|
|
Expiretime int64 `protobuf:"varint,8,opt,name=expiretime,proto3" json:"expiretime" gorm:"expiretime"` //@go_tags(`gorm:"expiretime" json:"expiretime"`) 失效时间戳 0=永久
|
|
Bindrewardvpitime uint32 `protobuf:"varint,9,opt,name=bindrewardvpitime,proto3" json:"bindrewardvpitime" gorm:"bindrewardvpitime"` //@go_tags(`gorm:"bindrewardvpitime" json:"bindrewardvpitime"`) 奖励VIP天数
|
|
Bindrewardtranslate uint32 `protobuf:"varint,10,opt,name=bindrewardtranslate,proto3" json:"bindrewardtranslate" gorm:"bindrewardtranslate"` //@go_tags(`gorm:"bindrewardtranslate" json:"bindrewardtranslate"`) 奖励翻译分钟数
|
|
Bindrewardmeeting uint32 `protobuf:"varint,11,opt,name=bindrewardmeeting,proto3" json:"bindrewardmeeting" gorm:"bindrewardmeeting"` //@go_tags(`gorm:"bindrewardmeeting" json:"bindrewardmeeting"`) 奖励会议分钟数
|
|
Createtime int64 `protobuf:"varint,12,opt,name=createtime,proto3" json:"createtime" gorm:"createtime"` //@go_tags(`gorm:"createtime" json:"createtime"`) 创建时间
|
|
Updatetime int64 `protobuf:"varint,13,opt,name=updatetime,proto3" json:"updatetime" gorm:"updatetime"` //@go_tags(`gorm:"updatetime" json:"updatetime"`) 更新时间
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) Reset() {
|
|
*x = DBFactoryPublicCode{}
|
|
mi := &file_db_proto_msgTypes[17]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBFactoryPublicCode) ProtoMessage() {}
|
|
|
|
func (x *DBFactoryPublicCode) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[17]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBFactoryPublicCode.ProtoReflect.Descriptor instead.
|
|
func (*DBFactoryPublicCode) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{17}
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetCode() string {
|
|
if x != nil {
|
|
return x.Code
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetBrandid() uint32 {
|
|
if x != nil {
|
|
return x.Brandid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetProductid() uint32 {
|
|
if x != nil {
|
|
return x.Productid
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetRemark() string {
|
|
if x != nil {
|
|
return x.Remark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetStatus() int32 {
|
|
if x != nil {
|
|
return x.Status
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetMaxuses() uint32 {
|
|
if x != nil {
|
|
return x.Maxuses
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetUseduses() uint32 {
|
|
if x != nil {
|
|
return x.Useduses
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetExpiretime() int64 {
|
|
if x != nil {
|
|
return x.Expiretime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetBindrewardvpitime() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardvpitime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetBindrewardtranslate() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardtranslate
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetBindrewardmeeting() uint32 {
|
|
if x != nil {
|
|
return x.Bindrewardmeeting
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetCreatetime() int64 {
|
|
if x != nil {
|
|
return x.Createtime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBFactoryPublicCode) GetUpdatetime() int64 {
|
|
if x != nil {
|
|
return x.Updatetime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 本地化商品名称
|
|
type DBGoodsLocal struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Lang string `protobuf:"bytes,1,opt,name=lang,proto3" json:"lang" gorm:"lang"` //@go_tags(`gorm:"lang" json:"lang"`) 语言
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name" gorm:"name"` //@go_tags(`gorm:"name" json:"name"`) 产品名称
|
|
Currency string `protobuf:"bytes,3,opt,name=currency,proto3" json:"currency" gorm:"currency"` //@go_tags(`gorm:"currency" json:"currency"`) 货币符号
|
|
Price float64 `protobuf:"fixed64,6,opt,name=price,proto3" json:"price" gorm:"price"` //@go_tags(`gorm:"price" json:"price"`) 产品价格
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBGoodsLocal) Reset() {
|
|
*x = DBGoodsLocal{}
|
|
mi := &file_db_proto_msgTypes[18]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBGoodsLocal) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBGoodsLocal) ProtoMessage() {}
|
|
|
|
func (x *DBGoodsLocal) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[18]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBGoodsLocal.ProtoReflect.Descriptor instead.
|
|
func (*DBGoodsLocal) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{18}
|
|
}
|
|
|
|
func (x *DBGoodsLocal) GetLang() string {
|
|
if x != nil {
|
|
return x.Lang
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoodsLocal) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoodsLocal) GetCurrency() string {
|
|
if x != nil {
|
|
return x.Currency
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoodsLocal) GetPrice() float64 {
|
|
if x != nil {
|
|
return x.Price
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 支付商品
|
|
type DBGoods struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey"` //@go_tags(`gorm:"id;primaryKey" json:"id"`) 产品id
|
|
Enable bool `protobuf:"varint,2,opt,name=enable,proto3" json:"enable" gorm:"enable"` //@go_tags(`gorm:"enable" json:"enable"`) 是否启用
|
|
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name" gorm:"name"` //@go_tags(`gorm:"name" json:"name"`) 产品名称
|
|
Localname string `protobuf:"bytes,4,opt,name=localname,proto3" json:"localname" gorm:"localname"` //@go_tags(`gorm:"localname" json:"localname"`) 产品本地名称 采用json存储 {"zh-CN":{"name":"中文名称","currency":"¥","price":100}}
|
|
Price int32 `protobuf:"varint,6,opt,name=price,proto3" json:"price" gorm:"price"` //@go_tags(`gorm:"price" json:"price"`) 产品价格
|
|
Usagetype UsageType `protobuf:"varint,7,opt,name=usagetype,proto3,enum=UsageType" json:"usagetype" gorm:"usagetype"` //@go_tags(`gorm:"usagetype" json:"usagetype"`) 产品类型 0:普通产品 1:会员产品
|
|
Ainum int64 `protobuf:"varint,8,opt,name=ainum,proto3" json:"ainum" gorm:"ainum"` //@go_tags(`gorm:"ainum" json:"ainum"`) AI资源点
|
|
Meetnum int64 `protobuf:"varint,9,opt,name=meetnum,proto3" json:"meetnum" gorm:"meetnum"` //@go_tags(`gorm:"meetnum" json:"meetnum"`) 会议使用量资源点
|
|
Tradenum int64 `protobuf:"varint,10,opt,name=tradenum,proto3" json:"tradenum" gorm:"tradenum"` //@go_tags(`gorm:"tradenum" json:"tradenum"`) 翻译资源点
|
|
Viptime int32 `protobuf:"varint,11,opt,name=viptime,proto3" json:"viptime" gorm:"viptime"` //@go_tags(`gorm:"viptime" json:"viptime"`) 会员时间
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBGoods) Reset() {
|
|
*x = DBGoods{}
|
|
mi := &file_db_proto_msgTypes[19]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBGoods) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBGoods) ProtoMessage() {}
|
|
|
|
func (x *DBGoods) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[19]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBGoods.ProtoReflect.Descriptor instead.
|
|
func (*DBGoods) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{19}
|
|
}
|
|
|
|
func (x *DBGoods) GetId() string {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoods) GetEnable() bool {
|
|
if x != nil {
|
|
return x.Enable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBGoods) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoods) GetLocalname() string {
|
|
if x != nil {
|
|
return x.Localname
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBGoods) GetPrice() int32 {
|
|
if x != nil {
|
|
return x.Price
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBGoods) GetUsagetype() UsageType {
|
|
if x != nil {
|
|
return x.Usagetype
|
|
}
|
|
return UsageType_UsageNull
|
|
}
|
|
|
|
func (x *DBGoods) GetAinum() int64 {
|
|
if x != nil {
|
|
return x.Ainum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBGoods) GetMeetnum() int64 {
|
|
if x != nil {
|
|
return x.Meetnum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBGoods) GetTradenum() int64 {
|
|
if x != nil {
|
|
return x.Tradenum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBGoods) GetViptime() int32 {
|
|
if x != nil {
|
|
return x.Viptime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 语音包管理
|
|
type DBWakeupVoice struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint32 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 唤醒语音id
|
|
Enable bool `protobuf:"varint,2,opt,name=enable,proto3" json:"enable" gorm:"enable"` //@go_tags(`gorm:"enable" json:"enable"`) 是否启用
|
|
Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name" gorm:"name"` //@go_tags(`gorm:"name" json:"name"`) 唤醒语音名称
|
|
Desc string `protobuf:"bytes,4,opt,name=desc,proto3" json:"desc" gorm:"desc"` //@go_tags(`gorm:"desc" json:"desc"`) 唤醒语音描述
|
|
Version string `protobuf:"bytes,5,opt,name=version,proto3" json:"version" gorm:"version;index"` //@go_tags(`gorm:"version;index" json:"version"`) 版本
|
|
Packagaddress string `protobuf:"bytes,6,opt,name=packagaddress,proto3" json:"packagaddress" gorm:"packagaddress"` //@go_tags(`gorm:"packagaddress" json:"packagaddress"`) 唤醒语音地址
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBWakeupVoice) Reset() {
|
|
*x = DBWakeupVoice{}
|
|
mi := &file_db_proto_msgTypes[20]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBWakeupVoice) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBWakeupVoice) ProtoMessage() {}
|
|
|
|
func (x *DBWakeupVoice) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[20]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBWakeupVoice.ProtoReflect.Descriptor instead.
|
|
func (*DBWakeupVoice) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{20}
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetId() uint32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetEnable() bool {
|
|
if x != nil {
|
|
return x.Enable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetDesc() string {
|
|
if x != nil {
|
|
return x.Desc
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetVersion() string {
|
|
if x != nil {
|
|
return x.Version
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBWakeupVoice) GetPackagaddress() string {
|
|
if x != nil {
|
|
return x.Packagaddress
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 用户日志
|
|
type DBUserUseLog struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 积分日志id
|
|
Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid" gorm:"uid:50;index"` //@go_tags(`gorm:"uid:50;index" json:"uid"`) 用户ID
|
|
Ts int64 `protobuf:"varint,3,opt,name=ts,proto3" json:"ts" gorm:"ts;index"` //@go_tags(`gorm:"ts;index" json:"ts"`) 记录时间
|
|
Logtype UserLogType `protobuf:"varint,4,opt,name=logtype,proto3,enum=UserLogType" json:"logtype" gorm:"logtype;index"` //@go_tags(`gorm:"logtype;index" json:"logtype"`) 日志类型
|
|
Addvipday int64 `protobuf:"varint,5,opt,name=addvipday,proto3" json:"addvipday" gorm:"viptime"` //@go_tags(`gorm:"viptime" json:"addvipday"`) 会员时间
|
|
Addagentintegral int64 `protobuf:"varint,6,opt,name=addagentintegral,proto3" json:"addagentintegral" gorm:"addagentintegral"` //@go_tags(`gorm:"addagentintegral" json:"addagentintegral"`) 智能体资源点
|
|
Addtradesecond int64 `protobuf:"varint,7,opt,name=addtradesecond,proto3" json:"addtradesecond" gorm:"addtradesecond"` //@go_tags(`gorm:"addtradesecond" json:"addtradesecond"`) 翻译资源点使用时常
|
|
Addmeetsecond int64 `protobuf:"varint,8,opt,name=addmeetsecond,proto3" json:"addmeetsecond" gorm:"addmeetsecond"` //@go_tags(`gorm:"addmeetsecond" json:"addmeetsecond"`) 会议使用时常
|
|
Extra string `protobuf:"bytes,9,opt,name=extra,proto3" json:"extra" gorm:"extra"` //@go_tags(`gorm:"extra" json:"extra"`) 附加数据
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUserUseLog) Reset() {
|
|
*x = DBUserUseLog{}
|
|
mi := &file_db_proto_msgTypes[21]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUserUseLog) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUserUseLog) ProtoMessage() {}
|
|
|
|
func (x *DBUserUseLog) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[21]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUserUseLog.ProtoReflect.Descriptor instead.
|
|
func (*DBUserUseLog) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{21}
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetId() uint64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetTs() int64 {
|
|
if x != nil {
|
|
return x.Ts
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetLogtype() UserLogType {
|
|
if x != nil {
|
|
return x.Logtype
|
|
}
|
|
return UserLogType_UserLogTypeUnknown
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetAddvipday() int64 {
|
|
if x != nil {
|
|
return x.Addvipday
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetAddagentintegral() int64 {
|
|
if x != nil {
|
|
return x.Addagentintegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetAddtradesecond() int64 {
|
|
if x != nil {
|
|
return x.Addtradesecond
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetAddmeetsecond() int64 {
|
|
if x != nil {
|
|
return x.Addmeetsecond
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserUseLog) GetExtra() string {
|
|
if x != nil {
|
|
return x.Extra
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 用户统计数据
|
|
type DBUserStatistics struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid" gorm:"uid:50;primaryKey"` //@go_tags(`gorm:"uid:50;primaryKey" json:"uid"`) 用户ID
|
|
Aichatnum int64 `protobuf:"varint,2,opt,name=aichatnum,proto3" json:"aichatnum" gorm:"aichatnum"` //@go_tags(`gorm:"aichatnum" json:"aichatnum"`) AI聊天次数
|
|
Aichatuptoken int64 `protobuf:"varint,3,opt,name=aichatuptoken,proto3" json:"aichatuptoken" gorm:"aichatuptoken"` //@go_tags(`gorm:"aichatuptoken" json:"aichatuptoken"`) AI聊天上报token
|
|
Aichatdowntoken int64 `protobuf:"varint,4,opt,name=aichatdowntoken,proto3" json:"aichatdowntoken" gorm:"aichatdowntoken"` //@go_tags(`gorm:"aichatdowntoken" json:"aichatdowntoken"`) AI聊天下行token
|
|
Meetnum int64 `protobuf:"varint,5,opt,name=meetnum,proto3" json:"meetnum" gorm:"meetnum"` //@go_tags(`gorm:"meetnum" json:"meetnum"`) 会议使用量资源点
|
|
Meettime int64 `protobuf:"varint,6,opt,name=meettime,proto3" json:"meettime" gorm:"meettime"` //@go_tags(`gorm:"meettime" json:"meettime"`) 会议使用时常
|
|
Trademodel1Num int64 `protobuf:"varint,7,opt,name=trademodel1num,proto3" json:"trademodel1num" gorm:"trademodel1num"` //@go_tags(`gorm:"trademodel1num" json:"trademodel1num"`) 翻译模式1次数
|
|
Trademodel1Time int64 `protobuf:"varint,8,opt,name=trademodel1time,proto3" json:"trademodel1time" gorm:"trademodel1time"` //@go_tags(`gorm:"trademodel1time" json:"trademodel1time"`) 翻译模式1时常
|
|
Trademodel2Num int64 `protobuf:"varint,9,opt,name=trademodel2num,proto3" json:"trademodel2num" gorm:"trademodel2num"` //@go_tags(`gorm:"trademodel2num" json:"trademodel2num"`) 翻译模式2次数
|
|
Trademodel2Time int64 `protobuf:"varint,10,opt,name=trademodel2time,proto3" json:"trademodel2time" gorm:"trademodel2time"` //@go_tags(`gorm:"trademodel2time" json:"trademodel2time"`) 翻译模式2时常
|
|
Trademodel3Num int32 `protobuf:"varint,11,opt,name=trademodel3num,proto3" json:"trademodel3num" gorm:"trademodel3num"` //@go_tags(`gorm:"trademodel3num" json:"trademodel3num"`) 翻译模式3次数
|
|
Trademodel3Time int64 `protobuf:"varint,12,opt,name=trademodel3time,proto3" json:"trademodel3time" gorm:"trademodel3time"` //@go_tags(`gorm:"trademodel3time" json:"trademodel3time"`) 翻译模式3时常
|
|
Trademodel4Num int32 `protobuf:"varint,13,opt,name=trademodel4num,proto3" json:"trademodel4num" gorm:"trademodel4num"` //@go_tags(`gorm:"trademodel4num" json:"trademodel4num"`) 翻译模式4次数
|
|
Trademodel4Time int64 `protobuf:"varint,14,opt,name=trademodel4time,proto3" json:"trademodel4time" gorm:"trademodel4time"` //@go_tags(`gorm:"trademodel4time" json:"trademodel4time"`) 翻译模式4时常
|
|
Trademodel5Num int32 `protobuf:"varint,15,opt,name=trademodel5num,proto3" json:"trademodel5num" gorm:"trademodel5num"` //@go_tags(`gorm:"trademodel5num" json:"trademodel5num"`) 翻译模式5次数
|
|
Tradewordcount int32 `protobuf:"varint,16,opt,name=tradewordcount,proto3" json:"tradewordcount" gorm:"tradewordcount"` //@go_tags(`gorm:"tradewordcount" json:"tradewordcount"`) 翻译文本长度
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBUserStatistics) Reset() {
|
|
*x = DBUserStatistics{}
|
|
mi := &file_db_proto_msgTypes[22]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBUserStatistics) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBUserStatistics) ProtoMessage() {}
|
|
|
|
func (x *DBUserStatistics) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[22]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBUserStatistics.ProtoReflect.Descriptor instead.
|
|
func (*DBUserStatistics) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{22}
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetUid() string {
|
|
if x != nil {
|
|
return x.Uid
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetAichatnum() int64 {
|
|
if x != nil {
|
|
return x.Aichatnum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetAichatuptoken() int64 {
|
|
if x != nil {
|
|
return x.Aichatuptoken
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetAichatdowntoken() int64 {
|
|
if x != nil {
|
|
return x.Aichatdowntoken
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetMeetnum() int64 {
|
|
if x != nil {
|
|
return x.Meetnum
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetMeettime() int64 {
|
|
if x != nil {
|
|
return x.Meettime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel1Num() int64 {
|
|
if x != nil {
|
|
return x.Trademodel1Num
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel1Time() int64 {
|
|
if x != nil {
|
|
return x.Trademodel1Time
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel2Num() int64 {
|
|
if x != nil {
|
|
return x.Trademodel2Num
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel2Time() int64 {
|
|
if x != nil {
|
|
return x.Trademodel2Time
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel3Num() int32 {
|
|
if x != nil {
|
|
return x.Trademodel3Num
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel3Time() int64 {
|
|
if x != nil {
|
|
return x.Trademodel3Time
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel4Num() int32 {
|
|
if x != nil {
|
|
return x.Trademodel4Num
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel4Time() int64 {
|
|
if x != nil {
|
|
return x.Trademodel4Time
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTrademodel5Num() int32 {
|
|
if x != nil {
|
|
return x.Trademodel5Num
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBUserStatistics) GetTradewordcount() int32 {
|
|
if x != nil {
|
|
return x.Tradewordcount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// App综合统计(日/月/年三张表共用同一结构)
|
|
type DBAppStat struct {
|
|
state protoimpl.MessageState `protogen:"open.v1"`
|
|
Id uint64 `protobuf:"varint,1,opt,name=id,proto3" json:"id" gorm:"id;primaryKey;autoIncrement"` //@go_tags(`gorm:"id;primaryKey;autoIncrement" json:"id"`) 主键
|
|
StatDate string `protobuf:"bytes,2,opt,name=stat_date,json=statDate,proto3" json:"stat_date" gorm:"type:varchar(20);uniqueIndex"` //@go_tags(`gorm:"type:varchar(20);uniqueIndex" json:"stat_date"`) 统计日期 日:2006-01-02 月:2006-01 年:2006
|
|
// 支付统计
|
|
PayAmount int64 `protobuf:"varint,3,opt,name=pay_amount,json=payAmount,proto3" json:"pay_amount" gorm:"pay_amount"` //@go_tags(`gorm:"pay_amount" json:"pay_amount"`) 支付金额(分)
|
|
OrderCount int32 `protobuf:"varint,22,opt,name=order_count,json=orderCount,proto3" json:"order_count" gorm:"order_count"` //@go_tags(`gorm:"order_count" json:"order_count"`) 创建订单数
|
|
PayCount int32 `protobuf:"varint,4,opt,name=pay_count,json=payCount,proto3" json:"pay_count" gorm:"pay_count"` //@go_tags(`gorm:"pay_count" json:"pay_count"`) 有效订单数(已支付)
|
|
FailedOrderCount int32 `protobuf:"varint,23,opt,name=failed_order_count,json=failedOrderCount,proto3" json:"failed_order_count" gorm:"failed_order_count"` //@go_tags(`gorm:"failed_order_count" json:"failed_order_count"`) 失败订单数
|
|
PayUserCount int32 `protobuf:"varint,5,opt,name=pay_user_count,json=payUserCount,proto3" json:"pay_user_count" gorm:"pay_user_count"` //@go_tags(`gorm:"pay_user_count" json:"pay_user_count"`) 付费用户数
|
|
// 发放资源统计
|
|
AddVipDays int64 `protobuf:"varint,6,opt,name=add_vip_days,json=addVipDays,proto3" json:"add_vip_days" gorm:"add_vip_days"` //@go_tags(`gorm:"add_vip_days" json:"add_vip_days"`) 发放VIP天数
|
|
AddAiIntegral int64 `protobuf:"varint,7,opt,name=add_ai_integral,json=addAiIntegral,proto3" json:"add_ai_integral" gorm:"add_ai_integral"` //@go_tags(`gorm:"add_ai_integral" json:"add_ai_integral"`) 发放AI积分
|
|
AddTradeSecond int64 `protobuf:"varint,8,opt,name=add_trade_second,json=addTradeSecond,proto3" json:"add_trade_second" gorm:"add_trade_second"` //@go_tags(`gorm:"add_trade_second" json:"add_trade_second"`) 发放翻译时长(秒)
|
|
AddMeetSecond int64 `protobuf:"varint,9,opt,name=add_meet_second,json=addMeetSecond,proto3" json:"add_meet_second" gorm:"add_meet_second"` //@go_tags(`gorm:"add_meet_second" json:"add_meet_second"`) 发放会议时长(秒)
|
|
// AI聊天消耗统计
|
|
AiChatCount int64 `protobuf:"varint,10,opt,name=ai_chat_count,json=aiChatCount,proto3" json:"ai_chat_count" gorm:"ai_chat_count"` //@go_tags(`gorm:"ai_chat_count" json:"ai_chat_count"`) AI聊天次数
|
|
AiUpToken int64 `protobuf:"varint,11,opt,name=ai_up_token,json=aiUpToken,proto3" json:"ai_up_token" gorm:"ai_up_token"` //@go_tags(`gorm:"ai_up_token" json:"ai_up_token"`) AI上行token
|
|
AiDownToken int64 `protobuf:"varint,12,opt,name=ai_down_token,json=aiDownToken,proto3" json:"ai_down_token" gorm:"ai_down_token"` //@go_tags(`gorm:"ai_down_token" json:"ai_down_token"`) AI下行token
|
|
// 翻译消耗统计
|
|
TradeCount int64 `protobuf:"varint,13,opt,name=trade_count,json=tradeCount,proto3" json:"trade_count" gorm:"trade_count"` //@go_tags(`gorm:"trade_count" json:"trade_count"`) 翻译次数
|
|
TradeTime int64 `protobuf:"varint,14,opt,name=trade_time,json=tradeTime,proto3" json:"trade_time" gorm:"trade_time"` //@go_tags(`gorm:"trade_time" json:"trade_time"`) 翻译时长消耗(秒)
|
|
TradeWords int64 `protobuf:"varint,15,opt,name=trade_words,json=tradeWords,proto3" json:"trade_words" gorm:"trade_words"` //@go_tags(`gorm:"trade_words" json:"trade_words"`) 翻译字数
|
|
// 会议消耗统计
|
|
MeetCount int64 `protobuf:"varint,16,opt,name=meet_count,json=meetCount,proto3" json:"meet_count" gorm:"meet_count"` //@go_tags(`gorm:"meet_count" json:"meet_count"`) 会议次数
|
|
MeetTime int64 `protobuf:"varint,17,opt,name=meet_time,json=meetTime,proto3" json:"meet_time" gorm:"meet_time"` //@go_tags(`gorm:"meet_time" json:"meet_time"`) 会议时长消耗(秒)
|
|
// 用户统计
|
|
NewUserCount int32 `protobuf:"varint,18,opt,name=new_user_count,json=newUserCount,proto3" json:"new_user_count" gorm:"new_user_count"` //@go_tags(`gorm:"new_user_count" json:"new_user_count"`) 新增注册用户数
|
|
LoginCount int32 `protobuf:"varint,19,opt,name=login_count,json=loginCount,proto3" json:"login_count" gorm:"login_count"` //@go_tags(`gorm:"login_count" json:"login_count"`) 登录次数
|
|
ActiveUserCount int32 `protobuf:"varint,24,opt,name=active_user_count,json=activeUserCount,proto3" json:"active_user_count" gorm:"active_user_count"` //@go_tags(`gorm:"active_user_count" json:"active_user_count"`) 活跃用户数(当期有登录行为)
|
|
TotalUserCount int64 `protobuf:"varint,25,opt,name=total_user_count,json=totalUserCount,proto3" json:"total_user_count" gorm:"total_user_count"` //@go_tags(`gorm:"total_user_count" json:"total_user_count"`) 累计用户总数(快照)
|
|
VipUserCount int32 `protobuf:"varint,26,opt,name=vip_user_count,json=vipUserCount,proto3" json:"vip_user_count" gorm:"vip_user_count"` //@go_tags(`gorm:"vip_user_count" json:"vip_user_count"`) 当期新增VIP用户数
|
|
// 设备统计
|
|
BindDeviceCount int32 `protobuf:"varint,20,opt,name=bind_device_count,json=bindDeviceCount,proto3" json:"bind_device_count" gorm:"bind_device_count"` //@go_tags(`gorm:"bind_device_count" json:"bind_device_count"`) 绑定设备数(激活)
|
|
ActiveDeviceCount int32 `protobuf:"varint,27,opt,name=active_device_count,json=activeDeviceCount,proto3" json:"active_device_count" gorm:"active_device_count"` //@go_tags(`gorm:"active_device_count" json:"active_device_count"`) 活跃设备数(当期有使用)
|
|
UpdateTime int64 `protobuf:"varint,21,opt,name=update_time,json=updateTime,proto3" json:"update_time" gorm:"update_time"` //@go_tags(`gorm:"update_time" json:"update_time"`) 更新时间
|
|
unknownFields protoimpl.UnknownFields
|
|
sizeCache protoimpl.SizeCache
|
|
}
|
|
|
|
func (x *DBAppStat) Reset() {
|
|
*x = DBAppStat{}
|
|
mi := &file_db_proto_msgTypes[23]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
|
|
func (x *DBAppStat) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*DBAppStat) ProtoMessage() {}
|
|
|
|
func (x *DBAppStat) ProtoReflect() protoreflect.Message {
|
|
mi := &file_db_proto_msgTypes[23]
|
|
if x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use DBAppStat.ProtoReflect.Descriptor instead.
|
|
func (*DBAppStat) Descriptor() ([]byte, []int) {
|
|
return file_db_proto_rawDescGZIP(), []int{23}
|
|
}
|
|
|
|
func (x *DBAppStat) GetId() uint64 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetStatDate() string {
|
|
if x != nil {
|
|
return x.StatDate
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *DBAppStat) GetPayAmount() int64 {
|
|
if x != nil {
|
|
return x.PayAmount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetOrderCount() int32 {
|
|
if x != nil {
|
|
return x.OrderCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetPayCount() int32 {
|
|
if x != nil {
|
|
return x.PayCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetFailedOrderCount() int32 {
|
|
if x != nil {
|
|
return x.FailedOrderCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetPayUserCount() int32 {
|
|
if x != nil {
|
|
return x.PayUserCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAddVipDays() int64 {
|
|
if x != nil {
|
|
return x.AddVipDays
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAddAiIntegral() int64 {
|
|
if x != nil {
|
|
return x.AddAiIntegral
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAddTradeSecond() int64 {
|
|
if x != nil {
|
|
return x.AddTradeSecond
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAddMeetSecond() int64 {
|
|
if x != nil {
|
|
return x.AddMeetSecond
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAiChatCount() int64 {
|
|
if x != nil {
|
|
return x.AiChatCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAiUpToken() int64 {
|
|
if x != nil {
|
|
return x.AiUpToken
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetAiDownToken() int64 {
|
|
if x != nil {
|
|
return x.AiDownToken
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetTradeCount() int64 {
|
|
if x != nil {
|
|
return x.TradeCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetTradeTime() int64 {
|
|
if x != nil {
|
|
return x.TradeTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetTradeWords() int64 {
|
|
if x != nil {
|
|
return x.TradeWords
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetMeetCount() int64 {
|
|
if x != nil {
|
|
return x.MeetCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetMeetTime() int64 {
|
|
if x != nil {
|
|
return x.MeetTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetNewUserCount() int32 {
|
|
if x != nil {
|
|
return x.NewUserCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetLoginCount() int32 {
|
|
if x != nil {
|
|
return x.LoginCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetActiveUserCount() int32 {
|
|
if x != nil {
|
|
return x.ActiveUserCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetTotalUserCount() int64 {
|
|
if x != nil {
|
|
return x.TotalUserCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetVipUserCount() int32 {
|
|
if x != nil {
|
|
return x.VipUserCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetBindDeviceCount() int32 {
|
|
if x != nil {
|
|
return x.BindDeviceCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetActiveDeviceCount() int32 {
|
|
if x != nil {
|
|
return x.ActiveDeviceCount
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *DBAppStat) GetUpdateTime() int64 {
|
|
if x != nil {
|
|
return x.UpdateTime
|
|
}
|
|
return 0
|
|
}
|
|
|
|
var File_db_proto protoreflect.FileDescriptor
|
|
|
|
const file_db_proto_rawDesc = "" +
|
|
"\n" +
|
|
"\bdb.proto\x1a\n" +
|
|
"enum.proto\"\xf6\t\n" +
|
|
"\x06DBUser\x12\x10\n" +
|
|
"\x03uid\x18\x01 \x01(\tR\x03uid\x12\x12\n" +
|
|
"\x04mail\x18\x02 \x01(\tR\x04mail\x12\x14\n" +
|
|
"\x05phone\x18\x03 \x01(\tR\x05phone\x12\x12\n" +
|
|
"\x04name\x18\x05 \x01(\tR\x04name\x12\x16\n" +
|
|
"\x06avatar\x18\b \x01(\tR\x06avatar\x12\x1e\n" +
|
|
"\n" +
|
|
"phonemodel\x18\n" +
|
|
" \x01(\tR\n" +
|
|
"phonemodel\x12\x1a\n" +
|
|
"\bphonemac\x18\v \x01(\tR\bphonemac\x12\x18\n" +
|
|
"\aaccount\x18\f \x01(\tR\aaccount\x12\x1a\n" +
|
|
"\bpassword\x18\r \x01(\tR\bpassword\x12\"\n" +
|
|
"\flastsgintime\x18\x14 \x01(\x03R\flastsgintime\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\x15 \x01(\x03R\n" +
|
|
"createtime\x12\x1a\n" +
|
|
"\blanguage\x18\x16 \x01(\tR\blanguage\x12\x1e\n" +
|
|
"\n" +
|
|
"servicetag\x18\x17 \x01(\tR\n" +
|
|
"servicetag\x12&\n" +
|
|
"\achannel\x18\x18 \x01(\x0e2\f.UserChannelR\achannel\x12\x18\n" +
|
|
"\aversion\x18\x19 \x01(\tR\aversion\x12 \n" +
|
|
"\x05State\x18\x1a \x01(\x0e2\n" +
|
|
".UserStateR\x05State\x12\x1e\n" +
|
|
"\n" +
|
|
"canceltime\x18\x1b \x01(\x03R\n" +
|
|
"canceltime\x12\x1a\n" +
|
|
"\bwxopenid\x18\x1e \x01(\tR\bwxopenid\x12\"\n" +
|
|
"\fgoogleopenid\x18\x1f \x01(\tR\fgoogleopenid\x12&\n" +
|
|
"\x0efacebookopenid\x18 \x01(\tR\x0efacebookopenid\x12 \n" +
|
|
"\vappleopenid\x18! \x01(\tR\vappleopenid\x12\x1e\n" +
|
|
"\n" +
|
|
"isgiveaway\x18$ \x01(\bR\n" +
|
|
"isgiveaway\x12\x16\n" +
|
|
"\x06gender\x18% \x01(\x05R\x06gender\x12!\n" +
|
|
"\fcountry_code\x18& \x01(\tR\vcountryCode\x12%\n" +
|
|
"\x0econtinent_code\x18' \x01(\tR\rcontinentCode\x12\x14\n" +
|
|
"\x05viplv\x18( \x01(\x05R\x05viplv\x12\x1e\n" +
|
|
"\n" +
|
|
"vipexptime\x18) \x01(\x03R\n" +
|
|
"vipexptime\x12&\n" +
|
|
"\x0eaichatintegral\x18* \x01(\x03R\x0eaichatintegral\x120\n" +
|
|
"\x13aichattotalintegral\x18+ \x01(\x03R\x13aichattotalintegral\x12$\n" +
|
|
"\rtradeintegral\x18, \x01(\x03R\rtradeintegral\x12.\n" +
|
|
"\x12tradetotalintegral\x18- \x01(\x03R\x12tradetotalintegral\x12\"\n" +
|
|
"\fmeetintegral\x18. \x01(\x03R\fmeetintegral\x12,\n" +
|
|
"\x11meettotalintegral\x18/ \x01(\x03R\x11meettotalintegral\x12&\n" +
|
|
"\x0eisactivatecode\x180 \x01(\bR\x0eisactivatecode\x12,\n" +
|
|
"\x11lastbindproductid\x181 \x01(\rR\x11lastbindproductid\x12,\n" +
|
|
"\x11lastbindchannelid\x182 \x01(\tR\x11lastbindchannelid\x12\x1e\n" +
|
|
"\n" +
|
|
"idverified\x183 \x01(\bR\n" +
|
|
"idverified\x12&\n" +
|
|
"\x0eidverifiedtime\x184 \x01(\x03R\x0eidverifiedtime\"\xec\x02\n" +
|
|
"\x0eDBUserIdVerify\x12\x10\n" +
|
|
"\x03uid\x18\x01 \x01(\tR\x03uid\x12\x1a\n" +
|
|
"\brealname\x18\x02 \x01(\tR\brealname\x12\x1e\n" +
|
|
"\n" +
|
|
"idcardmask\x18\x03 \x01(\tR\n" +
|
|
"idcardmask\x12\x1e\n" +
|
|
"\n" +
|
|
"idcardhash\x18\x04 \x01(\tR\n" +
|
|
"idcardhash\x12\x1a\n" +
|
|
"\bprovider\x18\x05 \x01(\tR\bprovider\x12\x14\n" +
|
|
"\x05svcid\x18\x06 \x01(\tR\x05svcid\x12\x18\n" +
|
|
"\abizcode\x18\a \x01(\tR\abizcode\x12\x1e\n" +
|
|
"\n" +
|
|
"verifytime\x18\b \x01(\x03R\n" +
|
|
"verifytime\x12\x1c\n" +
|
|
"\tfailcount\x18\t \x01(\x05R\tfailcount\x12\"\n" +
|
|
"\flastfailtime\x18\n" +
|
|
" \x01(\x03R\flastfailtime\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\v \x01(\x03R\n" +
|
|
"createtime\x12\x1e\n" +
|
|
"\n" +
|
|
"updatetime\x18\f \x01(\x03R\n" +
|
|
"updatetime\"\xbd\x02\n" +
|
|
"\fDBUserDivice\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x04R\x02id\x12\x10\n" +
|
|
"\x03uid\x18\x02 \x01(\tR\x03uid\x12\x1c\n" +
|
|
"\tproductid\x18\x03 \x01(\rR\tproductid\x12+\n" +
|
|
"\n" +
|
|
"devicetype\x18\x04 \x01(\x0e2\v.DeviceTypeR\n" +
|
|
"devicetype\x12\x1e\n" +
|
|
"\n" +
|
|
"devicename\x18\x05 \x01(\tR\n" +
|
|
"devicename\x12\x1c\n" +
|
|
"\tdevicemac\x18\x06 \x01(\tR\tdevicemac\x12\x18\n" +
|
|
"\alicense\x18\a \x01(\tR\alicense\x12\x12\n" +
|
|
"\x04cmei\x18\b \x01(\tR\x04cmei\x12\x18\n" +
|
|
"\aversion\x18\t \x01(\tR\aversion\x12\x1c\n" +
|
|
"\tlxsetting\x18\n" +
|
|
" \x01(\tR\tlxsetting\x12\x1c\n" +
|
|
"\tchannelid\x18\v \x01(\tR\tchannelid\"\x90\x01\n" +
|
|
"\x0eDBUserPortrait\x12\x10\n" +
|
|
"\x03uid\x18\x01 \x01(\tR\x03uid\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12\x16\n" +
|
|
"\x06gender\x18\x03 \x01(\x05R\x06gender\x12\x10\n" +
|
|
"\x03age\x18\x04 \x01(\tR\x03age\x12\x12\n" +
|
|
"\x04city\x18\x05 \x01(\tR\x04city\x12\x1a\n" +
|
|
"\bhomeaddr\x18\x06 \x01(\tR\bhomeaddr\"\xf1\x03\n" +
|
|
"\aDBAgent\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1c\n" +
|
|
"\tavatarUrl\x18\x03 \x01(\tR\tavatarUrl\x12 \n" +
|
|
"\vdescription\x18\x04 \x01(\tR\vdescription\x12\x10\n" +
|
|
"\x03tag\x18\x05 \x01(\tR\x03tag\x12\x16\n" +
|
|
"\x06enable\x18\x06 \x01(\bR\x06enable\x12\x1a\n" +
|
|
"\bisOnline\x18\a \x01(\bR\bisOnline\x12&\n" +
|
|
"\x0ewelcomeMessage\x18\b \x01(\tR\x0ewelcomeMessage\x120\n" +
|
|
"\x13voiceWelcomeMessage\x18\t \x01(\tR\x13voiceWelcomeMessage\x12\"\n" +
|
|
"\fsystemPrompt\x18\n" +
|
|
" \x01(\tR\fsystemPrompt\x12\x1c\n" +
|
|
"\tlanguages\x18\v \x01(\tR\tlanguages\x12$\n" +
|
|
"\x06source\x18\f \x01(\x0e2\f.AgentSourceR\x06source\x12 \n" +
|
|
"\vserviceData\x18\r \x01(\tR\vserviceData\x12\x16\n" +
|
|
"\x06roleId\x18\x0e \x01(\tR\x06roleId\x12\x14\n" +
|
|
"\x05voice\x18\x0f \x01(\tR\x05voice\x12\x16\n" +
|
|
"\x06voices\x18\x10 \x01(\tR\x06voices\x12\x12\n" +
|
|
"\x04sort\x18\x11 \x01(\x05R\x04sort\"\xda\x01\n" +
|
|
"\vDBMcpServer\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1f\n" +
|
|
"\x06region\x18\x03 \x01(\x0e2\a.RegionR\x06region\x12 \n" +
|
|
"\vdescription\x18\x04 \x01(\tR\vdescription\x12\x10\n" +
|
|
"\x03url\x18\x05 \x01(\tR\x03url\x12$\n" +
|
|
"\x05stype\x18\x06 \x01(\x0e2\x0e.MCPServerTypeR\x05stype\x12\x14\n" +
|
|
"\x05tools\x18\a \x01(\tR\x05tools\x12\x16\n" +
|
|
"\x06enable\x18\b \x01(\bR\x06enable\"\xa5\x01\n" +
|
|
"\x12DBGlobalConfigItem\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x04R\x02id\x12\x1f\n" +
|
|
"\x06region\x18\x02 \x01(\x0e2\a.RegionR\x06region\x12\x14\n" +
|
|
"\x05group\x18\x03 \x01(\tR\x05group\x12\x10\n" +
|
|
"\x03key\x18\x04 \x01(\tR\x03key\x12\x14\n" +
|
|
"\x05value\x18\x05 \x01(\tR\x05value\x12 \n" +
|
|
"\vdescription\x18\x06 \x01(\tR\vdescription\"\x81\x01\n" +
|
|
"\x0fDBAppConfigItem\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x04R\x02id\x12\x14\n" +
|
|
"\x05group\x18\x03 \x01(\tR\x05group\x12\x10\n" +
|
|
"\x03key\x18\x04 \x01(\tR\x03key\x12\x14\n" +
|
|
"\x05value\x18\x05 \x01(\tR\x05value\x12 \n" +
|
|
"\vdescription\x18\x06 \x01(\tR\vdescription\"\xc7\x01\n" +
|
|
"\x12DBSolutionProvider\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12 \n" +
|
|
"\vdescription\x18\x03 \x01(\tR\vdescription\x12\"\n" +
|
|
"\fcontactmails\x18\x04 \x01(\tR\fcontactmails\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\x05 \x01(\x03R\n" +
|
|
"createtime\x12'\n" +
|
|
"\x06vendor\x18\x06 \x01(\x0e2\x0f.SolutionVendorR\x06vendor\"\xf7\x01\n" +
|
|
"\aDBBrand\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x14\n" +
|
|
"\x05brand\x18\x02 \x01(\tR\x05brand\x12\x1e\n" +
|
|
"\n" +
|
|
"providerid\x18\x03 \x01(\rR\n" +
|
|
"providerid\x12 \n" +
|
|
"\vdescription\x18\x04 \x01(\tR\vdescription\x12\"\n" +
|
|
"\fcontactmails\x18\x05 \x01(\tR\fcontactmails\x12\"\n" +
|
|
"\fproductlists\x18\a \x01(\tR\fproductlists\x12\x1c\n" +
|
|
"\tsharerate\x18\b \x01(\x05R\tsharerate\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\t \x01(\x03R\n" +
|
|
"createtime\"\xb9\x03\n" +
|
|
"\tDBChannel\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\tR\x02id\x12\x18\n" +
|
|
"\abrandid\x18\x02 \x01(\rR\abrandid\x12\x12\n" +
|
|
"\x04name\x18\x03 \x01(\tR\x04name\x12\x18\n" +
|
|
"\acontact\x18\x04 \x01(\tR\acontact\x12\"\n" +
|
|
"\fcontactmails\x18\x05 \x01(\tR\fcontactmails\x12\x16\n" +
|
|
"\x06remark\x18\x06 \x01(\tR\x06remark\x12\x1c\n" +
|
|
"\tsharerate\x18\a \x01(\x05R\tsharerate\x12\x16\n" +
|
|
"\x06status\x18\b \x01(\x05R\x06status\x12\"\n" +
|
|
"\fapplyaccount\x18\t \x01(\tR\fapplyaccount\x12\"\n" +
|
|
"\fauditaccount\x18\n" +
|
|
" \x01(\tR\fauditaccount\x12 \n" +
|
|
"\vauditremark\x18\v \x01(\tR\vauditremark\x12\x1c\n" +
|
|
"\taudittime\x18\f \x01(\x03R\taudittime\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\r \x01(\x03R\n" +
|
|
"createtime\x12\x1e\n" +
|
|
"\n" +
|
|
"updatetime\x18\x0e \x01(\x03R\n" +
|
|
"updatetime\x12\x1a\n" +
|
|
"\bofficial\x18\x0f \x01(\bR\bofficial\"\xe5\x03\n" +
|
|
"\x11DBSettlementMonth\x12\x16\n" +
|
|
"\x06period\x18\x01 \x01(\rR\x06period\x12\x1c\n" +
|
|
"\tchannelid\x18\x03 \x01(\tR\tchannelid\x12\x18\n" +
|
|
"\abatchno\x18\x11 \x01(\tR\abatchno\x12\x1c\n" +
|
|
"\tproductid\x18\x12 \x01(\rR\tproductid\x12\x1f\n" +
|
|
"\vorder_count\x18\x04 \x01(\x03R\n" +
|
|
"orderCount\x12\x1f\n" +
|
|
"\vbase_amount\x18\x05 \x01(\x03R\n" +
|
|
"baseAmount\x12!\n" +
|
|
"\fchannel_rate\x18\b \x01(\x05R\vchannelRate\x12%\n" +
|
|
"\x0echannel_amount\x18\t \x01(\x03R\rchannelAmount\x12'\n" +
|
|
"\x0fplatform_amount\x18\v \x01(\x03R\x0eplatformAmount\x12\x16\n" +
|
|
"\x06status\x18\f \x01(\x05R\x06status\x12\x19\n" +
|
|
"\bgen_time\x18\r \x01(\x03R\agenTime\x12'\n" +
|
|
"\x0fconfirm_account\x18\x0e \x01(\tR\x0econfirmAccount\x12!\n" +
|
|
"\fconfirm_time\x18\x0f \x01(\x03R\vconfirmTime\x12\x16\n" +
|
|
"\x06remark\x18\x10 \x01(\tR\x06remarkJ\x04\b\x02\x10\x03J\x04\b\x06\x10\aJ\x04\b\a\x10\bJ\x04\b\n" +
|
|
"\x10\v\"\xf7\x03\n" +
|
|
"\x11DBProductionBatch\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x0e\n" +
|
|
"\x02ts\x18\x02 \x01(\x03R\x02ts\x12\x18\n" +
|
|
"\abrandid\x18\x03 \x01(\rR\abrandid\x12\x1c\n" +
|
|
"\tproductid\x18\x04 \x01(\rR\tproductid\x12 \n" +
|
|
"\vserialstart\x18\x05 \x01(\x03R\vserialstart\x12\x1c\n" +
|
|
"\tserialend\x18\x06 \x01(\x03R\tserialend\x12\x1a\n" +
|
|
"\bstartmac\x18\a \x01(\tR\bstartmac\x12\x16\n" +
|
|
"\x06endmac\x18\b \x01(\tR\x06endmac\x12\x1c\n" +
|
|
"\tdevicenum\x18\t \x01(\rR\tdevicenum\x12\x18\n" +
|
|
"\abatchno\x18\n" +
|
|
" \x01(\tR\abatchno\x12\x16\n" +
|
|
"\x06remark\x18\v \x01(\tR\x06remark\x12\x1c\n" +
|
|
"\tchannelid\x18\f \x01(\tR\tchannelid\x12\x1c\n" +
|
|
"\tfactoryid\x18\r \x01(\rR\tfactoryid\x12\x1c\n" +
|
|
"\tsharerate\x18\x0e \x01(\x05R\tsharerate\x12\x1c\n" +
|
|
"\trewardvip\x18\x0f \x01(\rR\trewardvip\x12(\n" +
|
|
"\x0frewardtranslate\x18\x10 \x01(\rR\x0frewardtranslate\x12$\n" +
|
|
"\rrewardmeeting\x18\x11 \x01(\rR\rrewardmeeting\"\xb6\v\n" +
|
|
"\tDBProduct\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x18\n" +
|
|
"\abrandid\x18\x02 \x01(\rR\abrandid\x12+\n" +
|
|
"\n" +
|
|
"devicetype\x18\x03 \x01(\x0e2\v.DeviceTypeR\n" +
|
|
"devicetype\x12\x1e\n" +
|
|
"\n" +
|
|
"devicename\x18\x04 \x01(\tR\n" +
|
|
"devicename\x12\"\n" +
|
|
"\fproductimage\x18\x05 \x01(\tR\fproductimage\x12\x1a\n" +
|
|
"\bscanuuid\x18\x06 \x01(\tR\bscanuuid\x12\x18\n" +
|
|
"\aversion\x18\a \x01(\tR\aversion\x12,\n" +
|
|
"\x11updatedescription\x18\t \x01(\tR\x11updatedescription\x122\n" +
|
|
"\x14updatepackageaddress\x18\n" +
|
|
" \x01(\tR\x14updatepackageaddress\x12\x1c\n" +
|
|
"\tversionid\x18\v \x01(\rR\tversionid\x12&\n" +
|
|
"\x0eiscanbindagain\x18\f \x01(\bR\x0eiscanbindagain\x12,\n" +
|
|
"\x11bindrewardvpitime\x18\r \x01(\rR\x11bindrewardvpitime\x120\n" +
|
|
"\x13bindrewardtranslate\x18\x0e \x01(\rR\x13bindrewardtranslate\x12,\n" +
|
|
"\x11bindrewardmeeting\x18\x0f \x01(\rR\x11bindrewardmeeting\x12*\n" +
|
|
"\x10iscontinuouschat\x18\x10 \x01(\bR\x10iscontinuouschat\x12\x1a\n" +
|
|
"\beqenable\x18\x11 \x01(\bR\beqenable\x12\x1c\n" +
|
|
"\tkeyenable\x18\x12 \x01(\bR\tkeyenable\x12&\n" +
|
|
"\x0eworkmodeenable\x18\x13 \x01(\bR\x0eworkmodeenable\x12&\n" +
|
|
"\x0ecallmodeenable\x18\x14 \x01(\bR\x0ecallmodeenable\x12\x1c\n" +
|
|
"\tledenable\x18\x15 \x01(\bR\tledenable\x12*\n" +
|
|
"\x10finddeviceenable\x18\x16 \x01(\bR\x10finddeviceenable\x122\n" +
|
|
"\x14noisereductionenable\x18\x17 \x01(\bR\x14noisereductionenable\x12&\n" +
|
|
"\x0eshutdownenable\x18\x18 \x01(\bR\x0eshutdownenable\x12(\n" +
|
|
"\x0fshowcasebattery\x18\x19 \x01(\bR\x0fshowcasebattery\x12\"\n" +
|
|
"\fwakeupenable\x18\x1a \x01(\bR\fwakeupenable\x126\n" +
|
|
"\x16broadcastpeertranslate\x18\x1b \x01(\bR\x16broadcastpeertranslate\x12\x18\n" +
|
|
"\achannel\x18\x1c \x01(\tR\achannel\x12\"\n" +
|
|
"\fchannelextra\x18\x1d \x01(\tR\fchannelextra\x12(\n" +
|
|
"\x0fhideaiassistant\x18\x1e \x01(\bR\x0fhideaiassistant\x12(\n" +
|
|
"\x0fdevicecodecount\x18\x1f \x01(\rR\x0fdevicecodecount\x12\x1e\n" +
|
|
"\n" +
|
|
"bassfilter\x18 \x01(\rR\n" +
|
|
"bassfilter\x12\"\n" +
|
|
"\fserialcursor\x18! \x01(\x03R\fserialcursor\x12\x1c\n" +
|
|
"\tfactoryid\x18\" \x01(\rR\tfactoryid\x12\x1a\n" +
|
|
"\bappnames\x18# \x01(\tR\bappnames\x12\x1e\n" +
|
|
"\n" +
|
|
"providerid\x18$ \x01(\rR\n" +
|
|
"providerid\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18% \x01(\x03R\n" +
|
|
"createtime\x12 \n" +
|
|
"\vdescription\x18& \x01(\tR\vdescription\x12\"\n" +
|
|
"\foemfactoryid\x18' \x01(\rR\foemfactoryid\x12*\n" +
|
|
"\x10updateonmismatch\x18( \x01(\bR\x10updateonmismatch\"\xb0\x01\n" +
|
|
"\x10DBProductVersion\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x1c\n" +
|
|
"\tproductid\x18\x02 \x01(\rR\tproductid\x12\x18\n" +
|
|
"\aversion\x18\x03 \x01(\tR\aversion\x12 \n" +
|
|
"\vdescription\x18\x04 \x01(\tR\vdescription\x122\n" +
|
|
"\x14updatepackageaddress\x18\x05 \x01(\tR\x14updatepackageaddress\"\xbc\x03\n" +
|
|
"\fDBChannelApp\x12\x18\n" +
|
|
"\achannel\x18\x01 \x01(\x05R\achannel\x12\x18\n" +
|
|
"\aversion\x18\x02 \x01(\tR\aversion\x12 \n" +
|
|
"\vdescription\x18\x03 \x01(\tR\vdescription\x12\x18\n" +
|
|
"\aaddress\x18\x04 \x01(\tR\aaddress\x12\x1a\n" +
|
|
"\btourists\x18\x05 \x01(\bR\btourists\x126\n" +
|
|
"\x16allowskipdevicebinding\x18\x06 \x01(\bR\x16allowskipdevicebinding\x12 \n" +
|
|
"\vpaychannels\x18\a \x01(\tR\vpaychannels\x12\x1e\n" +
|
|
"\n" +
|
|
"minversion\x18\b \x01(\tR\n" +
|
|
"minversion\x12 \n" +
|
|
"\vforceupdate\x18\t \x01(\bR\vforceupdate\x12\x1c\n" +
|
|
"\tchangelog\x18\n" +
|
|
" \x01(\tR\tchangelog\x12$\n" +
|
|
"\rreviewversion\x18\v \x01(\tR\rreviewversion\x12\x16\n" +
|
|
"\x06status\x18\f \x01(\x05R\x06status\x12(\n" +
|
|
"\x0ftouristsversion\x18\r \x01(\tR\x0ftouristsversion\"\xef\x02\n" +
|
|
"\n" +
|
|
"DBAuthCode\x12\x12\n" +
|
|
"\x04code\x18\x01 \x01(\tR\x04code\x12%\n" +
|
|
"\bcodetype\x18\x02 \x01(\x0e2\t.CodetypeR\bcodetype\x12\x18\n" +
|
|
"\abrandid\x18\x03 \x01(\rR\abrandid\x12\x1c\n" +
|
|
"\tproductid\x18\x04 \x01(\rR\tproductid\x12\x16\n" +
|
|
"\x06number\x18\x05 \x01(\x03R\x06number\x12\x18\n" +
|
|
"\abatchno\x18\x06 \x01(\tR\abatchno\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\a \x01(\x03R\n" +
|
|
"createtime\x12\x1a\n" +
|
|
"\busedtime\x18\t \x01(\x03R\busedtime\x12\x16\n" +
|
|
"\x06status\x18\n" +
|
|
" \x01(\x05R\x06status\x12\x10\n" +
|
|
"\x03uid\x18\v \x01(\tR\x03uid\x12\x1c\n" +
|
|
"\tdevicemac\x18\f \x01(\tR\tdevicemac\x12\x1a\n" +
|
|
"\bdisabled\x18\r \x01(\x05R\bdisabled\x12\x1c\n" +
|
|
"\tchannelid\x18\x0e \x01(\tR\tchannelid\"\xb5\x03\n" +
|
|
"\x13DBFactoryPublicCode\x12\x12\n" +
|
|
"\x04code\x18\x01 \x01(\tR\x04code\x12\x18\n" +
|
|
"\abrandid\x18\x02 \x01(\rR\abrandid\x12\x1c\n" +
|
|
"\tproductid\x18\x03 \x01(\rR\tproductid\x12\x16\n" +
|
|
"\x06remark\x18\x04 \x01(\tR\x06remark\x12\x16\n" +
|
|
"\x06status\x18\x05 \x01(\x05R\x06status\x12\x18\n" +
|
|
"\amaxuses\x18\x06 \x01(\rR\amaxuses\x12\x1a\n" +
|
|
"\buseduses\x18\a \x01(\rR\buseduses\x12\x1e\n" +
|
|
"\n" +
|
|
"expiretime\x18\b \x01(\x03R\n" +
|
|
"expiretime\x12,\n" +
|
|
"\x11bindrewardvpitime\x18\t \x01(\rR\x11bindrewardvpitime\x120\n" +
|
|
"\x13bindrewardtranslate\x18\n" +
|
|
" \x01(\rR\x13bindrewardtranslate\x12,\n" +
|
|
"\x11bindrewardmeeting\x18\v \x01(\rR\x11bindrewardmeeting\x12\x1e\n" +
|
|
"\n" +
|
|
"createtime\x18\f \x01(\x03R\n" +
|
|
"createtime\x12\x1e\n" +
|
|
"\n" +
|
|
"updatetime\x18\r \x01(\x03R\n" +
|
|
"updatetime\"h\n" +
|
|
"\fDBGoodsLocal\x12\x12\n" +
|
|
"\x04lang\x18\x01 \x01(\tR\x04lang\x12\x12\n" +
|
|
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1a\n" +
|
|
"\bcurrency\x18\x03 \x01(\tR\bcurrency\x12\x14\n" +
|
|
"\x05price\x18\x06 \x01(\x01R\x05price\"\x89\x02\n" +
|
|
"\aDBGoods\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\tR\x02id\x12\x16\n" +
|
|
"\x06enable\x18\x02 \x01(\bR\x06enable\x12\x12\n" +
|
|
"\x04name\x18\x03 \x01(\tR\x04name\x12\x1c\n" +
|
|
"\tlocalname\x18\x04 \x01(\tR\tlocalname\x12\x14\n" +
|
|
"\x05price\x18\x06 \x01(\x05R\x05price\x12(\n" +
|
|
"\tusagetype\x18\a \x01(\x0e2\n" +
|
|
".UsageTypeR\tusagetype\x12\x14\n" +
|
|
"\x05ainum\x18\b \x01(\x03R\x05ainum\x12\x18\n" +
|
|
"\ameetnum\x18\t \x01(\x03R\ameetnum\x12\x1a\n" +
|
|
"\btradenum\x18\n" +
|
|
" \x01(\x03R\btradenum\x12\x18\n" +
|
|
"\aviptime\x18\v \x01(\x05R\aviptime\"\x9f\x01\n" +
|
|
"\rDBWakeupVoice\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\rR\x02id\x12\x16\n" +
|
|
"\x06enable\x18\x02 \x01(\bR\x06enable\x12\x12\n" +
|
|
"\x04name\x18\x03 \x01(\tR\x04name\x12\x12\n" +
|
|
"\x04desc\x18\x04 \x01(\tR\x04desc\x12\x18\n" +
|
|
"\aversion\x18\x05 \x01(\tR\aversion\x12$\n" +
|
|
"\rpackagaddress\x18\x06 \x01(\tR\rpackagaddress\"\x96\x02\n" +
|
|
"\fDBUserUseLog\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x04R\x02id\x12\x10\n" +
|
|
"\x03uid\x18\x02 \x01(\tR\x03uid\x12\x0e\n" +
|
|
"\x02ts\x18\x03 \x01(\x03R\x02ts\x12&\n" +
|
|
"\alogtype\x18\x04 \x01(\x0e2\f.UserLogTypeR\alogtype\x12\x1c\n" +
|
|
"\taddvipday\x18\x05 \x01(\x03R\taddvipday\x12*\n" +
|
|
"\x10addagentintegral\x18\x06 \x01(\x03R\x10addagentintegral\x12&\n" +
|
|
"\x0eaddtradesecond\x18\a \x01(\x03R\x0eaddtradesecond\x12$\n" +
|
|
"\raddmeetsecond\x18\b \x01(\x03R\raddmeetsecond\x12\x14\n" +
|
|
"\x05extra\x18\t \x01(\tR\x05extra\"\xe0\x04\n" +
|
|
"\x10DBUserStatistics\x12\x10\n" +
|
|
"\x03uid\x18\x01 \x01(\tR\x03uid\x12\x1c\n" +
|
|
"\taichatnum\x18\x02 \x01(\x03R\taichatnum\x12$\n" +
|
|
"\raichatuptoken\x18\x03 \x01(\x03R\raichatuptoken\x12(\n" +
|
|
"\x0faichatdowntoken\x18\x04 \x01(\x03R\x0faichatdowntoken\x12\x18\n" +
|
|
"\ameetnum\x18\x05 \x01(\x03R\ameetnum\x12\x1a\n" +
|
|
"\bmeettime\x18\x06 \x01(\x03R\bmeettime\x12&\n" +
|
|
"\x0etrademodel1num\x18\a \x01(\x03R\x0etrademodel1num\x12(\n" +
|
|
"\x0ftrademodel1time\x18\b \x01(\x03R\x0ftrademodel1time\x12&\n" +
|
|
"\x0etrademodel2num\x18\t \x01(\x03R\x0etrademodel2num\x12(\n" +
|
|
"\x0ftrademodel2time\x18\n" +
|
|
" \x01(\x03R\x0ftrademodel2time\x12&\n" +
|
|
"\x0etrademodel3num\x18\v \x01(\x05R\x0etrademodel3num\x12(\n" +
|
|
"\x0ftrademodel3time\x18\f \x01(\x03R\x0ftrademodel3time\x12&\n" +
|
|
"\x0etrademodel4num\x18\r \x01(\x05R\x0etrademodel4num\x12(\n" +
|
|
"\x0ftrademodel4time\x18\x0e \x01(\x03R\x0ftrademodel4time\x12&\n" +
|
|
"\x0etrademodel5num\x18\x0f \x01(\x05R\x0etrademodel5num\x12&\n" +
|
|
"\x0etradewordcount\x18\x10 \x01(\x05R\x0etradewordcount\"\xca\a\n" +
|
|
"\tDBAppStat\x12\x0e\n" +
|
|
"\x02id\x18\x01 \x01(\x04R\x02id\x12\x1b\n" +
|
|
"\tstat_date\x18\x02 \x01(\tR\bstatDate\x12\x1d\n" +
|
|
"\n" +
|
|
"pay_amount\x18\x03 \x01(\x03R\tpayAmount\x12\x1f\n" +
|
|
"\vorder_count\x18\x16 \x01(\x05R\n" +
|
|
"orderCount\x12\x1b\n" +
|
|
"\tpay_count\x18\x04 \x01(\x05R\bpayCount\x12,\n" +
|
|
"\x12failed_order_count\x18\x17 \x01(\x05R\x10failedOrderCount\x12$\n" +
|
|
"\x0epay_user_count\x18\x05 \x01(\x05R\fpayUserCount\x12 \n" +
|
|
"\fadd_vip_days\x18\x06 \x01(\x03R\n" +
|
|
"addVipDays\x12&\n" +
|
|
"\x0fadd_ai_integral\x18\a \x01(\x03R\raddAiIntegral\x12(\n" +
|
|
"\x10add_trade_second\x18\b \x01(\x03R\x0eaddTradeSecond\x12&\n" +
|
|
"\x0fadd_meet_second\x18\t \x01(\x03R\raddMeetSecond\x12\"\n" +
|
|
"\rai_chat_count\x18\n" +
|
|
" \x01(\x03R\vaiChatCount\x12\x1e\n" +
|
|
"\vai_up_token\x18\v \x01(\x03R\taiUpToken\x12\"\n" +
|
|
"\rai_down_token\x18\f \x01(\x03R\vaiDownToken\x12\x1f\n" +
|
|
"\vtrade_count\x18\r \x01(\x03R\n" +
|
|
"tradeCount\x12\x1d\n" +
|
|
"\n" +
|
|
"trade_time\x18\x0e \x01(\x03R\ttradeTime\x12\x1f\n" +
|
|
"\vtrade_words\x18\x0f \x01(\x03R\n" +
|
|
"tradeWords\x12\x1d\n" +
|
|
"\n" +
|
|
"meet_count\x18\x10 \x01(\x03R\tmeetCount\x12\x1b\n" +
|
|
"\tmeet_time\x18\x11 \x01(\x03R\bmeetTime\x12$\n" +
|
|
"\x0enew_user_count\x18\x12 \x01(\x05R\fnewUserCount\x12\x1f\n" +
|
|
"\vlogin_count\x18\x13 \x01(\x05R\n" +
|
|
"loginCount\x12*\n" +
|
|
"\x11active_user_count\x18\x18 \x01(\x05R\x0factiveUserCount\x12(\n" +
|
|
"\x10total_user_count\x18\x19 \x01(\x03R\x0etotalUserCount\x12$\n" +
|
|
"\x0evip_user_count\x18\x1a \x01(\x05R\fvipUserCount\x12*\n" +
|
|
"\x11bind_device_count\x18\x14 \x01(\x05R\x0fbindDeviceCount\x12.\n" +
|
|
"\x13active_device_count\x18\x1b \x01(\x05R\x11activeDeviceCount\x12\x1f\n" +
|
|
"\vupdate_time\x18\x15 \x01(\x03R\n" +
|
|
"updateTime*\xa2\x01\n" +
|
|
"\vUserChannel\x12\v\n" +
|
|
"\aUNKNOWN\x10\x00\x12\x10\n" +
|
|
"\fCHINA_HUAWEI\x10\x01\x12\x10\n" +
|
|
"\fCHINA_XIAOMI\x10\x02\x12\x0e\n" +
|
|
"\n" +
|
|
"CHINA_OPPO\x10\x03\x12\x0e\n" +
|
|
"\n" +
|
|
"CHINA_VIVO\x10\x04\x12\x0f\n" +
|
|
"\vCHINA_HONOR\x10\x05\x12\f\n" +
|
|
"\bOFFICIAL\x10d\x12\x10\n" +
|
|
"\fGLOBAL_APPLE\x10e\x12\x11\n" +
|
|
"\rGLOBAL_GOOGLE\x10f*(\n" +
|
|
"\bCodetype\x12\f\n" +
|
|
"\bAUTHCODE\x10\x00\x12\x0e\n" +
|
|
"\n" +
|
|
"DEVICECODE\x10\x01*q\n" +
|
|
"\x0eSolutionVendor\x12\x12\n" +
|
|
"\x0eVENDOR_UNKNOWN\x10\x00\x12\x10\n" +
|
|
"\fVENDOR_JIELI\x10\x01\x12\x11\n" +
|
|
"\rVENDOR_LANXUN\x10\x02\x12\x13\n" +
|
|
"\x0fVENDOR_HENGXUAN\x10\x03\x12\x11\n" +
|
|
"\rVENDOR_BOTONG\x10\x04B\x06Z\x04.;pbb\x06proto3"
|
|
|
|
var (
|
|
file_db_proto_rawDescOnce sync.Once
|
|
file_db_proto_rawDescData []byte
|
|
)
|
|
|
|
func file_db_proto_rawDescGZIP() []byte {
|
|
file_db_proto_rawDescOnce.Do(func() {
|
|
file_db_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_db_proto_rawDesc), len(file_db_proto_rawDesc)))
|
|
})
|
|
return file_db_proto_rawDescData
|
|
}
|
|
|
|
var file_db_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
|
|
var file_db_proto_msgTypes = make([]protoimpl.MessageInfo, 24)
|
|
var file_db_proto_goTypes = []any{
|
|
(UserChannel)(0), // 0: UserChannel
|
|
(Codetype)(0), // 1: Codetype
|
|
(SolutionVendor)(0), // 2: SolutionVendor
|
|
(*DBUser)(nil), // 3: DBUser
|
|
(*DBUserIdVerify)(nil), // 4: DBUserIdVerify
|
|
(*DBUserDivice)(nil), // 5: DBUserDivice
|
|
(*DBUserPortrait)(nil), // 6: DBUserPortrait
|
|
(*DBAgent)(nil), // 7: DBAgent
|
|
(*DBMcpServer)(nil), // 8: DBMcpServer
|
|
(*DBGlobalConfigItem)(nil), // 9: DBGlobalConfigItem
|
|
(*DBAppConfigItem)(nil), // 10: DBAppConfigItem
|
|
(*DBSolutionProvider)(nil), // 11: DBSolutionProvider
|
|
(*DBBrand)(nil), // 12: DBBrand
|
|
(*DBChannel)(nil), // 13: DBChannel
|
|
(*DBSettlementMonth)(nil), // 14: DBSettlementMonth
|
|
(*DBProductionBatch)(nil), // 15: DBProductionBatch
|
|
(*DBProduct)(nil), // 16: DBProduct
|
|
(*DBProductVersion)(nil), // 17: DBProductVersion
|
|
(*DBChannelApp)(nil), // 18: DBChannelApp
|
|
(*DBAuthCode)(nil), // 19: DBAuthCode
|
|
(*DBFactoryPublicCode)(nil), // 20: DBFactoryPublicCode
|
|
(*DBGoodsLocal)(nil), // 21: DBGoodsLocal
|
|
(*DBGoods)(nil), // 22: DBGoods
|
|
(*DBWakeupVoice)(nil), // 23: DBWakeupVoice
|
|
(*DBUserUseLog)(nil), // 24: DBUserUseLog
|
|
(*DBUserStatistics)(nil), // 25: DBUserStatistics
|
|
(*DBAppStat)(nil), // 26: DBAppStat
|
|
(UserState)(0), // 27: UserState
|
|
(DeviceType)(0), // 28: DeviceType
|
|
(AgentSource)(0), // 29: AgentSource
|
|
(Region)(0), // 30: Region
|
|
(MCPServerType)(0), // 31: MCPServerType
|
|
(UsageType)(0), // 32: UsageType
|
|
(UserLogType)(0), // 33: UserLogType
|
|
}
|
|
var file_db_proto_depIdxs = []int32{
|
|
0, // 0: DBUser.channel:type_name -> UserChannel
|
|
27, // 1: DBUser.State:type_name -> UserState
|
|
28, // 2: DBUserDivice.devicetype:type_name -> DeviceType
|
|
29, // 3: DBAgent.source:type_name -> AgentSource
|
|
30, // 4: DBMcpServer.region:type_name -> Region
|
|
31, // 5: DBMcpServer.stype:type_name -> MCPServerType
|
|
30, // 6: DBGlobalConfigItem.region:type_name -> Region
|
|
2, // 7: DBSolutionProvider.vendor:type_name -> SolutionVendor
|
|
28, // 8: DBProduct.devicetype:type_name -> DeviceType
|
|
1, // 9: DBAuthCode.codetype:type_name -> Codetype
|
|
32, // 10: DBGoods.usagetype:type_name -> UsageType
|
|
33, // 11: DBUserUseLog.logtype:type_name -> UserLogType
|
|
12, // [12:12] is the sub-list for method output_type
|
|
12, // [12:12] is the sub-list for method input_type
|
|
12, // [12:12] is the sub-list for extension type_name
|
|
12, // [12:12] is the sub-list for extension extendee
|
|
0, // [0:12] is the sub-list for field type_name
|
|
}
|
|
|
|
func init() { file_db_proto_init() }
|
|
func file_db_proto_init() {
|
|
if File_db_proto != nil {
|
|
return
|
|
}
|
|
file_enum_proto_init()
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: unsafe.Slice(unsafe.StringData(file_db_proto_rawDesc), len(file_db_proto_rawDesc)),
|
|
NumEnums: 3,
|
|
NumMessages: 24,
|
|
NumExtensions: 0,
|
|
NumServices: 0,
|
|
},
|
|
GoTypes: file_db_proto_goTypes,
|
|
DependencyIndexes: file_db_proto_depIdxs,
|
|
EnumInfos: file_db_proto_enumTypes,
|
|
MessageInfos: file_db_proto_msgTypes,
|
|
}.Build()
|
|
File_db_proto = out.File
|
|
file_db_proto_goTypes = nil
|
|
file_db_proto_depIdxs = nil
|
|
}
|
|
|