71 lines
2.2 KiB
PHP
71 lines
2.2 KiB
PHP
<?php
|
|
|
|
namespace app\api\logic;
|
|
|
|
use app\common\basics\Logic;
|
|
use app\common\model\localstore\LocalGoodsOrder;
|
|
use app\common\server\JsonServer;
|
|
use app\common\server\WeChatServer;
|
|
use EasyWeChat\Factory;
|
|
use think\Exception;
|
|
use think\facade\Db;
|
|
use think\facade\Request;
|
|
|
|
class VerifyLogic extends Logic
|
|
{
|
|
/**
|
|
* @param $get
|
|
* @return void
|
|
* 获取核销推广码
|
|
*/
|
|
public static function getVerifyCode($get)
|
|
{
|
|
$url = $get['url'];
|
|
$lsg_order_id = $get['lsg_order_id'];
|
|
|
|
try {
|
|
$order = LocalGoodsOrder::where([
|
|
'lsg_order_id'=>$lsg_order_id,
|
|
'state'=>1
|
|
])->find();
|
|
if(!$order){
|
|
throw new Exception('获取失败,订单错误');
|
|
}
|
|
$scene = 'lsg_order_id='.$order['lsg_order_id'];
|
|
$save_dir = ROOT_PATH .'/uploads/verifycode/';
|
|
$a = time().$order['lsg_order_id'];
|
|
$qr_src = $a . '.jpg';
|
|
$config = WeChatServer::getMnpConfig();
|
|
$app = Factory::miniProgram($config);
|
|
|
|
$response = $app->app_code->getUnlimit($scene, [
|
|
'page' => $url,
|
|
// 'env_version' => 'trial',
|
|
'env_version' => 'develop'
|
|
]);
|
|
if ($response instanceof \EasyWeChat\Kernel\Http\StreamResponse) {
|
|
$response->saveAs($save_dir, $a);
|
|
$us = Request::instance()->domain();
|
|
$d['set_image'] = $data['url'] = $us.'/uploads/verifycode/'.$qr_src;
|
|
$set = LocalGoodsOrder::where('lsg_order_id',$lsg_order_id)->update([
|
|
'verify_code_image' =>$d['set_image']
|
|
]);
|
|
if($set){
|
|
return JsonServer::success('上传成功',$data);
|
|
}else{
|
|
return JsonServer::error('上传失败');
|
|
}
|
|
|
|
}
|
|
if(isset($response['errcode']) && 41030 === $response['errcode']){
|
|
return '商城小程序未上线或商城小程序页面发布';
|
|
}
|
|
return $response['errmsg'];
|
|
}catch (Exception $e) {
|
|
self::$error = $e->getMessage();
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
} |