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
    })
   
    console.log('result.data from koja.ir******************', result.data.result)
    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
      }
      err = new Error(error.message || 'خطا در دریافت اطلاعات از سامانه ردیاب')
      err.status = status || 500
      throw err
    } else {
      const err = new Error('خطا در دریافت اطلاعات از سامانه ردیاب')
      err.status = 500
      throw err
    }
  }
}

module.exports = { findDeviceByImeiOnKoja }
