|
@@ -0,0 +1,74 @@
|
|
|
+package org.springblade.archive.controller;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
+import lombok.AllArgsConstructor;
|
|
|
+import org.apache.commons.lang.StringUtils;
|
|
|
+import org.springblade.archive.entity.ArchiveOfflineVersionInfo;
|
|
|
+import org.springblade.archive.mapper.ArchiveOfflineVersionInfoMapper;
|
|
|
+import org.springblade.archive.service.IArchiveOfflineVersionInfoService;
|
|
|
+import org.springblade.common.utils.CommonUtil;
|
|
|
+import org.springblade.core.oss.model.BladeFile;
|
|
|
+import org.springblade.core.tool.api.R;
|
|
|
+import org.springblade.resource.vo.NewBladeFile;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+import org.springframework.web.multipart.MultipartFile;
|
|
|
+
|
|
|
+import java.text.DecimalFormat;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @Param
|
|
|
+ * @Author wangwl
|
|
|
+ * @Date 2023/3/30 18:28
|
|
|
+ **/
|
|
|
+@RestController
|
|
|
+@AllArgsConstructor
|
|
|
+@RequestMapping("/archiveOfflineVersionInfo")
|
|
|
+@Api(value = "档案离线版本信息", tags = "档案离线版本信息")
|
|
|
+public class ArchiveOfflineVersionInfoController {
|
|
|
+
|
|
|
+ private final ArchiveOfflineVersionInfoMapper mapper;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 打包数据
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "打包数据")
|
|
|
+ @GetMapping("/packData")
|
|
|
+ public R<String> packData(Long projectId){
|
|
|
+ //异步调用自动打包上传,完成后修改数据库信息
|
|
|
+ return R.data("最新数据后台自动打包中,打包完成后会更新打包日期");
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 脱机载体工具
|
|
|
+ */
|
|
|
+ @ApiOperation(value = "脱机载体工具")
|
|
|
+ @GetMapping("/getVersionInfo")
|
|
|
+ public R<ArchiveOfflineVersionInfo> getVersionInfo(Long projectId){
|
|
|
+ ArchiveOfflineVersionInfo versionInfo = mapper.selectVersionInfo(111L);
|
|
|
+ String size = this.formatSize(Long.parseLong(versionInfo.getFileSize()));
|
|
|
+ versionInfo.setFileSize(size);
|
|
|
+ return R.data(versionInfo);
|
|
|
+ }
|
|
|
+ /**
|
|
|
+ * 根据字节返回文件大小
|
|
|
+ */
|
|
|
+ private String formatSize(long fileS) {
|
|
|
+ DecimalFormat df = new DecimalFormat("#.00");
|
|
|
+ String fileSizeString = "";
|
|
|
+ String wrongSize = "0B";
|
|
|
+ if (fileS == 0) {
|
|
|
+ return wrongSize;
|
|
|
+ }
|
|
|
+ if (fileS < 1024) {
|
|
|
+ fileSizeString = df.format((double) fileS) + "B";
|
|
|
+ } else if (fileS < 1048576) {
|
|
|
+ fileSizeString = df.format((double) fileS / 1024) + "KB";
|
|
|
+ } else if (fileS < 1073741824) {
|
|
|
+ fileSizeString = df.format((double) fileS / 1048576) + "MB";
|
|
|
+ } else {
|
|
|
+ fileSizeString = df.format((double) fileS / 1073741824) + "GB";
|
|
|
+ }
|
|
|
+ return fileSizeString;
|
|
|
+ }
|
|
|
+}
|