初始化项目:添加后端代码、ThinkPHP框架、前端资源
This commit is contained in:
@@ -0,0 +1,250 @@
|
||||
<?php
|
||||
|
||||
namespace app\common\library\share;
|
||||
|
||||
/**
|
||||
* 分享链接
|
||||
*/
|
||||
class Links
|
||||
{
|
||||
/**
|
||||
* 获取分享链接
|
||||
* @param $type
|
||||
* @param $params
|
||||
* @return void
|
||||
*/
|
||||
public static function getLink($type,$params = []){
|
||||
$link = self::getMobilePath();
|
||||
|
||||
switch ($type){
|
||||
case 'goods':
|
||||
$link .= '/pages/course/detail/detail';
|
||||
break;
|
||||
case 'physical':
|
||||
$link .= '/pages/app/physical/detail/detail';
|
||||
break;
|
||||
case 'course':
|
||||
$link .= '/pages/course/detail/detail';
|
||||
break;
|
||||
case 'coupon':
|
||||
$link .= '/pages/app/coupon/receive/receive';
|
||||
break;
|
||||
case 'exercises':
|
||||
$link .= '/pages/app/exam/detail/detail';
|
||||
break;
|
||||
case 'test':
|
||||
$link .= '/pages/app/test/detail/detail';
|
||||
break;
|
||||
case 'vipcard':
|
||||
$link .= '/pages/app/vip/center/center';
|
||||
break;
|
||||
case 'activity':
|
||||
$link .= '/pages/app/activity/detail/detail';
|
||||
break;
|
||||
case 'order':
|
||||
$link .= '/pages/order/detail/detail';
|
||||
break;
|
||||
case 'channels_share_link':
|
||||
$link .= '/pages/app/channels/sharer/invite/invite';
|
||||
break;
|
||||
case 'activity_signin':
|
||||
$link .= '/pages/app/activity/sign/sign';
|
||||
break;
|
||||
case 'page':
|
||||
$link .= '/'.$params['path'];
|
||||
break;
|
||||
}
|
||||
|
||||
$link .= '?'. self::parseParams($type,$params);
|
||||
|
||||
return $link;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取小程序link
|
||||
* @return void
|
||||
*/
|
||||
public static function getMpLink($type,$params){
|
||||
$link = '';
|
||||
|
||||
switch ($type){
|
||||
case 'goods':
|
||||
$link = 'pages/course/detail/detail';
|
||||
break;
|
||||
case 'physical':
|
||||
$link .= 'pages/app/physical/detail/detail';
|
||||
break;
|
||||
case 'course':
|
||||
$link = 'pages/course/detail/detail';
|
||||
break;
|
||||
case 'exercises':
|
||||
$link = 'pages/app/exam/detail/detail';
|
||||
break;
|
||||
case 'test':
|
||||
$link = 'pages/app/test/detail/detail';
|
||||
break;
|
||||
case 'coupon':
|
||||
$link = 'pages/app/coupon/receive/receive';
|
||||
break;
|
||||
case 'order':
|
||||
$link = 'pages/order/detail/detail';
|
||||
break;
|
||||
case 'vipcard':
|
||||
$link .= 'pages/app/vip/center/center';
|
||||
break;
|
||||
case 'channels_share_link':
|
||||
$link .= 'pages/app/channels/sharer/invite/invite';
|
||||
break;
|
||||
case 'activity':
|
||||
$link = 'pages/app/activity/detail/detail';
|
||||
break;
|
||||
case 'activity_signin':
|
||||
$link = 'pages/app/activity/sign/sign';
|
||||
break;
|
||||
case 'page':
|
||||
$link .= $params['path'];
|
||||
break;
|
||||
}
|
||||
|
||||
return ['link'=>$link,'params'=>self::parseParams($type,$params)];
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 将params参数转为get参数
|
||||
* @param $type
|
||||
* @param $params
|
||||
* @return string
|
||||
*/
|
||||
public static function parseParams($type,$params){
|
||||
$fields = [
|
||||
'goods'=>[
|
||||
'id'=>'goods_id'
|
||||
],
|
||||
'course'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'physical'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'page'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'exercises'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'test'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'activity'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'channels_share_link'=>[
|
||||
'code'=>'code'
|
||||
],
|
||||
'activity_signin'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'coupon'=>[
|
||||
'id'=>'id'
|
||||
],
|
||||
'order'=>[
|
||||
'order_no'=>'order_no'
|
||||
]
|
||||
];
|
||||
|
||||
$data = [];
|
||||
|
||||
$fields[$type]['share'] = 'share_id';
|
||||
|
||||
foreach ($fields[$type] as $index => $item){
|
||||
if(isset($params[$item])){
|
||||
$data[$index] = $params[$item];
|
||||
}
|
||||
}
|
||||
|
||||
return http_build_query($data);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取分享参数
|
||||
* @param $type
|
||||
* @param $val
|
||||
* @return array
|
||||
*/
|
||||
public static function getShareParams($type,$val,$userId=0){
|
||||
switch ($type){
|
||||
case 'goods':
|
||||
$params = [
|
||||
'goods_id'=>$val
|
||||
];
|
||||
break;
|
||||
case 'physical':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
|
||||
case 'exercises':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
|
||||
case 'test':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
|
||||
case 'coupon':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
case 'activity':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
case 'channels_share_link':
|
||||
$params = [
|
||||
'code'=>$val
|
||||
];
|
||||
break;
|
||||
case 'activity_signin':
|
||||
$params = [
|
||||
'id'=>$val
|
||||
];
|
||||
break;
|
||||
case 'order':
|
||||
$params = [
|
||||
'order_no'=>$val
|
||||
];
|
||||
break;
|
||||
case 'page':
|
||||
$params = [
|
||||
'path'=>$val
|
||||
];
|
||||
break;
|
||||
}
|
||||
|
||||
if($userId){
|
||||
$params['share_id'] = $userId;
|
||||
}
|
||||
|
||||
return $params;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取移动端链接
|
||||
* @return string
|
||||
*/
|
||||
public static function getMobilePath(){
|
||||
global $_W;
|
||||
return $_W['siteroot'].'/index.php?i='.$_W['uniacid'].'&route=#';
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user