const auth = require('../../middleware/verifyToken') const kontakModel = require('../../model/kontak.model') const response = require('../../utils/responseHandler') const role = require('../../middleware/role') const checkData = require('../../middleware/checkData') const verifyOtp = require('../../middleware/verifyOTP') const { validation } = require('../../middleware/validation') exports.getKontak = [ auth, checkData((req) => req.user, (user) => kontakModel.find({ pt_id: user.lembaga.id }), 'kontak'), async (req, res) => response.success(res, { status: 'success', message: 'Berhasil mendapatkan data kontak', data: req.data['kontak'] }) ] exports.addKontak = [ auth, ...verifyOtp, validation((req) => req.body, { no_hp: 'string' }), async (req, res) => { const user = req.user let no_hp = req.body.no_hp no_hp = req.body.no_hp.substring(0, 1) === '0' ? '62' + no_hp.substring(1) : no_hp const kontak = new kontakModel({ nama: user.nama, no_hp, role: user.role.id, lembaga: user.lembaga.id, }) try { await kontak.save() return response.success(res, { status: 'success', message: 'Berhasil menambahkan kontak', data: kontak }) } catch (e) { return response.error(res, { message: e.message, code: e.response?.status || 500 }) } } ]