Merge branch 'master' of http://app.git.1nww.com:8188/gitlab-instance-db4ab2e7/cxfoot
This commit is contained in:
commit
8ed6873475
@ -29,6 +29,9 @@ class SiteController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function actionIndex()
|
public function actionIndex()
|
||||||
{
|
{
|
||||||
|
$code = $this->request->get('code');
|
||||||
|
echo($code);
|
||||||
|
exit();
|
||||||
return $this->render('index');
|
return $this->render('index');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -535,18 +535,18 @@ class Menu
|
|||||||
'is_show' => true,
|
'is_show' => true,
|
||||||
'route' => 'admin/page/about-us',
|
'route' => 'admin/page/about-us',
|
||||||
],
|
],
|
||||||
// [
|
[
|
||||||
// 'name' => '微信小程序',
|
'name' => '微信小程序',
|
||||||
// 'is_menu' => true,
|
'is_menu' => true,
|
||||||
// 'is_show' => true,
|
'is_show' => true,
|
||||||
// 'route' => null,
|
'route' => null,
|
||||||
// 'children' => [
|
'children' => [
|
||||||
// [
|
[
|
||||||
// 'name' => '微信配置',
|
'name' => '微信配置',
|
||||||
// 'is_menu' => true,
|
'is_menu' => true,
|
||||||
// 'is_show' => true,
|
'is_show' => true,
|
||||||
// 'route' => 'admin/wechat/mp',
|
'route' => 'admin/wechat/mp',
|
||||||
// ],
|
],
|
||||||
// [
|
// [
|
||||||
// 'name' => '轮播图',
|
// 'name' => '轮播图',
|
||||||
// 'is_menu' => true,
|
// 'is_menu' => true,
|
||||||
@ -559,8 +559,8 @@ class Menu
|
|||||||
// 'is_show' => false,
|
// 'is_show' => false,
|
||||||
// 'route' => 'admin/wechat/mp-tpl-msg',
|
// 'route' => 'admin/wechat/mp-tpl-msg',
|
||||||
// ],
|
// ],
|
||||||
// ]
|
]
|
||||||
// ],
|
],
|
||||||
// [
|
// [
|
||||||
// 'name' => '短信设置',
|
// 'name' => '短信设置',
|
||||||
// 'is_menu' => true,
|
// 'is_menu' => true,
|
||||||
|
|||||||
@ -1,280 +1,290 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author Any
|
* @author Any
|
||||||
* @description KISS
|
* @description KISS
|
||||||
* @date 2020-12-1
|
* @date 2020-12-1
|
||||||
* @version 1.0.0
|
* @version 1.0.0
|
||||||
*
|
*
|
||||||
* _____LOG_____
|
* _____LOG_____
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
|
|
||||||
namespace app\modules\api\controllers;
|
namespace app\modules\api\controllers;
|
||||||
|
|
||||||
use app\models\BallCart;
|
use app\models\BallCart;
|
||||||
use app\models\BallMark;
|
use app\models\BallMark;
|
||||||
use app\models\MsgCentre;
|
use app\models\MsgCentre;
|
||||||
use app\models\Order;
|
use app\models\Order;
|
||||||
use app\models\OrderDetail;
|
use app\models\OrderDetail;
|
||||||
use app\models\PaymentTypes;
|
use app\models\PaymentTypes;
|
||||||
use app\models\QcData;
|
use app\models\QcData;
|
||||||
use app\models\Store;
|
use app\models\Store;
|
||||||
use app\models\StoreEarnings;
|
use app\models\StoreEarnings;
|
||||||
use app\models\SysAdmin;
|
use app\models\SysAdmin;
|
||||||
use app\models\User;
|
use app\models\User;
|
||||||
use app\models\wechat\WechatApp;
|
use app\models\wechat\WechatApp;
|
||||||
use app\modules\api\behaviors\LoginBehavior;
|
use app\modules\api\behaviors\LoginBehavior;
|
||||||
use app\models\PageForm;
|
use app\models\PageForm;
|
||||||
use app\components\SiteHelper;
|
use app\components\SiteHelper;
|
||||||
use app\modules\api\components\ApiHelper;
|
use app\modules\api\components\ApiHelper;
|
||||||
use Wechat\Wechat;
|
use app\modules\api\models\WxmpAuthMobileForm;
|
||||||
|
use Wechat\Wechat;
|
||||||
class DefaultController extends Controller
|
|
||||||
{
|
class DefaultController extends Controller
|
||||||
public function behaviors()
|
{
|
||||||
{
|
public function behaviors()
|
||||||
return array_merge(parent::behaviors(), [
|
{
|
||||||
'login' => [
|
return array_merge(parent::behaviors(), [
|
||||||
'class' => LoginBehavior::className(),
|
'login' => [
|
||||||
'ignore' => [
|
'class' => LoginBehavior::className(),
|
||||||
'api/default/index',
|
'ignore' => [
|
||||||
'api/default/user-protocol',
|
'api/default/index',
|
||||||
'api/default/privacy-protocol',
|
'api/default/user-protocol',
|
||||||
'api/default/about-us',
|
'api/default/privacy-protocol',
|
||||||
'api/default/integral-rule-intro',
|
'api/default/about-us',
|
||||||
'api/default/debug',
|
'api/default/integral-rule-intro',
|
||||||
'api/default/update-admin',
|
'api/default/debug',
|
||||||
'api/default/disclaimer-info',
|
'api/default/update-admin',
|
||||||
]
|
'api/default/disclaimer-info',
|
||||||
]
|
'api/default/get-jssdk',
|
||||||
]);
|
]
|
||||||
}
|
]
|
||||||
|
]);
|
||||||
public function actionIndex()
|
}
|
||||||
{
|
|
||||||
$data = $this->invaildRequest();
|
public function actionIndex()
|
||||||
return $this->responseHandler($data);
|
{
|
||||||
}
|
$data = $this->invaildRequest();
|
||||||
|
return $this->responseHandler($data);
|
||||||
/**
|
}
|
||||||
* showdoc
|
|
||||||
* @catalog 登录注册
|
/**
|
||||||
* @title 用户协议
|
* showdoc
|
||||||
* @description 本接口提供用户协议
|
* @catalog 登录注册
|
||||||
* @method get
|
* @title 用户协议
|
||||||
* @url /api/default/user-protocol
|
* @description 本接口提供用户协议
|
||||||
* @param render 必选 bool false=返回html内容,true=输出页面
|
* @method get
|
||||||
* @return {"code":0,"msg":"ok","data":[]}
|
* @url /api/default/user-protocol
|
||||||
* @return_param content 协议内容为html格式
|
* @param render 必选 bool false=返回html内容,true=输出页面
|
||||||
* @remark
|
* @return {"code":0,"msg":"ok","data":[]}
|
||||||
*/
|
* @return_param content 协议内容为html格式
|
||||||
public function actionUserProtocol()
|
* @remark
|
||||||
{
|
*/
|
||||||
$form = new PageForm();
|
public function actionUserProtocol()
|
||||||
$form->cx_mch_id = $this->cx_mch_id;
|
{
|
||||||
$form->key = "_page_user_protocol_";
|
$form = new PageForm();
|
||||||
$data = [
|
$form->cx_mch_id = $this->cx_mch_id;
|
||||||
'code' => 0,
|
$form->key = "_page_user_protocol_";
|
||||||
'msg' => 'ok',
|
$data = [
|
||||||
'data' => $form->search()
|
'code' => 0,
|
||||||
];
|
'msg' => 'ok',
|
||||||
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
'data' => $form->search()
|
||||||
$render = \Yii::$app->request->get('render');
|
];
|
||||||
if (!$render) {
|
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
||||||
return $this->responseHandler($data);
|
$render = \Yii::$app->request->get('render');
|
||||||
}
|
if (!$render) {
|
||||||
return $this->render('page', [
|
return $this->responseHandler($data);
|
||||||
'title' => '用户协议',
|
}
|
||||||
'content' => $data['data']['content']
|
return $this->render('page', [
|
||||||
]);
|
'title' => '用户协议',
|
||||||
}
|
'content' => $data['data']['content']
|
||||||
|
]);
|
||||||
|
}
|
||||||
/**
|
|
||||||
* showdoc
|
|
||||||
* @catalog 登录注册
|
/**
|
||||||
* @title 隐私协议
|
* showdoc
|
||||||
* @description 本接口提供用隐私协议
|
* @catalog 登录注册
|
||||||
* @method get
|
* @title 隐私协议
|
||||||
* @url /api/default/privacy-protocol
|
* @description 本接口提供用隐私协议
|
||||||
* @param render 必选 bool false=返回html内容,true=输出页面
|
* @method get
|
||||||
* @return {"code":0,"msg":"ok","data":[]}
|
* @url /api/default/privacy-protocol
|
||||||
* @return_param content 协议内容为html格式
|
* @param render 必选 bool false=返回html内容,true=输出页面
|
||||||
* @remark
|
* @return {"code":0,"msg":"ok","data":[]}
|
||||||
*/
|
* @return_param content 协议内容为html格式
|
||||||
public function actionPrivacyProtocol()
|
* @remark
|
||||||
{
|
*/
|
||||||
$form = new PageForm();
|
public function actionPrivacyProtocol()
|
||||||
$form->cx_mch_id = $this->cx_mch_id;
|
{
|
||||||
$form->key = "_page_privacy_protocol_";
|
$form = new PageForm();
|
||||||
$data = [
|
$form->cx_mch_id = $this->cx_mch_id;
|
||||||
'code' => 0,
|
$form->key = "_page_privacy_protocol_";
|
||||||
'msg' => 'ok',
|
$data = [
|
||||||
'data' => $form->search()
|
'code' => 0,
|
||||||
];
|
'msg' => 'ok',
|
||||||
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
'data' => $form->search()
|
||||||
$render = \Yii::$app->request->get('render');
|
];
|
||||||
if (!$render) {
|
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
||||||
return $this->responseHandler($data);
|
$render = \Yii::$app->request->get('render');
|
||||||
}
|
if (!$render) {
|
||||||
return $this->render('page', [
|
return $this->responseHandler($data);
|
||||||
'title' => '隐私协议',
|
}
|
||||||
'content' => $data['data']['content']
|
return $this->render('page', [
|
||||||
]);
|
'title' => '隐私协议',
|
||||||
}
|
'content' => $data['data']['content']
|
||||||
|
]);
|
||||||
/**
|
}
|
||||||
* showdoc
|
|
||||||
* @catalog 登录注册
|
/**
|
||||||
* @title 关于我们
|
* showdoc
|
||||||
* @description 本接口提供用关于我们
|
* @catalog 登录注册
|
||||||
* @method get
|
* @title 关于我们
|
||||||
* @url /api/default/about-us
|
* @description 本接口提供用关于我们
|
||||||
* @param render 必选 bool false=返回html内容,true=输出页面
|
* @method get
|
||||||
* @return {"code":0,"msg":"ok","data":[]}
|
* @url /api/default/about-us
|
||||||
* @return_param content 详细内容为html格式
|
* @param render 必选 bool false=返回html内容,true=输出页面
|
||||||
* @remark
|
* @return {"code":0,"msg":"ok","data":[]}
|
||||||
*/
|
* @return_param content 详细内容为html格式
|
||||||
public function actionAboutUs()
|
* @remark
|
||||||
{
|
*/
|
||||||
$form = new PageForm();
|
public function actionAboutUs()
|
||||||
$form->cx_mch_id = $this->cx_mch_id;
|
{
|
||||||
$form->key = "_page_about_us_";
|
$form = new PageForm();
|
||||||
$data = [
|
$form->cx_mch_id = $this->cx_mch_id;
|
||||||
'code' => 0,
|
$form->key = "_page_about_us_";
|
||||||
'msg' => 'ok',
|
$data = [
|
||||||
'data' => $form->search()
|
'code' => 0,
|
||||||
];
|
'msg' => 'ok',
|
||||||
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
'data' => $form->search()
|
||||||
$render = \Yii::$app->request->get('render');
|
];
|
||||||
if (!$render) {
|
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
||||||
return $this->responseHandler($data);
|
$render = \Yii::$app->request->get('render');
|
||||||
}
|
if (!$render) {
|
||||||
return $this->render('page', [
|
return $this->responseHandler($data);
|
||||||
'title' => '关于我们',
|
}
|
||||||
'content' => $data['data']['content']
|
return $this->render('page', [
|
||||||
]);
|
'title' => '关于我们',
|
||||||
}
|
'content' => $data['data']['content']
|
||||||
|
]);
|
||||||
/**
|
}
|
||||||
* showdoc
|
|
||||||
* @catalog 用户信息/积分
|
/**
|
||||||
* @title 积分规则介绍
|
* showdoc
|
||||||
* @description 本接口提供用积分规则介绍
|
* @catalog 用户信息/积分
|
||||||
* @method get
|
* @title 积分规则介绍
|
||||||
* @url /api/default/integral-rule-intro
|
* @description 本接口提供用积分规则介绍
|
||||||
* @param render 必选 bool false=返回html内容,true=输出页面
|
* @method get
|
||||||
* @return {"code":0,"msg":"ok","data":[]}
|
* @url /api/default/integral-rule-intro
|
||||||
* @return_param content 详细内容为html格式
|
* @param render 必选 bool false=返回html内容,true=输出页面
|
||||||
* @remark
|
* @return {"code":0,"msg":"ok","data":[]}
|
||||||
*/
|
* @return_param content 详细内容为html格式
|
||||||
public function actionIntegralRuleIntro()
|
* @remark
|
||||||
{
|
*/
|
||||||
$form = new PageForm();
|
public function actionIntegralRuleIntro()
|
||||||
$form->cx_mch_id = $this->cx_mch_id;
|
{
|
||||||
$form->key = "_page_integral_rule_intro_";
|
$form = new PageForm();
|
||||||
$data = [
|
$form->cx_mch_id = $this->cx_mch_id;
|
||||||
'code' => 0,
|
$form->key = "_page_integral_rule_intro_";
|
||||||
'msg' => 'ok',
|
$data = [
|
||||||
'data' => $form->search()
|
'code' => 0,
|
||||||
];
|
'msg' => 'ok',
|
||||||
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
'data' => $form->search()
|
||||||
$render = \Yii::$app->request->get('render');
|
];
|
||||||
if (!$render) {
|
$data['data']['content'] = SiteHelper::repairContent($data['data']['content']);
|
||||||
return $this->responseHandler($data);
|
$render = \Yii::$app->request->get('render');
|
||||||
}
|
if (!$render) {
|
||||||
return $this->render('page', [
|
return $this->responseHandler($data);
|
||||||
'title' => '积分规则',
|
}
|
||||||
'content' => $data['data']['content']
|
return $this->render('page', [
|
||||||
]);
|
'title' => '积分规则',
|
||||||
}
|
'content' => $data['data']['content']
|
||||||
|
]);
|
||||||
/**
|
}
|
||||||
* 测试
|
|
||||||
*/
|
/**
|
||||||
public function actionDebug()
|
* 测试
|
||||||
{
|
*/
|
||||||
// select s.* from cx_ball_cart as c inner join cx_store as s on c.store_id = s.id where c.ball_number = '{}'
|
public function actionDebug()
|
||||||
/*$res = BallCart::find()->alias('c')
|
{
|
||||||
->join('inner join',['s'=>Store::tableName()],'c.store_id=s.id')
|
// select s.* from cx_ball_cart as c inner join cx_store as s on c.store_id = s.id where c.ball_number = '{}'
|
||||||
->andWhere([
|
/*$res = BallCart::find()->alias('c')
|
||||||
'c.ball_number' => '20221000853'
|
->join('inner join',['s'=>Store::tableName()],'c.store_id=s.id')
|
||||||
])->asArray()->all();
|
->andWhere([
|
||||||
|
'c.ball_number' => '20221000853'
|
||||||
echo "<pre>";
|
])->asArray()->all();
|
||||||
var_dump($res);
|
|
||||||
exit();*/
|
echo "<pre>";
|
||||||
$res = QcData::find()->andWhere([
|
var_dump($res);
|
||||||
'type' => 'GPS',
|
exit();*/
|
||||||
'union' => '20221000072',
|
$res = QcData::find()->andWhere([
|
||||||
])->andWhere([
|
'type' => 'GPS',
|
||||||
'>=','created_at',strtotime('2023-03-17 10:00:00')
|
'union' => '20221000072',
|
||||||
])->andWhere([
|
])->andWhere([
|
||||||
'<=','created_at',strtotime('2023-03-17 18:00:00')
|
'>=','created_at',strtotime('2023-03-17 10:00:00')
|
||||||
])->select('id,data,created_at,union')->asArray()->all();
|
])->andWhere([
|
||||||
foreach ($res as $key=>$val){
|
'<=','created_at',strtotime('2023-03-17 18:00:00')
|
||||||
$json_de = json_decode($val['data'],true);
|
])->select('id,data,created_at,union')->asArray()->all();
|
||||||
echo("<br>".$json_de['LAT'].",".$json_de['LON']." ----- {$val['union']} ----- ".date('Y-m-d H:i:s',$val['created_at']));
|
foreach ($res as $key=>$val){
|
||||||
// var_dump(['id'=>$val['id'],'lat'=>$json_de['LAT'],'lon'=>$json_de['LON'],'date'=>date('Y-m-d H:i:s',$val['created_at']),'union'=>$val['union']]);
|
$json_de = json_decode($val['data'],true);
|
||||||
}
|
echo("<br>".$json_de['LAT'].",".$json_de['LON']." ----- {$val['union']} ----- ".date('Y-m-d H:i:s',$val['created_at']));
|
||||||
exit();
|
// var_dump(['id'=>$val['id'],'lat'=>$json_de['LAT'],'lon'=>$json_de['LON'],'date'=>date('Y-m-d H:i:s',$val['created_at']),'union'=>$val['union']]);
|
||||||
}
|
}
|
||||||
|
exit();
|
||||||
|
}
|
||||||
public function actionUpdateAdmin()
|
|
||||||
{
|
|
||||||
$user = ApiHelper::findOneUser(1, $this->cx_mch_id);
|
public function actionUpdateAdmin()
|
||||||
|
{
|
||||||
|
$user = ApiHelper::findOneUser(1, $this->cx_mch_id);
|
||||||
$sys_user = SysAdmin::findOne(['user_id' => 1]);
|
|
||||||
|
|
||||||
$sys_user->is_delete = 0;
|
$sys_user = SysAdmin::findOne(['user_id' => 1]);
|
||||||
|
|
||||||
if (!$sys_user->save()) {
|
$sys_user->is_delete = 0;
|
||||||
echo '密码重置错误';
|
|
||||||
die();
|
if (!$sys_user->save()) {
|
||||||
}
|
echo '密码重置错误';
|
||||||
|
die();
|
||||||
|
}
|
||||||
if (!$user) {
|
|
||||||
echo '用户错误';
|
|
||||||
die();
|
if (!$user) {
|
||||||
}
|
echo '用户错误';
|
||||||
$user->password = '$2y$13$aQufr.UxFnirmMZ57WrUIutFDEw.3.DDgiLy8dZayFWZFISZW/VQy';
|
die();
|
||||||
if (!$user->save()) {
|
}
|
||||||
echo '密码重置错误';
|
$user->password = '$2y$13$aQufr.UxFnirmMZ57WrUIutFDEw.3.DDgiLy8dZayFWZFISZW/VQy';
|
||||||
die();
|
if (!$user->save()) {
|
||||||
}
|
echo '密码重置错误';
|
||||||
echo '成功';
|
die();
|
||||||
die();
|
}
|
||||||
}
|
echo '成功';
|
||||||
|
die();
|
||||||
/**
|
}
|
||||||
* showdoc
|
|
||||||
* @catalog 登录注册
|
/**
|
||||||
* @title 免责声明
|
* showdoc
|
||||||
* @description 本接口提供免责声明
|
* @catalog 登录注册
|
||||||
* @method get
|
* @title 免责声明
|
||||||
* @url /api/default/disclaimer-info
|
* @description 本接口提供免责声明
|
||||||
* @return {"code":0,"msg":"ok","data":[]}
|
* @method get
|
||||||
* @return_param info 弹窗信息
|
* @url /api/default/disclaimer-info
|
||||||
* @return_param btn_close 点击关闭时小弹窗信息
|
* @return {"code":0,"msg":"ok","data":[]}
|
||||||
* @return_param status 状态,1.正常弹窗,2.不弹窗
|
* @return_param info 弹窗信息
|
||||||
* @remark
|
* @return_param btn_close 点击关闭时小弹窗信息
|
||||||
*/
|
* @return_param status 状态,1.正常弹窗,2.不弹窗
|
||||||
public function actionDisclaimerInfo(){
|
* @remark
|
||||||
$arr = [
|
*/
|
||||||
'info' => "本车是电动驱行车辆,由于传感器性能,在车道上只能使用红键电动助力前行,不能使用自动前行与智能跟随功能,如违反责任自负,介意慎用。谢谢",
|
public function actionDisclaimerInfo(){
|
||||||
'btn_close' => "需确认免责声明后方可租赁",
|
$arr = [
|
||||||
'status' => 1,
|
'info' => "本车是电动驱行车辆,由于传感器性能,在车道上只能使用红键电动助力前行,不能使用自动前行与智能跟随功能,如违反责任自负,介意慎用。谢谢",
|
||||||
];
|
'btn_close' => "需确认免责声明后方可租赁",
|
||||||
return $this->responseHandler([
|
'status' => 1,
|
||||||
'data' => $arr,
|
];
|
||||||
'code' => 0,
|
return $this->responseHandler([
|
||||||
'msg' => 'ok',
|
'data' => $arr,
|
||||||
]);
|
'code' => 0,
|
||||||
}
|
'msg' => 'ok',
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ 获取js-sdk前端所需参数
|
||||||
|
*/
|
||||||
|
public function actionGetJssdk(){
|
||||||
|
$obj = new WxmpAuthMobileForm();
|
||||||
|
$obj->url = $this->request->get('url');
|
||||||
|
$obj->wechat_mp = $this->wechat_mp;
|
||||||
|
return $this->responseHandler($obj->actionGetJssdk());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@ -32,6 +32,7 @@ class WxmpAuthMobileForm extends ApiModel
|
|||||||
|
|
||||||
public $wechat_mp;
|
public $wechat_mp;
|
||||||
public $cx_mch_id;
|
public $cx_mch_id;
|
||||||
|
public $url;
|
||||||
|
|
||||||
|
|
||||||
public function rules()
|
public function rules()
|
||||||
@ -120,6 +121,37 @@ class WxmpAuthMobileForm extends ApiModel
|
|||||||
'msg' => 'ok',
|
'msg' => 'ok',
|
||||||
'data' => $res
|
'data' => $res
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @ 获取js-sdk前端所需参数
|
||||||
|
*/
|
||||||
|
public function actionGetJssdk(){
|
||||||
|
$redis_name = "api:{$this->wechat_mp->appId}:actionGetJssdk_1";
|
||||||
|
$get = \Yii::$app->redis->get($redis_name);
|
||||||
|
if(empty($get)){
|
||||||
|
$accessToken = $this->wechat_mp->getAccessToken();
|
||||||
|
// $url = "https://qyapi.weixin.qq.com/cgi-bin/get_jsapi_ticket?access_token=$accessToken";
|
||||||
|
$url = "https://api.weixin.qq.com/cgi-bin/ticket/getticket?type=jsapi&access_token=".$accessToken;
|
||||||
|
$this->wechat_mp->curl->get($url);
|
||||||
|
$res = json_decode($this->wechat_mp->curl->response);
|
||||||
|
$get = $res->ticket;
|
||||||
|
\Yii::$app->redis->setex($redis_name,6800,$get);
|
||||||
|
}
|
||||||
|
$uniq = uniqid();
|
||||||
|
$time = time();
|
||||||
|
$str = "jsapi_ticket={$get}&noncestr={$uniq}×tamp={$time}&url={$this->url}";
|
||||||
|
$sign = sha1($str);
|
||||||
|
$return = [
|
||||||
|
'appId' => $this->wechat_mp->appId,
|
||||||
|
'timestamp' => $time,
|
||||||
|
'nonceStr' => $uniq,
|
||||||
|
'signature' => $sign,
|
||||||
|
'jsApiList' => [
|
||||||
|
'scanQRCode',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
return $this->apiReturnSuccess('ok',$return);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user