pelaporan.js 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. import { get, post, del, put } from "../config/request";
  2. import axiosAPI from "../config/axios";
  3. import { createLog } from "./log";
  4. import { getCsrf } from "./security";
  5. export const getPelaporan = async (token, query = {}) => {
  6. try {
  7. let url = "/laporan";
  8. if (query != null) {
  9. const { jadwal, evaluasi, pt_id, delegasi, aktif, sanksi, all, tuntas } = query;
  10. url += "?";
  11. const parseURL = [];
  12. if (jadwal) {
  13. parseURL.push(`jadwal=true`);
  14. } else if (evaluasi) {
  15. parseURL.push(`evaluasi=true`);
  16. } else if (sanksi) {
  17. parseURL.push(`sanksi=true`);
  18. }
  19. if (all) {
  20. parseURL.push(`all=true`);
  21. }
  22. if (delegasi) {
  23. parseURL.push(`delegasi=true`);
  24. }
  25. if (tuntas) {
  26. parseURL.push(`tuntas=true`);
  27. }
  28. if (pt_id) {
  29. parseURL.push(`pt_id=${pt_id}`);
  30. }
  31. if (aktif === false) {
  32. parseURL.push(`aktif=false`);
  33. }
  34. url += parseURL.join("&");
  35. }
  36. const res = await axiosAPI.get(url, { headers: { Authorization: token } });
  37. return res.data;
  38. } catch (error) {
  39. console.log("error", error);
  40. return false;
  41. }
  42. };
  43. export const getOneLaporan = async (token, id, query = {}) => {
  44. try {
  45. let url = `/laporan/${id}`;
  46. if (query != null) {
  47. const { aktif, all } = query;
  48. url += "?";
  49. const parseURL = [];
  50. if (all) {
  51. parseURL.push(`all=true`);
  52. }
  53. if (aktif === false) {
  54. parseURL.push(`aktif=false`);
  55. }
  56. url += parseURL.join("&");
  57. }
  58. const res = await axiosAPI.get(url, { headers: { Authorization: token } });
  59. return res.data;
  60. } catch (error) {
  61. console.log("error", error);
  62. return false;
  63. }
  64. };
  65. export const getPelaporanPublic = async ({ number, noHp }) => {
  66. try {
  67. const res = await get(`/pelaporan/public?number=${number}&noHp=${noHp}`);
  68. return res.data;
  69. } catch (error) {
  70. console.log("error", error.response.data);
  71. return false;
  72. }
  73. };
  74. const logCreatePelaporan = async (token, id) => {
  75. const getToken = await getCsrf();
  76. const _csrf = getToken.token;
  77. await createLog(token, { aktivitas: `Berhasil Membuat pelaporan`, menu: "Pelaporan", _csrf: _csrf });
  78. }
  79. export const createPelaporan = async (token, data, _csrf) => {
  80. const res = await axiosAPI.post(`/laporan/create?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
  81. await logCreatePelaporan(token)
  82. return res.data;
  83. };
  84. // export const createLaporanPublic = async (data) => {
  85. // try {
  86. // const res = await axiosAPI.post("/public/laporan/create", data);
  87. // return res.data;
  88. // } catch (error) {
  89. // console.log("error", error.response.data);
  90. // return false;
  91. // }
  92. // };
  93. export const createLaporanPublic = async (token, data, _csrf) => {
  94. try {
  95. const res = await axiosAPI.post(`/public/laporan/create?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
  96. return res.data;
  97. } catch (error) {
  98. console.log("error", error.response.data);
  99. return false;
  100. }
  101. };
  102. // export const addStatus = async ({ number, ptId }, data) => {
  103. // try {
  104. // const res = await post(`/pelaporan/status/add?number=${number}&ptId=${ptId}`, data);
  105. // return res.data;
  106. // } catch (error) {
  107. // console.log("error", error);
  108. // return false;
  109. // }
  110. // };
  111. export const updateLaporan = async (token, id, data, _csrf, menu) => {
  112. try {
  113. const res = await axiosAPI.put(`/laporan/update/${id}?_csrf=${_csrf}`, data, { headers: { Authorization: token } });
  114. return res.data;
  115. } catch (error) {
  116. console.log("error", error.response.data);
  117. return false;
  118. }
  119. };
  120. export const jumlahLaporan = async (token) => {
  121. try {
  122. const res = await axiosAPI.get(`/laporan/jumlah`, { headers: { Authorization: token } });
  123. return res.data;
  124. } catch (error) {
  125. console.log("error", error.response.data);
  126. return false;
  127. }
  128. };
  129. export const getlaporanByPembina = async (token, idPembina, query = {}) => {
  130. try {
  131. let url = `/laporan/byPembina/${idPembina}`;
  132. if (query != null) {
  133. const { idPembina, penjadwalan, pemeriksaan, sanksi, keberatan, banding, perbaikan, cabutSanksi, aktif, ditutup, delegasi, diterima } = query;
  134. url += "?";
  135. const parseURL = [];
  136. if (idPembina) {
  137. parseURL.push(`idPembina=${idPembina}`);
  138. };
  139. if (penjadwalan) {
  140. parseURL.push(`penjadwalan=true`);
  141. };
  142. if (pemeriksaan) {
  143. parseURL.push(`pemeriksaan=true`);
  144. };
  145. if (sanksi) {
  146. parseURL.push(`sanksi=true`);
  147. };
  148. if (keberatan) {
  149. parseURL.push(`keberatan=true`);
  150. };
  151. if (banding) {
  152. parseURL.push(`banding=true`);
  153. };
  154. if (perbaikan) {
  155. parseURL.push(`perbaikan=true`);
  156. };
  157. if (cabutSanksi) {
  158. parseURL.push(`cabutSanksi=true`);
  159. };
  160. if (ditutup) {
  161. parseURL.push(`ditutup=true`);
  162. };
  163. if (diterima) {
  164. parseURL.push(`diterima=true`);
  165. };
  166. if (delegasi) {
  167. parseURL.push(`delegasi=true`);
  168. };
  169. if (aktif === false) {
  170. parseURL.push(`aktif=false`);
  171. }
  172. url += parseURL.join("&");
  173. }
  174. const res = await axiosAPI.get(url, { headers: { Authorization: token } });
  175. return res.data;
  176. } catch (error) {
  177. console.log("error", error);
  178. return false;
  179. }
  180. };
  181. // export const activeLaporan = async ({ number, ptId }) => {
  182. // try {
  183. // const res = await put(`/pelaporan/active?number=${number}&ptId=${ptId}`);
  184. // return res.data;
  185. // } catch (error) {
  186. // console.log("error", error);
  187. // return false;
  188. // }
  189. // };
  190. // export const changeRoleData = async ({ number, ptId }, data) => {
  191. // try {
  192. // const res = await post(`/pelaporan/change-role-data?number=${number}&ptId=${ptId}`, data);
  193. // return res.data;
  194. // } catch (error) {
  195. // console.log("error", error);
  196. // return false;
  197. // }
  198. // };