Skip to content

订单退款

liaofei edited this page Jan 20, 2021 · 1 revision

订单退款

订单退款由app\services\order\StoreOrderRefundServices.php内的payOrderRefund方法进行处理

需要退还使用的积分和使用的优惠券。文件位置:app\services\order\StoreOrderRefundServices.php

    /**
     * 回退积分和优惠卷
     * @param $order
     * @return bool
     */
    public function integralAndCouponBack($order)

如果是拼团订单需要退拼团订单,文件路径:app\services\activity\StorePinkServices.php

    
    /**
     * 拼团退款
     * @param $id
     * @return bool
     */
    public function setRefundPink($order)

确认收货的佣金没有超过冻结期限的需要回退当前用户的佣金,文件路径:app\services\user\UserBillServices.php

    /**
     * 退佣金
     * @param int $id
     * @throws \think\db\exception\DataNotFoundException
     * @throws \think\db\exception\DbException
     * @throws \think\db\exception\ModelNotFoundException
     */
    public function orderRefundBrokerageBack(int $id, string $orderId)

回退商品库存,文件路径:app\services\order\StoreOrderRefundServices.php

    /**
     * 回退库存
     * @param $order
     * @return bool
     */
    public function regressionStock($order)

所有的回退操作执行成功后执行退微信支付金额或余额支付金额。退款金额成功后还需要更改发票状态为已退款。整个退款流程才算完成;

Clone this wiki locally