Files
full/module/ec/mall/pb/product.pb.go

2518 lines
79 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.36.11
// protoc v7.35.0
// source: module/ec/mall/proto/product.proto
package mall
import (
protobuf "bsm/full/protobuf"
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"` // 产品分类21查看非燃气商品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\x15protobuf/blocks.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
(*protobuf.MallFetchRequest)(nil), // 21: blocks.MallFetchRequest
(*protobuf.IdentRequest)(nil), // 22: blocks.IdentRequest
(*protobuf.StoreSerialRequest)(nil), // 23: blocks.StoreSerialRequest
(*protobuf.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
}
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
}