poi

package
Version: v2.0.0-...-fa408c6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 2, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

README

微信门店接口.

  • 对于门店的图片, 可以调用 base.UploadImage 或者 base.UploadImageFromReader 来上传.

Documentation

Overview

微信门店接口.

对于门店的图片, 可以调用 base.UploadImage 或者 base.UploadImageFromReader 来上传.

Index

Constants

View Source
const (
	EventTypePoiCheckNotify core.EventType = "poi_check_notify" // 审核事件推送
)

Variables

This section is empty.

Functions

func Add

func Add(clt *core.Client, params *AddParameters) (err error)

Add 创建门店.

func CategoryList

func CategoryList(clt *core.Client) (list []string, err error)

CategoryList 获取门店类目表.

func Delete

func Delete(clt *core.Client, poiId int64) (err error)

Delete 删除门店.

func Update

func Update(clt *core.Client, params *UpdateParameters) (err error)

Update 修改门店服务信息.

Types

type AddParameters

type AddParameters struct {
	BaseInfo struct {
		Sid          string   `json:"sid,omitempty"`           // 可选, 商户自己的id,用于后续审核通过收到poi_id 的通知时,做对应关系。请商户自己保证唯一识别性
		BusinessName string   `json:"business_name,omitempty"` // 必须, 门店名称(仅为商户名,如:国美、麦当劳,不应包含地区、地址、分店名等信息,错误示例:北京国美)
		BranchName   string   `json:"branch_name,omitempty"`   // 必须, 分店名称(不应包含地区信息,不应与门店名有重复,错误示例:北京王府井店)
		Province     string   `json:"province,omitempty"`      // 必须, 门店所在的省份(直辖市填城市名,如:北京市)
		City         string   `json:"city,omitempty"`          // 必须, 门店所在的城市
		District     string   `json:"district,omitempty"`      // 必须, 门店所在地区
		Address      string   `json:"address,omitempty"`       // 必须, 门店所在的详细街道地址(不要填写省市信息)
		Telephone    string   `json:"telephone,omitempty"`     // 必须, 门店的电话(纯数字,区号、分机号均由“-”隔开)
		Categories   []string `json:"categories,omitempty"`    // 必须, 门店的类型(不同级分类用“,”隔开,如:美食,川菜,火锅。详细分类参见附件:微信门店类目表)
		OffsetType   int      `json:"offset_type"`             // 必须, 坐标类型,1 为火星坐标(目前只能选1)
		Longitude    float64  `json:"longitude"`               // 必须, 门店所在地理位置的经度
		Latitude     float64  `json:"latitude"`                // 必须, 门店所在地理位置的纬度(经纬度均为火星坐标,最好选用腾讯地图标记的坐标)
		PhotoList    []Photo  `json:"photo_list,omitempty"`    // 必须, 图片列表,url 形式,可以有多张图片,尺寸为640*340px。必须为上一接口生成的url。
		Recommend    string   `json:"recommend,omitempty"`     // 可选, 推荐品,餐厅可为推荐菜;酒店为推荐套房;景点为推荐游玩景点等,针对自己行业的推荐内容
		Special      string   `json:"special,omitempty"`       // 必须, 特色服务,如免费wifi,免费停车,送货上门等商户能提供的特色功能或服务
		Introduction string   `json:"introduction,omitempty"`  // 可选, 商户简介,主要介绍商户信息等
		OpenTime     string   `json:"open_time,omitempty"`     // 必须, 营业时间,24 小时制表示,用“-”连接,如 8:00-20:00
		AvgPrice     int      `json:"avg_price,omitempty"`     // 必须, 人均价格,大于0 的整数
	} `json:"base_info"`
}

type ListResult

type ListResult struct {
	TotalCount int   `json:"total_count"`   // 门店总数量
	ItemCount  int   `json:"item_count"`    // 本次调用获取的门店数量
	List       []Poi `json:"business_list"` // 本次调用获取的门店列表
}

func List

func List(clt *core.Client, begin, limit int) (rslt *ListResult, err error)

List 查询门店列表.

begin: 开始位置,0 即为从第一条开始查询
limit: 返回数据条数,最大允许50,默认为20

type Photo

type Photo struct {
	PhotoURL string `json:"photo_url"`
}

type Poi

