From 6c4bcfccf1d45adebb322c9bc2ce7ace982d3722 Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Tue, 2 Apr 2019 19:39:53 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../i3plus-core-apiservice/src/main/resources/application.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/i3plus-core-apiservice/src/main/resources/application.properties b/modules/i3plus-core-apiservice/src/main/resources/application.properties index 7cb09d4..872ea62 100644 --- a/modules/i3plus-core-apiservice/src/main/resources/application.properties +++ b/modules/i3plus-core-apiservice/src/main/resources/application.properties @@ -2,7 +2,7 @@ spring.application.name=${project.name} #使用配置 -spring.profiles.active=35 +spring.profiles.active=dev ######### 自定义参数 ######### #项目描述信息(swagger中显式),中文使用uncode转码 From 385b32179134773a22069b8a9264be8e4c683aa5 Mon Sep 17 00:00:00 2001 From: alwaysfrin <39822157+alwaysfrin@users.noreply.github.com> Date: Wed, 3 Apr 2019 18:14:12 +0800 Subject: [PATCH 2/3] =?UTF-8?q?hql=E5=B0=81=E8=A3=85=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/api/iservice/busi/ITestService.java | 4 +++ .../controller/DemoDdlPackController.java | 38 ++++++++++++++++++++++ .../apiservice/serviceimpl/busi/TestService.java | 5 +++ 3 files changed, 47 insertions(+) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ITestService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ITestService.java index beafac1..e48c209 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ITestService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ITestService.java @@ -1,5 +1,6 @@ package cn.estsh.i3plus.core.api.iservice.busi; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.platform.bean.SysUser; @@ -21,4 +22,7 @@ public interface ITestService { @ApiOperation(value = "条件查询") public ListPager querySysUserByPager(SysUser user, Pager pager); + + @ApiOperation(value = "in条件封装查询") + List querySysUserByPack(DdlPackBean packBean); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java index 1d5bfbe..f531ac8 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/DemoDdlPackController.java @@ -2,10 +2,13 @@ package cn.estsh.i3plus.core.apiservice.controller; import cn.estsh.i3plus.core.api.iservice.busi.ISysUserService; import cn.estsh.i3plus.core.api.iservice.busi.ITestService; +import cn.estsh.i3plus.pojo.base.bean.BaseResultBean; +import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.enumutil.ResourceEnumUtil; +import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; import cn.estsh.i3plus.pojo.base.tool.HqlPack; import cn.estsh.i3plus.pojo.platform.bean.SysUser; import cn.estsh.impp.framework.boot.exception.ImppBusiException; @@ -22,6 +25,8 @@ import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.sql.SQLException; +import java.util.ArrayList; +import java.util.List; @RestController @RequestMapping("/impp-ddl") @@ -44,4 +49,37 @@ public class DemoDdlPackController { return ResultBean.fail(busExcep); } } + + @GetMapping(value="/testpackin") + @ApiOperation(value="ddl封装in") + public BaseResultBean testDdlPackIn(int testType){ + String[] strArr = {"1","2"}; + Integer[] intArr = {1,2}; + + List strList = new ArrayList(); + strList.add("1"); + strList.add("2"); + + List intList = new ArrayList(); + intList.add(1); + intList.add(2); + + DdlPackBean packBean = new DdlPackBean(true); + if(testType == 1) { + DdlPreparedPack.getInPack("aaa", "userName", packBean); + }else if(testType == 2) { + DdlPreparedPack.getInPackArray(strArr, "userName", packBean); + }else if(testType == 3) { + DdlPreparedPack.getInPackArray(intArr, "userStatus", packBean); + }else if(testType == 4) { + DdlPreparedPack.getInPackList(strList, "userName", packBean); + }else if(testType == 5) { + DdlPreparedPack.getInPackList(intList, "userStatus", packBean); + } + List list = testService.querySysUserByPack(packBean); + + return ResultBean.success("用户数量:" + list.size()) + .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()) + .setResultList(list); + } } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java index 16b53c9..7d3b262 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/TestService.java @@ -75,4 +75,9 @@ public class TestService implements ITestService { return list; } + + @Override + public List querySysUserByPack(DdlPackBean packBean) { + return sysUserRDao.findByHqlWhere(packBean); + } } From 4d96152b3edb6c7ff48d7d05698251b5faa93d9e Mon Sep 17 00:00:00 2001 From: "yunhao.wang" Date: Wed, 3 Apr 2019 21:12:19 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=BE=AE=E6=9C=8D=E6=96=87=E4=BB=B6?= =?UTF-8?q?=E7=AE=A1=E7=90=86=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/api/iservice/busi/ISysFileService.java | 8 ++ .../controller/busi/SysFileController.java | 105 +++++++++++++-------- .../controller/busi/SysOrderNoRuleController.java | 1 + .../serviceimpl/busi/SysFileServiceImpl.java | 82 +++++++++++----- 4 files changed, 134 insertions(+), 62 deletions(-) diff --git a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileService.java b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileService.java index 92ab4ca..dc3940f 100644 --- a/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileService.java +++ b/modules/i3plus-core-api/src/main/java/cn/estsh/i3plus/core/api/iservice/busi/ISysFileService.java @@ -74,4 +74,12 @@ public interface ISysFileService { */ @ApiOperation(value = "上传文件资源",notes = "上传文件资源") SysFile uploadFile(Object file) throws Exception; + + /** + * 根据文件代码获取文件信息 + * @param fileCode + * @return + */ + @ApiOperation(value = "根据文件代码获取文件信息") + SysFile getSysFileByFileCode(String fileCode); } diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysFileController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysFileController.java index b5afd31..4f31cc8 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysFileController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysFileController.java @@ -3,7 +3,6 @@ package cn.estsh.i3plus.core.apiservice.controller.busi; import cn.estsh.i3plus.core.api.iservice.busi.ISysDictionaryService; import cn.estsh.i3plus.core.api.iservice.busi.ISysFileService; import cn.estsh.i3plus.platform.common.tool.StringTool; -import cn.estsh.i3plus.platform.common.util.CommonConstWords; import cn.estsh.i3plus.platform.common.util.PlatformConstWords; import cn.estsh.i3plus.pojo.base.bean.BaseConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; @@ -26,7 +25,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; - import javax.servlet.http.HttpServletResponse; import java.io.BufferedInputStream; import java.io.IOException; @@ -57,13 +55,14 @@ public class SysFileController extends CoreBaseController{ private FastDFSClient dfsClient; @PutMapping(value = "/update") - @ApiOperation(value = "修改文件资源",notes = "修改文件资源") + @ApiOperation(value = "修改文件资源", notes = "修改文件资源") public ResultBean updateSysFile(SysFile sysFile){ try { // 条件验证 ValidatorBean.beginValid(sysFile) - .notNull("id",sysFile.getId()) - .notNull("name",sysFile.getName()); + .notNull("id", sysFile.getId()) + .notNull("fileSoftType", sysFile.getFileSoftType()) + .notNull("name", sysFile.getName()); sysFileService.updateSysFile(sysFile); return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); @@ -75,10 +74,18 @@ public class SysFileController extends CoreBaseController{ } @DeleteMapping(value = "/delete/{id}") - @ApiOperation(value = "根据id删除文件资源",notes = "根据id删除文件资源") - public ResultBean deleteSysFileById(@PathVariable("id") String id){ + @ApiOperation(value = "根据id删除文件资源", notes = "根据id删除文件资源") + public ResultBean deleteSysFileById(@PathVariable("id") String idStr){ try { - sysFileService.deleteSysFileById(Long.parseLong(id)); + ValidatorBean.checkNotNull(idStr, "id不能为空"); + SysFile sysFile = sysFileService.getSysFileById(Long.parseLong(idStr)); + ValidatorBean.checkNotNull(sysFile, "文件信息不存在"); + + LOGGER.info("FastDFS删除文件 == groupName: {},name:{}", sysFile.getDfsGroupName(), sysFile.getDfsFileName()); + dfsClient.deleteFile(sysFile.getDfsGroupName(), sysFile.getDfsFileName()); + + sysFileService.deleteSysFileById(Long.parseLong(idStr)); + return ResultBean.success("操作成功").setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -88,7 +95,7 @@ public class SysFileController extends CoreBaseController{ } @GetMapping(value = "/list") - @ApiOperation(value = "查询全部文件资源",notes = "查询全部文件资源") + @ApiOperation(value = "查询全部文件资源", notes = "查询全部文件资源") public ResultBean findSysFileAll(SysFile sysFile){ try { List sysFileList = sysFileService.listSysFile(); @@ -103,12 +110,14 @@ public class SysFileController extends CoreBaseController{ } @GetMapping(value = "/get/{id}") - @ApiOperation(value = "根据id查询文件资源",notes = "根据id查询文件资源") + @ApiOperation(value = "根据id查询文件资源", notes = "根据id查询文件资源") public ResultBean getSysFileById(@PathVariable("id") String id){ try { - ValidatorBean.checkIsNumber(id,"id必须为数字"); + ValidatorBean.checkIsNumber(id, "id必须为数字"); SysFile sysFile = sysFileService.getSysFileById(Long.parseLong(id)); + ValidatorBean.checkNotNull(sysFile, "文件信息不存在"); + return ResultBean.success("操作成功") .setResultObject(sysFile) .setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); @@ -120,10 +129,10 @@ public class SysFileController extends CoreBaseController{ } @GetMapping(value = "/query") - @ApiOperation(value = "文件资源复杂查询,分页,排序",notes = "文件资源复杂查询,分页,排序") + @ApiOperation(value = "文件资源复杂查询,分页,排序", notes = "文件资源复杂查询,分页,排序") public ResultBean querySysFileByPager(SysFile sysFile, Pager pager){ try { - ListPager sysFileListPager = sysFileService.querySysFileByPager(sysFile,pager); + ListPager sysFileListPager = sysFileService.querySysFileByPager(sysFile, pager); return ResultBean.success("操作成功").setListPager(sysFileListPager).setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()); }catch(ImppBusiException busExcep){ return ResultBean.fail(busExcep); @@ -133,7 +142,7 @@ public class SysFileController extends CoreBaseController{ } @DeleteMapping(value = "/batch-delete") - @ApiOperation(value = "批量删除文件资源",notes = "批量删除文件资源") + @ApiOperation(value = "批量删除文件资源", notes = "批量删除文件资源") public ResultBean deleteSysFileByIds(String[] ids){ try{ if(ids.length == 0){ @@ -154,7 +163,7 @@ public class SysFileController extends CoreBaseController{ } @PostMapping("/upload") - @ApiOperation(value = "文件上传",notes = "文件上传") + @ApiOperation(value = "文件上传", notes = "文件上传") public ResultBean singleFileUpload(@RequestParam("file") MultipartFile file) { try { if(file.isEmpty()){ @@ -186,10 +195,10 @@ public class SysFileController extends CoreBaseController{ } @GetMapping("/download/{id}") - @ApiOperation(value = "文件下载",notes = "文件下载") + @ApiOperation(value = "文件下载", notes = "文件下载") public ResultBean singleDownload(@PathVariable("id")String id, HttpServletResponse response) { try { - ValidatorBean.checkIsNumber(id,"文件ID不能为空"); + ValidatorBean.checkIsNumber(id, "文件ID不能为空"); SysFile sysFile = sysFileService.getSysFileById(Long.parseLong(id)); if(sysFile == null){ @@ -210,22 +219,22 @@ public class SysFileController extends CoreBaseController{ .build(); } - response.setContentType("application/force-download");// 设置强制下载不打开 - response.addHeader("Content-Disposition", "attachment;fileName=" + sysFile.getFileOriginalName());// 设置文件名 - response.addHeader("Content-type", "application/octet-stream");// 设置文件名 + response.setContentType("application/force-download"); // 设置强制下载不打开 + response.addHeader("Content-Disposition", "attachment;fileName=" + sysFile.getFileOriginalName()); // 设置文件名 + response.addHeader("Content-type", "application/octet-stream"); // 设置文件名 BufferedInputStream bis = null; - try { - bis = new BufferedInputStream(fis); - OutputStream os = response.getOutputStream(); - byte[] buffer = new byte[1024]; - int i = bis.read(buffer); - while (i != -1) { - os.write(buffer, 0, i); - i = bis.read(buffer); - } - } catch (Exception e) { - e.printStackTrace(); + try { + bis = new BufferedInputStream(fis); + OutputStream os = response.getOutputStream(); + byte[] buffer = new byte[1024]; + int i = bis.read(buffer); + while (i != -1) { + os.write(buffer, 0, i); + i = bis.read(buffer); + } + } catch (Exception e) { + e.printStackTrace(); } finally { if (bis != null) { try { @@ -248,18 +257,19 @@ public class SysFileController extends CoreBaseController{ } @PostMapping(value = "/insert") - @ApiOperation(value = "新增文件资源",notes = "新增文件资源") + @ApiOperation(value = "新增文件资源", notes = "新增文件资源") public ResultBean insertSysFile(@RequestBody SysFile sysFile){ try { // 条件验证 ValidatorBean.beginValid(sysFile) - .notNull("dfsFileName",sysFile.getDfsFileName()) - .notNull("dfsGroupName",sysFile.getDfsGroupName()) - .notNull("fileOriginalName",sysFile.getFileOriginalName()); + .notNull("dfsFileName", sysFile.getDfsFileName()) + .notNull("dfsGroupName", sysFile.getDfsGroupName()) + .notNull("fileSoftType", sysFile.getFileSoftType()) + .notNull("fileOriginalName", sysFile.getFileOriginalName()); // 文件类型验证 SysDictionary dictionary = dictionaryService.getSysDictionaryByParentCodeAndCode(BaseConstWords.DICTIONARY_FILE_TYPE, - StringTool.getStringFileSuffix(sysFile.getFileOriginalName(),false)); + StringTool.getStringFileSuffix(sysFile.getFileOriginalName(), false)); if(dictionary == null){ throw ImppExceptionBuilder.newInstance() .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) @@ -282,4 +292,25 @@ public class SysFileController extends CoreBaseController{ } } -} \ No newline at end of file + /** + * 根据文件代码查询文件信息 + * @param fileCode 文件代码 + * @return 处理结果 + */ + @GetMapping("/get-file-code/{code}") + @ApiOperation(value = "根据文件代码查询文件信息") + public ResultBean getSysFileByFileCode(@PathVariable("code") String fileCode) { + try { + // 条件验证 + ValidatorBean.checkNotNull(fileCode, "文件代码不能为空"); + SysFile sysFile = sysFileService.getSysFileByFileCode(fileCode); + ValidatorBean.checkNotNull(sysFile, "文件信息不存在"); + + return ResultBean.success().setCode(ResourceEnumUtil.MESSAGE.SUCCESS.getCode()).setResultObject(sysFile); + }catch(ImppBusiException busExcep){ + return ResultBean.fail(busExcep); + }catch(Exception e){ + return ImppExceptionBuilder.newInstance().buildExceptionResult(e); + } + } +} diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java index 9cb85ea..5af58ae 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/controller/busi/SysOrderNoRuleController.java @@ -314,6 +314,7 @@ public class SysOrderNoRuleController extends CoreBaseController { SysFile sysFile = new SysFile(); sysFile.setDfsGroupName(fileAbsolutePath[0]); sysFile.setDfsFileName(fileAbsolutePath[1]); + sysFile.setFileSoftType(CommonEnumUtil.SOFT_TYPE.CORE.getValue()); sysFile.setFileSize(fastDFSFile.getContent().length); sysFile.setFilePath(filePath); sysFile.setFileOriginalName(fastDFSFile.getName()); diff --git a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java index 95cbdac..e09544c 100644 --- a/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java +++ b/modules/i3plus-core-apiservice/src/main/java/cn/estsh/i3plus/core/apiservice/serviceimpl/busi/SysFileServiceImpl.java @@ -8,11 +8,14 @@ import cn.estsh.i3plus.pojo.base.bean.BaseConstWords; import cn.estsh.i3plus.pojo.base.bean.ListPager; import cn.estsh.i3plus.pojo.base.common.Pager; import cn.estsh.i3plus.pojo.base.common.PagerHelper; +import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.platform.bean.SysDictionary; import cn.estsh.i3plus.pojo.platform.bean.SysFile; import cn.estsh.i3plus.pojo.platform.repository.SysDictionaryRepository; import cn.estsh.i3plus.pojo.platform.repository.SysFileRepository; import cn.estsh.i3plus.pojo.platform.sqlpack.CoreHqlPack; +import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; +import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.fastdfs.FastDFSClient; import cn.estsh.impp.framework.boot.fastdfs.FastDFSFile; import io.swagger.annotations.ApiOperation; @@ -21,7 +24,6 @@ import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.web.multipart.MultipartFile; - import java.io.File; import java.util.List; @@ -48,49 +50,73 @@ public class SysFileServiceImpl implements ISysFileService { @Override @ApiOperation(value = "新增资源信息") public SysFile insertSysFile(SysFile sysFile) { - LOGGER.info("文件资源 SYS_FILE :{}",sysFile); + LOGGER.info("文件资源 SYS_FILE :{}", sysFile); + if (sysFile.getFileCode() != null) { + SysFile fileCode = sysFileRDao.getByProperty("fileCode", sysFile.getFileCode()); + if (fileCode != null) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("文件代码已存在。") + .setErrorSolution("请更换文件代码") + .build(); + } + } + return sysFileRDao.insert(sysFile); } @Override @ApiOperation(value = "更新资源信息") public void updateSysFile(SysFile sysFile) { - LOGGER.info("文件资源 SYS_FILE :{}",sysFile); + LOGGER.info("文件资源 SYS_FILE :{}", sysFile); + if (sysFile.getFileCode() != null) { + List list = sysFileRDao.findByHqlWhere(CoreHqlPack.packHqlSysFileCode(sysFile)); + if (list != null && list.size() > 0) { + throw ImppExceptionBuilder.newInstance() + .setSystemID(CommonEnumUtil.SOFT_TYPE.CORE.getCode()) + .setErrorCode(ImppExceptionEnum.VARIFY_EXCEPTION.getCode()) + .setErrorDetail("文件代码已存在。") + .setErrorSolution("请更换文件代码") + .build(); + } + } + sysFileRDao.update(sysFile); } @Override - @ApiOperation(value = "查询资源信息",notes = "查询所有资源信息") + @ApiOperation(value = "查询资源信息", notes = "查询所有资源信息") public List listSysFile() { LOGGER.info("文件资源 SYS_FILE list"); return sysFileRDao.list(); } @Override - @ApiOperation(value = "查询资源信息",notes = "根据 ID查询资源信息") + @ApiOperation(value = "查询资源信息", notes = "根据 ID查询资源信息") public SysFile getSysFileById(Long id) { - LOGGER.info("文件资源 SYS_FILE id:{}",id); + LOGGER.info("文件资源 SYS_FILE id:{}", id); return sysFileRDao.getById(id); } @Override - @ApiOperation(value = "查询资源信息",notes = "查询资源信息(分页、组合)") + @ApiOperation(value = "查询资源信息", notes = "查询资源信息(分页、组合)") public ListPager querySysFileByPager(SysFile sysFile, Pager pager) { - LOGGER.info("文件资源 SYS_FILE sysFile:{},Pager:{}",sysFile,pager); - if(sysFile == null) { + LOGGER.info("文件资源 SYS_FILE sysFile:{},Pager:{}", sysFile, pager); + if (sysFile == null) { pager = PagerHelper.getPager(pager, sysFileRDao.listCount()); - return new ListPager(sysFileRDao.listPager(pager),pager); - }else { + return new ListPager(sysFileRDao.listPager(pager), pager); + } else { String hqlPack = CoreHqlPack.packHqlSysFile(sysFile); pager = PagerHelper.getPager(pager, sysFileRDao.findByHqlWhereCount(hqlPack)); - return new ListPager(sysFileRDao.findByHqlWherePage(hqlPack + sysFile.orderBy(),pager),pager); + return new ListPager(sysFileRDao.findByHqlWherePage(hqlPack + sysFile.orderBy(), pager), pager); } } @Override - @ApiOperation(value = "删除资源信息",notes = "根据ID删除资源信息") + @ApiOperation(value = "删除资源信息", notes = "根据ID删除资源信息") public void deleteSysFileById(Long id) { - LOGGER.info("文件资源 SYS_FILE id:{}",id); + LOGGER.info("文件资源 SYS_FILE id:{}", id); sysFileRDao.deleteById(id); } @@ -101,33 +127,34 @@ public class SysFileServiceImpl implements ISysFileService { } @Override - @ApiOperation(value = "上传文件资源",notes = "上传文件资源") - public SysFile uploadFile(Object file) throws Exception{ + @ApiOperation(value = "上传文件资源", notes = "上传文件资源") + public SysFile uploadFile(Object file) throws Exception { FastDFSFile fastDFSFile; // 判断参数类型 - if(file instanceof File){ - fastDFSFile = new FastDFSFile(((File)file).getName(), FileUtil.file2Byte(((File)file).getPath()), - StringTool.getStringFileSuffix(((File)file).getName(),true)); - }else{ - fastDFSFile = dfsClient.saveFile((MultipartFile) file); + if (file instanceof File) { + fastDFSFile = new FastDFSFile((( File ) file).getName(), FileUtil.file2Byte((( File ) file).getPath()), + StringTool.getStringFileSuffix((( File ) file).getName(), true)); + } else { + fastDFSFile = dfsClient.saveFile(( MultipartFile ) file); } String[] fileAbsolutePath = dfsClient.upload(fastDFSFile); // 保存到系统文件表中 String filePath = dfsClient.getHostUi() + "/" + fileAbsolutePath[0] + "/" + fileAbsolutePath[1]; - SysDictionary dictionary = sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd","dictionaryValue"}, + SysDictionary dictionary = sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd", "dictionaryValue"}, new Object[]{BaseConstWords.DICTIONARY_FILE_TYPE, fastDFSFile.getExt()}); - if(dictionary == null){ - dictionary = sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd","dictionaryValue"}, - new Object[]{BaseConstWords.DICTIONARY_FILE_TYPE, "."+fastDFSFile.getExt()}); + if (dictionary == null) { + dictionary = sysDictionaryRDao.getByProperty(new String[]{"parentCodeRdd", "dictionaryValue"}, + new Object[]{BaseConstWords.DICTIONARY_FILE_TYPE, "." + fastDFSFile.getExt()}); } SysFile sysFile = new SysFile(); sysFile.setDfsGroupName(fileAbsolutePath[0]); sysFile.setDfsFileName(fileAbsolutePath[1]); + sysFile.setFileSoftType(CommonEnumUtil.SOFT_TYPE.CORE.getValue()); sysFile.setFileSize(fastDFSFile.getContent().length); sysFile.setFilePath(filePath); sysFile.setFileOriginalName(fastDFSFile.getName()); @@ -138,4 +165,9 @@ public class SysFileServiceImpl implements ISysFileService { return insertSysFile(sysFile); } + + @Override + public SysFile getSysFileByFileCode(String fileCode) { + return sysFileRDao.getByProperty("fileCode", fileCode); + } }