Package google.type

索引

日期

表示整个或部分日历日期(例如生日)。一天中的时间和时区要么在别处指定,要么不重要。日期相对于公历。可以表示以下任一情况:

  • 包含非零年份、月份和天值的完整日期。
  • 月份和天,年份值为零(例如周年纪念日)。
  • 单独的年份,月份和天值为零。
  • 年份和月份,天值为零(例如,信用卡到期日期)。

相关类型:

字段
year

int32

日期中的年份。必须介于 1 到 9999 之间,或为 0(即指定不含年份的日期)。

month

int32

一年中的第几个月。必须介于 1 到 12 之间,或为 0(即只指定年份,不指定月份和天值)。

day

int32

一个月中的第几天。必须介于 1 到 31 之间并且对年份和月份有效,或为 0(即天不重要,指定单独的年份或者年份和月份)。

DayOfWeek

表示星期几。

枚举
DAY_OF_WEEK_UNSPECIFIED 未指定星期几。
MONDAY 星期一
TUESDAY 星期二
WEDNESDAY 星期三
THURSDAY 星期四
FRIDAY 星期五
SATURDAY 星期六
SUNDAY 星期日

间隔

表示时间间隔,以开始时间戳(含)和结束时间戳(不含)的形式编码。

开始时间必须早于或等于结束时间。如果开始时间与结束时间相同,则时间间隔为空(不会匹配任何时间)。如果开始时间和结束时间都未指定,则时间间隔会匹配任何时间。

字段
start_time

Timestamp

可选。时间间隔的开始时间(含)。

如果指定,则与此时间间隔匹配的时间戳必须等于或晚于开始时间。

end_time

Timestamp

可选。时间间隔的结束时间(不含)。

如果指定,则与此时间间隔匹配的时间戳必须早于结束时间。

金额

表示含有货币类型的金额。

字段
currency_code

string

采用 ISO 4217 标准定义的三位字母货币代码。

units

int64

金额的整数单位。例如,如果 currencyCode"USD",则 1 单位就是一美元。

nanos

int32

以纳单位 (10^-9) 表示的金额数量。取值范围必须在 -999,999,999 至 +999,999,999 之间(含边界值)。如果 units 是正数,nanos 必须是正数或零。如果 units 为零,nanos 可以是正数、零或负数。如果 units 是负数,nanos 必须是负数或零。例如,$-1.75 表示为 units=-1 和 nanos=-750,000,000。

TimeOfDay

表示一天中的某个时间。日期和时区不重要,或在别处指定。API 可以选择允许闰秒。相关类型为 google.type.Dategoogle.protobuf.Timestamp

字段
hours

int32

一天中的小时(采用 24 小时制)。必须大于或等于 0,且通常必须小于或等于 23。对于业务结束时间等场景,API 可以选择允许“24:00:00”一值。

minutes

int32

一小时中的分钟数。必须大于或等于 0,且小于或等于 59。

seconds

int32

一分钟中的秒数。必须大于或等于 0,通常必须小于或等于 59。如果 API 允许闰秒,则 API 可以允许 60 一值。

nanos

int32

秒数的小数部分(以纳秒为单位)。必须大于或等于 0,且小于或等于 999,999,999。

TimeZone

表示 IANA 时区数据库中的时区。

字段
id

string

IANA 时区数据库时区。例如“America/New_York”。

version

string

可选。IANA 时区数据库版本号。例如“2019a”。