整合前端

This commit is contained in:
砂糖
2026-04-13 17:04:38 +08:00
parent 69609a2cb1
commit 5d4794c9bd
915 changed files with 144259 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
import request from '@/utils/request'
// 请假单
export function listAppropriationReq (query) {
return request({
url: '/hrm/appropriation/list',
method: 'get',
params: query
})
}
export function getAppropriationReq (bizId) {
return request({
url: `/hrm/appropriation/${bizId}`,
method: 'get'
})
}
export function addAppropriationReq (data) {
return request({
url: '/hrm/appropriation',
method: 'post',
data
})
}
export function editAppropriationReq (data) {
return request({
url: '/hrm/appropriation',
method: 'put',
data
})
}
export function delAppropriationReq (bizIds) {
return request({
url: `/hrm/appropriation/${bizIds}`,
method: 'delete'
})
}
export function allAppropriationReq (query) {
return request({
url: '/hrm/appropriation/all',
method: 'get',
params: query
})
}
/**
* 请假统计信息
*/
export function getAppropriationStats (query) {
return request({
url: '/hrm/appropriation/req/stats',
method: 'get',
params: query
})
}

View File

@@ -0,0 +1,127 @@
import request from '@/utils/request'
// 班次
export function listShift(query) {
return request({
url: '/hrm/shift/list',
method: 'get',
params: query
})
}
export function addShift(data) {
return request({
url: '/hrm/shift',
method: 'post',
data
})
}
export function updateShift(data) {
return request({
url: '/hrm/shift',
method: 'put',
data
})
}
export function delShift(shiftIds) {
return request({
url: `/hrm/shift/${shiftIds}`,
method: 'delete'
})
}
// 排班
export function listSchedule(query) {
return request({
url: '/hrm/schedule/list',
method: 'get',
params: query
})
}
export function addSchedule(data) {
return request({
url: '/hrm/schedule',
method: 'post',
data
})
}
export function updateSchedule(data) {
return request({
url: '/hrm/schedule',
method: 'put',
data
})
}
export function delSchedule(scheduleIds) {
return request({
url: `/hrm/schedule/${scheduleIds}`,
method: 'delete'
})
}
// 打卡
export function listPunch(query) {
return request({
url: '/hrm/punch/list',
method: 'get',
params: query
})
}
export function addPunch(data) {
return request({
url: '/hrm/punch',
method: 'post',
data
})
}
export function updatePunch(data) {
return request({
url: '/hrm/punch',
method: 'put',
data
})
}
export function delPunch(punchIds) {
return request({
url: `/hrm/punch/${punchIds}`,
method: 'delete'
})
}
// 考勤结果
export function listAttendCalc(query) {
return request({
url: '/hrm/attend/list',
method: 'get',
params: query
})
}
// 假期余额
export function listLeaveBalance(query) {
return request({
url: '/hrm/leave/balance/list',
method: 'get',
params: query
})
}
export function addLeaveBalance(data) {
return request({
url: '/hrm/leave/balance',
method: 'post',
data
})
}
export function updateLeaveBalance(data) {
return request({
url: '/hrm/leave/balance',
method: 'put',
data
})
}
export function delLeaveBalance(balIds) {
return request({
url: `/hrm/leave/balance/${balIds}`,
method: 'delete'
})
}

View File

@@ -0,0 +1,35 @@
import request from '@/utils/request'
// 查询抄送记录列表
export function listCc(query) {
return request({
url: '/hrm/flow/cc/my',
method: 'get',
params: query
})
}
// 标记抄送为已读
export function readCc(ccId) {
return request({
url: `/hrm/flow/cc/${ccId}/read`,
method: 'post'
})
}
// 手动抄送
export function addCc(data) {
return request({
url: '/hrm/flow/cc',
method: 'post',
data: data
})
}
// 查询抄送记录详细
export function getCc(ccId) {
return request({
url: `/hrm/flow/cc/${ccId}`,
method: 'get'
})
}

View File

@@ -0,0 +1,66 @@
import request from '@/utils/request'
// 证书
export function listCertificate(query) {
return request({
url: '/hrm/certificate/list',
method: 'get',
params: query
})
}
export function addCertificate(data) {
return request({
url: '/hrm/certificate',
method: 'post',
data
})
}
export function updateCertificate(data) {
return request({
url: '/hrm/certificate',
method: 'put',
data
})
}
export function delCertificate(certIds) {
return request({
url: `/hrm/certificate/${certIds}`,
method: 'delete'
})
}
// 合同
export function listContract(query) {
return request({
url: '/hrm/contract/list',
method: 'get',
params: query
})
}
export function addContract(data) {
return request({
url: '/hrm/contract',
method: 'post',
data
})
}
export function updateContract(data) {
return request({
url: '/hrm/contract',
method: 'put',
data
})
}
export function delContract(contractIds) {
return request({
url: `/hrm/contract/${contractIds}`,
method: 'delete'
})
}

