diff --git a/build/artShowServerProd b/build/artShowServerProd new file mode 100644 index 0000000..da640df Binary files /dev/null and b/build/artShowServerProd differ diff --git a/build/artShowServerTest b/build/artShowServerTest new file mode 100644 index 0000000..da640df Binary files /dev/null and b/build/artShowServerTest differ diff --git a/cmd/controller/art_show.go b/cmd/controller/art_show.go index 14b1678..fec432e 100644 --- a/cmd/controller/art_show.go +++ b/cmd/controller/art_show.go @@ -72,7 +72,7 @@ func (p *ArtShowProvider) DelShow(ctx context.Context, req *artShow.DelShowReq) err = service.DelArtShow(req) if err != nil { res.Msg = err.Error() - err = errors.New(m.ERROR_DELETE) + err = errors.New(err.Error()) return } res.Msg = m.DELETE_SUCCESS @@ -113,7 +113,7 @@ func (p *ArtShowProvider) ShowListWithRel(ctx context.Context, req *artShow.Show return } -func (p *ArtShowProvider) ShowArtworkInfo(ctx context.Context, req *artShow.ShowDetailReq) (res *artShow.ShowArtworkDetailRes, err error) { +func (p *ArtShowProvider) ShowArtworkInfo(ctx context.Context, req *artShow.ArtworkDetailReq) (res *artShow.ShowArtworkDetailRes, err error) { err, res = service.ShowArtworkInfo(req) if err != nil { res.Msg = err.Error() @@ -199,6 +199,11 @@ func (p *ArtShowProvider) ShowListForArtwork(ctx context.Context, req *artShow.S } func (p *ArtShowProvider) ArtworkPriceList(ctx context.Context, req *artShow.ShowDetailReq) (res *artShow.ArtworkPriceListRes, err error) { + if len(req.ShowUID) != 1 && req.ShowUID[len(req.ShowUID)-1] == "" { + res.Msg = err.Error() + err = errors.New(m.ERROR_QUERY) + return + } res = new(artShow.ArtworkPriceListRes) err, res.Data = service.ArtworkPriceList(req) if err != nil { diff --git a/cmd/dao/art_show.go b/cmd/dao/art_show.go index 1fcd3ea..313921f 100644 --- a/cmd/dao/art_show.go +++ b/cmd/dao/art_show.go @@ -29,7 +29,7 @@ func SaveArtShow(tx *gorm.DB, artShow *model.ArtShow) (err error) { } func UpdateArtShow(tx *gorm.DB, artShow *model.ArtShow) (err error) { - err = tx.Model(&model.ArtShow{}).Omit("show_uid").Where("show_uid = ?", artShow.ShowUID).Updates(artShow).Error + err = tx.Model(&model.ArtShow{}).Omit("show_uid,operator").Where("show_uid = ?", artShow.ShowUID).Updates(artShow).Error if err != nil { zap.L().Error("ArtShow err", zap.Error(err)) return @@ -38,12 +38,12 @@ func UpdateArtShow(tx *gorm.DB, artShow *model.ArtShow) (err error) { } func ArtShowListWithRel(in *artShow.ShowListReq) (err error, total int64, out []*model.ArtShowRes) { - queryDB := db.DbArtShow.Table("art_show as a ").Distinct("a.id"). - Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.reward ,a.create_time, a.is_show, c.address ,c.show_time"). + queryDB := db.DbArtShow.Table("art_show as a ").Omit("a.created_at").Distinct("a.id"). + Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.reward ,a.create_time, a.operator, a.is_show, c.address ,c.show_time, a.created_at"). Joins("left join artwork_price as b on a.show_uid = b.show_uid"). Joins("left join show_rel as c on a.show_uid = c.show_uid ") countDB := db.DbArtShow.Table("art_show as a ").Distinct("a.id"). - Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.reward , a.create_time, a.is_show, c.address ,c.show_time"). + Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.reward , a.create_time, a.operator, a.is_show, c.address ,c.show_time"). Joins("left join artwork_price as b on a.show_uid = b.show_uid"). Joins("left join show_rel as c on a.show_uid = c.show_uid ") if in.ArtistName != "" { @@ -80,7 +80,7 @@ func ArtShowListWithRel(in *artShow.ShowListReq) (err error, total int64, out [] out = make([]*model.ArtShowRes, 0) err = queryDB.Where("a.deleted_at is null and c.deleted_at is null").Offset(int((in.Page - 1) * in.PageSize)). - Limit(int(in.PageSize)).Find(&out).Error + Limit(int(in.PageSize)).Order("a.created_at desc ").Find(&out).Error if err != nil { zap.L().Error("ArtShowList Find err", zap.Error(err)) return @@ -97,7 +97,7 @@ func ArtShowListWithRel(in *artShow.ShowListReq) (err error, total int64, out [] func ArtShowList(in *artShow.ShowListReq) (err error, total int64, out []*model.ArtShowRes) { queryDB := db.DbArtShow.Model(&model.ArtShow{}). - Select("show_uid, show_seq, show_name, artist_name, artist_uid, artwork_num, ruler, price, create_time, is_show") + Select("show_uid, show_seq, show_name, artist_name, artist_uid, artwork_num, ruler, price, create_time, operator, is_show") if in.IsShow != 0 { queryDB.Where(" is_show = ?", in.IsShow) @@ -156,11 +156,12 @@ func DelArtShow(tx *gorm.DB, show_uid string) (err error) { zap.L().Error("ArtShow delete err", zap.Error(err)) return } - return + return nil } -func QueryArtShow(show_uid string) (err error, out *model.ArtShowRes) { - err = db.DbArtShow.Table("art_show as a ").Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.create_time, a.is_show, b.address ,b.show_time").Joins("left join show_rel as b on a.show_uid = b.show_uid").Where("a.show_uid = ?", show_uid).Find(&out).Error +func QueryArtShow(show_uid []string) (err error, out []*model.ArtShowRes) { + out = make([]*model.ArtShowRes, 0) + err = db.DbArtShow.Table("art_show as a ").Select("a.show_uid, a.show_seq, a.show_name, a.artist_name, a.artist_uid, a.artwork_num, a.ruler, a.price, a.create_time, a.operator a.is_show, b.address ,b.show_time").Joins("left join show_rel as b on a.show_uid = b.show_uid").Where("a.show_uid in ?", show_uid).Find(&out).Error if err != nil { zap.L().Error("ArtShow Find err", zap.Error(err)) return diff --git a/cmd/dao/show_rel.go b/cmd/dao/show_rel.go index ff37d5a..a454e80 100644 --- a/cmd/dao/show_rel.go +++ b/cmd/dao/show_rel.go @@ -11,15 +11,23 @@ import ( func SaveShowRels(tx *gorm.DB, showRels []*model.ShowRel) (err error, out []string) { out = make([]string, 0) for i := 0; i < len(showRels); i++ { - uid, err := uuid.NewV4() - if err != nil { - return err, out - } - showRels[i].ShowRelUID = uid.String() - err = tx.Model(&model.ShowRel{}).Create(&showRels[i]).Error - if err != nil { - zap.L().Error("ShowRels save err", zap.Error(err)) - return err, nil + if showRels[i].ShowRelUID == "" { + uid, err := uuid.NewV4() + if err != nil { + return err, out + } + showRels[i].ShowRelUID = uid.String() + err = tx.Model(&model.ShowRel{}).Create(&showRels[i]).Error + if err != nil { + zap.L().Error("ShowRels save err", zap.Error(err)) + return err, nil + } + } else { + err = tx.Model(&model.ShowRel{}).Where("show_uid = ? and apply_uid = ?", showRels[i].ShowUID, showRels[i].ApplyUID).First(&showRels[i]).Error + if err != nil { + zap.L().Error("ShowRels updates err", zap.Error(err)) + return err, nil + } } out = append(out, showRels[i].ApplyUID) } @@ -93,3 +101,20 @@ func QueryShowRelList(applyUID string) (err error, out []*model.ShowRel) { } return } + +func QueryShowRel(applyUID, showUID string) (err error, out *model.ShowRel) { + out = new(model.ShowRel) + findDB := db.DbArtShow.Model(&model.ShowRel{}) + if showUID != "" { + findDB = findDB.Where("show_uid = ? ", showUID) + } + if applyUID != "" { + findDB = findDB.Where("apply_uid = ? ", applyUID) + } + err = findDB.Find(&out).Error + if err != nil { + zap.L().Error("QueryShowRel err", zap.Error(err)) + return + } + return +} diff --git a/cmd/model/art_show.go b/cmd/model/art_show.go index 6cf3bc1..c6be0b0 100644 --- a/cmd/model/art_show.go +++ b/cmd/model/art_show.go @@ -15,6 +15,7 @@ type ArtShow struct { Price int64 `json:"price" gorm:"price"` // 画展包价格 Reward int64 `json:"reward" gorm:"reward"` // 润格 CreateTime string `json:"create_time" gorm:"create_time"` // 创建时间 + Operator string `json:"operator" gorm:"operator"` // 操作人 IsShow int8 `json:"is_show" gorm:"is_show"` // 是否出展 1,内部(default) 2,可展 3,已展 } @@ -29,6 +30,7 @@ type ArtShowRes struct { Price int64 `json:"price" gorm:"price"` // 画展包价格 Reward int64 `json:"reward" gorm:"reward"` // 润格 CreateTime string `json:"create_time" gorm:"create_time"` // 创建时间 + Operator string `json:"operator" gorm:"operator"` // 操作人 IsShow int8 `json:"is_show" gorm:"is_show"` // 是否出展 1,内部(default) 2,可展 3,已展 Address string `json:"address" gorm:"address"` // 地点 diff --git a/cmd/service/art_show.go b/cmd/service/art_show.go index b9d5fc5..7409685 100644 --- a/cmd/service/art_show.go +++ b/cmd/service/art_show.go @@ -2,6 +2,7 @@ package service import ( "errors" + "fmt" "fonchain-artshow/cmd/dao" "fonchain-artshow/cmd/model" "fonchain-artshow/pb/artShow" @@ -52,6 +53,8 @@ func UpdateArtShowWithArtworkPrice(in *artShow.SaveShowReq) (err error, showUID if err != nil { return } + fmt.Println("artworkPrices ==== ", artworkPrices) + if len(artworkPrices) > 0 { artworks = append(artworks, artworkPrices...) } @@ -112,10 +115,13 @@ func UpdateArtShowWithArtworkPrice(in *artShow.SaveShowReq) (err error, showUID // 删除画展包 func DelArtShow(in *artShow.DelShowReq) (err error) { + queryShowErr, shows := dao.QueryArtShow(in.ShowUID) + if queryShowErr != nil { + return queryShowErr + } tx := db.DbArtShow.Begin() - for i := 0; i < len(in.ShowUID); i++ { - queryShowRelErr, show_rel := dao.QueryShowRel_showUID(in.ShowUID[i]) - if queryShowRelErr == nil && show_rel.ID == 0 { + for i := 0; i < len(shows); i++ { + if shows[i].IsShow != m.ARTSHOW_SHOWING { delArtShowErr := dao.DelArtShow(tx, in.ShowUID[i]) if err != nil { tx.Rollback() @@ -126,11 +132,10 @@ func DelArtShow(in *artShow.DelShowReq) (err error) { tx.Rollback() return delArtworkPriceErr } - } else if show_rel.ShowUID != "" { + } else { tx.Rollback() return errors.New("存在画展包被使用,无法删除") } - } err = tx.Commit().Error return @@ -169,7 +174,7 @@ func ArtShowListWithRel(in *artShow.ShowListReq) (err error, out *artShow.ShowLi } // 画展包关联画作信息 -func ShowArtworkInfo(in *artShow.ShowDetailReq) (err error, out *artShow.ShowArtworkDetailRes) { +func ShowArtworkInfo(in *artShow.ArtworkDetailReq) (err error, out *artShow.ShowArtworkDetailRes) { out = new(artShow.ShowArtworkDetailRes) artworkPriceS := make([]*model.ArtworkPrice, 0) err, artworkPriceS = dao.ArtworkPriceList(in.ShowUID) @@ -183,12 +188,12 @@ func ShowArtworkInfo(in *artShow.ShowDetailReq) (err error, out *artShow.ShowArt // 画展包详情 func ShowDetail(in *artShow.ShowDetailReq) (err error, out *artShow.ShowDetailRes) { out = new(artShow.ShowDetailRes) - show := new(model.ArtShowRes) - err, show = dao.QueryArtShow(in.ShowUID) + shows := make([]*model.ArtShowRes, 0) + err, shows = dao.QueryArtShow(in.ShowUID) if err != nil { return } - out.Data = serializer.BuildArtShowRpc(show) + out.Data = serializer.BuildArtShowListRes(shows) return } diff --git a/cmd/service/show_apply.go b/cmd/service/show_apply.go index 716b132..aa4df69 100644 --- a/cmd/service/show_apply.go +++ b/cmd/service/show_apply.go @@ -37,9 +37,17 @@ func UpdateShowApplyWithShowRel(in *artShow.SaveApplyReq) (err error, applyUID s newShowRelS := serializer.BuildShowRelM(in.Rel, showApply.ApplyUID) for i := 0; i < len(newShowRelS); i++ { log.Printf("%+v\n", newShowRelS[i]) + err, showRel := dao.QueryShowRel(newShowRelS[i].ApplyUID, newShowRelS[i].ShowUID) + if err != nil { + tx.Rollback() + return err, showApply.ApplyUID + } + if showRel.ShowRelUID != "" { + newShowRelS[i].ShowRelUID = showRel.ShowRelUID + } } - err, _ := dao.SaveShowRels(tx, newShowRelS) + err, _ = dao.SaveShowRels(tx, newShowRelS) if err != nil { tx.Rollback() return err, showApply.ApplyUID diff --git a/cmd/service/show_price.go b/cmd/service/show_price.go index 2b59d20..3e04869 100644 --- a/cmd/service/show_price.go +++ b/cmd/service/show_price.go @@ -19,7 +19,7 @@ func ArtworkPriceInfo(in *artShow.ArtworkPriceReq) (err error, artworkPriceRes * func ArtworkPriceList(in *artShow.ShowDetailReq) (err error, artworkPriceList []*artShow.ArtworkPriceDetail) { list := make([]*model.ArtworkPrice, 0) artworkPriceList = make([]*artShow.ArtworkPriceDetail, 0) - err, list = dao.ArtworkPriceList(in.ShowUID) + err, list = dao.ArtworkPriceList(in.ShowUID[len(in.ShowUID)-1]) if len(list) > 0 { artworkPriceList = serializer.BuildShowArtworkListRpc(list) } diff --git a/conf/conf.ini b/conf/conf.ini index 27d31bd..111ca88 100644 --- a/conf/conf.ini +++ b/conf/conf.ini @@ -1,6 +1,6 @@ [system] ;mode = prod #正式prod #测试dev -mode = dev #正式prod #测试dev +mode = prod #正式prod #测试dev ;本地测试 ;[mysql] @@ -12,13 +12,13 @@ mode = dev #正式prod #测试dev ;DbName = art_show ;正式服 -;[mysql] -;Db = mysql -;DbHost = mysql -;DbPort = 3306 -;DbUser = root -;DbPassWord = sLl0b7stlbwvZ883TV -;DbName = art_show +[mysql] +Db = mysql +DbHost = mysql +DbPort = 3306 +DbUser = root +DbPassWord = sLl0b7stlbwvZ883TV +DbName = art_show ;188 ;[mysql] @@ -30,13 +30,13 @@ mode = dev #正式prod #测试dev ;DbName = art_show ;214 -[mysql] -Db = mysql -DbHost = 172.16.100.99 #214 -DbPort = 9007 -DbUser = artuser -DbPassWord = "C250PflXIWv2SQm8" -DbName = art_show +;[mysql] +;Db = mysql +;DbHost = 172.16.100.99 #214 +;DbPort = 9007 +;DbUser = artuser +;DbPassWord = "C250PflXIWv2SQm8" +;DbName = art_show ;[mysql] ;Db = mysql diff --git a/conf/dubbogo.yaml b/conf/dubbogo.yaml index 1cd70be..86ac194 100644 --- a/conf/dubbogo.yaml +++ b/conf/dubbogo.yaml @@ -3,8 +3,8 @@ dubbo: demoZK: protocol: zookeeper timeout: 3s -# address: zookeeper:2181 # 正式服务 - address: 127.0.0.1:2181 # 测试服务 + address: zookeeper:2181 # 正式服务 +# address: 127.0.0.1:2181 # 测试服务 protocols: triple: #triple name: tri diff --git a/pb/artShow/artshow.pb.go b/pb/artShow/artshow.pb.go index a5a1f1b..ddade11 100644 --- a/pb/artShow/artshow.pb.go +++ b/pb/artShow/artshow.pb.go @@ -20,24 +20,24 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -// 创建 更新画展包 type SaveShowReq struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowName string `protobuf:"bytes,1,opt,name=ShowName,json=show_name,proto3" json:"ShowName"` - ArtistName string `protobuf:"bytes,2,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName"` - ArtistUID string `protobuf:"bytes,3,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID"` - ArtworkNum int32 `protobuf:"varint,4,opt,name=ArtworkNum,json=artwork_num,proto3" json:"ArtworkNum"` - Ruler int32 `protobuf:"varint,5,opt,name=Ruler,json=ruler,proto3" json:"Ruler"` - Price int64 `protobuf:"varint,6,opt,name=Price,json=price,proto3" json:"Price"` - Reward int64 `protobuf:"varint,7,opt,name=Reward,json=reward,proto3" json:"Reward"` - IsShow int32 `protobuf:"varint,8,opt,name=IsShow,json=is_show,proto3" json:"IsShow"` - CreateTime string `protobuf:"bytes,9,opt,name=CreateTime,json=create_time,proto3" json:"CreateTime"` - ShowUID string `protobuf:"bytes,10,opt,name=ShowUID,json=id,proto3" json:"ShowUID"` - Artwork []*ArtworkDetail `protobuf:"bytes,11,rep,name=Artwork,json=show_artwork,proto3" json:"Artwork"` - DelArtwork []*DelArtworkDetail `protobuf:"bytes,12,rep,name=DelArtwork,json=del_show_artwork,proto3" json:"DelArtwork"` + ShowName string `protobuf:"bytes,1,opt,name=ShowName,json=show_name,proto3" json:"ShowName,omitempty"` + ArtistName string `protobuf:"bytes,2,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName,omitempty"` + ArtistUID string `protobuf:"bytes,3,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID,omitempty"` + ArtworkNum int32 `protobuf:"varint,4,opt,name=ArtworkNum,json=artwork_num,proto3" json:"ArtworkNum,omitempty"` + Ruler int32 `protobuf:"varint,5,opt,name=Ruler,json=ruler,proto3" json:"Ruler,omitempty"` + Price int64 `protobuf:"varint,6,opt,name=Price,json=price,proto3" json:"Price,omitempty"` + Reward int64 `protobuf:"varint,7,opt,name=Reward,json=reward,proto3" json:"Reward,omitempty"` + IsShow int32 `protobuf:"varint,8,opt,name=IsShow,json=is_show,proto3" json:"IsShow,omitempty"` + CreateTime string `protobuf:"bytes,9,opt,name=CreateTime,json=create_time,proto3" json:"CreateTime,omitempty"` + Operator string `protobuf:"bytes,10,opt,name=Operator,json=operator,proto3" json:"Operator,omitempty"` + ShowUID string `protobuf:"bytes,11,opt,name=ShowUID,json=id,proto3" json:"ShowUID,omitempty"` + Artwork []*ArtworkDetail `protobuf:"bytes,12,rep,name=Artwork,json=show_artwork,proto3" json:"Artwork,omitempty"` + DelArtwork []*DelArtworkDetail `protobuf:"bytes,13,rep,name=DelArtwork,json=del_show_artwork,proto3" json:"DelArtwork,omitempty"` } func (x *SaveShowReq) Reset() { @@ -135,6 +135,13 @@ func (x *SaveShowReq) GetCreateTime() string { return "" } +func (x *SaveShowReq) GetOperator() string { + if x != nil { + return x.Operator + } + return "" +} + func (x *SaveShowReq) GetShowUID() string { if x != nil { return x.ShowUID @@ -161,8 +168,8 @@ type SaveShowRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg"` - ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` + Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` + ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` } func (x *SaveShowRes) Reset() { @@ -216,7 +223,7 @@ type CommonRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg"` + Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *CommonRes) Reset() { @@ -264,7 +271,7 @@ type ShowDetailReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowUID string `protobuf:"bytes,1,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` + ShowUID []string `protobuf:"bytes,1,rep,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` } func (x *ShowDetailReq) Reset() { @@ -299,7 +306,54 @@ func (*ShowDetailReq) Descriptor() ([]byte, []int) { return file_pb_artshow_proto_rawDescGZIP(), []int{3} } -func (x *ShowDetailReq) GetShowUID() string { +func (x *ShowDetailReq) GetShowUID() []string { + if x != nil { + return x.ShowUID + } + return nil +} + +type ArtworkDetailReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowUID string `protobuf:"bytes,1,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` +} + +func (x *ArtworkDetailReq) Reset() { + *x = ArtworkDetailReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ArtworkDetailReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ArtworkDetailReq) ProtoMessage() {} + +func (x *ArtworkDetailReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use ArtworkDetailReq.ProtoReflect.Descriptor instead. +func (*ArtworkDetailReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{4} +} + +func (x *ArtworkDetailReq) GetShowUID() string { if x != nil { return x.ShowUID } @@ -311,25 +365,26 @@ type ShowDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowUID string `protobuf:"bytes,1,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` - ShowSeq string `protobuf:"bytes,2,opt,name=ShowSeq,json=show_seq,proto3" json:"ShowSeq"` - ShowName string `protobuf:"bytes,3,opt,name=ShowName,json=show_name,proto3" json:"ShowName"` - ArtistName string `protobuf:"bytes,4,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName"` - ArtistUID string `protobuf:"bytes,5,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID"` - ArtworkNum int32 `protobuf:"varint,6,opt,name=ArtworkNum,json=artwork_num,proto3" json:"ArtworkNum"` - Ruler int32 `protobuf:"varint,7,opt,name=Ruler,json=ruler,proto3" json:"Ruler"` - Price int64 `protobuf:"varint,8,opt,name=Price,json=price,proto3" json:"Price"` - Reward int64 `protobuf:"varint,9,opt,name=Reward,json=reward,proto3" json:"Reward"` - CreateTime string `protobuf:"bytes,10,opt,name=CreateTime,json=create_time,proto3" json:"CreateTime"` - IsShow int32 `protobuf:"varint,11,opt,name=IsShow,json=is_show,proto3" json:"IsShow"` - ShowTime string `protobuf:"bytes,12,opt,name=ShowTime,json=show_time,proto3" json:"ShowTime"` - Address string `protobuf:"bytes,13,opt,name=Address,json=address,proto3" json:"Address"` + ShowUID string `protobuf:"bytes,1,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` + ShowSeq string `protobuf:"bytes,2,opt,name=ShowSeq,json=show_seq,proto3" json:"ShowSeq,omitempty"` + ShowName string `protobuf:"bytes,3,opt,name=ShowName,json=show_name,proto3" json:"ShowName,omitempty"` + ArtistName string `protobuf:"bytes,4,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName,omitempty"` + ArtistUID string `protobuf:"bytes,5,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID,omitempty"` + ArtworkNum int32 `protobuf:"varint,6,opt,name=ArtworkNum,json=artwork_num,proto3" json:"ArtworkNum,omitempty"` + Ruler int32 `protobuf:"varint,7,opt,name=Ruler,json=ruler,proto3" json:"Ruler,omitempty"` + Price int64 `protobuf:"varint,8,opt,name=Price,json=price,proto3" json:"Price,omitempty"` + Reward int64 `protobuf:"varint,9,opt,name=Reward,json=reward,proto3" json:"Reward,omitempty"` + CreateTime string `protobuf:"bytes,10,opt,name=CreateTime,json=create_time,proto3" json:"CreateTime,omitempty"` + Operator string `protobuf:"bytes,11,opt,name=Operator,json=operator,proto3" json:"Operator,omitempty"` + IsShow int32 `protobuf:"varint,12,opt,name=IsShow,json=is_show,proto3" json:"IsShow,omitempty"` + ShowTime string `protobuf:"bytes,13,opt,name=ShowTime,json=show_time,proto3" json:"ShowTime,omitempty"` + Address string `protobuf:"bytes,14,opt,name=Address,json=address,proto3" json:"Address,omitempty"` } func (x *ShowDetail) Reset() { *x = ShowDetail{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[4] + mi := &file_pb_artshow_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -342,7 +397,7 @@ func (x *ShowDetail) String() string { func (*ShowDetail) ProtoMessage() {} func (x *ShowDetail) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[4] + mi := &file_pb_artshow_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -355,7 +410,7 @@ func (x *ShowDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowDetail.ProtoReflect.Descriptor instead. func (*ShowDetail) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{4} + return file_pb_artshow_proto_rawDescGZIP(), []int{5} } func (x *ShowDetail) GetShowUID() string { @@ -428,6 +483,13 @@ func (x *ShowDetail) GetCreateTime() string { return "" } +func (x *ShowDetail) GetOperator() string { + if x != nil { + return x.Operator + } + return "" +} + func (x *ShowDetail) GetIsShow() int32 { if x != nil { return x.IsShow @@ -454,14 +516,14 @@ type ShowDetailRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *ShowDetail `protobuf:"bytes,1,opt,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` + Data []*ShowDetail `protobuf:"bytes,1,rep,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ShowDetailRes) Reset() { *x = ShowDetailRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[5] + mi := &file_pb_artshow_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -474,7 +536,7 @@ func (x *ShowDetailRes) String() string { func (*ShowDetailRes) ProtoMessage() {} func (x *ShowDetailRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[5] + mi := &file_pb_artshow_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -487,10 +549,10 @@ func (x *ShowDetailRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowDetailRes.ProtoReflect.Descriptor instead. func (*ShowDetailRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{5} + return file_pb_artshow_proto_rawDescGZIP(), []int{6} } -func (x *ShowDetailRes) GetData() *ShowDetail { +func (x *ShowDetailRes) GetData() []*ShowDetail { if x != nil { return x.Data } @@ -509,14 +571,14 @@ type ShowArtworkDetailRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data []*ArtworkDetail `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` + Data []*ArtworkDetail `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ShowArtworkDetailRes) Reset() { *x = ShowArtworkDetailRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[6] + mi := &file_pb_artshow_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -529,7 +591,7 @@ func (x *ShowArtworkDetailRes) String() string { func (*ShowArtworkDetailRes) ProtoMessage() {} func (x *ShowArtworkDetailRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[6] + mi := &file_pb_artshow_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -542,7 +604,7 @@ func (x *ShowArtworkDetailRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowArtworkDetailRes.ProtoReflect.Descriptor instead. func (*ShowArtworkDetailRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{6} + return file_pb_artshow_proto_rawDescGZIP(), []int{7} } func (x *ShowArtworkDetailRes) GetData() []*ArtworkDetail { @@ -565,24 +627,24 @@ type ShowListReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page"` - PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize"` - StartTime string `protobuf:"bytes,3,opt,name=StartTime,json=start_time,proto3" json:"StartTime"` - EndTime string `protobuf:"bytes,4,opt,name=EndTime,json=end_time,proto3" json:"EndTime"` - ShowSeq string `protobuf:"bytes,5,opt,name=ShowSeq,json=show_seq,proto3" json:"ShowSeq"` - ShowName string `protobuf:"bytes,6,opt,name=ShowName,json=show_name,proto3" json:"ShowName"` - ArtistName string `protobuf:"bytes,7,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName"` - StartPrice int64 `protobuf:"varint,8,opt,name=StartPrice,json=start_price,proto3" json:"StartPrice"` - EndPrice int64 `protobuf:"varint,9,opt,name=EndPrice,json=end_price,proto3" json:"EndPrice"` - StartReward int64 `protobuf:"varint,10,opt,name=StartReward,json=start_reward,proto3" json:"StartReward"` - EndReward int64 `protobuf:"varint,11,opt,name=EndReward,json=end_reward,proto3" json:"EndReward"` - IsShow int32 `protobuf:"varint,12,opt,name=IsShow,json=is_show,proto3" json:"IsShow"` + Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page,omitempty"` + PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize,omitempty"` + StartTime string `protobuf:"bytes,3,opt,name=StartTime,json=start_time,proto3" json:"StartTime,omitempty"` + EndTime string `protobuf:"bytes,4,opt,name=EndTime,json=end_time,proto3" json:"EndTime,omitempty"` + ShowSeq string `protobuf:"bytes,5,opt,name=ShowSeq,json=show_seq,proto3" json:"ShowSeq,omitempty"` + ShowName string `protobuf:"bytes,6,opt,name=ShowName,json=show_name,proto3" json:"ShowName,omitempty"` + ArtistName string `protobuf:"bytes,7,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName,omitempty"` + StartPrice int64 `protobuf:"varint,8,opt,name=StartPrice,json=start_price,proto3" json:"StartPrice,omitempty"` + EndPrice int64 `protobuf:"varint,9,opt,name=EndPrice,json=end_price,proto3" json:"EndPrice,omitempty"` + StartReward int64 `protobuf:"varint,10,opt,name=StartReward,json=start_reward,proto3" json:"StartReward,omitempty"` + EndReward int64 `protobuf:"varint,11,opt,name=EndReward,json=end_reward,proto3" json:"EndReward,omitempty"` + IsShow int32 `protobuf:"varint,12,opt,name=IsShow,json=is_show,proto3" json:"IsShow,omitempty"` } func (x *ShowListReq) Reset() { *x = ShowListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[7] + mi := &file_pb_artshow_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -595,7 +657,7 @@ func (x *ShowListReq) String() string { func (*ShowListReq) ProtoMessage() {} func (x *ShowListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[7] + mi := &file_pb_artshow_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -608,7 +670,7 @@ func (x *ShowListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowListReq.ProtoReflect.Descriptor instead. func (*ShowListReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{7} + return file_pb_artshow_proto_rawDescGZIP(), []int{8} } func (x *ShowListReq) GetPage() int32 { @@ -700,15 +762,15 @@ type ShowListForArtworkReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page"` - PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize"` - ArtistUID string `protobuf:"bytes,3,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID"` + Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page,omitempty"` + PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize,omitempty"` + ArtistUID string `protobuf:"bytes,3,opt,name=ArtistUID,json=artist_uid,proto3" json:"ArtistUID,omitempty"` } func (x *ShowListForArtworkReq) Reset() { *x = ShowListForArtworkReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[8] + mi := &file_pb_artshow_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -721,7 +783,7 @@ func (x *ShowListForArtworkReq) String() string { func (*ShowListForArtworkReq) ProtoMessage() {} func (x *ShowListForArtworkReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[8] + mi := &file_pb_artshow_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -734,7 +796,7 @@ func (x *ShowListForArtworkReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowListForArtworkReq.ProtoReflect.Descriptor instead. func (*ShowListForArtworkReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{8} + return file_pb_artshow_proto_rawDescGZIP(), []int{9} } func (x *ShowListForArtworkReq) GetPage() int32 { @@ -763,17 +825,17 @@ type ShowListRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total"` - TotalPackageNum int64 `protobuf:"varint,2,opt,name=TotalPackageNum,json=total_package_num,proto3" json:"TotalPackageNum"` - TotalArtistNum int64 `protobuf:"varint,3,opt,name=TotalArtistNum,json=total_artist_num,proto3" json:"TotalArtistNum"` - Data []*ShowDetail `protobuf:"bytes,4,rep,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,5,opt,name=Msg,json=msg,proto3" json:"Msg"` + Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total,omitempty"` + TotalPackageNum int64 `protobuf:"varint,2,opt,name=TotalPackageNum,json=total_package_num,proto3" json:"TotalPackageNum,omitempty"` + TotalArtistNum int64 `protobuf:"varint,3,opt,name=TotalArtistNum,json=total_artist_num,proto3" json:"TotalArtistNum,omitempty"` + Data []*ShowDetail `protobuf:"bytes,4,rep,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,5,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ShowListRes) Reset() { *x = ShowListRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[9] + mi := &file_pb_artshow_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -786,7 +848,7 @@ func (x *ShowListRes) String() string { func (*ShowListRes) ProtoMessage() {} func (x *ShowListRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[9] + mi := &file_pb_artshow_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -799,7 +861,7 @@ func (x *ShowListRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowListRes.ProtoReflect.Descriptor instead. func (*ShowListRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{9} + return file_pb_artshow_proto_rawDescGZIP(), []int{10} } func (x *ShowListRes) GetTotal() int64 { @@ -842,15 +904,15 @@ type ShowListForArtworkRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` - Data []*ShowDetail `protobuf:"bytes,3,rep,name=Data,json=data,proto3" json:"Data"` + Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` + Data []*ShowDetail `protobuf:"bytes,3,rep,name=Data,json=data,proto3" json:"Data,omitempty"` } func (x *ShowListForArtworkRes) Reset() { *x = ShowListForArtworkRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[10] + mi := &file_pb_artshow_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -863,7 +925,7 @@ func (x *ShowListForArtworkRes) String() string { func (*ShowListForArtworkRes) ProtoMessage() {} func (x *ShowListForArtworkRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[10] + mi := &file_pb_artshow_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -876,7 +938,7 @@ func (x *ShowListForArtworkRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowListForArtworkRes.ProtoReflect.Descriptor instead. func (*ShowListForArtworkRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{10} + return file_pb_artshow_proto_rawDescGZIP(), []int{11} } func (x *ShowListForArtworkRes) GetTotal() int64 { @@ -906,13 +968,13 @@ type DelShowReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowUID []string `protobuf:"bytes,1,rep,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` + ShowUID []string `protobuf:"bytes,1,rep,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` } func (x *DelShowReq) Reset() { *x = DelShowReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[11] + mi := &file_pb_artshow_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -925,7 +987,7 @@ func (x *DelShowReq) String() string { func (*DelShowReq) ProtoMessage() {} func (x *DelShowReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[11] + mi := &file_pb_artshow_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -938,7 +1000,7 @@ func (x *DelShowReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DelShowReq.ProtoReflect.Descriptor instead. func (*DelShowReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{11} + return file_pb_artshow_proto_rawDescGZIP(), []int{12} } func (x *DelShowReq) GetShowUID() []string { @@ -954,21 +1016,21 @@ type ArtworkDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID"` - ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` - ArtworkUID string `protobuf:"bytes,3,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID"` - ArtworkName string `protobuf:"bytes,4,opt,name=ArtworkName,json=artwork_name,proto3" json:"ArtworkName"` - ArtistName string `protobuf:"bytes,5,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName"` - Length int32 `protobuf:"varint,6,opt,name=Length,json=length,proto3" json:"Length"` - Width int32 `protobuf:"varint,7,opt,name=Width,json=width,proto3" json:"Width"` - Ruler int32 `protobuf:"varint,8,opt,name=Ruler,json=ruler,proto3" json:"Ruler"` - SmallPic string `protobuf:"bytes,9,opt,name=SmallPic,json=small_pic,proto3" json:"SmallPic"` + ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID,omitempty"` + ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` + ArtworkUID string `protobuf:"bytes,3,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID,omitempty"` + ArtworkName string `protobuf:"bytes,4,opt,name=ArtworkName,json=artwork_name,proto3" json:"ArtworkName,omitempty"` + ArtistName string `protobuf:"bytes,5,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName,omitempty"` + Length int32 `protobuf:"varint,6,opt,name=Length,json=length,proto3" json:"Length,omitempty"` + Width int32 `protobuf:"varint,7,opt,name=Width,json=width,proto3" json:"Width,omitempty"` + Ruler int32 `protobuf:"varint,8,opt,name=Ruler,json=ruler,proto3" json:"Ruler,omitempty"` + SmallPic string `protobuf:"bytes,9,opt,name=SmallPic,json=small_pic,proto3" json:"SmallPic,omitempty"` } func (x *ArtworkDetail) Reset() { *x = ArtworkDetail{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[12] + mi := &file_pb_artshow_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -981,7 +1043,7 @@ func (x *ArtworkDetail) String() string { func (*ArtworkDetail) ProtoMessage() {} func (x *ArtworkDetail) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[12] + mi := &file_pb_artshow_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -994,7 +1056,7 @@ func (x *ArtworkDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkDetail.ProtoReflect.Descriptor instead. func (*ArtworkDetail) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{12} + return file_pb_artshow_proto_rawDescGZIP(), []int{13} } func (x *ArtworkDetail) GetArtworkPriceUID() string { @@ -1066,26 +1128,26 @@ type ArtworkPriceDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID"` - ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` - ArtworkUID string `protobuf:"bytes,3,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID"` - ArtworkName string `protobuf:"bytes,4,opt,name=ArtworkName,json=artwork_name,proto3" json:"ArtworkName"` - ArtistName string `protobuf:"bytes,5,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName"` - Length int32 `protobuf:"varint,6,opt,name=Length,json=length,proto3" json:"Length"` - Width int32 `protobuf:"varint,7,opt,name=Width,json=width,proto3" json:"Width"` - Ruler int32 `protobuf:"varint,8,opt,name=Ruler,json=ruler,proto3" json:"Ruler"` - SmallPic string `protobuf:"bytes,9,opt,name=SmallPic,json=small_pic,proto3" json:"SmallPic"` - Price int64 `protobuf:"varint,10,opt,name=Price,json=price,proto3" json:"Price"` - RulerPrice int64 `protobuf:"varint,11,opt,name=RulerPrice,json=ruler_price,proto3" json:"RulerPrice"` - ArtworkPrice int64 `protobuf:"varint,12,opt,name=ArtworkPrice,json=artwork_price,proto3" json:"ArtworkPrice"` - MarketPrice int64 `protobuf:"varint,13,opt,name=MarketPrice,json=market_price,proto3" json:"MarketPrice"` - CopyrightPrice int64 `protobuf:"varint,14,opt,name=CopyrightPrice,json=copyright_price,proto3" json:"CopyrightPrice"` + ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID,omitempty"` + ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` + ArtworkUID string `protobuf:"bytes,3,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID,omitempty"` + ArtworkName string `protobuf:"bytes,4,opt,name=ArtworkName,json=artwork_name,proto3" json:"ArtworkName,omitempty"` + ArtistName string `protobuf:"bytes,5,opt,name=ArtistName,json=artist_name,proto3" json:"ArtistName,omitempty"` + Length int32 `protobuf:"varint,6,opt,name=Length,json=length,proto3" json:"Length,omitempty"` + Width int32 `protobuf:"varint,7,opt,name=Width,json=width,proto3" json:"Width,omitempty"` + Ruler int32 `protobuf:"varint,8,opt,name=Ruler,json=ruler,proto3" json:"Ruler,omitempty"` + SmallPic string `protobuf:"bytes,9,opt,name=SmallPic,json=small_pic,proto3" json:"SmallPic,omitempty"` + Price int64 `protobuf:"varint,10,opt,name=Price,json=price,proto3" json:"Price,omitempty"` + RulerPrice int64 `protobuf:"varint,11,opt,name=RulerPrice,json=ruler_price,proto3" json:"RulerPrice,omitempty"` + ArtworkPrice int64 `protobuf:"varint,12,opt,name=ArtworkPrice,json=artwork_price,proto3" json:"ArtworkPrice,omitempty"` + MarketPrice int64 `protobuf:"varint,13,opt,name=MarketPrice,json=market_price,proto3" json:"MarketPrice,omitempty"` + CopyrightPrice int64 `protobuf:"varint,14,opt,name=CopyrightPrice,json=copyright_price,proto3" json:"CopyrightPrice,omitempty"` } func (x *ArtworkPriceDetail) Reset() { *x = ArtworkPriceDetail{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[13] + mi := &file_pb_artshow_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1098,7 +1160,7 @@ func (x *ArtworkPriceDetail) String() string { func (*ArtworkPriceDetail) ProtoMessage() {} func (x *ArtworkPriceDetail) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[13] + mi := &file_pb_artshow_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1111,7 +1173,7 @@ func (x *ArtworkPriceDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkPriceDetail.ProtoReflect.Descriptor instead. func (*ArtworkPriceDetail) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{13} + return file_pb_artshow_proto_rawDescGZIP(), []int{14} } func (x *ArtworkPriceDetail) GetArtworkPriceUID() string { @@ -1217,14 +1279,14 @@ type ArtworkPriceListRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data []*ArtworkPriceDetail `protobuf:"bytes,1,rep,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` + Data []*ArtworkPriceDetail `protobuf:"bytes,1,rep,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ArtworkPriceListRes) Reset() { *x = ArtworkPriceListRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[14] + mi := &file_pb_artshow_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1237,7 +1299,7 @@ func (x *ArtworkPriceListRes) String() string { func (*ArtworkPriceListRes) ProtoMessage() {} func (x *ArtworkPriceListRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[14] + mi := &file_pb_artshow_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1250,7 +1312,7 @@ func (x *ArtworkPriceListRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkPriceListRes.ProtoReflect.Descriptor instead. func (*ArtworkPriceListRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{14} + return file_pb_artshow_proto_rawDescGZIP(), []int{15} } func (x *ArtworkPriceListRes) GetData() []*ArtworkPriceDetail { @@ -1273,14 +1335,14 @@ type DelArtworkDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID"` - ArtworkUID string `protobuf:"bytes,2,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID"` + ArtworkPriceUID string `protobuf:"bytes,1,opt,name=ArtworkPriceUID,json=artwork_price_uid,proto3" json:"ArtworkPriceUID,omitempty"` + ArtworkUID string `protobuf:"bytes,2,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID,omitempty"` } func (x *DelArtworkDetail) Reset() { *x = DelArtworkDetail{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[15] + mi := &file_pb_artshow_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1293,7 +1355,7 @@ func (x *DelArtworkDetail) String() string { func (*DelArtworkDetail) ProtoMessage() {} func (x *DelArtworkDetail) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[15] + mi := &file_pb_artshow_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1306,7 +1368,7 @@ func (x *DelArtworkDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use DelArtworkDetail.ProtoReflect.Descriptor instead. func (*DelArtworkDetail) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{15} + return file_pb_artshow_proto_rawDescGZIP(), []int{16} } func (x *DelArtworkDetail) GetArtworkPriceUID() string { @@ -1329,13 +1391,13 @@ type ShowStatisticalInfoReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - IsShow int32 `protobuf:"varint,1,opt,name=IsShow,json=is_show,proto3" json:"IsShow"` + IsShow int32 `protobuf:"varint,1,opt,name=IsShow,json=is_show,proto3" json:"IsShow,omitempty"` } func (x *ShowStatisticalInfoReq) Reset() { *x = ShowStatisticalInfoReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[16] + mi := &file_pb_artshow_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1348,7 +1410,7 @@ func (x *ShowStatisticalInfoReq) String() string { func (*ShowStatisticalInfoReq) ProtoMessage() {} func (x *ShowStatisticalInfoReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[16] + mi := &file_pb_artshow_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1361,7 +1423,7 @@ func (x *ShowStatisticalInfoReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowStatisticalInfoReq.ProtoReflect.Descriptor instead. func (*ShowStatisticalInfoReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{16} + return file_pb_artshow_proto_rawDescGZIP(), []int{17} } func (x *ShowStatisticalInfoReq) GetIsShow() int32 { @@ -1376,14 +1438,14 @@ type ShowStatisticalInfoRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *ShowStatisticalInfoRes_Num `protobuf:"bytes,1,opt,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` + Data *ShowStatisticalInfoRes_Num `protobuf:"bytes,1,opt,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ShowStatisticalInfoRes) Reset() { *x = ShowStatisticalInfoRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[17] + mi := &file_pb_artshow_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1396,7 +1458,7 @@ func (x *ShowStatisticalInfoRes) String() string { func (*ShowStatisticalInfoRes) ProtoMessage() {} func (x *ShowStatisticalInfoRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[17] + mi := &file_pb_artshow_proto_msgTypes[18] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1409,7 +1471,7 @@ func (x *ShowStatisticalInfoRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowStatisticalInfoRes.ProtoReflect.Descriptor instead. func (*ShowStatisticalInfoRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{17} + return file_pb_artshow_proto_rawDescGZIP(), []int{18} } func (x *ShowStatisticalInfoRes) GetData() *ShowStatisticalInfoRes_Num { @@ -1431,13 +1493,13 @@ type ArtworkPriceReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ArtworkUID string `protobuf:"bytes,1,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID"` + ArtworkUID string `protobuf:"bytes,1,opt,name=ArtworkUID,json=artwork_uid,proto3" json:"ArtworkUID,omitempty"` } func (x *ArtworkPriceReq) Reset() { *x = ArtworkPriceReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[18] + mi := &file_pb_artshow_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1450,7 +1512,7 @@ func (x *ArtworkPriceReq) String() string { func (*ArtworkPriceReq) ProtoMessage() {} func (x *ArtworkPriceReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[18] + mi := &file_pb_artshow_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1463,7 +1525,7 @@ func (x *ArtworkPriceReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkPriceReq.ProtoReflect.Descriptor instead. func (*ArtworkPriceReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{18} + return file_pb_artshow_proto_rawDescGZIP(), []int{19} } func (x *ArtworkPriceReq) GetArtworkUID() string { @@ -1478,14 +1540,14 @@ type ArtworkPriceRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data *ArtworkPriceRes_PriceInfo `protobuf:"bytes,1,opt,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` + Data *ArtworkPriceRes_PriceInfo `protobuf:"bytes,1,opt,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ArtworkPriceRes) Reset() { *x = ArtworkPriceRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[19] + mi := &file_pb_artshow_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1498,7 +1560,7 @@ func (x *ArtworkPriceRes) String() string { func (*ArtworkPriceRes) ProtoMessage() {} func (x *ArtworkPriceRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[19] + mi := &file_pb_artshow_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1511,7 +1573,7 @@ func (x *ArtworkPriceRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkPriceRes.ProtoReflect.Descriptor instead. func (*ArtworkPriceRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{19} + return file_pb_artshow_proto_rawDescGZIP(), []int{20} } func (x *ArtworkPriceRes) GetData() *ArtworkPriceRes_PriceInfo { @@ -1533,18 +1595,18 @@ type ShowRel struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowRelUID string `protobuf:"bytes,1,opt,name=ShowRelUID,json=show_rel_uid,proto3" json:"ShowRelUID"` - ApplyUID string `protobuf:"bytes,2,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` - ShowUID string `protobuf:"bytes,3,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` - Index int32 `protobuf:"varint,4,opt,name=Index,json=index,proto3" json:"Index"` - Address string `protobuf:"bytes,5,opt,name=Address,json=address,proto3" json:"Address"` - ShowTime string `protobuf:"bytes,6,opt,name=ShowTime,json=show_time,proto3" json:"ShowTime"` + ShowRelUID string `protobuf:"bytes,1,opt,name=ShowRelUID,json=show_rel_uid,proto3" json:"ShowRelUID,omitempty"` + ApplyUID string `protobuf:"bytes,2,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` + ShowUID string `protobuf:"bytes,3,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` + Index int32 `protobuf:"varint,4,opt,name=Index,json=index,proto3" json:"Index,omitempty"` + Address string `protobuf:"bytes,5,opt,name=Address,json=address,proto3" json:"Address,omitempty"` + ShowTime string `protobuf:"bytes,6,opt,name=ShowTime,json=show_time,proto3" json:"ShowTime,omitempty"` } func (x *ShowRel) Reset() { *x = ShowRel{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[20] + mi := &file_pb_artshow_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1557,7 +1619,7 @@ func (x *ShowRel) String() string { func (*ShowRel) ProtoMessage() {} func (x *ShowRel) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[20] + mi := &file_pb_artshow_proto_msgTypes[21] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1570,7 +1632,7 @@ func (x *ShowRel) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowRel.ProtoReflect.Descriptor instead. func (*ShowRel) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{20} + return file_pb_artshow_proto_rawDescGZIP(), []int{21} } func (x *ShowRel) GetShowRelUID() string { @@ -1620,14 +1682,14 @@ type DelShowRel struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ShowRelUID string `protobuf:"bytes,1,opt,name=ShowRelUID,json=show_rel_uid,proto3" json:"ShowRelUID"` - ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` + ShowRelUID string `protobuf:"bytes,1,opt,name=ShowRelUID,json=show_rel_uid,proto3" json:"ShowRelUID,omitempty"` + ShowUID string `protobuf:"bytes,2,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID,omitempty"` } func (x *DelShowRel) Reset() { *x = DelShowRel{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[21] + mi := &file_pb_artshow_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1640,7 +1702,7 @@ func (x *DelShowRel) String() string { func (*DelShowRel) ProtoMessage() {} func (x *DelShowRel) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[21] + mi := &file_pb_artshow_proto_msgTypes[22] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1653,7 +1715,7 @@ func (x *DelShowRel) ProtoReflect() protoreflect.Message { // Deprecated: Use DelShowRel.ProtoReflect.Descriptor instead. func (*DelShowRel) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{21} + return file_pb_artshow_proto_rawDescGZIP(), []int{22} } func (x *DelShowRel) GetShowRelUID() string { @@ -1675,21 +1737,21 @@ type SaveApplyReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Applicant string `protobuf:"bytes,1,opt,name=Applicant,json=applicant,proto3" json:"Applicant"` - ApplicantID string `protobuf:"bytes,2,opt,name=ApplicantID,json=applicant_id,proto3" json:"ApplicantID"` - Num int32 `protobuf:"varint,3,opt,name=Num,json=num,proto3" json:"Num"` - ApplyTime string `protobuf:"bytes,4,opt,name=ApplyTime,json=apply_time,proto3" json:"ApplyTime"` - ApplyUID string `protobuf:"bytes,5,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` - Status int32 `protobuf:"varint,6,opt,name=Status,json=status,proto3" json:"Status"` - Remark string `protobuf:"bytes,7,opt,name=Remark,json=remark,proto3" json:"Remark"` - Rel []*ShowRel `protobuf:"bytes,8,rep,name=Rel,json=rel,proto3" json:"Rel"` - DelRel []*DelShowRel `protobuf:"bytes,9,rep,name=DelRel,json=del_rel,proto3" json:"DelRel"` + Applicant string `protobuf:"bytes,1,opt,name=Applicant,json=applicant,proto3" json:"Applicant,omitempty"` + ApplicantID string `protobuf:"bytes,2,opt,name=ApplicantID,json=applicant_id,proto3" json:"ApplicantID,omitempty"` + Num int32 `protobuf:"varint,3,opt,name=Num,json=num,proto3" json:"Num,omitempty"` + ApplyTime string `protobuf:"bytes,4,opt,name=ApplyTime,json=apply_time,proto3" json:"ApplyTime,omitempty"` + ApplyUID string `protobuf:"bytes,5,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` + Status int32 `protobuf:"varint,6,opt,name=Status,json=status,proto3" json:"Status,omitempty"` + Remark string `protobuf:"bytes,7,opt,name=Remark,json=remark,proto3" json:"Remark,omitempty"` + Rel []*ShowRel `protobuf:"bytes,8,rep,name=Rel,json=rel,proto3" json:"Rel,omitempty"` + DelRel []*DelShowRel `protobuf:"bytes,9,rep,name=DelRel,json=del_rel,proto3" json:"DelRel,omitempty"` } func (x *SaveApplyReq) Reset() { *x = SaveApplyReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[22] + mi := &file_pb_artshow_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1702,7 +1764,7 @@ func (x *SaveApplyReq) String() string { func (*SaveApplyReq) ProtoMessage() {} func (x *SaveApplyReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[22] + mi := &file_pb_artshow_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1715,7 +1777,7 @@ func (x *SaveApplyReq) ProtoReflect() protoreflect.Message { // Deprecated: Use SaveApplyReq.ProtoReflect.Descriptor instead. func (*SaveApplyReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{22} + return file_pb_artshow_proto_rawDescGZIP(), []int{23} } func (x *SaveApplyReq) GetApplicant() string { @@ -1786,14 +1848,14 @@ type SaveApplyRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg"` - ApplyUID string `protobuf:"bytes,2,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` + Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` + ApplyUID string `protobuf:"bytes,2,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` } func (x *SaveApplyRes) Reset() { *x = SaveApplyRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[23] + mi := &file_pb_artshow_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1806,7 +1868,7 @@ func (x *SaveApplyRes) String() string { func (*SaveApplyRes) ProtoMessage() {} func (x *SaveApplyRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[23] + mi := &file_pb_artshow_proto_msgTypes[24] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1819,7 +1881,7 @@ func (x *SaveApplyRes) ProtoReflect() protoreflect.Message { // Deprecated: Use SaveApplyRes.ProtoReflect.Descriptor instead. func (*SaveApplyRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{23} + return file_pb_artshow_proto_rawDescGZIP(), []int{24} } func (x *SaveApplyRes) GetMsg() string { @@ -1841,15 +1903,15 @@ type ApplyListReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page"` - PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize"` - Status int32 `protobuf:"varint,3,opt,name=Status,json=status,proto3" json:"Status"` + Page int32 `protobuf:"varint,1,opt,name=Page,json=page,proto3" json:"Page,omitempty"` + PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=page_size,proto3" json:"PageSize,omitempty"` + Status int32 `protobuf:"varint,3,opt,name=Status,json=status,proto3" json:"Status,omitempty"` } func (x *ApplyListReq) Reset() { *x = ApplyListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[24] + mi := &file_pb_artshow_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1862,7 +1924,7 @@ func (x *ApplyListReq) String() string { func (*ApplyListReq) ProtoMessage() {} func (x *ApplyListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[24] + mi := &file_pb_artshow_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1875,7 +1937,7 @@ func (x *ApplyListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyListReq.ProtoReflect.Descriptor instead. func (*ApplyListReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{24} + return file_pb_artshow_proto_rawDescGZIP(), []int{25} } func (x *ApplyListReq) GetPage() int32 { @@ -1904,15 +1966,15 @@ type ApplyListRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total"` - Data []*ApplyDetail `protobuf:"bytes,2,rep,name=Data,json=data,proto3" json:"Data"` - Msg string `protobuf:"bytes,3,opt,name=Msg,json=msg,proto3" json:"Msg"` + Total int64 `protobuf:"varint,1,opt,name=Total,json=total,proto3" json:"Total,omitempty"` + Data []*ApplyDetail `protobuf:"bytes,2,rep,name=Data,json=data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,3,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ApplyListRes) Reset() { *x = ApplyListRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[25] + mi := &file_pb_artshow_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1925,7 +1987,7 @@ func (x *ApplyListRes) String() string { func (*ApplyListRes) ProtoMessage() {} func (x *ApplyListRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[25] + mi := &file_pb_artshow_proto_msgTypes[26] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1938,7 +2000,7 @@ func (x *ApplyListRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyListRes.ProtoReflect.Descriptor instead. func (*ApplyListRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{25} + return file_pb_artshow_proto_rawDescGZIP(), []int{26} } func (x *ApplyListRes) GetTotal() int64 { @@ -1967,13 +2029,13 @@ type ApplyShowReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` + ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` } func (x *ApplyShowReq) Reset() { *x = ApplyShowReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[26] + mi := &file_pb_artshow_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1986,7 +2048,7 @@ func (x *ApplyShowReq) String() string { func (*ApplyShowReq) ProtoMessage() {} func (x *ApplyShowReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[26] + mi := &file_pb_artshow_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1999,7 +2061,7 @@ func (x *ApplyShowReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyShowReq.ProtoReflect.Descriptor instead. func (*ApplyShowReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{26} + return file_pb_artshow_proto_rawDescGZIP(), []int{27} } func (x *ApplyShowReq) GetApplyUID() string { @@ -2014,15 +2076,15 @@ type ApplyShowRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Apply *ApplyDetail `protobuf:"bytes,1,opt,name=Apply,json=apply,proto3" json:"Apply"` - Show []*ShowDetail `protobuf:"bytes,2,rep,name=Show,json=show,proto3" json:"Show"` - Msg string `protobuf:"bytes,3,opt,name=Msg,json=msg,proto3" json:"Msg"` + Apply *ApplyDetail `protobuf:"bytes,1,opt,name=Apply,json=apply,proto3" json:"Apply,omitempty"` + Show []*ShowDetail `protobuf:"bytes,2,rep,name=Show,json=show,proto3" json:"Show,omitempty"` + Msg string `protobuf:"bytes,3,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ApplyShowRes) Reset() { *x = ApplyShowRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[27] + mi := &file_pb_artshow_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2035,7 +2097,7 @@ func (x *ApplyShowRes) String() string { func (*ApplyShowRes) ProtoMessage() {} func (x *ApplyShowRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[27] + mi := &file_pb_artshow_proto_msgTypes[28] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2048,7 +2110,7 @@ func (x *ApplyShowRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyShowRes.ProtoReflect.Descriptor instead. func (*ApplyShowRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{27} + return file_pb_artshow_proto_rawDescGZIP(), []int{28} } func (x *ApplyShowRes) GetApply() *ApplyDetail { @@ -2077,20 +2139,20 @@ type ApplyDetail struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` - ApplySeq string `protobuf:"bytes,2,opt,name=ApplySeq,json=apply_seq,proto3" json:"ApplySeq"` - Applicant string `protobuf:"bytes,3,opt,name=Applicant,json=applicant,proto3" json:"Applicant"` - ApplicantID string `protobuf:"bytes,4,opt,name=ApplicantID,json=applicant_id,proto3" json:"ApplicantID"` - Num int32 `protobuf:"varint,5,opt,name=Num,json=num,proto3" json:"Num"` - ApplyTime string `protobuf:"bytes,6,opt,name=ApplyTime,json=apply_time,proto3" json:"ApplyTime"` - Status int32 `protobuf:"varint,7,opt,name=Status,json=status,proto3" json:"Status"` - Remark string `protobuf:"bytes,8,opt,name=Remark,json=remark,proto3" json:"Remark"` + ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` + ApplySeq string `protobuf:"bytes,2,opt,name=ApplySeq,json=apply_seq,proto3" json:"ApplySeq,omitempty"` + Applicant string `protobuf:"bytes,3,opt,name=Applicant,json=applicant,proto3" json:"Applicant,omitempty"` + ApplicantID string `protobuf:"bytes,4,opt,name=ApplicantID,json=applicant_id,proto3" json:"ApplicantID,omitempty"` + Num int32 `protobuf:"varint,5,opt,name=Num,json=num,proto3" json:"Num,omitempty"` + ApplyTime string `protobuf:"bytes,6,opt,name=ApplyTime,json=apply_time,proto3" json:"ApplyTime,omitempty"` + Status int32 `protobuf:"varint,7,opt,name=Status,json=status,proto3" json:"Status,omitempty"` + Remark string `protobuf:"bytes,8,opt,name=Remark,json=remark,proto3" json:"Remark,omitempty"` } func (x *ApplyDetail) Reset() { *x = ApplyDetail{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[28] + mi := &file_pb_artshow_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2103,7 +2165,7 @@ func (x *ApplyDetail) String() string { func (*ApplyDetail) ProtoMessage() {} func (x *ApplyDetail) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[28] + mi := &file_pb_artshow_proto_msgTypes[29] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2116,7 +2178,7 @@ func (x *ApplyDetail) ProtoReflect() protoreflect.Message { // Deprecated: Use ApplyDetail.ProtoReflect.Descriptor instead. func (*ApplyDetail) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{28} + return file_pb_artshow_proto_rawDescGZIP(), []int{29} } func (x *ApplyDetail) GetApplyUID() string { @@ -2180,13 +2242,13 @@ type ShowRelListReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` + ApplyUID string `protobuf:"bytes,1,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` } func (x *ShowRelListReq) Reset() { *x = ShowRelListReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[29] + mi := &file_pb_artshow_proto_msgTypes[30] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2199,7 +2261,7 @@ func (x *ShowRelListReq) String() string { func (*ShowRelListReq) ProtoMessage() {} func (x *ShowRelListReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[29] + mi := &file_pb_artshow_proto_msgTypes[30] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2212,7 +2274,7 @@ func (x *ShowRelListReq) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowRelListReq.ProtoReflect.Descriptor instead. func (*ShowRelListReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{29} + return file_pb_artshow_proto_rawDescGZIP(), []int{30} } func (x *ShowRelListReq) GetApplyUID() string { @@ -2227,14 +2289,14 @@ type ShowRelListRes struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg"` - Data []*ShowRel `protobuf:"bytes,2,rep,name=Data,json=data,proto3" json:"Data"` + Msg string `protobuf:"bytes,1,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` + Data []*ShowRel `protobuf:"bytes,2,rep,name=Data,json=data,proto3" json:"Data,omitempty"` } func (x *ShowRelListRes) Reset() { *x = ShowRelListRes{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[30] + mi := &file_pb_artshow_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2247,7 +2309,7 @@ func (x *ShowRelListRes) String() string { func (*ShowRelListRes) ProtoMessage() {} func (x *ShowRelListRes) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[30] + mi := &file_pb_artshow_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2260,7 +2322,7 @@ func (x *ShowRelListRes) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowRelListRes.ProtoReflect.Descriptor instead. func (*ShowRelListRes) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{30} + return file_pb_artshow_proto_rawDescGZIP(), []int{31} } func (x *ShowRelListRes) GetMsg() string { @@ -2282,15 +2344,15 @@ type UpdateApplyStatusReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Status int32 `protobuf:"varint,1,opt,name=Status,json=status,proto3" json:"Status"` - Remark string `protobuf:"bytes,2,opt,name=Remark,json=remark,proto3" json:"Remark"` - ApplyUID string `protobuf:"bytes,3,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` + Status int32 `protobuf:"varint,1,opt,name=Status,json=status,proto3" json:"Status,omitempty"` + Remark string `protobuf:"bytes,2,opt,name=Remark,json=remark,proto3" json:"Remark,omitempty"` + ApplyUID string `protobuf:"bytes,3,opt,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` } func (x *UpdateApplyStatusReq) Reset() { *x = UpdateApplyStatusReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[31] + mi := &file_pb_artshow_proto_msgTypes[32] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2303,7 +2365,7 @@ func (x *UpdateApplyStatusReq) String() string { func (*UpdateApplyStatusReq) ProtoMessage() {} func (x *UpdateApplyStatusReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[31] + mi := &file_pb_artshow_proto_msgTypes[32] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2316,7 +2378,7 @@ func (x *UpdateApplyStatusReq) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateApplyStatusReq.ProtoReflect.Descriptor instead. func (*UpdateApplyStatusReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{31} + return file_pb_artshow_proto_rawDescGZIP(), []int{32} } func (x *UpdateApplyStatusReq) GetStatus() int32 { @@ -2345,13 +2407,13 @@ type DelApplyReq struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ApplyUID []string `protobuf:"bytes,1,rep,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID"` + ApplyUID []string `protobuf:"bytes,1,rep,name=ApplyUID,json=apply_uid,proto3" json:"ApplyUID,omitempty"` } func (x *DelApplyReq) Reset() { *x = DelApplyReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[32] + mi := &file_pb_artshow_proto_msgTypes[33] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2364,7 +2426,7 @@ func (x *DelApplyReq) String() string { func (*DelApplyReq) ProtoMessage() {} func (x *DelApplyReq) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[32] + mi := &file_pb_artshow_proto_msgTypes[33] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2377,7 +2439,7 @@ func (x *DelApplyReq) ProtoReflect() protoreflect.Message { // Deprecated: Use DelApplyReq.ProtoReflect.Descriptor instead. func (*DelApplyReq) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{32} + return file_pb_artshow_proto_rawDescGZIP(), []int{33} } func (x *DelApplyReq) GetApplyUID() []string { @@ -2392,17 +2454,17 @@ type ShowStatisticalInfoRes_Num struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ArtistNum int64 `protobuf:"varint,1,opt,name=ArtistNum,json=artist_num,proto3" json:"ArtistNum"` - PackageNum int64 `protobuf:"varint,2,opt,name=PackageNum,json=package_num,proto3" json:"PackageNum"` - TotalNum int64 `protobuf:"varint,3,opt,name=TotalNum,json=total_num,proto3" json:"TotalNum"` - NotShowNum int64 `protobuf:"varint,4,opt,name=NotShowNum,json=not_show_num,proto3" json:"NotShowNum"` - ShowHisNum int64 `protobuf:"varint,5,opt,name=ShowHisNum,json=show_his_num,proto3" json:"ShowHisNum"` + ArtistNum int64 `protobuf:"varint,1,opt,name=ArtistNum,json=artist_num,proto3" json:"ArtistNum,omitempty"` + PackageNum int64 `protobuf:"varint,2,opt,name=PackageNum,json=package_num,proto3" json:"PackageNum,omitempty"` + TotalNum int64 `protobuf:"varint,3,opt,name=TotalNum,json=total_num,proto3" json:"TotalNum,omitempty"` + NotShowNum int64 `protobuf:"varint,4,opt,name=NotShowNum,json=not_show_num,proto3" json:"NotShowNum,omitempty"` + ShowHisNum int64 `protobuf:"varint,5,opt,name=ShowHisNum,json=show_his_num,proto3" json:"ShowHisNum,omitempty"` } func (x *ShowStatisticalInfoRes_Num) Reset() { *x = ShowStatisticalInfoRes_Num{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[33] + mi := &file_pb_artshow_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2415,7 +2477,7 @@ func (x *ShowStatisticalInfoRes_Num) String() string { func (*ShowStatisticalInfoRes_Num) ProtoMessage() {} func (x *ShowStatisticalInfoRes_Num) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[33] + mi := &file_pb_artshow_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2428,7 +2490,7 @@ func (x *ShowStatisticalInfoRes_Num) ProtoReflect() protoreflect.Message { // Deprecated: Use ShowStatisticalInfoRes_Num.ProtoReflect.Descriptor instead. func (*ShowStatisticalInfoRes_Num) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{17, 0} + return file_pb_artshow_proto_rawDescGZIP(), []int{18, 0} } func (x *ShowStatisticalInfoRes_Num) GetArtistNum() int64 { @@ -2471,17 +2533,17 @@ type ArtworkPriceRes_PriceInfo struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Price int64 `protobuf:"varint,1,opt,name=Price,json=price,proto3" json:"Price"` - RulerPrice int64 `protobuf:"varint,2,opt,name=RulerPrice,json=ruler_price,proto3" json:"RulerPrice"` - ArtworkPrice int64 `protobuf:"varint,3,opt,name=ArtworkPrice,json=artwork_price,proto3" json:"ArtworkPrice"` - MarketPrice int64 `protobuf:"varint,4,opt,name=MarketPrice,json=market_price,proto3" json:"MarketPrice"` - CopyrightPrice int64 `protobuf:"varint,5,opt,name=CopyrightPrice,json=copyright_price,proto3" json:"CopyrightPrice"` + Price int64 `protobuf:"varint,1,opt,name=Price,json=price,proto3" json:"Price,omitempty"` + RulerPrice int64 `protobuf:"varint,2,opt,name=RulerPrice,json=ruler_price,proto3" json:"RulerPrice,omitempty"` + ArtworkPrice int64 `protobuf:"varint,3,opt,name=ArtworkPrice,json=artwork_price,proto3" json:"ArtworkPrice,omitempty"` + MarketPrice int64 `protobuf:"varint,4,opt,name=MarketPrice,json=market_price,proto3" json:"MarketPrice,omitempty"` + CopyrightPrice int64 `protobuf:"varint,5,opt,name=CopyrightPrice,json=copyright_price,proto3" json:"CopyrightPrice,omitempty"` } func (x *ArtworkPriceRes_PriceInfo) Reset() { *x = ArtworkPriceRes_PriceInfo{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[34] + mi := &file_pb_artshow_proto_msgTypes[35] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -2494,7 +2556,7 @@ func (x *ArtworkPriceRes_PriceInfo) String() string { func (*ArtworkPriceRes_PriceInfo) ProtoMessage() {} func (x *ArtworkPriceRes_PriceInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[34] + mi := &file_pb_artshow_proto_msgTypes[35] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2507,7 +2569,7 @@ func (x *ArtworkPriceRes_PriceInfo) ProtoReflect() protoreflect.Message { // Deprecated: Use ArtworkPriceRes_PriceInfo.ProtoReflect.Descriptor instead. func (*ArtworkPriceRes_PriceInfo) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{19, 0} + return file_pb_artshow_proto_rawDescGZIP(), []int{20, 0} } func (x *ArtworkPriceRes_PriceInfo) GetPrice() int64 { @@ -2549,7 +2611,7 @@ var File_pb_artshow_proto protoreflect.FileDescriptor var file_pb_artshow_proto_rawDesc = []byte{ 0x0a, 0x10, 0x70, 0x62, 0x2f, 0x61, 0x72, 0x74, 0x73, 0x68, 0x6f, 0x77, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x12, 0x07, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x22, 0x96, 0x03, 0x0a, 0x0b, + 0x74, 0x6f, 0x12, 0x07, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x22, 0xb2, 0x03, 0x0a, 0x0b, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, @@ -2566,376 +2628,383 @@ var file_pb_artshow_proto_rawDesc = []byte{ 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x1f, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x13, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, - 0x49, 0x44, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, - 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, - 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x61, 0x72, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x12, 0x3f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, - 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x52, 0x10, 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x61, 0x72, 0x74, - 0x77, 0x6f, 0x72, 0x6b, 0x22, 0x3a, 0x0a, 0x0b, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, - 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, - 0x22, 0x1d, 0x0a, 0x09, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, - 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, - 0x2a, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, - 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0xf5, 0x02, 0x0a, 0x0a, - 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, - 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, - 0x77, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x71, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x71, - 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, - 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, - 0x0a, 0x09, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, - 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x14, - 0x0a, 0x05, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, - 0x75, 0x6c, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, - 0x77, 0x61, 0x72, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, - 0x72, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, - 0x69, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x1b, 0x0a, 0x08, - 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x22, 0x4a, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x52, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, - 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, - 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, - 0x54, 0x0a, 0x14, 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, - 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, - 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0xea, 0x02, 0x0a, 0x0b, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, - 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, - 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, - 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, - 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x07, 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x71, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x4f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, + 0x74, 0x6f, 0x72, 0x12, 0x13, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x41, 0x72, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x18, 0x0c, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, + 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, + 0x3f, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0d, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x44, 0x65, + 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x10, + 0x64, 0x65, 0x6c, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x22, 0x3a, 0x0a, 0x0b, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x12, + 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, + 0x67, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x1d, 0x0a, 0x09, + 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x2a, 0x0a, 0x0d, 0x53, + 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x07, + 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, + 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x2d, 0x0a, 0x10, 0x41, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x07, 0x53, + 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, + 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x91, 0x03, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, + 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x53, - 0x68, 0x6f, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, + 0x68, 0x6f, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, - 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x53, 0x74, 0x61, - 0x72, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x45, 0x6e, - 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x6e, - 0x64, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x74, - 0x61, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x45, 0x6e, - 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, - 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, - 0x68, 0x6f, 0x77, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, - 0x6f, 0x77, 0x22, 0x67, 0x0a, 0x15, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, - 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x50, - 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, - 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x09, - 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x22, 0xb4, 0x01, 0x0a, 0x0b, - 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, - 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x28, 0x0a, - 0x0e, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x72, 0x74, - 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, - 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, - 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, - 0x73, 0x67, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, - 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, - 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, - 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6d, 0x73, 0x67, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, - 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a, 0x0a, - 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, - 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, - 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x9c, 0x02, 0x0a, 0x0d, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, - 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x11, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, - 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, - 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x12, - 0x21, 0x0a, 0x0b, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x57, - 0x69, 0x64, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, - 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x6d, 0x61, 0x6c, 0x6c, - 0x50, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x6d, 0x61, 0x6c, 0x6c, - 0x5f, 0x70, 0x69, 0x63, 0x22, 0xc9, 0x03, 0x0a, 0x12, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x41, - 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x55, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, - 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, - 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, - 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0b, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, - 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, - 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, - 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x65, 0x6e, 0x67, 0x74, - 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, - 0x14, 0x0a, 0x05, 0x57, 0x69, 0x64, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, - 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x08, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x53, - 0x6d, 0x61, 0x6c, 0x6c, 0x50, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x69, 0x63, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1f, - 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, - 0x23, 0x0a, 0x0c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, - 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, - 0x72, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x50, 0x72, - 0x69, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x61, 0x72, 0x6b, 0x65, - 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x43, 0x6f, 0x70, 0x79, 0x72, - 0x69, 0x67, 0x68, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0f, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, - 0x22, 0x58, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, - 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, - 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x5f, 0x0a, 0x10, 0x44, 0x65, - 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2a, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x55, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, + 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x4e, 0x75, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x61, 0x72, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x75, 0x6c, + 0x65, 0x72, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, + 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, + 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x1f, 0x0a, + 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1a, + 0x0a, 0x08, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, + 0x53, 0x68, 0x6f, 0x77, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, + 0x68, 0x6f, 0x77, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x22, 0x4a, 0x0a, 0x0d, 0x53, 0x68, + 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x04, 0x44, + 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, + 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x54, 0x0a, 0x14, 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x12, 0x2a, + 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, + 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, + 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0xea, 0x02, 0x0a, + 0x0b, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, + 0x50, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, + 0x12, 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, + 0x09, 0x53, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x07, + 0x45, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, + 0x65, 0x71, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, + 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1f, 0x0a, 0x0a, 0x53, 0x74, 0x61, 0x72, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, + 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x45, 0x6e, 0x64, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x21, + 0x0a, 0x0b, 0x53, 0x74, 0x61, 0x72, 0x74, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, + 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x45, 0x6e, 0x64, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, + 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x67, 0x0a, 0x15, 0x53, 0x68, 0x6f, + 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, + 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, + 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x55, 0x49, 0x44, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x75, + 0x69, 0x64, 0x22, 0xb4, 0x01, 0x0a, 0x0b, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x54, 0x6f, 0x74, 0x61, + 0x6c, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x11, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, + 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x28, 0x0a, 0x0e, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x10, 0x74, 0x6f, + 0x74, 0x61, 0x6c, 0x5f, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x27, + 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x05, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x68, 0x6f, + 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, + 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, + 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, + 0x61, 0x74, 0x61, 0x22, 0x27, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, + 0x71, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x9c, 0x02, 0x0a, + 0x0d, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, - 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x31, 0x0a, 0x16, 0x53, - 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x8c, - 0x02, 0x0a, 0x16, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, - 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x12, 0x37, 0x0a, 0x04, 0x44, 0x61, 0x74, - 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, - 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, - 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x2e, 0x4e, 0x75, 0x6d, 0x52, 0x04, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x6d, 0x73, 0x67, 0x1a, 0xa6, 0x01, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x09, - 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x1f, 0x0a, 0x0a, 0x50, - 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x1b, 0x0a, 0x08, - 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, - 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0a, 0x4e, 0x6f, 0x74, - 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, - 0x6f, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0a, 0x53, - 0x68, 0x6f, 0x77, 0x48, 0x69, 0x73, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, - 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x68, 0x69, 0x73, 0x5f, 0x6e, 0x75, 0x6d, 0x22, 0x32, 0x0a, - 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, - 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, - 0x64, 0x22, 0x91, 0x02, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, - 0x63, 0x65, 0x52, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x2e, 0x50, 0x72, - 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, - 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x1a, - 0xb3, 0x01, 0x0a, 0x09, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, - 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x72, - 0x69, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x5f, 0x70, - 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, - 0x72, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x61, 0x72, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x4d, 0x61, 0x72, - 0x6b, 0x65, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, - 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, - 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, - 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, - 0x6c, 0x12, 0x20, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x55, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x6c, 0x5f, - 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, - 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x49, - 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x08, 0x53, - 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, 0x49, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x53, - 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, - 0x6c, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, - 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, - 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, - 0x75, 0x69, 0x64, 0x22, 0x9f, 0x02, 0x0a, 0x0c, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, - 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, + 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, + 0x77, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0b, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x72, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, + 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, + 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x4c, 0x65, + 0x6e, 0x67, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, + 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x57, 0x69, 0x64, 0x74, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x52, 0x75, 0x6c, 0x65, + 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, 0x1b, + 0x0a, 0x08, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x50, 0x69, 0x63, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x69, 0x63, 0x22, 0xc9, 0x03, 0x0a, 0x12, + 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, + 0x63, 0x65, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x72, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, + 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, + 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0b, 0x41, 0x72, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0c, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, + 0x0a, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, + 0x0a, 0x06, 0x4c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, + 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x57, 0x69, 0x64, 0x74, 0x68, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x77, 0x69, 0x64, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, + 0x52, 0x75, 0x6c, 0x65, 0x72, 0x18, 0x08, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, + 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x50, 0x69, 0x63, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x70, 0x69, 0x63, 0x12, + 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x52, 0x75, 0x6c, 0x65, 0x72, 0x50, 0x72, + 0x69, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x72, 0x75, 0x6c, 0x65, 0x72, + 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0d, 0x61, 0x72, + 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0b, 0x4d, + 0x61, 0x72, 0x6b, 0x65, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, + 0x52, 0x0c, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x27, + 0x0a, 0x0e, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, + 0x18, 0x0e, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, + 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0x58, 0x0a, 0x13, 0x41, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x2f, + 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1b, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, + 0x69, 0x63, 0x65, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, + 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, + 0x67, 0x22, 0x5f, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, + 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x5f, 0x75, 0x69, + 0x64, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, + 0x69, 0x64, 0x22, 0x31, 0x0a, 0x16, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, + 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x17, 0x0a, 0x06, + 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, + 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x22, 0x8c, 0x02, 0x0a, 0x16, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, + 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, + 0x12, 0x37, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, + 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, + 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x2e, + 0x4e, 0x75, 0x6d, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x1a, 0xa6, 0x01, 0x0a, 0x03, + 0x4e, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x69, 0x73, 0x74, 0x4e, 0x75, 0x6d, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x73, 0x74, 0x5f, 0x6e, + 0x75, 0x6d, 0x12, 0x1f, 0x0a, 0x0a, 0x50, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x4e, 0x75, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67, 0x65, 0x5f, + 0x6e, 0x75, 0x6d, 0x12, 0x1b, 0x0a, 0x08, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x4e, 0x75, 0x6d, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x5f, 0x6e, 0x75, 0x6d, + 0x12, 0x20, 0x0a, 0x0a, 0x4e, 0x6f, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x4e, 0x75, 0x6d, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6e, 0x6f, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x6e, + 0x75, 0x6d, 0x12, 0x20, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x48, 0x69, 0x73, 0x4e, 0x75, 0x6d, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x68, 0x69, 0x73, + 0x5f, 0x6e, 0x75, 0x6d, 0x22, 0x32, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, + 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1f, 0x0a, 0x0a, 0x41, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x61, 0x72, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x91, 0x02, 0x0a, 0x0f, 0x41, 0x72, 0x74, + 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x12, 0x36, 0x0a, 0x04, + 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x41, 0x72, 0x74, + 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, + 0x65, 0x52, 0x65, 0x73, 0x2e, 0x50, 0x72, 0x69, 0x63, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x1a, 0xb3, 0x01, 0x0a, 0x09, 0x50, 0x72, 0x69, 0x63, 0x65, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x05, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0a, 0x52, 0x75, + 0x6c, 0x65, 0x72, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0b, + 0x72, 0x75, 0x6c, 0x65, 0x72, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x23, 0x0a, 0x0c, 0x41, + 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x0d, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, + 0x12, 0x21, 0x0a, 0x0b, 0x4d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0c, 0x6d, 0x61, 0x72, 0x6b, 0x65, 0x74, 0x5f, 0x70, 0x72, + 0x69, 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0e, 0x43, 0x6f, 0x70, 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, + 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0f, 0x63, 0x6f, 0x70, + 0x79, 0x72, 0x69, 0x67, 0x68, 0x74, 0x5f, 0x70, 0x72, 0x69, 0x63, 0x65, 0x22, 0xb0, 0x01, 0x0a, + 0x07, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x12, 0x20, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, + 0x52, 0x65, 0x6c, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x68, + 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, + 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, + 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, + 0x69, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x05, 0x69, 0x6e, 0x64, 0x65, 0x78, 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x12, 0x1b, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x22, + 0x49, 0x0a, 0x0a, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x12, 0x20, 0x0a, + 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x72, 0x65, 0x6c, 0x5f, 0x75, 0x69, 0x64, 0x12, + 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x9f, 0x02, 0x0a, 0x0c, 0x53, + 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x41, + 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x41, 0x70, 0x70, + 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, + 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, + 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x1d, + 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, + 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, 0x03, 0x52, 0x65, + 0x6c, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x12, 0x2c, + 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x6c, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, + 0x52, 0x65, 0x6c, 0x52, 0x07, 0x64, 0x65, 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x22, 0x3d, 0x0a, 0x0c, + 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, + 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, + 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x0c, 0x41, + 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x50, + 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, + 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x22, 0x60, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x44, 0x61, + 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, + 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, + 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x2b, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, + 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, + 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, + 0x75, 0x69, 0x64, 0x22, 0x75, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, + 0x52, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x05, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, + 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x12, + 0x27, 0x0a, 0x04, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, + 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, + 0x69, 0x6c, 0x52, 0x04, 0x73, 0x68, 0x6f, 0x77, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0xe9, 0x01, 0x0a, 0x0b, 0x41, + 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, + 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x53, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, + 0x5f, 0x73, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, + 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x49, - 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x03, 0x20, 0x01, + 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, + 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x12, 0x1d, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x6c, - 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, - 0x49, 0x44, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, - 0x75, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, - 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, - 0x61, 0x72, 0x6b, 0x12, 0x22, 0x0a, 0x03, 0x52, 0x65, 0x6c, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, - 0x65, 0x6c, 0x52, 0x03, 0x72, 0x65, 0x6c, 0x12, 0x2c, 0x0a, 0x06, 0x44, 0x65, 0x6c, 0x52, 0x65, - 0x6c, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, - 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x52, 0x07, 0x64, 0x65, - 0x6c, 0x5f, 0x72, 0x65, 0x6c, 0x22, 0x3d, 0x0a, 0x0c, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, - 0x6c, 0x79, 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x55, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, - 0x5f, 0x75, 0x69, 0x64, 0x22, 0x57, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, - 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, - 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x60, 0x0a, - 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, - 0x74, 0x61, 0x6c, 0x12, 0x28, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, - 0x03, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, - 0x2b, 0x0a, 0x0c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x12, - 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x75, 0x0a, 0x0c, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x05, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x72, - 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, - 0x6c, 0x52, 0x05, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x27, 0x0a, 0x04, 0x53, 0x68, 0x6f, 0x77, - 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, - 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x04, 0x73, 0x68, 0x6f, - 0x77, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, - 0x6d, 0x73, 0x67, 0x22, 0xe9, 0x01, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, - 0x61, 0x69, 0x6c, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, - 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x65, 0x71, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x73, 0x65, 0x71, 0x12, 0x1c, 0x0a, - 0x09, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x41, - 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0c, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x12, 0x10, - 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x6e, 0x75, 0x6d, - 0x12, 0x1d, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, - 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x61, 0x72, - 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x22, - 0x2d, 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x48, - 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, - 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, - 0x73, 0x67, 0x12, 0x24, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, - 0x32, 0x10, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, - 0x65, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x63, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x61, - 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, - 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x2a, 0x0a, - 0x0b, 0x44, 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, - 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, 0x32, 0xc2, 0x09, 0x0a, 0x07, 0x41, 0x72, - 0x74, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x3a, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, - 0x68, 0x6f, 0x77, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, - 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x22, - 0x00, 0x12, 0x3a, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x12, - 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, - 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, - 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x34, 0x0a, - 0x07, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, - 0x6f, 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, - 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, - 0x73, 0x22, 0x00, 0x12, 0x38, 0x0a, 0x08, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x12, - 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, - 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3f, 0x0a, - 0x0f, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x52, 0x65, 0x6c, - 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, - 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x56, - 0x0a, 0x12, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, - 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1e, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, - 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, - 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, - 0x6b, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x0f, 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, - 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, - 0x71, 0x1a, 0x1d, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, - 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, - 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, - 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, - 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, - 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, - 0x22, 0x00, 0x12, 0x59, 0x0a, 0x13, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, - 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x41, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, - 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x41, 0x72, 0x74, - 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, - 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x44, 0x0a, - 0x0c, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x2e, - 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, - 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x54, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x70, 0x6c, + 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, + 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x22, 0x2d, 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, + 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x55, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, + 0x79, 0x5f, 0x75, 0x69, 0x64, 0x22, 0x48, 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, + 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x24, 0x0a, 0x04, 0x44, 0x61, 0x74, + 0x61, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x6c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, + 0x63, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x12, 0x16, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x16, 0x0a, 0x06, 0x52, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x55, 0x49, 0x44, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, + 0x5f, 0x75, 0x69, 0x64, 0x22, 0x2a, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x71, 0x12, 0x1b, 0x0a, 0x08, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x55, 0x49, 0x44, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 0x75, 0x69, 0x64, + 0x32, 0xc5, 0x09, 0x0a, 0x07, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x3a, 0x0a, 0x0a, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, + 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, + 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, + 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3a, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, + 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x53, 0x68, 0x6f, 0x77, 0x52, + 0x65, 0x73, 0x22, 0x00, 0x12, 0x34, 0x0a, 0x07, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x12, + 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x53, 0x68, 0x6f, + 0x77, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, + 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x38, 0x0a, 0x08, 0x53, 0x68, + 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, + 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, + 0x65, 0x73, 0x22, 0x00, 0x12, 0x3f, 0x0a, 0x0f, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, + 0x57, 0x69, 0x74, 0x68, 0x52, 0x65, 0x6c, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, + 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, + 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x56, 0x0a, 0x12, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, + 0x74, 0x46, 0x6f, 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x12, 0x1e, 0x2e, 0x41, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, + 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x71, 0x1a, 0x1e, 0x2e, 0x41, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x46, 0x6f, + 0x72, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x4d, 0x0a, + 0x0f, 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x19, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x1d, 0x2e, 0x41, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, + 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3e, 0x0a, 0x0a, + 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, + 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, + 0x65, 0x71, 0x1a, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, + 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x59, 0x0a, 0x13, + 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x1f, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, + 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x71, 0x1a, 0x1f, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, + 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x69, 0x73, 0x74, 0x69, 0x63, 0x61, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x44, 0x0a, 0x0c, 0x41, 0x72, 0x74, 0x77, 0x6f, + 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x18, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, - 0x73, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, - 0x6c, 0x79, 0x12, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, - 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, - 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, - 0x79, 0x12, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, - 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, - 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x22, - 0x00, 0x12, 0x36, 0x0a, 0x08, 0x44, 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x14, 0x2e, - 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, - 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x6f, - 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x11, 0x53, 0x68, 0x6f, - 0x77, 0x4c, 0x69, 0x73, 0x74, 0x57, 0x69, 0x74, 0x68, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x14, + 0x71, 0x1a, 0x18, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3d, 0x0a, + 0x0b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x15, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, + 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, + 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x15, 0x2e, 0x41, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, + 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x76, + 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x36, 0x0a, 0x08, 0x44, + 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x77, 0x2e, 0x44, 0x65, 0x6c, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, + 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x22, 0x00, 0x12, 0x41, 0x0a, 0x11, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x57, + 0x69, 0x74, 0x68, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x12, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, + 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, - 0x74, 0x52, 0x65, 0x71, 0x1a, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, - 0x68, 0x6f, 0x77, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x11, - 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x12, 0x1d, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, - 0x1a, 0x12, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, - 0x6e, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3b, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, - 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, - 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, - 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x22, 0x00, 0x12, 0x3d, 0x0a, 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, - 0x69, 0x6c, 0x12, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, - 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, - 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x10, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, - 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, - 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x1c, - 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, - 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x42, 0x13, - 0x5a, 0x11, 0x2e, 0x2f, 0x61, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x3b, 0x61, 0x72, 0x74, 0x53, - 0x68, 0x6f, 0x77, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x48, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, + 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x2e, 0x41, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x6c, + 0x79, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x12, 0x2e, 0x41, 0x72, 0x74, + 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x22, 0x00, + 0x12, 0x3b, 0x0a, 0x09, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x15, 0x2e, + 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, + 0x74, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, + 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x3d, 0x0a, + 0x0b, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x15, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, + 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x41, 0x70, + 0x70, 0x6c, 0x79, 0x53, 0x68, 0x6f, 0x77, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x4a, 0x0a, 0x10, + 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, 0x69, 0x73, 0x74, + 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x44, + 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x1c, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, + 0x6f, 0x77, 0x2e, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, 0x69, 0x63, 0x65, 0x4c, + 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x22, 0x00, 0x42, 0x13, 0x5a, 0x11, 0x2e, 0x2f, 0x61, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x3b, 0x61, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2950,96 +3019,97 @@ func file_pb_artshow_proto_rawDescGZIP() []byte { return file_pb_artshow_proto_rawDescData } -var file_pb_artshow_proto_msgTypes = make([]protoimpl.MessageInfo, 35) +var file_pb_artshow_proto_msgTypes = make([]protoimpl.MessageInfo, 36) var file_pb_artshow_proto_goTypes = []interface{}{ (*SaveShowReq)(nil), // 0: ArtShow.SaveShowReq (*SaveShowRes)(nil), // 1: ArtShow.SaveShowRes (*CommonRes)(nil), // 2: ArtShow.CommonRes (*ShowDetailReq)(nil), // 3: ArtShow.ShowDetailReq - (*ShowDetail)(nil), // 4: ArtShow.ShowDetail - (*ShowDetailRes)(nil), // 5: ArtShow.ShowDetailRes - (*ShowArtworkDetailRes)(nil), // 6: ArtShow.ShowArtworkDetailRes - (*ShowListReq)(nil), // 7: ArtShow.ShowListReq - (*ShowListForArtworkReq)(nil), // 8: ArtShow.ShowListForArtworkReq - (*ShowListRes)(nil), // 9: ArtShow.ShowListRes - (*ShowListForArtworkRes)(nil), // 10: ArtShow.ShowListForArtworkRes - (*DelShowReq)(nil), // 11: ArtShow.DelShowReq - (*ArtworkDetail)(nil), // 12: ArtShow.ArtworkDetail - (*ArtworkPriceDetail)(nil), // 13: ArtShow.ArtworkPriceDetail - (*ArtworkPriceListRes)(nil), // 14: ArtShow.ArtworkPriceListRes - (*DelArtworkDetail)(nil), // 15: ArtShow.DelArtworkDetail - (*ShowStatisticalInfoReq)(nil), // 16: ArtShow.ShowStatisticalInfoReq - (*ShowStatisticalInfoRes)(nil), // 17: ArtShow.ShowStatisticalInfoRes - (*ArtworkPriceReq)(nil), // 18: ArtShow.ArtworkPriceReq - (*ArtworkPriceRes)(nil), // 19: ArtShow.ArtworkPriceRes - (*ShowRel)(nil), // 20: ArtShow.ShowRel - (*DelShowRel)(nil), // 21: ArtShow.DelShowRel - (*SaveApplyReq)(nil), // 22: ArtShow.SaveApplyReq - (*SaveApplyRes)(nil), // 23: ArtShow.SaveApplyRes - (*ApplyListReq)(nil), // 24: ArtShow.ApplyListReq - (*ApplyListRes)(nil), // 25: ArtShow.ApplyListRes - (*ApplyShowReq)(nil), // 26: ArtShow.ApplyShowReq - (*ApplyShowRes)(nil), // 27: ArtShow.ApplyShowRes - (*ApplyDetail)(nil), // 28: ArtShow.ApplyDetail - (*ShowRelListReq)(nil), // 29: ArtShow.ShowRelListReq - (*ShowRelListRes)(nil), // 30: ArtShow.ShowRelListRes - (*UpdateApplyStatusReq)(nil), // 31: ArtShow.UpdateApplyStatusReq - (*DelApplyReq)(nil), // 32: ArtShow.DelApplyReq - (*ShowStatisticalInfoRes_Num)(nil), // 33: ArtShow.ShowStatisticalInfoRes.Num - (*ArtworkPriceRes_PriceInfo)(nil), // 34: ArtShow.ArtworkPriceRes.PriceInfo + (*ArtworkDetailReq)(nil), // 4: ArtShow.ArtworkDetailReq + (*ShowDetail)(nil), // 5: ArtShow.ShowDetail + (*ShowDetailRes)(nil), // 6: ArtShow.ShowDetailRes + (*ShowArtworkDetailRes)(nil), // 7: ArtShow.ShowArtworkDetailRes + (*ShowListReq)(nil), // 8: ArtShow.ShowListReq + (*ShowListForArtworkReq)(nil), // 9: ArtShow.ShowListForArtworkReq + (*ShowListRes)(nil), // 10: ArtShow.ShowListRes + (*ShowListForArtworkRes)(nil), // 11: ArtShow.ShowListForArtworkRes + (*DelShowReq)(nil), // 12: ArtShow.DelShowReq + (*ArtworkDetail)(nil), // 13: ArtShow.ArtworkDetail + (*ArtworkPriceDetail)(nil), // 14: ArtShow.ArtworkPriceDetail + (*ArtworkPriceListRes)(nil), // 15: ArtShow.ArtworkPriceListRes + (*DelArtworkDetail)(nil), // 16: ArtShow.DelArtworkDetail + (*ShowStatisticalInfoReq)(nil), // 17: ArtShow.ShowStatisticalInfoReq + (*ShowStatisticalInfoRes)(nil), // 18: ArtShow.ShowStatisticalInfoRes + (*ArtworkPriceReq)(nil), // 19: ArtShow.ArtworkPriceReq + (*ArtworkPriceRes)(nil), // 20: ArtShow.ArtworkPriceRes + (*ShowRel)(nil), // 21: ArtShow.ShowRel + (*DelShowRel)(nil), // 22: ArtShow.DelShowRel + (*SaveApplyReq)(nil), // 23: ArtShow.SaveApplyReq + (*SaveApplyRes)(nil), // 24: ArtShow.SaveApplyRes + (*ApplyListReq)(nil), // 25: ArtShow.ApplyListReq + (*ApplyListRes)(nil), // 26: ArtShow.ApplyListRes + (*ApplyShowReq)(nil), // 27: ArtShow.ApplyShowReq + (*ApplyShowRes)(nil), // 28: ArtShow.ApplyShowRes + (*ApplyDetail)(nil), // 29: ArtShow.ApplyDetail + (*ShowRelListReq)(nil), // 30: ArtShow.ShowRelListReq + (*ShowRelListRes)(nil), // 31: ArtShow.ShowRelListRes + (*UpdateApplyStatusReq)(nil), // 32: ArtShow.UpdateApplyStatusReq + (*DelApplyReq)(nil), // 33: ArtShow.DelApplyReq + (*ShowStatisticalInfoRes_Num)(nil), // 34: ArtShow.ShowStatisticalInfoRes.Num + (*ArtworkPriceRes_PriceInfo)(nil), // 35: ArtShow.ArtworkPriceRes.PriceInfo } var file_pb_artshow_proto_depIdxs = []int32{ - 12, // 0: ArtShow.SaveShowReq.Artwork:type_name -> ArtShow.ArtworkDetail - 15, // 1: ArtShow.SaveShowReq.DelArtwork:type_name -> ArtShow.DelArtworkDetail - 4, // 2: ArtShow.ShowDetailRes.Data:type_name -> ArtShow.ShowDetail - 12, // 3: ArtShow.ShowArtworkDetailRes.data:type_name -> ArtShow.ArtworkDetail - 4, // 4: ArtShow.ShowListRes.Data:type_name -> ArtShow.ShowDetail - 4, // 5: ArtShow.ShowListForArtworkRes.Data:type_name -> ArtShow.ShowDetail - 13, // 6: ArtShow.ArtworkPriceListRes.Data:type_name -> ArtShow.ArtworkPriceDetail - 33, // 7: ArtShow.ShowStatisticalInfoRes.Data:type_name -> ArtShow.ShowStatisticalInfoRes.Num - 34, // 8: ArtShow.ArtworkPriceRes.Data:type_name -> ArtShow.ArtworkPriceRes.PriceInfo - 20, // 9: ArtShow.SaveApplyReq.Rel:type_name -> ArtShow.ShowRel - 21, // 10: ArtShow.SaveApplyReq.DelRel:type_name -> ArtShow.DelShowRel - 28, // 11: ArtShow.ApplyListRes.Data:type_name -> ArtShow.ApplyDetail - 28, // 12: ArtShow.ApplyShowRes.Apply:type_name -> ArtShow.ApplyDetail - 4, // 13: ArtShow.ApplyShowRes.Show:type_name -> ArtShow.ShowDetail - 20, // 14: ArtShow.ShowRelListRes.Data:type_name -> ArtShow.ShowRel + 13, // 0: ArtShow.SaveShowReq.Artwork:type_name -> ArtShow.ArtworkDetail + 16, // 1: ArtShow.SaveShowReq.DelArtwork:type_name -> ArtShow.DelArtworkDetail + 5, // 2: ArtShow.ShowDetailRes.Data:type_name -> ArtShow.ShowDetail + 13, // 3: ArtShow.ShowArtworkDetailRes.data:type_name -> ArtShow.ArtworkDetail + 5, // 4: ArtShow.ShowListRes.Data:type_name -> ArtShow.ShowDetail + 5, // 5: ArtShow.ShowListForArtworkRes.Data:type_name -> ArtShow.ShowDetail + 14, // 6: ArtShow.ArtworkPriceListRes.Data:type_name -> ArtShow.ArtworkPriceDetail + 34, // 7: ArtShow.ShowStatisticalInfoRes.Data:type_name -> ArtShow.ShowStatisticalInfoRes.Num + 35, // 8: ArtShow.ArtworkPriceRes.Data:type_name -> ArtShow.ArtworkPriceRes.PriceInfo + 21, // 9: ArtShow.SaveApplyReq.Rel:type_name -> ArtShow.ShowRel + 22, // 10: ArtShow.SaveApplyReq.DelRel:type_name -> ArtShow.DelShowRel + 29, // 11: ArtShow.ApplyListRes.Data:type_name -> ArtShow.ApplyDetail + 29, // 12: ArtShow.ApplyShowRes.Apply:type_name -> ArtShow.ApplyDetail + 5, // 13: ArtShow.ApplyShowRes.Show:type_name -> ArtShow.ShowDetail + 21, // 14: ArtShow.ShowRelListRes.Data:type_name -> ArtShow.ShowRel 0, // 15: ArtShow.ArtShow.CreateShow:input_type -> ArtShow.SaveShowReq 0, // 16: ArtShow.ArtShow.UpdateShow:input_type -> ArtShow.SaveShowReq - 11, // 17: ArtShow.ArtShow.DelShow:input_type -> ArtShow.DelShowReq - 7, // 18: ArtShow.ArtShow.ShowList:input_type -> ArtShow.ShowListReq - 7, // 19: ArtShow.ArtShow.ShowListWithRel:input_type -> ArtShow.ShowListReq - 8, // 20: ArtShow.ArtShow.ShowListForArtwork:input_type -> ArtShow.ShowListForArtworkReq - 3, // 21: ArtShow.ArtShow.ShowArtworkInfo:input_type -> ArtShow.ShowDetailReq + 12, // 17: ArtShow.ArtShow.DelShow:input_type -> ArtShow.DelShowReq + 8, // 18: ArtShow.ArtShow.ShowList:input_type -> ArtShow.ShowListReq + 8, // 19: ArtShow.ArtShow.ShowListWithRel:input_type -> ArtShow.ShowListReq + 9, // 20: ArtShow.ArtShow.ShowListForArtwork:input_type -> ArtShow.ShowListForArtworkReq + 4, // 21: ArtShow.ArtShow.ShowArtworkInfo:input_type -> ArtShow.ArtworkDetailReq 3, // 22: ArtShow.ArtShow.ShowDetail:input_type -> ArtShow.ShowDetailReq - 16, // 23: ArtShow.ArtShow.ShowStatisticalInfo:input_type -> ArtShow.ShowStatisticalInfoReq - 18, // 24: ArtShow.ArtShow.ArtworkPrice:input_type -> ArtShow.ArtworkPriceReq - 22, // 25: ArtShow.ArtShow.CreateApply:input_type -> ArtShow.SaveApplyReq - 22, // 26: ArtShow.ArtShow.UpdateApply:input_type -> ArtShow.SaveApplyReq - 32, // 27: ArtShow.ArtShow.DelApply:input_type -> ArtShow.DelApplyReq - 7, // 28: ArtShow.ArtShow.ShowListWithApply:input_type -> ArtShow.ShowListReq - 31, // 29: ArtShow.ArtShow.UpdateApplyStatus:input_type -> ArtShow.UpdateApplyStatusReq - 24, // 30: ArtShow.ArtShow.ApplyList:input_type -> ArtShow.ApplyListReq - 26, // 31: ArtShow.ArtShow.ApplyDetail:input_type -> ArtShow.ApplyShowReq + 17, // 23: ArtShow.ArtShow.ShowStatisticalInfo:input_type -> ArtShow.ShowStatisticalInfoReq + 19, // 24: ArtShow.ArtShow.ArtworkPrice:input_type -> ArtShow.ArtworkPriceReq + 23, // 25: ArtShow.ArtShow.CreateApply:input_type -> ArtShow.SaveApplyReq + 23, // 26: ArtShow.ArtShow.UpdateApply:input_type -> ArtShow.SaveApplyReq + 33, // 27: ArtShow.ArtShow.DelApply:input_type -> ArtShow.DelApplyReq + 8, // 28: ArtShow.ArtShow.ShowListWithApply:input_type -> ArtShow.ShowListReq + 32, // 29: ArtShow.ArtShow.UpdateApplyStatus:input_type -> ArtShow.UpdateApplyStatusReq + 25, // 30: ArtShow.ArtShow.ApplyList:input_type -> ArtShow.ApplyListReq + 27, // 31: ArtShow.ArtShow.ApplyDetail:input_type -> ArtShow.ApplyShowReq 3, // 32: ArtShow.ArtShow.ArtworkPriceList:input_type -> ArtShow.ShowDetailReq 1, // 33: ArtShow.ArtShow.CreateShow:output_type -> ArtShow.SaveShowRes 1, // 34: ArtShow.ArtShow.UpdateShow:output_type -> ArtShow.SaveShowRes 2, // 35: ArtShow.ArtShow.DelShow:output_type -> ArtShow.CommonRes - 9, // 36: ArtShow.ArtShow.ShowList:output_type -> ArtShow.ShowListRes - 9, // 37: ArtShow.ArtShow.ShowListWithRel:output_type -> ArtShow.ShowListRes - 10, // 38: ArtShow.ArtShow.ShowListForArtwork:output_type -> ArtShow.ShowListForArtworkRes - 6, // 39: ArtShow.ArtShow.ShowArtworkInfo:output_type -> ArtShow.ShowArtworkDetailRes - 5, // 40: ArtShow.ArtShow.ShowDetail:output_type -> ArtShow.ShowDetailRes - 17, // 41: ArtShow.ArtShow.ShowStatisticalInfo:output_type -> ArtShow.ShowStatisticalInfoRes - 19, // 42: ArtShow.ArtShow.ArtworkPrice:output_type -> ArtShow.ArtworkPriceRes - 23, // 43: ArtShow.ArtShow.CreateApply:output_type -> ArtShow.SaveApplyRes - 23, // 44: ArtShow.ArtShow.UpdateApply:output_type -> ArtShow.SaveApplyRes + 10, // 36: ArtShow.ArtShow.ShowList:output_type -> ArtShow.ShowListRes + 10, // 37: ArtShow.ArtShow.ShowListWithRel:output_type -> ArtShow.ShowListRes + 11, // 38: ArtShow.ArtShow.ShowListForArtwork:output_type -> ArtShow.ShowListForArtworkRes + 7, // 39: ArtShow.ArtShow.ShowArtworkInfo:output_type -> ArtShow.ShowArtworkDetailRes + 6, // 40: ArtShow.ArtShow.ShowDetail:output_type -> ArtShow.ShowDetailRes + 18, // 41: ArtShow.ArtShow.ShowStatisticalInfo:output_type -> ArtShow.ShowStatisticalInfoRes + 20, // 42: ArtShow.ArtShow.ArtworkPrice:output_type -> ArtShow.ArtworkPriceRes + 24, // 43: ArtShow.ArtShow.CreateApply:output_type -> ArtShow.SaveApplyRes + 24, // 44: ArtShow.ArtShow.UpdateApply:output_type -> ArtShow.SaveApplyRes 2, // 45: ArtShow.ArtShow.DelApply:output_type -> ArtShow.CommonRes - 9, // 46: ArtShow.ArtShow.ShowListWithApply:output_type -> ArtShow.ShowListRes + 10, // 46: ArtShow.ArtShow.ShowListWithApply:output_type -> ArtShow.ShowListRes 2, // 47: ArtShow.ArtShow.UpdateApplyStatus:output_type -> ArtShow.CommonRes - 25, // 48: ArtShow.ArtShow.ApplyList:output_type -> ArtShow.ApplyListRes - 27, // 49: ArtShow.ArtShow.ApplyDetail:output_type -> ArtShow.ApplyShowRes - 14, // 50: ArtShow.ArtShow.ArtworkPriceList:output_type -> ArtShow.ArtworkPriceListRes + 26, // 48: ArtShow.ArtShow.ApplyList:output_type -> ArtShow.ApplyListRes + 28, // 49: ArtShow.ArtShow.ApplyDetail:output_type -> ArtShow.ApplyShowRes + 15, // 50: ArtShow.ArtShow.ArtworkPriceList:output_type -> ArtShow.ArtworkPriceListRes 33, // [33:51] is the sub-list for method output_type 15, // [15:33] is the sub-list for method input_type 15, // [15:15] is the sub-list for extension type_name @@ -3102,7 +3172,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowDetail); i { + switch v := v.(*ArtworkDetailReq); i { case 0: return &v.state case 1: @@ -3114,7 +3184,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowDetailRes); i { + switch v := v.(*ShowDetail); i { case 0: return &v.state case 1: @@ -3126,7 +3196,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowArtworkDetailRes); i { + switch v := v.(*ShowDetailRes); i { case 0: return &v.state case 1: @@ -3138,7 +3208,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowListReq); i { + switch v := v.(*ShowArtworkDetailRes); i { case 0: return &v.state case 1: @@ -3150,7 +3220,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowListForArtworkReq); i { + switch v := v.(*ShowListReq); i { case 0: return &v.state case 1: @@ -3162,7 +3232,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowListRes); i { + switch v := v.(*ShowListForArtworkReq); i { case 0: return &v.state case 1: @@ -3174,7 +3244,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowListForArtworkRes); i { + switch v := v.(*ShowListRes); i { case 0: return &v.state case 1: @@ -3186,7 +3256,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelShowReq); i { + switch v := v.(*ShowListForArtworkRes); i { case 0: return &v.state case 1: @@ -3198,7 +3268,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtworkDetail); i { + switch v := v.(*DelShowReq); i { case 0: return &v.state case 1: @@ -3210,7 +3280,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtworkPriceDetail); i { + switch v := v.(*ArtworkDetail); i { case 0: return &v.state case 1: @@ -3222,7 +3292,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtworkPriceListRes); i { + switch v := v.(*ArtworkPriceDetail); i { case 0: return &v.state case 1: @@ -3234,7 +3304,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelArtworkDetail); i { + switch v := v.(*ArtworkPriceListRes); i { case 0: return &v.state case 1: @@ -3246,7 +3316,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowStatisticalInfoReq); i { + switch v := v.(*DelArtworkDetail); i { case 0: return &v.state case 1: @@ -3258,7 +3328,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowStatisticalInfoRes); i { + switch v := v.(*ShowStatisticalInfoReq); i { case 0: return &v.state case 1: @@ -3270,7 +3340,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtworkPriceReq); i { + switch v := v.(*ShowStatisticalInfoRes); i { case 0: return &v.state case 1: @@ -3282,7 +3352,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ArtworkPriceRes); i { + switch v := v.(*ArtworkPriceReq); i { case 0: return &v.state case 1: @@ -3294,7 +3364,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowRel); i { + switch v := v.(*ArtworkPriceRes); i { case 0: return &v.state case 1: @@ -3306,7 +3376,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelShowRel); i { + switch v := v.(*ShowRel); i { case 0: return &v.state case 1: @@ -3318,7 +3388,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SaveApplyReq); i { + switch v := v.(*DelShowRel); i { case 0: return &v.state case 1: @@ -3330,7 +3400,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SaveApplyRes); i { + switch v := v.(*SaveApplyReq); i { case 0: return &v.state case 1: @@ -3342,7 +3412,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyListReq); i { + switch v := v.(*SaveApplyRes); i { case 0: return &v.state case 1: @@ -3354,7 +3424,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyListRes); i { + switch v := v.(*ApplyListReq); i { case 0: return &v.state case 1: @@ -3366,7 +3436,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyShowReq); i { + switch v := v.(*ApplyListRes); i { case 0: return &v.state case 1: @@ -3378,7 +3448,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyShowRes); i { + switch v := v.(*ApplyShowReq); i { case 0: return &v.state case 1: @@ -3390,7 +3460,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ApplyDetail); i { + switch v := v.(*ApplyShowRes); i { case 0: return &v.state case 1: @@ -3402,7 +3472,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowRelListReq); i { + switch v := v.(*ApplyDetail); i { case 0: return &v.state case 1: @@ -3414,7 +3484,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowRelListRes); i { + switch v := v.(*ShowRelListReq); i { case 0: return &v.state case 1: @@ -3426,7 +3496,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*UpdateApplyStatusReq); i { + switch v := v.(*ShowRelListRes); i { case 0: return &v.state case 1: @@ -3438,7 +3508,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DelApplyReq); i { + switch v := v.(*UpdateApplyStatusReq); i { case 0: return &v.state case 1: @@ -3450,7 +3520,7 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ShowStatisticalInfoRes_Num); i { + switch v := v.(*DelApplyReq); i { case 0: return &v.state case 1: @@ -3462,6 +3532,18 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ShowStatisticalInfoRes_Num); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkPriceRes_PriceInfo); i { case 0: return &v.state @@ -3480,7 +3562,7 @@ func file_pb_artshow_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_artshow_proto_rawDesc, NumEnums: 0, - NumMessages: 35, + NumMessages: 36, NumExtensions: 0, NumServices: 1, }, diff --git a/pb/artShow/artshow_triple.pb.go b/pb/artShow/artshow_triple.pb.go index a48581f..f6cecd9 100644 --- a/pb/artShow/artshow_triple.pb.go +++ b/pb/artShow/artshow_triple.pb.go @@ -34,7 +34,7 @@ type ArtShowClient interface { ShowList(ctx context.Context, in *ShowListReq, opts ...grpc_go.CallOption) (*ShowListRes, common.ErrorWithAttachment) ShowListWithRel(ctx context.Context, in *ShowListReq, opts ...grpc_go.CallOption) (*ShowListRes, common.ErrorWithAttachment) ShowListForArtwork(ctx context.Context, in *ShowListForArtworkReq, opts ...grpc_go.CallOption) (*ShowListForArtworkRes, common.ErrorWithAttachment) - ShowArtworkInfo(ctx context.Context, in *ShowDetailReq, opts ...grpc_go.CallOption) (*ShowArtworkDetailRes, common.ErrorWithAttachment) + ShowArtworkInfo(ctx context.Context, in *ArtworkDetailReq, opts ...grpc_go.CallOption) (*ShowArtworkDetailRes, common.ErrorWithAttachment) ShowDetail(ctx context.Context, in *ShowDetailReq, opts ...grpc_go.CallOption) (*ShowDetailRes, common.ErrorWithAttachment) ShowStatisticalInfo(ctx context.Context, in *ShowStatisticalInfoReq, opts ...grpc_go.CallOption) (*ShowStatisticalInfoRes, common.ErrorWithAttachment) ArtworkPrice(ctx context.Context, in *ArtworkPriceReq, opts ...grpc_go.CallOption) (*ArtworkPriceRes, common.ErrorWithAttachment) @@ -59,7 +59,7 @@ type ArtShowClientImpl struct { ShowList func(ctx context.Context, in *ShowListReq) (*ShowListRes, error) ShowListWithRel func(ctx context.Context, in *ShowListReq) (*ShowListRes, error) ShowListForArtwork func(ctx context.Context, in *ShowListForArtworkReq) (*ShowListForArtworkRes, error) - ShowArtworkInfo func(ctx context.Context, in *ShowDetailReq) (*ShowArtworkDetailRes, error) + ShowArtworkInfo func(ctx context.Context, in *ArtworkDetailReq) (*ShowArtworkDetailRes, error) ShowDetail func(ctx context.Context, in *ShowDetailReq) (*ShowDetailRes, error) ShowStatisticalInfo func(ctx context.Context, in *ShowStatisticalInfoReq) (*ShowStatisticalInfoRes, error) ArtworkPrice func(ctx context.Context, in *ArtworkPriceReq) (*ArtworkPriceRes, error) @@ -121,7 +121,7 @@ func (c *artShowClient) ShowListForArtwork(ctx context.Context, in *ShowListForA return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ShowListForArtwork", in, out) } -func (c *artShowClient) ShowArtworkInfo(ctx context.Context, in *ShowDetailReq, opts ...grpc_go.CallOption) (*ShowArtworkDetailRes, common.ErrorWithAttachment) { +func (c *artShowClient) ShowArtworkInfo(ctx context.Context, in *ArtworkDetailReq, opts ...grpc_go.CallOption) (*ShowArtworkDetailRes, common.ErrorWithAttachment) { out := new(ShowArtworkDetailRes) interfaceKey := ctx.Value(constant.InterfaceKey).(string) return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ShowArtworkInfo", in, out) @@ -203,7 +203,7 @@ type ArtShowServer interface { ShowList(context.Context, *ShowListReq) (*ShowListRes, error) ShowListWithRel(context.Context, *ShowListReq) (*ShowListRes, error) ShowListForArtwork(context.Context, *ShowListForArtworkReq) (*ShowListForArtworkRes, error) - ShowArtworkInfo(context.Context, *ShowDetailReq) (*ShowArtworkDetailRes, error) + ShowArtworkInfo(context.Context, *ArtworkDetailReq) (*ShowArtworkDetailRes, error) ShowDetail(context.Context, *ShowDetailReq) (*ShowDetailRes, error) ShowStatisticalInfo(context.Context, *ShowStatisticalInfoReq) (*ShowStatisticalInfoRes, error) ArtworkPrice(context.Context, *ArtworkPriceReq) (*ArtworkPriceRes, error) @@ -241,7 +241,7 @@ func (UnimplementedArtShowServer) ShowListWithRel(context.Context, *ShowListReq) func (UnimplementedArtShowServer) ShowListForArtwork(context.Context, *ShowListForArtworkReq) (*ShowListForArtworkRes, error) { return nil, status.Errorf(codes.Unimplemented, "method ShowListForArtwork not implemented") } -func (UnimplementedArtShowServer) ShowArtworkInfo(context.Context, *ShowDetailReq) (*ShowArtworkDetailRes, error) { +func (UnimplementedArtShowServer) ShowArtworkInfo(context.Context, *ArtworkDetailReq) (*ShowArtworkDetailRes, error) { return nil, status.Errorf(codes.Unimplemented, "method ShowArtworkInfo not implemented") } func (UnimplementedArtShowServer) ShowDetail(context.Context, *ShowDetailReq) (*ShowDetailRes, error) { @@ -480,7 +480,7 @@ func _ArtShow_ShowListForArtwork_Handler(srv interface{}, ctx context.Context, d } func _ArtShow_ShowArtworkInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { - in := new(ShowDetailReq) + in := new(ArtworkDetailReq) if err := dec(in); err != nil { return nil, err } diff --git a/pb/artshow.proto b/pb/artshow.proto index abd4918..9813025 100644 --- a/pb/artshow.proto +++ b/pb/artshow.proto @@ -10,7 +10,7 @@ service ArtShow { rpc ShowList (ShowListReq) returns (ShowListRes) {} // 画展包列表展示 不携带 画展时间 画展地址 rpc ShowListWithRel (ShowListReq) returns (ShowListRes) {} // 画展包列表展示 携带 画展时间 画展地址 rpc ShowListForArtwork (ShowListForArtworkReq) returns (ShowListForArtworkRes) {} // 画展包列表展示 画作使用 - rpc ShowArtworkInfo (ShowDetailReq) returns (ShowArtworkDetailRes) {} // 画展包画作展示 + rpc ShowArtworkInfo (ArtworkDetailReq) returns (ShowArtworkDetailRes) {} // 画展包画作展示 rpc ShowDetail (ShowDetailReq) returns (ShowDetailRes) {} // 画展包展示 rpc ShowStatisticalInfo (ShowStatisticalInfoReq) returns (ShowStatisticalInfoRes) {} // 画展统计(画作数量、画家数量) rpc ArtworkPrice (ArtworkPriceReq) returns (ArtworkPriceRes) {} // 画作价格 @@ -25,6 +25,7 @@ service ArtShow { } // 创建 更新画展包 + message SaveShowReq { string ShowName = 1 [json_name = "show_name"]; string ArtistName = 2 [json_name = "artist_name"]; @@ -35,11 +36,12 @@ message SaveShowReq { int64 Reward = 7 [json_name = "reward"]; int32 IsShow = 8 [json_name = "is_show"]; string CreateTime = 9 [json_name = "create_time"]; + string Operator = 10 [json_name = "operator"]; - string ShowUID = 10 [json_name = "id"]; + string ShowUID = 11 [json_name = "id"]; - repeated ArtworkDetail Artwork = 11 [json_name = "show_artwork"]; - repeated DelArtworkDetail DelArtwork = 12 [json_name = "del_show_artwork"]; + repeated ArtworkDetail Artwork = 12 [json_name = "show_artwork"]; + repeated DelArtworkDetail DelArtwork = 13 [json_name = "del_show_artwork"]; } @@ -54,6 +56,10 @@ message CommonRes { // 画展包详情 message ShowDetailReq { + repeated string ShowUID = 1 [json_name = "show_uid"]; +} + +message ArtworkDetailReq { string ShowUID = 1 [json_name = "show_uid"]; } @@ -68,14 +74,15 @@ message ShowDetail { int64 Price = 8 [json_name = "price"]; int64 Reward = 9 [json_name = "reward"]; string CreateTime = 10 [json_name = "create_time"]; - int32 IsShow = 11 [json_name = "is_show"]; + string Operator = 11 [json_name = "operator"]; + int32 IsShow = 12 [json_name = "is_show"]; - string ShowTime = 12 [json_name = "show_time"]; - string Address = 13 [json_name = "address"]; + string ShowTime = 13 [json_name = "show_time"]; + string Address = 14 [json_name = "address"]; } message ShowDetailRes { - ShowDetail Data = 1 [json_name = "data"]; + repeated ShowDetail Data = 1 [json_name = "data"]; string Msg = 2 [json_name = "msg"]; } diff --git a/pb/grpc/artshow_grpc.pb.go b/pb/grpc/artshow_grpc.pb.go new file mode 100644 index 0000000..42e240d --- /dev/null +++ b/pb/grpc/artshow_grpc.pb.go @@ -0,0 +1,718 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.2.0 +// - protoc v3.10.1 +// source: pb/artshow.proto + +package grpc + +import ( + context "context" + "fonchain-artshow/pb/artShow" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +// ArtShowClient is the client API for ArtShow service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type ArtShowClient interface { + CreateShow(ctx context.Context, in *artShow.SaveShowReq, opts ...grpc.CallOption) (*artShow.SaveShowRes, error) + UpdateShow(ctx context.Context, in *artShow.SaveShowReq, opts ...grpc.CallOption) (*artShow.SaveShowRes, error) + DelShow(ctx context.Context, in *artShow.DelShowReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + ShowList(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) + ShowListWithRel(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) + ShowListForArtwork(ctx context.Context, in *artShow.ShowListForArtworkReq, opts ...grpc.CallOption) (*artShow.ShowListForArtworkRes, error) + ShowArtworkInfo(ctx context.Context, in *artShow.ArtworkDetailReq, opts ...grpc.CallOption) (*artShow.ShowArtworkDetailRes, error) + ShowDetail(ctx context.Context, in *artShow.ShowDetailReq, opts ...grpc.CallOption) (*artShow.ShowDetailRes, error) + ShowStatisticalInfo(ctx context.Context, in *artShow.ShowStatisticalInfoReq, opts ...grpc.CallOption) (*artShow.ShowStatisticalInfoRes, error) + ArtworkPrice(ctx context.Context, in *artShow.ArtworkPriceReq, opts ...grpc.CallOption) (*artShow.ArtworkPriceRes, error) + CreateApply(ctx context.Context, in *artShow.SaveApplyReq, opts ...grpc.CallOption) (*artShow.SaveApplyRes, error) + UpdateApply(ctx context.Context, in *artShow.SaveApplyReq, opts ...grpc.CallOption) (*artShow.SaveApplyRes, error) + DelApply(ctx context.Context, in *artShow.DelApplyReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + ShowListWithApply(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) + UpdateApplyStatus(ctx context.Context, in *artShow.UpdateApplyStatusReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + ApplyList(ctx context.Context, in *artShow.ApplyListReq, opts ...grpc.CallOption) (*artShow.ApplyListRes, error) + ApplyDetail(ctx context.Context, in *artShow.ApplyShowReq, opts ...grpc.CallOption) (*artShow.ApplyShowRes, error) + ArtworkPriceList(ctx context.Context, in *artShow.ShowDetailReq, opts ...grpc.CallOption) (*artShow.ArtworkPriceListRes, error) +} + +type artShowClient struct { + cc grpc.ClientConnInterface +} + +func NewArtShowClient(cc grpc.ClientConnInterface) ArtShowClient { + return &artShowClient{cc} +} + +func (c *artShowClient) CreateShow(ctx context.Context, in *artShow.SaveShowReq, opts ...grpc.CallOption) (*artShow.SaveShowRes, error) { + out := new(artShow.SaveShowRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/CreateShow", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) UpdateShow(ctx context.Context, in *artShow.SaveShowReq, opts ...grpc.CallOption) (*artShow.SaveShowRes, error) { + out := new(artShow.SaveShowRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/UpdateShow", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) DelShow(ctx context.Context, in *artShow.DelShowReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/DelShow", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowList(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) { + out := new(artShow.ShowListRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowList", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowListWithRel(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) { + out := new(artShow.ShowListRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowListWithRel", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowListForArtwork(ctx context.Context, in *artShow.ShowListForArtworkReq, opts ...grpc.CallOption) (*artShow.ShowListForArtworkRes, error) { + out := new(artShow.ShowListForArtworkRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowListForArtwork", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowArtworkInfo(ctx context.Context, in *artShow.ArtworkDetailReq, opts ...grpc.CallOption) (*artShow.ShowArtworkDetailRes, error) { + out := new(artShow.ShowArtworkDetailRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowArtworkInfo", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowDetail(ctx context.Context, in *artShow.ShowDetailReq, opts ...grpc.CallOption) (*artShow.ShowDetailRes, error) { + out := new(artShow.ShowDetailRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowDetail", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowStatisticalInfo(ctx context.Context, in *artShow.ShowStatisticalInfoReq, opts ...grpc.CallOption) (*artShow.ShowStatisticalInfoRes, error) { + out := new(artShow.ShowStatisticalInfoRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowStatisticalInfo", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ArtworkPrice(ctx context.Context, in *artShow.ArtworkPriceReq, opts ...grpc.CallOption) (*artShow.ArtworkPriceRes, error) { + out := new(artShow.ArtworkPriceRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ArtworkPrice", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) CreateApply(ctx context.Context, in *artShow.SaveApplyReq, opts ...grpc.CallOption) (*artShow.SaveApplyRes, error) { + out := new(artShow.SaveApplyRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/CreateApply", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) UpdateApply(ctx context.Context, in *artShow.SaveApplyReq, opts ...grpc.CallOption) (*artShow.SaveApplyRes, error) { + out := new(artShow.SaveApplyRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/UpdateApply", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) DelApply(ctx context.Context, in *artShow.DelApplyReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/DelApply", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ShowListWithApply(ctx context.Context, in *artShow.ShowListReq, opts ...grpc.CallOption) (*artShow.ShowListRes, error) { + out := new(artShow.ShowListRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ShowListWithApply", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) UpdateApplyStatus(ctx context.Context, in *artShow.UpdateApplyStatusReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/UpdateApplyStatus", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ApplyList(ctx context.Context, in *artShow.ApplyListReq, opts ...grpc.CallOption) (*artShow.ApplyListRes, error) { + out := new(artShow.ApplyListRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ApplyList", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ApplyDetail(ctx context.Context, in *artShow.ApplyShowReq, opts ...grpc.CallOption) (*artShow.ApplyShowRes, error) { + out := new(artShow.ApplyShowRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ApplyDetail", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) ArtworkPriceList(ctx context.Context, in *artShow.ShowDetailReq, opts ...grpc.CallOption) (*artShow.ArtworkPriceListRes, error) { + out := new(artShow.ArtworkPriceListRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/ArtworkPriceList", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// ArtShowServer is the server API for ArtShow service. +// All implementations must embed UnimplementedArtShowServer +// for forward compatibility +type ArtShowServer interface { + CreateShow(context.Context, *artShow.SaveShowReq) (*artShow.SaveShowRes, error) + UpdateShow(context.Context, *artShow.SaveShowReq) (*artShow.SaveShowRes, error) + DelShow(context.Context, *artShow.DelShowReq) (*artShow.CommonRes, error) + ShowList(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) + ShowListWithRel(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) + ShowListForArtwork(context.Context, *artShow.ShowListForArtworkReq) (*artShow.ShowListForArtworkRes, error) + ShowArtworkInfo(context.Context, *artShow.ArtworkDetailReq) (*artShow.ShowArtworkDetailRes, error) + ShowDetail(context.Context, *artShow.ShowDetailReq) (*artShow.ShowDetailRes, error) + ShowStatisticalInfo(context.Context, *artShow.ShowStatisticalInfoReq) (*artShow.ShowStatisticalInfoRes, error) + ArtworkPrice(context.Context, *artShow.ArtworkPriceReq) (*artShow.ArtworkPriceRes, error) + CreateApply(context.Context, *artShow.SaveApplyReq) (*artShow.SaveApplyRes, error) + UpdateApply(context.Context, *artShow.SaveApplyReq) (*artShow.SaveApplyRes, error) + DelApply(context.Context, *artShow.DelApplyReq) (*artShow.CommonRes, error) + ShowListWithApply(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) + UpdateApplyStatus(context.Context, *artShow.UpdateApplyStatusReq) (*artShow.CommonRes, error) + ApplyList(context.Context, *artShow.ApplyListReq) (*artShow.ApplyListRes, error) + ApplyDetail(context.Context, *artShow.ApplyShowReq) (*artShow.ApplyShowRes, error) + ArtworkPriceList(context.Context, *artShow.ShowDetailReq) (*artShow.ArtworkPriceListRes, error) + mustEmbedUnimplementedArtShowServer() +} + +// UnimplementedArtShowServer must be embedded to have forward compatible implementations. +type UnimplementedArtShowServer struct { +} + +func (UnimplementedArtShowServer) CreateShow(context.Context, *artShow.SaveShowReq) (*artShow.SaveShowRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateShow not implemented") +} +func (UnimplementedArtShowServer) UpdateShow(context.Context, *artShow.SaveShowReq) (*artShow.SaveShowRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateShow not implemented") +} +func (UnimplementedArtShowServer) DelShow(context.Context, *artShow.DelShowReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method DelShow not implemented") +} +func (UnimplementedArtShowServer) ShowList(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowList not implemented") +} +func (UnimplementedArtShowServer) ShowListWithRel(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowListWithRel not implemented") +} +func (UnimplementedArtShowServer) ShowListForArtwork(context.Context, *artShow.ShowListForArtworkReq) (*artShow.ShowListForArtworkRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowListForArtwork not implemented") +} +func (UnimplementedArtShowServer) ShowArtworkInfo(context.Context, *artShow.ArtworkDetailReq) (*artShow.ShowArtworkDetailRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowArtworkInfo not implemented") +} +func (UnimplementedArtShowServer) ShowDetail(context.Context, *artShow.ShowDetailReq) (*artShow.ShowDetailRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowDetail not implemented") +} +func (UnimplementedArtShowServer) ShowStatisticalInfo(context.Context, *artShow.ShowStatisticalInfoReq) (*artShow.ShowStatisticalInfoRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowStatisticalInfo not implemented") +} +func (UnimplementedArtShowServer) ArtworkPrice(context.Context, *artShow.ArtworkPriceReq) (*artShow.ArtworkPriceRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ArtworkPrice not implemented") +} +func (UnimplementedArtShowServer) CreateApply(context.Context, *artShow.SaveApplyReq) (*artShow.SaveApplyRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateApply not implemented") +} +func (UnimplementedArtShowServer) UpdateApply(context.Context, *artShow.SaveApplyReq) (*artShow.SaveApplyRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateApply not implemented") +} +func (UnimplementedArtShowServer) DelApply(context.Context, *artShow.DelApplyReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method DelApply not implemented") +} +func (UnimplementedArtShowServer) ShowListWithApply(context.Context, *artShow.ShowListReq) (*artShow.ShowListRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ShowListWithApply not implemented") +} +func (UnimplementedArtShowServer) UpdateApplyStatus(context.Context, *artShow.UpdateApplyStatusReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateApplyStatus not implemented") +} +func (UnimplementedArtShowServer) ApplyList(context.Context, *artShow.ApplyListReq) (*artShow.ApplyListRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ApplyList not implemented") +} +func (UnimplementedArtShowServer) ApplyDetail(context.Context, *artShow.ApplyShowReq) (*artShow.ApplyShowRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ApplyDetail not implemented") +} +func (UnimplementedArtShowServer) ArtworkPriceList(context.Context, *artShow.ShowDetailReq) (*artShow.ArtworkPriceListRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method ArtworkPriceList not implemented") +} +func (UnimplementedArtShowServer) mustEmbedUnimplementedArtShowServer() {} + +// UnsafeArtShowServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to ArtShowServer will +// result in compilation errors. +type UnsafeArtShowServer interface { + mustEmbedUnimplementedArtShowServer() +} + +func RegisterArtShowServer(s grpc.ServiceRegistrar, srv ArtShowServer) { + s.RegisterService(&ArtShow_ServiceDesc, srv) +} + +func _ArtShow_CreateShow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.SaveShowReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).CreateShow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/CreateShow", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).CreateShow(ctx, req.(*artShow.SaveShowReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateShow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.SaveShowReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).UpdateShow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/UpdateShow", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).UpdateShow(ctx, req.(*artShow.SaveShowReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_DelShow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.DelShowReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).DelShow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/DelShow", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).DelShow(ctx, req.(*artShow.DelShowReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowList(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowList", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowList(ctx, req.(*artShow.ShowListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowListWithRel_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowListWithRel(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowListWithRel", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowListWithRel(ctx, req.(*artShow.ShowListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowListForArtwork_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowListForArtworkReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowListForArtwork(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowListForArtwork", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowListForArtwork(ctx, req.(*artShow.ShowListForArtworkReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowArtworkInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ArtworkDetailReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowArtworkInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowArtworkInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowArtworkInfo(ctx, req.(*artShow.ArtworkDetailReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowDetailReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowDetail(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowDetail", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowDetail(ctx, req.(*artShow.ShowDetailReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowStatisticalInfo_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowStatisticalInfoReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowStatisticalInfo(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowStatisticalInfo", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowStatisticalInfo(ctx, req.(*artShow.ShowStatisticalInfoReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ArtworkPrice_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ArtworkPriceReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ArtworkPrice(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ArtworkPrice", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ArtworkPrice(ctx, req.(*artShow.ArtworkPriceReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_CreateApply_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.SaveApplyReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).CreateApply(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/CreateApply", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).CreateApply(ctx, req.(*artShow.SaveApplyReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateApply_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.SaveApplyReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).UpdateApply(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/UpdateApply", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).UpdateApply(ctx, req.(*artShow.SaveApplyReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_DelApply_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.DelApplyReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).DelApply(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/DelApply", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).DelApply(ctx, req.(*artShow.DelApplyReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ShowListWithApply_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ShowListWithApply(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ShowListWithApply", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ShowListWithApply(ctx, req.(*artShow.ShowListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateApplyStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.UpdateApplyStatusReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).UpdateApplyStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/UpdateApplyStatus", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).UpdateApplyStatus(ctx, req.(*artShow.UpdateApplyStatusReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ApplyList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ApplyListReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ApplyList(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ApplyList", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ApplyList(ctx, req.(*artShow.ApplyListReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ApplyDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ApplyShowReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ApplyDetail(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ApplyDetail", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ApplyDetail(ctx, req.(*artShow.ApplyShowReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_ArtworkPriceList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowDetailReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).ArtworkPriceList(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/ArtworkPriceList", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).ArtworkPriceList(ctx, req.(*artShow.ShowDetailReq)) + } + return interceptor(ctx, in, info, handler) +} + +// ArtShow_ServiceDesc is the grpc.ServiceDesc for ArtShow service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var ArtShow_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "ArtShow.ArtShow", + HandlerType: (*ArtShowServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "CreateShow", + Handler: _ArtShow_CreateShow_Handler, + }, + { + MethodName: "UpdateShow", + Handler: _ArtShow_UpdateShow_Handler, + }, + { + MethodName: "DelShow", + Handler: _ArtShow_DelShow_Handler, + }, + { + MethodName: "ShowList", + Handler: _ArtShow_ShowList_Handler, + }, + { + MethodName: "ShowListWithRel", + Handler: _ArtShow_ShowListWithRel_Handler, + }, + { + MethodName: "ShowListForArtwork", + Handler: _ArtShow_ShowListForArtwork_Handler, + }, + { + MethodName: "ShowArtworkInfo", + Handler: _ArtShow_ShowArtworkInfo_Handler, + }, + { + MethodName: "ShowDetail", + Handler: _ArtShow_ShowDetail_Handler, + }, + { + MethodName: "ShowStatisticalInfo", + Handler: _ArtShow_ShowStatisticalInfo_Handler, + }, + { + MethodName: "ArtworkPrice", + Handler: _ArtShow_ArtworkPrice_Handler, + }, + { + MethodName: "CreateApply", + Handler: _ArtShow_CreateApply_Handler, + }, + { + MethodName: "UpdateApply", + Handler: _ArtShow_UpdateApply_Handler, + }, + { + MethodName: "DelApply", + Handler: _ArtShow_DelApply_Handler, + }, + { + MethodName: "ShowListWithApply", + Handler: _ArtShow_ShowListWithApply_Handler, + }, + { + MethodName: "UpdateApplyStatus", + Handler: _ArtShow_UpdateApplyStatus_Handler, + }, + { + MethodName: "ApplyList", + Handler: _ArtShow_ApplyList_Handler, + }, + { + MethodName: "ApplyDetail", + Handler: _ArtShow_ApplyDetail_Handler, + }, + { + MethodName: "ArtworkPriceList", + Handler: _ArtShow_ArtworkPriceList_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "pb/artshow.proto", +} diff --git a/pkg/m/msg.go b/pkg/m/msg.go index 8961169..fff5f98 100644 --- a/pkg/m/msg.go +++ b/pkg/m/msg.go @@ -24,7 +24,7 @@ const ( ) const ( - ARTSHOW_PREFIX = "B" // 画展包编号前缀 + ARTSHOW_PREFIX = "AS" // 画展包编号前缀 ARTSHOWAPPLY_PREFIX = "ASA" // 申请画展包前缀 ) diff --git a/pkg/serializer/art_show.go b/pkg/serializer/art_show.go index 14a9e20..93294dc 100644 --- a/pkg/serializer/art_show.go +++ b/pkg/serializer/art_show.go @@ -18,6 +18,7 @@ func BuildArtShowM(in *artShow.SaveShowReq) (out *model.ArtShow) { out.Ruler = in.Ruler out.Reward = in.Reward out.CreateTime = in.CreateTime + out.Operator = in.Operator if in.IsShow == 0 { out.IsShow = m.ARTSHOW_INSIDE } else { @@ -48,6 +49,7 @@ func BuildArtShowRpc(artShowM *model.ArtShowRes) (out *artShow.ShowDetail) { out.Price = artShowM.Price out.Reward = artShowM.Reward out.CreateTime = artShowM.CreateTime + out.Operator = artShowM.Operator out.IsShow = int32(artShowM.IsShow) out.Address = artShowM.Address out.ShowTime = artShowM.ShowTime