| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 | 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')const { PTB_PT } = require('../../utils/constanta')exports.getKontak = [  auth,  role(PTB_PT),  checkData((req) => req.user, (user) => kontakModel.find({ 'lembaga.id': user.lembaga.id, 'role.id': PTB_PT }), 'kontak'),  async (req, res) =>    response.success(res, {      status: 'success',      message: 'Berhasil mendapatkan data kontak',      data: req.data['kontak']    })]exports.addKontak = [  auth,  ...verifyOtp,  async (req, res) => {  const user = req.user  const no_hp = req.no_hp    try {      if (!await kontakModel.findOne({ 'lembaga.id': user.lembaga.id })) {        await kontakModel.create({          nama: user.nama,          no_hp,          role: user.role,          lembaga: user.lembaga,        })        return response.success(res, {          status: 'success',          message: 'Berhasil menambahkan kontak',        })      }      await kontakModel.updateOne({ 'lembaga.id': user.lembaga.id }, { no_hp, })      return response.success(res, {        status: 'success',        message: 'Berhasil mengubah kontak'      })    } catch (e) {      return response.error(res, {        message: e.message,        code: e.response?.status || 500      })    }  }]
 |