View File

@@ -0,0 +1,44 @@
import request from '@/utils/request'
// 查询流程实例评论列表
export function listFlowComment (query) {
return request({
url: '/hrm/flowComment/list',
method: 'get',
params: query
})
}
// 查询流程实例评论详细
export function getFlowComment (commentId) {
return request({
url: '/hrm/flowComment/' + commentId,
method: 'get'
})
}
// 新增流程实例评论
export function addFlowComment (data) {
return request({
url: '/hrm/flowComment',
method: 'post',
data: data
})
}
// 修改流程实例评论
export function updateFlowComment (data) {
return request({
url: '/hrm/flowComment',
method: 'put',
data: data
})
}
// 删除流程实例评论
export function delFlowComment (commentId) {
return request({
url: '/hrm/flowComment/' + commentId,
method: 'delete'
})
}

View File

@@ -0,0 +1,34 @@
import request from '@/utils/request'
// 员工组织岗位关系
export function listEmpOrgPosition(query) {
return request({
url: '/hrm/empOrg/list',
method: 'get',
params: query
})
}
export function addEmpOrgPosition(data) {
return request({
url: '/hrm/empOrg',
method: 'post',
data
})
}
export function updateEmpOrgPosition(data) {
return request({
url: '/hrm/empOrg',
method: 'put',
data
})
}
export function delEmpOrgPosition(relIds) {
return request({
url: `/hrm/empOrg/${relIds}`,
method: 'delete'
})
}

View File

@@ -0,0 +1,56 @@
import request from '@/utils/request'
// 员工
export function listEmployee(query) {
return request({
url: '/hrm/employee/list',
method: 'get',
params: query
})
}
export function allEmployee(query) {
return request({
url: '/hrm/employee/all',
method: 'get',
params: query
})
}
export function addEmployee(data) {
return request({
url: '/hrm/employee',
method: 'post',
data
})
}
export function updateEmployee(data) {
return request({
url: '/hrm/employee',
method: 'put',
data
})
}
export function delEmployee(empIds) {
return request({
url: `/hrm/employee/${empIds}`,
method: 'delete'
})
}
export function getEmployee(empId) {
return request({
url: `/hrm/employee/${empId}`,
method: 'get'
})
}
// 根据用户ID获取员工信息
export function getEmployeeByUserId(userId) {
return request({
url: `/hrm/employee/byUserId/${userId}`,
method: 'get'
})
}

View File

