feat: connect pengaduan-layanan-publik to live database
New API Endpoint: - GET /api/complaint/trends - Fetch complaint trends for last 7 months Component Updates: - Removed hardcoded trenData array (7 months mock data) - Removed hardcoded ideInovatif array (2 mock ideas) - Added API calls to /api/complaint/trends and /api/complaint/innovation-ideas - Added loading states for trend chart and innovation ideas - Added empty states for both sections - Connected LineChart to real complaint data - Connected Innovation Ideas list to real InnovationIdea model Features Added: - Real-time complaint trend visualization - Real innovation ideas from database - Proper TypeScript typing for API responses - Loading skeletons during data fetch - Empty state messages when no data Files changed: - src/api/complaint.ts: Added /trends endpoint - src/components/pengaduan-layanan-publik.tsx: Connected to APIs - generated/api.ts: Regenerated types Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
@@ -239,6 +239,23 @@ export interface paths {
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/complaint/trends": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
/** Get complaint trends for last 7 months */
|
||||
get: operations["getApiComplaintTrends"];
|
||||
put?: never;
|
||||
post?: never;
|
||||
delete?: never;
|
||||
options?: never;
|
||||
head?: never;
|
||||
patch?: never;
|
||||
trace?: never;
|
||||
};
|
||||
"/api/complaint/service-stats": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
@@ -1374,6 +1391,61 @@ export interface operations {
|
||||
};
|
||||
};
|
||||
};
|
||||
getApiComplaintTrends: {
|
||||
parameters: {
|
||||
query?: never;
|
||||
header?: never;
|
||||
path?: never;
|
||||
cookie?: never;
|
||||
};
|
||||
requestBody?: never;
|
||||
responses: {
|
||||
200: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": {
|
||||
data: {
|
||||
month: string;
|
||||
month_num: number;
|
||||
count: number;
|
||||
}[];
|
||||
};
|
||||
"multipart/form-data": {
|
||||
data: {
|
||||
month: string;
|
||||
month_num: number;
|
||||
count: number;
|
||||
}[];
|
||||
};
|
||||
"text/plain": {
|
||||
data: {
|
||||
month: string;
|
||||
month_num: number;
|
||||
count: number;
|
||||
}[];
|
||||
};
|
||||
};
|
||||
};
|
||||
500: {
|
||||
headers: {
|
||||
[name: string]: unknown;
|
||||
};
|
||||
content: {
|
||||
"application/json": {
|
||||
error: string;
|
||||
};
|
||||
"multipart/form-data": {
|
||||
error: string;
|
||||
};
|
||||
"text/plain": {
|
||||
error: string;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
"getApiComplaintService-stats": {
|
||||
parameters: {
|
||||
query?: never;
|
||||
|
||||
Reference in New Issue
Block a user