Untitled

mail@pastecode.io avatar
unknown
plain_text
7 months ago
1.4 kB
1
Indexable
Never
    public function getHeatMapDataAction()
    {
        $identity = $this->identity();
        session_write_close();
        $roundId = $this->params()->fromQuery('roundId', -1);
        $observableName = $this->params()->fromQuery('observableName', -1);
        $eventType = $this->params()->fromQuery('type', -1);

        if ($roundId == -1) {
            return new JsonModel([
                'error' => 'No prod. cycle provided'
            ]);
        }

        switch ($eventType) {
            case self::LATEST:
                $data = $this->robotManager->getFrontEndData($roundId, self::HEAT_MAP, self::LATEST, $observableName);
                break;
            case self::ROUND:
                $data = $this->robotManager->getFrontEndData($roundId, self::HEAT_MAP, self::ROUND, $observableName);
                break;
            case self::TIME_OF_DAY:
                $data = $this->robotManager->getFrontEndData($roundId, self::HEAT_MAP, self::TIME_OF_DAY, $observableName);
                break;
            case self::NEW_DAY:
                $data = $this->robotManager->getFrontEndData($roundId, self::HEAT_MAP, self::NEW_DAY, $observableName);
                break;
        }

        $data = $data->data ?? null;

        return new JsonModel([
            'z' => $data,
            'dayOfProduction' => $data->date ?? null,
            'siUnitType' => $this->roundManager->getSiUnit($roundId)
        ]);
    }