Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * @Route("/filialstat")
- */
- public function filialstat(Request $request)
- {
- ini_set('display_errors', 1);
- ini_set('display_startup_errors', 1);
- error_reporting(E_ALL);
- ini_set('max_execution_time', 9000);
- ini_set('memory_limit', '4096M');
- $apcu = new ApcuCache();
- $beginDate = 1543611600;
- $endDate = time();
- $products = $this->productRepository->createQueryBuilder('p')
- ->select('p.id, p.category_id')->getQuery()->getArrayResult();
- $productArr = [];
- foreach ($products as $product) {
- $productArr[$product['id']] = $product['category_id'];
- }
- $orderStatusesArray = [];
- $orderStatuses = $this->em->getRepository(OrderStatus::class)->findAll();
- foreach ($orderStatuses as $orderStatus) {
- $orderStatusesArray[$orderStatus->getId()] = $orderStatus->getName();
- }
- if ($apcu->contains('statorderlist3')) {
- $orders = $apcu->fetch('statorderlist3');
- } else {
- $orders = $this->orderRepository->createQueryBuilder('o')
- ->where('o.date > :begin')
- ->andWhere('o.date < :end')
- ->andWhere('o.statusIndex = 4')
- ->setParameter('begin', $beginDate)
- ->setParameter('end', $endDate)
- ->orderBy('o.date', 'ASC')
- ->getQuery()->getResult();
- $apcu->save('statorderlist3', $orders, 7200);
- }
- $filials = [
- 1016 => 'Воронеж',
- 1017 => 'Краснодар',
- 1018 => 'Курск',
- 1019 => 'Липецк',
- 1020 => 'Тверь',
- 1021 => 'Тула'
- ];
- $steklo = 5835;
- $firmtest = 5894;
- $result = [];
- /** @var Order $order */
- foreach ($orders as $order) {
- $deserialized = $order->getOrders();
- if (isset($deserialized) && !empty($deserialized)) {
- $deliveryId = $deserialized['Person']['dostavka_metod'] ?? null;
- $cart = $deserialized['Cart']['cart'] ?? null;
- if (isset($deliveryId) && isset($filials[$deliveryId])) {
- //dump($filials[$deliveryId]);
- if (!isset($result[$filials[$deliveryId]]['total'])) {
- $result[$filials[$deliveryId]]['total'] = 1;
- } else {
- $result[$filials[$deliveryId]]['total']++;
- }
- if (isset($cart) && is_array($cart)) {
- $ids = array_column($cart, 'id');
- if (in_array($steklo, $ids)) {
- if (!isset($result[$filials[$deliveryId]]['steklo'])) {
- $result[$filials[$deliveryId]]['steklo'] = 1;
- } else {
- $result[$filials[$deliveryId]]['steklo']++;
- }
- }
- if (in_array($firmtest, $ids)) {
- if (!isset($result[$filials[$deliveryId]]['firmtest'])) {
- $result[$filials[$deliveryId]]['firmtest'] = 1;
- } else {
- $result[$filials[$deliveryId]]['firmtest']++;
- }
- }
- }
- } else {
- }
- }
- }
- dump($result);
- die();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement