企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
[TOC] #### 统一用户中心说明 为了更好的管理公众号的用户,微擎系统引入了统一用户机制。引入统一用户中心(下称 **用户中心**)有以下好处: * 方便统一管理用户的基本资料和积分信息 * 方便从不同的渠道平台(下称**渠道平台**。指:微信,易信,来往或者自有的CRM等不同的用户系统)同步和共享用户资源 操作流程如下: ![](https://box.kancloud.cn/2016-05-03_57287c29c255e.jpg) #### Openid与Uid的关系 这里的Openid可以泛指从微信、易信或是其它平台进入的粉丝,当这些这些粉丝进入模块或是微站时,在系统中是不产生任何资料数据。 仅当这些粉丝完成绑定、注册操作时在系统中产生一个uid与之对应,才可以存储一些额外资料(包括真实姓名,性别等等)和积分数据,系统也允许多个Opendid对应同一个Uid。 #### 验证粉丝身份信息 当模块或是系统需要获取会员资料或是积分时,可以使用 **checkauth()** 函数来判断会员是否进行登录(未登录时会跳转至登录页面),以便可以使用其资料和积分数据。例如: ~~~ //需要使用会员积分数据 //此函数会判断当前会员是否进登录,如果没有登录跳转至登录页面 checkauth(); print_r($_W['member']); ~~~ #### 会员的积分资料 微擎系统内置5类积分数据,其实积分,余额,贡献为系统内置的,系统很多功能都依赖此数据。 可以通过 功能选项 – 积分设置 来管理积分名称和是否启用 | 变量名称 | 说明 | | credit1 | 积分 | | credit2 | 余额 | | credit3 | 贡献 | | credit4 | 缺省 | | credit5 | 缺省 | #### 会员基本资料 微擎系统内置了会员常用的资料信息来满足各功能的需求。 可以通过 功能选项 – 会员字段管理 来管理资料名称和是否启用 | 变量名称 | 说明 | | realname | 真实姓名 | | nickname | 昵称 | | avatar | 头像 | | qq | QQ号 | | mobile | 手机号码 | | vip | VIP级别 | | gender | 性别 | | birthyear | 出生生日 | | constellation | 星座 | | zodiac | 生肖 | | telephone | 固定电话 | | idcard | 证件号码 | | studentid | 学号 | | grade | 班级 | | address | 邮寄地址 | | zipcode | 邮编 | | nationality | 国家 | | resideprovince | 居住地址 | | graduateschool | 毕业学校 | | company | 公司 | | education | 学历 | | occupation | 职业 | | position | 职位 | | revenue | 年收入 | | affectivestatus | 情感状态 | | lookingfor | 交友目的 | | bloodtype | 血型 | | height | 身高 | | weight | 体重 | | alipay | 支付宝帐号 | | msn | MSN | | email | 电子邮箱 | | taobao | 阿里旺旺 | | site | 主页 | | bio | 个人介绍 | | interest | 兴趣爱好 | | workerid | 工号 | #### 积分 当模块有奖励积分时(credit1,credit2)应该写入个人中心积分日志 ![](https://box.kancloud.cn/2016-05-20_573eb5238c1ef.jpg) #### 会员积分操作 系统提供一系列的方法供开发者变更会员的积分数据,大家在开发的时候应该避免直接数据操作积分数据。保持各功能之间的数据互通。下面具体说一下操作会员积分的方法 #### 获取会员积分数据 获取积分数据时,要衔使用 **checkauth()** 函数来检查会员是否登录,以便来获取其积分数据。\ 会员登录成功后,获取会员积分数据通过系统 **$_W[‘member’]** 全局变量可以获取到,具体的数据结构如下: ~~~ Array ( [uid] => 10128 [realname] => 用户昵称 [mobile] => 手机号码 [email] => 邮箱 [groupid] => 用户组ID [groupname] => 用户组名称 [credit1] => 积分 [credit2] => 余额 [credit3] => 其它积分 [credit4] => 其它积分 [credit5] => 其它积分 [credit6] => 其它积分 ) ~~~ #### 更新用户积分数据 ~~~ boolean mc_credit_update($uid, $credittype, $creditval, $log = array()); ~~~ * **$uid** 要变更数据会员的uid * **$credittype** 要变更积分数据的类型,分为credit1, credit2, credit3, credit4, credit5,credit6 * **$creditval** 要增减积分的值,正数为增,负数为减 * **$log** 积分操作日志,具体含义如下 ~~~ $log = array( 0 => 操作管理员uid 1 => 增减积分备注 2 => 模块标识,例如:we7_store 3 => 店员uid 4 => 门店id 5 => 1(线上操作) 2(系统后台,公众号管理员和操作员) 3(店员) ); ~~~ 示例: ~~~ load()->model('mc'); $uid = mc_openid2uid($fromuser); mc_credit_update($uid, 'credit1', '10', array(0, '使用砸蛋模块未中奖,赠送10积分')); ~~~ ~~~ load()->model('mc'); //代金券和折扣券的兑换记录, mc_credit_update($_W['member']['uid'], 'credit1', -20, array($_W['member']['uid'], '礼品兑换: Iphone手机 消耗积分:20')); ~~~