pelaporan.js 5.3 KB

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