You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
175 lines
4.7 KiB
175 lines
4.7 KiB
9 months ago
|
<?php
|
||
|
// +----------------------------------------------------------------------
|
||
|
// | CRMEB [ CRMEB赋能开发者,助力企业发展 ]
|
||
|
// +----------------------------------------------------------------------
|
||
|
// | Copyright (c) 2016~2022 https://www.crmeb.com All rights reserved.
|
||
|
// +----------------------------------------------------------------------
|
||
|
// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权
|
||
|
// +----------------------------------------------------------------------
|
||
|
// | Author: CRMEB Team <admin@crmeb.com>
|
||
|
// +----------------------------------------------------------------------
|
||
|
|
||
|
namespace crmeb\services\serve\storage;
|
||
|
|
||
|
|
||
|
use crmeb\basic\BaseStorage;
|
||
|
use crmeb\services\AccessTokenServeService;
|
||
|
use think\exception\ValidateException;
|
||
|
|
||
|
/**
|
||
|
* Class Crmeb
|
||
|
* @package crmeb\services\serve\storage
|
||
|
*/
|
||
|
class Crmeb extends BaseStorage
|
||
|
{
|
||
|
|
||
|
protected $accessToken;
|
||
|
|
||
|
/**
|
||
|
* Crmeb constructor.
|
||
|
* @param string $name
|
||
|
* @param AccessTokenServeService $service
|
||
|
* @param string|null $configFile
|
||
|
*/
|
||
|
public function __construct(string $name, AccessTokenServeService $service, string $configFile = null)
|
||
|
{
|
||
|
$this->accessToken = $service;
|
||
|
}
|
||
|
|
||
|
protected function initialize(array $config)
|
||
|
{
|
||
|
// TODO: Implement initialize() method.
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 获取用户信息
|
||
|
* @param string $account
|
||
|
* @param string $secret
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function getUser()
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/info');
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 用户登录
|
||
|
* @param string $account
|
||
|
* @param string $secret
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function login(string $account, string $secret)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/login', ['account' => $account, 'secret' => $secret], 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 注册平台
|
||
|
* @param array $data
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function register(array $data)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/register', $data, 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 平台用户消息记录
|
||
|
* @param int $page
|
||
|
* @param int $limit
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function userBill(int $page, int $limit)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/bill', ['page' => $page, 'limit' => $limit]);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 找回账号
|
||
|
* @param array $data
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function forget(array $data)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/forget', $data, 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 修改密码
|
||
|
* @param array $data
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function modify(array $data)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/modify', $data, 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 获取验证码
|
||
|
* @param string $phone
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function code(string $phone, $type = 0)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/code', ['phone' => $phone, 'types' => $type], 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 验证验证码
|
||
|
* @param string $phone
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function checkCode(string $phone, string $verify_code)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/code/verify', ['phone' => $phone, 'verify_code' => $verify_code], 'POST', false);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 套餐列表
|
||
|
* @param string $type 套餐类型:sms,短信;query,物流查询;dump,电子面单;copy,产品复制
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function mealList(string $type)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('meal/list', ['type' => $type]);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 套餐支付
|
||
|
* @param array $data
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function payMeal(array $data)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('meal/code', $data);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 用量记录
|
||
|
* @param int $page
|
||
|
* @param int $limit
|
||
|
* @param int $type
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function record(int $page, int $limit, int $type, $status = '')
|
||
|
{
|
||
|
$typeContent = [1 => 'sms', 2 => 'expr_dump', 3 => 'expr_query', 4 => 'copy'];
|
||
|
if (!isset($typeContent[$type])) {
|
||
|
throw new ValidateException('参数类型不正确');
|
||
|
}
|
||
|
$data = ['page' => $page, 'limit' => $limit, 'type' => $typeContent[$type]];
|
||
|
|
||
|
return $this->accessToken->httpRequest('user/record', $data);
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* 修改手机号
|
||
|
* @param array $data
|
||
|
* @return array|mixed
|
||
|
*/
|
||
|
public function modifyPhone(array $data)
|
||
|
{
|
||
|
return $this->accessToken->httpRequest('user/modify/phone', $data);
|
||
|
}
|
||
|
}
|