/** * 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'