| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- package component
- import (
- "fmt"
- openContext "github.com/silenceper/wechat/v2/openplatform/context"
- "github.com/silenceper/wechat/v2/util"
- )
- const (
- fastregisterweappURL = "https://api.weixin.qq.com/cgi-bin/component/fastregisterweapp"
- )
- // Component 快速创建小程序
- type Component struct {
- *openContext.Context
- }
- // NewComponent new
- func NewComponent(opContext *openContext.Context) *Component {
- return &Component{opContext}
- }
- // RegisterMiniProgramParam 快速注册小程序参数
- type RegisterMiniProgramParam struct {
- Name string `json:"name"` // 企业名
- Code string `json:"code"` // 企业代码
- CodeType string `json:"code_type"` // 企业代码类型 1:统一社会信用代码(18 位) 2:组织机构代码(9 位 xxxxxxxx-x) 3:营业执照注册号(15 位)
- LegalPersonaWechat string `json:"legal_persona_wechat"` // 法人微信号
- LegalPersonaName string `json:"legal_persona_name"` // 法人姓名(绑定银行卡)
- ComponentPhone string `json:"component_phone"` // 第三方联系电话(方便法人与第三方联系)
- }
- // RegisterMiniProgram 快速创建小程
- // reference: https://developers.weixin.qq.com/doc/oplatform/Third-party_Platforms/Mini_Programs/Fast_Registration_Interface_document.html
- func (component *Component) RegisterMiniProgram(param *RegisterMiniProgramParam) error {
- componentAK, err := component.GetComponentAccessToken()
- if err != nil {
- return nil
- }
- url := fmt.Sprintf(fastregisterweappURL+"?action=create&component_access_token=%s", componentAK)
- data, err := util.PostJSON(url, param)
- if err != nil {
- return err
- }
- return util.DecodeWithCommonError(data, "component/fastregisterweapp?action=create")
- }
- // GetRegistrationStatusParam 查询任务创建状态
- type GetRegistrationStatusParam struct {
- Name string `json:"name"` // 企业名
- LegalPersonaWechat string `json:"legal_persona_wechat"` // 法人微信号
- LegalPersonaName string `json:"legal_persona_name"` // 法人姓名(绑定银行卡)
- }
- // GetRegistrationStatus 查询创建任务状态.
- func (component *Component) GetRegistrationStatus(param *GetRegistrationStatusParam) error {
- componentAK, err := component.GetComponentAccessToken()
- if err != nil {
- return nil
- }
- url := fmt.Sprintf(fastregisterweappURL+"?action=search&component_access_token=%s", componentAK)
- data, err := util.PostJSON(url, param)
- if err != nil {
- return err
- }
- return util.DecodeWithCommonError(data, "component/fastregisterweapp?action=search")
- }
|