diff --git a/src/main/java/com/dbnt/kcgfilemanager/controller/adminController.java b/src/main/java/com/dbnt/kcgfilemanager/controller/adminController.java index 92e115b..34bd1d2 100644 --- a/src/main/java/com/dbnt/kcgfilemanager/controller/adminController.java +++ b/src/main/java/com/dbnt/kcgfilemanager/controller/adminController.java @@ -7,6 +7,8 @@ import lombok.RequiredArgsConstructor; import org.springframework.web.bind.annotation.*; import org.springframework.web.servlet.ModelAndView; +import java.io.File; +import java.util.ArrayList; import java.util.HashMap; import java.util.LinkedHashMap; import java.util.List; @@ -31,6 +33,7 @@ public class adminController { boardLog.setContentCnt(boardService.selectBoardLogListCnt(boardLog)); boardLog.setPaginationInfo(); mav.addObject("searchParams", boardLog); + mav.addObject("diskInfoList", boardService.getDiskInfoList()); return mav; } @GetMapping("/categoryMgt") diff --git a/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java b/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java index 026ca5f..0553a70 100644 --- a/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java +++ b/src/main/java/com/dbnt/kcgfilemanager/service/BoardService.java @@ -11,10 +11,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.File; import java.io.IOException; -import java.util.ArrayList; -import java.util.List; -import java.util.Objects; -import java.util.UUID; +import java.util.*; @Service @RequiredArgsConstructor @@ -148,7 +145,7 @@ public class BoardService { fileInfo.setOriginalName(originalFilename[0]); fileInfo.setExtention(originalFilename[1]); fileInfo.setConversionName(saveName); - fileInfo.setFileSize(calculationFileSize(file.getSize())); + fileInfo.setFileSize(calculationSize(file.getSize())); fileInfo.setSavePath(path); fileInfoRepository.save(fileInfo); saveBoardLog(content.getContentSeq(), LogStatus.FILE_ADD, fileInfo.getFullName(), userId); @@ -280,8 +277,8 @@ public class BoardService { File deleteFile = new File(savePath, conversionName); deleteFile.delete(); } - private String calculationFileSize(Long fileSize){ - String[] units = {"bytes", "KB", "MB"}; + private String calculationSize(double fileSize){ + String[] units = {"bytes", "KB", "MB", "GB", "TB", "PB"}; double unitSelector = Math.floor(Math.log(fileSize)/Math.log(1024)); return Math.round((fileSize/Math.pow(1024, unitSelector))*100)/100d+" "+units[(int)unitSelector]; } @@ -293,4 +290,24 @@ public class BoardService { public Integer selectBoardLogListCnt(BoardLog boardLog) { return boardMapper.selectBoardLogListCnt(boardLog); } + + public List> getDiskInfoList() { + /*저장공간 확인*/ + File[] drives = File.listRoots(); + List> diskInfoList = new ArrayList<>(); + for(File drive : drives) { + double totalSize = drive.getTotalSpace(); + double useSize = drive.getUsableSpace(); + double freeSize = totalSize - useSize; + + HashMap diskInfo = new HashMap<>(); + diskInfo.put("driveName", drive.getAbsolutePath()); + diskInfo.put("totalSize", calculationSize(totalSize)); + diskInfo.put("useSize", calculationSize(useSize)); + diskInfo.put("freeSize", calculationSize(freeSize)); + diskInfo.put("useSizePer", Math.round(useSize/totalSize*10000)/100d); + diskInfoList.add(diskInfo); + } + return diskInfoList; + } } diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index ad97695..371fa95 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -13,9 +13,9 @@ spring.thymeleaf.cache=false #mariaDB & log4jdbc spring.datasource.driverClassName=net.sf.log4jdbc.sql.jdbcapi.DriverSpy -spring.datasource.url=jdbc:log4jdbc:mariadb://cks0504.iptime.org:3306/kcg_fm?characterEncoding=UTF-8&serverTimezone=UTC +spring.datasource.url=jdbc:log4jdbc:mariadb://localhost:3306/kcgFileManager?characterEncoding=UTF-8&serverTimezone=UTC spring.datasource.username=root -spring.datasource.password=mariadb#0524 +spring.datasource.password=kcg211228 #jpa spring.jpa.show-sql=true diff --git a/src/main/resources/templates/admin/main.html b/src/main/resources/templates/admin/main.html index cac58cb..43b76e7 100644 --- a/src/main/resources/templates/admin/main.html +++ b/src/main/resources/templates/admin/main.html @@ -2,6 +2,26 @@ + + +

관리자 메인 페이지

@@ -11,6 +31,21 @@
저장공간
+ +
+
+
+
+ +
+
+
+
전체 용량:
+
사용중:
+
빈 공간:
+
+
+
전체 이력