refactor: migrate to Tencent Cloud backend
这个提交包含在:
@@ -0,0 +1,25 @@
|
||||
function escapeCSV(val) {
|
||||
if (val == null) return ''
|
||||
var s = String(val)
|
||||
if (s.indexOf(',') > -1 || s.indexOf('"') > -1 || s.indexOf('\n') > -1) {
|
||||
return '"' + s.replace(/"/g, '""') + '"'
|
||||
}
|
||||
return s
|
||||
}
|
||||
|
||||
function exportCSV(filename, headers, rows) {
|
||||
var lines = [headers.map(escapeCSV).join(',')]
|
||||
for (var i = 0; i < rows.length; i++) {
|
||||
lines.push(rows[i].map(escapeCSV).join(','))
|
||||
}
|
||||
var csv = '\uFEFF' + lines.join('\n')
|
||||
var blob = new Blob([csv], { type: 'text/csv;charset=utf-8;' })
|
||||
var url = URL.createObjectURL(blob)
|
||||
var a = document.createElement('a')
|
||||
a.href = url
|
||||
a.download = filename
|
||||
a.click()
|
||||
URL.revokeObjectURL(url)
|
||||
}
|
||||
|
||||
export { exportCSV }
|
||||
@@ -1,5 +1,7 @@
|
||||
const BASE_URL = 'https://api.lightmask.com'
|
||||
const USE_MOCK = true
|
||||
import env from '../config/env'
|
||||
|
||||
const BASE_URL = env.API_BASE
|
||||
const USE_MOCK = false
|
||||
|
||||
const MOCK_DATA = {
|
||||
'/api/v1/admin/devices/AABBCCDDEEFF0011': {
|
||||
@@ -67,6 +69,12 @@ const MOCK_DATA = {
|
||||
}
|
||||
|
||||
function getMockData(url, data) {
|
||||
if (url.includes('/api/v1/admin/login')) {
|
||||
if (data && data.username === 'admin' && data.password === 'admin123') {
|
||||
return { token: 'mock_token_admin', admin_id: 'admin_001', username: 'admin', real_name: '管理员', role: 'admin' }
|
||||
}
|
||||
throw { code: 1001, message: '用户名或密码错误' }
|
||||
}
|
||||
if (url.startsWith('/api/v1/admin/users/') && !url.includes('users?')) {
|
||||
const id = url.split('/').pop()
|
||||
return MOCK_DATA['/api/v1/admin/users/u1'] || { _id: id, nickname: '未知用户' }
|
||||
@@ -92,8 +100,8 @@ function request(options) {
|
||||
method: options.method || 'GET',
|
||||
data: options.data || {},
|
||||
header: {
|
||||
'Authorization': token ? 'Bearer ' + token : '',
|
||||
'Content-Type': 'application/json',
|
||||
'Authorization': token ? 'Bearer ' + token : '',
|
||||
...options.header
|
||||
},
|
||||
success(res) {
|
||||
|
||||
在新工单中引用
屏蔽一个用户