@@ -0,0 +1,250 @@
import request from '@/utils/request'
// 流程任务
export function listFlowTask (query) {
return request({
url: '/hrm/flow/task/list',
method: 'get',
params: query
})
}
export function updateFlowInstance (data) {
return request({
url: '/hrm/flow/instance',
method: 'put',
data
})
}
export function listTodoFlowTask (assigneeUserId) {
return request({
url: '/hrm/flow/task/todo',
method: 'get',
params: { assigneeUserId }
})
}
// 业务维度:按 bizType + bizId 查询当前待办任务(后端需提供)
export function getTodoTaskByBiz (bizType, bizId, assigneeUserId) {
return request({
url: '/hrm/flow/task/todoByBiz',
method: 'get',
params: { bizType, bizId, assigneeUserId }
})
}
export function approveFlowTask (taskId, data) {
return request({
url: `/hrm/flow/task/${taskId}/approve`,
method: 'post',
data
})
}
export function rejectFlowTask (taskId, data) {
return request({
url: `/hrm/flow/task/${taskId}/reject`,
method: 'post',
data
})
}
export function withdrawFlowTask (taskId, data) {
return request({
url: `/hrm/flow/task/${taskId}/withdraw`,
method: 'post',
data
})
}
export function transferFlowTask (taskId, data) {
return request({
url: `/hrm/flow/task/${taskId}/transfer`,
method: 'post',
params: data
})
}
export function ccFlowTask (data) {
return request({
url: '/hrm/flow/cc',
method: 'post',
data
})
}
// 流程动作/表单
export function listFlowAction (query) {
return request({
url: '/hrm/flow/action/list',
method: 'get',
params: query
})
}
export function listFlowFormData (query) {
return request({
// 后端 Controller: HrmFlowFormDataController
// @RequestMapping("/hrm/flow/form") + @GetMapping("/list")
url: '/hrm/flow/form/list',
method: 'get',
params: query
})
}
// 流程实例
export function listFlowInstance (query) {
return request({
url: '/hrm/flow/instance/list',
method: 'get',
params: query
})
}
// 我的申请(我发起的流程实例)
export function listMyFlowInstance (query) {
return request({
url: '/hrm/flow/instance/myList',
method: 'get',
params: query
})
}
export function getFlowInstance (instId) {
return request({
url: `/hrm/flow/instance/${instId}`,
method: 'get'
})
}
export function queryInstanceByBiz (bizType, bizId) {
return request({
url: '/hrm/flow/instance/all',
method: 'get',
params: { bizType, bizId }
})
}
export function listFlowForm (query) {
return request({
url: '/hrm/flow/form/list',
method: 'get',
params: query
})
}
export function getFlowForm (formId) {
return request({
url: `/hrm/flow/form/${formId}`,
method: 'get'
})
}
// 流程模板
export function listFlowTemplate (query) {
return request({
url: '/hrm/flow/template/list',
method: 'get',
params: query
})
}
export function getFlowTemplate (tplId) {
return request({
url: `/hrm/flow/template/${tplId}`,
method: 'get'
})
}
export function addFlowTemplate (data) {
return request({
url: '/hrm/flow/template',
method: 'post',
data
})
}
export function updateFlowTemplate (data) {
return request({
url: '/hrm/flow/template',
method: 'put',
data
})
}
export function delFlowTemplate (tplIds) {
return request({
url: `/hrm/flow/template/${tplIds}`,
method: 'delete'
})
}
// 流程节点
export function listFlowNode (query) {
return request({
url: '/hrm/flow/node/list',
method: 'get',
params: query
})
}
export function getFlowNode (nodeId) {
return request({
url: `/hrm/flow/node/${nodeId}`,
method: 'get'
})
}
export function addFlowNode (data) {
return request({
url: '/hrm/flow/node',
method: 'post',
data
})
}
export function updateFlowNode (data) {
return request({
url: '/hrm/flow/node',
method: 'put',
data
})
}
export function delFlowNode (nodeIds) {
return request({
url: `/hrm/flow/node/${nodeIds}`,
method: 'delete'
})
}
/**
* 撤销申请
*/
export function revokeFlowTask (instId) {
return request({
url: `/hrm/flow/instance/revoke/${instId}`,
method: 'put'
})
}
/**
* 删除被驳回的申请
*/
export function delFlowInstance (instId) {
return request({
url: `/hrm/flow/instance/deleteRejected/${instId}`,
method: 'delete'
})
}
/**
* 查询实例对应的所有审批任务
*/
export function listAssignTask (instId) {
return request({
url: `/hrm/flow/instance/tasks/${instId}`,
method: 'get'
})
}

View File

@@ -0,0 +1,66 @@
import request from '@/utils/request'
// 职级
export function listGrade(query) {
return request({
url: '/hrm/grade/list',
method: 'get',
params: query
})
}
export function addGrade(data) {
return request({
url: '/hrm/grade',
method: 'post',
data
})
}
export function updateGrade(data) {
return request({
url: '/hrm/grade',
method: 'put',
data
})
}
export function delGrade(gradeIds) {
return request({
url: `/hrm/grade/${gradeIds}`,
method: 'delete'
})
}
// 岗位
export function listPosition(query) {
return request({
url: '/hrm/position/list',
method: 'get',
params: query
})
}
export function addPosition(data) {
return request({
url: '/hrm/position',
method: 'post',
data
})
}
export function updatePosition(data) {
return request({
url: '/hrm/position',
method: 'put',
data
})
}
export function delPosition(positionIds) {
return request({
url: `/hrm/position/${positionIds}`,
method: 'delete'
})
}

View File

@@ -0,0 +1,15 @@
// 导出所有 HRM 模块 API
export * from './appropriation'
export * from './attendance'
export * from './certContract'
export * from './comment'
export * from './employee'
export * from './empOrgPosition'
export * from './flow'
export * from './gradePosition'
export * from './leave'
export * from './org'
export * from './reimburse'
export * from './seal'
export * from './travel'

View File

@@ -0,0 +1,59 @@
import request from '@/utils/request'
// 请假单
export function listLeaveReq (query) {
return request({
url: '/hrm/leave/req/list',
method: 'get',
params: query
})
}
export function getLeaveReq (bizId) {
return request({
url: `/hrm/leave/req/${bizId}`,
method: 'get'
})
}
export function addLeaveReq (data) {
return request({
url: '/hrm/leave/req',
method: 'post',
data
})
}
export function editLeaveReq (data) {
return request({
url: '/hrm/leave/req',
method: 'put',
data
})
}
export function delLeaveReq (bizIds) {
return request({
url: `/hrm/leave/req/${bizIds}`,
method: 'delete'
})
}
export function allLeaveReq (query) {
return request({
url: '/hrm/leave/req/all',
method: 'get',
params: query
})
}
/**
* 请假统计信息
*/
export function getLeaveStats (query) {
return request({
url: '/hrm/leave/req/stats',
method: 'get',
params: query
})
}

View File

