diff --git a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAccumulateController.java b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAccumulateController.java index dbde976..e836d4a 100644 --- a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAccumulateController.java +++ b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAccumulateController.java @@ -95,7 +95,7 @@ public class DeviceDataAccumulateController { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); - String fileName = URLEncoder.encode("積算データ", StandardCharsets.UTF_8).replace("+", "%20"); + String fileName = URLEncoder.encode("積算データ"+CommonUtil.generateSuffix(), StandardCharsets.UTF_8).replace("+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); PageInfo pageData = deviceDataAccumulateService.getDataList(pageSearchParam, CompanyId, UserId, LanguageType); diff --git a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAlarmController.java b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAlarmController.java index 7fbe789..fd4f6d9 100644 --- a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAlarmController.java +++ b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataAlarmController.java @@ -17,6 +17,7 @@ import com.dongjian.dashboard.back.dto.device.WindowAlertQueryRequest; import com.dongjian.dashboard.back.easyexcel.ExportDeviceAlarmDataDTO; import com.dongjian.dashboard.back.easyexcel.LanguageDynamicHeaderAdapter; import com.dongjian.dashboard.back.service.DeviceDataAlarmService; +import com.dongjian.dashboard.back.util.CommonUtil; import com.dongjian.dashboard.back.vo.data.DeviceAlarmData; import com.dongjian.dashboard.back.vo.data.HandleHistoryDataVO; import com.dongjian.dashboard.back.vo.device.WindowAlertVO; @@ -94,7 +95,7 @@ public class DeviceDataAlarmController { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); - String fileName = URLEncoder.encode("警報データ", StandardCharsets.UTF_8).replace("+", "%20"); + String fileName = URLEncoder.encode("警報データ"+ CommonUtil.generateSuffix(), StandardCharsets.UTF_8).replace("+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); PageInfo pageData = deviceDataAlarmService.getDataList(pageSearchParam, CompanyId, UserId, LanguageType); diff --git a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataBaStatusController.java b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataBaStatusController.java index 020373d..1f1c62b 100644 --- a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataBaStatusController.java +++ b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataBaStatusController.java @@ -15,6 +15,7 @@ import com.dongjian.dashboard.back.easyexcel.ExportDeviceBaStatusDataDTO; import com.dongjian.dashboard.back.easyexcel.LanguageDynamicHeaderAdapter; import com.dongjian.dashboard.back.service.DeviceDataBaStatusService; import com.dongjian.dashboard.back.service.common.CommonOpt; +import com.dongjian.dashboard.back.util.CommonUtil; import com.dongjian.dashboard.back.vo.data.DeviceBaStatusData; import com.dongjian.dashboard.back.vo.device.LineData; import io.swagger.v3.oas.annotations.Operation; @@ -93,7 +94,7 @@ public class DeviceDataBaStatusController { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); - String fileName = URLEncoder.encode("稼働設備", StandardCharsets.UTF_8).replace("+", "%20"); + String fileName = URLEncoder.encode("稼働設備"+ CommonUtil.generateSuffix(), StandardCharsets.UTF_8).replace("+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); PageInfo pageData = deviceDataBaStatusService.getDataList(pageSearchParam, CompanyId, UserId, LanguageType); diff --git a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataMeasureController.java b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataMeasureController.java index 6d067bd..ee2ba0c 100644 --- a/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataMeasureController.java +++ b/dongjian-dashboard-back-controller/src/main/java/com/dongjian/dashboard/back/controller/DeviceDataMeasureController.java @@ -15,6 +15,7 @@ import com.dongjian.dashboard.back.easyexcel.ExportDeviceMeasureDataDTO; import com.dongjian.dashboard.back.easyexcel.LanguageDynamicHeaderAdapter; import com.dongjian.dashboard.back.service.DeviceDataMeasureService; import com.dongjian.dashboard.back.service.common.CommonOpt; +import com.dongjian.dashboard.back.util.CommonUtil; import com.dongjian.dashboard.back.vo.data.DeviceMeasureData; import com.dongjian.dashboard.back.vo.device.LineData; import io.swagger.v3.oas.annotations.Operation; @@ -93,7 +94,7 @@ public class DeviceDataMeasureController { response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); response.setCharacterEncoding("utf-8"); - String fileName = URLEncoder.encode("計測データ", StandardCharsets.UTF_8).replace("+", "%20"); + String fileName = URLEncoder.encode("計測データ"+ CommonUtil.generateSuffix(), StandardCharsets.UTF_8).replace("+", "%20"); response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); PageInfo pageData = deviceDataMeasureService.getDataList(pageSearchParam, CompanyId, UserId, LanguageType); diff --git a/dongjian-dashboard-back-util/src/main/java/com/dongjian/dashboard/back/util/CommonUtil.java b/dongjian-dashboard-back-util/src/main/java/com/dongjian/dashboard/back/util/CommonUtil.java index 557eb2a..5ba116d 100644 --- a/dongjian-dashboard-back-util/src/main/java/com/dongjian/dashboard/back/util/CommonUtil.java +++ b/dongjian-dashboard-back-util/src/main/java/com/dongjian/dashboard/back/util/CommonUtil.java @@ -5,6 +5,9 @@ import java.math.BigDecimal; import java.math.RoundingMode; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.ZoneId; +import java.time.format.DateTimeFormatter; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -874,4 +877,11 @@ public class CommonUtil { BigDecimal result = numA.divide(numB, 2, RoundingMode.HALF_UP); return result.multiply(new BigDecimal(100)).toPlainString() + "%"; } + + public static String generateSuffix() { + String date = LocalDate.now(ZoneId.of("Asia/Tokyo")) + .format(DateTimeFormatter.ofPattern("yyyyMMdd")); + long timestampSeconds = System.currentTimeMillis() / 1000; + return "_" + date + "_" + timestampSeconds; + } }