197 lines
6.0 KiB
PHP
197 lines
6.0 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'];
|
|
$url = $get['url'];
|
|
$type = $get['type'];
|
|
|
|
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 = array(
|
|
'lsg_order_id' => $order['lsg_order_id'],
|
|
'url' => $url,
|
|
'type' => $type,
|
|
);
|
|
$scene = json_encode($scene);
|
|
$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_user_id' => $user_id,
|
|
'verify_time' => time(),
|
|
'verify_status' => 1
|
|
]);
|
|
return [];
|
|
|
|
} catch (Exception $e) {
|
|
self::$error = $e->getMessage();
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
public static function verifyOrderList($post)
|
|
{
|
|
$user_id = $post['user_id'];
|
|
$page_no = $post['page_no'];
|
|
$page_size = $post['page_size'];
|
|
try {
|
|
$lists = LocalGoodsOrder::alias('o')
|
|
->join('user u', 'u.id = o.user_id')
|
|
->page($page_no, $page_size)
|
|
->where([
|
|
'o.verify_user_id' => $user_id,
|
|
'verify_status' => 1
|
|
])
|
|
->order('id desc')
|
|
->field('u.nickname,o.goods_total_price,verify_time,order_no')
|
|
->select()
|
|
->toArray();
|
|
if ($lists) {
|
|
foreach ($lists as &$val) {
|
|
$val['verify_time'] = date('Y-m-d H:i:s', $val['verify_time']);
|
|
}
|
|
}
|
|
|
|
$count = LocalGoodsOrder::alias('o')
|
|
->join('user u', 'u.id = o.user_id')
|
|
->where([
|
|
'o.user_id' => $user_id,
|
|
'verify_status' => 1
|
|
])->count();
|
|
$more = is_more($count, $page_no, $page_size); //是否有下一页
|
|
|
|
$data = [
|
|
'lists' => $lists,
|
|
'page_no' => $page_no,
|
|
'page_size' => $page_size,
|
|
'count' => $count,
|
|
'more' => $more
|
|
];
|
|
return $data;
|
|
} catch (Exception $e) {
|
|
self::$error = $e->getMessage();
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public static function StoreList($post){
|
|
|
|
$user_id = $post['user_id'];
|
|
$page_no = $post['page_no'];
|
|
$page_size = $post['page_size'];
|
|
|
|
try {
|
|
$lists = LocalStoreVerify::alias('sv')
|
|
->join('local_store s','s.lstore_id = sv.lstore_id')
|
|
->where([
|
|
'sv.user_id'=>$user_id,
|
|
'sv.is_delete'=>0,
|
|
])
|
|
->page($page_no, $page_size)
|
|
->field('sv.create_time,s.shopName,shopLogo')
|
|
->select()
|
|
->toArray();
|
|
|
|
$count = LocalStoreVerify::alias('sv')
|
|
->join('local_store s','s.lstore_id = sv.lstore_id')
|
|
->where([
|
|
'sv.user_id'=>$user_id,
|
|
'sv.is_delete'=>0,
|
|
])->count();
|
|
$more = is_more($count, $page_no, $page_size); //是否有下一页
|
|
$data = [
|
|
'lists' => $lists,
|
|
'page_no' => $page_no,
|
|
'page_size' => $page_size,
|
|
'count' => $count,
|
|
'more' => $more
|
|
];
|
|
|
|
return $data;
|
|
|
|
}catch (Exception $e) {
|
|
|
|
self::$error = $e->getMessage();
|
|
return false;
|
|
}
|
|
|
|
}
|
|
|
|
} |