github.com/chanxuehong/wechat@v0.0.0-20230222024006-36f0325263cd/mp/shakearound/account/account.go (about) 1 package account 2 3 import ( 4 "github.com/chanxuehong/wechat/mp/core" 5 ) 6 7 type RegisterParameters struct { 8 Name string `json:"name"` // 必须, 联系人姓名 9 PhoneNumber string `json:"phone_number"` // 必须, 联系人电话 10 Email string `json:"email"` // 必须, 联系人邮箱 11 IndustryId string `json:"industry_id"` // 必须, 平台定义的行业代号,具体请查看链接行业代号 12 QualificationCertURLs []string `json:"qualification_cert_urls"` // 必须, 相关资质文件的图片url,图片需先上传至微信侧服务器,用“素材管理-上传图片素材”接口上传图片,返回的图片URL再配置在此处;当不需要资质文件时,数组内可以不填写url 13 ApplyReason string `json:"apply_reason,omitempty"` // 可选, 申请理由 14 } 15 16 // 申请开通功能 17 func Register(clt *core.Client, para *RegisterParameters) (err error) { 18 var result core.Error 19 20 incompleteURL := "https://api.weixin.qq.com/shakearound/account/register?access_token=" 21 if err = clt.PostJSON(incompleteURL, para, &result); err != nil { 22 return 23 } 24 25 if result.ErrCode != core.ErrCodeOK { 26 err = &result 27 return 28 } 29 return 30 } 31 32 type AuditStatus struct { 33 ApplyTime int64 `json:"apply_time"` // 提交申请的时间戳 34 AuditStatus int `json:"audit_status"` // 审核状态。0:审核未通过、1:审核中、2:审核已通过;审核会在三个工作日内完成 35 AuditComment string `json:"audit_comment"` // 审核备注,包括审核不通过的原因 36 AuditTime int64 `json:"audit_time"` // 确定审核结果的时间戳;若状态为审核中,则该时间值为0 37 } 38 39 // 查询审核状态 40 func GetAuditStatus(clt *core.Client) (status *AuditStatus, err error) { 41 var result struct { 42 core.Error 43 AuditStatus `json:"data"` 44 } 45 46 incompleteURL := "https://api.weixin.qq.com/shakearound/account/auditstatus?access_token=" 47 if err = clt.GetJSON(incompleteURL, &result); err != nil { 48 return 49 } 50 51 if result.ErrCode != core.ErrCodeOK { 52 err = &result.Error 53 return 54 } 55 status = &result.AuditStatus 56 return 57 }