diff --git a/build/artShowServerProd b/build/artShowServerProd index c4bd73d..111b89b 100644 Binary files a/build/artShowServerProd and b/build/artShowServerProd differ diff --git a/build/artShowServerTest b/build/artShowServerTest index c4bd73d..111b89b 100644 Binary files a/build/artShowServerTest and b/build/artShowServerTest differ diff --git a/cmd/controller/art_show.go b/cmd/controller/art_show.go index c54bc68..9bd766b 100644 --- a/cmd/controller/art_show.go +++ b/cmd/controller/art_show.go @@ -219,3 +219,63 @@ func (p *ArtShowProvider) ArtworkPriceList(_ context.Context, req *artShow.ShowD } return } + +func (p *ArtShowProvider) CancelShow(_ context.Context, req *artShow.CancelShowReq) (res *artShow.CommonRes, err error) { + res = new(artShow.CommonRes) + err = service.CancelShow(req) + if err != nil { + res.Msg = err.Error() + err = errors.New(m.ERROR_DELETE) + return + } + res.Msg = m.DELETE_SUCCESS + return +} + +func (p *ArtShowProvider) UpdateArtworkReward(_ context.Context, req *artShow.UpdateArtworkRewardReq) (res *artShow.CommonRes, err error) { + if len(req.Data) < 1 { + res.Msg = m.ERROR_INVALID_PARAM + err = errors.New(m.ERROR_INVALID_PARAM) + return + } + res = new(artShow.CommonRes) + err = service.UpdateArtworkPriceReward(req) + if err != nil { + res.Msg = err.Error() + err = errors.New(m.UPDATE_FAILED) + return + } + res.Msg = m.UPDATE_SUCCESS + return +} + +func (p *ArtShowProvider) UpdateArtworkSaleAddress(_ context.Context, req *artShow.UpdateArtworkSaleAddressReq) (res *artShow.CommonRes, err error) { + if len(req.Data) < 1 { + res.Msg = m.ERROR_INVALID_PARAM + err = errors.New(m.ERROR_INVALID_PARAM) + return + } + res = new(artShow.CommonRes) + err = service.UpdateArtworkPriceSaleAddress(req) + if err != nil { + res.Msg = err.Error() + err = errors.New(m.UPDATE_FAILED) + return + } + res.Msg = m.UPDATE_SUCCESS + return +} + +func (p *ArtShowProvider) QueryShowStatus(_ context.Context, req *artShow.ShowStatusReq) (res *artShow.ShowStatusRes, err error) { + if len(req.ShowUID) < 1 { + err = errors.New(m.ERROR_INVALID_PARAM) + return + } + res = new(artShow.ShowStatusRes) + err, res = service.QueryShowStatus(req) + if err != nil { + err = errors.New(m.ERROR_QUERY) + return + } + return +} diff --git a/cmd/controller/sale_address.go b/cmd/controller/sale_address.go new file mode 100644 index 0000000..4010586 --- /dev/null +++ b/cmd/controller/sale_address.go @@ -0,0 +1,21 @@ +package controller + +import ( + "context" + "fonchain-artshow/cmd/service" + "fonchain-artshow/pb/artShow" + "fonchain-artshow/pkg/m" +) + +func (p *ArtShowProvider) QuerySaleAddress(_ context.Context, req *artShow.SaleAddressReq) (res *artShow.SaleAddressRes, err error) { + if req.ParentName == "" { + req.ParentName = "0" + } + res = new(artShow.SaleAddressRes) + res, err = service.QuerySaleAddress(req) + if err != nil { + res.Msg = m.ERROR_QUERY + return res, err + } + return +} diff --git a/cmd/dao/art_show.go b/cmd/dao/art_show.go index d56c84c..0c3ddd1 100644 --- a/cmd/dao/art_show.go +++ b/cmd/dao/art_show.go @@ -213,7 +213,7 @@ func UniqueShowName(showName string) (out *model.ArtShowRes, err error) { func QueryArtShow(showUids []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 ? ", showUids).Find(&out).Error + 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 ? and b.deleted_at is null ", showUids).Find(&out).Error if err != nil { zap.L().Error("ArtShow Find err", zap.Error(err)) return diff --git a/cmd/dao/artwork_price.go b/cmd/dao/artwork_price.go index ccbc4c8..011581c 100644 --- a/cmd/dao/artwork_price.go +++ b/cmd/dao/artwork_price.go @@ -78,3 +78,20 @@ func DelArtworkPrice_showUID(tx *gorm.DB, show_uid string) (err error) { } return } + +func UpdateArtworkInfoWithMap(tx *gorm.DB, in map[string]interface{}, showUid, artworkPriceUid string) (err error) { + if artworkPriceUid != "" { + err = tx.Model(&model.ArtworkPrice{}).Omit("artwork_price_uid").Where("artwork_price_uid = ? and deleted_at is null ", artworkPriceUid).Updates(in).Error + if err != nil { + zap.L().Error("Artwork price update err", zap.Error(err)) + return + } + } else if showUid != "" { + err = tx.Model(&model.ArtworkPrice{}).Omit("artwork_price_uid,show_uid").Where("show_uid = ? and deleted_at is null ", showUid).Updates(in).Error + if err != nil { + zap.L().Error("Artwork price update err", zap.Error(err)) + return + } + } + return +} diff --git a/cmd/dao/sale_address.go b/cmd/dao/sale_address.go new file mode 100644 index 0000000..b3da053 --- /dev/null +++ b/cmd/dao/sale_address.go @@ -0,0 +1,16 @@ +package dao + +import ( + "fonchain-artshow/cmd/model" + "fonchain-artshow/pb/artShow" + "fonchain-artshow/pkg/db" +) + +func QuerySaleAddress(in *artShow.SaleAddressReq) (out []*model.SaleAddress, err error) { + out = make([]*model.SaleAddress, 0) + err = db.DbArtShow.Table("sale_address").Where("parent_name = ? ", in.ParentName).Find(&out).Error + if err != nil { + return nil, err + } + return +} diff --git a/cmd/dao/show_rel.go b/cmd/dao/show_rel.go index a454e80..4f63e74 100644 --- a/cmd/dao/show_rel.go +++ b/cmd/dao/show_rel.go @@ -56,7 +56,7 @@ func SaveShowRel(tx *gorm.DB, showRel *model.ShowRel) (err error) { return } -func DelShowRel(tx *gorm.DB, showRelUIDs []string) (err error) { +func DelShowRelWithUID(tx *gorm.DB, showRelUIDs []string) (err error) { err = tx.Where("show_rel_uid in (?)", showRelUIDs).Delete(&model.ShowRel{}).Error if err != nil { zap.L().Error("ShowRel delete err", zap.Error(err)) @@ -65,10 +65,19 @@ func DelShowRel(tx *gorm.DB, showRelUIDs []string) (err error) { return } -func DelShowRelByApplyUID(tx *gorm.DB, applyUID string) (err error) { +func DelShowReWithApplyUID(tx *gorm.DB, applyUID string) (err error) { err = tx.Where("apply_uid = ? ", applyUID).Delete(&model.ShowRel{}).Error if err != nil { - zap.L().Error("ShowRel by applyUID delete err", zap.Error(err)) + zap.L().Error("DelShowReWithApplyUID err", zap.Error(err)) + return + } + return +} + +func DelShowReWithShowUID(tx *gorm.DB, showUID string) (err error) { + err = tx.Where("show_uid = ? ", showUID).Delete(&model.ShowRel{}).Error + if err != nil { + zap.L().Error("DelShowReWithShowUID err", zap.Error(err)) return } return @@ -88,12 +97,15 @@ func QueryShowRel_showUID(showUID string) (err error, out *model.ShowRel) { return } -func QueryShowRelList(applyUID string) (err error, out []*model.ShowRel) { +func QueryShowRelList(applyUID string, showUID string) (err error, out []*model.ShowRel) { out = make([]*model.ShowRel, 0) findDB := db.DbArtShow.Model(&model.ShowRel{}) if applyUID != "" { findDB = findDB.Where("apply_uid = ? ", applyUID) } + if showUID != "" { + findDB = findDB.Where("show_uid = ? ", showUID) + } err = findDB.Find(&out).Error if err != nil { zap.L().Error("QueryShowRelList err", zap.Error(err)) diff --git a/cmd/model/artwork_price.go b/cmd/model/artwork_price.go index f4b6be7..d033d4f 100644 --- a/cmd/model/artwork_price.go +++ b/cmd/model/artwork_price.go @@ -8,6 +8,7 @@ type ArtworkPrice struct { ArtworkPriceUID string `json:"artwork_price_uid" gorm:"artwork_price_uid"` ShowUID string `json:"show_uid" gorm:"show_uid"` // 画展ID ArtworkUID string `json:"artwork_uid" gorm:"artwork_uid"` // 画作ID + Tfnum string `json:"tfnum" gorm:"tfnum"` // 画作编号 ArtworkName string `json:"artwork_name" gorm:"artwork_name"` // 画作名称 ArtistName string `json:"artist_name" gorm:"artist_name"` // 画家名称 SmallPic string `json:"small_pic" gorm:"small_pic"` // 画作小图 @@ -21,6 +22,6 @@ type ArtworkPrice struct { CopyrightPrice int64 `json:"copyright_price" gorm:"copyright_price"` // 版权价格 ArtistPrice int64 `json:"artist_price" gorm:"artist_price"` // 画家价格 (润格 * 平尺) FloatPrice int64 `json:"float_price" gorm:"float_price"` // 浮动价格 - Reward int64 `json:"reward" gorm:"reward"` // 润格 + Reward string `json:"reward" gorm:"reward"` // 润格 SaleAddress string `json:"sale_address" gorm:"sale_address"` // 销售地址 } diff --git a/cmd/model/sale_address.go b/cmd/model/sale_address.go new file mode 100644 index 0000000..4e7ce27 --- /dev/null +++ b/cmd/model/sale_address.go @@ -0,0 +1,11 @@ +package model + +import "gorm.io/gorm" + +type SaleAddress struct { + gorm.Model + Address string `json:"address" gorm:"address"` + ParentName string `json:"parent_name" gorm:"parent_name"` + Level int `json:"level" gorm:"level"` + StoreID string `json:"store_id" gorm:"store_id"` +} diff --git a/cmd/service/art_show.go b/cmd/service/art_show.go index 8618f57..1dcea6e 100644 --- a/cmd/service/art_show.go +++ b/cmd/service/art_show.go @@ -141,7 +141,7 @@ func DelArtShow(in *artShow.DelShowReq) (err error) { } tx := db.DbArtShow.Begin() for i := 0; i < len(shows); i++ { - if shows[i].IsShow != m.ARTSHOW_SHOWING { + if shows[i].IsShow < m.ARTSHOW_SALE_ADDRESS_PASS { delArtShowErr := dao.DelArtShow(tx, shows[i].ShowUID) if err != nil { tx.Rollback() @@ -201,7 +201,7 @@ func ShowArtworkInfo(in *artShow.ArtworkDetailReq) (err error, out *artShow.Show if err != nil { return } - out.Data = serializer.BuildShowArtworkRpc(artworkPriceS) + out.Data = serializer.BuildShowArtworkListRpc(artworkPriceS) return } @@ -250,3 +250,47 @@ func QueryArtShowForArtwork(in *artShow.ShowListForArtworkReq) (err error, out * } return } + +/* + 1、取消画展包 展出 , 状态 回退 到 2 (画展包可出展状态) + TODO + 2、未做当前 画展包 状态检查 待确认 何种状态下 可以取消 (在 客户端 调用 画作系统 ,判断 画展包是否已 出库) +*/ +func CancelShow(in *artShow.CancelShowReq) (err error) { + // 不删除 画展的画展包数量申请 + tx := db.DbArtShow.Begin() + + for i := 0; i < len(in.ShowUID); i++ { + // 删除 关联表 + err = dao.DelShowReWithShowUID(tx, in.ShowUID[i]) + if err != nil { + tx.Rollback() + return + } + // 更新 画展包状态 为 可展 + show := serializer.BuildArtShowIsShowM(in.ShowUID[i], m.ARTSHOW_PASS) + err = dao.UpdateArtShow(tx, show) + if err != nil { + tx.Rollback() + return err + } + // 删除相关 数据 (画作润格, 画作销售站点) + err = dao.UpdateArtworkInfoWithMap(tx, map[string]interface{}{"reward": "", "sale_address": ""}, in.ShowUID[i], "") + if err != nil { + tx.Rollback() + return err + } + } + err = tx.Commit().Error + return +} + +func QueryShowStatus(in *artShow.ShowStatusReq) (err error, out *artShow.ShowStatusRes) { + err, shows := dao.QueryArtShow(in.ShowUID) + if err != nil { + return + } + out = new(artShow.ShowStatusRes) + out.Status = serializer.BuildShowStatusRpc(shows) + return +} diff --git a/cmd/service/sale_address.go b/cmd/service/sale_address.go new file mode 100644 index 0000000..cd71e45 --- /dev/null +++ b/cmd/service/sale_address.go @@ -0,0 +1,16 @@ +package service + +import ( + "fonchain-artshow/cmd/dao" + "fonchain-artshow/pb/artShow" + "fonchain-artshow/pkg/serializer" +) + +func QuerySaleAddress(in *artShow.SaleAddressReq) (out *artShow.SaleAddressRes, err error) { + address, err := dao.QuerySaleAddress(in) + if err != nil { + return nil, err + } + out = serializer.BuildSaleAddressRpc(address) + return +} diff --git a/cmd/service/show_apply.go b/cmd/service/show_apply.go index 150d032..468f12b 100644 --- a/cmd/service/show_apply.go +++ b/cmd/service/show_apply.go @@ -55,8 +55,8 @@ func UpdateShowApplyWithShowRel(in *artShow.SaveApplyReq) (err error, applyUID s } for i := 0; i < len(newShowRelS); i++ { - // 更新 画展包状态 为 已展 - show := serializer.BuildArtShowIsShowM(newShowRelS[i].ShowUID, m.ARTSHOW_SHOWING) + // 更新 画展包状态 为 画展包的画展地址和时间 通过 + show := serializer.BuildArtShowIsShowM(newShowRelS[i].ShowUID, m.ARTSHOW_SALE_ADDRESS_PASS) err := dao.UpdateArtShow(tx, show) if err != nil { tx.Rollback() @@ -81,7 +81,7 @@ func UpdateShowApplyWithShowRel(in *artShow.SaveApplyReq) (err error, applyUID s } // 删除关联记录 - err = dao.DelShowRel(tx, del) + err = dao.DelShowRelWithUID(tx, del) if err != nil { tx.Rollback() return err, showApply.ApplyUID @@ -155,13 +155,13 @@ func DelApplyRelByApplyUID(in *artShow.DelApplyReq) (err error) { tx := db.DbArtShow.Begin() for i := 0; i < len(in.ApplyUID); i++ { - err = dao.DelShowRelByApplyUID(tx, in.ApplyUID[i]) + err = dao.DelShowReWithApplyUID(tx, in.ApplyUID[i]) if err != nil { tx.Rollback() return } - queryShowRelErr, showRels := dao.QueryShowRelList(in.ApplyUID[i]) + queryShowRelErr, showRels := dao.QueryShowRelList(in.ApplyUID[i], "") if queryShowRelErr != nil { tx.Rollback() return queryShowRelErr diff --git a/cmd/service/show_price.go b/cmd/service/show_price.go index 3e04869..db823b6 100644 --- a/cmd/service/show_price.go +++ b/cmd/service/show_price.go @@ -1,9 +1,12 @@ package service import ( + "fmt" "fonchain-artshow/cmd/dao" "fonchain-artshow/cmd/model" "fonchain-artshow/pb/artShow" + "fonchain-artshow/pkg/db" + "fonchain-artshow/pkg/m" "fonchain-artshow/pkg/serializer" ) @@ -25,3 +28,59 @@ func ArtworkPriceList(in *artShow.ShowDetailReq) (err error, artworkPriceList [] } return } + +func UpdateArtworkPriceReward(in *artShow.UpdateArtworkRewardReq) (err error) { + + err, artworkPrice := dao.QueryArtworkPrice_uid(in.Data[0].ArtworkPriceUid) + if err != nil { + return err + } + + tx := db.DbArtShow.Begin() + + err = dao.UpdateArtShow(tx, &model.ArtShow{ + ShowUID: artworkPrice.ShowUID, + IsShow: m.ARTSHOW_REWARD_PASS, + }) + if err != nil { + fmt.Println("update art_show err is :", err) + return err + } + + for i := 0; i < len(in.Data); i++ { + err = dao.UpdateArtworkInfoWithMap(tx, map[string]interface{}{"reward": in.Data[i].Reward}, "", in.Data[i].ArtworkPriceUid) + if err != nil { + tx.Rollback() + return err + } + } + err = tx.Commit().Error + return err +} + +func UpdateArtworkPriceSaleAddress(in *artShow.UpdateArtworkSaleAddressReq) (err error) { + err, artworkPrice := dao.QueryArtworkPrice_uid(in.Data[0].ArtworkPriceUid) + if err != nil { + return err + } + + tx := db.DbArtShow.Begin() + + err = dao.UpdateArtShow(tx, &model.ArtShow{ + ShowUID: artworkPrice.ShowUID, + IsShow: m.ARTSHOW_SALE_ADDRESS_PASS, + }) + if err != nil { + fmt.Println("update art_show err is :", err) + return err + } + for i := 0; i < len(in.Data); i++ { + err = dao.UpdateArtworkInfoWithMap(tx, map[string]interface{}{"sale_address": in.Data[i].SaleAddress}, "", in.Data[i].ArtworkPriceUid) + if err != nil { + tx.Rollback() + return err + } + } + err = tx.Commit().Error + return err +} diff --git a/conf/conf.ini b/conf/conf.ini index 30652b2..d6742cf 100644 --- a/conf/conf.ini +++ b/conf/conf.ini @@ -14,8 +14,8 @@ mode = prod #正式prod #测试dev ;正式服 192.168.12.3 old ;[mysql] ;Db = mysql -;DbHost = mysql -;DbPort = 3306 +;DbHost = 192.168.12.3 +;DbPort = 9005 ;DbUser = root ;DbPassWord = sLl0b7stlbwvZ883TV ;DbName = art_show diff --git a/pb/artShow/artshow.pb.go b/pb/artShow/artshow.pb.go index 30cd4c1..d4bd0b9 100644 --- a/pb/artShow/artshow.pb.go +++ b/pb/artShow/artshow.pb.go @@ -587,8 +587,8 @@ 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 []*ArtworkPriceDetail `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` } func (x *ShowArtworkDetailRes) Reset() { @@ -623,7 +623,7 @@ func (*ShowArtworkDetailRes) Descriptor() ([]byte, []int) { return file_pb_artshow_proto_rawDescGZIP(), []int{7} } -func (x *ShowArtworkDetailRes) GetData() []*ArtworkDetail { +func (x *ShowArtworkDetailRes) GetData() []*ArtworkPriceDetail { if x != nil { return x.Data } @@ -1049,6 +1049,7 @@ type ArtworkDetail struct { 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"` + Tfnum string `protobuf:"bytes,10,opt,name=Tfnum,json=tfnum,proto3" json:"Tfnum"` } func (x *ArtworkDetail) Reset() { @@ -1146,6 +1147,13 @@ func (x *ArtworkDetail) GetSmallPic() string { return "" } +func (x *ArtworkDetail) GetTfnum() string { + if x != nil { + return x.Tfnum + } + return "" +} + // 画作详情 type ArtworkPriceDetail struct { state protoimpl.MessageState @@ -1166,6 +1174,9 @@ type ArtworkPriceDetail struct { 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"` + Tfnum string `protobuf:"bytes,15,opt,name=Tfnum,json=tfnum,proto3" json:"Tfnum"` + Reward string `protobuf:"bytes,16,opt,name=Reward,json=reward,proto3" json:"Reward"` + SaleAddress string `protobuf:"bytes,17,opt,name=SaleAddress,json=sale_address,proto3" json:"SaleAddress"` } func (x *ArtworkPriceDetail) Reset() { @@ -1298,6 +1309,27 @@ func (x *ArtworkPriceDetail) GetCopyrightPrice() int64 { return 0 } +func (x *ArtworkPriceDetail) GetTfnum() string { + if x != nil { + return x.Tfnum + } + return "" +} + +func (x *ArtworkPriceDetail) GetReward() string { + if x != nil { + return x.Reward + } + return "" +} + +func (x *ArtworkPriceDetail) GetSaleAddress() string { + if x != nil { + return x.SaleAddress + } + return "" +} + type ArtworkPriceListRes struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -2473,20 +2505,16 @@ func (x *DelApplyReq) GetApplyUID() []string { return nil } -type ShowStatisticalInfoRes_Num struct { +type CancelShowReq struct { state protoimpl.MessageState 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"` + ShowUID []string `protobuf:"bytes,1,rep,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` } -func (x *ShowStatisticalInfoRes_Num) Reset() { - *x = ShowStatisticalInfoRes_Num{} +func (x *CancelShowReq) Reset() { + *x = CancelShowReq{} if protoimpl.UnsafeEnabled { mi := &file_pb_artshow_proto_msgTypes[34] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2494,13 +2522,13 @@ func (x *ShowStatisticalInfoRes_Num) Reset() { } } -func (x *ShowStatisticalInfoRes_Num) String() string { +func (x *CancelShowReq) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ShowStatisticalInfoRes_Num) ProtoMessage() {} +func (*CancelShowReq) ProtoMessage() {} -func (x *ShowStatisticalInfoRes_Num) ProtoReflect() protoreflect.Message { +func (x *CancelShowReq) ProtoReflect() protoreflect.Message { mi := &file_pb_artshow_proto_msgTypes[34] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -2512,75 +2540,98 @@ func (x *ShowStatisticalInfoRes_Num) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ShowStatisticalInfoRes_Num.ProtoReflect.Descriptor instead. -func (*ShowStatisticalInfoRes_Num) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{18, 0} +// Deprecated: Use CancelShowReq.ProtoReflect.Descriptor instead. +func (*CancelShowReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{34} } -func (x *ShowStatisticalInfoRes_Num) GetArtistNum() int64 { +func (x *CancelShowReq) GetShowUID() []string { if x != nil { - return x.ArtistNum + return x.ShowUID } - return 0 + return nil } -func (x *ShowStatisticalInfoRes_Num) GetPackageNum() int64 { - if x != nil { - return x.PackageNum +type ArtworkReward struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtworkPriceUid string `protobuf:"bytes,1,opt,name=ArtworkPriceUid,json=artwork_price_uid,proto3" json:"ArtworkPriceUid"` + Reward string `protobuf:"bytes,2,opt,name=Reward,json=reward,proto3" json:"Reward"` +} + +func (x *ArtworkReward) Reset() { + *x = ArtworkReward{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[35] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *ShowStatisticalInfoRes_Num) GetTotalNum() int64 { - if x != nil { - return x.TotalNum +func (x *ArtworkReward) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ArtworkReward) ProtoMessage() {} + +func (x *ArtworkReward) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[35] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *ShowStatisticalInfoRes_Num) GetNotShowNum() int64 { +// Deprecated: Use ArtworkReward.ProtoReflect.Descriptor instead. +func (*ArtworkReward) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{35} +} + +func (x *ArtworkReward) GetArtworkPriceUid() string { if x != nil { - return x.NotShowNum + return x.ArtworkPriceUid } - return 0 + return "" } -func (x *ShowStatisticalInfoRes_Num) GetShowHisNum() int64 { +func (x *ArtworkReward) GetReward() string { if x != nil { - return x.ShowHisNum + return x.Reward } - return 0 + return "" } -type ArtworkPriceRes_PriceInfo struct { +type UpdateArtworkRewardReq struct { state protoimpl.MessageState 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"` + Data []*ArtworkReward `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } -func (x *ArtworkPriceRes_PriceInfo) Reset() { - *x = ArtworkPriceRes_PriceInfo{} +func (x *UpdateArtworkRewardReq) Reset() { + *x = UpdateArtworkRewardReq{} if protoimpl.UnsafeEnabled { - mi := &file_pb_artshow_proto_msgTypes[35] + mi := &file_pb_artshow_proto_msgTypes[36] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } -func (x *ArtworkPriceRes_PriceInfo) String() string { +func (x *UpdateArtworkRewardReq) String() string { return protoimpl.X.MessageStringOf(x) } -func (*ArtworkPriceRes_PriceInfo) ProtoMessage() {} +func (*UpdateArtworkRewardReq) ProtoMessage() {} -func (x *ArtworkPriceRes_PriceInfo) ProtoReflect() protoreflect.Message { - mi := &file_pb_artshow_proto_msgTypes[35] +func (x *UpdateArtworkRewardReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[36] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -2591,560 +2642,1209 @@ func (x *ArtworkPriceRes_PriceInfo) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use ArtworkPriceRes_PriceInfo.ProtoReflect.Descriptor instead. -func (*ArtworkPriceRes_PriceInfo) Descriptor() ([]byte, []int) { - return file_pb_artshow_proto_rawDescGZIP(), []int{20, 0} +// Deprecated: Use UpdateArtworkRewardReq.ProtoReflect.Descriptor instead. +func (*UpdateArtworkRewardReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{36} } -func (x *ArtworkPriceRes_PriceInfo) GetPrice() int64 { +func (x *UpdateArtworkRewardReq) GetData() []*ArtworkReward { if x != nil { - return x.Price + return x.Data } - return 0 + return nil } -func (x *ArtworkPriceRes_PriceInfo) GetRulerPrice() int64 { - if x != nil { - return x.RulerPrice +type ArtworkSaleAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ArtworkPriceUid string `protobuf:"bytes,1,opt,name=ArtworkPriceUid,json=artwork_price_uid,proto3" json:"ArtworkPriceUid"` + SaleAddress string `protobuf:"bytes,2,opt,name=SaleAddress,json=sale_address,proto3" json:"SaleAddress"` +} + +func (x *ArtworkSaleAddress) Reset() { + *x = ArtworkSaleAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[37] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } - return 0 } -func (x *ArtworkPriceRes_PriceInfo) GetArtworkPrice() int64 { - if x != nil { - return x.ArtworkPrice +func (x *ArtworkSaleAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ArtworkSaleAddress) ProtoMessage() {} + +func (x *ArtworkSaleAddress) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[37] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms } - return 0 + return mi.MessageOf(x) } -func (x *ArtworkPriceRes_PriceInfo) GetMarketPrice() int64 { +// Deprecated: Use ArtworkSaleAddress.ProtoReflect.Descriptor instead. +func (*ArtworkSaleAddress) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{37} +} + +func (x *ArtworkSaleAddress) GetArtworkPriceUid() string { if x != nil { - return x.MarketPrice + return x.ArtworkPriceUid } - return 0 + return "" } -func (x *ArtworkPriceRes_PriceInfo) GetCopyrightPrice() int64 { +func (x *ArtworkSaleAddress) GetSaleAddress() string { if x != nil { - return x.CopyrightPrice + return x.SaleAddress } - return 0 + return "" } -var File_pb_artshow_proto protoreflect.FileDescriptor +type UpdateArtworkSaleAddressReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields -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, 0xcd, 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, - 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, - 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, - 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, - 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x17, 0x0a, - 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, 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, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x71, 0x18, 0x0b, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x71, 0x12, 0x13, - 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0d, - 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, 0x0e, 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, 0x45, 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, 0x12, 0x19, 0x0a, 0x07, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x49, 0x44, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 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, 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, 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, 0x96, 0x03, 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, 0x26, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, - 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x74, 0x61, 0x72, - 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0b, 0x45, - 0x6e, 0x64, 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x68, 0x6f, 0x77, 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, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, - 0x65, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, 0x77, 0x18, 0x0d, 0x20, 0x03, - 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, 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, 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, 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, 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, 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, + Data []*ArtworkSaleAddress `protobuf:"bytes,1,rep,name=data,proto3" json:"data"` } -var ( - file_pb_artshow_proto_rawDescOnce sync.Once - file_pb_artshow_proto_rawDescData = file_pb_artshow_proto_rawDesc -) +func (x *UpdateArtworkSaleAddressReq) Reset() { + *x = UpdateArtworkSaleAddressReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[38] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} -func file_pb_artshow_proto_rawDescGZIP() []byte { - file_pb_artshow_proto_rawDescOnce.Do(func() { - file_pb_artshow_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_artshow_proto_rawDescData) - }) - return file_pb_artshow_proto_rawDescData +func (x *UpdateArtworkSaleAddressReq) String() string { + return protoimpl.X.MessageStringOf(x) } -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 - (*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 +func (*UpdateArtworkSaleAddressReq) ProtoMessage() {} + +func (x *UpdateArtworkSaleAddressReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[38] + 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 UpdateArtworkSaleAddressReq.ProtoReflect.Descriptor instead. +func (*UpdateArtworkSaleAddressReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{38} +} + +func (x *UpdateArtworkSaleAddressReq) GetData() []*ArtworkSaleAddress { + if x != nil { + return x.Data + } + return nil +} + +type ShowStatusReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowUID []string `protobuf:"bytes,1,rep,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` +} + +func (x *ShowStatusReq) Reset() { + *x = ShowStatusReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[39] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ShowStatusReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShowStatusReq) ProtoMessage() {} + +func (x *ShowStatusReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[39] + 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 ShowStatusReq.ProtoReflect.Descriptor instead. +func (*ShowStatusReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{39} +} + +func (x *ShowStatusReq) GetShowUID() []string { + if x != nil { + return x.ShowUID + } + return nil +} + +type ShowStatus struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ShowUID string `protobuf:"bytes,1,opt,name=ShowUID,json=show_uid,proto3" json:"ShowUID"` + IsShow int32 `protobuf:"varint,2,opt,name=IsShow,json=is_show,proto3" json:"IsShow"` +} + +func (x *ShowStatus) Reset() { + *x = ShowStatus{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[40] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ShowStatus) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShowStatus) ProtoMessage() {} + +func (x *ShowStatus) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[40] + 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 ShowStatus.ProtoReflect.Descriptor instead. +func (*ShowStatus) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{40} +} + +func (x *ShowStatus) GetShowUID() string { + if x != nil { + return x.ShowUID + } + return "" +} + +func (x *ShowStatus) GetIsShow() int32 { + if x != nil { + return x.IsShow + } + return 0 +} + +type ShowStatusRes struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Status []*ShowStatus `protobuf:"bytes,1,rep,name=Status,json=status,proto3" json:"Status"` +} + +func (x *ShowStatusRes) Reset() { + *x = ShowStatusRes{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[41] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ShowStatusRes) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShowStatusRes) ProtoMessage() {} + +func (x *ShowStatusRes) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[41] + 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 ShowStatusRes.ProtoReflect.Descriptor instead. +func (*ShowStatusRes) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{41} +} + +func (x *ShowStatusRes) GetStatus() []*ShowStatus { + if x != nil { + return x.Status + } + return nil +} + +type SaleAddressReq struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ParentName string `protobuf:"bytes,1,opt,name=ParentName,json=parent_name,proto3" json:"ParentName"` +} + +func (x *SaleAddressReq) Reset() { + *x = SaleAddressReq{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[42] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SaleAddressReq) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SaleAddressReq) ProtoMessage() {} + +func (x *SaleAddressReq) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[42] + 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 SaleAddressReq.ProtoReflect.Descriptor instead. +func (*SaleAddressReq) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{42} +} + +func (x *SaleAddressReq) GetParentName() string { + if x != nil { + return x.ParentName + } + return "" +} + +type SaleAddress struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Address string `protobuf:"bytes,1,opt,name=Address,json=address,proto3" json:"Address"` + StoreID string `protobuf:"bytes,2,opt,name=StoreID,json=store_id,proto3" json:"StoreID"` +} + +func (x *SaleAddress) Reset() { + *x = SaleAddress{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[43] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SaleAddress) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SaleAddress) ProtoMessage() {} + +func (x *SaleAddress) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[43] + 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 SaleAddress.ProtoReflect.Descriptor instead. +func (*SaleAddress) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{43} +} + +func (x *SaleAddress) GetAddress() string { + if x != nil { + return x.Address + } + return "" +} + +func (x *SaleAddress) GetStoreID() string { + if x != nil { + return x.StoreID + } + return "" +} + +type SaleAddressRes struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Address []*SaleAddress `protobuf:"bytes,1,rep,name=Address,json=address,proto3" json:"Address"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg"` +} + +func (x *SaleAddressRes) Reset() { + *x = SaleAddressRes{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[44] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SaleAddressRes) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SaleAddressRes) ProtoMessage() {} + +func (x *SaleAddressRes) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[44] + 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 SaleAddressRes.ProtoReflect.Descriptor instead. +func (*SaleAddressRes) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{44} +} + +func (x *SaleAddressRes) GetAddress() []*SaleAddress { + if x != nil { + return x.Address + } + return nil +} + +func (x *SaleAddressRes) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + +type ShowStatisticalInfoRes_Num struct { + state protoimpl.MessageState + 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"` +} + +func (x *ShowStatisticalInfoRes_Num) Reset() { + *x = ShowStatisticalInfoRes_Num{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[45] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ShowStatisticalInfoRes_Num) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ShowStatisticalInfoRes_Num) ProtoMessage() {} + +func (x *ShowStatisticalInfoRes_Num) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[45] + 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 ShowStatisticalInfoRes_Num.ProtoReflect.Descriptor instead. +func (*ShowStatisticalInfoRes_Num) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{18, 0} +} + +func (x *ShowStatisticalInfoRes_Num) GetArtistNum() int64 { + if x != nil { + return x.ArtistNum + } + return 0 +} + +func (x *ShowStatisticalInfoRes_Num) GetPackageNum() int64 { + if x != nil { + return x.PackageNum + } + return 0 +} + +func (x *ShowStatisticalInfoRes_Num) GetTotalNum() int64 { + if x != nil { + return x.TotalNum + } + return 0 +} + +func (x *ShowStatisticalInfoRes_Num) GetNotShowNum() int64 { + if x != nil { + return x.NotShowNum + } + return 0 +} + +func (x *ShowStatisticalInfoRes_Num) GetShowHisNum() int64 { + if x != nil { + return x.ShowHisNum + } + return 0 +} + +type ArtworkPriceRes_PriceInfo struct { + state protoimpl.MessageState + 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"` + Reward int64 `protobuf:"varint,6,opt,name=Reward,json=reward,proto3" json:"Reward"` +} + +func (x *ArtworkPriceRes_PriceInfo) Reset() { + *x = ArtworkPriceRes_PriceInfo{} + if protoimpl.UnsafeEnabled { + mi := &file_pb_artshow_proto_msgTypes[46] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *ArtworkPriceRes_PriceInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*ArtworkPriceRes_PriceInfo) ProtoMessage() {} + +func (x *ArtworkPriceRes_PriceInfo) ProtoReflect() protoreflect.Message { + mi := &file_pb_artshow_proto_msgTypes[46] + 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 ArtworkPriceRes_PriceInfo.ProtoReflect.Descriptor instead. +func (*ArtworkPriceRes_PriceInfo) Descriptor() ([]byte, []int) { + return file_pb_artshow_proto_rawDescGZIP(), []int{20, 0} +} + +func (x *ArtworkPriceRes_PriceInfo) GetPrice() int64 { + if x != nil { + return x.Price + } + return 0 +} + +func (x *ArtworkPriceRes_PriceInfo) GetRulerPrice() int64 { + if x != nil { + return x.RulerPrice + } + return 0 +} + +func (x *ArtworkPriceRes_PriceInfo) GetArtworkPrice() int64 { + if x != nil { + return x.ArtworkPrice + } + return 0 +} + +func (x *ArtworkPriceRes_PriceInfo) GetMarketPrice() int64 { + if x != nil { + return x.MarketPrice + } + return 0 +} + +func (x *ArtworkPriceRes_PriceInfo) GetCopyrightPrice() int64 { + if x != nil { + return x.CopyrightPrice + } + return 0 +} + +func (x *ArtworkPriceRes_PriceInfo) GetReward() int64 { + if x != nil { + return x.Reward + } + return 0 +} + +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, 0xcd, 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, + 0x73, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 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, 0x03, 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, 0x04, 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, 0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x72, 0x12, + 0x14, 0x0a, 0x05, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, + 0x70, 0x72, 0x69, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, + 0x07, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x12, 0x17, 0x0a, + 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, 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, 0x19, 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x65, 0x71, 0x18, 0x0b, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x73, 0x65, 0x71, 0x12, 0x13, + 0x0a, 0x07, 0x53, 0x68, 0x6f, 0x77, 0x55, 0x49, 0x44, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x02, 0x69, 0x64, 0x12, 0x35, 0x0a, 0x07, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x18, 0x0d, + 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, 0x0e, 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, 0x45, 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, 0x12, 0x19, 0x0a, 0x07, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x49, 0x44, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x70, 0x70, 0x6c, 0x79, 0x5f, 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, 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, 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, 0x59, 0x0a, 0x14, + 0x53, 0x68, 0x6f, 0x77, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x65, 0x74, 0x61, 0x69, + 0x6c, 0x52, 0x65, 0x73, 0x12, 0x2f, 0x0a, 0x04, 0x64, 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, 0x96, 0x03, 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, 0x26, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x72, + 0x74, 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x12, 0x22, 0x0a, 0x0b, 0x45, 0x6e, 0x64, 0x53, 0x68, 0x6f, 0x77, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x65, 0x6e, 0x64, 0x5f, 0x73, 0x68, 0x6f, 0x77, 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, 0x18, 0x0a, + 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, + 0x77, 0x18, 0x0d, 0x20, 0x03, 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, 0xb2, 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, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x66, 0x6e, 0x75, 0x6d, 0x18, 0x0a, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x66, 0x6e, 0x75, 0x6d, 0x22, 0x9a, 0x04, 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, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x66, 0x6e, 0x75, 0x6d, 0x18, 0x0f, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x66, 0x6e, 0x75, 0x6d, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 0x12, 0x21, 0x0a, 0x0b, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x61, 0x64, + 0x64, 0x72, 0x65, 0x73, 0x73, 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, 0xa9, 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, 0xcb, 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, 0x12, 0x16, 0x0a, 0x06, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x72, 0x65, 0x77, 0x61, + 0x72, 0x64, 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, 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, 0x22, 0x2a, 0x0a, 0x0d, 0x43, 0x61, 0x6e, 0x63, 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, 0x53, 0x0a, 0x0d, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x77, + 0x61, 0x72, 0x64, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, + 0x69, 0x63, 0x65, 0x55, 0x69, 0x64, 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, + 0x16, 0x0a, 0x06, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x06, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x22, 0x44, 0x0a, 0x16, 0x55, 0x70, 0x64, 0x61, 0x74, + 0x65, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, + 0x71, 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, 0x52, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0x63, 0x0a, + 0x12, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x2a, 0x0a, 0x0f, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x50, 0x72, + 0x69, 0x63, 0x65, 0x55, 0x69, 0x64, 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, + 0x21, 0x0a, 0x0b, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x73, 0x61, 0x6c, 0x65, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x22, 0x4e, 0x0a, 0x1b, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x77, + 0x6f, 0x72, 0x6b, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, + 0x71, 0x12, 0x2f, 0x0a, 0x04, 0x64, 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, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x04, 0x64, 0x61, + 0x74, 0x61, 0x22, 0x2a, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 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, 0x40, + 0x0a, 0x0a, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 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, 0x17, 0x0a, 0x06, 0x49, 0x73, 0x53, 0x68, 0x6f, + 0x77, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x07, 0x69, 0x73, 0x5f, 0x73, 0x68, 0x6f, 0x77, + 0x22, 0x3c, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x12, 0x2b, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x13, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x31, + 0x0a, 0x0e, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, + 0x12, 0x1f, 0x0a, 0x0a, 0x50, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, + 0x65, 0x22, 0x42, 0x0a, 0x0b, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x19, 0x0a, 0x07, 0x53, 0x74, + 0x6f, 0x72, 0x65, 0x49, 0x44, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x74, 0x6f, + 0x72, 0x65, 0x5f, 0x69, 0x64, 0x22, 0x52, 0x0a, 0x0e, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, + 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x52, 0x07, + 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x32, 0xb4, 0x0c, 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, 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, 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, 0x12, 0x3a, 0x0a, 0x0a, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x53, 0x68, 0x6f, 0x77, 0x12, + 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x43, 0x61, 0x6e, 0x63, 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, 0x4c, 0x0a, + 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, + 0x77, 0x61, 0x72, 0x64, 0x12, 0x1f, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x52, 0x65, 0x77, 0x61, + 0x72, 0x64, 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, 0x56, 0x0a, 0x18, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, 0x61, 0x6c, 0x65, + 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x24, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, + 0x77, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x53, + 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 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, 0x43, 0x0a, 0x0f, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x68, 0x6f, 0x77, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, + 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x16, + 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x68, 0x6f, 0x77, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x22, 0x00, 0x12, 0x46, 0x0a, 0x10, 0x51, 0x75, 0x65, 0x72, + 0x79, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x17, 0x2e, 0x41, + 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x52, 0x65, 0x71, 0x1a, 0x17, 0x2e, 0x41, 0x72, 0x74, 0x53, 0x68, 0x6f, 0x77, 0x2e, + 0x53, 0x61, 0x6c, 0x65, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 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 ( + file_pb_artshow_proto_rawDescOnce sync.Once + file_pb_artshow_proto_rawDescData = file_pb_artshow_proto_rawDesc +) + +func file_pb_artshow_proto_rawDescGZIP() []byte { + file_pb_artshow_proto_rawDescOnce.Do(func() { + file_pb_artshow_proto_rawDescData = protoimpl.X.CompressGZIP(file_pb_artshow_proto_rawDescData) + }) + return file_pb_artshow_proto_rawDescData +} + +var file_pb_artshow_proto_msgTypes = make([]protoimpl.MessageInfo, 47) +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 + (*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 + (*CancelShowReq)(nil), // 34: ArtShow.CancelShowReq + (*ArtworkReward)(nil), // 35: ArtShow.ArtworkReward + (*UpdateArtworkRewardReq)(nil), // 36: ArtShow.UpdateArtworkRewardReq + (*ArtworkSaleAddress)(nil), // 37: ArtShow.ArtworkSaleAddress + (*UpdateArtworkSaleAddressReq)(nil), // 38: ArtShow.UpdateArtworkSaleAddressReq + (*ShowStatusReq)(nil), // 39: ArtShow.ShowStatusReq + (*ShowStatus)(nil), // 40: ArtShow.ShowStatus + (*ShowStatusRes)(nil), // 41: ArtShow.ShowStatusRes + (*SaleAddressReq)(nil), // 42: ArtShow.SaleAddressReq + (*SaleAddress)(nil), // 43: ArtShow.SaleAddress + (*SaleAddressRes)(nil), // 44: ArtShow.SaleAddressRes + (*ShowStatisticalInfoRes_Num)(nil), // 45: ArtShow.ShowStatisticalInfoRes.Num + (*ArtworkPriceRes_PriceInfo)(nil), // 46: ArtShow.ArtworkPriceRes.PriceInfo } var file_pb_artshow_proto_depIdxs = []int32{ 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 + 14, // 3: ArtShow.ShowArtworkDetailRes.data:type_name -> ArtShow.ArtworkPriceDetail 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 + 45, // 7: ArtShow.ShowStatisticalInfoRes.Data:type_name -> ArtShow.ShowStatisticalInfoRes.Num + 46, // 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 - 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 - 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 - 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 - 10, // 46: ArtShow.ArtShow.ShowListWithApply:output_type -> ArtShow.ShowListRes - 2, // 47: ArtShow.ArtShow.UpdateApplyStatus:output_type -> ArtShow.CommonRes - 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 - 15, // [15:15] is the sub-list for extension extendee - 0, // [0:15] is the sub-list for field type_name + 35, // 15: ArtShow.UpdateArtworkRewardReq.data:type_name -> ArtShow.ArtworkReward + 37, // 16: ArtShow.UpdateArtworkSaleAddressReq.data:type_name -> ArtShow.ArtworkSaleAddress + 40, // 17: ArtShow.ShowStatusRes.Status:type_name -> ArtShow.ShowStatus + 43, // 18: ArtShow.SaleAddressRes.Address:type_name -> ArtShow.SaleAddress + 0, // 19: ArtShow.ArtShow.CreateShow:input_type -> ArtShow.SaveShowReq + 0, // 20: ArtShow.ArtShow.UpdateShow:input_type -> ArtShow.SaveShowReq + 12, // 21: ArtShow.ArtShow.DelShow:input_type -> ArtShow.DelShowReq + 8, // 22: ArtShow.ArtShow.ShowList:input_type -> ArtShow.ShowListReq + 8, // 23: ArtShow.ArtShow.ShowListWithRel:input_type -> ArtShow.ShowListReq + 9, // 24: ArtShow.ArtShow.ShowListForArtwork:input_type -> ArtShow.ShowListForArtworkReq + 4, // 25: ArtShow.ArtShow.ShowArtworkInfo:input_type -> ArtShow.ArtworkDetailReq + 3, // 26: ArtShow.ArtShow.ShowDetail:input_type -> ArtShow.ShowDetailReq + 17, // 27: ArtShow.ArtShow.ShowStatisticalInfo:input_type -> ArtShow.ShowStatisticalInfoReq + 19, // 28: ArtShow.ArtShow.ArtworkPrice:input_type -> ArtShow.ArtworkPriceReq + 23, // 29: ArtShow.ArtShow.CreateApply:input_type -> ArtShow.SaveApplyReq + 23, // 30: ArtShow.ArtShow.UpdateApply:input_type -> ArtShow.SaveApplyReq + 33, // 31: ArtShow.ArtShow.DelApply:input_type -> ArtShow.DelApplyReq + 8, // 32: ArtShow.ArtShow.ShowListWithApply:input_type -> ArtShow.ShowListReq + 32, // 33: ArtShow.ArtShow.UpdateApplyStatus:input_type -> ArtShow.UpdateApplyStatusReq + 25, // 34: ArtShow.ArtShow.ApplyList:input_type -> ArtShow.ApplyListReq + 27, // 35: ArtShow.ArtShow.ApplyDetail:input_type -> ArtShow.ApplyShowReq + 3, // 36: ArtShow.ArtShow.ArtworkPriceList:input_type -> ArtShow.ShowDetailReq + 34, // 37: ArtShow.ArtShow.CancelShow:input_type -> ArtShow.CancelShowReq + 36, // 38: ArtShow.ArtShow.UpdateArtworkReward:input_type -> ArtShow.UpdateArtworkRewardReq + 38, // 39: ArtShow.ArtShow.UpdateArtworkSaleAddress:input_type -> ArtShow.UpdateArtworkSaleAddressReq + 39, // 40: ArtShow.ArtShow.QueryShowStatus:input_type -> ArtShow.ShowStatusReq + 42, // 41: ArtShow.ArtShow.QuerySaleAddress:input_type -> ArtShow.SaleAddressReq + 1, // 42: ArtShow.ArtShow.CreateShow:output_type -> ArtShow.SaveShowRes + 1, // 43: ArtShow.ArtShow.UpdateShow:output_type -> ArtShow.SaveShowRes + 2, // 44: ArtShow.ArtShow.DelShow:output_type -> ArtShow.CommonRes + 10, // 45: ArtShow.ArtShow.ShowList:output_type -> ArtShow.ShowListRes + 10, // 46: ArtShow.ArtShow.ShowListWithRel:output_type -> ArtShow.ShowListRes + 11, // 47: ArtShow.ArtShow.ShowListForArtwork:output_type -> ArtShow.ShowListForArtworkRes + 7, // 48: ArtShow.ArtShow.ShowArtworkInfo:output_type -> ArtShow.ShowArtworkDetailRes + 6, // 49: ArtShow.ArtShow.ShowDetail:output_type -> ArtShow.ShowDetailRes + 18, // 50: ArtShow.ArtShow.ShowStatisticalInfo:output_type -> ArtShow.ShowStatisticalInfoRes + 20, // 51: ArtShow.ArtShow.ArtworkPrice:output_type -> ArtShow.ArtworkPriceRes + 24, // 52: ArtShow.ArtShow.CreateApply:output_type -> ArtShow.SaveApplyRes + 24, // 53: ArtShow.ArtShow.UpdateApply:output_type -> ArtShow.SaveApplyRes + 2, // 54: ArtShow.ArtShow.DelApply:output_type -> ArtShow.CommonRes + 10, // 55: ArtShow.ArtShow.ShowListWithApply:output_type -> ArtShow.ShowListRes + 2, // 56: ArtShow.ArtShow.UpdateApplyStatus:output_type -> ArtShow.CommonRes + 26, // 57: ArtShow.ArtShow.ApplyList:output_type -> ArtShow.ApplyListRes + 28, // 58: ArtShow.ArtShow.ApplyDetail:output_type -> ArtShow.ApplyShowRes + 15, // 59: ArtShow.ArtShow.ArtworkPriceList:output_type -> ArtShow.ArtworkPriceListRes + 2, // 60: ArtShow.ArtShow.CancelShow:output_type -> ArtShow.CommonRes + 2, // 61: ArtShow.ArtShow.UpdateArtworkReward:output_type -> ArtShow.CommonRes + 2, // 62: ArtShow.ArtShow.UpdateArtworkSaleAddress:output_type -> ArtShow.CommonRes + 41, // 63: ArtShow.ArtShow.QueryShowStatus:output_type -> ArtShow.ShowStatusRes + 44, // 64: ArtShow.ArtShow.QuerySaleAddress:output_type -> ArtShow.SaleAddressRes + 42, // [42:65] is the sub-list for method output_type + 19, // [19:42] is the sub-list for method input_type + 19, // [19:19] is the sub-list for extension type_name + 19, // [19:19] is the sub-list for extension extendee + 0, // [0:19] is the sub-list for field type_name } func init() { file_pb_artshow_proto_init() } @@ -3562,7 +4262,7 @@ 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 { + switch v := v.(*CancelShowReq); i { case 0: return &v.state case 1: @@ -3574,6 +4274,138 @@ func file_pb_artshow_proto_init() { } } file_pb_artshow_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtworkReward); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtworkRewardReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ArtworkSaleAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*UpdateArtworkSaleAddressReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ShowStatusReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ShowStatus); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*ShowStatusRes); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SaleAddressReq); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SaleAddress); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*SaleAddressRes); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_pb_artshow_proto_msgTypes[45].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[46].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ArtworkPriceRes_PriceInfo); i { case 0: return &v.state @@ -3592,7 +4424,7 @@ func file_pb_artshow_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_pb_artshow_proto_rawDesc, NumEnums: 0, - NumMessages: 36, + NumMessages: 47, NumExtensions: 0, NumServices: 1, }, diff --git a/pb/artShow/artshow.validator.pb.go b/pb/artShow/artshow.validator.pb.go index c5c5dc9..2904605 100644 --- a/pb/artShow/artshow.validator.pb.go +++ b/pb/artShow/artshow.validator.pb.go @@ -222,3 +222,64 @@ func (this *UpdateApplyStatusReq) Validate() error { func (this *DelApplyReq) Validate() error { return nil } +func (this *CancelShowReq) Validate() error { + return nil +} +func (this *ArtworkReward) Validate() error { + return nil +} +func (this *UpdateArtworkRewardReq) Validate() error { + for _, item := range this.Data { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Data", err) + } + } + } + return nil +} +func (this *ArtworkSaleAddress) Validate() error { + return nil +} +func (this *UpdateArtworkSaleAddressReq) Validate() error { + for _, item := range this.Data { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Data", err) + } + } + } + return nil +} +func (this *ShowStatusReq) Validate() error { + return nil +} +func (this *ShowStatus) Validate() error { + return nil +} +func (this *ShowStatusRes) Validate() error { + for _, item := range this.Status { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Status", err) + } + } + } + return nil +} +func (this *SaleAddressReq) Validate() error { + return nil +} +func (this *SaleAddress) Validate() error { + return nil +} +func (this *SaleAddressRes) Validate() error { + for _, item := range this.Address { + if item != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(item); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Address", err) + } + } + } + return nil +} diff --git a/pb/artShow/artshow_triple.pb.go b/pb/artShow/artshow_triple.pb.go index f6cecd9..30883af 100644 --- a/pb/artShow/artshow_triple.pb.go +++ b/pb/artShow/artshow_triple.pb.go @@ -46,6 +46,11 @@ type ArtShowClient interface { ApplyList(ctx context.Context, in *ApplyListReq, opts ...grpc_go.CallOption) (*ApplyListRes, common.ErrorWithAttachment) ApplyDetail(ctx context.Context, in *ApplyShowReq, opts ...grpc_go.CallOption) (*ApplyShowRes, common.ErrorWithAttachment) ArtworkPriceList(ctx context.Context, in *ShowDetailReq, opts ...grpc_go.CallOption) (*ArtworkPriceListRes, common.ErrorWithAttachment) + CancelShow(ctx context.Context, in *CancelShowReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) + UpdateArtworkReward(ctx context.Context, in *UpdateArtworkRewardReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) + UpdateArtworkSaleAddress(ctx context.Context, in *UpdateArtworkSaleAddressReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) + QueryShowStatus(ctx context.Context, in *ShowStatusReq, opts ...grpc_go.CallOption) (*ShowStatusRes, common.ErrorWithAttachment) + QuerySaleAddress(ctx context.Context, in *SaleAddressReq, opts ...grpc_go.CallOption) (*SaleAddressRes, common.ErrorWithAttachment) } type artShowClient struct { @@ -53,24 +58,29 @@ type artShowClient struct { } type ArtShowClientImpl struct { - CreateShow func(ctx context.Context, in *SaveShowReq) (*SaveShowRes, error) - UpdateShow func(ctx context.Context, in *SaveShowReq) (*SaveShowRes, error) - DelShow func(ctx context.Context, in *DelShowReq) (*CommonRes, error) - 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 *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) - CreateApply func(ctx context.Context, in *SaveApplyReq) (*SaveApplyRes, error) - UpdateApply func(ctx context.Context, in *SaveApplyReq) (*SaveApplyRes, error) - DelApply func(ctx context.Context, in *DelApplyReq) (*CommonRes, error) - ShowListWithApply func(ctx context.Context, in *ShowListReq) (*ShowListRes, error) - UpdateApplyStatus func(ctx context.Context, in *UpdateApplyStatusReq) (*CommonRes, error) - ApplyList func(ctx context.Context, in *ApplyListReq) (*ApplyListRes, error) - ApplyDetail func(ctx context.Context, in *ApplyShowReq) (*ApplyShowRes, error) - ArtworkPriceList func(ctx context.Context, in *ShowDetailReq) (*ArtworkPriceListRes, error) + CreateShow func(ctx context.Context, in *SaveShowReq) (*SaveShowRes, error) + UpdateShow func(ctx context.Context, in *SaveShowReq) (*SaveShowRes, error) + DelShow func(ctx context.Context, in *DelShowReq) (*CommonRes, error) + 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 *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) + CreateApply func(ctx context.Context, in *SaveApplyReq) (*SaveApplyRes, error) + UpdateApply func(ctx context.Context, in *SaveApplyReq) (*SaveApplyRes, error) + DelApply func(ctx context.Context, in *DelApplyReq) (*CommonRes, error) + ShowListWithApply func(ctx context.Context, in *ShowListReq) (*ShowListRes, error) + UpdateApplyStatus func(ctx context.Context, in *UpdateApplyStatusReq) (*CommonRes, error) + ApplyList func(ctx context.Context, in *ApplyListReq) (*ApplyListRes, error) + ApplyDetail func(ctx context.Context, in *ApplyShowReq) (*ApplyShowRes, error) + ArtworkPriceList func(ctx context.Context, in *ShowDetailReq) (*ArtworkPriceListRes, error) + CancelShow func(ctx context.Context, in *CancelShowReq) (*CommonRes, error) + UpdateArtworkReward func(ctx context.Context, in *UpdateArtworkRewardReq) (*CommonRes, error) + UpdateArtworkSaleAddress func(ctx context.Context, in *UpdateArtworkSaleAddressReq) (*CommonRes, error) + QueryShowStatus func(ctx context.Context, in *ShowStatusReq) (*ShowStatusRes, error) + QuerySaleAddress func(ctx context.Context, in *SaleAddressReq) (*SaleAddressRes, error) } func (c *ArtShowClientImpl) GetDubboStub(cc *triple.TripleConn) ArtShowClient { @@ -193,6 +203,36 @@ func (c *artShowClient) ArtworkPriceList(ctx context.Context, in *ShowDetailReq, return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ArtworkPriceList", in, out) } +func (c *artShowClient) CancelShow(ctx context.Context, in *CancelShowReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) { + out := new(CommonRes) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/CancelShow", in, out) +} + +func (c *artShowClient) UpdateArtworkReward(ctx context.Context, in *UpdateArtworkRewardReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) { + out := new(CommonRes) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateArtworkReward", in, out) +} + +func (c *artShowClient) UpdateArtworkSaleAddress(ctx context.Context, in *UpdateArtworkSaleAddressReq, opts ...grpc_go.CallOption) (*CommonRes, common.ErrorWithAttachment) { + out := new(CommonRes) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateArtworkSaleAddress", in, out) +} + +func (c *artShowClient) QueryShowStatus(ctx context.Context, in *ShowStatusReq, opts ...grpc_go.CallOption) (*ShowStatusRes, common.ErrorWithAttachment) { + out := new(ShowStatusRes) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/QueryShowStatus", in, out) +} + +func (c *artShowClient) QuerySaleAddress(ctx context.Context, in *SaleAddressReq, opts ...grpc_go.CallOption) (*SaleAddressRes, common.ErrorWithAttachment) { + out := new(SaleAddressRes) + interfaceKey := ctx.Value(constant.InterfaceKey).(string) + return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/QuerySaleAddress", in, out) +} + // ArtShowServer is the server API for ArtShow service. // All implementations must embed UnimplementedArtShowServer // for forward compatibility @@ -215,6 +255,11 @@ type ArtShowServer interface { ApplyList(context.Context, *ApplyListReq) (*ApplyListRes, error) ApplyDetail(context.Context, *ApplyShowReq) (*ApplyShowRes, error) ArtworkPriceList(context.Context, *ShowDetailReq) (*ArtworkPriceListRes, error) + CancelShow(context.Context, *CancelShowReq) (*CommonRes, error) + UpdateArtworkReward(context.Context, *UpdateArtworkRewardReq) (*CommonRes, error) + UpdateArtworkSaleAddress(context.Context, *UpdateArtworkSaleAddressReq) (*CommonRes, error) + QueryShowStatus(context.Context, *ShowStatusReq) (*ShowStatusRes, error) + QuerySaleAddress(context.Context, *SaleAddressReq) (*SaleAddressRes, error) mustEmbedUnimplementedArtShowServer() } @@ -277,6 +322,21 @@ func (UnimplementedArtShowServer) ApplyDetail(context.Context, *ApplyShowReq) (* func (UnimplementedArtShowServer) ArtworkPriceList(context.Context, *ShowDetailReq) (*ArtworkPriceListRes, error) { return nil, status.Errorf(codes.Unimplemented, "method ArtworkPriceList not implemented") } +func (UnimplementedArtShowServer) CancelShow(context.Context, *CancelShowReq) (*CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method CancelShow not implemented") +} +func (UnimplementedArtShowServer) UpdateArtworkReward(context.Context, *UpdateArtworkRewardReq) (*CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateArtworkReward not implemented") +} +func (UnimplementedArtShowServer) UpdateArtworkSaleAddress(context.Context, *UpdateArtworkSaleAddressReq) (*CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateArtworkSaleAddress not implemented") +} +func (UnimplementedArtShowServer) QueryShowStatus(context.Context, *ShowStatusReq) (*ShowStatusRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryShowStatus not implemented") +} +func (UnimplementedArtShowServer) QuerySaleAddress(context.Context, *SaleAddressReq) (*SaleAddressRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method QuerySaleAddress not implemented") +} func (s *UnimplementedArtShowServer) XXX_SetProxyImpl(impl protocol.Invoker) { s.proxyImpl = impl } @@ -827,6 +887,151 @@ func _ArtShow_ArtworkPriceList_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } +func _ArtShow_CancelShow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(CancelShowReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("CancelShow", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateArtworkReward_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateArtworkRewardReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("UpdateArtworkReward", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateArtworkSaleAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(UpdateArtworkSaleAddressReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("UpdateArtworkSaleAddress", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_QueryShowStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(ShowStatusReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("QueryShowStatus", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_QuerySaleAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { + in := new(SaleAddressReq) + if err := dec(in); err != nil { + return nil, err + } + base := srv.(dubbo3.Dubbo3GrpcService) + args := []interface{}{} + args = append(args, in) + md, _ := metadata.FromIncomingContext(ctx) + invAttachment := make(map[string]interface{}, len(md)) + for k, v := range md { + invAttachment[k] = v + } + invo := invocation.NewRPCInvocation("QuerySaleAddress", args, invAttachment) + if interceptor == nil { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + info := &grpc_go.UnaryServerInfo{ + Server: srv, + FullMethod: ctx.Value("XXX_TRIPLE_GO_INTERFACE_NAME").(string), + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + result := base.XXX_GetProxyImpl().Invoke(ctx, invo) + return result, result.Error() + } + return interceptor(ctx, in, info, handler) +} + // ArtShow_ServiceDesc is the grpc_go.ServiceDesc for ArtShow service. // It's only intended for direct use with grpc_go.RegisterService, // and not to be introspected or modified (even as a copy) @@ -906,6 +1111,26 @@ var ArtShow_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "ArtworkPriceList", Handler: _ArtShow_ArtworkPriceList_Handler, }, + { + MethodName: "CancelShow", + Handler: _ArtShow_CancelShow_Handler, + }, + { + MethodName: "UpdateArtworkReward", + Handler: _ArtShow_UpdateArtworkReward_Handler, + }, + { + MethodName: "UpdateArtworkSaleAddress", + Handler: _ArtShow_UpdateArtworkSaleAddress_Handler, + }, + { + MethodName: "QueryShowStatus", + Handler: _ArtShow_QueryShowStatus_Handler, + }, + { + MethodName: "QuerySaleAddress", + Handler: _ArtShow_QuerySaleAddress_Handler, + }, }, Streams: []grpc_go.StreamDesc{}, Metadata: "pb/artshow.proto", diff --git a/pb/artshow.proto b/pb/artshow.proto index b552b8c..eaa5b51 100644 --- a/pb/artshow.proto +++ b/pb/artshow.proto @@ -22,6 +22,11 @@ service ArtShow { rpc ApplyList (ApplyListReq) returns (ApplyListRes) {} // 画展包申请列表 rpc ApplyDetail (ApplyShowReq) returns (ApplyShowRes) {} // 画展包申请列表 rpc ArtworkPriceList (ShowDetailReq) returns (ArtworkPriceListRes) {} // 画作详情列表 + rpc CancelShow (CancelShowReq) returns (CommonRes) {} // 画展包取消展出 + rpc UpdateArtworkReward(UpdateArtworkRewardReq) returns (CommonRes) {} // 更新 画作润格 + rpc UpdateArtworkSaleAddress(UpdateArtworkSaleAddressReq) returns (CommonRes) {} // 更新 画作销售地址 + rpc QueryShowStatus(ShowStatusReq) returns (ShowStatusRes) {} // 查询 画展包状态 + rpc QuerySaleAddress(SaleAddressReq) returns (SaleAddressRes) {} // 画作 销售地址查询 } // 创建 更新画展包 @@ -89,7 +94,7 @@ message ShowDetailRes { } message ShowArtworkDetailRes { - repeated ArtworkDetail data = 1 [json_name = "data"]; + repeated ArtworkPriceDetail data = 1 [json_name = "data"]; string Msg = 2 [json_name = "msg"]; } @@ -150,6 +155,7 @@ message ArtworkDetail { int32 Width = 7 [json_name = "width"]; int32 Ruler = 8 [json_name = "ruler"]; string SmallPic = 9 [json_name = "small_pic"]; + string Tfnum = 10 [json_name = "tfnum"]; } // 画作详情 @@ -168,6 +174,9 @@ message ArtworkPriceDetail { int64 ArtworkPrice = 12 [json_name = "artwork_price"]; int64 MarketPrice = 13 [json_name = "market_price"]; int64 CopyrightPrice = 14 [json_name = "copyright_price"]; + string Tfnum = 15 [json_name = "tfnum"]; + string Reward = 16 [json_name = "reward"]; + string SaleAddress = 17 [json_name = "sale_address"]; } message ArtworkPriceListRes { @@ -210,6 +219,7 @@ message ArtworkPriceRes { int64 ArtworkPrice = 3 [json_name = "artwork_price"]; int64 MarketPrice = 4 [json_name = "market_price"]; int64 CopyrightPrice = 5 [json_name = "copyright_price"]; + int64 Reward = 6 [json_name = "reward"]; } PriceInfo Data = 1 [json_name = "data"]; string Msg = 2 [json_name = "msg"]; @@ -300,3 +310,54 @@ message UpdateApplyStatusReq { message DelApplyReq { repeated string ApplyUID = 1 [json_name = "apply_uid"]; } + + +message CancelShowReq { + repeated string ShowUID = 1 [json_name = "show_uid"]; +} + +message ArtworkReward { + string ArtworkPriceUid = 1 [json_name = "artwork_price_uid"]; + string Reward = 2 [json_name = "reward"]; +} + +message UpdateArtworkRewardReq { + repeated ArtworkReward data = 1 [json_name = "data"]; +} + +message ArtworkSaleAddress { + string ArtworkPriceUid = 1 [json_name = "artwork_price_uid"]; + string SaleAddress = 2 [json_name = "sale_address"]; +} + +message UpdateArtworkSaleAddressReq { + repeated ArtworkSaleAddress data = 1 [json_name = "data"]; +} + +message ShowStatusReq { + repeated string ShowUID = 1 [json_name = "show_uid"]; +} + +message ShowStatus { + string ShowUID = 1 [json_name = "show_uid"]; + int32 IsShow = 2 [json_name = "is_show"]; +} + +message ShowStatusRes { + repeated ShowStatus Status = 1 [json_name = "status"]; +} + + +message SaleAddressReq { + string ParentName = 1 [json_name = "parent_name"]; +} + +message SaleAddress { + string Address = 1 [json_name = "address"]; + string StoreID = 2 [json_name = "store_id"]; +} + +message SaleAddressRes { + repeated SaleAddress Address = 1 [json_name = "address"]; + string Msg = 2 [json_name = "msg"]; +} \ No newline at end of file diff --git a/pb/grpc/artshow_grpc.pb.go b/pb/grpc/artshow_grpc.pb.go index 42e240d..aef3a71 100644 --- a/pb/grpc/artshow_grpc.pb.go +++ b/pb/grpc/artshow_grpc.pb.go @@ -41,6 +41,11 @@ type ArtShowClient interface { 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) + CancelShow(ctx context.Context, in *artShow.CancelShowReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + UpdateArtworkReward(ctx context.Context, in *artShow.UpdateArtworkRewardReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + UpdateArtworkSaleAddress(ctx context.Context, in *artShow.UpdateArtworkSaleAddressReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) + QueryShowStatus(ctx context.Context, in *artShow.ShowStatusReq, opts ...grpc.CallOption) (*artShow.ShowStatusRes, error) + QuerySaleAddress(ctx context.Context, in *artShow.SaleAddressReq, opts ...grpc.CallOption) (*artShow.SaleAddressRes, error) } type artShowClient struct { @@ -213,6 +218,51 @@ func (c *artShowClient) ArtworkPriceList(ctx context.Context, in *artShow.ShowDe return out, nil } +func (c *artShowClient) CancelShow(ctx context.Context, in *artShow.CancelShowReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/CancelShow", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) UpdateArtworkReward(ctx context.Context, in *artShow.UpdateArtworkRewardReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/UpdateArtworkReward", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) UpdateArtworkSaleAddress(ctx context.Context, in *artShow.UpdateArtworkSaleAddressReq, opts ...grpc.CallOption) (*artShow.CommonRes, error) { + out := new(artShow.CommonRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/UpdateArtworkSaleAddress", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) QueryShowStatus(ctx context.Context, in *artShow.ShowStatusReq, opts ...grpc.CallOption) (*artShow.ShowStatusRes, error) { + out := new(artShow.ShowStatusRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/QueryShowStatus", in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *artShowClient) QuerySaleAddress(ctx context.Context, in *artShow.SaleAddressReq, opts ...grpc.CallOption) (*artShow.SaleAddressRes, error) { + out := new(artShow.SaleAddressRes) + err := c.cc.Invoke(ctx, "/ArtShow.ArtShow/QuerySaleAddress", 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 @@ -235,6 +285,11 @@ type ArtShowServer interface { ApplyList(context.Context, *artShow.ApplyListReq) (*artShow.ApplyListRes, error) ApplyDetail(context.Context, *artShow.ApplyShowReq) (*artShow.ApplyShowRes, error) ArtworkPriceList(context.Context, *artShow.ShowDetailReq) (*artShow.ArtworkPriceListRes, error) + CancelShow(context.Context, *artShow.CancelShowReq) (*artShow.CommonRes, error) + UpdateArtworkReward(context.Context, *artShow.UpdateArtworkRewardReq) (*artShow.CommonRes, error) + UpdateArtworkSaleAddress(context.Context, *artShow.UpdateArtworkSaleAddressReq) (*artShow.CommonRes, error) + QueryShowStatus(context.Context, *artShow.ShowStatusReq) (*artShow.ShowStatusRes, error) + QuerySaleAddress(context.Context, *artShow.SaleAddressReq) (*artShow.SaleAddressRes, error) mustEmbedUnimplementedArtShowServer() } @@ -296,6 +351,21 @@ func (UnimplementedArtShowServer) ApplyDetail(context.Context, *artShow.ApplySho func (UnimplementedArtShowServer) ArtworkPriceList(context.Context, *artShow.ShowDetailReq) (*artShow.ArtworkPriceListRes, error) { return nil, status.Errorf(codes.Unimplemented, "method ArtworkPriceList not implemented") } +func (UnimplementedArtShowServer) CancelShow(context.Context, *artShow.CancelShowReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method CancelShow not implemented") +} +func (UnimplementedArtShowServer) UpdateArtworkReward(context.Context, *artShow.UpdateArtworkRewardReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateArtworkReward not implemented") +} +func (UnimplementedArtShowServer) UpdateArtworkSaleAddress(context.Context, *artShow.UpdateArtworkSaleAddressReq) (*artShow.CommonRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method UpdateArtworkSaleAddress not implemented") +} +func (UnimplementedArtShowServer) QueryShowStatus(context.Context, *artShow.ShowStatusReq) (*artShow.ShowStatusRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method QueryShowStatus not implemented") +} +func (UnimplementedArtShowServer) QuerySaleAddress(context.Context, *artShow.SaleAddressReq) (*artShow.SaleAddressRes, error) { + return nil, status.Errorf(codes.Unimplemented, "method QuerySaleAddress not implemented") +} func (UnimplementedArtShowServer) mustEmbedUnimplementedArtShowServer() {} // UnsafeArtShowServer may be embedded to opt out of forward compatibility for this service. @@ -633,6 +703,96 @@ func _ArtShow_ArtworkPriceList_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } +func _ArtShow_CancelShow_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.CancelShowReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).CancelShow(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/CancelShow", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).CancelShow(ctx, req.(*artShow.CancelShowReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateArtworkReward_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.UpdateArtworkRewardReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).UpdateArtworkReward(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/UpdateArtworkReward", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).UpdateArtworkReward(ctx, req.(*artShow.UpdateArtworkRewardReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_UpdateArtworkSaleAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.UpdateArtworkSaleAddressReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).UpdateArtworkSaleAddress(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/UpdateArtworkSaleAddress", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).UpdateArtworkSaleAddress(ctx, req.(*artShow.UpdateArtworkSaleAddressReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_QueryShowStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.ShowStatusReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).QueryShowStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/QueryShowStatus", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).QueryShowStatus(ctx, req.(*artShow.ShowStatusReq)) + } + return interceptor(ctx, in, info, handler) +} + +func _ArtShow_QuerySaleAddress_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(artShow.SaleAddressReq) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(ArtShowServer).QuerySaleAddress(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: "/ArtShow.ArtShow/QuerySaleAddress", + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(ArtShowServer).QuerySaleAddress(ctx, req.(*artShow.SaleAddressReq)) + } + 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) @@ -712,6 +872,26 @@ var ArtShow_ServiceDesc = grpc.ServiceDesc{ MethodName: "ArtworkPriceList", Handler: _ArtShow_ArtworkPriceList_Handler, }, + { + MethodName: "CancelShow", + Handler: _ArtShow_CancelShow_Handler, + }, + { + MethodName: "UpdateArtworkReward", + Handler: _ArtShow_UpdateArtworkReward_Handler, + }, + { + MethodName: "UpdateArtworkSaleAddress", + Handler: _ArtShow_UpdateArtworkSaleAddress_Handler, + }, + { + MethodName: "QueryShowStatus", + Handler: _ArtShow_QueryShowStatus_Handler, + }, + { + MethodName: "QuerySaleAddress", + Handler: _ArtShow_QuerySaleAddress_Handler, + }, }, Streams: []grpc.StreamDesc{}, Metadata: "pb/artshow.proto", diff --git a/pkg/m/msg.go b/pkg/m/msg.go index 4a5d7d9..2404444 100644 --- a/pkg/m/msg.go +++ b/pkg/m/msg.go @@ -30,9 +30,11 @@ const ( // 画展包及画展包申请状态码定义 const ( - ARTSHOW_INSIDE = iota + 1 // 内部 - ARTSHOW_PASS // 可展 - ARTSHOW_SHOWING // 已展 + ARTSHOW_INSIDE = iota + 1 // 内部 + ARTSHOW_PASS // 可展 + //ARTSHOW_SHOW_PASS // 画展包的画展地址和时间 审批 + ARTSHOW_SALE_ADDRESS_PASS // 画展包中画作的销售地址 审批 + ARTSHOW_REWARD_PASS // 润格 审批 ) const ( diff --git a/pkg/serializer/art_show.go b/pkg/serializer/art_show.go index 566c950..b6e92c3 100644 --- a/pkg/serializer/art_show.go +++ b/pkg/serializer/art_show.go @@ -63,3 +63,14 @@ func BuildArtShowIsShowM(show_uid string, isShow int8) (out *model.ArtShow) { out.IsShow = isShow return } + +func BuildShowStatusRpc(in []*model.ArtShowRes) (out []*artShow.ShowStatus) { + out = make([]*artShow.ShowStatus, 0) + for i := 0; i < len(in); i++ { + out = append(out, &artShow.ShowStatus{ + ShowUID: in[i].ShowUID, + IsShow: int32(in[i].IsShow), + }) + } + return out +} diff --git a/pkg/serializer/artwork_price.go b/pkg/serializer/artwork_price.go index dfca446..0391e73 100644 --- a/pkg/serializer/artwork_price.go +++ b/pkg/serializer/artwork_price.go @@ -3,6 +3,7 @@ package serializer import ( "fonchain-artshow/cmd/model" "fonchain-artshow/pb/artShow" + "strconv" ) func BuildShowArtworkM(in []*artShow.ArtworkDetail, showUID string) (out []*model.ArtworkPrice) { @@ -10,6 +11,7 @@ func BuildShowArtworkM(in []*artShow.ArtworkDetail, showUID string) (out []*mode for i := 0; i < len(in); i++ { artworkPrice := new(model.ArtworkPrice) artworkPrice.ArtworkUID = in[i].ArtworkUID + artworkPrice.Tfnum = in[i].Tfnum artworkPrice.ArtworkName = in[i].ArtworkName artworkPrice.ArtistName = in[i].ArtistName artworkPrice.SmallPic = in[i].SmallPic @@ -52,6 +54,7 @@ func BuildShowArtworkRpc(in []*model.ArtworkPrice) (out []*artShow.ArtworkDetail artworkPrice.ArtworkPriceUID = in[i].ArtworkPriceUID artworkPrice.ShowUID = in[i].ShowUID artworkPrice.ArtworkUID = in[i].ArtworkUID + artworkPrice.Tfnum = in[i].Tfnum artworkPrice.ArtworkName = in[i].ArtworkName artworkPrice.ArtistName = in[i].ArtistName artworkPrice.SmallPic = in[i].SmallPic @@ -82,6 +85,9 @@ func BuildShowArtworkListRpc(in []*model.ArtworkPrice) (out []*artShow.ArtworkPr artworkPrice.ArtworkPrice = in[i].ArtworkPrice artworkPrice.MarketPrice = in[i].MarketPrice artworkPrice.CopyrightPrice = in[i].CopyrightPrice + artworkPrice.Tfnum = in[i].Tfnum + artworkPrice.Reward = in[i].Reward + artworkPrice.SaleAddress = in[i].SaleAddress out[i] = artworkPrice } @@ -96,6 +102,11 @@ func BuildArtworkPriceRes(artworkPrice *model.ArtworkPrice) (out *artShow.Artwor out.Data.ArtworkPrice = artworkPrice.ArtworkPrice out.Data.MarketPrice = artworkPrice.MarketPrice out.Data.CopyrightPrice = artworkPrice.CopyrightPrice + if artworkPrice.Reward == "" { + out.Data.Reward = 0 + } else { + out.Data.Reward, _ = strconv.ParseInt(artworkPrice.Reward, 10, 64) + } return } diff --git a/pkg/serializer/sale_address.go b/pkg/serializer/sale_address.go new file mode 100644 index 0000000..e982928 --- /dev/null +++ b/pkg/serializer/sale_address.go @@ -0,0 +1,19 @@ +package serializer + +import ( + "fmt" + "fonchain-artshow/cmd/model" + "fonchain-artshow/pb/artShow" +) + +func BuildSaleAddressRpc(in []*model.SaleAddress) (out *artShow.SaleAddressRes) { + out = new(artShow.SaleAddressRes) + for i := 0; i < len(in); i++ { + fmt.Println(in[i]) + out.Address = append(out.Address, &artShow.SaleAddress{ + Address: in[i].Address, + StoreID: in[i].StoreID, + }) + } + return +}