import axiosAPI from "../config/axios"; import axios from "../config/axios"; import { bypassCabutSanksi } from "./cabutSanksi"; import { createLog } from "./log"; import { getCsrf } from "./security"; export const createSanksi = async (token, id, data, _csrf) => { const res = await axiosAPI.post(`/sanksi/create/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } }); logCreateSanksi(token, id) return res.data; }; export const updatePddikti = async (token, id, _csrf) => { const res = await axiosAPI.put(`/sanksi/pddikti/${id}?_csrf=${_csrf}`, {}, { headers: { Authorization: token } }); logCreateSanksi(token, id) return res.data; }; const logCreateSanksi = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil melakukan penetapan sanksi, id: ${id}`, menu: "Sanksi", _csrf: _csrf }); } export const getSanksi = async (token, query = {}) => { try { let url = "/sanksi"; if (query != {}) { const { keberatan, jawaban, bypassCabutSanksi, banding, cabutSanksi, perbaikan, aktif, delegasi, turunSanksi, naikSanksi, pengajuan_keberatan, is_pengajuan_keberatan, is_pengajuan_banding } = query; url += "?"; const parseURL = []; if (keberatan) parseURL.push(`keberatan=true`); if (banding) parseURL.push(`banding=true`); if (cabutSanksi) parseURL.push(`cabutSanksi=true`); if (perbaikan) parseURL.push(`perbaikan=true`); if (jawaban) parseURL.push(`jawaban=true`); else if (jawaban === false) parseURL.push(`jawaban=false`); if (delegasi) parseURL.push(`delegasi=true`); if (turunSanksi) parseURL.push(`turunSanksi=true`); if (naikSanksi) parseURL.push(`naikSanksi=true`); if (aktif === false) parseURL.push(`aktif=false`); if (aktif === true) parseURL.push(`aktif=true`); if (bypassCabutSanksi) parseURL.push(`bypassCabutSanksi=true`) if (is_pengajuan_keberatan) parseURL.push(`pengajuan_keberatan=true`); url += parseURL.join("&"); } const res = await axiosAPI.get(url, { headers: { Authorization: token } }); return res.data; } catch (error) { console.log("error", error); return false; } }; export const getOneSanksi = async (token, id, query = {}) => { try { let url = `/sanksi/${id}`; if (query != {}) { const { banding, aktif, all } = query; url += "?"; const parseURL = []; if (banding) parseURL.push(`banding=true`); if (aktif === false) parseURL.push(`aktif=false`); if (all) { parseURL.push(`all=true`); } url += parseURL.join("&"); } const res = await axiosAPI.get(url, { headers: { Authorization: token } }); return res.data; } catch (error) { console.log("error", error); return false; } }; export const addRekomendasiDelegasi = async (token, id, data, _csrf) => { try { const res = await axiosAPI.post(`/rekomendasi/add/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } }); logSuccessAddRekomendasiDelegasi(token, id) return res.data; } catch (error) { console.log("error", error); logErrorAddRekomendasiDelegasi(token, id) return false; } }; const logSuccessAddRekomendasiDelegasi = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil melakukan Rekomendasi Delegasi, id: ${id}`, menu: "Sanksi", _csrf: _csrf }); } const logErrorAddRekomendasiDelegasi = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Gagal melakukan Rekomendasi Delegasi, id: ${id}`, _csrf: _csrf }); } export const editTmt = async (token, id, data, _csrf) => { const res = await axios.put(`sanksi/tmt/update/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } }); logEditTmt(token, id) return res.data; }; const logEditTmt = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil perpanjangan sanksi, id: ${id}`, _csrf: _csrf }); } export const update = async (token, id, data, _csrf) => { const res = await axios.put(`sanksi/update/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } }); logUpdate(token, id) return res.data; }; const logUpdate = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil Merubah Sanksi, id: ${id}`, _csrf: _csrf, menu: "Perubahan Sanksi" }); } export const updatePT = async (token, id, data, _csrf) => { const res = await axiosAPI.put(`/sanksi/update-pt/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } }); logUpdatePT(token, id) return res.data; }; const logUpdatePT = async (token, id) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil mengubah status sanksi, id: ${id}`, _csrf: _csrf }); } export const removePesertaPleno = async (token, data, _csrf) => { const res = await axios.delete(`sanksi/remove-peserta-pleno?_csrf=${_csrf}`, { headers: { Authorization: token }, data }); logRemovePesertaPleno(token) return res.data; }; const logRemovePesertaPleno = async (token) => { const getToken = await getCsrf(); const _csrf = getToken.token; await createLog(token, { aktivitas: `Berhasil hapus peserta pleno`, menu: "Sanksi - Berita Acara", _csrf: _csrf }); }