2518 lines
79 KiB
Go
2518 lines
79 KiB
Go
// Code generated by protoc-gen-go. DO NOT EDIT.
|
||
// versions:
|
||
// protoc-gen-go v1.36.11
|
||
// protoc v7.35.1
|
||
// source: module/ec/mall/proto/product.proto
|
||
|
||
package mall
|
||
|
||
import (
|
||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
||
reflect "reflect"
|
||
sync "sync"
|
||
unsafe "unsafe"
|
||
)
|
||
|
||
const (
|
||
// Verify that this generated code is sufficiently up-to-date.
|
||
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
|
||
// Verify that runtime/protoimpl is sufficiently up-to-date.
|
||
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
|
||
)
|
||
|
||
// 商品属性
|
||
type AttrItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //属性ID
|
||
Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` //属性名称
|
||
ParentId int32 `protobuf:"varint,3,opt,name=parent_id,proto3" json:"parent_id,omitempty"` //上级ID
|
||
Value string `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"` //属性值
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *AttrItem) Reset() {
|
||
*x = AttrItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[0]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *AttrItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*AttrItem) ProtoMessage() {}
|
||
|
||
func (x *AttrItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[0]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use AttrItem.ProtoReflect.Descriptor instead.
|
||
func (*AttrItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{0}
|
||
}
|
||
|
||
func (x *AttrItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *AttrItem) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *AttrItem) GetParentId() int32 {
|
||
if x != nil {
|
||
return x.ParentId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *AttrItem) GetValue() string {
|
||
if x != nil {
|
||
return x.Value
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// 商品评论
|
||
type CommentItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //ID
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // 评论唯一标识
|
||
CreatedAt string `protobuf:"bytes,3,opt,name=created_at,proto3" json:"created_at,omitempty"` //创建时间
|
||
NickName string `protobuf:"bytes,4,opt,name=nick_name,proto3" json:"nick_name,omitempty"` //用户名称
|
||
Score int32 `protobuf:"varint,5,opt,name=score,proto3" json:"score,omitempty"` //评分
|
||
Comment string `protobuf:"bytes,6,opt,name=comment,proto3" json:"comment,omitempty"` //评论正文
|
||
Reply string `protobuf:"bytes,7,opt,name=reply,proto3" json:"reply,omitempty"` //回复正文
|
||
ProductIdentity string `protobuf:"bytes,8,opt,name=product_identity,proto3" json:"product_identity,omitempty"` // 所属商品唯一标识
|
||
StoreIdentity string `protobuf:"bytes,9,opt,name=store_identity,proto3" json:"store_identity,omitempty"` // 店铺唯一标识
|
||
SpecIdentity string `protobuf:"bytes,10,opt,name=spec_identity,proto3" json:"spec_identity,omitempty"` // 产品规格唯一标识
|
||
CommentIdentity string `protobuf:"bytes,11,opt,name=comment_identity,proto3" json:"comment_identity,omitempty"` // 被回复的评论唯一标识
|
||
Product string `protobuf:"bytes,12,opt,name=product,proto3" json:"product,omitempty"` // 所属商品
|
||
ProductSpec string `protobuf:"bytes,13,opt,name=product_spec,proto3" json:"product_spec,omitempty"` // 产品规格
|
||
IsComment bool `protobuf:"varint,14,opt,name=is_comment,proto3" json:"is_comment,omitempty"` // 是否是评论
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *CommentItem) Reset() {
|
||
*x = CommentItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[1]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *CommentItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*CommentItem) ProtoMessage() {}
|
||
|
||
func (x *CommentItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[1]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use CommentItem.ProtoReflect.Descriptor instead.
|
||
func (*CommentItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{1}
|
||
}
|
||
|
||
func (x *CommentItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CommentItem) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetCreatedAt() string {
|
||
if x != nil {
|
||
return x.CreatedAt
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetNickName() string {
|
||
if x != nil {
|
||
return x.NickName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetScore() int32 {
|
||
if x != nil {
|
||
return x.Score
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CommentItem) GetComment() string {
|
||
if x != nil {
|
||
return x.Comment
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetReply() string {
|
||
if x != nil {
|
||
return x.Reply
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetProductIdentity() string {
|
||
if x != nil {
|
||
return x.ProductIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetStoreIdentity() string {
|
||
if x != nil {
|
||
return x.StoreIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetSpecIdentity() string {
|
||
if x != nil {
|
||
return x.SpecIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetCommentIdentity() string {
|
||
if x != nil {
|
||
return x.CommentIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetProduct() string {
|
||
if x != nil {
|
||
return x.Product
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetProductSpec() string {
|
||
if x != nil {
|
||
return x.ProductSpec
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItem) GetIsComment() bool {
|
||
if x != nil {
|
||
return x.IsComment
|
||
}
|
||
return false
|
||
}
|
||
|
||
type CommentItemRep struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //ID
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // 评论唯一标识
|
||
CreatedAt string `protobuf:"bytes,3,opt,name=created_at,proto3" json:"created_at,omitempty"` //创建时间
|
||
NickName string `protobuf:"bytes,4,opt,name=nick_name,proto3" json:"nick_name,omitempty"` //用户名称
|
||
Score int32 `protobuf:"varint,5,opt,name=score,proto3" json:"score,omitempty"` //评分
|
||
Comment string `protobuf:"bytes,6,opt,name=comment,proto3" json:"comment,omitempty"` //评论正文
|
||
Reply string `protobuf:"bytes,7,opt,name=reply,proto3" json:"reply,omitempty"` //回复正文
|
||
ProductIdentity string `protobuf:"bytes,8,opt,name=product_identity,proto3" json:"product_identity,omitempty"` // 所属商品唯一标识
|
||
StoreIdentity string `protobuf:"bytes,9,opt,name=store_identity,proto3" json:"store_identity,omitempty"` // 店铺唯一标识
|
||
SpecIdentity string `protobuf:"bytes,10,opt,name=spec_identity,proto3" json:"spec_identity,omitempty"` // 产品规格唯一标识
|
||
CommentIdentity string `protobuf:"bytes,11,opt,name=comment_identity,proto3" json:"comment_identity,omitempty"` // 被回复的评论唯一标识
|
||
List []*CommentItem `protobuf:"bytes,12,rep,name=list,proto3" json:"list,omitempty"` // 评论列表
|
||
Product string `protobuf:"bytes,13,opt,name=product,proto3" json:"product,omitempty"` // 所属商品
|
||
ProductSpec string `protobuf:"bytes,14,opt,name=product_spec,proto3" json:"product_spec,omitempty"` // 产品规格
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *CommentItemRep) Reset() {
|
||
*x = CommentItemRep{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[2]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *CommentItemRep) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*CommentItemRep) ProtoMessage() {}
|
||
|
||
func (x *CommentItemRep) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[2]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use CommentItemRep.ProtoReflect.Descriptor instead.
|
||
func (*CommentItemRep) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{2}
|
||
}
|
||
|
||
func (x *CommentItemRep) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CommentItemRep) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetCreatedAt() string {
|
||
if x != nil {
|
||
return x.CreatedAt
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetNickName() string {
|
||
if x != nil {
|
||
return x.NickName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetScore() int32 {
|
||
if x != nil {
|
||
return x.Score
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CommentItemRep) GetComment() string {
|
||
if x != nil {
|
||
return x.Comment
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetReply() string {
|
||
if x != nil {
|
||
return x.Reply
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetProductIdentity() string {
|
||
if x != nil {
|
||
return x.ProductIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetStoreIdentity() string {
|
||
if x != nil {
|
||
return x.StoreIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetSpecIdentity() string {
|
||
if x != nil {
|
||
return x.SpecIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetCommentIdentity() string {
|
||
if x != nil {
|
||
return x.CommentIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetList() []*CommentItem {
|
||
if x != nil {
|
||
return x.List
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *CommentItemRep) GetProduct() string {
|
||
if x != nil {
|
||
return x.Product
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CommentItemRep) GetProductSpec() string {
|
||
if x != nil {
|
||
return x.ProductSpec
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type DetailBySpecRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
SpecNo string `protobuf:"bytes,1,opt,name=spec_no,proto3" json:"spec_no,omitempty"` // 产品规格编号
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *DetailBySpecRequest) Reset() {
|
||
*x = DetailBySpecRequest{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[3]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *DetailBySpecRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*DetailBySpecRequest) ProtoMessage() {}
|
||
|
||
func (x *DetailBySpecRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[3]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use DetailBySpecRequest.ProtoReflect.Descriptor instead.
|
||
func (*DetailBySpecRequest) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{3}
|
||
}
|
||
|
||
func (x *DetailBySpecRequest) GetSpecNo() string {
|
||
if x != nil {
|
||
return x.SpecNo
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type OpRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Identity []string `protobuf:"bytes,1,rep,name=identity,proto3" json:"identity,omitempty"` // 需要被禁用的产品唯一标识
|
||
Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"` // 更新的数据
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *OpRequest) Reset() {
|
||
*x = OpRequest{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[4]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *OpRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*OpRequest) ProtoMessage() {}
|
||
|
||
func (x *OpRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[4]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use OpRequest.ProtoReflect.Descriptor instead.
|
||
func (*OpRequest) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{4}
|
||
}
|
||
|
||
func (x *OpRequest) GetIdentity() []string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *OpRequest) GetStatus() int32 {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type ModifyRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Identity string `protobuf:"bytes,1,opt,name=identity,proto3" json:"identity,omitempty"` // 产品唯一标识
|
||
Status int32 `protobuf:"varint,2,opt,name=status,proto3" json:"status,omitempty"` // 商品状态:1-已上架,2-自动上架等待中(禁止web手动传入),3-禁用 ,4-草稿,5-未上架
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ModifyRequest) Reset() {
|
||
*x = ModifyRequest{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[5]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ModifyRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ModifyRequest) ProtoMessage() {}
|
||
|
||
func (x *ModifyRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[5]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ModifyRequest.ProtoReflect.Descriptor instead.
|
||
func (*ModifyRequest) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{5}
|
||
}
|
||
|
||
func (x *ModifyRequest) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ModifyRequest) GetStatus() int32 {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type ListItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
ProductId int64 `protobuf:"varint,2,opt,name=product_id,proto3" json:"product_id,omitempty"` // 产品id
|
||
Product string `protobuf:"bytes,3,opt,name=product,proto3" json:"product,omitempty"` // 产品名称
|
||
SpecId int64 `protobuf:"varint,4,opt,name=spec_id,proto3" json:"spec_id,omitempty"` // 规格id
|
||
Spec string `protobuf:"bytes,5,opt,name=spec,proto3" json:"spec,omitempty"` // 规格名称
|
||
SpecNo string `protobuf:"bytes,6,opt,name=spec_no,proto3" json:"spec_no,omitempty"` // 规格编号
|
||
Price int64 `protobuf:"varint,7,opt,name=price,proto3" json:"price,omitempty"` // 单价,单位分
|
||
Count int64 `protobuf:"varint,8,opt,name=count,proto3" json:"count,omitempty"` // 数量
|
||
Img string `protobuf:"bytes,9,opt,name=img,proto3" json:"img,omitempty"` // 产品图片
|
||
ProductIdentity string `protobuf:"bytes,10,opt,name=product_identity,proto3" json:"product_identity,omitempty"` // 产品唯一标识
|
||
SerialId string `protobuf:"bytes,11,opt,name=serial_id,proto3" json:"serial_id,omitempty"` // 产品序号
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ListItem) Reset() {
|
||
*x = ListItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[6]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ListItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ListItem) ProtoMessage() {}
|
||
|
||
func (x *ListItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[6]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ListItem.ProtoReflect.Descriptor instead.
|
||
func (*ListItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{6}
|
||
}
|
||
|
||
func (x *ListItem) GetProductId() int64 {
|
||
if x != nil {
|
||
return x.ProductId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ListItem) GetProduct() string {
|
||
if x != nil {
|
||
return x.Product
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ListItem) GetSpecId() int64 {
|
||
if x != nil {
|
||
return x.SpecId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ListItem) GetSpec() string {
|
||
if x != nil {
|
||
return x.Spec
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ListItem) GetSpecNo() string {
|
||
if x != nil {
|
||
return x.SpecNo
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ListItem) GetPrice() int64 {
|
||
if x != nil {
|
||
return x.Price
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ListItem) GetCount() int64 {
|
||
if x != nil {
|
||
return x.Count
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ListItem) GetImg() string {
|
||
if x != nil {
|
||
return x.Img
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ListItem) GetProductIdentity() string {
|
||
if x != nil {
|
||
return x.ProductIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ListItem) GetSerialId() string {
|
||
if x != nil {
|
||
return x.SerialId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type ListWithIdRequest struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id []int64 `protobuf:"varint,1,rep,packed,name=id,proto3" json:"id,omitempty"` // specId列表
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ListWithIdRequest) Reset() {
|
||
*x = ListWithIdRequest{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[7]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ListWithIdRequest) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ListWithIdRequest) ProtoMessage() {}
|
||
|
||
func (x *ListWithIdRequest) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[7]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ListWithIdRequest.ProtoReflect.Descriptor instead.
|
||
func (*ListWithIdRequest) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{7}
|
||
}
|
||
|
||
func (x *ListWithIdRequest) GetId() []int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type ListWithIdReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Data []*ListItem `protobuf:"bytes,1,rep,name=data,proto3" json:"data,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ListWithIdReply) Reset() {
|
||
*x = ListWithIdReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[8]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ListWithIdReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ListWithIdReply) ProtoMessage() {}
|
||
|
||
func (x *ListWithIdReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[8]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ListWithIdReply.ProtoReflect.Descriptor instead.
|
||
func (*ListWithIdReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{8}
|
||
}
|
||
|
||
func (x *ListWithIdReply) GetData() []*ListItem {
|
||
if x != nil {
|
||
return x.Data
|
||
}
|
||
return nil
|
||
}
|
||
|
||
// ---- Reply 部分
|
||
type PhotoReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
|
||
Data []*PhotoItem `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` //
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *PhotoReply) Reset() {
|
||
*x = PhotoReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[9]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *PhotoReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PhotoReply) ProtoMessage() {}
|
||
|
||
func (x *PhotoReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[9]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use PhotoReply.ProtoReflect.Descriptor instead.
|
||
func (*PhotoReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{9}
|
||
}
|
||
|
||
func (x *PhotoReply) GetCount() int64 {
|
||
if x != nil {
|
||
return x.Count
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PhotoReply) GetData() []*PhotoItem {
|
||
if x != nil {
|
||
return x.Data
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type SpecReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"`
|
||
Data []*SpecItem `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"`
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *SpecReply) Reset() {
|
||
*x = SpecReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[10]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *SpecReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*SpecReply) ProtoMessage() {}
|
||
|
||
func (x *SpecReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[10]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use SpecReply.ProtoReflect.Descriptor instead.
|
||
func (*SpecReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{10}
|
||
}
|
||
|
||
func (x *SpecReply) GetCount() int64 {
|
||
if x != nil {
|
||
return x.Count
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecReply) GetData() []*SpecItem {
|
||
if x != nil {
|
||
return x.Data
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type CommentListReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` // 数量
|
||
Data []*CommentItemRep `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` //评论列表
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *CommentListReply) Reset() {
|
||
*x = CommentListReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[11]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *CommentListReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*CommentListReply) ProtoMessage() {}
|
||
|
||
func (x *CommentListReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[11]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use CommentListReply.ProtoReflect.Descriptor instead.
|
||
func (*CommentListReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{11}
|
||
}
|
||
|
||
func (x *CommentListReply) GetCount() int64 {
|
||
if x != nil {
|
||
return x.Count
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CommentListReply) GetData() []*CommentItemRep {
|
||
if x != nil {
|
||
return x.Data
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type StatisticReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Total int64 `protobuf:"varint,1,opt,name=total,proto3" json:"total,omitempty"` // 当前产品总数
|
||
Selling int64 `protobuf:"varint,2,opt,name=selling,proto3" json:"selling,omitempty"` // 在售数量
|
||
Forbidden int64 `protobuf:"varint,3,opt,name=forbidden,proto3" json:"forbidden,omitempty"` // 禁用数量
|
||
Draft int64 `protobuf:"varint,4,opt,name=draft,proto3" json:"draft,omitempty"` // 草稿数量
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *StatisticReply) Reset() {
|
||
*x = StatisticReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[12]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *StatisticReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*StatisticReply) ProtoMessage() {}
|
||
|
||
func (x *StatisticReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[12]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use StatisticReply.ProtoReflect.Descriptor instead.
|
||
func (*StatisticReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{12}
|
||
}
|
||
|
||
func (x *StatisticReply) GetTotal() int64 {
|
||
if x != nil {
|
||
return x.Total
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *StatisticReply) GetSelling() int64 {
|
||
if x != nil {
|
||
return x.Selling
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *StatisticReply) GetForbidden() int64 {
|
||
if x != nil {
|
||
return x.Forbidden
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *StatisticReply) GetDraft() int64 {
|
||
if x != nil {
|
||
return x.Draft
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type OrgBySpecIdReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` // 机构id
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // 店铺唯一标识
|
||
Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"` // 机构名称
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *OrgBySpecIdReply) Reset() {
|
||
*x = OrgBySpecIdReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[13]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *OrgBySpecIdReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*OrgBySpecIdReply) ProtoMessage() {}
|
||
|
||
func (x *OrgBySpecIdReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[13]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use OrgBySpecIdReply.ProtoReflect.Descriptor instead.
|
||
func (*OrgBySpecIdReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{13}
|
||
}
|
||
|
||
func (x *OrgBySpecIdReply) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *OrgBySpecIdReply) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *OrgBySpecIdReply) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
// 备用的产品附加信息
|
||
type Subjoin struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
CategoryPaths string `protobuf:"bytes,1,opt,name=category_paths,proto3" json:"category_paths,omitempty"` //分类路径
|
||
SubTitle string `protobuf:"bytes,2,opt,name=sub_title,proto3" json:"sub_title,omitempty"` //商品标题
|
||
Keyword string `protobuf:"bytes,3,opt,name=keyword,proto3" json:"keyword,omitempty"` //商品关键字
|
||
Stock int32 `protobuf:"varint,4,opt,name=stock,proto3" json:"stock,omitempty"` //库存
|
||
SalesPrice int64 `protobuf:"varint,5,opt,name=sales_price,proto3" json:"sales_price,omitempty"` //销售价
|
||
Args string `protobuf:"bytes,6,opt,name=args,proto3" json:"args,omitempty"` //商品相关参数JSON
|
||
CommentTotal int32 `protobuf:"varint,7,opt,name=comment_total,proto3" json:"comment_total,omitempty"` //评论总数
|
||
SaleTotal int32 `protobuf:"varint,8,opt,name=sale_total,proto3" json:"sale_total,omitempty"` //销售总数
|
||
ViewTotal int32 `protobuf:"varint,9,opt,name=view_total,proto3" json:"view_total,omitempty"` //查看总数
|
||
ImageTotal int32 `protobuf:"varint,10,opt,name=image_total,proto3" json:"image_total,omitempty"` //图片总数
|
||
Recommend int32 `protobuf:"varint,11,opt,name=recommend,proto3" json:"recommend,omitempty"` //推荐码:0不推荐,1推荐的状态
|
||
Sort int32 `protobuf:"varint,12,opt,name=sort,proto3" json:"sort,omitempty"` //排序
|
||
Types int32 `protobuf:"varint,13,opt,name=types,proto3" json:"types,omitempty"` //商品类型:Product=1 实体商品,Service=2 服务,Membership=3 会员服务,Other=4 其它
|
||
Star int64 `protobuf:"varint,14,opt,name=star,proto3" json:"star,omitempty"` //商品星级
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *Subjoin) Reset() {
|
||
*x = Subjoin{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[14]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *Subjoin) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*Subjoin) ProtoMessage() {}
|
||
|
||
func (x *Subjoin) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[14]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use Subjoin.ProtoReflect.Descriptor instead.
|
||
func (*Subjoin) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{14}
|
||
}
|
||
|
||
func (x *Subjoin) GetCategoryPaths() string {
|
||
if x != nil {
|
||
return x.CategoryPaths
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *Subjoin) GetSubTitle() string {
|
||
if x != nil {
|
||
return x.SubTitle
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *Subjoin) GetKeyword() string {
|
||
if x != nil {
|
||
return x.Keyword
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *Subjoin) GetStock() int32 {
|
||
if x != nil {
|
||
return x.Stock
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetSalesPrice() int64 {
|
||
if x != nil {
|
||
return x.SalesPrice
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetArgs() string {
|
||
if x != nil {
|
||
return x.Args
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *Subjoin) GetCommentTotal() int32 {
|
||
if x != nil {
|
||
return x.CommentTotal
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetSaleTotal() int32 {
|
||
if x != nil {
|
||
return x.SaleTotal
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetViewTotal() int32 {
|
||
if x != nil {
|
||
return x.ViewTotal
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetImageTotal() int32 {
|
||
if x != nil {
|
||
return x.ImageTotal
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetRecommend() int32 {
|
||
if x != nil {
|
||
return x.Recommend
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetSort() int32 {
|
||
if x != nil {
|
||
return x.Sort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetTypes() int32 {
|
||
if x != nil {
|
||
return x.Types
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *Subjoin) GetStar() int64 {
|
||
if x != nil {
|
||
return x.Star
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type ListReply struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Count int64 `protobuf:"varint,1,opt,name=count,proto3" json:"count,omitempty"` // 数量
|
||
Data []*ProductItem `protobuf:"bytes,2,rep,name=data,proto3" json:"data,omitempty"` // 产品列表
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ListReply) Reset() {
|
||
*x = ListReply{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[15]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ListReply) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ListReply) ProtoMessage() {}
|
||
|
||
func (x *ListReply) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[15]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ListReply.ProtoReflect.Descriptor instead.
|
||
func (*ListReply) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{15}
|
||
}
|
||
|
||
func (x *ListReply) GetCount() int64 {
|
||
if x != nil {
|
||
return x.Count
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ListReply) GetData() []*ProductItem {
|
||
if x != nil {
|
||
return x.Data
|
||
}
|
||
return nil
|
||
}
|
||
|
||
type ProductBase struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //商品ID
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` //商品唯一码
|
||
SupplyId int64 `protobuf:"varint,4,opt,name=supply_id,proto3" json:"supply_id,omitempty"` //供应商ID
|
||
CategoryId int64 `protobuf:"varint,6,opt,name=category_id,proto3" json:"category_id,omitempty"` //分类ID
|
||
Title string `protobuf:"bytes,8,opt,name=title,proto3" json:"title,omitempty"` //商品标题
|
||
MeasuringName string `protobuf:"bytes,99,opt,name=measuring_name,proto3" json:"measuring_name,omitempty"` // 测量单位名称
|
||
SellMax int64 `protobuf:"varint,97,opt,name=sell_max,proto3" json:"sell_max,omitempty"` // 最大限购数量
|
||
SellMin int64 `protobuf:"varint,96,opt,name=sell_min,proto3" json:"sell_min,omitempty"` // 最小限购数量
|
||
Wastage int64 `protobuf:"varint,95,opt,name=wastage,proto3" json:"wastage,omitempty"` // 损耗率
|
||
StandardNumber string `protobuf:"bytes,94,opt,name=standard_number,proto3" json:"standard_number,omitempty"` // 产品标准号
|
||
Brand string `protobuf:"bytes,93,opt,name=brand,proto3" json:"brand,omitempty"` // 品牌名称
|
||
StockType int64 `protobuf:"varint,92,opt,name=stock_type,proto3" json:"stock_type,omitempty"` // 库存计数方式:1-买方下单减库存,2-完成签约减库存
|
||
Status int32 `protobuf:"varint,91,opt,name=status,proto3" json:"status,omitempty"` // 商品状态:0-未上架,1-已上架,2-自动上架等待中,3-禁用 ,4-草稿
|
||
PutawayTime string `protobuf:"bytes,90,opt,name=putaway_time,proto3" json:"putaway_time,omitempty"` // 预定的上架时间 YYYY-MM-DD HH:mm:ss
|
||
CoverImage string `protobuf:"bytes,11,opt,name=cover_image,proto3" json:"cover_image,omitempty"` //商品封面图片
|
||
Images []string `protobuf:"bytes,24,rep,name=images,proto3" json:"images,omitempty"` // 产品图片
|
||
Content string `protobuf:"bytes,14,opt,name=content,proto3" json:"content,omitempty"` //商品详情
|
||
SerialId string `protobuf:"bytes,15,opt,name=serial_id,proto3" json:"serial_id,omitempty"` // 产品序号
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ProductBase) Reset() {
|
||
*x = ProductBase{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[16]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ProductBase) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ProductBase) ProtoMessage() {}
|
||
|
||
func (x *ProductBase) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[16]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ProductBase.ProtoReflect.Descriptor instead.
|
||
func (*ProductBase) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{16}
|
||
}
|
||
|
||
func (x *ProductBase) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetSupplyId() int64 {
|
||
if x != nil {
|
||
return x.SupplyId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetCategoryId() int64 {
|
||
if x != nil {
|
||
return x.CategoryId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetMeasuringName() string {
|
||
if x != nil {
|
||
return x.MeasuringName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetSellMax() int64 {
|
||
if x != nil {
|
||
return x.SellMax
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetSellMin() int64 {
|
||
if x != nil {
|
||
return x.SellMin
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetWastage() int64 {
|
||
if x != nil {
|
||
return x.Wastage
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetStandardNumber() string {
|
||
if x != nil {
|
||
return x.StandardNumber
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetBrand() string {
|
||
if x != nil {
|
||
return x.Brand
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetStockType() int64 {
|
||
if x != nil {
|
||
return x.StockType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetStatus() int32 {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductBase) GetPutawayTime() string {
|
||
if x != nil {
|
||
return x.PutawayTime
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetCoverImage() string {
|
||
if x != nil {
|
||
return x.CoverImage
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetImages() []string {
|
||
if x != nil {
|
||
return x.Images
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductBase) GetContent() string {
|
||
if x != nil {
|
||
return x.Content
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductBase) GetSerialId() string {
|
||
if x != nil {
|
||
return x.SerialId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type SpecItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // 唯一标识
|
||
SupplyId int64 `protobuf:"varint,3,opt,name=supply_id,proto3" json:"supply_id,omitempty"` //供应商ID
|
||
ProductIdentity string `protobuf:"bytes,4,opt,name=product_identity,proto3" json:"product_identity,omitempty"` // 产品唯一标识
|
||
StoreIdentity string `protobuf:"bytes,5,opt,name=store_identity,proto3" json:"store_identity,omitempty"` // 店铺唯一标识
|
||
Title string `protobuf:"bytes,6,opt,name=title,proto3" json:"title,omitempty"` // 名称
|
||
StockType int32 `protobuf:"varint,7,opt,name=stock_type,proto3" json:"stock_type,omitempty"` // 库存设置:1-设置库存限制,2-不设置库存限制
|
||
Stock int64 `protobuf:"varint,8,opt,name=stock,proto3" json:"stock,omitempty"` // 库存数量
|
||
Price int64 `protobuf:"varint,9,opt,name=price,proto3" json:"price,omitempty"` // 价格,单位:分
|
||
DirectSales int64 `protobuf:"varint,10,opt,name=direct_sales,proto3" json:"direct_sales,omitempty"` // 直营价格,单位:分
|
||
TpType int32 `protobuf:"varint,11,opt,name=tp_type,proto3" json:"tp_type,omitempty"` // 阶梯价设置:1-启用,2-不启用
|
||
DsTpType int32 `protobuf:"varint,12,opt,name=ds_tp_type,proto3" json:"ds_tp_type,omitempty"` // 直营阶梯价设置:1-启用,2-不启用
|
||
Img string `protobuf:"bytes,13,opt,name=img,proto3" json:"img,omitempty"` // 预览图
|
||
SpecNo string `protobuf:"bytes,14,opt,name=spec_no,proto3" json:"spec_no,omitempty"` // 规格编号
|
||
Keyword string `protobuf:"bytes,15,opt,name=keyword,proto3" json:"keyword,omitempty"` // 关键字
|
||
PurchasingPrice int64 `protobuf:"varint,16,opt,name=purchasing_price,proto3" json:"purchasing_price,omitempty"` // 进口价格,单位:分
|
||
Wholesale int64 `protobuf:"varint,17,opt,name=wholesale,proto3" json:"wholesale,omitempty"` // 代理价,单位:分
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *SpecItem) Reset() {
|
||
*x = SpecItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[17]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *SpecItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*SpecItem) ProtoMessage() {}
|
||
|
||
func (x *SpecItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[17]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use SpecItem.ProtoReflect.Descriptor instead.
|
||
func (*SpecItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{17}
|
||
}
|
||
|
||
func (x *SpecItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetSupplyId() int64 {
|
||
if x != nil {
|
||
return x.SupplyId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetProductIdentity() string {
|
||
if x != nil {
|
||
return x.ProductIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetStoreIdentity() string {
|
||
if x != nil {
|
||
return x.StoreIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetStockType() int32 {
|
||
if x != nil {
|
||
return x.StockType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetStock() int64 {
|
||
if x != nil {
|
||
return x.Stock
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetPrice() int64 {
|
||
if x != nil {
|
||
return x.Price
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetDirectSales() int64 {
|
||
if x != nil {
|
||
return x.DirectSales
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetTpType() int32 {
|
||
if x != nil {
|
||
return x.TpType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetDsTpType() int32 {
|
||
if x != nil {
|
||
return x.DsTpType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetImg() string {
|
||
if x != nil {
|
||
return x.Img
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetSpecNo() string {
|
||
if x != nil {
|
||
return x.SpecNo
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetKeyword() string {
|
||
if x != nil {
|
||
return x.Keyword
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *SpecItem) GetPurchasingPrice() int64 {
|
||
if x != nil {
|
||
return x.PurchasingPrice
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *SpecItem) GetWholesale() int64 {
|
||
if x != nil {
|
||
return x.Wholesale
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type PhotoItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // 图片名称
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` // 图片唯一标识
|
||
ProductIdentity string `protobuf:"bytes,3,opt,name=product_identity,proto3" json:"product_identity,omitempty"` // 所属产品唯一标识
|
||
Url string `protobuf:"bytes,4,opt,name=url,proto3" json:"url,omitempty"` // 图片地址
|
||
Sort int32 `protobuf:"varint,5,opt,name=sort,proto3" json:"sort,omitempty"` // 排序方式
|
||
Types string `protobuf:"bytes,6,opt,name=types,proto3" json:"types,omitempty"` // cover封面,img普通图片
|
||
Id int64 `protobuf:"varint,7,opt,name=id,proto3" json:"id,omitempty"` // 图片id
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *PhotoItem) Reset() {
|
||
*x = PhotoItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[18]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *PhotoItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*PhotoItem) ProtoMessage() {}
|
||
|
||
func (x *PhotoItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[18]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use PhotoItem.ProtoReflect.Descriptor instead.
|
||
func (*PhotoItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{18}
|
||
}
|
||
|
||
func (x *PhotoItem) GetName() string {
|
||
if x != nil {
|
||
return x.Name
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PhotoItem) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PhotoItem) GetProductIdentity() string {
|
||
if x != nil {
|
||
return x.ProductIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PhotoItem) GetUrl() string {
|
||
if x != nil {
|
||
return x.Url
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PhotoItem) GetSort() int32 {
|
||
if x != nil {
|
||
return x.Sort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *PhotoItem) GetTypes() string {
|
||
if x != nil {
|
||
return x.Types
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *PhotoItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
type CategoriesItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //ID
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"`
|
||
Title string `protobuf:"bytes,3,opt,name=title,proto3" json:"title,omitempty"` //名称
|
||
EnTitle string `protobuf:"bytes,4,opt,name=en_title,proto3" json:"en_title,omitempty"` //英文名称
|
||
ParentId int64 `protobuf:"varint,5,opt,name=parent_id,proto3" json:"parent_id,omitempty"` //上级ID
|
||
Paths string `protobuf:"bytes,6,opt,name=paths,proto3" json:"paths,omitempty"` //路径
|
||
Intro string `protobuf:"bytes,7,opt,name=intro,proto3" json:"intro,omitempty"` //简介
|
||
Icon string `protobuf:"bytes,8,opt,name=icon,proto3" json:"icon,omitempty"` //图标
|
||
Sort int32 `protobuf:"varint,9,opt,name=sort,proto3" json:"sort,omitempty"` //排序
|
||
Status int32 `protobuf:"varint,10,opt,name=status,proto3" json:"status,omitempty"` // 状态:1-正常,2停用
|
||
CreatedAt string `protobuf:"bytes,11,opt,name=created_at,proto3" json:"created_at,omitempty"` // 创建时间
|
||
Categories []*CategoriesItem `protobuf:"bytes,12,rep,name=categories,proto3" json:"categories,omitempty"` // 子集
|
||
Keys string `protobuf:"bytes,13,opt,name=keys,proto3" json:"keys,omitempty"` //关键词
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *CategoriesItem) Reset() {
|
||
*x = CategoriesItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[19]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *CategoriesItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*CategoriesItem) ProtoMessage() {}
|
||
|
||
func (x *CategoriesItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[19]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use CategoriesItem.ProtoReflect.Descriptor instead.
|
||
func (*CategoriesItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{19}
|
||
}
|
||
|
||
func (x *CategoriesItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CategoriesItem) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetEnTitle() string {
|
||
if x != nil {
|
||
return x.EnTitle
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetParentId() int64 {
|
||
if x != nil {
|
||
return x.ParentId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CategoriesItem) GetPaths() string {
|
||
if x != nil {
|
||
return x.Paths
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetIntro() string {
|
||
if x != nil {
|
||
return x.Intro
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetIcon() string {
|
||
if x != nil {
|
||
return x.Icon
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetSort() int32 {
|
||
if x != nil {
|
||
return x.Sort
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CategoriesItem) GetStatus() int32 {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *CategoriesItem) GetCreatedAt() string {
|
||
if x != nil {
|
||
return x.CreatedAt
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *CategoriesItem) GetCategories() []*CategoriesItem {
|
||
if x != nil {
|
||
return x.Categories
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *CategoriesItem) GetKeys() string {
|
||
if x != nil {
|
||
return x.Keys
|
||
}
|
||
return ""
|
||
}
|
||
|
||
type ProductItem struct {
|
||
state protoimpl.MessageState `protogen:"open.v1"`
|
||
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"` //商品ID
|
||
Identity string `protobuf:"bytes,2,opt,name=identity,proto3" json:"identity,omitempty"` //商品唯一码
|
||
SupplyId int64 `protobuf:"varint,3,opt,name=supply_id,proto3" json:"supply_id,omitempty"` //供应商ID
|
||
CategoryId []int64 `protobuf:"varint,4,rep,packed,name=category_id,proto3" json:"category_id,omitempty"` //分类ID
|
||
Title string `protobuf:"bytes,5,opt,name=title,proto3" json:"title,omitempty"` //商品标题
|
||
MeasuringName string `protobuf:"bytes,6,opt,name=measuring_name,proto3" json:"measuring_name,omitempty"` // 测量单位名称
|
||
SellMax int64 `protobuf:"varint,7,opt,name=sell_max,proto3" json:"sell_max,omitempty"` // 最大限购数量
|
||
SellMin int64 `protobuf:"varint,8,opt,name=sell_min,proto3" json:"sell_min,omitempty"` // 最小限购数量
|
||
Wastage int64 `protobuf:"varint,9,opt,name=wastage,proto3" json:"wastage,omitempty"` // 损耗率
|
||
StandardNumber string `protobuf:"bytes,10,opt,name=standard_number,proto3" json:"standard_number,omitempty"` // 产品标准号
|
||
Brand string `protobuf:"bytes,11,opt,name=brand,proto3" json:"brand,omitempty"` // 品牌名称
|
||
StockType int64 `protobuf:"varint,12,opt,name=stock_type,proto3" json:"stock_type,omitempty"` // 库存计数方式:1-买方下单减库存,2-完成签约减库存
|
||
Status int32 `protobuf:"varint,13,opt,name=status,proto3" json:"status,omitempty"` // 商品状态:1-已上架,2-自动上架等待中,3-禁用 ,4-草稿,5-未上架
|
||
PutawayTime string `protobuf:"bytes,14,opt,name=putaway_time,proto3" json:"putaway_time,omitempty"` // 预定的上架时间 YYYY-MM-DD HH:mm:ss
|
||
CoverImage string `protobuf:"bytes,15,opt,name=cover_image,proto3" json:"cover_image,omitempty"` //商品封面图片
|
||
Content string `protobuf:"bytes,16,opt,name=content,proto3" json:"content,omitempty"` //商品详情
|
||
StoreId int64 `protobuf:"varint,17,opt,name=store_id,proto3" json:"store_id,omitempty"` // 店铺的ID
|
||
StoreIdentity string `protobuf:"bytes,18,opt,name=store_identity,proto3" json:"store_identity,omitempty"` // 店铺唯一标识
|
||
TemplateId int32 `protobuf:"varint,19,opt,name=template_id,proto3" json:"template_id,omitempty"` // 运费模板id
|
||
Note string `protobuf:"bytes,20,opt,name=note,proto3" json:"note,omitempty"` // 备注
|
||
Images []*PhotoItem `protobuf:"bytes,21,rep,name=images,proto3" json:"images,omitempty"` // 产品图片
|
||
Specification []*SpecItem `protobuf:"bytes,22,rep,name=specification,proto3" json:"specification,omitempty"` // 产品规格信息
|
||
RecentNumber int64 `protobuf:"varint,23,opt,name=recent_number,proto3" json:"recent_number,omitempty"` // 近期销售数量
|
||
SaleTotal int64 `protobuf:"varint,24,opt,name=sale_total,proto3" json:"sale_total,omitempty"` // 销售总数量
|
||
CreatedAt string `protobuf:"bytes,25,opt,name=created_at,proto3" json:"created_at,omitempty"` // 创建时间
|
||
Limitation int64 `protobuf:"varint,26,opt,name=limitation,proto3" json:"limitation,omitempty"` // 区域限制:1不限制,2限制
|
||
LiTemplateId int64 `protobuf:"varint,27,opt,name=liTemplate_id,proto3" json:"liTemplate_id,omitempty"` // 区域限制的模板id
|
||
Price int64 `protobuf:"varint,28,opt,name=price,proto3" json:"price,omitempty"` // 售价(选择价格最低的规格数据)
|
||
Stock int64 `protobuf:"varint,29,opt,name=stock,proto3" json:"stock,omitempty"` // 库存(选择价格最低的规格数据)
|
||
Category string `protobuf:"bytes,30,opt,name=category,proto3" json:"category,omitempty"` // 分类名称
|
||
SerialId string `protobuf:"bytes,31,opt,name=serial_id,proto3" json:"serial_id,omitempty"` // 产品序号
|
||
GasTypes int64 `protobuf:"varint,32,opt,name=gas_types,proto3" json:"gas_types,omitempty"` // 产品分类2:1查看非燃气商品;2按瓶计算的产品;3按kg计算的产品
|
||
SpecId []int64 `protobuf:"varint,33,rep,packed,name=spec_id,proto3" json:"spec_id,omitempty"` // 规格ID
|
||
Categories []*CategoriesItem `protobuf:"bytes,34,rep,name=categories,proto3" json:"categories,omitempty"` // 分类
|
||
SupplyName string `protobuf:"bytes,35,opt,name=supply_name,proto3" json:"supply_name,omitempty"` // 供应商名称
|
||
unknownFields protoimpl.UnknownFields
|
||
sizeCache protoimpl.SizeCache
|
||
}
|
||
|
||
func (x *ProductItem) Reset() {
|
||
*x = ProductItem{}
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[20]
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
|
||
func (x *ProductItem) String() string {
|
||
return protoimpl.X.MessageStringOf(x)
|
||
}
|
||
|
||
func (*ProductItem) ProtoMessage() {}
|
||
|
||
func (x *ProductItem) ProtoReflect() protoreflect.Message {
|
||
mi := &file_module_ec_mall_proto_product_proto_msgTypes[20]
|
||
if x != nil {
|
||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
||
if ms.LoadMessageInfo() == nil {
|
||
ms.StoreMessageInfo(mi)
|
||
}
|
||
return ms
|
||
}
|
||
return mi.MessageOf(x)
|
||
}
|
||
|
||
// Deprecated: Use ProductItem.ProtoReflect.Descriptor instead.
|
||
func (*ProductItem) Descriptor() ([]byte, []int) {
|
||
return file_module_ec_mall_proto_product_proto_rawDescGZIP(), []int{20}
|
||
}
|
||
|
||
func (x *ProductItem) GetId() int64 {
|
||
if x != nil {
|
||
return x.Id
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetIdentity() string {
|
||
if x != nil {
|
||
return x.Identity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetSupplyId() int64 {
|
||
if x != nil {
|
||
return x.SupplyId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetCategoryId() []int64 {
|
||
if x != nil {
|
||
return x.CategoryId
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductItem) GetTitle() string {
|
||
if x != nil {
|
||
return x.Title
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetMeasuringName() string {
|
||
if x != nil {
|
||
return x.MeasuringName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetSellMax() int64 {
|
||
if x != nil {
|
||
return x.SellMax
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetSellMin() int64 {
|
||
if x != nil {
|
||
return x.SellMin
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetWastage() int64 {
|
||
if x != nil {
|
||
return x.Wastage
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetStandardNumber() string {
|
||
if x != nil {
|
||
return x.StandardNumber
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetBrand() string {
|
||
if x != nil {
|
||
return x.Brand
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetStockType() int64 {
|
||
if x != nil {
|
||
return x.StockType
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetStatus() int32 {
|
||
if x != nil {
|
||
return x.Status
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetPutawayTime() string {
|
||
if x != nil {
|
||
return x.PutawayTime
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetCoverImage() string {
|
||
if x != nil {
|
||
return x.CoverImage
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetContent() string {
|
||
if x != nil {
|
||
return x.Content
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetStoreId() int64 {
|
||
if x != nil {
|
||
return x.StoreId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetStoreIdentity() string {
|
||
if x != nil {
|
||
return x.StoreIdentity
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetTemplateId() int32 {
|
||
if x != nil {
|
||
return x.TemplateId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetNote() string {
|
||
if x != nil {
|
||
return x.Note
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetImages() []*PhotoItem {
|
||
if x != nil {
|
||
return x.Images
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductItem) GetSpecification() []*SpecItem {
|
||
if x != nil {
|
||
return x.Specification
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductItem) GetRecentNumber() int64 {
|
||
if x != nil {
|
||
return x.RecentNumber
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetSaleTotal() int64 {
|
||
if x != nil {
|
||
return x.SaleTotal
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetCreatedAt() string {
|
||
if x != nil {
|
||
return x.CreatedAt
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetLimitation() int64 {
|
||
if x != nil {
|
||
return x.Limitation
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetLiTemplateId() int64 {
|
||
if x != nil {
|
||
return x.LiTemplateId
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetPrice() int64 {
|
||
if x != nil {
|
||
return x.Price
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetStock() int64 {
|
||
if x != nil {
|
||
return x.Stock
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetCategory() string {
|
||
if x != nil {
|
||
return x.Category
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetSerialId() string {
|
||
if x != nil {
|
||
return x.SerialId
|
||
}
|
||
return ""
|
||
}
|
||
|
||
func (x *ProductItem) GetGasTypes() int64 {
|
||
if x != nil {
|
||
return x.GasTypes
|
||
}
|
||
return 0
|
||
}
|
||
|
||
func (x *ProductItem) GetSpecId() []int64 {
|
||
if x != nil {
|
||
return x.SpecId
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductItem) GetCategories() []*CategoriesItem {
|
||
if x != nil {
|
||
return x.Categories
|
||
}
|
||
return nil
|
||
}
|
||
|
||
func (x *ProductItem) GetSupplyName() string {
|
||
if x != nil {
|
||
return x.SupplyName
|
||
}
|
||
return ""
|
||
}
|
||
|
||
var File_module_ec_mall_proto_product_proto protoreflect.FileDescriptor
|
||
|
||
const file_module_ec_mall_proto_product_proto_rawDesc = "" +
|
||
"\n" +
|
||
"\"module/ec/mall/proto/product.proto\x12\x04mall\x1a module/ec/mall/proto/const.proto\"b\n" +
|
||
"\bAttrItem\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x12\n" +
|
||
"\x04name\x18\x02 \x01(\tR\x04name\x12\x1c\n" +
|
||
"\tparent_id\x18\x03 \x01(\x05R\tparent_id\x12\x14\n" +
|
||
"\x05value\x18\x04 \x01(\tR\x05value\"\xc1\x03\n" +
|
||
"\vCommentItem\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1e\n" +
|
||
"\n" +
|
||
"created_at\x18\x03 \x01(\tR\n" +
|
||
"created_at\x12\x1c\n" +
|
||
"\tnick_name\x18\x04 \x01(\tR\tnick_name\x12\x14\n" +
|
||
"\x05score\x18\x05 \x01(\x05R\x05score\x12\x18\n" +
|
||
"\acomment\x18\x06 \x01(\tR\acomment\x12\x14\n" +
|
||
"\x05reply\x18\a \x01(\tR\x05reply\x12*\n" +
|
||
"\x10product_identity\x18\b \x01(\tR\x10product_identity\x12&\n" +
|
||
"\x0estore_identity\x18\t \x01(\tR\x0estore_identity\x12$\n" +
|
||
"\rspec_identity\x18\n" +
|
||
" \x01(\tR\rspec_identity\x12*\n" +
|
||
"\x10comment_identity\x18\v \x01(\tR\x10comment_identity\x12\x18\n" +
|
||
"\aproduct\x18\f \x01(\tR\aproduct\x12\"\n" +
|
||
"\fproduct_spec\x18\r \x01(\tR\fproduct_spec\x12\x1e\n" +
|
||
"\n" +
|
||
"is_comment\x18\x0e \x01(\bR\n" +
|
||
"is_comment\"\xcb\x03\n" +
|
||
"\x0eCommentItemRep\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1e\n" +
|
||
"\n" +
|
||
"created_at\x18\x03 \x01(\tR\n" +
|
||
"created_at\x12\x1c\n" +
|
||
"\tnick_name\x18\x04 \x01(\tR\tnick_name\x12\x14\n" +
|
||
"\x05score\x18\x05 \x01(\x05R\x05score\x12\x18\n" +
|
||
"\acomment\x18\x06 \x01(\tR\acomment\x12\x14\n" +
|
||
"\x05reply\x18\a \x01(\tR\x05reply\x12*\n" +
|
||
"\x10product_identity\x18\b \x01(\tR\x10product_identity\x12&\n" +
|
||
"\x0estore_identity\x18\t \x01(\tR\x0estore_identity\x12$\n" +
|
||
"\rspec_identity\x18\n" +
|
||
" \x01(\tR\rspec_identity\x12*\n" +
|
||
"\x10comment_identity\x18\v \x01(\tR\x10comment_identity\x12%\n" +
|
||
"\x04list\x18\f \x03(\v2\x11.mall.CommentItemR\x04list\x12\x18\n" +
|
||
"\aproduct\x18\r \x01(\tR\aproduct\x12\"\n" +
|
||
"\fproduct_spec\x18\x0e \x01(\tR\fproduct_spec\"/\n" +
|
||
"\x13DetailBySpecRequest\x12\x18\n" +
|
||
"\aspec_no\x18\x01 \x01(\tR\aspec_no\"?\n" +
|
||
"\tOpRequest\x12\x1a\n" +
|
||
"\bidentity\x18\x01 \x03(\tR\bidentity\x12\x16\n" +
|
||
"\x06status\x18\x02 \x01(\x05R\x06status\"C\n" +
|
||
"\rModifyRequest\x12\x1a\n" +
|
||
"\bidentity\x18\x01 \x01(\tR\bidentity\x12\x16\n" +
|
||
"\x06status\x18\x02 \x01(\x05R\x06status\"\x94\x02\n" +
|
||
"\bListItem\x12\x1e\n" +
|
||
"\n" +
|
||
"product_id\x18\x02 \x01(\x03R\n" +
|
||
"product_id\x12\x18\n" +
|
||
"\aproduct\x18\x03 \x01(\tR\aproduct\x12\x18\n" +
|
||
"\aspec_id\x18\x04 \x01(\x03R\aspec_id\x12\x12\n" +
|
||
"\x04spec\x18\x05 \x01(\tR\x04spec\x12\x18\n" +
|
||
"\aspec_no\x18\x06 \x01(\tR\aspec_no\x12\x14\n" +
|
||
"\x05price\x18\a \x01(\x03R\x05price\x12\x14\n" +
|
||
"\x05count\x18\b \x01(\x03R\x05count\x12\x10\n" +
|
||
"\x03img\x18\t \x01(\tR\x03img\x12*\n" +
|
||
"\x10product_identity\x18\n" +
|
||
" \x01(\tR\x10product_identity\x12\x1c\n" +
|
||
"\tserial_id\x18\v \x01(\tR\tserial_id\"#\n" +
|
||
"\x11ListWithIdRequest\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x03(\x03R\x02id\"5\n" +
|
||
"\x0fListWithIdReply\x12\"\n" +
|
||
"\x04data\x18\x01 \x03(\v2\x0e.mall.ListItemR\x04data\"G\n" +
|
||
"\n" +
|
||
"PhotoReply\x12\x14\n" +
|
||
"\x05count\x18\x01 \x01(\x03R\x05count\x12#\n" +
|
||
"\x04data\x18\x02 \x03(\v2\x0f.mall.PhotoItemR\x04data\"E\n" +
|
||
"\tSpecReply\x12\x14\n" +
|
||
"\x05count\x18\x01 \x01(\x03R\x05count\x12\"\n" +
|
||
"\x04data\x18\x02 \x03(\v2\x0e.mall.SpecItemR\x04data\"R\n" +
|
||
"\x10CommentListReply\x12\x14\n" +
|
||
"\x05count\x18\x01 \x01(\x03R\x05count\x12(\n" +
|
||
"\x04data\x18\x02 \x03(\v2\x14.mall.CommentItemRepR\x04data\"t\n" +
|
||
"\x0eStatisticReply\x12\x14\n" +
|
||
"\x05total\x18\x01 \x01(\x03R\x05total\x12\x18\n" +
|
||
"\aselling\x18\x02 \x01(\x03R\aselling\x12\x1c\n" +
|
||
"\tforbidden\x18\x03 \x01(\x03R\tforbidden\x12\x14\n" +
|
||
"\x05draft\x18\x04 \x01(\x03R\x05draft\"T\n" +
|
||
"\x10OrgBySpecIdReply\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x14\n" +
|
||
"\x05title\x18\x03 \x01(\tR\x05title\"\x99\x03\n" +
|
||
"\aSubjoin\x12&\n" +
|
||
"\x0ecategory_paths\x18\x01 \x01(\tR\x0ecategory_paths\x12\x1c\n" +
|
||
"\tsub_title\x18\x02 \x01(\tR\tsub_title\x12\x18\n" +
|
||
"\akeyword\x18\x03 \x01(\tR\akeyword\x12\x14\n" +
|
||
"\x05stock\x18\x04 \x01(\x05R\x05stock\x12 \n" +
|
||
"\vsales_price\x18\x05 \x01(\x03R\vsales_price\x12\x12\n" +
|
||
"\x04args\x18\x06 \x01(\tR\x04args\x12$\n" +
|
||
"\rcomment_total\x18\a \x01(\x05R\rcomment_total\x12\x1e\n" +
|
||
"\n" +
|
||
"sale_total\x18\b \x01(\x05R\n" +
|
||
"sale_total\x12\x1e\n" +
|
||
"\n" +
|
||
"view_total\x18\t \x01(\x05R\n" +
|
||
"view_total\x12 \n" +
|
||
"\vimage_total\x18\n" +
|
||
" \x01(\x05R\vimage_total\x12\x1c\n" +
|
||
"\trecommend\x18\v \x01(\x05R\trecommend\x12\x12\n" +
|
||
"\x04sort\x18\f \x01(\x05R\x04sort\x12\x14\n" +
|
||
"\x05types\x18\r \x01(\x05R\x05types\x12\x12\n" +
|
||
"\x04star\x18\x0e \x01(\x03R\x04star\"H\n" +
|
||
"\tListReply\x12\x14\n" +
|
||
"\x05count\x18\x01 \x01(\x03R\x05count\x12%\n" +
|
||
"\x04data\x18\x02 \x03(\v2\x11.mall.ProductItemR\x04data\"\x97\x04\n" +
|
||
"\vProductBase\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1c\n" +
|
||
"\tsupply_id\x18\x04 \x01(\x03R\tsupply_id\x12 \n" +
|
||
"\vcategory_id\x18\x06 \x01(\x03R\vcategory_id\x12\x14\n" +
|
||
"\x05title\x18\b \x01(\tR\x05title\x12&\n" +
|
||
"\x0emeasuring_name\x18c \x01(\tR\x0emeasuring_name\x12\x1a\n" +
|
||
"\bsell_max\x18a \x01(\x03R\bsell_max\x12\x1a\n" +
|
||
"\bsell_min\x18` \x01(\x03R\bsell_min\x12\x18\n" +
|
||
"\awastage\x18_ \x01(\x03R\awastage\x12(\n" +
|
||
"\x0fstandard_number\x18^ \x01(\tR\x0fstandard_number\x12\x14\n" +
|
||
"\x05brand\x18] \x01(\tR\x05brand\x12\x1e\n" +
|
||
"\n" +
|
||
"stock_type\x18\\ \x01(\x03R\n" +
|
||
"stock_type\x12\x16\n" +
|
||
"\x06status\x18[ \x01(\x05R\x06status\x12\"\n" +
|
||
"\fputaway_time\x18Z \x01(\tR\fputaway_time\x12 \n" +
|
||
"\vcover_image\x18\v \x01(\tR\vcover_image\x12\x16\n" +
|
||
"\x06images\x18\x18 \x03(\tR\x06images\x12\x18\n" +
|
||
"\acontent\x18\x0e \x01(\tR\acontent\x12\x1c\n" +
|
||
"\tserial_id\x18\x0f \x01(\tR\tserial_id\"\xf8\x03\n" +
|
||
"\bSpecItem\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1c\n" +
|
||
"\tsupply_id\x18\x03 \x01(\x03R\tsupply_id\x12*\n" +
|
||
"\x10product_identity\x18\x04 \x01(\tR\x10product_identity\x12&\n" +
|
||
"\x0estore_identity\x18\x05 \x01(\tR\x0estore_identity\x12\x14\n" +
|
||
"\x05title\x18\x06 \x01(\tR\x05title\x12\x1e\n" +
|
||
"\n" +
|
||
"stock_type\x18\a \x01(\x05R\n" +
|
||
"stock_type\x12\x14\n" +
|
||
"\x05stock\x18\b \x01(\x03R\x05stock\x12\x14\n" +
|
||
"\x05price\x18\t \x01(\x03R\x05price\x12\"\n" +
|
||
"\fdirect_sales\x18\n" +
|
||
" \x01(\x03R\fdirect_sales\x12\x18\n" +
|
||
"\atp_type\x18\v \x01(\x05R\atp_type\x12\x1e\n" +
|
||
"\n" +
|
||
"ds_tp_type\x18\f \x01(\x05R\n" +
|
||
"ds_tp_type\x12\x10\n" +
|
||
"\x03img\x18\r \x01(\tR\x03img\x12\x18\n" +
|
||
"\aspec_no\x18\x0e \x01(\tR\aspec_no\x12\x18\n" +
|
||
"\akeyword\x18\x0f \x01(\tR\akeyword\x12*\n" +
|
||
"\x10purchasing_price\x18\x10 \x01(\x03R\x10purchasing_price\x12\x1c\n" +
|
||
"\twholesale\x18\x11 \x01(\x03R\twholesale\"\xb3\x01\n" +
|
||
"\tPhotoItem\x12\x12\n" +
|
||
"\x04name\x18\x01 \x01(\tR\x04name\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12*\n" +
|
||
"\x10product_identity\x18\x03 \x01(\tR\x10product_identity\x12\x10\n" +
|
||
"\x03url\x18\x04 \x01(\tR\x03url\x12\x12\n" +
|
||
"\x04sort\x18\x05 \x01(\x05R\x04sort\x12\x14\n" +
|
||
"\x05types\x18\x06 \x01(\tR\x05types\x12\x0e\n" +
|
||
"\x02id\x18\a \x01(\x03R\x02id\"\xe2\x02\n" +
|
||
"\x0eCategoriesItem\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x14\n" +
|
||
"\x05title\x18\x03 \x01(\tR\x05title\x12\x1a\n" +
|
||
"\ben_title\x18\x04 \x01(\tR\ben_title\x12\x1c\n" +
|
||
"\tparent_id\x18\x05 \x01(\x03R\tparent_id\x12\x14\n" +
|
||
"\x05paths\x18\x06 \x01(\tR\x05paths\x12\x14\n" +
|
||
"\x05intro\x18\a \x01(\tR\x05intro\x12\x12\n" +
|
||
"\x04icon\x18\b \x01(\tR\x04icon\x12\x12\n" +
|
||
"\x04sort\x18\t \x01(\x05R\x04sort\x12\x16\n" +
|
||
"\x06status\x18\n" +
|
||
" \x01(\x05R\x06status\x12\x1e\n" +
|
||
"\n" +
|
||
"created_at\x18\v \x01(\tR\n" +
|
||
"created_at\x124\n" +
|
||
"\n" +
|
||
"categories\x18\f \x03(\v2\x14.mall.CategoriesItemR\n" +
|
||
"categories\x12\x12\n" +
|
||
"\x04keys\x18\r \x01(\tR\x04keys\"\xdc\b\n" +
|
||
"\vProductItem\x12\x0e\n" +
|
||
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x1a\n" +
|
||
"\bidentity\x18\x02 \x01(\tR\bidentity\x12\x1c\n" +
|
||
"\tsupply_id\x18\x03 \x01(\x03R\tsupply_id\x12 \n" +
|
||
"\vcategory_id\x18\x04 \x03(\x03R\vcategory_id\x12\x14\n" +
|
||
"\x05title\x18\x05 \x01(\tR\x05title\x12&\n" +
|
||
"\x0emeasuring_name\x18\x06 \x01(\tR\x0emeasuring_name\x12\x1a\n" +
|
||
"\bsell_max\x18\a \x01(\x03R\bsell_max\x12\x1a\n" +
|
||
"\bsell_min\x18\b \x01(\x03R\bsell_min\x12\x18\n" +
|
||
"\awastage\x18\t \x01(\x03R\awastage\x12(\n" +
|
||
"\x0fstandard_number\x18\n" +
|
||
" \x01(\tR\x0fstandard_number\x12\x14\n" +
|
||
"\x05brand\x18\v \x01(\tR\x05brand\x12\x1e\n" +
|
||
"\n" +
|
||
"stock_type\x18\f \x01(\x03R\n" +
|
||
"stock_type\x12\x16\n" +
|
||
"\x06status\x18\r \x01(\x05R\x06status\x12\"\n" +
|
||
"\fputaway_time\x18\x0e \x01(\tR\fputaway_time\x12 \n" +
|
||
"\vcover_image\x18\x0f \x01(\tR\vcover_image\x12\x18\n" +
|
||
"\acontent\x18\x10 \x01(\tR\acontent\x12\x1a\n" +
|
||
"\bstore_id\x18\x11 \x01(\x03R\bstore_id\x12&\n" +
|
||
"\x0estore_identity\x18\x12 \x01(\tR\x0estore_identity\x12 \n" +
|
||
"\vtemplate_id\x18\x13 \x01(\x05R\vtemplate_id\x12\x12\n" +
|
||
"\x04note\x18\x14 \x01(\tR\x04note\x12'\n" +
|
||
"\x06images\x18\x15 \x03(\v2\x0f.mall.PhotoItemR\x06images\x124\n" +
|
||
"\rspecification\x18\x16 \x03(\v2\x0e.mall.SpecItemR\rspecification\x12$\n" +
|
||
"\rrecent_number\x18\x17 \x01(\x03R\rrecent_number\x12\x1e\n" +
|
||
"\n" +
|
||
"sale_total\x18\x18 \x01(\x03R\n" +
|
||
"sale_total\x12\x1e\n" +
|
||
"\n" +
|
||
"created_at\x18\x19 \x01(\tR\n" +
|
||
"created_at\x12\x1e\n" +
|
||
"\n" +
|
||
"limitation\x18\x1a \x01(\x03R\n" +
|
||
"limitation\x12$\n" +
|
||
"\rliTemplate_id\x18\x1b \x01(\x03R\rliTemplate_id\x12\x14\n" +
|
||
"\x05price\x18\x1c \x01(\x03R\x05price\x12\x14\n" +
|
||
"\x05stock\x18\x1d \x01(\x03R\x05stock\x12\x1a\n" +
|
||
"\bcategory\x18\x1e \x01(\tR\bcategory\x12\x1c\n" +
|
||
"\tserial_id\x18\x1f \x01(\tR\tserial_id\x12\x1c\n" +
|
||
"\tgas_types\x18 \x01(\x03R\tgas_types\x12\x18\n" +
|
||
"\aspec_id\x18! \x03(\x03R\aspec_id\x124\n" +
|
||
"\n" +
|
||
"categories\x18\" \x03(\v2\x14.mall.CategoriesItemR\n" +
|
||
"categories\x12 \n" +
|
||
"\vsupply_name\x18# \x01(\tR\vsupply_name2\xb7\n" +
|
||
"\n" +
|
||
"\aProduct\x128\n" +
|
||
"\tItemFetch\x12\x18.blocks.MallFetchRequest\x1a\x0f.mall.ListReply\"\x00\x127\n" +
|
||
"\n" +
|
||
"ItemDetail\x12\x14.blocks.IdentRequest\x1a\x11.mall.ProductItem\"\x00\x12C\n" +
|
||
"\x12ItemDetailBySerial\x12\x1a.blocks.StoreSerialRequest\x1a\x0f.mall.ListReply\"\x00\x12?\n" +
|
||
"\x10ItemDetailBySpec\x12\x19.mall.DetailBySpecRequest\x1a\x0e.mall.ListItem\"\x00\x12>\n" +
|
||
"\n" +
|
||
"ItemCreate\x12\x11.mall.ProductItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12A\n" +
|
||
"\n" +
|
||
"ItemDelete\x12\x14.blocks.IdentRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12@\n" +
|
||
"\n" +
|
||
"ItemModify\x12\x13.mall.ModifyRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12=\n" +
|
||
"\vItemBatchOp\x12\x0f.mall.OpRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x128\n" +
|
||
"\tSpecFetch\x12\x18.blocks.MallFetchRequest\x1a\x0f.mall.SpecReply\"\x00\x12;\n" +
|
||
"\n" +
|
||
"SpecCreate\x12\x0e.mall.SpecItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12;\n" +
|
||
"\n" +
|
||
"SpecModify\x12\x0e.mall.SpecItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12A\n" +
|
||
"\n" +
|
||
"SpecDelete\x12\x14.blocks.IdentRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x124\n" +
|
||
"\n" +
|
||
"SpecDetail\x12\x14.blocks.IdentRequest\x1a\x0e.mall.SpecItem\"\x00\x12=\n" +
|
||
"\vPhotoCreate\x12\x0f.mall.PhotoItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12B\n" +
|
||
"\vPhotoDelete\x12\x14.blocks.IdentRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x120\n" +
|
||
"\tPhotoList\x12\x0f.mall.PhotoItem\x1a\x10.mall.PhotoReply\"\x00\x12B\n" +
|
||
"\fCommentFetch\x12\x18.blocks.MallFetchRequest\x1a\x16.mall.CommentListReply\"\x00\x12A\n" +
|
||
"\rCommentCreate\x12\x11.mall.CommentItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12=\n" +
|
||
"\tCommentRe\x12\x11.mall.CommentItem\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12D\n" +
|
||
"\rCommentDelete\x12\x14.blocks.IdentRequest\x1a\x1b.blocks.IdentityStatusReply\"\x00\x12A\n" +
|
||
"\rCommentModify\x12\x11.mall.CommentItem\x1a\x1b.blocks.IdentityStatusReply\"\x00B!Z\x1fbsm/full/module/ec/mall/pb;mallb\x06proto3"
|
||
|
||
var (
|
||
file_module_ec_mall_proto_product_proto_rawDescOnce sync.Once
|
||
file_module_ec_mall_proto_product_proto_rawDescData []byte
|
||
)
|
||
|
||
func file_module_ec_mall_proto_product_proto_rawDescGZIP() []byte {
|
||
file_module_ec_mall_proto_product_proto_rawDescOnce.Do(func() {
|
||
file_module_ec_mall_proto_product_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_module_ec_mall_proto_product_proto_rawDesc), len(file_module_ec_mall_proto_product_proto_rawDesc)))
|
||
})
|
||
return file_module_ec_mall_proto_product_proto_rawDescData
|
||
}
|
||
|
||
var file_module_ec_mall_proto_product_proto_msgTypes = make([]protoimpl.MessageInfo, 21)
|
||
var file_module_ec_mall_proto_product_proto_goTypes = []any{
|
||
(*AttrItem)(nil), // 0: mall.AttrItem
|
||
(*CommentItem)(nil), // 1: mall.CommentItem
|
||
(*CommentItemRep)(nil), // 2: mall.CommentItemRep
|
||
(*DetailBySpecRequest)(nil), // 3: mall.DetailBySpecRequest
|
||
(*OpRequest)(nil), // 4: mall.OpRequest
|
||
(*ModifyRequest)(nil), // 5: mall.ModifyRequest
|
||
(*ListItem)(nil), // 6: mall.ListItem
|
||
(*ListWithIdRequest)(nil), // 7: mall.ListWithIdRequest
|
||
(*ListWithIdReply)(nil), // 8: mall.ListWithIdReply
|
||
(*PhotoReply)(nil), // 9: mall.PhotoReply
|
||
(*SpecReply)(nil), // 10: mall.SpecReply
|
||
(*CommentListReply)(nil), // 11: mall.CommentListReply
|
||
(*StatisticReply)(nil), // 12: mall.StatisticReply
|
||
(*OrgBySpecIdReply)(nil), // 13: mall.OrgBySpecIdReply
|
||
(*Subjoin)(nil), // 14: mall.Subjoin
|
||
(*ListReply)(nil), // 15: mall.ListReply
|
||
(*ProductBase)(nil), // 16: mall.ProductBase
|
||
(*SpecItem)(nil), // 17: mall.SpecItem
|
||
(*PhotoItem)(nil), // 18: mall.PhotoItem
|
||
(*CategoriesItem)(nil), // 19: mall.CategoriesItem
|
||
(*ProductItem)(nil), // 20: mall.ProductItem
|
||
(*MallFetchRequest)(nil), // 21: blocks.MallFetchRequest
|
||
(*IdentRequest)(nil), // 22: blocks.IdentRequest
|
||
(*StoreSerialRequest)(nil), // 23: blocks.StoreSerialRequest
|
||
(*IdentityStatusReply)(nil), // 24: blocks.IdentityStatusReply
|
||
}
|
||
var file_module_ec_mall_proto_product_proto_depIdxs = []int32{
|
||
1, // 0: mall.CommentItemRep.list:type_name -> mall.CommentItem
|
||
6, // 1: mall.ListWithIdReply.data:type_name -> mall.ListItem
|
||
18, // 2: mall.PhotoReply.data:type_name -> mall.PhotoItem
|
||
17, // 3: mall.SpecReply.data:type_name -> mall.SpecItem
|
||
2, // 4: mall.CommentListReply.data:type_name -> mall.CommentItemRep
|
||
20, // 5: mall.ListReply.data:type_name -> mall.ProductItem
|
||
19, // 6: mall.CategoriesItem.categories:type_name -> mall.CategoriesItem
|
||
18, // 7: mall.ProductItem.images:type_name -> mall.PhotoItem
|
||
17, // 8: mall.ProductItem.specification:type_name -> mall.SpecItem
|
||
19, // 9: mall.ProductItem.categories:type_name -> mall.CategoriesItem
|
||
21, // 10: mall.Product.ItemFetch:input_type -> blocks.MallFetchRequest
|
||
22, // 11: mall.Product.ItemDetail:input_type -> blocks.IdentRequest
|
||
23, // 12: mall.Product.ItemDetailBySerial:input_type -> blocks.StoreSerialRequest
|
||
3, // 13: mall.Product.ItemDetailBySpec:input_type -> mall.DetailBySpecRequest
|
||
20, // 14: mall.Product.ItemCreate:input_type -> mall.ProductItem
|
||
22, // 15: mall.Product.ItemDelete:input_type -> blocks.IdentRequest
|
||
5, // 16: mall.Product.ItemModify:input_type -> mall.ModifyRequest
|
||
4, // 17: mall.Product.ItemBatchOp:input_type -> mall.OpRequest
|
||
21, // 18: mall.Product.SpecFetch:input_type -> blocks.MallFetchRequest
|
||
17, // 19: mall.Product.SpecCreate:input_type -> mall.SpecItem
|
||
17, // 20: mall.Product.SpecModify:input_type -> mall.SpecItem
|
||
22, // 21: mall.Product.SpecDelete:input_type -> blocks.IdentRequest
|
||
22, // 22: mall.Product.SpecDetail:input_type -> blocks.IdentRequest
|
||
18, // 23: mall.Product.PhotoCreate:input_type -> mall.PhotoItem
|
||
22, // 24: mall.Product.PhotoDelete:input_type -> blocks.IdentRequest
|
||
18, // 25: mall.Product.PhotoList:input_type -> mall.PhotoItem
|
||
21, // 26: mall.Product.CommentFetch:input_type -> blocks.MallFetchRequest
|
||
1, // 27: mall.Product.CommentCreate:input_type -> mall.CommentItem
|
||
1, // 28: mall.Product.CommentRe:input_type -> mall.CommentItem
|
||
22, // 29: mall.Product.CommentDelete:input_type -> blocks.IdentRequest
|
||
1, // 30: mall.Product.CommentModify:input_type -> mall.CommentItem
|
||
15, // 31: mall.Product.ItemFetch:output_type -> mall.ListReply
|
||
20, // 32: mall.Product.ItemDetail:output_type -> mall.ProductItem
|
||
15, // 33: mall.Product.ItemDetailBySerial:output_type -> mall.ListReply
|
||
6, // 34: mall.Product.ItemDetailBySpec:output_type -> mall.ListItem
|
||
24, // 35: mall.Product.ItemCreate:output_type -> blocks.IdentityStatusReply
|
||
24, // 36: mall.Product.ItemDelete:output_type -> blocks.IdentityStatusReply
|
||
24, // 37: mall.Product.ItemModify:output_type -> blocks.IdentityStatusReply
|
||
24, // 38: mall.Product.ItemBatchOp:output_type -> blocks.IdentityStatusReply
|
||
10, // 39: mall.Product.SpecFetch:output_type -> mall.SpecReply
|
||
24, // 40: mall.Product.SpecCreate:output_type -> blocks.IdentityStatusReply
|
||
24, // 41: mall.Product.SpecModify:output_type -> blocks.IdentityStatusReply
|
||
24, // 42: mall.Product.SpecDelete:output_type -> blocks.IdentityStatusReply
|
||
17, // 43: mall.Product.SpecDetail:output_type -> mall.SpecItem
|
||
24, // 44: mall.Product.PhotoCreate:output_type -> blocks.IdentityStatusReply
|
||
24, // 45: mall.Product.PhotoDelete:output_type -> blocks.IdentityStatusReply
|
||
9, // 46: mall.Product.PhotoList:output_type -> mall.PhotoReply
|
||
11, // 47: mall.Product.CommentFetch:output_type -> mall.CommentListReply
|
||
24, // 48: mall.Product.CommentCreate:output_type -> blocks.IdentityStatusReply
|
||
24, // 49: mall.Product.CommentRe:output_type -> blocks.IdentityStatusReply
|
||
24, // 50: mall.Product.CommentDelete:output_type -> blocks.IdentityStatusReply
|
||
24, // 51: mall.Product.CommentModify:output_type -> blocks.IdentityStatusReply
|
||
31, // [31:52] is the sub-list for method output_type
|
||
10, // [10:31] is the sub-list for method input_type
|
||
10, // [10:10] is the sub-list for extension type_name
|
||
10, // [10:10] is the sub-list for extension extendee
|
||
0, // [0:10] is the sub-list for field type_name
|
||
}
|
||
|
||
func init() { file_module_ec_mall_proto_product_proto_init() }
|
||
func file_module_ec_mall_proto_product_proto_init() {
|
||
if File_module_ec_mall_proto_product_proto != nil {
|
||
return
|
||
}
|
||
file_module_ec_mall_proto_const_proto_init()
|
||
type x struct{}
|
||
out := protoimpl.TypeBuilder{
|
||
File: protoimpl.DescBuilder{
|
||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
||
RawDescriptor: unsafe.Slice(unsafe.StringData(file_module_ec_mall_proto_product_proto_rawDesc), len(file_module_ec_mall_proto_product_proto_rawDesc)),
|
||
NumEnums: 0,
|
||
NumMessages: 21,
|
||
NumExtensions: 0,
|
||
NumServices: 1,
|
||
},
|
||
GoTypes: file_module_ec_mall_proto_product_proto_goTypes,
|
||
DependencyIndexes: file_module_ec_mall_proto_product_proto_depIdxs,
|
||
MessageInfos: file_module_ec_mall_proto_product_proto_msgTypes,
|
||
}.Build()
|
||
File_module_ec_mall_proto_product_proto = out.File
|
||
file_module_ec_mall_proto_product_proto_goTypes = nil
|
||
file_module_ec_mall_proto_product_proto_depIdxs = nil
|
||
}
|