diff --git a/src/api/calibration/approval/index.ts b/src/api/calibration/approval/index.ts new file mode 100644 index 0000000..129f555 --- /dev/null +++ b/src/api/calibration/approval/index.ts @@ -0,0 +1,37 @@ +import request from '@/utils/request' +const AUTH_BASE_URL = '/api2' + +/* + * 审批 + * */ + +// 审批接口 +export const UserApprovalProcessing = (data: any) => { + const formData = new FormData() + formData.append('id', data.id) + formData.append('type', data.type) + formData.append('state', data.state) + return request({ + url: `${AUTH_BASE_URL}/user/approval_processing`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} + +// 审批分页接口 +export const UserRoxyexhibition = (data: any) => { + const formData = new FormData() + formData.append('page', data.pageNum) + formData.append('per_page', data.pageSize) + return request({ + url: `${AUTH_BASE_URL}/user/roxyexhibition`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} diff --git a/src/api/calibration/paymentApplicationForm/index.ts b/src/api/calibration/paymentApplicationForm/index.ts index 68305c8..77330a3 100644 --- a/src/api/calibration/paymentApplicationForm/index.ts +++ b/src/api/calibration/paymentApplicationForm/index.ts @@ -25,3 +25,23 @@ export const FinancePaymentRequest = (data: any) => { } }) } + +// 付款申请展示 +export const FinancePaymentDisplay = (data: any) => { + const formData = new FormData() + formData.append('page', data.pageNum) + formData.append('per_page', data.pageSize) + if (data.times && data.times.length) { + formData.append('times', data.times[0]) + formData.append('end_time', data.times[1]) + } + formData.append('payee', data.payee) + return request({ + url: `${AUTH_BASE_URL}/finance/PaymentDisplay`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} diff --git a/src/api/calibration/reimbursement/index.ts b/src/api/calibration/reimbursement/index.ts index 5f8baf1..515df62 100644 --- a/src/api/calibration/reimbursement/index.ts +++ b/src/api/calibration/reimbursement/index.ts @@ -23,3 +23,23 @@ export const FinanceReimbursement = (data: any) => { } }) } + +// 报销展示 +export const FinanceReidetail = (data: any) => { + const formData = new FormData() + formData.append('page', data.pageNum) + formData.append('per_page', data.pageSize) + if (data.times && data.times.length) { + formData.append('times', data.times[0]) + formData.append('end_time', data.times[1]) + } + formData.append('person', data.person) + return request({ + url: `${AUTH_BASE_URL}/finance/reidetail`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} diff --git a/src/api/calibration/salaryBonusAdjustment/index.ts b/src/api/calibration/salaryBonusAdjustment/index.ts new file mode 100644 index 0000000..be42fb0 --- /dev/null +++ b/src/api/calibration/salaryBonusAdjustment/index.ts @@ -0,0 +1,43 @@ +import request from '@/utils/request' +const AUTH_BASE_URL = '/api2' + +/* + * 工资/奖金变更 + * */ + +// 新增工资/奖金变更 +export const FinanceChange = (data: any) => { + const formData = new FormData() + formData.append('username', data.username) + formData.append('type', data.type) + formData.append('Instructions', data.Instructions) + formData.append('personincharge', data.personincharge) + return request({ + url: `${AUTH_BASE_URL}/finance/change`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} + +// 工资/奖金变更展示 +export const FinanceChangeDetail = (data: any) => { + const formData = new FormData() + formData.append('page', data.pageNum) + formData.append('per_page', data.pageSize) + if (data.times && data.times.length) { + formData.append('times', data.times[0]) + formData.append('end_time', data.times[1]) + } + formData.append('username', data.username) + return request({ + url: `${AUTH_BASE_URL}/finance/ChangeDetail`, + method: 'post', + data: formData, + headers: { + 'Content-Type': 'multipart/form-data' + } + }) +} diff --git a/src/utils/auxiliaryFunction/index.ts b/src/utils/auxiliaryFunction/index.ts index af8f3f3..ac219a8 100644 --- a/src/utils/auxiliaryFunction/index.ts +++ b/src/utils/auxiliaryFunction/index.ts @@ -89,9 +89,30 @@ export function convertFilePathsToObject(filePaths: string | string[]): Array<{ }) } +// 安全的文件信息提取函数 +export function getFileInfo(fileStr: string): { url: string; name: string } | null { + try { + if (!fileStr || !isValidJson(fileStr)) return null + const files = convertFilePathsToObject(JSON.parse(fileStr)) + return files && files.length > 0 ? files[0] : null + } catch (e) { + console.error('解析文件信息失败:', e) + return null + } +} + export function isString(value: any): boolean { return typeof value === 'string' } export function isFile(obj: any): obj is File { return obj instanceof File } +// JSON验证 +export function isValidJson(str: string): boolean { + try { + JSON.parse(str) + return true + } catch (e) { + return false + } +} diff --git a/src/views/calibration/paymentApplicationForm/index.vue b/src/views/calibration/paymentApplicationForm/index.vue index 2c99470..e6747a1 100644 --- a/src/views/calibration/paymentApplicationForm/index.vue +++ b/src/views/calibration/paymentApplicationForm/index.vue @@ -1,23 +1,33 @@