feat(noc): implement NOC API module and sync strategy task

This commit is contained in:
2026-03-30 14:32:12 +08:00
parent ed93363de1
commit 3125bc1002
7 changed files with 1605 additions and 0 deletions

View File

@@ -457,6 +457,102 @@ export interface paths {
patch?: never;
trace?: never;
};
"/api/noc/active-divisions": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocActive-divisions"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/noc/latest-projects": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocLatest-projects"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/noc/upcoming-events": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocUpcoming-events"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/noc/diagram-jumlah-document": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocDiagram-jumlah-document"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/noc/diagram-progres-kegiatan": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocDiagram-progres-kegiatan"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
"/api/noc/latest-discussion": {
parameters: {
query?: never;
header?: never;
path?: never;
cookie?: never;
};
get: operations["getApiNocLatest-discussion"];
put?: never;
post?: never;
delete?: never;
options?: never;
head?: never;
patch?: never;
trace?: never;
};
}
export type webhooks = Record<string, never>;
export interface components {
@@ -1974,4 +2070,279 @@ export interface operations {
};
};
};
"getApiNocActive-divisions": {
parameters: {
query: {
idDesa: string;
limit?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
id: string;
name: string;
activityCount: number;
color: string;
}[];
};
"multipart/form-data": {
data: {
id: string;
name: string;
activityCount: number;
color: string;
}[];
};
"text/plain": {
data: {
id: string;
name: string;
activityCount: number;
color: string;
}[];
};
};
};
};
};
"getApiNocLatest-projects": {
parameters: {
query: {
idDesa: string;
limit?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
id: string;
title: string;
status: string;
progress: number;
divisionName: string;
createdAt: string;
}[];
};
"multipart/form-data": {
data: {
id: string;
title: string;
status: string;
progress: number;
divisionName: string;
createdAt: string;
}[];
};
"text/plain": {
data: {
id: string;
title: string;
status: string;
progress: number;
divisionName: string;
createdAt: string;
}[];
};
};
};
};
};
"getApiNocUpcoming-events": {
parameters: {
query: {
idDesa: string;
limit?: string;
filter?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
id: string;
title: string;
startDate: string;
location: (string | null) | null;
eventType: string;
}[];
};
"multipart/form-data": {
data: {
id: string;
title: string;
startDate: string;
location: (string | null) | null;
eventType: string;
}[];
};
"text/plain": {
data: {
id: string;
title: string;
startDate: string;
location: (string | null) | null;
eventType: string;
}[];
};
};
};
};
};
"getApiNocDiagram-jumlah-document": {
parameters: {
query: {
idDesa: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
category: string;
count: number;
}[];
};
"multipart/form-data": {
data: {
category: string;
count: number;
}[];
};
"text/plain": {
data: {
category: string;
count: number;
}[];
};
};
};
};
};
"getApiNocDiagram-progres-kegiatan": {
parameters: {
query: {
idDesa: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
status: string;
avgProgress: number;
count: number;
}[];
};
"multipart/form-data": {
data: {
status: string;
avgProgress: number;
count: number;
}[];
};
"text/plain": {
data: {
status: string;
avgProgress: number;
count: number;
}[];
};
};
};
};
};
"getApiNocLatest-discussion": {
parameters: {
query: {
idDesa: string;
limit?: string;
};
header?: never;
path?: never;
cookie?: never;
};
requestBody?: never;
responses: {
200: {
headers: {
[name: string]: unknown;
};
content: {
"application/json": {
data: {
id: string;
message: string;
senderName: string;
senderImage: (string | null) | null;
divisionName: string;
createdAt: string;
}[];
};
"multipart/form-data": {
data: {
id: string;
message: string;
senderName: string;
senderImage: (string | null) | null;
divisionName: string;
createdAt: string;
}[];
};
"text/plain": {
data: {
id: string;
message: string;
senderName: string;
senderImage: (string | null) | null;
divisionName: string;
createdAt: string;
}[];
};
};
};
};
};
}

View File

@@ -4022,6 +4022,892 @@
},
"operationId": "getApiDashboardSatisfaction"
}
},
"/api/noc/active-divisions": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "limit",
"required": false
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"activityCount",
"color"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"activityCount": {
"type": "number"
},
"color": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"activityCount",
"color"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"activityCount": {
"type": "number"
},
"color": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"activityCount",
"color"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"activityCount": {
"type": "number"
},
"color": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocActive-divisions"
}
},
"/api/noc/latest-projects": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "limit",
"required": false
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"status",
"progress",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"status": {
"type": "string"
},
"progress": {
"type": "number"
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"status",
"progress",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"status": {
"type": "string"
},
"progress": {
"type": "number"
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"status",
"progress",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"status": {
"type": "string"
},
"progress": {
"type": "number"
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocLatest-projects"
}
},
"/api/noc/upcoming-events": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "limit",
"required": false
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "filter",
"required": false
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"startDate",
"location",
"eventType"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"startDate": {
"type": "string"
},
"location": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"eventType": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"startDate",
"location",
"eventType"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"startDate": {
"type": "string"
},
"location": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"eventType": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"title",
"startDate",
"location",
"eventType"
],
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"startDate": {
"type": "string"
},
"location": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"eventType": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocUpcoming-events"
}
},
"/api/noc/diagram-jumlah-document": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"count"
],
"properties": {
"category": {
"type": "string"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"count"
],
"properties": {
"category": {
"type": "string"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"category",
"count"
],
"properties": {
"category": {
"type": "string"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocDiagram-jumlah-document"
}
},
"/api/noc/diagram-progres-kegiatan": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"status",
"avgProgress",
"count"
],
"properties": {
"status": {
"type": "string"
},
"avgProgress": {
"type": "number"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"status",
"avgProgress",
"count"
],
"properties": {
"status": {
"type": "string"
},
"avgProgress": {
"type": "number"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"status",
"avgProgress",
"count"
],
"properties": {
"status": {
"type": "string"
},
"avgProgress": {
"type": "number"
},
"count": {
"type": "number"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocDiagram-progres-kegiatan"
}
},
"/api/noc/latest-discussion": {
"get": {
"parameters": [
{
"schema": {
"type": "string"
},
"in": "query",
"name": "idDesa",
"required": true
},
{
"schema": {
"type": "string"
},
"in": "query",
"name": "limit",
"required": false
}
],
"responses": {
"200": {
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"message",
"senderName",
"senderImage",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"message": {
"type": "string"
},
"senderName": {
"type": "string"
},
"senderImage": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"multipart/form-data": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"message",
"senderName",
"senderImage",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"message": {
"type": "string"
},
"senderName": {
"type": "string"
},
"senderImage": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
},
"text/plain": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"message",
"senderName",
"senderImage",
"divisionName",
"createdAt"
],
"properties": {
"id": {
"type": "string"
},
"message": {
"type": "string"
},
"senderName": {
"type": "string"
},
"senderImage": {
"nullable": true,
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"divisionName": {
"type": "string"
},
"createdAt": {
"type": "string"
}
}
}
}
},
"required": [
"data"
]
}
}
}
}
},
"operationId": "getApiNocLatest-discussion"
}
}
},
"components": {