成员登录 卡券 JSSDK
Stoneworld edited this page Apr 5, 2017
·
1 revision
$auth = new Authorize($corp_id, $secret);
if(!isset($_GET['auth_code']) || !isset($_GET['state'])){
$auth->authorize($to = null, $state = 'STATE', $usertype = 'member');
}
$user = $auth->user();
var_dump($user);
需在后台配置可信域名,跳转时必须带reference $usertype有member(成员登录)、admin(管理员登录)、all(成员或管理员皆可登录)三种
$card = new Card($corp_id, $secret);
$card->create(array $base, array $properties = array(), $type = self::TYPE_GENERAL_COUPON); //创建卡券
$card->get($cardId); //卡券详情
其余接口参见源码
$js = new Js($corp_id, $secret);
$js->config(array $APIs, $debug = false, $beta = false, $json = true, $isAdminGroup = false);
普通调用(除创建企业会话和打开企业通讯录选人外)
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js" type="text/javascript" charset="utf-8"></script>
<script type="text/javascript" charset="utf-8">
wx.config(<?php echo $js->config(array('onMenuShareQQ', 'onMenuShareWeibo'), true, true) ?>);
</script>
企业号部分JS-SDK(如:打开企业通讯录选人)的使用需要企业号管理组权限,请设置$isAdminGroup为true
$js = new Js($corp_id, $secret);
$signPackage = $js->config(array $APIs, $debug = false, $beta = false, $json = true, $isAdminGroup = true);
<script type="text/javascript" charset="utf-8">
var evalWXjsApi = function(jsApiFun) {
if (typeof WeixinJSBridge == "object" && typeof WeixinJSBridge.invoke == "function") {
jsApiFun();
} else {
document.attachEvent && document.attachEvent("WeixinJSBridgeReady", jsApiFun);
document.addEventListener && document.addEventListener("WeixinJSBridgeReady", jsApiFun);
}
}
document.querySelector('#openEnterpriseContact_invoke').onclick = function() {
evalWXjsApi(function() {
WeixinJSBridge.invoke("openEnterpriseContact", {
"groupId": "<?php echo $signPackage['groupId'] ?>", // 必填,管理组权限验证步骤1返回的group_id
"timestamp": "<?php echo $signPackage['timestamp'] ?>", // 必填,管理组权限验证步骤2使用的时间戳
"nonceStr": "<?php echo $signPackage['nonceStr'] ?>", // 必填,管理组权限验证步骤2使用的随机字符串
"signature": "<?php echo $signPackage['signature'] ?>", // 必填,管理组权限验证步骤2生成的签名
"params" : {
'departmentIds' : [1], // 非必填,可选部门ID列表(如果ID为0,表示可选管理组权限下所有部门)
'tagIds' : [1], // 非必填,可选标签ID列表(如果ID为0,表示可选所有标签)
'userIds' : ['zhangsan','lisi'], // 非必填,可选用户ID列表
'mode' : 'single', // 必填,选择模式,single表示单选,multi表示多选
'type' : ['department','tag','user'], // 必填,选择限制类型,指定department、tag、user中的一个或者多个
'selectedDepartmentIds' : [], // 非必填,已选部门ID列表
'selectedTagIds' : [], // 非必填,已选标签ID列表
'selectedUserIds' : [], // 非必填,已选用户ID列表
},
}, function(res) {
if (res.err_msg.indexOf('function_not_exist') > -1) {
alert('版本过低请升级');
} else if (res.err_msg.indexOf('openEnterpriseContact:fail') > -1) {
return;
}
var result = JSON.parse(res.result); // 返回字符串,开发者需自行调用JSON.parse解析
var selectAll = result.selectAll; // 是否全选(如果是,其余结果不再填充)
if (!selectAll)
{
var selectedDepartmentList = result.departmentList; // 已选的部门列表
for (var i = 0; i < selectedDepartmentList.length; i++) {
var department = selectedDepartmentList[i];
var departmentId = department.id; // 已选的单个部门ID
var departemntName = department.name; // 已选的单个部门名称
}
var selectedTagList = result.tagList; // 已选的标签列表
for (var i = 0; i < selectedTagList.length; i++) {
var tag = selectedTagList[i];
var tagId = tag.id; // 已选的单个标签ID
var tagName = tag.name; // 已选的单个标签名称
}
var selectedUserList = result.userList; // 已选的成员列表
for (var i = 0; i < selectedUserList.length; i++) {
var user = selectedUserList[i];
var userId = user.id; // 已选的单个成员ID
var userName = user.name; // 已选的单个成员名称
}
}
})
});
}
</script>