You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1353 lines
45 KiB
1353 lines
45 KiB
//*
|
|
// @Auth:ShenZ
|
|
// @Description:
|
|
|
|
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
// versions:
|
|
// protoc-gen-go v1.26.0
|
|
// protoc v3.18.1
|
|
// source: product.proto
|
|
|
|
package proto
|
|
|
|
import (
|
|
context "context"
|
|
grpc "google.golang.org/grpc"
|
|
codes "google.golang.org/grpc/codes"
|
|
status "google.golang.org/grpc/status"
|
|
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
reflect "reflect"
|
|
sync "sync"
|
|
)
|
|
|
|
const (
|
|
// Verify that this generated code is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
|
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
|
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
|
)
|
|
|
|
// *
|
|
// "id": 115,
|
|
// "name": "马歇尔MARSHALL STANMOREⅡ无线蓝牙音响家用复古重低音小音箱",
|
|
// "startingPrice": 3300,
|
|
// "mainPicture": "https://msb-edu-prod.oss-cn-beijing.aliyuncs.com/mall-product/product/d4f1f19e-2e90-4ac5-bbe3-1eba02085a0f.jpg",
|
|
// "labelList": [ ],
|
|
// "singleBuyLimit": null,
|
|
// "isEnable": null,
|
|
// "productType": null
|
|
type Product struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
StartingPrice int32 `protobuf:"varint,3,opt,name=startingPrice,proto3" json:"startingPrice,omitempty"`
|
|
MainPicture string `protobuf:"bytes,4,opt,name=mainPicture,proto3" json:"mainPicture,omitempty"`
|
|
LabelList map[string]string `protobuf:"bytes,5,rep,name=labelList,proto3" json:"labelList,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
|
|
SingleBuyLimit int32 `protobuf:"varint,6,opt,name=singleBuyLimit,proto3" json:"singleBuyLimit,omitempty"`
|
|
Token string `protobuf:"bytes,7,opt,name=token,proto3" json:"token,omitempty"`
|
|
IsEnable bool `protobuf:"varint,8,opt,name=isEnable,proto3" json:"isEnable,omitempty"`
|
|
ProductType int32 `protobuf:"varint,9,opt,name=productType,proto3" json:"productType,omitempty"`
|
|
}
|
|
|
|
func (x *Product) Reset() {
|
|
*x = Product{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[0]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *Product) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*Product) ProtoMessage() {}
|
|
|
|
func (x *Product) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[0]
|
|
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 Product.ProtoReflect.Descriptor instead.
|
|
func (*Product) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{0}
|
|
}
|
|
|
|
func (x *Product) GetId() int32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Product) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Product) GetStartingPrice() int32 {
|
|
if x != nil {
|
|
return x.StartingPrice
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Product) GetMainPicture() string {
|
|
if x != nil {
|
|
return x.MainPicture
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Product) GetLabelList() map[string]string {
|
|
if x != nil {
|
|
return x.LabelList
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *Product) GetSingleBuyLimit() int32 {
|
|
if x != nil {
|
|
return x.SingleBuyLimit
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *Product) GetToken() string {
|
|
if x != nil {
|
|
return x.Token
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *Product) GetIsEnable() bool {
|
|
if x != nil {
|
|
return x.IsEnable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *Product) GetProductType() int32 {
|
|
if x != nil {
|
|
return x.ProductType
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 请求 request struct
|
|
type PageReq struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Length int32 `protobuf:"varint,1,opt,name=length,proto3" json:"length,omitempty"`
|
|
PageIndex int32 `protobuf:"varint,2,opt,name=pageIndex,proto3" json:"pageIndex,omitempty"`
|
|
}
|
|
|
|
func (x *PageReq) Reset() {
|
|
*x = PageReq{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[1]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PageReq) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PageReq) ProtoMessage() {}
|
|
|
|
func (x *PageReq) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[1]
|
|
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 PageReq.ProtoReflect.Descriptor instead.
|
|
func (*PageReq) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{1}
|
|
}
|
|
|
|
func (x *PageReq) GetLength() int32 {
|
|
if x != nil {
|
|
return x.Length
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PageReq) GetPageIndex() int32 {
|
|
if x != nil {
|
|
return x.PageIndex
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
type PageResp struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Product []*Product `protobuf:"bytes,1,rep,name=product,proto3" json:"product,omitempty"`
|
|
Total int64 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
|
|
Rows int64 `protobuf:"varint,3,opt,name=rows,proto3" json:"rows,omitempty"`
|
|
}
|
|
|
|
func (x *PageResp) Reset() {
|
|
*x = PageResp{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[2]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *PageResp) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*PageResp) ProtoMessage() {}
|
|
|
|
func (x *PageResp) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[2]
|
|
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 PageResp.ProtoReflect.Descriptor instead.
|
|
func (*PageResp) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{2}
|
|
}
|
|
|
|
func (x *PageResp) GetProduct() []*Product {
|
|
if x != nil {
|
|
return x.Product
|
|
}
|
|
return nil
|
|
}
|
|
|
|
func (x *PageResp) GetTotal() int64 {
|
|
if x != nil {
|
|
return x.Total
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *PageResp) GetRows() int64 {
|
|
if x != nil {
|
|
return x.Rows
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
// ID int32 `json:"id"`
|
|
// Name string `json:"name"`
|
|
// ProductType int32 `gorm:"default:1" json:"productType"`
|
|
// CategoryId int32 `json:"categoryId"`
|
|
// StartingPrice float32 `json:"startingPrice"`
|
|
// TotalStock int32 `gorm:"default:1234" json:"totalStock"`
|
|
// MainPicture string `gorm:"default:1" json:"mainPicture"`
|
|
// RemoteAreaPostage float32 `json:"remoteAreaPostage"`
|
|
// SingleBuyLimit int32 `json:"singleBuyLimit"`
|
|
// IsEnable bool `json:"isEnable"`
|
|
// Remark string `gorm:"default:1" json:"remark"`
|
|
// CreateUser int32 `gorm:"default:1" json:"createUser"`
|
|
// CreateTime time.Time `json:"createTime"`
|
|
// UpdateUser int32 `json:"updateUser"`
|
|
// UpdateTime time.Time `json:"updateTime"`
|
|
// IsDeleted bool `json:"isDeleted"`
|
|
// Detail string `gorm:"dtail" json:"detail"` //商品详情页面
|
|
// PictureList []string `gorm:"pictureList" json:"pictureList"` //商品详情需要的图片
|
|
type ProductDetail struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
ProductType int32 `protobuf:"varint,3,opt,name=productType,proto3" json:"productType,omitempty"`
|
|
CategoryId int32 `protobuf:"varint,4,opt,name=categoryId,proto3" json:"categoryId,omitempty"`
|
|
StartingPrice float32 `protobuf:"fixed32,5,opt,name=startingPrice,proto3" json:"startingPrice,omitempty"`
|
|
TotalStock int32 `protobuf:"varint,6,opt,name=totalStock,proto3" json:"totalStock,omitempty"`
|
|
MainPicture string `protobuf:"bytes,7,opt,name=mainPicture,proto3" json:"mainPicture,omitempty"`
|
|
RemoteAreaPostage float32 `protobuf:"fixed32,8,opt,name=remoteAreaPostage,proto3" json:"remoteAreaPostage,omitempty"`
|
|
SingleBuyLimit int32 `protobuf:"varint,9,opt,name=singleBuyLimit,proto3" json:"singleBuyLimit,omitempty"`
|
|
IsEnable bool `protobuf:"varint,10,opt,name=isEnable,proto3" json:"isEnable,omitempty"`
|
|
Remark string `protobuf:"bytes,11,opt,name=remark,proto3" json:"remark,omitempty"`
|
|
CreateUser int32 `protobuf:"varint,12,opt,name=createUser,proto3" json:"createUser,omitempty"`
|
|
CreateTime string `protobuf:"bytes,13,opt,name=createTime,proto3" json:"createTime,omitempty"` //go get google.golang.org/protobuf/ptypes/timestamp
|
|
UpdateUser int32 `protobuf:"varint,14,opt,name=updateUser,proto3" json:"updateUser,omitempty"`
|
|
UpdateTime string `protobuf:"bytes,15,opt,name=updateTime,proto3" json:"updateTime,omitempty"`
|
|
IsDeleted bool `protobuf:"varint,16,opt,name=IsDeleted,proto3" json:"IsDeleted,omitempty"`
|
|
Detail string `protobuf:"bytes,17,opt,name=detail,proto3" json:"detail,omitempty"`
|
|
PictureList string `protobuf:"bytes,18,opt,name=pictureList,proto3" json:"pictureList,omitempty"`
|
|
}
|
|
|
|
func (x *ProductDetail) Reset() {
|
|
*x = ProductDetail{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[3]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductDetail) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductDetail) ProtoMessage() {}
|
|
|
|
func (x *ProductDetail) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[3]
|
|
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 ProductDetail.ProtoReflect.Descriptor instead.
|
|
func (*ProductDetail) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{3}
|
|
}
|
|
|
|
func (x *ProductDetail) GetId() int32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetProductType() int32 {
|
|
if x != nil {
|
|
return x.ProductType
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetCategoryId() int32 {
|
|
if x != nil {
|
|
return x.CategoryId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetStartingPrice() float32 {
|
|
if x != nil {
|
|
return x.StartingPrice
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetTotalStock() int32 {
|
|
if x != nil {
|
|
return x.TotalStock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetMainPicture() string {
|
|
if x != nil {
|
|
return x.MainPicture
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetRemoteAreaPostage() float32 {
|
|
if x != nil {
|
|
return x.RemoteAreaPostage
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetSingleBuyLimit() int32 {
|
|
if x != nil {
|
|
return x.SingleBuyLimit
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetIsEnable() bool {
|
|
if x != nil {
|
|
return x.IsEnable
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ProductDetail) GetRemark() string {
|
|
if x != nil {
|
|
return x.Remark
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetCreateUser() int32 {
|
|
if x != nil {
|
|
return x.CreateUser
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetCreateTime() string {
|
|
if x != nil {
|
|
return x.CreateTime
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetUpdateUser() int32 {
|
|
if x != nil {
|
|
return x.UpdateUser
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductDetail) GetUpdateTime() string {
|
|
if x != nil {
|
|
return x.UpdateTime
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetIsDeleted() bool {
|
|
if x != nil {
|
|
return x.IsDeleted
|
|
}
|
|
return false
|
|
}
|
|
|
|
func (x *ProductDetail) GetDetail() string {
|
|
if x != nil {
|
|
return x.Detail
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductDetail) GetPictureList() string {
|
|
if x != nil {
|
|
return x.PictureList
|
|
}
|
|
return ""
|
|
}
|
|
|
|
// 请求 request struct
|
|
type ProductDetailReq struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
}
|
|
|
|
func (x *ProductDetailReq) Reset() {
|
|
*x = ProductDetailReq{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[4]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductDetailReq) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductDetailReq) ProtoMessage() {}
|
|
|
|
func (x *ProductDetailReq) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[4]
|
|
if protoimpl.UnsafeEnabled && x != nil {
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
if ms.LoadMessageInfo() == nil {
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
return ms
|
|
}
|
|
return mi.MessageOf(x)
|
|
}
|
|
|
|
// Deprecated: Use ProductDetailReq.ProtoReflect.Descriptor instead.
|
|
func (*ProductDetailReq) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{4}
|
|
}
|
|
|
|
func (x *ProductDetailReq) GetId() int32 {
|
|
if x != nil {
|
|
return x.Id
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
type ProductDetailResp struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ProductDetail []*ProductDetail `protobuf:"bytes,1,rep,name=productDetail,proto3" json:"productDetail,omitempty"`
|
|
}
|
|
|
|
func (x *ProductDetailResp) Reset() {
|
|
*x = ProductDetailResp{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[5]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductDetailResp) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductDetailResp) ProtoMessage() {}
|
|
|
|
func (x *ProductDetailResp) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[5]
|
|
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 ProductDetailResp.ProtoReflect.Descriptor instead.
|
|
func (*ProductDetailResp) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{5}
|
|
}
|
|
|
|
func (x *ProductDetailResp) GetProductDetail() []*ProductDetail {
|
|
if x != nil {
|
|
return x.ProductDetail
|
|
}
|
|
return nil
|
|
}
|
|
|
|
// SkuId int32 `gorm:"column:id" json:"skuId"`
|
|
// Name string
|
|
// AttributeSymbolList string `gorm:"column:attribute_symbolList" json:"attributeSymbolList"`
|
|
// SellPrice float32 `gorm:"column:sell_price" json:"sellPrice"`
|
|
// Stock int32 `gorm:"default:1"`
|
|
type ProductSku struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
SkuId int32 `protobuf:"varint,1,opt,name=skuId,proto3" json:"skuId,omitempty"`
|
|
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
|
|
AttributeSymbolList string `protobuf:"bytes,3,opt,name=attributeSymbolList,proto3" json:"attributeSymbolList,omitempty"`
|
|
SellPrice float32 `protobuf:"fixed32,4,opt,name=sellPrice,proto3" json:"sellPrice,omitempty"`
|
|
Stock int32 `protobuf:"varint,5,opt,name=stock,proto3" json:"stock,omitempty"`
|
|
}
|
|
|
|
func (x *ProductSku) Reset() {
|
|
*x = ProductSku{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[6]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductSku) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductSku) ProtoMessage() {}
|
|
|
|
func (x *ProductSku) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[6]
|
|
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 ProductSku.ProtoReflect.Descriptor instead.
|
|
func (*ProductSku) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{6}
|
|
}
|
|
|
|
func (x *ProductSku) GetSkuId() int32 {
|
|
if x != nil {
|
|
return x.SkuId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductSku) GetName() string {
|
|
if x != nil {
|
|
return x.Name
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductSku) GetAttributeSymbolList() string {
|
|
if x != nil {
|
|
return x.AttributeSymbolList
|
|
}
|
|
return ""
|
|
}
|
|
|
|
func (x *ProductSku) GetSellPrice() float32 {
|
|
if x != nil {
|
|
return x.SellPrice
|
|
}
|
|
return 0
|
|
}
|
|
|
|
func (x *ProductSku) GetStock() int32 {
|
|
if x != nil {
|
|
return x.Stock
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// 请求 request struct
|
|
type ProductSkuReq struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ProductId int32 `protobuf:"varint,1,opt,name=productId,proto3" json:"productId,omitempty"`
|
|
}
|
|
|
|
func (x *ProductSkuReq) Reset() {
|
|
*x = ProductSkuReq{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[7]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductSkuReq) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductSkuReq) ProtoMessage() {}
|
|
|
|
func (x *ProductSkuReq) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[7]
|
|
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 ProductSkuReq.ProtoReflect.Descriptor instead.
|
|
func (*ProductSkuReq) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{7}
|
|
}
|
|
|
|
func (x *ProductSkuReq) GetProductId() int32 {
|
|
if x != nil {
|
|
return x.ProductId
|
|
}
|
|
return 0
|
|
}
|
|
|
|
// *
|
|
type ProductSkuResp struct {
|
|
state protoimpl.MessageState
|
|
sizeCache protoimpl.SizeCache
|
|
unknownFields protoimpl.UnknownFields
|
|
|
|
ProductSku []*ProductSku `protobuf:"bytes,1,rep,name=productSku,proto3" json:"productSku,omitempty"`
|
|
}
|
|
|
|
func (x *ProductSkuResp) Reset() {
|
|
*x = ProductSkuResp{}
|
|
if protoimpl.UnsafeEnabled {
|
|
mi := &file_product_proto_msgTypes[8]
|
|
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
ms.StoreMessageInfo(mi)
|
|
}
|
|
}
|
|
|
|
func (x *ProductSkuResp) String() string {
|
|
return protoimpl.X.MessageStringOf(x)
|
|
}
|
|
|
|
func (*ProductSkuResp) ProtoMessage() {}
|
|
|
|
func (x *ProductSkuResp) ProtoReflect() protoreflect.Message {
|
|
mi := &file_product_proto_msgTypes[8]
|
|
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 ProductSkuResp.ProtoReflect.Descriptor instead.
|
|
func (*ProductSkuResp) Descriptor() ([]byte, []int) {
|
|
return file_product_proto_rawDescGZIP(), []int{8}
|
|
}
|
|
|
|
func (x *ProductSkuResp) GetProductSku() []*ProductSku {
|
|
if x != nil {
|
|
return x.ProductSku
|
|
}
|
|
return nil
|
|
}
|
|
|
|
var File_product_proto protoreflect.FileDescriptor
|
|
|
|
var file_product_proto_rawDesc = []byte{
|
|
0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
|
|
0x05, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xec, 0x02, 0x0a, 0x07, 0x50, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02,
|
|
0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69,
|
|
0x6e, 0x67, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x73,
|
|
0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x20, 0x0a, 0x0b,
|
|
0x6d, 0x61, 0x69, 0x6e, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
|
|
0x09, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x50, 0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x3b,
|
|
0x0a, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x05, 0x20, 0x03, 0x28,
|
|
0x0b, 0x32, 0x1d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63,
|
|
0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79,
|
|
0x52, 0x09, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x26, 0x0a, 0x0e, 0x73,
|
|
0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x75, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x06, 0x20,
|
|
0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x75, 0x79, 0x4c, 0x69,
|
|
0x6d, 0x69, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x07, 0x20, 0x01,
|
|
0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x73, 0x45,
|
|
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08, 0x69, 0x73, 0x45,
|
|
0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74,
|
|
0x54, 0x79, 0x70, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x64,
|
|
0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x1a, 0x3c, 0x0a, 0x0e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
|
|
0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79,
|
|
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76,
|
|
0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75,
|
|
0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3f, 0x0a, 0x07, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
|
|
0x12, 0x16, 0x0a, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
|
|
0x52, 0x06, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1c, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65,
|
|
0x49, 0x6e, 0x64, 0x65, 0x78, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x70, 0x61, 0x67,
|
|
0x65, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x22, 0x5e, 0x0a, 0x08, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65,
|
|
0x73, 0x70, 0x12, 0x28, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x18, 0x01, 0x20,
|
|
0x03, 0x28, 0x0b, 0x32, 0x0e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64,
|
|
0x75, 0x63, 0x74, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05,
|
|
0x74, 0x6f, 0x74, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x05, 0x74, 0x6f, 0x74,
|
|
0x61, 0x6c, 0x12, 0x12, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x03,
|
|
0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x22, 0xbf, 0x04, 0x0a, 0x0d, 0x50, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01,
|
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
|
|
0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b,
|
|
0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
|
|
0x05, 0x52, 0x0b, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e,
|
|
0x0a, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x18, 0x04, 0x20, 0x01,
|
|
0x28, 0x05, 0x52, 0x0a, 0x63, 0x61, 0x74, 0x65, 0x67, 0x6f, 0x72, 0x79, 0x49, 0x64, 0x12, 0x24,
|
|
0x0a, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x69, 0x63, 0x65, 0x18,
|
|
0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x72, 0x74, 0x69, 0x6e, 0x67, 0x50,
|
|
0x72, 0x69, 0x63, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53, 0x74, 0x6f,
|
|
0x63, 0x6b, 0x18, 0x06, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x53,
|
|
0x74, 0x6f, 0x63, 0x6b, 0x12, 0x20, 0x0a, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x50, 0x69, 0x63, 0x74,
|
|
0x75, 0x72, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x6d, 0x61, 0x69, 0x6e, 0x50,
|
|
0x69, 0x63, 0x74, 0x75, 0x72, 0x65, 0x12, 0x2c, 0x0a, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65,
|
|
0x41, 0x72, 0x65, 0x61, 0x50, 0x6f, 0x73, 0x74, 0x61, 0x67, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
|
|
0x02, 0x52, 0x11, 0x72, 0x65, 0x6d, 0x6f, 0x74, 0x65, 0x41, 0x72, 0x65, 0x61, 0x50, 0x6f, 0x73,
|
|
0x74, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0e, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x42, 0x75,
|
|
0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x73, 0x69,
|
|
0x6e, 0x67, 0x6c, 0x65, 0x42, 0x75, 0x79, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x1a, 0x0a, 0x08,
|
|
0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x08,
|
|
0x69, 0x73, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x6d, 0x61,
|
|
0x72, 0x6b, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x65, 0x6d, 0x61, 0x72, 0x6b,
|
|
0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x18, 0x0c,
|
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
|
|
0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0d,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72, 0x18, 0x0e,
|
|
0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x55, 0x73, 0x65, 0x72,
|
|
0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0f,
|
|
0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
|
|
0x12, 0x1c, 0x0a, 0x09, 0x49, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x10, 0x20,
|
|
0x01, 0x28, 0x08, 0x52, 0x09, 0x49, 0x73, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x12, 0x16,
|
|
0x0a, 0x06, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06,
|
|
0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x69, 0x63, 0x74, 0x75, 0x72,
|
|
0x65, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x69, 0x63,
|
|
0x74, 0x75, 0x72, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x22, 0x22, 0x0a, 0x10, 0x50, 0x72, 0x6f, 0x64,
|
|
0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x0e, 0x0a, 0x02,
|
|
0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02, 0x69, 0x64, 0x22, 0x4f, 0x0a, 0x11,
|
|
0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73,
|
|
0x70, 0x12, 0x3a, 0x0a, 0x0d, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61,
|
|
0x69, 0x6c, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x0d,
|
|
0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x22, 0x9c, 0x01,
|
|
0x0a, 0x0a, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x12, 0x14, 0x0a, 0x05,
|
|
0x73, 0x6b, 0x75, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x6b, 0x75,
|
|
0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
|
|
0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x30, 0x0a, 0x13, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62,
|
|
0x75, 0x74, 0x65, 0x53, 0x79, 0x6d, 0x62, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x18, 0x03, 0x20,
|
|
0x01, 0x28, 0x09, 0x52, 0x13, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x53, 0x79,
|
|
0x6d, 0x62, 0x6f, 0x6c, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6c, 0x6c,
|
|
0x50, 0x72, 0x69, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x65, 0x6c,
|
|
0x6c, 0x50, 0x72, 0x69, 0x63, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x18,
|
|
0x05, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x73, 0x74, 0x6f, 0x63, 0x6b, 0x22, 0x2d, 0x0a, 0x0d,
|
|
0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a,
|
|
0x09, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05,
|
|
0x52, 0x09, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x49, 0x64, 0x22, 0x43, 0x0a, 0x0e, 0x50,
|
|
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x52, 0x65, 0x73, 0x70, 0x12, 0x31, 0x0a,
|
|
0x0a, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x18, 0x01, 0x20, 0x03, 0x28,
|
|
0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63,
|
|
0x74, 0x53, 0x6b, 0x75, 0x52, 0x0a, 0x70, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75,
|
|
0x32, 0x31, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x50, 0x61, 0x67, 0x65,
|
|
0x12, 0x0e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71,
|
|
0x1a, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x67, 0x65, 0x52, 0x65, 0x73,
|
|
0x70, 0x22, 0x00, 0x32, 0x5d, 0x0a, 0x11, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x72, 0x6f, 0x64, 0x75,
|
|
0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x48, 0x0a, 0x11, 0x53, 0x68, 0x6f, 0x77,
|
|
0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x12, 0x17, 0x2e,
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74,
|
|
0x61, 0x69, 0x6c, 0x52, 0x65, 0x71, 0x1a, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50,
|
|
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x73, 0x70,
|
|
0x22, 0x00, 0x32, 0x51, 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63,
|
|
0x74, 0x53, 0x6b, 0x75, 0x12, 0x3f, 0x0a, 0x0e, 0x53, 0x68, 0x6f, 0x77, 0x50, 0x72, 0x6f, 0x64,
|
|
0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x12, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50,
|
|
0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x52, 0x65, 0x71, 0x1a, 0x15, 0x2e, 0x70,
|
|
0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x53, 0x6b, 0x75, 0x52,
|
|
0x65, 0x73, 0x70, 0x22, 0x00, 0x32, 0x52, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65, 0x74,
|
|
0x61, 0x69, 0x6c, 0x53, 0x6b, 0x75, 0x12, 0x41, 0x0a, 0x0d, 0x53, 0x68, 0x6f, 0x77, 0x44, 0x65,
|
|
0x74, 0x61, 0x69, 0x6c, 0x53, 0x6b, 0x75, 0x12, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e,
|
|
0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74, 0x44, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x52, 0x65, 0x71,
|
|
0x1a, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x72, 0x6f, 0x64, 0x75, 0x63, 0x74,
|
|
0x53, 0x6b, 0x75, 0x52, 0x65, 0x73, 0x70, 0x22, 0x00, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2f, 0x3b,
|
|
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
|
|
}
|
|
|
|
var (
|
|
file_product_proto_rawDescOnce sync.Once
|
|
file_product_proto_rawDescData = file_product_proto_rawDesc
|
|
)
|
|
|
|
func file_product_proto_rawDescGZIP() []byte {
|
|
file_product_proto_rawDescOnce.Do(func() {
|
|
file_product_proto_rawDescData = protoimpl.X.CompressGZIP(file_product_proto_rawDescData)
|
|
})
|
|
return file_product_proto_rawDescData
|
|
}
|
|
|
|
var file_product_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
|
|
var file_product_proto_goTypes = []interface{}{
|
|
(*Product)(nil), // 0: proto.Product
|
|
(*PageReq)(nil), // 1: proto.PageReq
|
|
(*PageResp)(nil), // 2: proto.PageResp
|
|
(*ProductDetail)(nil), // 3: proto.ProductDetail
|
|
(*ProductDetailReq)(nil), // 4: proto.ProductDetailReq
|
|
(*ProductDetailResp)(nil), // 5: proto.ProductDetailResp
|
|
(*ProductSku)(nil), // 6: proto.ProductSku
|
|
(*ProductSkuReq)(nil), // 7: proto.ProductSkuReq
|
|
(*ProductSkuResp)(nil), // 8: proto.ProductSkuResp
|
|
nil, // 9: proto.Product.LabelListEntry
|
|
}
|
|
var file_product_proto_depIdxs = []int32{
|
|
9, // 0: proto.Product.labelList:type_name -> proto.Product.LabelListEntry
|
|
0, // 1: proto.PageResp.product:type_name -> proto.Product
|
|
3, // 2: proto.ProductDetailResp.productDetail:type_name -> proto.ProductDetail
|
|
6, // 3: proto.ProductSkuResp.productSku:type_name -> proto.ProductSku
|
|
1, // 4: proto.Page.Page:input_type -> proto.PageReq
|
|
4, // 5: proto.ShowProductDetail.ShowProductDetail:input_type -> proto.ProductDetailReq
|
|
7, // 6: proto.ShowProductSku.ShowProductSku:input_type -> proto.ProductSkuReq
|
|
4, // 7: proto.ShowDetailSku.ShowDetailSku:input_type -> proto.ProductDetailReq
|
|
2, // 8: proto.Page.Page:output_type -> proto.PageResp
|
|
5, // 9: proto.ShowProductDetail.ShowProductDetail:output_type -> proto.ProductDetailResp
|
|
8, // 10: proto.ShowProductSku.ShowProductSku:output_type -> proto.ProductSkuResp
|
|
8, // 11: proto.ShowDetailSku.ShowDetailSku:output_type -> proto.ProductSkuResp
|
|
8, // [8:12] is the sub-list for method output_type
|
|
4, // [4:8] 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_product_proto_init() }
|
|
func file_product_proto_init() {
|
|
if File_product_proto != nil {
|
|
return
|
|
}
|
|
if !protoimpl.UnsafeEnabled {
|
|
file_product_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*Product); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PageReq); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*PageResp); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductDetail); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductDetailReq); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductDetailResp); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductSku); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductSkuReq); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
file_product_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
|
|
switch v := v.(*ProductSkuResp); i {
|
|
case 0:
|
|
return &v.state
|
|
case 1:
|
|
return &v.sizeCache
|
|
case 2:
|
|
return &v.unknownFields
|
|
default:
|
|
return nil
|
|
}
|
|
}
|
|
}
|
|
type x struct{}
|
|
out := protoimpl.TypeBuilder{
|
|
File: protoimpl.DescBuilder{
|
|
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
RawDescriptor: file_product_proto_rawDesc,
|
|
NumEnums: 0,
|
|
NumMessages: 10,
|
|
NumExtensions: 0,
|
|
NumServices: 4,
|
|
},
|
|
GoTypes: file_product_proto_goTypes,
|
|
DependencyIndexes: file_product_proto_depIdxs,
|
|
MessageInfos: file_product_proto_msgTypes,
|
|
}.Build()
|
|
File_product_proto = out.File
|
|
file_product_proto_rawDesc = nil
|
|
file_product_proto_goTypes = nil
|
|
file_product_proto_depIdxs = nil
|
|
}
|
|
|
|
// Reference imports to suppress errors if they are not otherwise used.
|
|
var _ context.Context
|
|
var _ grpc.ClientConnInterface
|
|
|
|
// This is a compile-time assertion to ensure that this generated file
|
|
// is compatible with the grpc package it is being compiled against.
|
|
const _ = grpc.SupportPackageIsVersion6
|
|
|
|
// PageClient is the client API for Page service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type PageClient interface {
|
|
// rpc 服务
|
|
Page(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*PageResp, error)
|
|
}
|
|
|
|
type pageClient struct {
|
|
cc grpc.ClientConnInterface
|
|
}
|
|
|
|
func NewPageClient(cc grpc.ClientConnInterface) PageClient {
|
|
return &pageClient{cc}
|
|
}
|
|
|
|
func (c *pageClient) Page(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*PageResp, error) {
|
|
out := new(PageResp)
|
|
err := c.cc.Invoke(ctx, "/proto.Page/Page", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// PageServer is the server API for Page service.
|
|
type PageServer interface {
|
|
// rpc 服务
|
|
Page(context.Context, *PageReq) (*PageResp, error)
|
|
}
|
|
|
|
// UnimplementedPageServer can be embedded to have forward compatible implementations.
|
|
type UnimplementedPageServer struct {
|
|
}
|
|
|
|
func (*UnimplementedPageServer) Page(context.Context, *PageReq) (*PageResp, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method Page not implemented")
|
|
}
|
|
|
|
func RegisterPageServer(s *grpc.Server, srv PageServer) {
|
|
s.RegisterService(&_Page_serviceDesc, srv)
|
|
}
|
|
|
|
func _Page_Page_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(PageReq)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(PageServer).Page(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/proto.Page/Page",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(PageServer).Page(ctx, req.(*PageReq))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _Page_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "proto.Page",
|
|
HandlerType: (*PageServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "Page",
|
|
Handler: _Page_Page_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{},
|
|
Metadata: "product.proto",
|
|
}
|
|
|
|
// ShowProductDetailClient is the client API for ShowProductDetail service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type ShowProductDetailClient interface {
|
|
// rpc 服务
|
|
ShowProductDetail(ctx context.Context, in *ProductDetailReq, opts ...grpc.CallOption) (*ProductDetailResp, error)
|
|
}
|
|
|
|
type showProductDetailClient struct {
|
|
cc grpc.ClientConnInterface
|
|
}
|
|
|
|
func NewShowProductDetailClient(cc grpc.ClientConnInterface) ShowProductDetailClient {
|
|
return &showProductDetailClient{cc}
|
|
}
|
|
|
|
func (c *showProductDetailClient) ShowProductDetail(ctx context.Context, in *ProductDetailReq, opts ...grpc.CallOption) (*ProductDetailResp, error) {
|
|
out := new(ProductDetailResp)
|
|
err := c.cc.Invoke(ctx, "/proto.ShowProductDetail/ShowProductDetail", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// ShowProductDetailServer is the server API for ShowProductDetail service.
|
|
type ShowProductDetailServer interface {
|
|
// rpc 服务
|
|
ShowProductDetail(context.Context, *ProductDetailReq) (*ProductDetailResp, error)
|
|
}
|
|
|
|
// UnimplementedShowProductDetailServer can be embedded to have forward compatible implementations.
|
|
type UnimplementedShowProductDetailServer struct {
|
|
}
|
|
|
|
func (*UnimplementedShowProductDetailServer) ShowProductDetail(context.Context, *ProductDetailReq) (*ProductDetailResp, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ShowProductDetail not implemented")
|
|
}
|
|
|
|
func RegisterShowProductDetailServer(s *grpc.Server, srv ShowProductDetailServer) {
|
|
s.RegisterService(&_ShowProductDetail_serviceDesc, srv)
|
|
}
|
|
|
|
func _ShowProductDetail_ShowProductDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(ProductDetailReq)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(ShowProductDetailServer).ShowProductDetail(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/proto.ShowProductDetail/ShowProductDetail",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(ShowProductDetailServer).ShowProductDetail(ctx, req.(*ProductDetailReq))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _ShowProductDetail_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "proto.ShowProductDetail",
|
|
HandlerType: (*ShowProductDetailServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "ShowProductDetail",
|
|
Handler: _ShowProductDetail_ShowProductDetail_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{},
|
|
Metadata: "product.proto",
|
|
}
|
|
|
|
// ShowProductSkuClient is the client API for ShowProductSku service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type ShowProductSkuClient interface {
|
|
// rpc 服务
|
|
ShowProductSku(ctx context.Context, in *ProductSkuReq, opts ...grpc.CallOption) (*ProductSkuResp, error)
|
|
}
|
|
|
|
type showProductSkuClient struct {
|
|
cc grpc.ClientConnInterface
|
|
}
|
|
|
|
func NewShowProductSkuClient(cc grpc.ClientConnInterface) ShowProductSkuClient {
|
|
return &showProductSkuClient{cc}
|
|
}
|
|
|
|
func (c *showProductSkuClient) ShowProductSku(ctx context.Context, in *ProductSkuReq, opts ...grpc.CallOption) (*ProductSkuResp, error) {
|
|
out := new(ProductSkuResp)
|
|
err := c.cc.Invoke(ctx, "/proto.ShowProductSku/ShowProductSku", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// ShowProductSkuServer is the server API for ShowProductSku service.
|
|
type ShowProductSkuServer interface {
|
|
// rpc 服务
|
|
ShowProductSku(context.Context, *ProductSkuReq) (*ProductSkuResp, error)
|
|
}
|
|
|
|
// UnimplementedShowProductSkuServer can be embedded to have forward compatible implementations.
|
|
type UnimplementedShowProductSkuServer struct {
|
|
}
|
|
|
|
func (*UnimplementedShowProductSkuServer) ShowProductSku(context.Context, *ProductSkuReq) (*ProductSkuResp, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ShowProductSku not implemented")
|
|
}
|
|
|
|
func RegisterShowProductSkuServer(s *grpc.Server, srv ShowProductSkuServer) {
|
|
s.RegisterService(&_ShowProductSku_serviceDesc, srv)
|
|
}
|
|
|
|
func _ShowProductSku_ShowProductSku_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(ProductSkuReq)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(ShowProductSkuServer).ShowProductSku(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/proto.ShowProductSku/ShowProductSku",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(ShowProductSkuServer).ShowProductSku(ctx, req.(*ProductSkuReq))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _ShowProductSku_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "proto.ShowProductSku",
|
|
HandlerType: (*ShowProductSkuServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "ShowProductSku",
|
|
Handler: _ShowProductSku_ShowProductSku_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{},
|
|
Metadata: "product.proto",
|
|
}
|
|
|
|
// ShowDetailSkuClient is the client API for ShowDetailSku service.
|
|
//
|
|
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
|
|
type ShowDetailSkuClient interface {
|
|
// rpc 服务
|
|
ShowDetailSku(ctx context.Context, in *ProductDetailReq, opts ...grpc.CallOption) (*ProductSkuResp, error)
|
|
}
|
|
|
|
type showDetailSkuClient struct {
|
|
cc grpc.ClientConnInterface
|
|
}
|
|
|
|
func NewShowDetailSkuClient(cc grpc.ClientConnInterface) ShowDetailSkuClient {
|
|
return &showDetailSkuClient{cc}
|
|
}
|
|
|
|
func (c *showDetailSkuClient) ShowDetailSku(ctx context.Context, in *ProductDetailReq, opts ...grpc.CallOption) (*ProductSkuResp, error) {
|
|
out := new(ProductSkuResp)
|
|
err := c.cc.Invoke(ctx, "/proto.ShowDetailSku/ShowDetailSku", in, out, opts...)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
return out, nil
|
|
}
|
|
|
|
// ShowDetailSkuServer is the server API for ShowDetailSku service.
|
|
type ShowDetailSkuServer interface {
|
|
// rpc 服务
|
|
ShowDetailSku(context.Context, *ProductDetailReq) (*ProductSkuResp, error)
|
|
}
|
|
|
|
// UnimplementedShowDetailSkuServer can be embedded to have forward compatible implementations.
|
|
type UnimplementedShowDetailSkuServer struct {
|
|
}
|
|
|
|
func (*UnimplementedShowDetailSkuServer) ShowDetailSku(context.Context, *ProductDetailReq) (*ProductSkuResp, error) {
|
|
return nil, status.Errorf(codes.Unimplemented, "method ShowDetailSku not implemented")
|
|
}
|
|
|
|
func RegisterShowDetailSkuServer(s *grpc.Server, srv ShowDetailSkuServer) {
|
|
s.RegisterService(&_ShowDetailSku_serviceDesc, srv)
|
|
}
|
|
|
|
func _ShowDetailSku_ShowDetailSku_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
|
in := new(ProductDetailReq)
|
|
if err := dec(in); err != nil {
|
|
return nil, err
|
|
}
|
|
if interceptor == nil {
|
|
return srv.(ShowDetailSkuServer).ShowDetailSku(ctx, in)
|
|
}
|
|
info := &grpc.UnaryServerInfo{
|
|
Server: srv,
|
|
FullMethod: "/proto.ShowDetailSku/ShowDetailSku",
|
|
}
|
|
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
|
return srv.(ShowDetailSkuServer).ShowDetailSku(ctx, req.(*ProductDetailReq))
|
|
}
|
|
return interceptor(ctx, in, info, handler)
|
|
}
|
|
|
|
var _ShowDetailSku_serviceDesc = grpc.ServiceDesc{
|
|
ServiceName: "proto.ShowDetailSku",
|
|
HandlerType: (*ShowDetailSkuServer)(nil),
|
|
Methods: []grpc.MethodDesc{
|
|
{
|
|
MethodName: "ShowDetailSku",
|
|
Handler: _ShowDetailSku_ShowDetailSku_Handler,
|
|
},
|
|
},
|
|
Streams: []grpc.StreamDesc{},
|
|
Metadata: "product.proto",
|
|
}
|