做双端审批流

This commit is contained in:
hero920103 committed 2026-10-07 13:46:32 +08:00
1 parent 5b4dbb2b46
commit ffaadc26ae
69 files changed
+6662 -1071

No files matched your search

+39 -12
View File
@@ -1,6 +1,6 @@
/**
* OA 协同办公(移动端)接口封装。
* 对应后端 go/controllers/app_oa.go 的 /app/oa/* 只读接口。
* 对应后端 go/controllers/app_oa.go 的 /api/oa/* 只读接口。
*/
import { request } from '@/api/request.js'
@@ -110,7 +110,7 @@ export function formatFileSize(size) {
export async function fetchNotices(params = {}) {
const data = await request({
url: '/app/oa/notice/list',
url: '/api/oa/notice/list',
data: {
page: params.page || 1,
pageSize: params.pageSize || 20,
@@ -121,18 +121,18 @@ export async function fetchNotices(params = {}) {
}
export function getNotice(id) {
return request({ url: `/app/oa/notice/${id}` })
return request({ url: `/api/oa/notice/${id}` })
}
// ---------------- 文档库 ----------------
export function fetchDocCategories(scope = 'shared') {
return request({ url: '/app/oa/document/categories', data: { scope } })
return request({ url: '/api/oa/document/categories', data: { scope } })
}
export async function fetchDocs(params = {}) {
const data = await request({
url: '/app/oa/document/list',
url: '/api/oa/document/list',
data: {
scope: params.scope || 'shared',
keyword: params.keyword || '',
@@ -148,22 +148,22 @@ export async function fetchDocs(params = {}) {
}
export function getDoc(id) {
return request({ url: `/app/oa/document/${id}` })
return request({ url: `/api/oa/document/${id}` })
}
export function downloadDoc(id) {
return request({ url: `/app/oa/document/download/${id}` })
return request({ url: `/api/oa/document/download/${id}` })
}
export function toggleDocStar(id) {
return request({ url: `/app/oa/document/${id}/star`, method: 'POST' })
return request({ url: `/api/oa/document/${id}/star`, method: 'POST' })
}
// ---------------- 薪酬工资单(仅本人) ----------------
export async function fetchPayrolls(params = {}) {
const data = await request({
url: '/app/oa/compensation/payrolls',
url: '/api/oa/compensation/payrolls',
data: {
payroll_month: params.payrollMonth || '',
page: params.page || 1,
@@ -174,11 +174,38 @@ export async function fetchPayrolls(params = {}) {
}
export function getPayroll(id) {
return request({ url: `/app/oa/compensation/payrolls/${id}` })
return request({ url: `/api/oa/compensation/payrolls/${id}` })
}
// ---------------- 员工档案(仅本人) ----------------
// ---------------- 员工档案 ----------------
/** 当前用户是否具备 HR 视角(可见全公司档案)。角色里勾了「员工档案」菜单即为 HR。 */
export async function getEmployeeFileAccess() {
const data = await request({ url: '/api/oa/employee-file/access' })
return !!(data && data.can_view_all)
}
/** 全公司档案分页列表(HR),支持 keyword / status / org_id */
export async function fetchEmployeeFiles(params = {}) {
const data = await request({
url: '/api/oa/employee-file/list',
data: {
keyword: params.keyword || '',
status: params.status || 0,
org_id: params.orgId || 0,
page: params.page || 1,
pageSize: params.pageSize || 20
}
})
return { list: (data && data.list) || [], total: (data && data.total) || 0 }
}
/** 指定员工档案详情(含教育/工作/合同/证照子记录) */
export function getEmployeeFileDetail(id) {
return request({ url: `/api/oa/employee-file/detail/${id}` })
}
/** 本人档案(无 HR 权限时的兜底视图) */
export function getMyEmployeeFile() {
return request({ url: '/app/oa/employee-file' })
return request({ url: '/api/oa/employee-file' })
}