const axios = require('../utils/axios') const handleError = require('../utils/handleError') const response = require('../utils/responseHandler') exports.getAll = handleError(async (req, res) => { const user = req.user const pembina = user.role.id === 2021 ? user.lembaga.id : req.query.pembina const { search } = req.query let url = user.role.id === 2022 ? `https://api.kemdikbud.go.id:8243/pddikti/1.2/pt/${user.lembaga.id}` : 'https://api.kemdikbud.go.id:8243/pddikti/1.2/pt' if (search || pembina) { url += '?' const parseURL = [] if (search) parseURL.push(`q=${search}`) if (pembina) parseURL.push(`pembina=${pembina}`) url += parseURL.join('&') } let data = await axios.get(url) if (user.role.id === 2022) { data = data[0] } return response.success(res, { message: 'Berhasil mengambil data Perguruan Tinggi', data, }) }) exports.getOne = handleError(async (req, res) => { const user = req.user const { id } = req.params let data = await axios.get( `https://api.kemdikbud.go.id:8243/pddikti/1.2/pt/${id}` ) data = data[0] if (user.role.id === 2021 && data.pembina.id !== user.lembaga.id) { return response.error(res, { message: 'pt_id tidak ada', code: 404, }) } return response.success(res, { message: 'Berhasil mengambil satu data Perguruan Tinggi', data, }) }) exports.public = handleError(async (req, res) => { const { search } = req.query let url = 'https://api.kemdikbud.go.id:8243/pddikti/1.2/pt' if (search) { url += '?' const parseURL = [] if (search) parseURL.push(`q=${search}`) url += parseURL.join('&') } let data = await axios.get(url) data = data.map((e) => { return { id: e.id, nama: e.nama } }) return response.success(res, { message: 'Berhasil mengambil data Perguruan Tinggi', data, }) })