* delete data * @param int $datasetId * @return DataResponse * @throws \Exception */
(int $datasetId)
| 172 | * @throws \Exception |
| 173 | */ |
| 174 | #[NoAdminRequired] |
| 175 | #[NoCSRFRequired] |
| 176 | #[CORS] |
| 177 | public function deleteDataV2(int $datasetId) { |
| 178 | $datasetId = $this->getDatasetIdFromRoute($datasetId); |
| 179 | $message = 'No -delete- parameter'; |
| 180 | $params = $this->request->getParams(); |
| 181 | $datasetMetadata = $this->DatasetService->readOwn($datasetId); |
| 182 | |
| 183 | $response = $this->deriveMaintenancePossible($datasetMetadata); |
| 184 | if ($response !== true) return $response; |
| 185 | |
| 186 | foreach ($params['delete'] as $dataArray) { |
| 187 | $dimension1 = $this->deriveParameterNames($dataArray, $datasetMetadata, 'dimension1'); |
| 188 | $dimension2 = $this->deriveParameterNames($dataArray, $datasetMetadata, 'dimension2'); |
| 189 | |
| 190 | if (!empty($this->errors)) { |
| 191 | return $this->requestResponse(false, self::MISSING_PARAM, implode(',', $this->errors)); |
| 192 | } |
| 193 | |
| 194 | $this->StorageService->delete($datasetId, $dimension1, $dimension2); |
| 195 | $message = 'Data deleted'; |
| 196 | } |
| 197 | |
| 198 | return $this->requestResponse(true, Http::STATUS_OK, $message); |
| 199 | } |
| 200 | |
| 201 | |
| 202 | /// |
no test coverage detected