This commit is contained in:
2025-06-03 12:10:00 +08:00
parent 084435500f
commit 423ad0e2ba
13 changed files with 402 additions and 50 deletions

View File

@@ -1,33 +1,70 @@
import { Box, Paper, Stack, Table, TableTbody, TableTh, TableThead, TableTr, Title } from '@mantine/core'; 'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Paper, Stack, Flex, Text, Image } from '@mantine/core';
import { IconArrowBack, IconX, IconEdit } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
import React from 'react'; import React from 'react';
// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus';
function ListInfoWabahPenyakit() { function DetailInfoWabahPenyakit() {
const router = useRouter();
return ( return (
<Box> <Box>
<Paper bg={colors['white-1']} p={'md'} radius={10}> <Box mb={10}>
<Stack gap={'xs'}> <Button variant="subtle" onClick={() => router.back()}>
<Title order={3}>List Info Wabah/Penyakit</Title> <IconArrowBack color={colors['blue-button']} size={25} />
<Box> </Button>
<Table striped withTableBorder withColumnBorders withRowBorders> </Box>
<TableThead> <Paper w={{ base: "100%", md: "50%" }} bg={colors['white-1']} p={'md'}>
<TableTr> <Stack>
<TableTh>Image</TableTh> <Text fz={"xl"} fw={"bold"}>Detail Info Wabah/Penyakit</Text>
<TableTh>Nama Info Wabah/Penyakit</TableTh>
<TableTh>Deskripsi Info Wabah/Penyakit</TableTh> <Paper bg={colors['BG-trans']} p={'md'}>
<TableTh>Aksi</TableTh> <Stack gap={"xs"}>
<TableTh>Detail</TableTh> <Box>
</TableTr> <Text fz={"lg"} fw={"bold"}>Nama Info Wabah/Penyakit</Text>
</TableThead> <Text fz={"lg"}>Test Judul</Text>
<TableTbody> </Box>
<Box>
</TableTbody> <Text fz={"lg"} fw={"bold"}>Deskripsi Info Wabah/Penyakit</Text>
</Table> <Text fz={"lg"}>Test Kategori</Text>
</Box> </Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Deskripsi</Text>
<Text fz={"lg"}>Test Deskripsi</Text>
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Konten</Text>
<Text fz={"lg"} >Test Konten</Text>
</Box>
<Box>
<Flex gap={"xs"}>
<Button color="red">
<IconX size={20} />
</Button>
<Button onClick={() => router.push('/admin/kesehatan/info-wabah-penyakit/edit')} color="green">
<IconEdit size={20} />
</Button>
</Flex>
</Box>
</Stack>
</Paper>
</Stack> </Stack>
</Paper> </Paper>
{/* Modal Hapus
<ModalKonfirmasiHapus
opened={modalHapus}
onClose={() => setModalHapus(false)}
onConfirm={handleHapus}
text="Apakah anda yakin ingin menghapus penanganan darurat ini?"
/> */}
</Box> </Box>
); );
} }
export default ListInfoWabahPenyakit; export default DetailInfoWabahPenyakit;

View File

@@ -0,0 +1,62 @@
'use client'
import colors from '@/con/colors';
import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button, Image } from '@mantine/core';
import { KesehatanEditor } from '../../_com/kesehatanEditor';
import { IconArrowBack } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
function EditInfoWabahPenyakit() {
const router = useRouter();
return (
<Box>
<Box mb={10}>
<Button variant="subtle" onClick={() => router.back()}>
<IconArrowBack color={colors['blue-button']} size={25} />
</Button>
</Box>
<Stack gap={"xs"}>
<SimpleGrid cols={{ base: 1, md: 2 }}>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={3}>Edit Info Wabah/Penyakit</Title>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Nama Info Wabah/Penyakit</Text>}
placeholder='Masukkan nama Info Wabah/Penyakit'
/>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Deskripsi Info Wabah/Penyakit</Text>}
placeholder='Masukkan deskripsi Info Wabah/Penyakit'
/>
<Box>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<KesehatanEditor
showSubmit={false}
/>
</Box>
<Box>
<Text fw={"bold"} fz={"sm"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
</Stack>
</Paper>
</Box>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={4}>Preview Data Info Wabah/Penyakit</Title>
<Text fw={"bold"} fz={"sm"}>Nama Info Wabah/Penyakit</Text>
<Text fw={"bold"} fz={"sm"}>Deskripsi Info Wabah/Penyakit</Text>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<Text fw={"bold"} fz={"sm"}>Gambar</Text>
</Stack>
</Paper>
</Box>
</SimpleGrid>
</Stack>
</Box>
);
}
export default EditInfoWabahPenyakit;

