| | |
| | | } |
| | | modalApi.lock(); |
| | | try { |
| | | await importAttendanceRecord(fileList.value[0] as File, updateSupport.value); |
| | | const res: string = await importAttendanceRecord( |
| | | fileList.value[0] as File, |
| | | updateSupport.value, |
| | | ); |
| | | await modalApi.close(); |
| | | emit('success'); |
| | | message.success('导入成功'); |
| | | // 后端返回导入结果(含失败原因,例如“以下员工不存在...;需补充手机号...”) |
| | | if (res && res.length > 0) { |
| | | // 失败时后端会拼上「未能导入:」明细段,用它判定,避免成功文案里出现「未」就误报警告 |
| | | message[res.includes('未能导入') ? 'warning' : 'success'](res); |
| | | } else { |
| | | message.success('导入成功'); |
| | | } |
| | | } finally { |
| | | modalApi.unlock(); |
| | | } |