dlh_test_server/app/api/logic/VerifyLogic.php
2024-10-03 17:28:02 +08:00

99 lines
2.9 KiB
PHP

<?php
namespace app\api\logic;
use app\common\basics\Logic;
use app\common\model\localstore\LocalGoodsOrder;
use app\common\model\localstore\LocalStoreVerify;
use app\common\server\JsonServer;
use app\common\server\WeChatServer;
use EasyWeChat\Factory;
use Endroid\QrCode\QrCode;
use think\Exception;
use think\facade\Db;
use think\facade\Request;
class VerifyLogic extends Logic
{
/**
* @param $get
* @return void
* 获取核销推广码
*/
public static function getVerifyCode($get)
{
$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('获取失败,订单错误');
}
if($order['verify_code_image'] !=null){
$data['url'] = $order['verify_code_image'];
return $data;
}
$scene = 'lsg_order_id='.$order['lsg_order_id'];
$save_dir = ROOT_PATH .'/uploads/verifycode/';
!file_exists($save_dir) && mkdir($save_dir,0777,true);
$a = time().$order['lsg_order_id'];
$qr_src = $a . '.jpg';
$path = $save_dir.$qr_src;
$qrCode = new QrCode();
$qrCode->setText($scene);
$qrCode->setSize(1000);
$qrCode->setWriterByName('png');
$qrCode->writeFile($path);
$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']
]);
return $data;
}catch (Exception $e) {
self::$error = $e->getMessage();
return false;
}
}
public static function dispose($post){
$lsg_order_id = $post['lsg_order_id'];
$user_id = $post['user_id'];
try {
$order = LocalGoodsOrder::where([
'lsg_order_id'=>$lsg_order_id,
'state'=>1
])->find();
if(!$order){
throw new Exception('获取失败,订单错误');
}
$lstore_id = $order['lstore_id'];
$StoreVerify = LocalStoreVerify::where([
'user_id'=>$user_id,
'lstore_id'=>$lstore_id,
'is_delete'=>0
])->find();
if(!$StoreVerify){
throw new Exception('核销失败,当前用户无权限');
}
LocalGoodsOrder::where('lsg_order_id',$lsg_order_id)->update([
'verify_status'=>1
]);
return [];
}catch (Exception $e) {
self::$error = $e->getMessage();
return false;
}
}
}