From f4916a6a20e7fef860f751eea48153bf5c36b471 Mon Sep 17 00:00:00 2001 From: Salman Manoe Date: Fri, 14 Jan 2022 08:14:30 +0700 Subject: [PATCH] Update AbsensiPegawaiService Penerapan encoding file to base64 binary untuk simpan dan monitoring presensi pegawai --- .../impl/AbsensiPegawaiServiceImpl.java | 31 +++++-------------- 1 file changed, 7 insertions(+), 24 deletions(-) diff --git a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java index 6fd69ad3..3244ad3a 100644 --- a/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java +++ b/jasamedika-business/src/main/java/com/jasamedika/medifirst2000/service/impl/AbsensiPegawaiServiceImpl.java @@ -3,7 +3,6 @@ package com.jasamedika.medifirst2000.service.impl; import java.awt.image.BufferedImage; import java.io.ByteArrayInputStream; import java.io.File; -import java.io.FileInputStream; import java.io.IOException; import java.text.DateFormat; import java.text.NumberFormat; @@ -33,6 +32,7 @@ import com.jasamedika.medifirst2000.entities.JadwalDokter; import com.jasamedika.medifirst2000.entities.ShiftKerja; import com.jasamedika.medifirst2000.service.AbsensiPegawaiService; import com.jasamedika.medifirst2000.util.CommonUtil; +import com.jasamedika.medifirst2000.util.ImageUtil; import com.jasamedika.medifirst2000.vo.AbsensiPegawaiVO; import com.jasamedika.medifirst2000.vo.HabsenVO; @@ -45,8 +45,8 @@ import com.jasamedika.medifirst2000.vo.HabsenVO; @Service("absensiPegawaiService") public class AbsensiPegawaiServiceImpl extends BaseVoServiceImpl implements AbsensiPegawaiService { - @Value("${presensiCapturePath}") - String presensiCapturePath; + @Value("${systemDirectory}") + String systemDirectory; @Autowired private BaseConverterImpl absensiPegawaiConverter; @@ -163,13 +163,13 @@ public class AbsensiPegawaiServiceImpl extends BaseVoServiceImpl implements Abse String your_os = System.getProperty("os.name").toLowerCase(); if (your_os.indexOf("win") >= 0) { // if_windows - result = workingDir + "\\" + presensiCapturePath + "\\" + dirname + "\\"; + result = workingDir + "\\" + systemDirectory + "\\" + dirname + "\\"; } else if (your_os.indexOf("nix") >= 0 || your_os.indexOf("nux") >= 0 || your_os.indexOf("mac") >= 0) { // if_unix_or_mac - result = workingDir + "//" + presensiCapturePath + "//" + dirname + "//"; + result = workingDir + "//" + systemDirectory + "//" + dirname + "//"; } else { // unknown_os? - result = workingDir + "/" + presensiCapturePath + "/" + dirname + "/"; + result = workingDir + "/" + systemDirectory + "/" + dirname + "/"; } return result; @@ -201,23 +201,6 @@ public class AbsensiPegawaiServiceImpl extends BaseVoServiceImpl implements Abse } } - private static String encodeFileToBase64Binary(File file) { - String result = ""; - try { - FileInputStream fileInputStreamReader = new FileInputStream(file); - byte[] bytes = new byte[(int) file.length()]; - fileInputStreamReader.read(bytes); - result = new String(org.apache.commons.codec.binary.Base64.encodeBase64(bytes), "UTF-8"); - - fileInputStreamReader.close(); - - return result; - } catch (Exception e) { - return result; - } - - } - private Double getDecimal(Double n) { return n - Math.floor(n); } @@ -268,7 +251,7 @@ public class AbsensiPegawaiServiceImpl extends BaseVoServiceImpl implements Abse for (Map map : data) { Map mapRs = new HashMap<>(); String imageURLData = ""; - String encodeRs = encodeFileToBase64Binary( + String encodeRs = ImageUtil.encodeFileToBase64Binary( new File(getDirPath(map.get("trdate").toString()) + map.get("filePath").toString())); if (CommonUtil.isNotNullOrEmpty(encodeRs)) { imageURLData = "data:image/jpg;base64," + encodeRs;