70 lines
1.5 KiB
PHP
70 lines
1.5 KiB
PHP
<?php
|
|
|
|
namespace app\common\model\order;
|
|
|
|
use think\Model;
|
|
|
|
/**
|
|
* 订单虚拟支付关联模型
|
|
* 存储虚拟支付订单与用户openid的关联关系,用于退款时获取openid
|
|
*/
|
|
class VirtualPay extends Model
|
|
{
|
|
protected $name = 'order_virtual_pay';
|
|
|
|
protected $autoWriteTimestamp = 'int';
|
|
|
|
protected $createTime = 'createtime';
|
|
|
|
protected $updateTime = false;
|
|
|
|
protected $deleteTime = false;
|
|
|
|
/**
|
|
* 保存订单与openid的关联
|
|
* @param string $orderNo 订单号
|
|
* @param string $openid 微信openid
|
|
* @return bool
|
|
*/
|
|
public static function saveRelation($orderNo, $openid)
|
|
{
|
|
if (empty($orderNo) || empty($openid)) {
|
|
return false;
|
|
}
|
|
|
|
$record = self::where(['order_no' => $orderNo])->find();
|
|
|
|
if ($record) {
|
|
if ($record->openid !== $openid) {
|
|
$record->openid = $openid;
|
|
$record->save();
|
|
}
|
|
return true;
|
|
}
|
|
|
|
$model = new self();
|
|
$model->order_no = $orderNo;
|
|
$model->openid = $openid;
|
|
$model->uniacid = defined('UNIACID') ? UNIACID : 0;
|
|
$model->save();
|
|
|
|
return true;
|
|
}
|
|
|
|
/**
|
|
* 根据订单号获取openid
|
|
* @param string $orderNo 订单号
|
|
* @return string
|
|
*/
|
|
public static function getOpenidByOrderNo($orderNo)
|
|
{
|
|
if (empty($orderNo)) {
|
|
return '';
|
|
}
|
|
|
|
$record = self::where(['order_no' => $orderNo])->find();
|
|
|
|
return $record ? $record->openid : '';
|
|
}
|
|
}
|