1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- <?php
- namespace app\service\api\diy;
- use app\model\diy\DiyRoute;
- use core\base\BaseApiService;
- class DiyRouteService extends BaseApiService
- {
- public function __construct()
- {
- parent::__construct();
- $this->model = new DiyRoute();
- }
-
- public function getShare(array $data = [])
- {
- $field = 'id,title,name,page,share,is_share';
- $info = $this->model->field($field)->where([ [ 'page', '=', $data[ 'route' ] ] ])->findOrEmpty()->toArray();
- $share = [];
- if (!empty($info[ 'share' ])) {
- $share = json_decode($info[ 'share' ], true);
- $share[ 'route' ] = $info[ 'page' ];
- $share[ 'query' ] = '';
- $query = [];
- if (!empty($data[ 'params' ])) {
- $query = json_decode($data[ 'params' ], true);
- }
- if ($this->member_id > 0) {
- $query[ 'mid' ] = $this->member_id;
- }
- if (!empty($query)) {
- $str = [];
- foreach ($query as $k => $v) {
- $str[] = $k . '=' . $v;
- }
- $share[ 'query' ] = implode('&', $str);
- }
- $share[ 'url' ] = $share[ 'route' ] . ( $share[ 'query' ] ? '?' . $share[ 'query' ] : '' );
- }
- return $share;
- }
- }
|