View File

@@ -1,8 +1,10 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core'; import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core';
import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react'; import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react';
import JudulList from '../../_com/judulList'; import JudulList from '../../_com/judulList';
import HeaderSearch from '../../_com/header'; import HeaderSearch from '../../_com/header';
import { useRouter } from 'next/navigation';
function InfoWabahPenyakit() { function InfoWabahPenyakit() {
return ( return (
@@ -18,6 +20,7 @@ function InfoWabahPenyakit() {
} }
function ListInfoWabahPenyakit() { function ListInfoWabahPenyakit() {
const router = useRouter()
return ( return (
<Box py={10}> <Box py={10}>
<Paper bg={colors['white-1']} p={'md'}> <Paper bg={colors['white-1']} p={'md'}>
@@ -47,7 +50,7 @@ function ListInfoWabahPenyakit() {
<Image w={100} src={"/"} alt="image" /> <Image w={100} src={"/"} alt="image" />
</TableTd> </TableTd>
<TableTd> <TableTd>
<Button> <Button onClick={() => router.push('/admin/kesehatan/info-wabah-penyakit/detail')}>
<IconDeviceImacCog size={25} /> <IconDeviceImacCog size={25} />
</Button> </Button>
</TableTd> </TableTd>

View File

@@ -0,0 +1,70 @@
'use client'
import colors from '@/con/colors';
import { Box, Button, Paper, Stack, Flex, Text, Image } from '@mantine/core';
import { IconArrowBack, IconX, IconEdit } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
import React from 'react';
// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus';
function DetailKontakDarurat() {
const router = useRouter();
return (
<Box>
<Box mb={10}>
<Button variant="subtle" onClick={() => router.back()}>
<IconArrowBack color={colors['blue-button']} size={25} />
</Button>
</Box>
<Paper w={{ base: "100%", md: "50%" }} bg={colors['white-1']} p={'md'}>
<Stack>
<Text fz={"xl"} fw={"bold"}>Detail Kontak Darurat</Text>
<Paper bg={colors['BG-trans']} p={'md'}>
<Stack gap={"xs"}>
<Box>
<Text fz={"lg"} fw={"bold"}>Nama Kontak Darurat</Text>
<Text fz={"lg"}>Test Judul</Text>
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Deskripsi Kontak Darurat</Text>
<Text fz={"lg"}>Test Kategori</Text>
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Deskripsi</Text>
<Text fz={"lg"}>Test Deskripsi</Text>
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Konten</Text>
<Text fz={"lg"} >Test Konten</Text>
</Box>
<Box>
<Flex gap={"xs"}>
<Button color="red">
<IconX size={20} />
</Button>
<Button onClick={() => router.push('/admin/kesehatan/kontak-darurat/edit')} color="green">
<IconEdit size={20} />
</Button>
</Flex>
</Box>
</Stack>
</Paper>
</Stack>
</Paper>
{/* Modal Hapus
<ModalKonfirmasiHapus
opened={modalHapus}
onClose={() => setModalHapus(false)}
onConfirm={handleHapus}
text="Apakah anda yakin ingin menghapus penanganan darurat ini?"
/> */}
</Box>
);
}
export default DetailKontakDarurat;

View File

@@ -0,0 +1,62 @@
'use client'
import colors from '@/con/colors';
import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button, Image } from '@mantine/core';
import { KesehatanEditor } from '../../_com/kesehatanEditor';
import { IconArrowBack } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
function EditKontakDarurat() {
const router = useRouter();
return (
<Box>
<Box mb={10}>
<Button variant="subtle" onClick={() => router.back()}>
<IconArrowBack color={colors['blue-button']} size={25} />
</Button>
</Box>
<Stack gap={"xs"}>
<SimpleGrid cols={{ base: 1, md: 2 }}>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={3}>Edit Kontak Darurat</Title>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Nama Kontak Darurat</Text>}
placeholder='Masukkan nama Kontak Darurat'
/>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Deskripsi Kontak Darurat</Text>}
placeholder='Masukkan deskripsi Kontak Darurat'
/>
<Box>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<KesehatanEditor
showSubmit={false}
/>
</Box>
<Box>
<Text fw={"bold"} fz={"sm"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
</Stack>
</Paper>
</Box>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={4}>Preview Data Kontak Darurat</Title>
<Text fw={"bold"} fz={"sm"}>Nama Kontak Darurat</Text>
<Text fw={"bold"} fz={"sm"}>Deskripsi Kontak Darurat</Text>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<Text fw={"bold"} fz={"sm"}>Gambar</Text>
</Stack>
</Paper>
</Box>
</SimpleGrid>
</Stack>
</Box>
);
}
export default EditKontakDarurat;

View File

@@ -1,8 +1,10 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core'; import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core';
import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react'; import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react';
import JudulList from '../../_com/judulList'; import JudulList from '../../_com/judulList';
import HeaderSearch from '../../_com/header'; import HeaderSearch from '../../_com/header';
import { useRouter } from 'next/navigation';
function KontakDarurat() { function KontakDarurat() {
return ( return (
@@ -18,6 +20,7 @@ function KontakDarurat() {
} }
function ListKontakDarurat() { function ListKontakDarurat() {
const router = useRouter();
return ( return (
<Box py={10}> <Box py={10}>
<Paper bg={colors['white-1']} p={'md'}> <Paper bg={colors['white-1']} p={'md'}>
@@ -47,7 +50,7 @@ function ListKontakDarurat() {
<Image w={100} src={"/"} alt="image" /> <Image w={100} src={"/"} alt="image" />
</TableTd> </TableTd>
<TableTd> <TableTd>
<Button> <Button onClick={() => router.push('/admin/kesehatan/kontak-darurat/detail')}>
<IconDeviceImacCog size={25} /> <IconDeviceImacCog size={25} />
</Button> </Button>
</TableTd> </TableTd>

View File

@@ -1,33 +1,70 @@
import { Box, Paper, Stack, Table, TableTbody, TableTh, TableThead, TableTr, Title } from '@mantine/core'; 'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Paper, Stack, Flex, Text, Image } from '@mantine/core';
import { IconArrowBack, IconX, IconEdit } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
import React from 'react'; import React from 'react';
// import { ModalKonfirmasiHapus } from '../../../_com/modalKonfirmasiHapus';
function ListPenangananDarurat() { function DetailPenangananDarurat() {
const router = useRouter();
return ( return (
<Box> <Box>
<Paper bg={colors['white-1']} p={'md'} radius={10}> <Box mb={10}>
<Stack gap={'xs'}> <Button variant="subtle" onClick={() => router.back()}>
<Title order={3}>List Penanganan Darurat</Title> <IconArrowBack color={colors['blue-button']} size={25} />
<Box> </Button>
<Table striped withTableBorder withColumnBorders withRowBorders> </Box>
<TableThead> <Paper w={{ base: "100%", md: "50%" }} bg={colors['white-1']} p={'md'}>
<TableTr> <Stack>
<TableTh>Image</TableTh> <Text fz={"xl"} fw={"bold"}>Detail Penanganan Darurat</Text>
<TableTh>Nama Penanganan Darurat</TableTh>
<TableTh>Deskripsi Penanganan Darurat</TableTh> <Paper bg={colors['BG-trans']} p={'md'}>
<TableTh>Aksi</TableTh> <Stack gap={"xs"}>
<TableTh>Detail</TableTh> <Box>
</TableTr> <Text fz={"lg"} fw={"bold"}>Nama Penanganan Darurat</Text>
</TableThead> <Text fz={"lg"}>Test Judul</Text>
<TableTbody> </Box>
<Box>
</TableTbody> <Text fz={"lg"} fw={"bold"}>Deskripsi Penanganan Darurat</Text>
</Table> <Text fz={"lg"}>Test Kategori</Text>
</Box> </Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Deskripsi</Text>
<Text fz={"lg"}>Test Deskripsi</Text>
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
<Box>
<Text fz={"lg"} fw={"bold"}>Konten</Text>
<Text fz={"lg"} >Test Konten</Text>
</Box>
<Box>
<Flex gap={"xs"}>
<Button color="red">
<IconX size={20} />
</Button>
<Button onClick={() => router.push('/admin/kesehatan/penanganan-darurat/edit')} color="green">
<IconEdit size={20} />
</Button>
</Flex>
</Box>
</Stack>
</Paper>
</Stack> </Stack>
</Paper> </Paper>
{/* Modal Hapus
<ModalKonfirmasiHapus
opened={modalHapus}
onClose={() => setModalHapus(false)}
onConfirm={handleHapus}
text="Apakah anda yakin ingin menghapus penanganan darurat ini?"
/> */}
</Box> </Box>
); );
} }
export default ListPenangananDarurat; export default DetailPenangananDarurat;

View File

@@ -0,0 +1,62 @@
'use client'
import colors from '@/con/colors';
import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button, Image } from '@mantine/core';
import { KesehatanEditor } from '../../_com/kesehatanEditor';
import { IconArrowBack } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
function EditPenangananDarurat() {
const router = useRouter();
return (
<Box>
<Box mb={10}>
<Button variant="subtle" onClick={() => router.back()}>
<IconArrowBack color={colors['blue-button']} size={25} />
</Button>
</Box>
<Stack gap={"xs"}>
<SimpleGrid cols={{ base: 1, md: 2 }}>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={3}>Edit Penanganan Darurat</Title>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Nama Penanganan Darurat</Text>}
placeholder='Masukkan nama Penanganan Darurat'
/>
<TextInput
label={<Text fw={"bold"} fz={"sm"}>Deskripsi Penanganan Darurat</Text>}
placeholder='Masukkan deskripsi Penanganan Darurat'
/>
<Box>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<KesehatanEditor
showSubmit={false}
/>
</Box>
<Box>
<Text fw={"bold"} fz={"sm"}>Gambar</Text>
<Image src={"/"} alt="gambar" />
</Box>
</Stack>
</Paper>
</Box>
<Box>
<Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}>
<Title order={4}>Preview Data Penanganan Darurat</Title>
<Text fw={"bold"} fz={"sm"}>Nama Penanganan Darurat</Text>
<Text fw={"bold"} fz={"sm"}>No Telp Penanganan Darurat</Text>
<Text fw={"bold"} fz={"sm"}>Deskripsi</Text>
<Text fw={"bold"} fz={"sm"}>Pelayanan Posyandu</Text>
</Stack>
</Paper>
</Box>
</SimpleGrid>
</Stack>
</Box>
);
}
export default EditPenangananDarurat;

View File

@@ -1,8 +1,10 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core'; import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core';
import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react'; import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react';
import JudulList from '../../_com/judulList'; import JudulList from '../../_com/judulList';
import HeaderSearch from '../../_com/header'; import HeaderSearch from '../../_com/header';
import { useRouter } from 'next/navigation';
function PenangananDarurat() { function PenangananDarurat() {
return ( return (
@@ -18,6 +20,7 @@ function PenangananDarurat() {
} }
function ListPenangananDarurat() { function ListPenangananDarurat() {
const router = useRouter();
return ( return (
<Box py={10}> <Box py={10}>
<Paper bg={colors['white-1']} p={'md'}> <Paper bg={colors['white-1']} p={'md'}>
@@ -47,7 +50,7 @@ function ListPenangananDarurat() {
<Image w={100} src={"/"} alt="image" /> <Image w={100} src={"/"} alt="image" />
</TableTd> </TableTd>
<TableTd> <TableTd>
<Button> <Button onClick={() => router.push('/admin/kesehatan/penanganan-darurat/detail')}>
<IconDeviceImacCog size={25} /> <IconDeviceImacCog size={25} />
</Button> </Button>
</TableTd> </TableTd>

View File

@@ -1,17 +1,26 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text } from '@mantine/core'; import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button } from '@mantine/core';
import { KesehatanEditor } from '../../_com/kesehatanEditor'; import { KesehatanEditor } from '../../_com/kesehatanEditor';
import { IconArrowBack } from '@tabler/icons-react';
import { useRouter } from 'next/navigation';
function EditProgramKesehatan() { function EditProgramKesehatan() {
const router = useRouter();
return ( return (
<Box> <Box>
<Box mb={10}>
<Button variant="subtle" onClick={() => router.back()}>
<IconArrowBack color={colors['blue-button']} size={25} />
</Button>
</Box>
<Stack gap={"xs"}> <Stack gap={"xs"}>
<SimpleGrid cols={{ base: 1, md: 2 }}> <SimpleGrid cols={{ base: 1, md: 2 }}>
<Box> <Box>
<Paper bg={colors['white-1']} p={"md"}> <Paper bg={colors['white-1']} p={"md"}>
<Stack gap={"xs"}> <Stack gap={"xs"}>
<Title order={4}>Edit Program Kesehatan</Title> <Title order={3}>Edit Program Kesehatan</Title>
<TextInput <TextInput
label={<Text fw={"bold"} fz={"sm"}>Nama Program Kesehatan</Text>} label={<Text fw={"bold"} fz={"sm"}>Nama Program Kesehatan</Text>}
placeholder='Masukkan nama Program Kesehatan' placeholder='Masukkan nama Program Kesehatan'

View File

@@ -1,3 +1,4 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button } from '@mantine/core'; import { Box, Stack, SimpleGrid, Paper, Title, TextInput, Text, Button } from '@mantine/core';
import { KesehatanEditor } from '../../_com/kesehatanEditor'; import { KesehatanEditor } from '../../_com/kesehatanEditor';

View File

@@ -1,8 +1,10 @@
'use client'
import colors from '@/con/colors'; import colors from '@/con/colors';
import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core'; import { Box, Button, Image, Paper, Stack, Table, TableTbody, TableTd, TableTh, TableThead, TableTr, Text } from '@mantine/core';
import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react'; import { IconDeviceImacCog, IconSearch } from '@tabler/icons-react';
import JudulList from '../../_com/judulList'; import JudulList from '../../_com/judulList';
import HeaderSearch from '../../_com/header'; import HeaderSearch from '../../_com/header';
import { useRouter } from 'next/navigation';
function Puskesmas() { function Puskesmas() {
return ( return (
@@ -18,6 +20,7 @@ function Puskesmas() {
} }
function ListPuskesmas() { function ListPuskesmas() {
const router = useRouter();
return ( return (
<Box py={10}> <Box py={10}>
<Paper bg={colors['white-1']} p={'md'}> <Paper bg={colors['white-1']} p={'md'}>
@@ -47,7 +50,7 @@ function ListPuskesmas() {
<Image w={100} src={"/"} alt="image" /> <Image w={100} src={"/"} alt="image" />
</TableTd> </TableTd>
<TableTd> <TableTd>
<Button> <Button onClick={() => router.push('/admin/kesehatan/puskesmas/detail')}>
<IconDeviceImacCog size={25} /> <IconDeviceImacCog size={25} />
</Button> </Button>
</TableTd> </TableTd>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 99 KiB