syntax = "proto3";
package cms;
option go_package = "bsm/full/module/base/cms/pb;cms";
import "protobuf/blocks.proto";

// CMS - 站点
service Site {
  // 站点列表
  rpc Fetch (blocks.Empty) returns (SiteListReply) {};

  // 站点详情
  rpc Get (blocks.IdentRequest) returns (SiteItem) {};

  // 添加站点
  rpc Create (SiteItem) returns (blocks.StatusReply) {};

  // 修改站点
  rpc Modify (SiteItem) returns (blocks.StatusReply) {};

  // 删除站点
  rpc Delete (blocks.IdentRequest) returns (blocks.StatusReply) {};
}

  // 站点列表
message SiteListReply {
  // 数据
  repeated SiteItem data = 1;
  // 总数
  int64 count = 2;
}

// 添加站点请求
message SiteItem{
  int64  id          = 1; // 唯一ID
  string identity    = 2;            // 添加站点请求唯一码
  string title       = 3;               // 标题
  string description = 4 ;          // 站点描述
  string icon_path   = 5 [json_name = "icon_path"];          // 站点图标
  string keywords    = 6; // 关键字
  string domain      = 7; // 站点域名
  string seo         = 8; // SEO
  string theme       = 9; // 站点主题
  string configs     = 10;          // 站点配置
}