代码提交
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
|
||||
namespace app\common\controller;
|
||||
|
||||
use app\chukebao\model\TokensCompany;
|
||||
use think\Db;
|
||||
use app\common\util\PaymentUtil;
|
||||
use think\facade\Config;
|
||||
@@ -60,20 +61,19 @@ class PaymentService
|
||||
//创建订单
|
||||
Order::create([
|
||||
'mchId' => $params['mch_id'],
|
||||
'companyId' => $order['companyId'],
|
||||
'userId' => $order['userId'],
|
||||
'orderType' => $order['orderType'] ?? 1,
|
||||
'companyId' => isset($order['companyId']) ? $order['companyId'] : 0,
|
||||
'userId' => isset($order['userId']) ? $order['userId'] : 0,
|
||||
'orderType' => isset($order['orderType']) ? $order['orderType'] : 1,
|
||||
'status' => 0,
|
||||
'goodsId' => $order['goodsId'],
|
||||
'goodsName' => $order['goodsName'],
|
||||
'money' => $order['money'],
|
||||
'orderNo' => $order['orderNo'],
|
||||
'goodsId' => isset($order['goodsId']) ? $order['goodsId'] : 0,
|
||||
'goodsName' => isset($order['goodsName']) ? $order['goodsName'] : '',
|
||||
'money' => isset($order['money']) ? $order['money'] : 0,
|
||||
'goodsSpecs' => isset($order['goodsSpecs']) ? json_encode($order['goodsSpecs'],256) : json_encode([]),
|
||||
'orderNo' => isset($order['orderNo']) ? $order['orderNo'] : '',
|
||||
'ip' => Request::ip(),
|
||||
'nonceStr' => $params['nonce_str'],
|
||||
'nonceStr' => isset($order['nonceStr']) ? $order['nonceStr'] : '',
|
||||
'createTime' => time(),
|
||||
]);
|
||||
|
||||
|
||||
// XML POST 请求
|
||||
$xmlBody = $this->arrayToXml($params);
|
||||
$response = $this->postXml($url, $xmlBody);
|
||||
@@ -227,15 +227,36 @@ class PaymentService
|
||||
|
||||
if ($pay_result != 0) {
|
||||
$order->payInfo = $payload['pay_info'];
|
||||
$order->payType = $payload['trade_type'] == 'pay.wechat.jspay' ? 1 : 2;
|
||||
$order->status = 3;
|
||||
$order->save();
|
||||
Db::commit();
|
||||
return json_encode(['code' => 500, 'msg' => $payload['pay_info']]);
|
||||
}
|
||||
$order->payType = $payload['trade_type'] == 'pay.wechat.jspay' ? 1 : 2;
|
||||
$order->status = 1;
|
||||
$order->payTime = $this->parsePayTime($time_end);
|
||||
$order->save();
|
||||
//订单处理
|
||||
switch ($order['orderType']){
|
||||
case 1:
|
||||
// 处理购买算力
|
||||
$token = TokensCompany::where(['companyId' => $order->companyId])->find();
|
||||
$goodsSpecs = json_decode($token->goodsSpecs,true);
|
||||
if (!empty($token)){
|
||||
$token->tokens = $token->tokens + $goodsSpecs['tokens'];
|
||||
$token->updateTime = time();
|
||||
$token->save();
|
||||
}else{
|
||||
$tokensCompany = new TokensCompany();
|
||||
$tokensCompany->companyId = $order->companyId;
|
||||
$tokensCompany->tokens = $goodsSpecs['tokens'];
|
||||
$tokensCompany->createTime = time();
|
||||
$tokensCompany->updateTime = time();
|
||||
$tokensCompany-> save();
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
Db::commit();
|
||||
return json_encode(['code' => 200, 'msg' => '付款成功']);
|
||||
} catch (\Exception $e) {
|
||||
|
||||
Reference in New Issue
Block a user