parent
d05d5af8ca
commit
b3243283a3
|
|
@ -1182,7 +1182,30 @@ class StoreRefundOrderRepository extends BaseRepository
|
|||
{
|
||||
if ($refundOrder->refund_price > 0 && $refundOrder->order->pay_price > 0) {
|
||||
$userBillRepository = app()->make(UserBillRepository::class);
|
||||
$bill = $userBillRepository->getWhere(['category' => 'integral', 'type' => 'lock', 'link_id' => $refundOrder->order->group_order_id]);
|
||||
$bill = $userBillRepository->getWhere(['category' => 'integral', 'type' => 'lock', 'link_id' => $refundOrder->order_id]);// 获取积分赠送记录
|
||||
if ($bill) {
|
||||
// 计算扣除的积分
|
||||
if ($refundOrder->order->status == -1) $number = bcsub($bill->number, $userBillRepository->refundIntegral($refundOrder->order_id, $bill->uid), 0);
|
||||
else $number = ($refundOrder['refund_price'] / $refundOrder->order->pay_price) * $refundOrder->order->give_integral;
|
||||
if ($number <= 0) return;
|
||||
// 修改用户持有的总积分
|
||||
$make = app()->make(UserRepository::class);
|
||||
$make->update($refundOrder->uid, ['integral' => Db::raw('integral-' . $number)]);
|
||||
$userIntegral = $make->get($refundOrder->uid)->integral;
|
||||
// 添加记录
|
||||
$userBillRepository->decBill($bill->uid, 'integral', 'refund_lock', [
|
||||
'link_id' => $refundOrder->order_id,
|
||||
'status' => 1,
|
||||
'title' => '扣除赠送积分',
|
||||
'number' => $number,
|
||||
'mark' => '订单退款扣除赠送商户积分' . intval($number),
|
||||
'balance' => $userIntegral
|
||||
]);
|
||||
// 赠送的都是商户积分 这里也要退商户积分
|
||||
app()->make(IntegralRepository::class)->changeIntegral((int)$refundOrder->uid,(int)$refundOrder->mer_id,(float)sprintf('%.2f',0 - $number));
|
||||
}
|
||||
|
||||
/*$bill = $userBillRepository->getWhere(['category' => 'integral', 'type' => 'lock', 'link_id' => $refundOrder->order->group_order_id]);
|
||||
if ($bill && $bill->status != 1) {
|
||||
|
||||
if ($refundOrder->order->status == -1) {
|
||||
|
|
@ -1201,7 +1224,7 @@ class StoreRefundOrderRepository extends BaseRepository
|
|||
'mark' => '订单退款扣除赠送积分' . intval($number),
|
||||
'balance' => $refundOrder->user->integral
|
||||
]);
|
||||
}
|
||||
}*/
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1332,11 +1355,11 @@ class StoreRefundOrderRepository extends BaseRepository
|
|||
if((float)$refundOrder->order->use_mer_integral > 0){
|
||||
// 使用的商户积分
|
||||
app()->make(IntegralRepository::class)->changeIntegral((int)$refundOrder->uid,(int)$refundOrder->mer_id,(float)sprintf('%.2f',$refundOrder->integral));
|
||||
$mark = '订单退款,返还' . intval($refundOrder->integral) . '商户积分';
|
||||
$mark = '订单退款,返还积分抵扣使用的' . intval($refundOrder->integral) . '商户积分';
|
||||
}else{
|
||||
// 使用的平台积分
|
||||
app()->make(IntegralRepository::class)->changeIntegral((int)$refundOrder->uid,(int)0,(float)sprintf('%.2f',$refundOrder->integral));
|
||||
$mark = '订单退款,返还' . intval($refundOrder->integral) . '平台积分';
|
||||
$mark = '订单退款,返还积分抵扣使用的' . intval($refundOrder->integral) . '平台积分';
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -96,7 +96,7 @@ class UserBillRepository extends BaseRepository
|
|||
|
||||
public function getList($where, $page, $limit)
|
||||
{
|
||||
$query = $this->dao->searchJoin($where)->order('a.create_time DESC');
|
||||
$query = $this->dao->searchJoin($where)->order('a.create_time DESC')->order('a.bill_id DESC');
|
||||
$count = $query->count();
|
||||
$list = $query->page($page, $limit)->select();
|
||||
return compact('count', 'list');
|
||||
|
|
|
|||
Loading…
Reference in New Issue