@@ -0,0 +1,49 @@
import request from '@/utils/request'
// 组织
export function listOrg(query) {
return request({
url: '/hrm/org/list',
method: 'get',
params: query
})
}
export function allOrg(query) {
return request({
url: '/hrm/org/all',
method: 'get',
params: query
})
}
export function addOrg(data) {
return request({
url: '/hrm/org',
method: 'post',
data
})
}
export function updateOrg(data) {
return request({
url: '/hrm/org',
method: 'put',
data
})
}
export function delOrg(orgIds) {
return request({
url: `/hrm/org/${orgIds}`,
method: 'delete'
})
}
export function getOrg(orgId) {
return request({
url: `/hrm/org/${orgId}`,
method: 'get'
})
}

View File

@@ -0,0 +1,49 @@
import request from '@/utils/request'
// 日常报销单
export function listReimburseReq(query) {
return request({
url: '/hrm/reimburse/list',
method: 'get',
params: query
})
}
export function getReimburseReq(bizId) {
return request({
url: `/hrm/reimburse/${bizId}`,
method: 'get'
})
}
export function addReimburseReq(data) {
return request({
url: '/hrm/reimburse',
method: 'post',
data
})
}
export function editReimburseReq(data) {
return request({
url: '/hrm/reimburse',
method: 'put',
data
})
}
export function delReimburseReq(bizIds) {
return request({
url: `/hrm/reimburse/${bizIds}`,
method: 'delete'
})
}
export function allReimburseReq(query) {
return request({
url: '/hrm/reimburse/all',
method: 'get',
params: query
})
}

View File

@@ -0,0 +1,99 @@
import request from '@/utils/request'
// 用印申请
export function listSealReq(query) {
return request({
url: '/hrm/seal/list',
method: 'get',
params: query
})
}
export function getSealReq(bizId) {
return request({
url: `/hrm/seal/${bizId}`,
method: 'get'
})
}
export function addSealReq(data) {
return request({
url: '/hrm/seal',
method: 'post',
data
})
}
export function editSealReq(data) {
return request({
url: '/hrm/seal',
method: 'put',
data
})
}
export function delSealReq(bizIds) {
return request({
url: `/hrm/seal/${bizIds}`,
method: 'delete'
})
}
export function approveSealReq(bizId) {
return request({
url: `/hrm/seal/${bizId}/approve`,
method: 'post'
})
}
export function rejectSealReq(bizId) {
return request({
url: `/hrm/seal/${bizId}/reject`,
method: 'post'
})
}
export function cancelSealReq(bizId) {
return request({
url: `/hrm/seal/${bizId}/cancel`,
method: 'post'
})
}
export function stampSealJava(bizId, data) {
// 确保数据正确序列化,特别是 0 值
const payload = {
targetFileUrl: String(data.targetFileUrl || ''),
stampImageUrl: String(data.stampImageUrl || ''),
pageNo: Number(data.pageNo) || 1,
xPx: Number(data.xPx) || 0,
yPx: Number(data.yPx) || 0,
viewportWidth: data.viewportWidth !== undefined && data.viewportWidth !== null ? Number(data.viewportWidth) : undefined,
viewportHeight: data.viewportHeight !== undefined && data.viewportHeight !== null ? Number(data.viewportHeight) : undefined
}
// 可选字段
if (data.widthPx !== undefined && data.widthPx !== null) {
payload.widthPx = Number(data.widthPx)
}
if (data.heightPx !== undefined && data.heightPx !== null) {
payload.heightPx = Number(data.heightPx)
}
// viewportWidth/Height如果是 undefined 则不传(兼容后端校验)
if (payload.viewportWidth === undefined) delete payload.viewportWidth
if (payload.viewportHeight === undefined) delete payload.viewportHeight
console.log('stampSealJava API call, payload:', JSON.stringify(payload, null, 2))
console.log('yPx in API:', typeof payload.yPx, payload.yPx)
return request({
url: `/hrm/seal/${bizId}/stamp/java`,
method: 'post',
data: payload
})
}
export function stampSealPython(bizId, data) {
return request({
url: `/hrm/seal/${bizId}/stamp/python`,
method: 'post',
data
})
}

View File

@@ -0,0 +1,48 @@
import request from '@/utils/request'
// 出差单
export function listTravelReq(query) {
return request({
url: '/hrm/travel/list',
method: 'get',
params: query
})
}
export function getTravelReq(bizId) {
return request({
url: `/hrm/travel/${bizId}`,
method: 'get'
})
}
export function addTravelReq(data) {
return request({
url: '/hrm/travel',
method: 'post',
data
})
}
export function editTravelReq(data) {
return request({
url: '/hrm/travel',
method: 'put',
data
})
}
export function delTravelReq(bizIds) {
return request({
url: `/hrm/travel/${bizIds}`,
method: 'delete'
})
}
export function allTravelReq(query) {
return request({
url: '/hrm/travel/all',
method: 'get',
params: query
})
}