tampilkan data fix database
This commit is contained in:
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* jalan.php
|
* jalan.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* kavling.php
|
* kavling.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
@@ -21,6 +21,7 @@ switch ($method) {
|
|||||||
'geometry' => json_decode($row['geojson']),
|
'geometry' => json_decode($row['geojson']),
|
||||||
'properties' => [
|
'properties' => [
|
||||||
'id' => $row['id'],
|
'id' => $row['id'],
|
||||||
|
'nama' => $row['nama_pemilik'],
|
||||||
'nama_pemilik' => $row['nama_pemilik'],
|
'nama_pemilik' => $row['nama_pemilik'],
|
||||||
'luas' => $row['luas'],
|
'luas' => $row['luas'],
|
||||||
'created_at' => $row['created_at']
|
'created_at' => $row['created_at']
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* jalan.php
|
* jalan.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* kavling.php
|
* kavling.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
@@ -21,6 +21,7 @@ switch ($method) {
|
|||||||
'geometry' => json_decode($row['geojson']),
|
'geometry' => json_decode($row['geojson']),
|
||||||
'properties' => [
|
'properties' => [
|
||||||
'id' => $row['id'],
|
'id' => $row['id'],
|
||||||
|
'nama' => $row['nama_pemilik'],
|
||||||
'nama_pemilik' => $row['nama_pemilik'],
|
'nama_pemilik' => $row['nama_pemilik'],
|
||||||
'luas' => $row['luas'],
|
'luas' => $row['luas'],
|
||||||
'created_at' => $row['created_at']
|
'created_at' => $row['created_at']
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* rumah_ibadah.php
|
* rumah_ibadah.php
|
||||||
* Tanggung Jawab: Operasi CRUD Rumah Ibadah + Endpoint analisis jangkauan Haversine.
|
* Tanggung Jawab: Operasi CRUD Rumah Ibadah + Endpoint analisis jangkauan Haversine.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
require_once '../utils/geo_helper.php';
|
require_once '../utils/geo_helper.php';
|
||||||
|
|
||||||
@@ -31,7 +31,23 @@ switch ($method) {
|
|||||||
|
|
||||||
// Panggil geo_helper untuk mendapatkan warga miskin
|
// Panggil geo_helper untuk mendapatkan warga miskin
|
||||||
$warga = GeoHelper::getWargaDalamRadius($pdo, $pusatLat, $pusatLon, $radius);
|
$warga = GeoHelper::getWargaDalamRadius($pdo, $pusatLat, $pusatLon, $radius);
|
||||||
sendSuccess($warga, 'Data jangkauan berhasil dihitung');
|
|
||||||
|
// Format ke GeoJSON FeatureCollection sesuai kebutuhan frontend
|
||||||
|
$features = [];
|
||||||
|
foreach ($warga as $w) {
|
||||||
|
$features[] = [
|
||||||
|
'type' => 'Feature',
|
||||||
|
'geometry' => $w['geometry'],
|
||||||
|
'properties' => [
|
||||||
|
'id' => $w['id'],
|
||||||
|
'nama' => $w['nama_kk'],
|
||||||
|
'penghasilan' => $w['penghasilan'],
|
||||||
|
'jumlah_tanggungan' => $w['jumlah_tanggungan'],
|
||||||
|
'jarak_km' => $w['jarak_km']
|
||||||
|
]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
sendSuccess(['type' => 'FeatureCollection', 'features' => $features], 'Data jangkauan berhasil dihitung');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// GET Semua Rumah Ibadah (GeoJSON)
|
// GET Semua Rumah Ibadah (GeoJSON)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* warga_miskin.php
|
* warga_miskin.php
|
||||||
* Tanggung Jawab: Operasi CRUD untuk Warga Miskin.
|
* Tanggung Jawab: Operasi CRUD untuk Warga Miskin.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export const rumahIbadahService = createService('02/backend/api/rumah_ibadah.php
|
|||||||
export const wargaMiskinService = createService('02/backend/api/warga_miskin.php');
|
export const wargaMiskinService = createService('02/backend/api/warga_miskin.php');
|
||||||
export const haversineService = {
|
export const haversineService = {
|
||||||
getDalamRadius: async (id, radius) => {
|
getDalamRadius: async (id, radius) => {
|
||||||
const res = await fetch(`${BASE_URL}/02/backend/api/haversine.php?rumah_ibadah_id=${id}&radius_km=${radius}`);
|
const res = await fetch(`${BASE_URL}/02/backend/api/rumah_ibadah.php?action=jangkauan&id=${id}&radius=${radius}`);
|
||||||
const json = await res.json();
|
const json = await res.json();
|
||||||
return json.data;
|
return json.data;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* jalan.php
|
* jalan.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Jalan (LineString).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* kavling.php
|
* kavling.php
|
||||||
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
* Tanggung Jawab: Menangani operasi CRUD untuk entitas Kavling (Polygon).
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
@@ -21,6 +21,7 @@ switch ($method) {
|
|||||||
'geometry' => json_decode($row['geojson']),
|
'geometry' => json_decode($row['geojson']),
|
||||||
'properties' => [
|
'properties' => [
|
||||||
'id' => $row['id'],
|
'id' => $row['id'],
|
||||||
|
'nama' => $row['nama_pemilik'],
|
||||||
'nama_pemilik' => $row['nama_pemilik'],
|
'nama_pemilik' => $row['nama_pemilik'],
|
||||||
'luas' => $row['luas'],
|
'luas' => $row['luas'],
|
||||||
'created_at' => $row['created_at']
|
'created_at' => $row['created_at']
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* rumah_ibadah.php
|
* rumah_ibadah.php
|
||||||
* Tanggung Jawab: Operasi CRUD Rumah Ibadah + Endpoint analisis jangkauan Haversine.
|
* Tanggung Jawab: Operasi CRUD Rumah Ibadah + Endpoint analisis jangkauan Haversine.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
require_once '../utils/geo_helper.php';
|
require_once '../utils/geo_helper.php';
|
||||||
|
|
||||||
@@ -31,7 +31,23 @@ switch ($method) {
|
|||||||
|
|
||||||
// Panggil geo_helper untuk mendapatkan warga miskin
|
// Panggil geo_helper untuk mendapatkan warga miskin
|
||||||
$warga = GeoHelper::getWargaDalamRadius($pdo, $pusatLat, $pusatLon, $radius);
|
$warga = GeoHelper::getWargaDalamRadius($pdo, $pusatLat, $pusatLon, $radius);
|
||||||
sendSuccess($warga, 'Data jangkauan berhasil dihitung');
|
|
||||||
|
// Format ke GeoJSON FeatureCollection sesuai kebutuhan frontend
|
||||||
|
$features = [];
|
||||||
|
foreach ($warga as $w) {
|
||||||
|
$features[] = [
|
||||||
|
'type' => 'Feature',
|
||||||
|
'geometry' => $w['geometry'],
|
||||||
|
'properties' => [
|
||||||
|
'id' => $w['id'],
|
||||||
|
'nama' => $w['nama_kk'],
|
||||||
|
'penghasilan' => $w['penghasilan'],
|
||||||
|
'jumlah_tanggungan' => $w['jumlah_tanggungan'],
|
||||||
|
'jarak_km' => $w['jarak_km']
|
||||||
|
]
|
||||||
|
];
|
||||||
|
}
|
||||||
|
sendSuccess(['type' => 'FeatureCollection', 'features' => $features], 'Data jangkauan berhasil dihitung');
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
// GET Semua Rumah Ibadah (GeoJSON)
|
// GET Semua Rumah Ibadah (GeoJSON)
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<?php
|
<?php
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* statistik.php
|
* statistik.php
|
||||||
* Tanggung Jawab: Menyediakan data analisis spasial menggunakan Point in Polygon (ST_Contains).
|
* Tanggung Jawab: Menyediakan data analisis spasial menggunakan Point in Polygon (ST_Contains).
|
||||||
* Menghitung kepadatan warga miskin dalam setiap kavling.
|
* Menghitung kepadatan warga miskin dalam setiap kavling.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
@@ -31,37 +31,25 @@ if ($method === 'GET') {
|
|||||||
$stmt = $pdo->query($sql);
|
$stmt = $pdo->query($sql);
|
||||||
|
|
||||||
$features = [];
|
$features = [];
|
||||||
$total_warga = 0;
|
|
||||||
|
|
||||||
while ($row = $stmt->fetch()) {
|
while ($row = $stmt->fetch()) {
|
||||||
$jumlah = (int) $row['jumlah_warga'];
|
$jumlah = (int) $row['jumlah_warga'];
|
||||||
$total_warga += $jumlah;
|
|
||||||
|
|
||||||
$features[] = [
|
$features[] = [
|
||||||
'type' => 'Feature',
|
'type' => 'Feature',
|
||||||
'geometry' => json_decode($row['geojson']),
|
'geometry' => json_decode($row['geojson']),
|
||||||
'properties' => [
|
'properties' => [
|
||||||
'id' => $row['id'],
|
'id' => $row['id'],
|
||||||
|
'nama' => $row['nama_pemilik'],
|
||||||
'nama_pemilik' => $row['nama_pemilik'],
|
'nama_pemilik' => $row['nama_pemilik'],
|
||||||
'luas' => $row['luas'],
|
'luas' => $row['luas'],
|
||||||
|
'jumlah_warga_miskin' => $jumlah,
|
||||||
'jumlah_warga' => $jumlah,
|
'jumlah_warga' => $jumlah,
|
||||||
'total_tanggungan' => (int) $row['total_tanggungan']
|
'total_tanggungan' => (int) $row['total_tanggungan']
|
||||||
]
|
]
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
$response = [
|
sendSuccess(['type' => 'FeatureCollection', 'features' => $features], 'Data statistik spasial berhasil dihitung');
|
||||||
'statistik' => [
|
|
||||||
'total_kavling' => count($features),
|
|
||||||
'total_warga_terpetakan' => $total_warga
|
|
||||||
],
|
|
||||||
'geojson' => [
|
|
||||||
'type' => 'FeatureCollection',
|
|
||||||
'features' => $features
|
|
||||||
]
|
|
||||||
];
|
|
||||||
|
|
||||||
sendSuccess($response, 'Data statistik spasial berhasil dihitung');
|
|
||||||
} catch (PDOException $e) {
|
} catch (PDOException $e) {
|
||||||
sendError('Gagal menghitung statistik spasial: ' . $e->getMessage(), 500);
|
sendError('Gagal menghitung statistik spasial: ' . $e->getMessage(), 500);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* warga_miskin.php
|
* warga_miskin.php
|
||||||
* Tanggung Jawab: Operasi CRUD untuk Warga Miskin.
|
* Tanggung Jawab: Operasi CRUD untuk Warga Miskin.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
require_once '../core_config/database.php';
|
require_once __DIR__ . '/../../../webgis_app/core_config/database.php';
|
||||||
require_once '../utils/response_helper.php';
|
require_once '../utils/response_helper.php';
|
||||||
|
|
||||||
$pdo = Database::getConnection();
|
$pdo = Database::getConnection();
|
||||||
|
|||||||
@@ -42,7 +42,7 @@ export const rumahIbadahService = createService('02/backend/api/rumah_ibadah.php
|
|||||||
export const wargaMiskinService = createService('02/backend/api/warga_miskin.php');
|
export const wargaMiskinService = createService('02/backend/api/warga_miskin.php');
|
||||||
export const haversineService = {
|
export const haversineService = {
|
||||||
getDalamRadius: async (id, radius) => {
|
getDalamRadius: async (id, radius) => {
|
||||||
const res = await fetch(`${BASE_URL}/02/backend/api/haversine.php?rumah_ibadah_id=${id}&radius_km=${radius}`);
|
const res = await fetch(`${BASE_URL}/02/backend/api/rumah_ibadah.php?action=jangkauan&id=${id}&radius=${radius}`);
|
||||||
const json = await res.json();
|
const json = await res.json();
|
||||||
return json.data;
|
return json.data;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
<?php
|
<?php
|
||||||
/**
|
/**
|
||||||
* Singleton PDO connection.
|
* Singleton PDO connection.
|
||||||
*
|
*
|
||||||
|
|||||||
Reference in New Issue
Block a user