import { request } from "@/utils/requestGd/index.js"
|
import website from '@/config/website'
|
import { getEnvObj } from '@/utils/index.js'
|
import { useUserStore } from '@/store/index.js'
|
import { Base64 } from 'js-base64'
|
|
|
// 工单用户登录接口
|
export const ticketLoginInterfaceApi = (tenantId, deptId, roleId, username, password, type, key, code) => {
|
return request({
|
url: '/blade-auth/oauth/token',
|
method: 'post',
|
header: {
|
'Tenant-Id': tenantId,
|
'Dept-Id': website.switchMode ? deptId : '',
|
'Role-Id': website.switchMode ? roleId : '',
|
'Captcha-Key': key,
|
'Captcha-Code': code,
|
},
|
params: {
|
tenantId,
|
username,
|
password,
|
grant_type: 'password',
|
scope: 'all',
|
type,
|
},
|
})
|
}
|
// 获取工单列表
|
export const getGdList = data => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/list',
|
method: 'get',
|
data,
|
});
|
};
|
// 获取详情
|
export const getGddetailedData = data => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/detail',
|
method: 'get',
|
data,
|
});
|
};
|
// 获取数量
|
export const getstatusCount = (params) => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/count',
|
method: 'get',
|
params,
|
})
|
}
|
// 退回工单
|
export const backGdApi = (data) => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/handle',
|
method: 'post',
|
data,
|
})
|
}
|
// 分享缓存数据
|
export const shareCacheApi = (data) => {
|
return request({
|
url: '/drone-gd/workOrder/gdPatrolTask/share-cache-data',
|
method: 'post',
|
data,
|
})
|
}
|
|
// 新增处置记录
|
export const addDisposeRecord = data => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/addDisposeRecord',
|
method: 'post',
|
data,
|
})
|
}
|
|
// 更新状态
|
export const updateStatus = data => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/updateStatus',
|
method: 'post',
|
data,
|
})
|
}
|
|
|
|
// 获取处置记录列表
|
export const getDisposeRecords = params => {
|
return request({
|
url: '/drone-gd/workOrder/gdClueEvent/disposeRecords',
|
method: 'get',
|
params,
|
})
|
}
|
|
// 上传文件
|
export const uploadFileAPI = filePath => {
|
let baseURL = getEnvObj().VITE_API_BASE_URL_GD
|
// #ifdef H5
|
if (import.meta.env.VITE_APP_PROXY === 'true') {
|
baseURL = import.meta.env.VITE_API_PREFIX_GD
|
}
|
// #endif
|
const userInfo = useUserStore()?.$state?.userInfo || {}
|
const accessToken = userInfo.gd_access_token
|
const areaCode = userInfo.detail?.areaCode
|
const header = {
|
'Blade-Requested-With': 'BladeHttpRequest',
|
Authorization: `Basic ${Base64.encode(`${website.clientId}:${website.clientSecret}`)}`,
|
}
|
if (accessToken) header['Blade-Auth'] = `bearer ${accessToken}`
|
if (areaCode) header.areaCode = areaCode
|
|
return new Promise((resolve, reject) => {
|
uni.uploadFile({
|
url: `${baseURL.replace(/\/$/, '')}/blade-resource/oss/endpoint/put-file`,
|
filePath,
|
name: 'file',
|
header,
|
success: response => {
|
try {
|
const responseData = typeof response.data === 'string' ? JSON.parse(response.data) : response.data
|
const status = Number(responseData?.error_code ?? responseData?.code ?? response.statusCode)
|
if (![0, 200].includes(status)) {
|
reject(responseData)
|
return
|
}
|
resolve(responseData)
|
} catch (error) {
|
reject(error)
|
}
|
},
|
fail: reject,
|
})
|
})
|
}
|