48 lines
1.4 KiB
JavaScript
48 lines
1.4 KiB
JavaScript
const axios = require('axios')
|
|
const { kojaBaseUrl, kojaAccount } = require('./_env')
|
|
|
|
async function findDeviceByImeiOnKoja(imei) {
|
|
try {
|
|
const result = await axios.get(`/devices/imei/${imei}`, {
|
|
baseURL: kojaBaseUrl,
|
|
auth: kojaAccount
|
|
})
|
|
|
|
return result.data.result
|
|
} catch (error) {
|
|
if (error.response) {
|
|
const { status } = error.response
|
|
let err
|
|
if (status === 401) {
|
|
err = new Error('خطا در اتصال به سامانه ردیاب')
|
|
err.status = 401
|
|
throw err
|
|
}
|
|
if (status === 404) {
|
|
err = new Error('دستگاه در سامانه ردیاب یافت نشد')
|
|
err.status = 404
|
|
throw err
|
|
}
|
|
if (status === 403) {
|
|
err = new Error('دسترسی غیرمجاز به سامانه ردیاب')
|
|
err.status = 403
|
|
throw err
|
|
}
|
|
if (status === 500) {
|
|
err = new Error('خطا در سرور سامانه ردیاب')
|
|
err.status = 500
|
|
throw err
|
|
}
|
|
err = new Error(error.response?.data?.message || error?.message || 'خطا در دریافت اطلاعات از سامانه ردیاب')
|
|
err.status = status || 500
|
|
throw err
|
|
} else {
|
|
const err = new Error('خطا در دریافت اطلاعات از سامانه ردیاب')
|
|
err.status = 500
|
|
throw err
|
|
}
|
|
}
|
|
}
|
|
|
|
module.exports = { findDeviceByImeiOnKoja }
|