announcements

This commit is contained in:
hamid zarghami
2026-02-23 09:30:34 +03:30
parent fa11062760
commit ef26521e6e
2 changed files with 6 additions and 125 deletions
+1 -1
View File
@@ -40,7 +40,7 @@ const AnnouncementtList: FC = () => {
<Input
variant='search'
placeholder={t('announcement.search')}
className='-mt-1'
className='-mt-1 bg-[#F8F9FB]'
onChangeSearchFinal={(value) => setSearch(value)}
/>
</div>
@@ -1,130 +1,11 @@
// import axios from "../../../config/axios";
// داده‌های استاتیک برای نمایش
const mockAnnoncementsData = {
data: {
announcements: [
{
id: "1",
createdAt: "2024-01-15T10:00:00Z",
updatedAt: "2024-01-15T10:00:00Z",
announcement: {
id: "ann1",
createdAt: "2024-01-15T10:00:00Z",
title: "به‌روزرسانی سیستم اطلاع‌رسانی",
content:
"سیستم اطلاع‌رسانی با ویژگی‌های جدید به‌روزرسانی شد. لطفاً از طریق بخش تنظیمات، تنظیمات خود را بررسی کنید.",
publishAt: "2024-01-15T10:00:00Z",
targetService: {
id: "1",
name: "سرویس عمومی",
},
isImportant: true,
},
isRead: false,
},
{
id: "2",
createdAt: "2024-01-14T08:00:00Z",
updatedAt: "2024-01-14T08:00:00Z",
announcement: {
id: "ann2",
createdAt: "2024-01-14T08:00:00Z",
title: "نگه‌داری برنامه‌ریزی شده",
content:
"در تاریخ ۲۰ دی ماه، به‌دلیل انجام نگه‌داری برنامه‌ریزی شده، سرویس‌ها به مدت ۲ ساعت در دسترس نخواهند بود.",
publishAt: "2024-01-14T08:00:00Z",
targetService: {
id: "1",
name: "سرویس عمومی",
},
isImportant: false,
},
isRead: false,
},
{
id: "3",
createdAt: "2024-01-13T15:30:00Z",
updatedAt: "2024-01-13T15:30:00Z",
announcement: {
id: "ann3",
createdAt: "2024-01-13T15:30:00Z",
title: "ویژگی جدید: پشتیبانی از پرداخت آنلاین",
content:
"ویژگی پرداخت آنلاین به سیستم اضافه شد. از این پس می‌توانید به‌راحتی از طریق درگاه‌های بانکی پرداخت خود را انجام دهید.",
publishAt: "2024-01-13T15:30:00Z",
targetService: {
id: "2",
name: "سرویس پرداخت",
},
isImportant: false,
},
isRead: true,
},
],
},
};
const mockAnnoncementDetailData = (id: string) => {
const announcement = mockAnnoncementsData.data.announcements.find(
(item) => item.announcement.id === id
);
if (!announcement) {
return {
data: {
announcement: {
id: id,
createdAt: "2024-01-15T10:00:00Z",
title: "اطلاعیه نمونه",
content:
"<p>این یک اطلاعیه نمونه است. محتوای این اطلاعیه برای نمایش داده شده است.</p>",
publishAt: "2024-01-15T10:00:00Z",
targetService: {
id: "1",
name: "سرویس عمومی",
},
isImportant: false,
},
},
};
}
return {
data: {
announcement: announcement.announcement,
},
};
};
import axios from "@/config/axios";
export const getAnnoncements = async (search: string) => {
// ارتباط با سرور کامنت شده - از داده استاتیک استفاده می‌شود
// const { data } = await axios.get(`/announcements/user?q=${search}`);
// return data;
// شبیه‌سازی تاخیر شبکه
await new Promise((resolve) => setTimeout(resolve, 500));
// فیلتر بر اساس جستجو
let filteredData = { ...mockAnnoncementsData };
if (search && search.trim()) {
filteredData.data.announcements = mockAnnoncementsData.data.announcements.filter(
(item) =>
item.announcement.title.includes(search) ||
item.announcement.content.includes(search)
);
}
return filteredData;
const { data } = await axios.get(`/public/announcements/user?q=${search}`);
return data;
};
export const getAnnoncementDetail = async (id: string) => {
// ارتباط با سرور کامنت شده - از داده استاتیک استفاده می‌شود
// const { data } = await axios.get(`/announcements/${id}`);
// return data;
// شبیه‌سازی تاخیر شبکه
await new Promise((resolve) => setTimeout(resolve, 500));
return mockAnnoncementDetailData(id);
const { data } = await axios.get(`/public/announcements/${id}`);
return data;
};