Files
ERP/ofbiz-framework/plugins/modern-ui/app/src/oa/api/index.ts
T
Qiufeng abba079dde
Signed Release / release (push) Successful in 9m41s
feat: simplify online update center
2026-08-04 21:25:43 +08:00

248 lines
10 KiB
TypeScript

/**
* OA backend API client — single import surface.
*
* import { oaApi } from '@/oa/api'
* const todo = await oaApi.listInstances('todo')
*
* All calls target the Java (Spring Boot) backend under /api/oa/* and return
* unwrapped payloads (the `{code,message,data}` envelope is handled in http.ts).
*/
export * from './http'
export * from './files'
export * as auth from './auth'
import * as authApi from './auth'
import * as templateApi from './templates'
import * as instanceApi from './instances'
import * as meetingApi from './meetings'
import * as scheduleApi from './schedule'
import * as announcementApi from './announcements'
import * as docApi from './docs'
import * as orgApi from './org'
import * as projectApi from './projects'
import * as collabDocApi from './collabdocs'
import * as communityApi from './community'
import * as blogApi from './blogs'
import * as settingApi from './settings'
import * as feedApi from './feeds'
import * as favoriteApi from './favorites'
import * as messageApi from './messages'
import * as tripApi from './trips'
import * as reportApi from './reports'
import * as reportDefApi from './reportdefs'
import * as masterApi from './masterdata'
import * as paymentApi from './payments'
import * as sealUseApi from './sealuses'
import * as archiveApi from './archives'
import * as crmApi from './crm'
import * as ehsApi from './ehs'
import * as budgetApi from './budget'
import * as bidApi from './bids'
import * as intelApi from './intel'
import * as rdApi from './rd'
import * as contractCenterApi from './contractcenter'
import * as costingApi from './costing'
import * as crawlApi from './crawl'
import * as searchApi from './search'
import * as fundPoolApi from './fundpool'
import * as rdExtraApi from './rdextra'
import * as qhseApi from './qhse'
import * as opsApi from './ops'
import * as mfgApi from './mfg'
import * as financeApi from './finance'
import * as labApi from './lab'
import * as designApi from './design'
import * as engExtApi from './engext'
import * as governanceApi from './governance'
import * as alertsApi from './alerts'
import * as updateApi from './update'
export {
authApi, templateApi, instanceApi, meetingApi, scheduleApi, announcementApi, docApi, orgApi,
projectApi, collabDocApi, communityApi, tripApi, reportApi, reportDefApi, masterApi, paymentApi, sealUseApi,
archiveApi, crmApi, ehsApi, budgetApi, bidApi, intelApi, rdApi, contractCenterApi, costingApi, crawlApi,
searchApi, fundPoolApi, rdExtraApi, qhseApi, opsApi, mfgApi, financeApi, labApi, designApi, engExtApi,
governanceApi, alertsApi, updateApi
}
export const oaApi = {
// auth
login: authApi.login,
fetchSession: authApi.fetchSession,
logout: authApi.logout,
// templates
listTemplates: templateApi.listTemplates,
getTemplate: templateApi.getTemplate,
createTemplate: templateApi.createTemplate,
setTemplateEnabled: templateApi.setTemplateEnabled,
// instances / workflow
submitInstance: instanceApi.submitInstance,
getInstance: instanceApi.getInstance,
advanceInstance: instanceApi.advanceInstance,
listInstances: instanceApi.listInstances,
createDraft: instanceApi.createDraft,
sendDraftInstance: instanceApi.sendDraftInstance,
// meetings
listMeetings: meetingApi.listMeetings,
getMeeting: meetingApi.getMeeting,
createMeeting: meetingApi.createMeeting,
listRooms: meetingApi.listRooms,
listMinutes: meetingApi.listMinutes,
createMinute: meetingApi.createMinute,
updateMinute: meetingApi.updateMinute,
deleteMinute: meetingApi.deleteMinute,
updateMeeting: meetingApi.updateMeeting,
cancelMeeting: meetingApi.cancelMeeting,
deleteMeeting: meetingApi.deleteMeeting,
listBlogs: blogApi.listBlogs,
getBlog: blogApi.getBlog,
createBlog: blogApi.createBlog,
updateBlog: blogApi.updateBlog,
getSetting: settingApi.getSetting,
putSetting: settingApi.putSetting,
listFeeds: feedApi.listFeeds,
createFeed: feedApi.createFeed,
likeFeed: feedApi.likeFeed,
myLikedFeeds: feedApi.myLikedFeeds,
commentFeed: feedApi.commentFeed,
listHotTopics: feedApi.listHotTopics,
listActiveUsers: feedApi.listActiveUsers,
listFavorites: favoriteApi.listFavorites,
createFavorite: favoriteApi.createFavorite,
updateFavorite: favoriteApi.updateFavorite,
deleteFavorite: favoriteApi.deleteFavorite,
listMessages: messageApi.listMessages,
getUnreadCount: messageApi.getUnreadCount,
markMessageRead: messageApi.markMessageRead,
markAllMessagesRead: messageApi.markAllMessagesRead,
// schedule
listEvents: scheduleApi.listEvents,
createEvent: scheduleApi.createEvent,
deleteEvent: scheduleApi.deleteEvent,
// announcements
listAnnouncements: announcementApi.listAnnouncements,
getAnnouncement: announcementApi.getAnnouncement,
createAnnouncement: announcementApi.createAnnouncement,
updateAnnouncement: announcementApi.updateAnnouncement,
deleteAnnouncement: announcementApi.deleteAnnouncement,
// docs
getFolderTree: docApi.getFolderTree,
listDocuments: docApi.listDocuments,
uploadMeta: docApi.uploadMeta,
// org / hr
listUsers: orgApi.listUsers,
getUser: orgApi.getUser,
createUser: orgApi.createUser,
updateUser: orgApi.updateUser,
getDeptTree: orgApi.getDeptTree,
createDept: orgApi.createDept,
updateDept: orgApi.updateDept,
deleteDept: orgApi.deleteDept,
listRoles: orgApi.listRoles,
// 目标管理: projects / tasks / plans
listProjects: projectApi.listProjects,
getProject: projectApi.getProject,
createProject: projectApi.createProject,
listTasks: projectApi.listTasks,
createTask: projectApi.createTask,
updateTask: projectApi.updateTask,
listPlans: projectApi.listPlans,
getPlan: projectApi.getPlan,
createPlan: projectApi.createPlan,
patchPlan: projectApi.patchPlan,
// 文档协作
listCollabDocs: collabDocApi.listCollabDocs,
getCollabDoc: collabDocApi.getCollabDoc,
createCollabDoc: collabDocApi.createCollabDoc,
updateCollabDoc: collabDocApi.updateCollabDoc,
deleteCollabDoc: collabDocApi.deleteCollabDoc,
listCollabDocVersions: collabDocApi.listCollabDocVersions,
listCollabDocComments: collabDocApi.listCollabDocComments,
addCollabDocComment: collabDocApi.addCollabDocComment,
// 文化建设: discussions / surveys
listDiscussions: communityApi.listDiscussions,
getDiscussion: communityApi.getDiscussion,
createDiscussion: communityApi.createDiscussion,
updateDiscussion: communityApi.updateDiscussion,
deleteDiscussion: communityApi.deleteDiscussion,
listSurveys: communityApi.listSurveys,
getSurvey: communityApi.getSurvey,
createSurvey: communityApi.createSurvey,
voteSurvey: communityApi.voteSurvey,
updateSurvey: communityApi.updateSurvey,
deleteSurvey: communityApi.deleteSurvey,
listDiscussionReplies: communityApi.listDiscussionReplies,
addDiscussionReply: communityApi.addDiscussionReply,
// 领导行程
listTrips: tripApi.listTrips,
createTrip: tripApi.createTrip,
// 报表中心
getOverview: reportApi.getOverview,
// 报表中心 · 可配置报表定义
getReportSchema: reportDefApi.getReportSchema,
listReportDefinitions: reportDefApi.listReportDefinitions,
createReportDefinition: reportDefApi.createReportDefinition,
updateReportDefinition: reportDefApi.updateReportDefinition,
deleteReportDefinition: reportDefApi.deleteReportDefinition,
runReportDefinition: reportDefApi.runReportDefinition,
// 监测中心(应用定制平台运行聚合)
getAppMonitoring: reportApi.getAppMonitoring,
// 统一预警(全平台期限/异常聚合)
listAlerts: alertsApi.listAlerts,
// 系统更新
getSystemUpdateStatus: updateApi.getSystemUpdateStatus,
getSystemUpdateReleases: updateApi.getSystemUpdateReleases,
checkSystemUpdate: updateApi.checkSystemUpdate,
installSystemUpdate: updateApi.installSystemUpdate
}
export type { OaSession } from './auth'
export type { ApiTemplate } from './templates'
export type { ApiInstance, InstanceBox } from './instances'
export type { Meeting, MeetingRoom, MeetingMinute } from './meetings'
export type { ScheduleEvent } from './schedule'
export type { Announcement } from './announcements'
export type { DocFolder, DocFile } from './docs'
export type { OaUser, OaDept, OaRole } from './org'
export type { Project, ProjectTask, WorkPlan } from './projects'
export type { CollabDoc, CollabDocVersion, CollabDocComment } from './collabdocs'
export type { Blog } from './blogs'
export type { Feed, FeedComment, FeedHotTopic, FeedActiveUser, FeedLikeResult } from './feeds'
export type { Favorite } from './favorites'
export type { OaMessage } from './messages'
export type { Discussion, Survey, SurveyOption, DiscussionReply } from './community'
export type { LeaderTrip } from './trips'
export type { ReportOverview, AppMonitoring } from './reports'
export type {
ReportFieldMeta, ReportSourceMeta, ReportDefinition, ReportDefinitionInput,
ReportRunRow, ReportRunResult
} from './reportdefs'
export type { Alert } from './alerts'
export type {
SystemUpdateStatus, ReleaseHistoryItem, UpdatePhase, ReleaseAsset
} from './update'
export type {
CompanySubject, Contract, Supplier, Customer, BankAccount, Seal, Invoice, ContractMilestone
} from './masterdata'
export type { Payment } from './payments'
export type { SealUse } from './sealuses'
export type { Archive } from './archives'
export type { Opportunity, OpportunityFollowup } from './crm'
export type { SafetyCheck, Certification } from './ehs'
export type { Budget } from './budget'
export type { Bid } from './bids'
export type { Intel } from './intel'
export type { RdProject, Patent, Declaration } from './rd'
export type { ContractTemplate, ContractChange } from './contractcenter'
export type { CostCenter, PriceItem, PersonnelCert } from './costing'
export type { CrawlSource, CrawlJob } from './crawl'
export type { SearchHit, ArchiveComment } from './search'
export type { FundPool, FundPoolRow } from './fundpool'
export type { DeclarationTemplate, RdExpense } from './rdextra'
export type { BomItem, HealthRecord, QmsRecord } from './qhse'
export type { WastewaterClient, WaterQualityRecord } from './ops'
export type { WorkOrder, InventoryItem } from './mfg'
export type { Account, Voucher } from './finance'
export type { LabSample, LabInstrument } from './lab'
export type { DesignDoc, DesignChange } from './design'
export type { SupervisionLog, AuditProject, ItAsset } from './engext'