diff --git a/cmd/internal/controller/contract.go b/cmd/internal/controller/contract.go index 77f329e..e0407de 100644 --- a/cmd/internal/controller/contract.go +++ b/cmd/internal/controller/contract.go @@ -45,13 +45,21 @@ func (c *ContractProvider) SignContract(ctx context.Context, req *contract.SignC return rep, nil } -// func (c *ContractProvider) FinishContract(ctx context.Context, req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) { -// fmt.Println("第一处") -// if rep, err = c.contractLogic.FinishContract(req); err != nil { -// return nil, err -// } -// return rep, nil -// } +func (c *ContractProvider) FinishContract(ctx context.Context, req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) { + fmt.Println("第一处") + if rep, err = c.contractLogic.FinishContract(req); err != nil { + return nil, err + } + return rep, nil +} + +func (c *ContractProvider) ContractTxList(ctx context.Context, req *contract.ContractTxListRequest) (rep *contract.ContractTxListRespond, err error) { + fmt.Println("第一处") + if rep, err = c.contractLogic.ContractTxList(req); err != nil { + return nil, err + } + return rep, nil +} // func (c *ContractProvider) ContractList(ctx context.Context, req *contract.ContractListRequest) (rep *contract.ContractListRespond, err error) { // fmt.Println("第一处") diff --git a/cmd/internal/dao/contract.go b/cmd/internal/dao/contract.go index f4c8d2e..9cf18ae 100644 --- a/cmd/internal/dao/contract.go +++ b/cmd/internal/dao/contract.go @@ -1,16 +1,13 @@ package dao import ( - "context" "errors" "strings" "github.com/fonchain/fonchain-artistinfo/cmd/model" - "github.com/fonchain/fonchain-artistinfo/pb/artwork" "github.com/fonchain/fonchain-artistinfo/pb/contract" db "github.com/fonchain/fonchain-artistinfo/pkg/db" "github.com/fonchain/fonchain-artistinfo/pkg/m" - "github.com/fonchain/fonchain-artistinfo/pkg/service" uuid "github.com/satori/go.uuid" "go.uber.org/zap" "gorm.io/gorm" @@ -187,36 +184,57 @@ func UpdateContract(tx *gorm.DB, artistUid, ViewPdfUrl, DownloadUrl, ContractNo return } -// 根据画作uid获取画作信息 -func GetArtworkProfileByArtworkUid(artworkUid string) (artworkProfileInfo *artwork.ArtworkDetailResponse, err error) { - artworkProfileInfo = &artwork.ArtworkDetailResponse{} - - artworkDetailRequest := &artwork.ArtworkDetailRequest{ - ArtworkUuid: artworkUid, - Type: "1", - } - artworkDetailResponse, err := service.ArtworkImpl.ArtworkDetail(context.Background(), artworkDetailRequest) - if err != nil { +func UpdateContractTx(tx *gorm.DB, contractUid, transactionId string) (err error) { + if err = tx.Model(&model.Contract{}).Where("artist_uid = ?", contractUid).Updates(model.Contract{TransactionId: transactionId, State: 1}).Error; err != nil { + zap.L().Error("update contract info err", zap.Error(err)) + err = errors.New(m.UPDATE_FAILED) return } - return artworkDetailResponse, nil + return } -// func FinishContract(tx *gorm.DB, id string) (contract model.Contract, err error) { -// if err = tx.Where("transaction_id = ?", id).First(&contract).Error; err != nil { -// zap.L().Error("get contract info err", zap.Error(err)) -// err = errors.New(m.ERROR_SELECT) -// return -// } +func FinishContract(tx *gorm.DB, id string) (contracts *contract.Contracts, err error) { -// if err = db.DB.Model(&contract).Update("state", 3).Error; err != nil { -// zap.L().Error("user contract failed", zap.Error(err)) -// err = errors.New(m.UPDATE_FAILED) -// return -// } + var modelContract model.Contract + if err = tx.Where("transaction_id = ?", id).First(&modelContract).Error; err != nil { + zap.L().Error("get contract info err", zap.Error(err)) + err = errors.New(m.ERROR_SELECT) + return + } -// return -// } + if err = db.DB.Model(&modelContract).Update("state", 3).Error; err != nil { + zap.L().Error("update user contract failed", zap.Error(err)) + err = errors.New(m.UPDATE_FAILED) + return + } + + contracts = &contract.Contracts{ + ArtistUid: modelContract.ArtistUid, + ArtworkUid: modelContract.ArtworkUid, + ContractUid: modelContract.ContractId, + TransactionId: modelContract.TransactionId, + Type: modelContract.Type, + ViewUrl: modelContract.ViewUrl, + DownloadUrl: modelContract.DownloadUrl, + State: modelContract.State, + Status: modelContract.Status, + LockTime: modelContract.LockTime, + SignTime: modelContract.SignTime, + } + + return +} + +func ContractTxList(uid string, state int32) (contracts []model.Contract, err error) { + if err = db.DB.Where("artist_uid = ? AND (type = 4 or type = 7) ADN state = ?", uid, state).Find(&contracts).Error; err != nil { + zap.L().Error("get contracts info err", zap.Error(err)) + err = errors.New(m.ERROR_SELECT) + return + } + + return + +} // func UpdateArtworkState(tx *gorm.DB, id int32) (err error) { //无用 // var artworkState model.ArtworkState @@ -235,6 +253,7 @@ func GetArtworkProfileByArtworkUid(artworkUid string) (artworkProfileInfo *artwo // return // } // } +// } // if err = tx.Model(&model.Artwork{}).Where("id = ? ", id).Update("flow_state", 7).Error; err != nil { // zap.L().Error("Artwork Update Err", zap.Error(err)) diff --git a/cmd/internal/logic/artistInfo_user.go b/cmd/internal/logic/artistInfo_user.go index 1198cd7..b8a4a95 100644 --- a/cmd/internal/logic/artistInfo_user.go +++ b/cmd/internal/logic/artistInfo_user.go @@ -90,6 +90,7 @@ func (a *ArtistInfoUser) GetUserMsg(req *artistInfoUser.GetUserMsgRequest) (rep func (a *ArtistInfoUser) FindUser(req *artistInfoUser.FindUserRequest) (rep *artistInfoUser.UserInfo, err error) { return dao.FindUser(req) } + func (a *ArtistInfoUser) FindUserList(req *artistInfoUser.FindUsersRequest) (rep *artistInfoUser.FindUsersResponse, err error) { res, total, err := dao.FindUserList(req) rep = &artistInfoUser.FindUsersResponse{Data: res, Page: &artistInfoUser.UserCommonPageInfo{ diff --git a/cmd/internal/logic/contract.go b/cmd/internal/logic/contract.go index cc597e0..048dccf 100644 --- a/cmd/internal/logic/contract.go +++ b/cmd/internal/logic/contract.go @@ -12,6 +12,7 @@ import ( "github.com/fonchain/fonchain-artistinfo/cmd/model" "github.com/fonchain/fonchain-artistinfo/pb/artist" "github.com/fonchain/fonchain-artistinfo/pb/artistInfoUser" + "github.com/fonchain/fonchain-artistinfo/pb/artwork" "github.com/fonchain/fonchain-artistinfo/pb/contract" contractMicroservice "github.com/fonchain/fonchain-artistinfo/pb/contract_microservice" db "github.com/fonchain/fonchain-artistinfo/pkg/db" @@ -26,10 +27,10 @@ type IContract interface { ContractListMgmt(req *contract.ContractListMgmtRequest) (rep *contract.ContractListMgmtRespond, err error) ContractList(req *contract.ContractListRequest) (rep *contract.ContractListRespond, err error) SignContract(req *contract.SignContractRequest) (rep *contract.SignContractRespond, err error) + FinishContract(req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) + ContractTxList(req *contract.ContractTxListRequest) (rep *contract.ContractTxListRespond, err error) - // FinishContract(req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) // ContractList(req *contract.ContractListRequest) (rep *contract.ContractListRespond, err error) - // ContractTxList(req *contract.ContractTxListRequest) (rep *contract.ContractTxListRespond, err error) // UpdateContract(req *contract.UpdateContractRequest) (rep *contract.UpdateContractRespond, err error) // UpdateContractTx(req *contract.UpdateContractTxRequest) (rep *contract.UpdateContractTxRespond, err error) // GetContract(req *contract.GetContractRequest) (rep *contract.ContractData, err error) @@ -213,15 +214,8 @@ func (a *Contract) SignContract(req *contract.SignContractRequest) (rep *contrac return } - artistInfo, err := dao.GetArtistInfoById(req.ID) - if err != nil { - return - } - - detailRequest := &artist.DetailRequest{ - Uid: artistInfo.MgmtArtistUid, - } - artistDetailResponse, err := service.GrpcArtistImpl.ArtistDetail(context.Background(), detailRequest) + //根据画家id获取画家具体信息 + artistDetailResponse, customerId, err := GetArtistInfoById(req.ID) if err != nil { return rep, err } @@ -359,7 +353,7 @@ func (a *Contract) SignContract(req *contract.SignContractRequest) (rep *contrac var ContractNo = fmt.Sprintf("TF_%d", time.Now().UnixNano()) //获取画作信息 - artworkDetailResponse, err := dao.GetArtworkProfileByArtworkUid(contractInfo.ArtworkUid) + artworkDetailResponse, err := GetArtworkProfileByArtworkUid(contractInfo.ArtworkUid) if err != nil { return rep, err } @@ -397,7 +391,7 @@ func (a *Contract) SignContract(req *contract.SignContractRequest) (rep *contrac case 5: //获取画作信息 - artworkDetailResponse, err := dao.GetArtworkProfileByArtworkUid(contractInfo.ArtworkUid) + artworkDetailResponse, err := GetArtworkProfileByArtworkUid(contractInfo.ArtworkUid) if err != nil { return rep, err } @@ -460,7 +454,7 @@ func (a *Contract) SignContract(req *contract.SignContractRequest) (rep *contrac for k, v := range ArtistUids { //获取画作信息 - artworkDetailResponse, err := dao.GetArtworkProfileByArtworkUid(v) + artworkDetailResponse, err := GetArtworkProfileByArtworkUid(v) if err != nil { return rep, err } @@ -585,73 +579,120 @@ func (a *Contract) SignContract(req *contract.SignContractRequest) (rep *contrac if contractInfo.Type == 5 || contractInfo.Type == 3 || contractInfo.Type == 6 { signShowTime = "2" } + // 手动签署 extSignRequest := &contractMicroservice.ExtSignRequest{ TransactionId: transactionId, ContractId: contractInfo.ContractId, - CustomerId: "", - ReturnUrl: "", - DocTitle: "", - OpenEnvironment: "", - MobileSignType: "", - SignKeyword: "", - Keyx: "", - Keyy: "", - SignatureShowTime: "", - PcHandSignature: "", + CustomerId: customerId, + ReturnUrl: fmt.Sprintf("%v/contractwrite?htmltype=%s&envtype=%s&token= %s", "192.168.10.7", req.HtmlType, req.EnvType, req.Token), + DocTitle: contractInfo.ContractId, + OpenEnvironment: "0", + MobileSignType: "2", + SignKeyword: signKeyword, + Keyx: "100", + Keyy: "-5", + SignatureShowTime: signShowTime, + PcHandSignature: "2", } - _, err = service.ContractImpl.ExtSign(context.Background(), extSignRequest) + jumpCommonResponse, err := service.ContractImpl.ExtSign(context.Background(), extSignRequest) if err != nil { return rep, err } + err = dao.UpdateContractTx(tx, contractInfo.Uid, transactionId) + if err != nil { + return + } + rep.JumpUrl = jumpCommonResponse.JumpUrl + + return rep, nil +} + +func (a *Contract) FinishContract(req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) { + rep = &contract.FinishContractRespond{} + + tx := db.DB.Begin() + //更新合同状态并获取合同信息 + contract, err := dao.FinishContract(tx, req.TransactionId) + if err != nil { + tx.Rollback() + return nil, err + } + + rep.Contract = contract + + tx.Commit() + return +} + +func (a *Contract) ContractTxList(req *contract.ContractTxListRequest) (rep *contract.ContractTxListRespond, err error) { + + rep = &contract.ContractTxListRespond{} + var datas []*contract.Contracts + + artistDetailResponse, _, err := GetArtistInfoById(req.ID) + if err != nil { + return + } + + contracts, err := dao.ContractTxList(artistDetailResponse.ProfileInfo.Uid, req.State) + if err != nil { + return + } + data := &contract.Contracts{} + for _, v := range contracts { + data.ArtistUid = v.ArtistUid + data.ArtworkUid = v.ArtworkUid + data.ContractId = v.ContractId + data.TransactionId = v.TransactionId + data.Type = v.Type + data.ViewUrl = v.ViewUrl + data.DownloadUrl = v.DownloadUrl + data. + } + return } -// func (a *Contract) FinishContract(req *contract.FinishContractRequest) (rep *contract.FinishContractRespond, err error) { -// rep = &contract.FinishContractRespond{} +// 根据画作uid获取画作信息 +func GetArtworkProfileByArtworkUid(artworkUid string) (artworkProfileInfo *artwork.ArtworkDetailResponse, err error) { + artworkProfileInfo = &artwork.ArtworkDetailResponse{} -// tx := db.DB.Begin() -// //更新合同状态并获取合同信息 -// contract, err := dao.FinishContract(tx, req.TransactionId) -// if err != nil { -// tx.Rollback() -// return nil, err -// } + artworkDetailRequest := &artwork.ArtworkDetailRequest{ + ArtworkUuid: artworkUid, + Type: "1", + } + artworkDetailResponse, err := service.ArtworkImpl.ArtworkDetail(context.Background(), artworkDetailRequest) + if err != nil { + return + } + return artworkDetailResponse, nil +} -// //查看画作是否已经状态改变,没有则改变 无用 -// if err = dao.UpdateArtworkState(tx, contract.ID); err != nil { -// tx.Rollback() -// return -// } +// 根据画家id获取画家具体信息 +func GetArtistInfoById(id int32) (artistDetailResponse *artist.DetailResponse, customerId string, err error) { + artistDetailResponse = &artist.DetailResponse{} -// var tmp struct { -// Uid int32 `json:"uid"` -// } -// tmp.Uid = contract.BatchId -// tmpByte, _ := json.Marshal(&tmp) + artistInfo, err := dao.GetArtistInfoById(id) + if err != nil { + return + } -// if contract.Type == 4 { -// _, err = util.Post("https://ms.fontree.cn/mgmt/artworktx/updatebatchtype", string(tmpByte)) -// if err != nil { -// zap.L().Error("post request err", zap.Error(err)) -// return -// } -// } + detailRequest := &artist.DetailRequest{ + Uid: artistInfo.MgmtArtistUid, + } + artistDetailResponse, err = service.GrpcArtistImpl.ArtistDetail(context.Background(), detailRequest) + if err != nil { + return + } -// if contract.Type == 7 { -// _, err = util.Post("https://ms.fontree.cn/mgmt/artworktx/updatebatchtypecopy", string(tmpByte)) -// if err != nil { -// zap.L().Error("post request err", zap.Error(err)) -// return -// } -// } + customerId = artistInfo.CustomerId -// tx.Commit() -// return -// } + return +} // func (a *Contract) ContractList(req *contract.ContractListRequest) (rep *contract.ContractListRespond, err error) { diff --git a/cmd/model/contract.go b/cmd/model/contract.go index bed274e..7d2af38 100644 --- a/cmd/model/contract.go +++ b/cmd/model/contract.go @@ -14,7 +14,7 @@ type Contract struct { ViewUrl string `gorm:"column:view_url;type:varchar(500);comment:在线查看合同链接" json:"view_url"` DownloadUrl string `gorm:"column:download_url;type:varchar(500);comment:合同下载链接" json:"download_url"` State int32 `gorm:"column:state;type:int(1);comment:合同状态;NOT NULL" json:"state"` - Status int64 `gorm:"column:status;default:2;comment:2=锁定 3=解锁" json:"status" ` //跟随用户的锁定和解锁状态,用于控制数据的展示 + Status int32 `gorm:"column:status;default:2;comment:2=锁定 3=解锁" json:"status" ` //跟随用户的锁定和解锁状态,用于控制数据的展示 LockTime string `gorm:"column:lock_time;comment:锁定时间" json:"lockTime"` SignTime string `gorm:"column:sign_time;comment:签署时间" json:"sign_time"` CreatedAt int32 `gorm:"column:created_at;autoCreateTime"` diff --git a/pb/contract/contract.pb.go b/pb/contract/contract.pb.go index a6d7593..30b5dff 100644 --- a/pb/contract/contract.pb.go +++ b/pb/contract/contract.pb.go @@ -516,8 +516,9 @@ type SignContractRequest struct { ID int32 `protobuf:"varint,1,opt,name=ID,json=id,proto3" json:"ID,omitempty"` ContractId int32 `protobuf:"varint,2,opt,name=ContractId,json=contractId,proto3" json:"ContractId,omitempty"` - HtmlType string `protobuf:"bytes,3,opt,name=HtmlType,json=htmlType,proto3" json:"HtmlType,omitempty"` - EnvType string `protobuf:"bytes,4,opt,name=EnvType,json=envType,proto3" json:"EnvType,omitempty"` + Token string `protobuf:"bytes,3,opt,name=Token,json=token,proto3" json:"Token,omitempty"` + HtmlType string `protobuf:"bytes,4,opt,name=HtmlType,json=htmlType,proto3" json:"HtmlType,omitempty"` + EnvType string `protobuf:"bytes,5,opt,name=EnvType,json=envType,proto3" json:"EnvType,omitempty"` } func (x *SignContractRequest) Reset() { @@ -566,6 +567,13 @@ func (x *SignContractRequest) GetContractId() int32 { return 0 } +func (x *SignContractRequest) GetToken() string { + if x != nil { + return x.Token + } + return "" +} + func (x *SignContractRequest) GetHtmlType() string { if x != nil { return x.HtmlType @@ -584,6 +592,9 @@ type SignContractRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + JumpUrl string `protobuf:"bytes,1,opt,name=JumpUrl,json=jump_url,proto3" json:"JumpUrl,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *SignContractRespond) Reset() { @@ -618,6 +629,20 @@ func (*SignContractRespond) Descriptor() ([]byte, []int) { return file_contract_proto_rawDescGZIP(), []int{8} } +func (x *SignContractRespond) GetJumpUrl() string { + if x != nil { + return x.JumpUrl + } + return "" +} + +func (x *SignContractRespond) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + type FinishContractRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -669,6 +694,9 @@ type FinishContractRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Contract *Contracts `protobuf:"bytes,1,opt,name=Contract,json=msg,proto3" json:"Contract,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *FinishContractRespond) Reset() { @@ -703,177 +731,16 @@ func (*FinishContractRespond) Descriptor() ([]byte, []int) { return file_contract_proto_rawDescGZIP(), []int{10} } -type ContractData struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ID uint64 `protobuf:"varint,1,opt,name=ID,json=id,proto3" json:"ID,omitempty"` - UserId int64 `protobuf:"varint,2,opt,name=UserId,json=userId,proto3" json:"UserId,omitempty"` - CardId string `protobuf:"bytes,3,opt,name=CardId,json=cardId,proto3" json:"CardId,omitempty"` - MgmtUserId string `protobuf:"bytes,4,opt,name=MgmtUserId,json=mgmtUserId,proto3" json:"MgmtUserId,omitempty"` - ArtworkId string `protobuf:"bytes,5,opt,name=ArtworkId,json=artworkId,proto3" json:"ArtworkId,omitempty"` - ContractId string `protobuf:"bytes,6,opt,name=ContractId,json=contractId,proto3" json:"ContractId,omitempty"` - TransactionId string `protobuf:"bytes,7,opt,name=TransactionId,json=transactionId,proto3" json:"TransactionId,omitempty"` - Type int64 `protobuf:"varint,8,opt,name=Type,json=type,proto3" json:"Type,omitempty"` - BatchId int64 `protobuf:"varint,9,opt,name=BatchId,json=batchId,proto3" json:"BatchId,omitempty"` - BatchName string `protobuf:"bytes,10,opt,name=BatchName,json=batchName,proto3" json:"BatchName,omitempty"` - ViewUrl string `protobuf:"bytes,11,opt,name=ViewUrl,json=viewUrl,proto3" json:"ViewUrl,omitempty"` - DownloadUrl string `protobuf:"bytes,12,opt,name=DownloadUrl,json=downloadUrl,proto3" json:"DownloadUrl,omitempty"` - State int64 `protobuf:"varint,13,opt,name=State,json=state,proto3" json:"State,omitempty"` - UpdateTime string `protobuf:"bytes,14,opt,name=UpdateTime,json=updateTime,proto3" json:"UpdateTime,omitempty"` - CreateTime string `protobuf:"bytes,15,opt,name=CreateTime,json=createTime,proto3" json:"CreateTime,omitempty"` - ExpirationTime string `protobuf:"bytes,16,opt,name=ExpirationTime,json=expirationTime,proto3" json:"ExpirationTime,omitempty"` - SignTime string `protobuf:"bytes,17,opt,name=SignTime,json=signTime,proto3" json:"SignTime,omitempty"` -} - -func (x *ContractData) Reset() { - *x = ContractData{} - if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *ContractData) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*ContractData) ProtoMessage() {} - -func (x *ContractData) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[11] - 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 ContractData.ProtoReflect.Descriptor instead. -func (*ContractData) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{11} -} - -func (x *ContractData) GetID() uint64 { +func (x *FinishContractRespond) GetContract() *Contracts { if x != nil { - return x.ID + return x.Contract } - return 0 + return nil } -func (x *ContractData) GetUserId() int64 { +func (x *FinishContractRespond) GetMsg() string { if x != nil { - return x.UserId - } - return 0 -} - -func (x *ContractData) GetCardId() string { - if x != nil { - return x.CardId - } - return "" -} - -func (x *ContractData) GetMgmtUserId() string { - if x != nil { - return x.MgmtUserId - } - return "" -} - -func (x *ContractData) GetArtworkId() string { - if x != nil { - return x.ArtworkId - } - return "" -} - -func (x *ContractData) GetContractId() string { - if x != nil { - return x.ContractId - } - return "" -} - -func (x *ContractData) GetTransactionId() string { - if x != nil { - return x.TransactionId - } - return "" -} - -func (x *ContractData) GetType() int64 { - if x != nil { - return x.Type - } - return 0 -} - -func (x *ContractData) GetBatchId() int64 { - if x != nil { - return x.BatchId - } - return 0 -} - -func (x *ContractData) GetBatchName() string { - if x != nil { - return x.BatchName - } - return "" -} - -func (x *ContractData) GetViewUrl() string { - if x != nil { - return x.ViewUrl - } - return "" -} - -func (x *ContractData) GetDownloadUrl() string { - if x != nil { - return x.DownloadUrl - } - return "" -} - -func (x *ContractData) GetState() int64 { - if x != nil { - return x.State - } - return 0 -} - -func (x *ContractData) GetUpdateTime() string { - if x != nil { - return x.UpdateTime - } - return "" -} - -func (x *ContractData) GetCreateTime() string { - if x != nil { - return x.CreateTime - } - return "" -} - -func (x *ContractData) GetExpirationTime() string { - if x != nil { - return x.ExpirationTime - } - return "" -} - -func (x *ContractData) GetSignTime() string { - if x != nil { - return x.SignTime + return x.Msg } return "" } @@ -883,16 +750,16 @@ type ContractTxListRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - PageSize int64 `protobuf:"varint,1,opt,name=PageSize,json=pageSize,proto3" json:"PageSize,omitempty"` - Page int64 `protobuf:"varint,2,opt,name=Page,json=page,proto3" json:"Page,omitempty"` - State int64 `protobuf:"varint,3,opt,name=State,json=state,proto3" json:"State,omitempty"` - ID int64 `protobuf:"varint,4,opt,name=ID,json=id,proto3" json:"ID,omitempty"` + ID int32 `protobuf:"varint,1,opt,name=ID,json=id,proto3" json:"ID,omitempty"` + PageSize int32 `protobuf:"varint,2,opt,name=PageSize,json=pageSize,proto3" json:"PageSize,omitempty"` + Page int32 `protobuf:"varint,3,opt,name=Page,json=page,proto3" json:"Page,omitempty"` + State int32 `protobuf:"varint,4,opt,name=State,json=state,proto3" json:"State,omitempty"` } func (x *ContractTxListRequest) Reset() { *x = ContractTxListRequest{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[12] + mi := &file_contract_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -905,7 +772,7 @@ func (x *ContractTxListRequest) String() string { func (*ContractTxListRequest) ProtoMessage() {} func (x *ContractTxListRequest) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[12] + mi := &file_contract_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -918,49 +785,50 @@ func (x *ContractTxListRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use ContractTxListRequest.ProtoReflect.Descriptor instead. func (*ContractTxListRequest) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{12} + return file_contract_proto_rawDescGZIP(), []int{11} } -func (x *ContractTxListRequest) GetPageSize() int64 { +func (x *ContractTxListRequest) GetID() int32 { + if x != nil { + return x.ID + } + return 0 +} + +func (x *ContractTxListRequest) GetPageSize() int32 { if x != nil { return x.PageSize } return 0 } -func (x *ContractTxListRequest) GetPage() int64 { +func (x *ContractTxListRequest) GetPage() int32 { if x != nil { return x.Page } return 0 } -func (x *ContractTxListRequest) GetState() int64 { +func (x *ContractTxListRequest) GetState() int32 { if x != nil { return x.State } return 0 } -func (x *ContractTxListRequest) GetID() int64 { - if x != nil { - return x.ID - } - return 0 -} - type ContractTxListRespond struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - Data []*ContractData `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"` + Data []*Contracts `protobuf:"bytes,1,rep,name=Data,proto3" json:"Data,omitempty"` + Msg string `protobuf:"bytes,2,opt,name=Msg,json=msg,proto3" json:"Msg,omitempty"` } func (x *ContractTxListRespond) Reset() { *x = ContractTxListRespond{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[13] + mi := &file_contract_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -973,7 +841,7 @@ func (x *ContractTxListRespond) String() string { func (*ContractTxListRespond) ProtoMessage() {} func (x *ContractTxListRespond) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[13] + mi := &file_contract_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -986,16 +854,23 @@ func (x *ContractTxListRespond) ProtoReflect() protoreflect.Message { // Deprecated: Use ContractTxListRespond.ProtoReflect.Descriptor instead. func (*ContractTxListRespond) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{13} + return file_contract_proto_rawDescGZIP(), []int{12} } -func (x *ContractTxListRespond) GetData() []*ContractData { +func (x *ContractTxListRespond) GetData() []*Contracts { if x != nil { return x.Data } return nil } +func (x *ContractTxListRespond) GetMsg() string { + if x != nil { + return x.Msg + } + return "" +} + type GetContractRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1007,7 +882,7 @@ type GetContractRequest struct { func (x *GetContractRequest) Reset() { *x = GetContractRequest{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[14] + mi := &file_contract_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1020,7 +895,7 @@ func (x *GetContractRequest) String() string { func (*GetContractRequest) ProtoMessage() {} func (x *GetContractRequest) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[14] + mi := &file_contract_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1033,7 +908,7 @@ func (x *GetContractRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetContractRequest.ProtoReflect.Descriptor instead. func (*GetContractRequest) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{14} + return file_contract_proto_rawDescGZIP(), []int{13} } func (x *GetContractRequest) GetId() int64 { @@ -1070,7 +945,7 @@ type UpdateContractRequest struct { func (x *UpdateContractRequest) Reset() { *x = UpdateContractRequest{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[15] + mi := &file_contract_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1083,7 +958,7 @@ func (x *UpdateContractRequest) String() string { func (*UpdateContractRequest) ProtoMessage() {} func (x *UpdateContractRequest) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[15] + mi := &file_contract_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1096,7 +971,7 @@ func (x *UpdateContractRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateContractRequest.ProtoReflect.Descriptor instead. func (*UpdateContractRequest) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{15} + return file_contract_proto_rawDescGZIP(), []int{14} } func (x *UpdateContractRequest) GetID() uint64 { @@ -1227,7 +1102,7 @@ type UpdateContractRespond struct { func (x *UpdateContractRespond) Reset() { *x = UpdateContractRespond{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[16] + mi := &file_contract_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1240,7 +1115,7 @@ func (x *UpdateContractRespond) String() string { func (*UpdateContractRespond) ProtoMessage() {} func (x *UpdateContractRespond) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[16] + mi := &file_contract_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1253,7 +1128,7 @@ func (x *UpdateContractRespond) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateContractRespond.ProtoReflect.Descriptor instead. func (*UpdateContractRespond) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{16} + return file_contract_proto_rawDescGZIP(), []int{15} } type UpdateContractTxRequest struct { @@ -1268,7 +1143,7 @@ type UpdateContractTxRequest struct { func (x *UpdateContractTxRequest) Reset() { *x = UpdateContractTxRequest{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[17] + mi := &file_contract_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1281,7 +1156,7 @@ func (x *UpdateContractTxRequest) String() string { func (*UpdateContractTxRequest) ProtoMessage() {} func (x *UpdateContractTxRequest) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[17] + mi := &file_contract_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1294,7 +1169,7 @@ func (x *UpdateContractTxRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateContractTxRequest.ProtoReflect.Descriptor instead. func (*UpdateContractTxRequest) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{17} + return file_contract_proto_rawDescGZIP(), []int{16} } func (x *UpdateContractTxRequest) GetID() int64 { @@ -1320,7 +1195,7 @@ type UpdateContractTxRespond struct { func (x *UpdateContractTxRespond) Reset() { *x = UpdateContractTxRespond{} if protoimpl.UnsafeEnabled { - mi := &file_contract_proto_msgTypes[18] + mi := &file_contract_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -1333,7 +1208,7 @@ func (x *UpdateContractTxRespond) String() string { func (*UpdateContractTxRespond) ProtoMessage() {} func (x *UpdateContractTxRespond) ProtoReflect() protoreflect.Message { - mi := &file_contract_proto_msgTypes[18] + mi := &file_contract_proto_msgTypes[17] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -1346,14 +1221,14 @@ func (x *UpdateContractTxRespond) ProtoReflect() protoreflect.Message { // Deprecated: Use UpdateContractTxRespond.ProtoReflect.Descriptor instead. func (*UpdateContractTxRespond) Descriptor() ([]byte, []int) { - return file_contract_proto_rawDescGZIP(), []int{18} + return file_contract_proto_rawDescGZIP(), []int{17} } var File_contract_proto protoreflect.FileDescriptor var file_contract_proto_rawDesc = []byte{ 0x0a, 0x0e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x12, 0x08, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x22, 0xf0, 0x02, 0x0a, 0x09, 0x43, + 0x12, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x22, 0xf0, 0x02, 0x0a, 0x09, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x5f, 0x75, 0x69, 0x64, 0x12, 0x1d, 0x0a, 0x09, 0x41, @@ -1395,7 +1270,7 @@ var file_contract_proto_rawDesc = []byte{ 0x52, 0x03, 0x6e, 0x75, 0x6d, 0x22, 0x54, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, 0x6d, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, - 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 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, 0x6b, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, @@ -1407,159 +1282,121 @@ var file_contract_proto_rawDesc = []byte{ 0x05, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x50, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, 0x2e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x73, 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, 0x7b, 0x0a, 0x13, 0x53, 0x69, - 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, - 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x48, 0x74, 0x6d, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x74, 0x6d, 0x6c, 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, - 0x07, 0x45, 0x6e, 0x76, 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x65, 0x6e, 0x76, 0x54, 0x79, 0x70, 0x65, 0x22, 0x15, 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x3d, - 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x17, 0x0a, - 0x15, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0xf4, 0x03, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, - 0x16, 0x0a, 0x06, 0x43, 0x61, 0x72, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x06, 0x63, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x67, 0x6d, 0x74, 0x55, - 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x67, 0x6d, - 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x77, 0x6f, - 0x72, 0x6b, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x77, - 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, - 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x07, 0x62, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, - 0x74, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x69, 0x65, 0x77, 0x55, - 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, - 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, - 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, - 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x45, 0x78, 0x70, - 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, - 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x6d, 0x0a, - 0x15, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, - 0x7a, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, - 0x7a, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, - 0x52, 0x04, 0x70, 0x61, 0x67, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x0e, 0x0a, 0x02, - 0x49, 0x44, 0x18, 0x04, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x22, 0x43, 0x0a, 0x15, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x52, 0x04, 0x44, 0x61, 0x74, - 0x61, 0x22, 0x24, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x22, 0xfd, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, - 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x61, 0x72, - 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x49, - 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, 0x67, 0x6d, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, - 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x6d, 0x67, 0x6d, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x18, 0x05, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, - 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x12, - 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, - 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x03, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x61, 0x74, - 0x63, 0x68, 0x49, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x61, 0x74, 0x63, - 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, - 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x18, 0x0a, 0x07, 0x56, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x44, - 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0b, 0x64, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, - 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, - 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, - 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, - 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, - 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, - 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x17, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, - 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, - 0x22, 0x4f, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, - 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x54, - 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x91, 0x01, 0x0a, 0x13, 0x53, + 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, + 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x48, 0x74, 0x6d, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x68, 0x74, 0x6d, 0x6c, + 0x54, 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x45, 0x6e, 0x76, 0x54, 0x79, 0x70, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x76, 0x54, 0x79, 0x70, 0x65, 0x22, 0x42, + 0x0a, 0x13, 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x07, 0x4a, 0x75, 0x6d, 0x70, 0x55, 0x72, 0x6c, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6a, 0x75, 0x6d, 0x70, 0x5f, 0x75, 0x72, 0x6c, + 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, + 0x73, 0x67, 0x22, 0x3d, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x24, 0x0a, 0x0d, 0x54, + 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, - 0x64, 0x22, 0x19, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x32, 0x81, 0x06, 0x0a, - 0x08, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x54, 0x0a, 0x0e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1f, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, - 0x5a, 0x0a, 0x10, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, - 0x67, 0x6d, 0x74, 0x12, 0x21, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, 0x6d, 0x74, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, - 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, - 0x6d, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0c, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1d, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, - 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, - 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0c, 0x53, - 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1d, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0e, 0x46, - 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1f, 0x2e, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, - 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, - 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, - 0x00, 0x12, 0x45, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x12, 0x1c, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x43, - 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, - 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x44, 0x61, 0x74, 0x61, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0e, 0x43, 0x6f, 0x6e, 0x74, - 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x2e, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, - 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, - 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x54, - 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, - 0x12, 0x1f, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, - 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x1a, 0x1f, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x64, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x12, 0x21, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, - 0x61, 0x63, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, - 0x63, 0x74, 0x54, 0x78, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x21, 0x2e, 0x43, 0x6f, - 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, - 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, - 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x64, 0x22, 0x55, 0x0a, 0x15, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x12, 0x2a, 0x0a, 0x08, 0x43, 0x6f, + 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x73, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x6d, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, + 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x12, 0x0a, + 0x04, 0x50, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x70, 0x61, 0x67, + 0x65, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0x52, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, + 0x12, 0x27, 0x0a, 0x04, 0x44, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x13, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x73, 0x52, 0x04, 0x44, 0x61, 0x74, 0x61, 0x12, 0x10, 0x0a, 0x03, 0x4d, 0x73, 0x67, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6d, 0x73, 0x67, 0x22, 0x24, 0x0a, 0x12, 0x47, + 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x02, 0x69, + 0x64, 0x22, 0xfd, 0x03, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, + 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, 0x04, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x55, + 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x75, 0x73, 0x65, + 0x72, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x43, 0x61, 0x72, 0x64, 0x49, 0x64, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x72, 0x64, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x4d, + 0x67, 0x6d, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x6d, 0x67, 0x6d, 0x74, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x41, + 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x61, 0x72, 0x74, 0x77, 0x6f, 0x72, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x49, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x61, + 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, + 0x12, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04, 0x74, + 0x79, 0x70, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x62, 0x61, 0x74, 0x63, 0x68, 0x49, 0x64, 0x12, 0x1c, 0x0a, + 0x09, 0x42, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x62, 0x61, 0x74, 0x63, 0x68, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x56, + 0x69, 0x65, 0x77, 0x55, 0x72, 0x6c, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x69, + 0x65, 0x77, 0x55, 0x72, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x44, 0x6f, 0x77, 0x6e, 0x6c, 0x6f, 0x61, + 0x64, 0x55, 0x72, 0x6c, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x6f, 0x77, 0x6e, + 0x6c, 0x6f, 0x61, 0x64, 0x55, 0x72, 0x6c, 0x12, 0x14, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, + 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1e, 0x0a, + 0x0a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x26, 0x0a, + 0x0e, 0x45, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x18, + 0x10, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x65, 0x78, 0x70, 0x69, 0x72, 0x61, 0x74, 0x69, 0x6f, + 0x6e, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x53, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x69, 0x67, 0x6e, 0x54, 0x69, 0x6d, + 0x65, 0x22, 0x17, 0x0a, 0x15, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x4f, 0x0a, 0x17, 0x55, 0x70, + 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x49, 0x44, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x03, 0x52, 0x02, 0x69, 0x64, 0x12, 0x24, 0x0a, 0x0d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x61, 0x63, + 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x55, + 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x32, 0x88, 0x04, 0x0a, 0x08, 0x43, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x12, 0x54, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x5a, 0x0a, 0x10, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, 0x6d, 0x74, 0x12, 0x21, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, 0x6d, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x21, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, + 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x67, 0x6d, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0c, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, + 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x4e, 0x0a, 0x0c, 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, + 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x2e, 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, + 0x53, 0x69, 0x67, 0x6e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x12, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x61, 0x63, 0x74, 0x2e, 0x46, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, 0x00, 0x12, 0x54, 0x0a, 0x0e, 0x43, + 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1f, 0x2e, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, + 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1f, + 0x2e, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x72, 0x61, + 0x63, 0x74, 0x54, 0x78, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x64, 0x22, + 0x00, 0x42, 0x0d, 0x5a, 0x0b, 0x2e, 0x2f, 0x3b, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x61, 0x63, 0x74, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1574,55 +1411,49 @@ func file_contract_proto_rawDescGZIP() []byte { return file_contract_proto_rawDescData } -var file_contract_proto_msgTypes = make([]protoimpl.MessageInfo, 19) +var file_contract_proto_msgTypes = make([]protoimpl.MessageInfo, 18) var file_contract_proto_goTypes = []interface{}{ - (*Contracts)(nil), // 0: Contract.Contracts - (*CreateContractRequest)(nil), // 1: Contract.CreateContractRequest - (*CreateContractRespond)(nil), // 2: Contract.CreateContractRespond - (*ContractListMgmtRequest)(nil), // 3: Contract.ContractListMgmtRequest - (*ContractListMgmtRespond)(nil), // 4: Contract.ContractListMgmtRespond - (*ContractListRequest)(nil), // 5: Contract.ContractListRequest - (*ContractListRespond)(nil), // 6: Contract.ContractListRespond - (*SignContractRequest)(nil), // 7: Contract.SignContractRequest - (*SignContractRespond)(nil), // 8: Contract.SignContractRespond - (*FinishContractRequest)(nil), // 9: Contract.FinishContractRequest - (*FinishContractRespond)(nil), // 10: Contract.FinishContractRespond - (*ContractData)(nil), // 11: Contract.ContractData - (*ContractTxListRequest)(nil), // 12: Contract.ContractTxListRequest - (*ContractTxListRespond)(nil), // 13: Contract.ContractTxListRespond - (*GetContractRequest)(nil), // 14: Contract.GetContractRequest - (*UpdateContractRequest)(nil), // 15: Contract.UpdateContractRequest - (*UpdateContractRespond)(nil), // 16: Contract.UpdateContractRespond - (*UpdateContractTxRequest)(nil), // 17: Contract.UpdateContractTxRequest - (*UpdateContractTxRespond)(nil), // 18: Contract.UpdateContractTxRespond + (*Contracts)(nil), // 0: contract.Contracts + (*CreateContractRequest)(nil), // 1: contract.CreateContractRequest + (*CreateContractRespond)(nil), // 2: contract.CreateContractRespond + (*ContractListMgmtRequest)(nil), // 3: contract.ContractListMgmtRequest + (*ContractListMgmtRespond)(nil), // 4: contract.ContractListMgmtRespond + (*ContractListRequest)(nil), // 5: contract.ContractListRequest + (*ContractListRespond)(nil), // 6: contract.ContractListRespond + (*SignContractRequest)(nil), // 7: contract.SignContractRequest + (*SignContractRespond)(nil), // 8: contract.SignContractRespond + (*FinishContractRequest)(nil), // 9: contract.FinishContractRequest + (*FinishContractRespond)(nil), // 10: contract.FinishContractRespond + (*ContractTxListRequest)(nil), // 11: contract.ContractTxListRequest + (*ContractTxListRespond)(nil), // 12: contract.ContractTxListRespond + (*GetContractRequest)(nil), // 13: contract.GetContractRequest + (*UpdateContractRequest)(nil), // 14: contract.UpdateContractRequest + (*UpdateContractRespond)(nil), // 15: contract.UpdateContractRespond + (*UpdateContractTxRequest)(nil), // 16: contract.UpdateContractTxRequest + (*UpdateContractTxRespond)(nil), // 17: contract.UpdateContractTxRespond } var file_contract_proto_depIdxs = []int32{ - 0, // 0: Contract.ContractListMgmtRespond.Data:type_name -> Contract.Contracts - 0, // 1: Contract.ContractListRespond.Data:type_name -> Contract.Contracts - 11, // 2: Contract.ContractTxListRespond.Data:type_name -> Contract.ContractData - 1, // 3: Contract.Contract.CreateContract:input_type -> Contract.CreateContractRequest - 3, // 4: Contract.Contract.ContractListMgmt:input_type -> Contract.ContractListMgmtRequest - 5, // 5: Contract.Contract.ContractList:input_type -> Contract.ContractListRequest - 7, // 6: Contract.Contract.SignContract:input_type -> Contract.SignContractRequest - 9, // 7: Contract.Contract.FinishContract:input_type -> Contract.FinishContractRequest - 14, // 8: Contract.Contract.GetContract:input_type -> Contract.GetContractRequest - 12, // 9: Contract.Contract.ContractTxList:input_type -> Contract.ContractTxListRequest - 15, // 10: Contract.Contract.UpdateContract:input_type -> Contract.UpdateContractRequest - 17, // 11: Contract.Contract.UpdateContractTx:input_type -> Contract.UpdateContractTxRequest - 2, // 12: Contract.Contract.CreateContract:output_type -> Contract.CreateContractRespond - 4, // 13: Contract.Contract.ContractListMgmt:output_type -> Contract.ContractListMgmtRespond - 6, // 14: Contract.Contract.ContractList:output_type -> Contract.ContractListRespond - 8, // 15: Contract.Contract.SignContract:output_type -> Contract.SignContractRespond - 10, // 16: Contract.Contract.FinishContract:output_type -> Contract.FinishContractRespond - 11, // 17: Contract.Contract.GetContract:output_type -> Contract.ContractData - 13, // 18: Contract.Contract.ContractTxList:output_type -> Contract.ContractTxListRespond - 16, // 19: Contract.Contract.UpdateContract:output_type -> Contract.UpdateContractRespond - 18, // 20: Contract.Contract.UpdateContractTx:output_type -> Contract.UpdateContractTxRespond - 12, // [12:21] is the sub-list for method output_type - 3, // [3:12] is the sub-list for method input_type - 3, // [3:3] is the sub-list for extension type_name - 3, // [3:3] is the sub-list for extension extendee - 0, // [0:3] is the sub-list for field type_name + 0, // 0: contract.ContractListMgmtRespond.Data:type_name -> contract.Contracts + 0, // 1: contract.ContractListRespond.Data:type_name -> contract.Contracts + 0, // 2: contract.FinishContractRespond.Contract:type_name -> contract.Contracts + 0, // 3: contract.ContractTxListRespond.Data:type_name -> contract.Contracts + 1, // 4: contract.Contract.CreateContract:input_type -> contract.CreateContractRequest + 3, // 5: contract.Contract.ContractListMgmt:input_type -> contract.ContractListMgmtRequest + 5, // 6: contract.Contract.ContractList:input_type -> contract.ContractListRequest + 7, // 7: contract.Contract.SignContract:input_type -> contract.SignContractRequest + 9, // 8: contract.Contract.FinishContract:input_type -> contract.FinishContractRequest + 11, // 9: contract.Contract.ContractTxList:input_type -> contract.ContractTxListRequest + 2, // 10: contract.Contract.CreateContract:output_type -> contract.CreateContractRespond + 4, // 11: contract.Contract.ContractListMgmt:output_type -> contract.ContractListMgmtRespond + 6, // 12: contract.Contract.ContractList:output_type -> contract.ContractListRespond + 8, // 13: contract.Contract.SignContract:output_type -> contract.SignContractRespond + 10, // 14: contract.Contract.FinishContract:output_type -> contract.FinishContractRespond + 12, // 15: contract.Contract.ContractTxList:output_type -> contract.ContractTxListRespond + 10, // [10:16] is the sub-list for method output_type + 4, // [4:10] is the sub-list for method input_type + 4, // [4:4] is the sub-list for extension type_name + 4, // [4:4] is the sub-list for extension extendee + 0, // [0:4] is the sub-list for field type_name } func init() { file_contract_proto_init() } @@ -1764,18 +1595,6 @@ func file_contract_proto_init() { } } file_contract_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ContractData); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_contract_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContractTxListRequest); i { case 0: return &v.state @@ -1787,7 +1606,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*ContractTxListRespond); i { case 0: return &v.state @@ -1799,7 +1618,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetContractRequest); i { case 0: return &v.state @@ -1811,7 +1630,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateContractRequest); i { case 0: return &v.state @@ -1823,7 +1642,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateContractRespond); i { case 0: return &v.state @@ -1835,7 +1654,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateContractTxRequest); i { case 0: return &v.state @@ -1847,7 +1666,7 @@ func file_contract_proto_init() { return nil } } - file_contract_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { + file_contract_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*UpdateContractTxRespond); i { case 0: return &v.state @@ -1866,7 +1685,7 @@ func file_contract_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_contract_proto_rawDesc, NumEnums: 0, - NumMessages: 19, + NumMessages: 18, NumExtensions: 0, NumServices: 1, }, diff --git a/pb/contract/contract.proto b/pb/contract/contract.proto index ed12a2e..ab6058a 100644 --- a/pb/contract/contract.proto +++ b/pb/contract/contract.proto @@ -7,12 +7,13 @@ service Contract { rpc ContractListMgmt (ContractListMgmtRequest) returns (ContractListMgmtRespond) {} rpc ContractList (ContractListRequest) returns (ContractListRespond) {} rpc SignContract (SignContractRequest) returns (SignContractRespond) {} - rpc FinishContract (FinishContractRequest) returns (FinishContractRespond) {} - rpc GetContract (GetContractRequest) returns (ContractData) {} rpc ContractTxList (ContractTxListRequest) returns (ContractTxListRespond) {} - rpc UpdateContract(UpdateContractRequest) returns (UpdateContractRespond) {} - rpc UpdateContractTx(UpdateContractTxRequest) returns (UpdateContractTxRespond) {} + + // rpc GetContract (GetContractRequest) returns (ContractData) {} + + // rpc UpdateContract(UpdateContractRequest) returns (UpdateContractRespond) {} + // rpc UpdateContractTx(UpdateContractTxRequest) returns (UpdateContractTxRespond) {} } message Contracts{ @@ -67,52 +68,36 @@ message ContractListRespond { message SignContractRequest { int32 ID = 1 [json_name = "id"]; int32 ContractId = 2 [json_name="contractId"]; - string HtmlType = 3 [json_name="htmlType"]; - string EnvType = 4 [json_name= "envType"]; + string Token = 3 [json_name="token"]; + string HtmlType = 4 [json_name="htmlType"]; + string EnvType = 5 [json_name= "envType"]; } message SignContractRespond { - + string JumpUrl = 1 [json_name = "jump_url"]; + string Msg = 2 [json_name = "msg"]; } message FinishContractRequest { string TransactionId = 1 [json_name="transactionId"]; - } message FinishContractRespond { - + Contracts Contract = 1 [json_name = "msg"]; + string Msg = 2 [json_name = "msg"]; } -message ContractData{ - uint64 ID = 1[json_name="id"]; - int64 UserId = 2[json_name="userId"]; - string CardId = 3[json_name="cardId"]; - string MgmtUserId = 4[json_name="mgmtUserId"]; - string ArtworkId = 5[json_name="artworkId"]; - string ContractId = 6[json_name="contractId"]; - string TransactionId = 7[json_name="transactionId"]; - int64 Type = 8[json_name="type"]; - int64 BatchId = 9[json_name="batchId"]; - string BatchName = 10[json_name="batchName"]; - string ViewUrl = 11[json_name="viewUrl"]; - string DownloadUrl = 12[json_name="downloadUrl"]; - int64 State = 13[json_name="state"]; - string UpdateTime = 14 [json_name="updateTime"]; - string CreateTime = 15[json_name="createTime"]; - string ExpirationTime = 16 [json_name="expirationTime"]; - string SignTime = 17 [json_name="signTime"]; -} message ContractTxListRequest { - int64 PageSize = 1 [json_name="pageSize"]; - int64 Page = 2 [json_name="page"]; - int64 State = 3 [json_name="state"]; - int64 ID =4 [json_name = "id"]; + int32 ID = 1 [json_name = "id"]; + int32 PageSize = 2 [json_name="pageSize"]; + int32 Page = 3 [json_name="page"]; + int32 State = 4 [json_name="state"]; } message ContractTxListRespond { - repeated ContractData Data =1; + repeated Contracts Data =1; + string Msg = 2 [json_name = "msg"]; } message GetContractRequest { diff --git a/pb/contract/contract.validator.pb.go b/pb/contract/contract.validator.pb.go index 0a62040..093ce2a 100644 --- a/pb/contract/contract.validator.pb.go +++ b/pb/contract/contract.validator.pb.go @@ -60,9 +60,11 @@ func (this *FinishContractRequest) Validate() error { return nil } func (this *FinishContractRespond) Validate() error { - return nil -} -func (this *ContractData) Validate() error { + if this.Contract != nil { + if err := github_com_mwitkow_go_proto_validators.CallValidatorIfExists(this.Contract); err != nil { + return github_com_mwitkow_go_proto_validators.FieldError("Contract", err) + } + } return nil } func (this *ContractTxListRequest) Validate() error { diff --git a/pb/contract/contract_triple.pb.go b/pb/contract/contract_triple.pb.go index 2a2e6e6..325e8a5 100644 --- a/pb/contract/contract_triple.pb.go +++ b/pb/contract/contract_triple.pb.go @@ -33,10 +33,7 @@ type ContractClient interface { ContractList(ctx context.Context, in *ContractListRequest, opts ...grpc_go.CallOption) (*ContractListRespond, common.ErrorWithAttachment) SignContract(ctx context.Context, in *SignContractRequest, opts ...grpc_go.CallOption) (*SignContractRespond, common.ErrorWithAttachment) FinishContract(ctx context.Context, in *FinishContractRequest, opts ...grpc_go.CallOption) (*FinishContractRespond, common.ErrorWithAttachment) - GetContract(ctx context.Context, in *GetContractRequest, opts ...grpc_go.CallOption) (*ContractData, common.ErrorWithAttachment) ContractTxList(ctx context.Context, in *ContractTxListRequest, opts ...grpc_go.CallOption) (*ContractTxListRespond, common.ErrorWithAttachment) - UpdateContract(ctx context.Context, in *UpdateContractRequest, opts ...grpc_go.CallOption) (*UpdateContractRespond, common.ErrorWithAttachment) - UpdateContractTx(ctx context.Context, in *UpdateContractTxRequest, opts ...grpc_go.CallOption) (*UpdateContractTxRespond, common.ErrorWithAttachment) } type contractClient struct { @@ -49,10 +46,7 @@ type ContractClientImpl struct { ContractList func(ctx context.Context, in *ContractListRequest) (*ContractListRespond, error) SignContract func(ctx context.Context, in *SignContractRequest) (*SignContractRespond, error) FinishContract func(ctx context.Context, in *FinishContractRequest) (*FinishContractRespond, error) - GetContract func(ctx context.Context, in *GetContractRequest) (*ContractData, error) ContractTxList func(ctx context.Context, in *ContractTxListRequest) (*ContractTxListRespond, error) - UpdateContract func(ctx context.Context, in *UpdateContractRequest) (*UpdateContractRespond, error) - UpdateContractTx func(ctx context.Context, in *UpdateContractTxRequest) (*UpdateContractTxRespond, error) } func (c *ContractClientImpl) GetDubboStub(cc *triple.TripleConn) ContractClient { @@ -60,7 +54,7 @@ func (c *ContractClientImpl) GetDubboStub(cc *triple.TripleConn) ContractClient } func (c *ContractClientImpl) XXX_InterfaceName() string { - return "Contract.Contract" + return "contract.Contract" } func NewContractClient(cc *triple.TripleConn) ContractClient { @@ -97,30 +91,12 @@ func (c *contractClient) FinishContract(ctx context.Context, in *FinishContractR return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/FinishContract", in, out) } -func (c *contractClient) GetContract(ctx context.Context, in *GetContractRequest, opts ...grpc_go.CallOption) (*ContractData, common.ErrorWithAttachment) { - out := new(ContractData) - interfaceKey := ctx.Value(constant.InterfaceKey).(string) - return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/GetContract", in, out) -} - func (c *contractClient) ContractTxList(ctx context.Context, in *ContractTxListRequest, opts ...grpc_go.CallOption) (*ContractTxListRespond, common.ErrorWithAttachment) { out := new(ContractTxListRespond) interfaceKey := ctx.Value(constant.InterfaceKey).(string) return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/ContractTxList", in, out) } -func (c *contractClient) UpdateContract(ctx context.Context, in *UpdateContractRequest, opts ...grpc_go.CallOption) (*UpdateContractRespond, common.ErrorWithAttachment) { - out := new(UpdateContractRespond) - interfaceKey := ctx.Value(constant.InterfaceKey).(string) - return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateContract", in, out) -} - -func (c *contractClient) UpdateContractTx(ctx context.Context, in *UpdateContractTxRequest, opts ...grpc_go.CallOption) (*UpdateContractTxRespond, common.ErrorWithAttachment) { - out := new(UpdateContractTxRespond) - interfaceKey := ctx.Value(constant.InterfaceKey).(string) - return out, c.cc.Invoke(ctx, "/"+interfaceKey+"/UpdateContractTx", in, out) -} - // ContractServer is the server API for Contract service. // All implementations must embed UnimplementedContractServer // for forward compatibility @@ -130,10 +106,7 @@ type ContractServer interface { ContractList(context.Context, *ContractListRequest) (*ContractListRespond, error) SignContract(context.Context, *SignContractRequest) (*SignContractRespond, error) FinishContract(context.Context, *FinishContractRequest) (*FinishContractRespond, error) - GetContract(context.Context, *GetContractRequest) (*ContractData, error) ContractTxList(context.Context, *ContractTxListRequest) (*ContractTxListRespond, error) - UpdateContract(context.Context, *UpdateContractRequest) (*UpdateContractRespond, error) - UpdateContractTx(context.Context, *UpdateContractTxRequest) (*UpdateContractTxRespond, error) mustEmbedUnimplementedContractServer() } @@ -157,18 +130,9 @@ func (UnimplementedContractServer) SignContract(context.Context, *SignContractRe func (UnimplementedContractServer) FinishContract(context.Context, *FinishContractRequest) (*FinishContractRespond, error) { return nil, status.Errorf(codes.Unimplemented, "method FinishContract not implemented") } -func (UnimplementedContractServer) GetContract(context.Context, *GetContractRequest) (*ContractData, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetContract not implemented") -} func (UnimplementedContractServer) ContractTxList(context.Context, *ContractTxListRequest) (*ContractTxListRespond, error) { return nil, status.Errorf(codes.Unimplemented, "method ContractTxList not implemented") } -func (UnimplementedContractServer) UpdateContract(context.Context, *UpdateContractRequest) (*UpdateContractRespond, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateContract not implemented") -} -func (UnimplementedContractServer) UpdateContractTx(context.Context, *UpdateContractTxRequest) (*UpdateContractTxRespond, error) { - return nil, status.Errorf(codes.Unimplemented, "method UpdateContractTx not implemented") -} func (s *UnimplementedContractServer) XXX_SetProxyImpl(impl protocol.Invoker) { s.proxyImpl = impl } @@ -181,7 +145,7 @@ func (s *UnimplementedContractServer) XXX_ServiceDesc() *grpc_go.ServiceDesc { return &Contract_ServiceDesc } func (s *UnimplementedContractServer) XXX_InterfaceName() string { - return "Contract.Contract" + return "contract.Contract" } func (UnimplementedContractServer) mustEmbedUnimplementedContractServer() {} @@ -342,35 +306,6 @@ func _Contract_FinishContract_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } -func _Contract_GetContract_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { - in := new(GetContractRequest) - 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("GetContract", 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 _Contract_ContractTxList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { in := new(ContractTxListRequest) if err := dec(in); err != nil { @@ -400,69 +335,11 @@ func _Contract_ContractTxList_Handler(srv interface{}, ctx context.Context, dec return interceptor(ctx, in, info, handler) } -func _Contract_UpdateContract_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateContractRequest) - 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("UpdateContract", 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 _Contract_UpdateContractTx_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc_go.UnaryServerInterceptor) (interface{}, error) { - in := new(UpdateContractTxRequest) - 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("UpdateContractTx", 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) -} - // Contract_ServiceDesc is the grpc_go.ServiceDesc for Contract service. // It's only intended for direct use with grpc_go.RegisterService, // and not to be introspected or modified (even as a copy) var Contract_ServiceDesc = grpc_go.ServiceDesc{ - ServiceName: "Contract.Contract", + ServiceName: "contract.Contract", HandlerType: (*ContractServer)(nil), Methods: []grpc_go.MethodDesc{ { @@ -485,22 +362,10 @@ var Contract_ServiceDesc = grpc_go.ServiceDesc{ MethodName: "FinishContract", Handler: _Contract_FinishContract_Handler, }, - { - MethodName: "GetContract", - Handler: _Contract_GetContract_Handler, - }, { MethodName: "ContractTxList", Handler: _Contract_ContractTxList_Handler, }, - { - MethodName: "UpdateContract", - Handler: _Contract_UpdateContract_Handler, - }, - { - MethodName: "UpdateContractTx", - Handler: _Contract_UpdateContractTx_Handler, - }, }, Streams: []grpc_go.StreamDesc{}, Metadata: "contract.proto",