EricWeixin–提升微信项目的研发效率
目前EricWeixin已封装了认证服务号80%以上的接口,并且有一套后台管理界面与功能自成体系。
-
官网暂无。
-
大部分功能正在研发中。
requirements
从大的情况来看,基本上适用于rails4.1.4及以上版本。我自己则是在4.1.4版本上进行研发。 细节待更新。
使用方式
路由(Routes)
-
首先在自己的Application的 /config/routes 中添加以下代码,以便在应用中使用Gem提供的一系列功能:
mount EricWeixin::Engine, at: “eric_weixin”
-
在微信管理界面的配置地址:http://#host_name/eric_weixin/weixin/service/#app_id,如下:
数据库迁移(migration),目前仅支持MySQL语法。
-
第一次使用Gem或对Gem升级以后,都需要对migration进行升级,进入到Application目录下,执行如下操作:
rake eric_weixin:install:migrations
管理平台的链接
-
二维码: /eric_weixin/cms/weixin/two_dimension_codes
-
关键字回复: /eric_weixin/cms/weixin/reply_message_rules
-
公众账号管理: /eric_weixin/cms/weixin/public_accounts
-
图文管理: /eric_weixin/cms/weixin/news_datas
-
图文素材管理: /eric_weixin/cms/weixin/article_datas
-
链接管理: /eric_weixin/cms/weixin/url_encodes
-
微信小店订单设置 /eric_weixin/cms/weixin/xiaodian/orders
-
微信小店商品刷新 /eric_weixin/cms/weixin/xiaodian/products
-
微信用户展示 /eric_weixin/cms/weixin/weixin_users
微信小店的初始化
-
首先对所经营的分类进行归类,并且把腾讯分类同步至数据库。为了避免分类过多,一般只同步自己行业的大类,大类编号请自查,如儿童玩具大类,食品类两类更新如下:
EricWeixin::Xiaodian::Category.import_all_categories ‘公众账号名称,参考 weixin_public_account表’, [‘538088633’,‘538071212’]
-
更新SKU信息
EricWeixin::Xiaodian::Category.update_sku_info ‘公众账号名称,参考 weixin_public_account表’
-
更新商品信息
EricWeixin::Xiaodian::Product.get_all_products ‘公众账号名称,参考 weixin_public_account表’
-
同步已有订单信息
EricWeixin::Xiaodian::Order.get_order_list_and_update nil, nil ,nil ,‘公众账号名称,参考 weixin_public_account表’
-
如果有新商品上架,则需要更新商品与SKU信息。 更新过程见商品列表页面,点击刷新按钮即可。由于接口调用限制,一天之内不要操作超过3次。
红包的使用
-
先在项目根目录新建一个名字叫ca的目录,并设置权限,让应用程序可读。 ca目录用于存放微信官方密钥证书,主要用于发红包过程中的通信加密。
-
在weixin_public_account中设置:mch_id: 商户号, mch_key:在商户后台写的32位的那个密码,host_name_wich_schema: 当前域名,在回调时需要参考此参数。
-
调用方式:
EricWeixin::RedpackOrder.create_redpack_order wishing: ‘xxx’,
client_ip: '127.0.0.1', # 换成自己服务器ip
act_name: '过年送红包',
remark: '一起开心一下,祝新年快乐',
send_name: 'U果源',
re_openid: openid, # 收红包人的openid
total_amount: 100 # 金额: 单位(分)
-
定时获取红包信息:使用EricWeixin::RedpackOrder的实例调用 get_info 信息。