src/AppBundle/Controller/My/CardController.php

(开头部分) 2KB

这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。

<?php

namespace AppBundle\Controller\My;

use Biz\Card\Service\CardService;
use AppBundle\Common\ArrayToolkit;
use Symfony\Component\HttpFoundation\Cookie;
use Symfony\Component\HttpFoundation\Request;
use AppBundle\Controller\BaseController;

class CardController extends BaseController
{
    public function indexAction(Request $request)
    {
        $user = $this->getCurrentUser();
        $cardType = $request->query->get('cardType');

        if (!$user->isLogin()) {
            return $this->createMessageResponse('error', '用户未登录,请先登录!');
        }

        if ($cardType == 'moneyCard') {
            if (!$this->isPluginInstalled('moneyCard') || ($this->isPluginInstalled('moneyCard') && version_compare($this->getWebExtension()->getPluginVersion('moneyCard'), '1.1.1', '<='))) {
                return $this->render('card/index.html.twig', array(
                    'cards' => null,
                ));
            }
        }

        if (empty($cardType) || !in_array($cardType, array('coupon', 'moneyCard'))) {
            $cardType = 'coupon';
        }

        $cards = $this->getCardService()->findCardsByUserIdAndCardType($user['id'], $cardType);
        $cardIds = ArrayToolkit::column($cards, 'cardId');
        $cards = $this->sortCards($cards);
        $filter = $request->query->get('filter');

        if (!empty($filter)) {
            $groupCards = ArrayToolkit::group($cards, 'status');

            if ($filter == 'used') {
                $cards = isset($groupCards['used']) ? $groupCards['used'] : null;
            } elseif ($filter == 'outdate') {
                $cards = isset($groupCards['outdate']) ? $groupCards['outdate'] : null;
            } elseif ($filter == 'invalid') {
                $cards = isset($groupCards['invalid']) ? $groupCards['invalid'] : null;
            } else {
                $cards = isset($groupCards['useable']) ? $groupCards['useable'] : null;
            }
        }

        $cardsDetail = $this->getCardService()->findCardDetailsByCardTypeAndCardIds($cardType, $cardIds);

        return $this->render('card/index.html.twig', array(
            'cards' => empty($cards) ? null : $cards,
            'cardDetails' => ArrayToolkit::index($cardsDetail, 'id'),
        ));
    }

24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明

AI 解读 AI

登录后可用,每次 10 算力,解读结果公开显示在下面。

还没有人解读过这个文件。