灵润

发布时间 2023-07-10 17:26:44作者: 转~~~
  switch ($data['order_status']) {
            case 0:
                //待支付
                if ($data['pay_type'] != 4
                    ||
                    ($data['pay_type'] == 4 && in_array($data['transfer_status'], [0, 3]))
                ) {
                    //显示支付按钮
                    $button['pay'] = 1;
                }
                break;
            case 1:
                //待发货
                if (in_array($data['cancel_status'], [0, 3])) {
                    //显示申请退款按钮
                    $button['apply_refund'] = 1;
                }
                break;
            case 2:
                //待收货
                if (in_array($data['after_sale_status'], [0, 3])) {
                    //无售后状态
                    if ($data['is_extend_receipt'] == 0) {
                        //显示延长收货按钮
                        $button['extend_receipt'] = 1;
                    }
                    if ($data['is_allow_after_sale'] == 0) {
                        //显示申请售后按钮
                        $data['refund'] = 1;
                    }
                    //显示确认收货按钮
                    $button['receipt'] = 1;
                } else {
                    //显示取消售后
                    $button['cancel_refund'] = 1;
                }
                //显示物流信息
                $button['express'] = 1;
                break;
            case 3:
                //已完成
                if (in_array($data['after_sale_status'], [0, 3])) {
                    if ($data['is_allow_after_sale'] == 0) {
                        //显示申请售后按钮
                        $button['refund'] = 1;
                    }
                    if ($data['is_comment'] == 0) {
                        //显示评论按钮
                        $button['comment'] = 1;
                    }
                    if ($data['is_delete'] == 0) {
                        //显示删除订单按钮
                        $button['delete'] = 1;
                    }
                } else {
                    //售后中,取消售后
                    $button['cancel_refund'] = 1;
                }

                break;
            case 4:
                //已取消
                break;
            case 5:
                //已退款
                break;
        }