// Code generated by protoc-gen-go-grpc. DO NOT EDIT.
// versions:
// - protoc-gen-go-grpc v1.6.1
// - protoc             v7.34.1
// source: pb/plant.proto

package plant

import (
	context "context"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
)

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
// Requires gRPC-Go v1.64.0 or later.
const _ = grpc.SupportPackageIsVersion9

const (
	PlantService_GetUserProfile_FullMethodName        = "/plant.PlantService/GetUserProfile"
	PlantService_UpdateUserProfile_FullMethodName     = "/plant.PlantService/UpdateUserProfile"
	PlantService_GetMyBadges_FullMethodName           = "/plant.PlantService/GetMyBadges"
	PlantService_GetMyStars_FullMethodName            = "/plant.PlantService/GetMyStars"
	PlantService_CreatePlant_FullMethodName           = "/plant.PlantService/CreatePlant"
	PlantService_UpdatePlant_FullMethodName           = "/plant.PlantService/UpdatePlant"
	PlantService_DeletePlant_FullMethodName           = "/plant.PlantService/DeletePlant"
	PlantService_GetPlantList_FullMethodName          = "/plant.PlantService/GetPlantList"
	PlantService_GetPlantDetail_FullMethodName        = "/plant.PlantService/GetPlantDetail"
	PlantService_AddCarePlan_FullMethodName           = "/plant.PlantService/AddCarePlan"
	PlantService_DeleteCarePlan_FullMethodName        = "/plant.PlantService/DeleteCarePlan"
	PlantService_GetTodayTaskList_FullMethodName      = "/plant.PlantService/GetTodayTaskList"
	PlantService_CompleteTask_FullMethodName          = "/plant.PlantService/CompleteTask"
	PlantService_AddCareRecord_FullMethodName         = "/plant.PlantService/AddCareRecord"
	PlantService_AddGrowthRecord_FullMethodName       = "/plant.PlantService/AddGrowthRecord"
	PlantService_GetWikiList_FullMethodName           = "/plant.PlantService/GetWikiList"
	PlantService_GetWikiDetail_FullMethodName         = "/plant.PlantService/GetWikiDetail"
	PlantService_CreateWiki_FullMethodName            = "/plant.PlantService/CreateWiki"
	PlantService_UpdateWiki_FullMethodName            = "/plant.PlantService/UpdateWiki"
	PlantService_DeleteWiki_FullMethodName            = "/plant.PlantService/DeleteWiki"
	PlantService_SyncWikiVector_FullMethodName        = "/plant.PlantService/SyncWikiVector"
	PlantService_DeleteWikiVector_FullMethodName      = "/plant.PlantService/DeleteWikiVector"
	PlantService_SyncAllWikiVector_FullMethodName     = "/plant.PlantService/SyncAllWikiVector"
	PlantService_GetWikiClassList_FullMethodName      = "/plant.PlantService/GetWikiClassList"
	PlantService_CreateWikiClass_FullMethodName       = "/plant.PlantService/CreateWikiClass"
	PlantService_UpdateWikiClass_FullMethodName       = "/plant.PlantService/UpdateWikiClass"
	PlantService_DeleteWikiClass_FullMethodName       = "/plant.PlantService/DeleteWikiClass"
	PlantService_ToggleWikiStar_FullMethodName        = "/plant.PlantService/ToggleWikiStar"
	PlantService_GetMyClassifyLog_FullMethodName      = "/plant.PlantService/GetMyClassifyLog"
	PlantService_DeleteClassifyLog_FullMethodName     = "/plant.PlantService/DeleteClassifyLog"
	PlantService_CreatePost_FullMethodName            = "/plant.PlantService/CreatePost"
	PlantService_DeletePost_FullMethodName            = "/plant.PlantService/DeletePost"
	PlantService_GetPostList_FullMethodName           = "/plant.PlantService/GetPostList"
	PlantService_GetPostDetail_FullMethodName         = "/plant.PlantService/GetPostDetail"
	PlantService_CommentPost_FullMethodName           = "/plant.PlantService/CommentPost"
	PlantService_LikePost_FullMethodName              = "/plant.PlantService/LikePost"
	PlantService_StarPost_FullMethodName              = "/plant.PlantService/StarPost"
	PlantService_MediaCheckCallback_FullMethodName    = "/plant.PlantService/MediaCheckCallback"
	PlantService_GetTopicList_FullMethodName          = "/plant.PlantService/GetTopicList"
	PlantService_GetTopicDetail_FullMethodName        = "/plant.PlantService/GetTopicDetail"
	PlantService_CreateTopic_FullMethodName           = "/plant.PlantService/CreateTopic"
	PlantService_UpdateTopic_FullMethodName           = "/plant.PlantService/UpdateTopic"
	PlantService_DeleteTopic_FullMethodName           = "/plant.PlantService/DeleteTopic"
	PlantService_GetExchangeItemList_FullMethodName   = "/plant.PlantService/GetExchangeItemList"
	PlantService_GetExchangeItemDetail_FullMethodName = "/plant.PlantService/GetExchangeItemDetail"
	PlantService_CreateExchangeItem_FullMethodName    = "/plant.PlantService/CreateExchangeItem"
	PlantService_UpdateExchangeItem_FullMethodName    = "/plant.PlantService/UpdateExchangeItem"
	PlantService_DeleteExchangeItem_FullMethodName    = "/plant.PlantService/DeleteExchangeItem"
	PlantService_CreateExchangeOrder_FullMethodName   = "/plant.PlantService/CreateExchangeOrder"
	PlantService_GetMyExchangeOrders_FullMethodName   = "/plant.PlantService/GetMyExchangeOrders"
	PlantService_GetExchangeOrderList_FullMethodName  = "/plant.PlantService/GetExchangeOrderList"
	PlantService_UpdateExchangeOrder_FullMethodName   = "/plant.PlantService/UpdateExchangeOrder"
	PlantService_GetLevelConfigList_FullMethodName    = "/plant.PlantService/GetLevelConfigList"
	PlantService_GetLevelConfigDetail_FullMethodName  = "/plant.PlantService/GetLevelConfigDetail"
	PlantService_CreateLevelConfig_FullMethodName     = "/plant.PlantService/CreateLevelConfig"
	PlantService_UpdateLevelConfig_FullMethodName     = "/plant.PlantService/UpdateLevelConfig"
	PlantService_DeleteLevelConfig_FullMethodName     = "/plant.PlantService/DeleteLevelConfig"
	PlantService_GetBadgeConfigList_FullMethodName    = "/plant.PlantService/GetBadgeConfigList"
	PlantService_GetBadgeConfigDetail_FullMethodName  = "/plant.PlantService/GetBadgeConfigDetail"
	PlantService_GetBadgeConfigTree_FullMethodName    = "/plant.PlantService/GetBadgeConfigTree"
	PlantService_CreateBadgeConfig_FullMethodName     = "/plant.PlantService/CreateBadgeConfig"
	PlantService_UpdateBadgeConfig_FullMethodName     = "/plant.PlantService/UpdateBadgeConfig"
	PlantService_DeleteBadgeConfig_FullMethodName     = "/plant.PlantService/DeleteBadgeConfig"
	PlantService_GetWikiClassDetail_FullMethodName    = "/plant.PlantService/GetWikiClassDetail"
	PlantService_GetAiChatHistory_FullMethodName      = "/plant.PlantService/GetAiChatHistory"
	PlantService_SaveAiChatHistory_FullMethodName     = "/plant.PlantService/SaveAiChatHistory"
	PlantService_DeleteAiChatHistory_FullMethodName   = "/plant.PlantService/DeleteAiChatHistory"
	PlantService_ClearAiChatHistory_FullMethodName    = "/plant.PlantService/ClearAiChatHistory"
	PlantService_GetAiChatQuota_FullMethodName        = "/plant.PlantService/GetAiChatQuota"
)