type Poi struct {
	BaseInfo struct {
		PoiId          int64 `json:"poi_id,omitempty"` // Poi 的id, 只有审核通过后才有
		AvailableState int   `json:"available_state"`  // 门店是否可用状态。1 表示系统错误、2 表示审核中、3 审核通过、4 审核驳回。当该字段为1、2、4 状态时,poi_id 为空
		UpdateStatus   int   `json:"update_status"`    // 扩展字段是否正在更新中。1 表示扩展字段正在更新中,尚未生效,不允许再次更新; 0 表示扩展字段没有在更新中或更新已生效,可以再次更新

		Sid          string   `json:"sid,omitempty"`           // 商户自己的id,用于后续审核通过收到poi_id 的通知时,做对应关系。请商户自己保证唯一识别性
		BusinessName string   `json:"business_name,omitempty"` // 门店名称(仅为商户名,如:国美、麦当劳,不应包含地区、地址、分店名等信息,错误示例:北京国美)
		BranchName   string   `json:"branch_name,omitempty"`   // 分店名称(不应包含地区信息,不应与门店名有重复,错误示例:北京王府井店)
		Province     string   `json:"province,omitempty"`      // 门店所在的省份(直辖市填城市名,如:北京市)
		City         string   `json:"city,omitempty"`          // 门店所在的城市
		District     string   `json:"district,omitempty"`      // 门店所在地区
		Address      string   `json:"address,omitempty"`       // 门店所在的详细街道地址(不要填写省市信息)
		Telephone    string   `json:"telephone,omitempty"`     // 门店的电话(纯数字,区号、分机号均由“-”隔开)
		Categories   []string `json:"categories,omitempty"`    // 门店的类型(不同级分类用“,”隔开,如:美食,川菜,火锅。详细分类参见附件:微信门店类目表)
		OffsetType   int      `json:"offset_type"`             // 坐标类型,1 为火星坐标(目前只能选1)
		Longitude    float64  `json:"longitude"`               // 门店所在地理位置的经度
		Latitude     float64  `json:"latitude"`                // 门店所在地理位置的纬度(经纬度均为火星坐标,最好选用腾讯地图标记的坐标)
		PhotoList    []Photo  `json:"photo_list,omitempty"`    // 图片列表,url 形式,可以有多张图片,尺寸为640*340px。必须为上一接口生成的url。
		Recommend    string   `json:"recommend,omitempty"`     // 推荐品,餐厅可为推荐菜;酒店为推荐套房;景点为推荐游玩景点等,针对自己行业的推荐内容
		Special      string   `json:"special,omitempty"`       // 特色服务,如免费wifi,免费停车,送货上门等商户能提供的特色功能或服务
		Introduction string   `json:"introduction,omitempty"`  // 商户简介,主要介绍商户信息等
		OpenTime     string   `json:"open_time,omitempty"`     // 营业时间,24 小时制表示,用“-”连接,如 8:00-20:00
		AvgPrice     int      `json:"avg_price,omitempty"`     // 人均价格,大于0 的整数
	} `json:"base_info"`
}

func Get

func Get(clt *core.Client, poiId int64) (poi *Poi, err error)

Get 查询门店信息.

type PoiCheckNotifyEvent

type PoiCheckNotifyEvent struct {
	XMLName struct{} `xml:"xml" json:"-"`
	core.MsgHeader
	EventType core.EventType `xml:"Event"  json:"Event"`  // 事件类型,poi_check_notify
	UniqId    string         `xml:"UniqId" json:"UniqId"` // 商户自己内部ID,即字段中的sid
	PoiId     int64          `xml:"PoiId"  json:"PoiId"`  // 微信的门店ID,微信内门店唯一标示ID
	Result    string         `xml:"Result" json:"Result"` // 审核结果,成功succ 或失败fail
	Msg       string         `xml:"Msg"    json:"Msg"`    // 成功的通知信息,或审核失败的驳回理由
}

创建门店审核事件推送

func GetPoiCheckNotifyEvent

func GetPoiCheckNotifyEvent(msg *core.MixedMsg) *PoiCheckNotifyEvent

type PoiIterator

type PoiIterator struct {
	// contains filtered or unexported fields
}

PoiIterator

iter, err := NewPoiIterator(clt, 0, 10)
if err != nil {
    // TODO: 增加你的代码
}

for iter.HasNext() {
    items, err := iter.NextPage()
    if err != nil {
        // TODO: 增加你的代码
    }
    // TODO: 增加你的代码
}

func NewPoiIterator

func NewPoiIterator(clt *core.Client, begin, limit int) (iter *PoiIterator, err error)

func (*PoiIterator) HasNext

func (iter *PoiIterator) HasNext() bool

func (*PoiIterator) NextPage

func (iter *PoiIterator) NextPage() (list []Poi, err error)

func (*PoiIterator) TotalCount

func (iter *PoiIterator) TotalCount() int

type UpdateParameters

type UpdateParameters struct {
	BaseInfo struct {
		PoiId int64 `json:"poi_id"`

		// 下面7个字段,若有填写内容则为覆盖更新,若无内容则视为不修改,维持原有内容。
		// photo_list 字段为全列表覆盖,若需要增加图片,需将之前图片同样放入list 中,在其后增加新增图片。
		// 如:已有A、B、C 三张图片,又要增加D、E 两张图,则需要调用该接口,photo_list 传入A、B、C、D、E 五张图片的链接。
		Telephone    string  `json:"telephone,omitempty"`
		PhotoList    []Photo `json:"photo_list,omitempty"`
		Recommend    string  `json:"recommend,omitempty"`
		Special      string  `json:"special,omitempty"`
		Introduction string  `json:"introduction,omitempty"`
		OpenTime     string  `json:"open_time,omitempty"`
		AvgPrice     int     `json:"avg_price,omitempty"`
	} `json:"base_info"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL