@@ -38,10 +38,11 @@ public class FileDownloadController { | |||||
@GetMapping("/fs/files/**") | @GetMapping("/fs/files/**") | ||||
public ResponseEntity<InputStreamResource> files(@RequestParam(value = "name", required = false) String name, | public ResponseEntity<InputStreamResource> files(@RequestParam(value = "name", required = false) String name, | ||||
@RequestParam(value = "noCache", required = false) Boolean noCache, | @RequestParam(value = "noCache", required = false) Boolean noCache, | ||||
@RequestParam(value = "absolutePath", required = false) Boolean absolutePath, | |||||
HttpServletRequest request | HttpServletRequest request | ||||
) throws FileNotFoundException { | ) throws FileNotFoundException { | ||||
String filePath = request.getRequestURI().substring(10); | String filePath = request.getRequestURI().substring(10); | ||||
return download(filePath, name, noCache, request); | |||||
return download(filePath, name, noCache,absolutePath, request); | |||||
} | } | ||||
/** | /** | ||||
@@ -51,9 +52,10 @@ public class FileDownloadController { | |||||
public ResponseEntity<InputStreamResource> download(@RequestParam(value = "path") String path, | public ResponseEntity<InputStreamResource> download(@RequestParam(value = "path") String path, | ||||
@RequestParam(value = "name", required = false) String name, | @RequestParam(value = "name", required = false) String name, | ||||
@RequestParam(value = "noCache", required = false) Boolean noCache, | @RequestParam(value = "noCache", required = false) Boolean noCache, | ||||
@RequestParam(value = "absolutePath", required = false) Boolean absolutePath, | |||||
HttpServletRequest request | HttpServletRequest request | ||||
) throws FileNotFoundException { | ) throws FileNotFoundException { | ||||
File file = new File(filePathGenerator.getFileDiskPath(path)); | |||||
File file = new File(absolutePath? path:filePathGenerator.getFileDiskPath(path)); | |||||
if (!file.exists()) { | if (!file.exists()) { | ||||
return ResponseEntity.status(HttpStatus.NOT_FOUND).build(); | return ResponseEntity.status(HttpStatus.NOT_FOUND).build(); | ||||
@@ -1,9 +1,18 @@ | |||||
package cc.smtweb.system.bpm.web.sys.base.dict; | package cc.smtweb.system.bpm.web.sys.base.dict; | ||||
import cc.smtweb.framework.core.annotation.SwBody; | |||||
import cc.smtweb.framework.core.annotation.SwService; | import cc.smtweb.framework.core.annotation.SwService; | ||||
import cc.smtweb.framework.core.common.R; | |||||
import cc.smtweb.framework.core.common.SwMap; | |||||
import cc.smtweb.framework.core.mvc.service.AbstractHandler; | import cc.smtweb.framework.core.mvc.service.AbstractHandler; | ||||
import cc.smtweb.framework.core.session.UserSession; | |||||
import cc.smtweb.system.bpm.web.engine.dynPage.DynPageLoadHandler; | |||||
import cc.smtweb.system.bpm.web.engine.dynPage.DynPageService; | import cc.smtweb.system.bpm.web.engine.dynPage.DynPageService; | ||||
import java.io.File; | |||||
import java.io.FileOutputStream; | |||||
import java.nio.charset.StandardCharsets; | |||||
/** | /** | ||||
* Created by 1 at 2022-07-28 09:23:54 | * Created by 1 at 2022-07-28 09:23:54 | ||||
* 页面【[数据字典]的服务类 | * 页面【[数据字典]的服务类 | ||||
@@ -19,5 +28,18 @@ public class DictService extends DynPageService { | |||||
} | } | ||||
return super.createHandler(type); | return super.createHandler(type); | ||||
} | } | ||||
//新增 | |||||
public R exportExcel(@SwBody SwMap params, UserSession us) { | |||||
try { | |||||
File tempFile = File.createTempFile("xls_", ".txt", new File(System.getProperty("java.io.tmpdir"))); | |||||
FileOutputStream fs = new FileOutputStream(tempFile); | |||||
fs.write("flypht-唐海鹏".getBytes(StandardCharsets.UTF_8)); | |||||
SwMap swMap = new SwMap(); | |||||
swMap.put("fileName",tempFile.getName()); | |||||
swMap.put("filePath",tempFile.getAbsolutePath()); | |||||
return R.success(swMap); | |||||
}catch (Exception e){ | |||||
return R.error("导出失败!"); | |||||
} | |||||
} | |||||
} | } |
@@ -14,9 +14,17 @@ window.$swEvent.setup("bpm.sys.base.dict.dictList", { | |||||
const afterDelDict = () => { | const afterDelDict = () => { | ||||
$api.loadOne("dictList"); | $api.loadOne("dictList"); | ||||
}; | }; | ||||
const exportExcel = () => { | |||||
$$http.post("bpm/dict/exportExcel").then( (rt) => { | |||||
console.info("exportExcel:",rt); | |||||
const url = $$http.downloadFileUrl(rt.data.filePath,rt.data.fileName,true); | |||||
$$http.downloadFile(url,{fileName: rt.data.fileName}); | |||||
}); | |||||
} | |||||
return { | return { | ||||
afterDelDictType, | afterDelDictType, | ||||
afterDelDict, | afterDelDict, | ||||
exportExcel, | |||||
} | } | ||||
} | } | ||||
}); | }); |