// PlantServiceClient is the client API for PlantService service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream.
type PlantServiceClient interface {
	// 用户Profile
	GetUserProfile(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*PlantUserProfile, error)
	UpdateUserProfile(ctx context.Context, in *UpdateProfileReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetMyBadges(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*UserBadgeListResp, error)
	GetMyStars(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*UserStarListResp, error)
	// 我的植物
	CreatePlant(ctx context.Context, in *CreatePlantReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdatePlant(ctx context.Context, in *UpdatePlantReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeletePlant(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetPlantList(ctx context.Context, in *PlantListReq, opts ...grpc.CallOption) (*PlantListResp, error)
	GetPlantDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*PlantDetailResp, error)
	// 养护
	AddCarePlan(ctx context.Context, in *AddCarePlanReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteCarePlan(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetTodayTaskList(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*CareTaskListResp, error)
	CompleteTask(ctx context.Context, in *CompleteTaskReq, opts ...grpc.CallOption) (*TaskCompletionResult, error)
	AddCareRecord(ctx context.Context, in *AddCareRecordReq, opts ...grpc.CallOption) (*CommonResp, error)
	AddGrowthRecord(ctx context.Context, in *AddGrowthRecordReq, opts ...grpc.CallOption) (*CommonResp, error)
	// 百科
	GetWikiList(ctx context.Context, in *WikiListReq, opts ...grpc.CallOption) (*WikiListResp, error)
	GetWikiDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiDetailResp, error)
	CreateWiki(ctx context.Context, in *CreateWikiReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateWiki(ctx context.Context, in *UpdateWikiReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteWiki(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	SyncWikiVector(ctx context.Context, in *SyncWikiVectorReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteWikiVector(ctx context.Context, in *SyncWikiVectorReq, opts ...grpc.CallOption) (*CommonResp, error)
	SyncAllWikiVector(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetWikiClassList(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiClassListResp, error)
	CreateWikiClass(ctx context.Context, in *CreateWikiClassReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateWikiClass(ctx context.Context, in *UpdateWikiClassReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteWikiClass(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	ToggleWikiStar(ctx context.Context, in *ToggleStarReq, opts ...grpc.CallOption) (*CommonResp, error)
	// OCR
	GetMyClassifyLog(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*ClassifyLogListResp, error)
	DeleteClassifyLog(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	// 社区
	CreatePost(ctx context.Context, in *CreatePostReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeletePost(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetPostList(ctx context.Context, in *PostListReq, opts ...grpc.CallOption) (*PostListResp, error)
	GetPostDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*PostDetailResp, error)
	CommentPost(ctx context.Context, in *CommentPostReq, opts ...grpc.CallOption) (*CommonResp, error)
	LikePost(ctx context.Context, in *LikePostReq, opts ...grpc.CallOption) (*CommonResp, error)
	StarPost(ctx context.Context, in *LikePostReq, opts ...grpc.CallOption) (*CommonResp, error)
	MediaCheckCallback(ctx context.Context, in *MediaCheckCallbackReq, opts ...grpc.CallOption) (*CommonResp, error)
	// 话题
	GetTopicList(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*TopicListResp, error)
	GetTopicDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*TopicInfo, error)
	CreateTopic(ctx context.Context, in *CreateTopicReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateTopic(ctx context.Context, in *UpdateTopicReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteTopic(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	// 兑换
	GetExchangeItemList(ctx context.Context, in *ExchangeItemListReq, opts ...grpc.CallOption) (*ExchangeItemListResp, error)
	GetExchangeItemDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*ExchangeItemInfo, error)
	CreateExchangeItem(ctx context.Context, in *CreateExchangeItemReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateExchangeItem(ctx context.Context, in *UpdateExchangeItemReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteExchangeItem(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	CreateExchangeOrder(ctx context.Context, in *CreateExchangeOrderReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetMyExchangeOrders(ctx context.Context, in *ExchangeOrderListReq, opts ...grpc.CallOption) (*ExchangeOrderListResp, error)
	GetExchangeOrderList(ctx context.Context, in *ExchangeOrderListReq, opts ...grpc.CallOption) (*ExchangeOrderListResp, error)
	UpdateExchangeOrder(ctx context.Context, in *UpdateExchangeOrderReq, opts ...grpc.CallOption) (*CommonResp, error)
	// 配置
	GetLevelConfigList(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*LevelConfigListResp, error)
	GetLevelConfigDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*LevelConfigInfo, error)
	CreateLevelConfig(ctx context.Context, in *CreateLevelConfigReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateLevelConfig(ctx context.Context, in *UpdateLevelConfigReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteLevelConfig(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetBadgeConfigList(ctx context.Context, in *BadgeConfigListReq, opts ...grpc.CallOption) (*BadgeConfigListResp, error)
	GetBadgeConfigDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*BadgeConfigInfo, error)
	GetBadgeConfigTree(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*BadgeConfigTreeResp, error)
	CreateBadgeConfig(ctx context.Context, in *CreateBadgeConfigReq, opts ...grpc.CallOption) (*CommonResp, error)
	UpdateBadgeConfig(ctx context.Context, in *UpdateBadgeConfigReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteBadgeConfig(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetWikiClassDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiClassInfo, error)
	// AI
	GetAiChatHistory(ctx context.Context, in *AiChatHistoryReq, opts ...grpc.CallOption) (*AiChatHistoryResp, error)
	SaveAiChatHistory(ctx context.Context, in *SaveAiChatHistoryReq, opts ...grpc.CallOption) (*CommonResp, error)
	DeleteAiChatHistory(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error)
	ClearAiChatHistory(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*CommonResp, error)
	GetAiChatQuota(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*AiQuotaResp, error)
}

type plantServiceClient struct {
	cc grpc.ClientConnInterface
}

func NewPlantServiceClient(cc grpc.ClientConnInterface) PlantServiceClient {
	return &plantServiceClient{cc}
}

func (c *plantServiceClient) GetUserProfile(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*PlantUserProfile, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(PlantUserProfile)
	err := c.cc.Invoke(ctx, PlantService_GetUserProfile_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateUserProfile(ctx context.Context, in *UpdateProfileReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateUserProfile_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetMyBadges(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*UserBadgeListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(UserBadgeListResp)
	err := c.cc.Invoke(ctx, PlantService_GetMyBadges_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetMyStars(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*UserStarListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(UserStarListResp)
	err := c.cc.Invoke(ctx, PlantService_GetMyStars_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreatePlant(ctx context.Context, in *CreatePlantReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreatePlant_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdatePlant(ctx context.Context, in *UpdatePlantReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdatePlant_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeletePlant(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeletePlant_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetPlantList(ctx context.Context, in *PlantListReq, opts ...grpc.CallOption) (*PlantListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(PlantListResp)
	err := c.cc.Invoke(ctx, PlantService_GetPlantList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetPlantDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*PlantDetailResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(PlantDetailResp)
	err := c.cc.Invoke(ctx, PlantService_GetPlantDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) AddCarePlan(ctx context.Context, in *AddCarePlanReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_AddCarePlan_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteCarePlan(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteCarePlan_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetTodayTaskList(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*CareTaskListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CareTaskListResp)
	err := c.cc.Invoke(ctx, PlantService_GetTodayTaskList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CompleteTask(ctx context.Context, in *CompleteTaskReq, opts ...grpc.CallOption) (*TaskCompletionResult, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(TaskCompletionResult)
	err := c.cc.Invoke(ctx, PlantService_CompleteTask_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) AddCareRecord(ctx context.Context, in *AddCareRecordReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_AddCareRecord_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) AddGrowthRecord(ctx context.Context, in *AddGrowthRecordReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_AddGrowthRecord_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetWikiList(ctx context.Context, in *WikiListReq, opts ...grpc.CallOption) (*WikiListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(WikiListResp)
	err := c.cc.Invoke(ctx, PlantService_GetWikiList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetWikiDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiDetailResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(WikiDetailResp)
	err := c.cc.Invoke(ctx, PlantService_GetWikiDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateWiki(ctx context.Context, in *CreateWikiReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateWiki_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateWiki(ctx context.Context, in *UpdateWikiReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateWiki_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteWiki(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteWiki_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) SyncWikiVector(ctx context.Context, in *SyncWikiVectorReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_SyncWikiVector_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteWikiVector(ctx context.Context, in *SyncWikiVectorReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteWikiVector_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) SyncAllWikiVector(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_SyncAllWikiVector_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetWikiClassList(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiClassListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(WikiClassListResp)
	err := c.cc.Invoke(ctx, PlantService_GetWikiClassList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateWikiClass(ctx context.Context, in *CreateWikiClassReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateWikiClass_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateWikiClass(ctx context.Context, in *UpdateWikiClassReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateWikiClass_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteWikiClass(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteWikiClass_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) ToggleWikiStar(ctx context.Context, in *ToggleStarReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_ToggleWikiStar_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetMyClassifyLog(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*ClassifyLogListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ClassifyLogListResp)
	err := c.cc.Invoke(ctx, PlantService_GetMyClassifyLog_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteClassifyLog(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteClassifyLog_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreatePost(ctx context.Context, in *CreatePostReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreatePost_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeletePost(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeletePost_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetPostList(ctx context.Context, in *PostListReq, opts ...grpc.CallOption) (*PostListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(PostListResp)
	err := c.cc.Invoke(ctx, PlantService_GetPostList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetPostDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*PostDetailResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(PostDetailResp)
	err := c.cc.Invoke(ctx, PlantService_GetPostDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CommentPost(ctx context.Context, in *CommentPostReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CommentPost_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) LikePost(ctx context.Context, in *LikePostReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_LikePost_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) StarPost(ctx context.Context, in *LikePostReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_StarPost_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) MediaCheckCallback(ctx context.Context, in *MediaCheckCallbackReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_MediaCheckCallback_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetTopicList(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*TopicListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(TopicListResp)
	err := c.cc.Invoke(ctx, PlantService_GetTopicList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetTopicDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*TopicInfo, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(TopicInfo)
	err := c.cc.Invoke(ctx, PlantService_GetTopicDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateTopic(ctx context.Context, in *CreateTopicReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateTopic_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateTopic(ctx context.Context, in *UpdateTopicReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateTopic_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteTopic(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteTopic_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetExchangeItemList(ctx context.Context, in *ExchangeItemListReq, opts ...grpc.CallOption) (*ExchangeItemListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ExchangeItemListResp)
	err := c.cc.Invoke(ctx, PlantService_GetExchangeItemList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetExchangeItemDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*ExchangeItemInfo, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ExchangeItemInfo)
	err := c.cc.Invoke(ctx, PlantService_GetExchangeItemDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateExchangeItem(ctx context.Context, in *CreateExchangeItemReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateExchangeItem_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateExchangeItem(ctx context.Context, in *UpdateExchangeItemReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateExchangeItem_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteExchangeItem(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteExchangeItem_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateExchangeOrder(ctx context.Context, in *CreateExchangeOrderReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateExchangeOrder_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetMyExchangeOrders(ctx context.Context, in *ExchangeOrderListReq, opts ...grpc.CallOption) (*ExchangeOrderListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ExchangeOrderListResp)
	err := c.cc.Invoke(ctx, PlantService_GetMyExchangeOrders_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetExchangeOrderList(ctx context.Context, in *ExchangeOrderListReq, opts ...grpc.CallOption) (*ExchangeOrderListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(ExchangeOrderListResp)
	err := c.cc.Invoke(ctx, PlantService_GetExchangeOrderList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateExchangeOrder(ctx context.Context, in *UpdateExchangeOrderReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateExchangeOrder_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetLevelConfigList(ctx context.Context, in *PageReq, opts ...grpc.CallOption) (*LevelConfigListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(LevelConfigListResp)
	err := c.cc.Invoke(ctx, PlantService_GetLevelConfigList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetLevelConfigDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*LevelConfigInfo, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(LevelConfigInfo)
	err := c.cc.Invoke(ctx, PlantService_GetLevelConfigDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateLevelConfig(ctx context.Context, in *CreateLevelConfigReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateLevelConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateLevelConfig(ctx context.Context, in *UpdateLevelConfigReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateLevelConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteLevelConfig(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteLevelConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetBadgeConfigList(ctx context.Context, in *BadgeConfigListReq, opts ...grpc.CallOption) (*BadgeConfigListResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(BadgeConfigListResp)
	err := c.cc.Invoke(ctx, PlantService_GetBadgeConfigList_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetBadgeConfigDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*BadgeConfigInfo, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(BadgeConfigInfo)
	err := c.cc.Invoke(ctx, PlantService_GetBadgeConfigDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetBadgeConfigTree(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*BadgeConfigTreeResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(BadgeConfigTreeResp)
	err := c.cc.Invoke(ctx, PlantService_GetBadgeConfigTree_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) CreateBadgeConfig(ctx context.Context, in *CreateBadgeConfigReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_CreateBadgeConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) UpdateBadgeConfig(ctx context.Context, in *UpdateBadgeConfigReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_UpdateBadgeConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteBadgeConfig(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteBadgeConfig_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetWikiClassDetail(ctx context.Context, in *IdReq, opts ...grpc.CallOption) (*WikiClassInfo, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(WikiClassInfo)
	err := c.cc.Invoke(ctx, PlantService_GetWikiClassDetail_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetAiChatHistory(ctx context.Context, in *AiChatHistoryReq, opts ...grpc.CallOption) (*AiChatHistoryResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(AiChatHistoryResp)
	err := c.cc.Invoke(ctx, PlantService_GetAiChatHistory_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) SaveAiChatHistory(ctx context.Context, in *SaveAiChatHistoryReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_SaveAiChatHistory_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) DeleteAiChatHistory(ctx context.Context, in *IdsReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_DeleteAiChatHistory_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) ClearAiChatHistory(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*CommonResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(CommonResp)
	err := c.cc.Invoke(ctx, PlantService_ClearAiChatHistory_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *plantServiceClient) GetAiChatQuota(ctx context.Context, in *GetProfileReq, opts ...grpc.CallOption) (*AiQuotaResp, error) {
	cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
	out := new(AiQuotaResp)
	err := c.cc.Invoke(ctx, PlantService_GetAiChatQuota_FullMethodName, in, out, cOpts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// PlantServiceServer is the server API for PlantService service.
// All implementations must embed UnimplementedPlantServiceServer
// for forward compatibility.
type PlantServiceServer interface {
	// 用户Profile
	GetUserProfile(context.Context, *GetProfileReq) (*PlantUserProfile, error)
	UpdateUserProfile(context.Context, *UpdateProfileReq) (*CommonResp, error)
	GetMyBadges(context.Context, *GetProfileReq) (*UserBadgeListResp, error)
	GetMyStars(context.Context, *GetProfileReq) (*UserStarListResp, error)
	// 我的植物
	CreatePlant(context.Context, *CreatePlantReq) (*CommonResp, error)
	UpdatePlant(context.Context, *UpdatePlantReq) (*CommonResp, error)
	DeletePlant(context.Context, *IdsReq) (*CommonResp, error)
	GetPlantList(context.Context, *PlantListReq) (*PlantListResp, error)
	GetPlantDetail(context.Context, *IdReq) (*PlantDetailResp, error)
	// 养护
	AddCarePlan(context.Context, *AddCarePlanReq) (*CommonResp, error)
	DeleteCarePlan(context.Context, *IdsReq) (*CommonResp, error)
	GetTodayTaskList(context.Context, *GetProfileReq) (*CareTaskListResp, error)
	CompleteTask(context.Context, *CompleteTaskReq) (*TaskCompletionResult, error)
	AddCareRecord(context.Context, *AddCareRecordReq) (*CommonResp, error)
	AddGrowthRecord(context.Context, *AddGrowthRecordReq) (*CommonResp, error)
	// 百科
	GetWikiList(context.Context, *WikiListReq) (*WikiListResp, error)
	GetWikiDetail(context.Context, *IdReq) (*WikiDetailResp, error)
	CreateWiki(context.Context, *CreateWikiReq) (*CommonResp, error)
	UpdateWiki(context.Context, *UpdateWikiReq) (*CommonResp, error)
	DeleteWiki(context.Context, *IdsReq) (*CommonResp, error)
	SyncWikiVector(context.Context, *SyncWikiVectorReq) (*CommonResp, error)
	DeleteWikiVector(context.Context, *SyncWikiVectorReq) (*CommonResp, error)
	SyncAllWikiVector(context.Context, *PageReq) (*CommonResp, error)
	GetWikiClassList(context.Context, *IdReq) (*WikiClassListResp, error)
	CreateWikiClass(context.Context, *CreateWikiClassReq) (*CommonResp, error)
	UpdateWikiClass(context.Context, *UpdateWikiClassReq) (*CommonResp, error)
	DeleteWikiClass(context.Context, *IdsReq) (*CommonResp, error)
	ToggleWikiStar(context.Context, *ToggleStarReq) (*CommonResp, error)
	// OCR
	GetMyClassifyLog(context.Context, *GetProfileReq) (*ClassifyLogListResp, error)
	DeleteClassifyLog(context.Context, *IdsReq) (*CommonResp, error)
	// 社区
	CreatePost(context.Context, *CreatePostReq) (*CommonResp, error)
	DeletePost(context.Context, *IdsReq) (*CommonResp, error)
	GetPostList(context.Context, *PostListReq) (*PostListResp, error)
	GetPostDetail(context.Context, *IdReq) (*PostDetailResp, error)
	CommentPost(context.Context, *CommentPostReq) (*CommonResp, error)
	LikePost(context.Context, *LikePostReq) (*CommonResp, error)
	StarPost(context.Context, *LikePostReq) (*CommonResp, error)
	MediaCheckCallback(context.Context, *MediaCheckCallbackReq) (*CommonResp, error)
	// 话题
	GetTopicList(context.Context, *IdReq) (*TopicListResp, error)
	GetTopicDetail(context.Context, *IdReq) (*TopicInfo, error)
	CreateTopic(context.Context, *CreateTopicReq) (*CommonResp, error)
	UpdateTopic(context.Context, *UpdateTopicReq) (*CommonResp, error)
	DeleteTopic(context.Context, *IdsReq) (*CommonResp, error)
	// 兑换
	GetExchangeItemList(context.Context, *ExchangeItemListReq) (*ExchangeItemListResp, error)
	GetExchangeItemDetail(context.Context, *IdReq) (*ExchangeItemInfo, error)
	CreateExchangeItem(context.Context, *CreateExchangeItemReq) (*CommonResp, error)
	UpdateExchangeItem(context.Context, *UpdateExchangeItemReq) (*CommonResp, error)
	DeleteExchangeItem(context.Context, *IdsReq) (*CommonResp, error)
	CreateExchangeOrder(context.Context, *CreateExchangeOrderReq) (*CommonResp, error)
	GetMyExchangeOrders(context.Context, *ExchangeOrderListReq) (*ExchangeOrderListResp, error)
	GetExchangeOrderList(context.Context, *ExchangeOrderListReq) (*ExchangeOrderListResp, error)
	UpdateExchangeOrder(context.Context, *UpdateExchangeOrderReq) (*CommonResp, error)
	// 配置
	GetLevelConfigList(context.Context, *PageReq) (*LevelConfigListResp, error)
	GetLevelConfigDetail(context.Context, *IdReq) (*LevelConfigInfo, error)
	CreateLevelConfig(context.Context, *CreateLevelConfigReq) (*CommonResp, error)
	UpdateLevelConfig(context.Context, *UpdateLevelConfigReq) (*CommonResp, error)
	DeleteLevelConfig(context.Context, *IdsReq) (*CommonResp, error)
	GetBadgeConfigList(context.Context, *BadgeConfigListReq) (*BadgeConfigListResp, error)
	GetBadgeConfigDetail(context.Context, *IdReq) (*BadgeConfigInfo, error)
	GetBadgeConfigTree(context.Context, *IdReq) (*BadgeConfigTreeResp, error)
	CreateBadgeConfig(context.Context, *CreateBadgeConfigReq) (*CommonResp, error)
	UpdateBadgeConfig(context.Context, *UpdateBadgeConfigReq) (*CommonResp, error)
	DeleteBadgeConfig(context.Context, *IdsReq) (*CommonResp, error)
	GetWikiClassDetail(context.Context, *IdReq) (*WikiClassInfo, error)
	// AI
	GetAiChatHistory(context.Context, *AiChatHistoryReq) (*AiChatHistoryResp, error)
	SaveAiChatHistory(context.Context, *SaveAiChatHistoryReq) (*CommonResp, error)
	DeleteAiChatHistory(context.Context, *IdsReq) (*CommonResp, error)
	ClearAiChatHistory(context.Context, *GetProfileReq) (*CommonResp, error)
	GetAiChatQuota(context.Context, *GetProfileReq) (*AiQuotaResp, error)
	mustEmbedUnimplementedPlantServiceServer()
}

// UnimplementedPlantServiceServer must be embedded to have
// forward compatible implementations.
//
// NOTE: this should be embedded by value instead of pointer to avoid a nil
// pointer dereference when methods are called.
type UnimplementedPlantServiceServer struct{}

func (UnimplementedPlantServiceServer) GetUserProfile(context.Context, *GetProfileReq) (*PlantUserProfile, error) {
	return nil, status.Error(codes.Unimplemented, "method GetUserProfile not implemented")
}
func (UnimplementedPlantServiceServer) UpdateUserProfile(context.Context, *UpdateProfileReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateUserProfile not implemented")
}
func (UnimplementedPlantServiceServer) GetMyBadges(context.Context, *GetProfileReq) (*UserBadgeListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetMyBadges not implemented")
}
func (UnimplementedPlantServiceServer) GetMyStars(context.Context, *GetProfileReq) (*UserStarListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetMyStars not implemented")
}
func (UnimplementedPlantServiceServer) CreatePlant(context.Context, *CreatePlantReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreatePlant not implemented")
}
func (UnimplementedPlantServiceServer) UpdatePlant(context.Context, *UpdatePlantReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdatePlant not implemented")
}
func (UnimplementedPlantServiceServer) DeletePlant(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeletePlant not implemented")
}
func (UnimplementedPlantServiceServer) GetPlantList(context.Context, *PlantListReq) (*PlantListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetPlantList not implemented")
}
func (UnimplementedPlantServiceServer) GetPlantDetail(context.Context, *IdReq) (*PlantDetailResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetPlantDetail not implemented")
}
func (UnimplementedPlantServiceServer) AddCarePlan(context.Context, *AddCarePlanReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method AddCarePlan not implemented")
}
func (UnimplementedPlantServiceServer) DeleteCarePlan(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteCarePlan not implemented")
}
func (UnimplementedPlantServiceServer) GetTodayTaskList(context.Context, *GetProfileReq) (*CareTaskListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetTodayTaskList not implemented")
}
func (UnimplementedPlantServiceServer) CompleteTask(context.Context, *CompleteTaskReq) (*TaskCompletionResult, error) {
	return nil, status.Error(codes.Unimplemented, "method CompleteTask not implemented")
}
func (UnimplementedPlantServiceServer) AddCareRecord(context.Context, *AddCareRecordReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method AddCareRecord not implemented")
}
func (UnimplementedPlantServiceServer) AddGrowthRecord(context.Context, *AddGrowthRecordReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method AddGrowthRecord not implemented")
}
func (UnimplementedPlantServiceServer) GetWikiList(context.Context, *WikiListReq) (*WikiListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetWikiList not implemented")
}
func (UnimplementedPlantServiceServer) GetWikiDetail(context.Context, *IdReq) (*WikiDetailResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetWikiDetail not implemented")
}
func (UnimplementedPlantServiceServer) CreateWiki(context.Context, *CreateWikiReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateWiki not implemented")
}
func (UnimplementedPlantServiceServer) UpdateWiki(context.Context, *UpdateWikiReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateWiki not implemented")
}
func (UnimplementedPlantServiceServer) DeleteWiki(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteWiki not implemented")
}
func (UnimplementedPlantServiceServer) SyncWikiVector(context.Context, *SyncWikiVectorReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method SyncWikiVector not implemented")
}
func (UnimplementedPlantServiceServer) DeleteWikiVector(context.Context, *SyncWikiVectorReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteWikiVector not implemented")
}
func (UnimplementedPlantServiceServer) SyncAllWikiVector(context.Context, *PageReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method SyncAllWikiVector not implemented")
}
func (UnimplementedPlantServiceServer) GetWikiClassList(context.Context, *IdReq) (*WikiClassListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetWikiClassList not implemented")
}
func (UnimplementedPlantServiceServer) CreateWikiClass(context.Context, *CreateWikiClassReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateWikiClass not implemented")
}
func (UnimplementedPlantServiceServer) UpdateWikiClass(context.Context, *UpdateWikiClassReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateWikiClass not implemented")
}
func (UnimplementedPlantServiceServer) DeleteWikiClass(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteWikiClass not implemented")
}
func (UnimplementedPlantServiceServer) ToggleWikiStar(context.Context, *ToggleStarReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method ToggleWikiStar not implemented")
}
func (UnimplementedPlantServiceServer) GetMyClassifyLog(context.Context, *GetProfileReq) (*ClassifyLogListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetMyClassifyLog not implemented")
}
func (UnimplementedPlantServiceServer) DeleteClassifyLog(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteClassifyLog not implemented")
}
func (UnimplementedPlantServiceServer) CreatePost(context.Context, *CreatePostReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreatePost not implemented")
}
func (UnimplementedPlantServiceServer) DeletePost(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeletePost not implemented")
}
func (UnimplementedPlantServiceServer) GetPostList(context.Context, *PostListReq) (*PostListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetPostList not implemented")
}
func (UnimplementedPlantServiceServer) GetPostDetail(context.Context, *IdReq) (*PostDetailResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetPostDetail not implemented")
}
func (UnimplementedPlantServiceServer) CommentPost(context.Context, *CommentPostReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CommentPost not implemented")
}
func (UnimplementedPlantServiceServer) LikePost(context.Context, *LikePostReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method LikePost not implemented")
}
func (UnimplementedPlantServiceServer) StarPost(context.Context, *LikePostReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method StarPost not implemented")
}
func (UnimplementedPlantServiceServer) MediaCheckCallback(context.Context, *MediaCheckCallbackReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method MediaCheckCallback not implemented")
}
func (UnimplementedPlantServiceServer) GetTopicList(context.Context, *IdReq) (*TopicListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetTopicList not implemented")
}
func (UnimplementedPlantServiceServer) GetTopicDetail(context.Context, *IdReq) (*TopicInfo, error) {
	return nil, status.Error(codes.Unimplemented, "method GetTopicDetail not implemented")
}
func (UnimplementedPlantServiceServer) CreateTopic(context.Context, *CreateTopicReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateTopic not implemented")
}
func (UnimplementedPlantServiceServer) UpdateTopic(context.Context, *UpdateTopicReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateTopic not implemented")
}
func (UnimplementedPlantServiceServer) DeleteTopic(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteTopic not implemented")
}
func (UnimplementedPlantServiceServer) GetExchangeItemList(context.Context, *ExchangeItemListReq) (*ExchangeItemListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetExchangeItemList not implemented")
}
func (UnimplementedPlantServiceServer) GetExchangeItemDetail(context.Context, *IdReq) (*ExchangeItemInfo, error) {
	return nil, status.Error(codes.Unimplemented, "method GetExchangeItemDetail not implemented")
}
func (UnimplementedPlantServiceServer) CreateExchangeItem(context.Context, *CreateExchangeItemReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateExchangeItem not implemented")
}
func (UnimplementedPlantServiceServer) UpdateExchangeItem(context.Context, *UpdateExchangeItemReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateExchangeItem not implemented")
}
func (UnimplementedPlantServiceServer) DeleteExchangeItem(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteExchangeItem not implemented")
}
func (UnimplementedPlantServiceServer) CreateExchangeOrder(context.Context, *CreateExchangeOrderReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateExchangeOrder not implemented")
}
func (UnimplementedPlantServiceServer) GetMyExchangeOrders(context.Context, *ExchangeOrderListReq) (*ExchangeOrderListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetMyExchangeOrders not implemented")
}
func (UnimplementedPlantServiceServer) GetExchangeOrderList(context.Context, *ExchangeOrderListReq) (*ExchangeOrderListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetExchangeOrderList not implemented")
}
func (UnimplementedPlantServiceServer) UpdateExchangeOrder(context.Context, *UpdateExchangeOrderReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateExchangeOrder not implemented")
}
func (UnimplementedPlantServiceServer) GetLevelConfigList(context.Context, *PageReq) (*LevelConfigListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetLevelConfigList not implemented")
}
func (UnimplementedPlantServiceServer) GetLevelConfigDetail(context.Context, *IdReq) (*LevelConfigInfo, error) {
	return nil, status.Error(codes.Unimplemented, "method GetLevelConfigDetail not implemented")
}
func (UnimplementedPlantServiceServer) CreateLevelConfig(context.Context, *CreateLevelConfigReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateLevelConfig not implemented")
}
func (UnimplementedPlantServiceServer) UpdateLevelConfig(context.Context, *UpdateLevelConfigReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateLevelConfig not implemented")
}
func (UnimplementedPlantServiceServer) DeleteLevelConfig(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteLevelConfig not implemented")
}
func (UnimplementedPlantServiceServer) GetBadgeConfigList(context.Context, *BadgeConfigListReq) (*BadgeConfigListResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetBadgeConfigList not implemented")
}
func (UnimplementedPlantServiceServer) GetBadgeConfigDetail(context.Context, *IdReq) (*BadgeConfigInfo, error) {
	return nil, status.Error(codes.Unimplemented, "method GetBadgeConfigDetail not implemented")
}
func (UnimplementedPlantServiceServer) GetBadgeConfigTree(context.Context, *IdReq) (*BadgeConfigTreeResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetBadgeConfigTree not implemented")
}
func (UnimplementedPlantServiceServer) CreateBadgeConfig(context.Context, *CreateBadgeConfigReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method CreateBadgeConfig not implemented")
}
func (UnimplementedPlantServiceServer) UpdateBadgeConfig(context.Context, *UpdateBadgeConfigReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method UpdateBadgeConfig not implemented")
}
func (UnimplementedPlantServiceServer) DeleteBadgeConfig(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteBadgeConfig not implemented")
}
func (UnimplementedPlantServiceServer) GetWikiClassDetail(context.Context, *IdReq) (*WikiClassInfo, error) {
	return nil, status.Error(codes.Unimplemented, "method GetWikiClassDetail not implemented")
}
func (UnimplementedPlantServiceServer) GetAiChatHistory(context.Context, *AiChatHistoryReq) (*AiChatHistoryResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetAiChatHistory not implemented")
}
func (UnimplementedPlantServiceServer) SaveAiChatHistory(context.Context, *SaveAiChatHistoryReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method SaveAiChatHistory not implemented")
}
func (UnimplementedPlantServiceServer) DeleteAiChatHistory(context.Context, *IdsReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method DeleteAiChatHistory not implemented")
}
func (UnimplementedPlantServiceServer) ClearAiChatHistory(context.Context, *GetProfileReq) (*CommonResp, error) {
	return nil, status.Error(codes.Unimplemented, "method ClearAiChatHistory not implemented")
}
func (UnimplementedPlantServiceServer) GetAiChatQuota(context.Context, *GetProfileReq) (*AiQuotaResp, error) {
	return nil, status.Error(codes.Unimplemented, "method GetAiChatQuota not implemented")
}
func (UnimplementedPlantServiceServer) mustEmbedUnimplementedPlantServiceServer() {}
func (UnimplementedPlantServiceServer) testEmbeddedByValue()                      {}

// UnsafePlantServiceServer may be embedded to opt out of forward compatibility for this service.
// Use of this interface is not recommended, as added methods to PlantServiceServer will
// result in compilation errors.
type UnsafePlantServiceServer interface {
	mustEmbedUnimplementedPlantServiceServer()
}

func RegisterPlantServiceServer(s grpc.ServiceRegistrar, srv PlantServiceServer) {
	// If the following call panics, it indicates UnimplementedPlantServiceServer was
	// embedded by pointer and is nil.  This will cause panics if an
	// unimplemented method is ever invoked, so we test this at initialization
	// time to prevent it from happening at runtime later due to I/O.
	if t, ok := srv.(interface{ testEmbeddedByValue() }); ok {
		t.testEmbeddedByValue()
	}
	s.RegisterService(&PlantService_ServiceDesc, srv)
}

func _PlantService_GetUserProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetUserProfile(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetUserProfile_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetUserProfile(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateUserProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateUserProfile(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateUserProfile_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateUserProfile(ctx, req.(*UpdateProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetMyBadges_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetMyBadges(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetMyBadges_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetMyBadges(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetMyStars_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetMyStars(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetMyStars_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetMyStars(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreatePlant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreatePlantReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreatePlant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreatePlant_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreatePlant(ctx, req.(*CreatePlantReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdatePlant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdatePlantReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdatePlant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdatePlant_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdatePlant(ctx, req.(*UpdatePlantReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeletePlant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeletePlant(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeletePlant_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeletePlant(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetPlantList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PlantListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetPlantList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetPlantList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetPlantList(ctx, req.(*PlantListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetPlantDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetPlantDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetPlantDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetPlantDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_AddCarePlan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddCarePlanReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).AddCarePlan(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_AddCarePlan_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).AddCarePlan(ctx, req.(*AddCarePlanReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteCarePlan_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteCarePlan(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteCarePlan_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteCarePlan(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetTodayTaskList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetTodayTaskList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetTodayTaskList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetTodayTaskList(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CompleteTask_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CompleteTaskReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CompleteTask(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CompleteTask_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CompleteTask(ctx, req.(*CompleteTaskReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_AddCareRecord_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddCareRecordReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).AddCareRecord(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_AddCareRecord_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).AddCareRecord(ctx, req.(*AddCareRecordReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_AddGrowthRecord_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AddGrowthRecordReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).AddGrowthRecord(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_AddGrowthRecord_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).AddGrowthRecord(ctx, req.(*AddGrowthRecordReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetWikiList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(WikiListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetWikiList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetWikiList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetWikiList(ctx, req.(*WikiListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetWikiDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetWikiDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetWikiDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetWikiDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateWiki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateWikiReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateWiki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateWiki_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateWiki(ctx, req.(*CreateWikiReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateWiki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateWikiReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateWiki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateWiki_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateWiki(ctx, req.(*UpdateWikiReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteWiki_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteWiki(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteWiki_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteWiki(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_SyncWikiVector_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SyncWikiVectorReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).SyncWikiVector(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_SyncWikiVector_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).SyncWikiVector(ctx, req.(*SyncWikiVectorReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteWikiVector_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SyncWikiVectorReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteWikiVector(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteWikiVector_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteWikiVector(ctx, req.(*SyncWikiVectorReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_SyncAllWikiVector_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PageReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).SyncAllWikiVector(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_SyncAllWikiVector_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).SyncAllWikiVector(ctx, req.(*PageReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetWikiClassList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetWikiClassList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetWikiClassList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetWikiClassList(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateWikiClass_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateWikiClassReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateWikiClass(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateWikiClass_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateWikiClass(ctx, req.(*CreateWikiClassReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateWikiClass_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateWikiClassReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateWikiClass(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateWikiClass_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateWikiClass(ctx, req.(*UpdateWikiClassReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteWikiClass_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteWikiClass(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteWikiClass_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteWikiClass(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_ToggleWikiStar_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ToggleStarReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).ToggleWikiStar(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_ToggleWikiStar_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).ToggleWikiStar(ctx, req.(*ToggleStarReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetMyClassifyLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetMyClassifyLog(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetMyClassifyLog_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetMyClassifyLog(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteClassifyLog_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteClassifyLog(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteClassifyLog_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteClassifyLog(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreatePost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreatePostReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreatePost(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreatePost_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreatePost(ctx, req.(*CreatePostReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeletePost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeletePost(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeletePost_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeletePost(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetPostList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PostListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetPostList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetPostList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetPostList(ctx, req.(*PostListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetPostDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetPostDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetPostDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetPostDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CommentPost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CommentPostReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CommentPost(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CommentPost_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CommentPost(ctx, req.(*CommentPostReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_LikePost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(LikePostReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).LikePost(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_LikePost_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).LikePost(ctx, req.(*LikePostReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_StarPost_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(LikePostReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).StarPost(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_StarPost_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).StarPost(ctx, req.(*LikePostReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_MediaCheckCallback_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(MediaCheckCallbackReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).MediaCheckCallback(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_MediaCheckCallback_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).MediaCheckCallback(ctx, req.(*MediaCheckCallbackReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetTopicList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetTopicList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetTopicList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetTopicList(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetTopicDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetTopicDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetTopicDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetTopicDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateTopic_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateTopicReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateTopic(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateTopic_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateTopic(ctx, req.(*CreateTopicReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateTopic_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateTopicReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateTopic(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateTopic_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateTopic(ctx, req.(*UpdateTopicReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteTopic_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteTopic(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteTopic_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteTopic(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetExchangeItemList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ExchangeItemListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetExchangeItemList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetExchangeItemList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetExchangeItemList(ctx, req.(*ExchangeItemListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetExchangeItemDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetExchangeItemDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetExchangeItemDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetExchangeItemDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateExchangeItem_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateExchangeItemReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateExchangeItem(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateExchangeItem_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateExchangeItem(ctx, req.(*CreateExchangeItemReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateExchangeItem_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateExchangeItemReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateExchangeItem(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateExchangeItem_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateExchangeItem(ctx, req.(*UpdateExchangeItemReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteExchangeItem_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteExchangeItem(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteExchangeItem_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteExchangeItem(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateExchangeOrder_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateExchangeOrderReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateExchangeOrder(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateExchangeOrder_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateExchangeOrder(ctx, req.(*CreateExchangeOrderReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetMyExchangeOrders_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ExchangeOrderListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetMyExchangeOrders(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetMyExchangeOrders_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetMyExchangeOrders(ctx, req.(*ExchangeOrderListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetExchangeOrderList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(ExchangeOrderListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetExchangeOrderList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetExchangeOrderList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetExchangeOrderList(ctx, req.(*ExchangeOrderListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateExchangeOrder_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateExchangeOrderReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateExchangeOrder(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateExchangeOrder_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateExchangeOrder(ctx, req.(*UpdateExchangeOrderReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetLevelConfigList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(PageReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetLevelConfigList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetLevelConfigList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetLevelConfigList(ctx, req.(*PageReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetLevelConfigDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetLevelConfigDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetLevelConfigDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetLevelConfigDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateLevelConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateLevelConfigReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateLevelConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateLevelConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateLevelConfig(ctx, req.(*CreateLevelConfigReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateLevelConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateLevelConfigReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateLevelConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateLevelConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateLevelConfig(ctx, req.(*UpdateLevelConfigReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteLevelConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteLevelConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteLevelConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteLevelConfig(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetBadgeConfigList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(BadgeConfigListReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetBadgeConfigList(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetBadgeConfigList_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetBadgeConfigList(ctx, req.(*BadgeConfigListReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetBadgeConfigDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetBadgeConfigDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetBadgeConfigDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetBadgeConfigDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetBadgeConfigTree_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetBadgeConfigTree(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetBadgeConfigTree_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetBadgeConfigTree(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_CreateBadgeConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CreateBadgeConfigReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).CreateBadgeConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_CreateBadgeConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).CreateBadgeConfig(ctx, req.(*CreateBadgeConfigReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_UpdateBadgeConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(UpdateBadgeConfigReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).UpdateBadgeConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_UpdateBadgeConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).UpdateBadgeConfig(ctx, req.(*UpdateBadgeConfigReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteBadgeConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteBadgeConfig(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteBadgeConfig_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteBadgeConfig(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetWikiClassDetail_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetWikiClassDetail(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetWikiClassDetail_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetWikiClassDetail(ctx, req.(*IdReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetAiChatHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(AiChatHistoryReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetAiChatHistory(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetAiChatHistory_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetAiChatHistory(ctx, req.(*AiChatHistoryReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_SaveAiChatHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(SaveAiChatHistoryReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).SaveAiChatHistory(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_SaveAiChatHistory_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).SaveAiChatHistory(ctx, req.(*SaveAiChatHistoryReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_DeleteAiChatHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(IdsReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).DeleteAiChatHistory(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_DeleteAiChatHistory_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).DeleteAiChatHistory(ctx, req.(*IdsReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_ClearAiChatHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).ClearAiChatHistory(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_ClearAiChatHistory_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).ClearAiChatHistory(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

func _PlantService_GetAiChatQuota_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(GetProfileReq)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(PlantServiceServer).GetAiChatQuota(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: PlantService_GetAiChatQuota_FullMethodName,
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(PlantServiceServer).GetAiChatQuota(ctx, req.(*GetProfileReq))
	}
	return interceptor(ctx, in, info, handler)
}

// PlantService_ServiceDesc is the grpc.ServiceDesc for PlantService service.
// It's only intended for direct use with grpc.RegisterService,
// and not to be introspected or modified (even as a copy)
var PlantService_ServiceDesc = grpc.ServiceDesc{
	ServiceName: "plant.PlantService",
	HandlerType: (*PlantServiceServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "GetUserProfile",
			Handler:    _PlantService_GetUserProfile_Handler,
		},
		{
			MethodName: "UpdateUserProfile",
			Handler:    _PlantService_UpdateUserProfile_Handler,
		},
		{
			MethodName: "GetMyBadges",
			Handler:    _PlantService_GetMyBadges_Handler,
		},
		{
			MethodName: "GetMyStars",
			Handler:    _PlantService_GetMyStars_Handler,
		},
		{
			MethodName: "CreatePlant",
			Handler:    _PlantService_CreatePlant_Handler,
		},
		{
			MethodName: "UpdatePlant",
			Handler:    _PlantService_UpdatePlant_Handler,
		},
		{
			MethodName: "DeletePlant",
			Handler:    _PlantService_DeletePlant_Handler,
		},
		{
			MethodName: "GetPlantList",
			Handler:    _PlantService_GetPlantList_Handler,
		},
		{
			MethodName: "GetPlantDetail",
			Handler:    _PlantService_GetPlantDetail_Handler,
		},
		{
			MethodName: "AddCarePlan",
			Handler:    _PlantService_AddCarePlan_Handler,
		},
		{
			MethodName: "DeleteCarePlan",
			Handler:    _PlantService_DeleteCarePlan_Handler,
		},
		{
			MethodName: "GetTodayTaskList",
			Handler:    _PlantService_GetTodayTaskList_Handler,
		},
		{
			MethodName: "CompleteTask",
			Handler:    _PlantService_CompleteTask_Handler,
		},
		{
			MethodName: "AddCareRecord",
			Handler:    _PlantService_AddCareRecord_Handler,
		},
		{
			MethodName: "AddGrowthRecord",
			Handler:    _PlantService_AddGrowthRecord_Handler,
		},
		{
			MethodName: "GetWikiList",
			Handler:    _PlantService_GetWikiList_Handler,
		},
		{
			MethodName: "GetWikiDetail",
			Handler:    _PlantService_GetWikiDetail_Handler,
		},
		{
			MethodName: "CreateWiki",
			Handler:    _PlantService_CreateWiki_Handler,
		},
		{
			MethodName: "UpdateWiki",
			Handler:    _PlantService_UpdateWiki_Handler,
		},
		{
			MethodName: "DeleteWiki",
			Handler:    _PlantService_DeleteWiki_Handler,
		},
		{
			MethodName: "SyncWikiVector",
			Handler:    _PlantService_SyncWikiVector_Handler,
		},
		{
			MethodName: "DeleteWikiVector",
			Handler:    _PlantService_DeleteWikiVector_Handler,
		},
		{
			MethodName: "SyncAllWikiVector",
			Handler:    _PlantService_SyncAllWikiVector_Handler,
		},
		{
			MethodName: "GetWikiClassList",
			Handler:    _PlantService_GetWikiClassList_Handler,
		},
		{
			MethodName: "CreateWikiClass",
			Handler:    _PlantService_CreateWikiClass_Handler,
		},
		{
			MethodName: "UpdateWikiClass",
			Handler:    _PlantService_UpdateWikiClass_Handler,
		},
		{
			MethodName: "DeleteWikiClass",
			Handler:    _PlantService_DeleteWikiClass_Handler,
		},
		{
			MethodName: "ToggleWikiStar",
			Handler:    _PlantService_ToggleWikiStar_Handler,
		},
		{
			MethodName: "GetMyClassifyLog",
			Handler:    _PlantService_GetMyClassifyLog_Handler,
		},
		{
			MethodName: "DeleteClassifyLog",
			Handler:    _PlantService_DeleteClassifyLog_Handler,
		},
		{
			MethodName: "CreatePost",
			Handler:    _PlantService_CreatePost_Handler,
		},
		{
			MethodName: "DeletePost",
			Handler:    _PlantService_DeletePost_Handler,
		},
		{
			MethodName: "GetPostList",
			Handler:    _PlantService_GetPostList_Handler,
		},
		{
			MethodName: "GetPostDetail",
			Handler:    _PlantService_GetPostDetail_Handler,
		},
		{
			MethodName: "CommentPost",
			Handler:    _PlantService_CommentPost_Handler,
		},
		{
			MethodName: "LikePost",
			Handler:    _PlantService_LikePost_Handler,
		},
		{
			MethodName: "StarPost",
			Handler:    _PlantService_StarPost_Handler,
		},
		{
			MethodName: "MediaCheckCallback",
			Handler:    _PlantService_MediaCheckCallback_Handler,
		},
		{
			MethodName: "GetTopicList",
			Handler:    _PlantService_GetTopicList_Handler,
		},
		{
			MethodName: "GetTopicDetail",
			Handler:    _PlantService_GetTopicDetail_Handler,
		},
		{
			MethodName: "CreateTopic",
			Handler:    _PlantService_CreateTopic_Handler,
		},
		{
			MethodName: "UpdateTopic",
			Handler:    _PlantService_UpdateTopic_Handler,
		},
		{
			MethodName: "DeleteTopic",
			Handler:    _PlantService_DeleteTopic_Handler,
		},
		{
			MethodName: "GetExchangeItemList",
			Handler:    _PlantService_GetExchangeItemList_Handler,
		},
		{
			MethodName: "GetExchangeItemDetail",
			Handler:    _PlantService_GetExchangeItemDetail_Handler,
		},
		{
			MethodName: "CreateExchangeItem",
			Handler:    _PlantService_CreateExchangeItem_Handler,
		},
		{
			MethodName: "UpdateExchangeItem",
			Handler:    _PlantService_UpdateExchangeItem_Handler,
		},
		{
			MethodName: "DeleteExchangeItem",
			Handler:    _PlantService_DeleteExchangeItem_Handler,
		},
		{
			MethodName: "CreateExchangeOrder",
			Handler:    _PlantService_CreateExchangeOrder_Handler,
		},
		{
			MethodName: "GetMyExchangeOrders",
			Handler:    _PlantService_GetMyExchangeOrders_Handler,
		},
		{
			MethodName: "GetExchangeOrderList",
			Handler:    _PlantService_GetExchangeOrderList_Handler,
		},
		{
			MethodName: "UpdateExchangeOrder",
			Handler:    _PlantService_UpdateExchangeOrder_Handler,
		},
		{
			MethodName: "GetLevelConfigList",
			Handler:    _PlantService_GetLevelConfigList_Handler,
		},
		{
			MethodName: "GetLevelConfigDetail",
			Handler:    _PlantService_GetLevelConfigDetail_Handler,
		},
		{
			MethodName: "CreateLevelConfig",
			Handler:    _PlantService_CreateLevelConfig_Handler,
		},
		{
			MethodName: "UpdateLevelConfig",
			Handler:    _PlantService_UpdateLevelConfig_Handler,
		},
		{
			MethodName: "DeleteLevelConfig",
			Handler:    _PlantService_DeleteLevelConfig_Handler,
		},
		{
			MethodName: "GetBadgeConfigList",
			Handler:    _PlantService_GetBadgeConfigList_Handler,
		},
		{
			MethodName: "GetBadgeConfigDetail",
			Handler:    _PlantService_GetBadgeConfigDetail_Handler,
		},
		{
			MethodName: "GetBadgeConfigTree",
			Handler:    _PlantService_GetBadgeConfigTree_Handler,
		},
		{
			MethodName: "CreateBadgeConfig",
			Handler:    _PlantService_CreateBadgeConfig_Handler,
		},
		{
			MethodName: "UpdateBadgeConfig",
			Handler:    _PlantService_UpdateBadgeConfig_Handler,
		},
		{
			MethodName: "DeleteBadgeConfig",
			Handler:    _PlantService_DeleteBadgeConfig_Handler,
		},
		{
			MethodName: "GetWikiClassDetail",
			Handler:    _PlantService_GetWikiClassDetail_Handler,
		},
		{
			MethodName: "GetAiChatHistory",
			Handler:    _PlantService_GetAiChatHistory_Handler,
		},
		{
			MethodName: "SaveAiChatHistory",
			Handler:    _PlantService_SaveAiChatHistory_Handler,
		},
		{
			MethodName: "DeleteAiChatHistory",
			Handler:    _PlantService_DeleteAiChatHistory_Handler,
		},
		{
			MethodName: "ClearAiChatHistory",
			Handler:    _PlantService_ClearAiChatHistory_Handler,
		},
		{
			MethodName: "GetAiChatQuota",
			Handler:    _PlantService_GetAiChatQuota_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "pb/plant.proto",
}
