From e65f91466307301b81ee349a9e27bbccb550dbba Mon Sep 17 00:00:00 2001 From: Machengtianjiang Date: Tue, 5 Jan 2021 11:29:25 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A1=A8=E5=8D=95=E7=9A=84=E5=AF=BC=E5=87=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ruoyi/winery/component/MiniComponent.java | 3 +- .../controller/NewsContentController.java | 63 +- .../controller/mini/MiniController.java | 2 +- .../WineryCompanyRecordController.java | 10 +- .../WineryFoodSafetyController.java | 4 +- .../{ => winery}/WineryGoodsController.java | 4 +- .../WineryGoodsSpecController.java | 4 +- .../{ => winery}/WineryMauserController.java | 4 +- .../{ => winery}/WineryOrdersController.java | 4 +- .../WineryWineSpecDetailController.java | 4 +- .../{ => winery}/WineryCompanyRecord.java | 2 +- .../domain/{ => winery}/WineryFoodSafety.java | 2 +- .../domain/{ => winery}/WineryGoods.java | 2 +- .../domain/{ => winery}/WineryGoodsSpec.java | 2 +- .../domain/{ => winery}/WineryMauser.java | 2 +- .../domain/{ => winery}/WineryOrders.java | 2 +- .../{ => winery}/WineryWineSpecDetail.java | 2 +- .../mapper/WineryCompanyRecordMapper.java | 2 +- .../winery/mapper/WineryFoodSafetyMapper.java | 2 +- .../winery/mapper/WineryGoodsMapper.java | 2 +- .../winery/mapper/WineryGoodsSpecMapper.java | 2 +- .../winery/mapper/WineryMauserMapper.java | 2 +- .../winery/mapper/WineryOrdersMapper.java | 2 +- .../mapper/WineryWineSpecDetailMapper.java | 2 +- .../service/IWineryCompanyRecordService.java | 2 +- .../service/IWineryFoodSafetyService.java | 2 +- .../winery/service/IWineryGoodsService.java | 2 +- .../service/IWineryGoodsSpecService.java | 2 +- .../winery/service/IWineryMauserService.java | 2 +- .../winery/service/IWineryOrdersService.java | 2 +- .../service/IWineryWineSpecDetailService.java | 2 +- .../impl/WineryCompanyRecordServiceImpl.java | 2 +- .../impl/WineryFoodSafetyServiceImpl.java | 2 +- .../service/impl/WineryGoodsServiceImpl.java | 2 +- .../impl/WineryGoodsSpecServiceImpl.java | 2 +- .../service/impl/WineryMauserServiceImpl.java | 2 +- .../service/impl/WineryOrdersServiceImpl.java | 2 +- .../impl/WineryWineSpecDetailServiceImpl.java | 2 +- .../com/ruoyi/common/utils/file/CosUtils.java | 23 + .../com/ruoyi/common/utils/poi/ExcelUtil.java | 550 +++++++----------- .../src/views/news/news_content/index.vue | 51 +- 41 files changed, 320 insertions(+), 462 deletions(-) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryCompanyRecordController.java (96%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryFoodSafetyController.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryGoodsController.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryGoodsSpecController.java (97%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryMauserController.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryOrdersController.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/controller/{ => winery}/WineryWineSpecDetailController.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryCompanyRecord.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryFoodSafety.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryGoods.java (97%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryGoodsSpec.java (97%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryMauser.java (97%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryOrders.java (98%) rename hope-winery/src/main/java/com/ruoyi/winery/domain/{ => winery}/WineryWineSpecDetail.java (98%) diff --git a/hope-winery/src/main/java/com/ruoyi/winery/component/MiniComponent.java b/hope-winery/src/main/java/com/ruoyi/winery/component/MiniComponent.java index a719f61d4..d58963600 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/component/MiniComponent.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/component/MiniComponent.java @@ -5,9 +5,8 @@ import cn.binarywang.wx.miniapp.bean.WxMaJscode2SessionResult; import cn.binarywang.wx.miniapp.bean.WxMaPhoneNumberInfo; import cn.hutool.core.util.StrUtil; import cn.hutool.json.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.ruoyi.common.core.redis.RedisCache; -import com.ruoyi.winery.domain.WineryMauser; +import com.ruoyi.winery.domain.winery.WineryMauser; import com.ruoyi.winery.service.IWineryMauserService; import lombok.extern.slf4j.Slf4j; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/NewsContentController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/NewsContentController.java index 3a1b202e6..123a71fa5 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/NewsContentController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/NewsContentController.java @@ -30,13 +30,13 @@ import com.ruoyi.common.core.page.TableDataInfo; /** * 新闻资讯Controller - * + * * @author ruoyi * @date 2020-12-31 */ @RequiredArgsConstructor(onConstructor_ = @Autowired) @RestController -@RequestMapping("/news/news_content" ) +@RequestMapping("/news/news_content") public class NewsContentController extends BaseController { private final INewsContentService iNewsContentService; @@ -46,27 +46,26 @@ public class NewsContentController extends BaseController { */ @PreAuthorize("@ss.hasPermi('news:news_content:list')") @GetMapping("/list") - public TableDataInfo list(NewsContent newsContent) - { + public TableDataInfo list(UsernamePasswordAuthenticationToken token, NewsContent newsContent) { startPage(); LambdaQueryWrapper lqw = Wrappers.lambdaQuery(newsContent); - if (newsContent.getDeptId() != null){ - lqw.eq(NewsContent::getDeptId ,newsContent.getDeptId()); + + lqw.eq(NewsContent::getDeptId, getDeptId(token)); + + if (StringUtils.isNotBlank(newsContent.getNewsTitle())) { + lqw.eq(NewsContent::getNewsTitle, newsContent.getNewsTitle()); } - if (StringUtils.isNotBlank(newsContent.getNewsTitle())){ - lqw.eq(NewsContent::getNewsTitle ,newsContent.getNewsTitle()); + if (StringUtils.isNotBlank(newsContent.getNewsBody())) { + lqw.eq(NewsContent::getNewsBody, newsContent.getNewsBody()); } - if (StringUtils.isNotBlank(newsContent.getNewsBody())){ - lqw.eq(NewsContent::getNewsBody ,newsContent.getNewsBody()); + if (StringUtils.isNotBlank(newsContent.getNewsImage())) { + lqw.eq(NewsContent::getNewsImage, newsContent.getNewsImage()); } - if (StringUtils.isNotBlank(newsContent.getNewsImage())){ - lqw.eq(NewsContent::getNewsImage ,newsContent.getNewsImage()); + if (newsContent.getNewsType() != null) { + lqw.eq(NewsContent::getNewsType, newsContent.getNewsType()); } - if (newsContent.getNewsType() != null){ - lqw.eq(NewsContent::getNewsType ,newsContent.getNewsType()); - } - if (newsContent.getState() != null){ - lqw.eq(NewsContent::getState ,newsContent.getState()); + if (newsContent.getState() != null) { + lqw.eq(NewsContent::getState, newsContent.getState()); } List list = iNewsContentService.list(lqw); return getDataTable(list); @@ -75,30 +74,30 @@ public class NewsContentController extends BaseController { /** * 导出新闻资讯列表 */ - @PreAuthorize("@ss.hasPermi('news:news_content:export')" ) - @Log(title = "新闻资讯" , businessType = BusinessType.EXPORT) - @GetMapping("/export" ) + @PreAuthorize("@ss.hasPermi('news:news_content:export')") + @Log(title = "新闻资讯", businessType = BusinessType.EXPORT) + @GetMapping("/export") public AjaxResult export(NewsContent newsContent) { LambdaQueryWrapper lqw = new LambdaQueryWrapper(newsContent); List list = iNewsContentService.list(lqw); - ExcelUtil util = new ExcelUtil(NewsContent. class); - return util.exportExcel(list, "news_content" ); + ExcelUtil util = new ExcelUtil(NewsContent.class); + return util.exportExcel(list, "news_content"); } /** * 获取新闻资讯详细信息 */ - @PreAuthorize("@ss.hasPermi('news:news_content:query')" ) - @GetMapping(value = "/{id}" ) - public AjaxResult getInfo(@PathVariable("id" ) String id) { + @PreAuthorize("@ss.hasPermi('news:news_content:query')") + @GetMapping(value = "/{id}") + public AjaxResult getInfo(@PathVariable("id") String id) { return AjaxResult.success(iNewsContentService.getById(id)); } /** * 新增新闻资讯 */ - @PreAuthorize("@ss.hasPermi('news:news_content:add')" ) - @Log(title = "新闻资讯" , businessType = BusinessType.INSERT) + @PreAuthorize("@ss.hasPermi('news:news_content:add')") + @Log(title = "新闻资讯", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(UsernamePasswordAuthenticationToken token, @RequestBody NewsContent newsContent) { newsContent.setDeptId(getDeptId(token)); @@ -108,8 +107,8 @@ public class NewsContentController extends BaseController { /** * 修改新闻资讯 */ - @PreAuthorize("@ss.hasPermi('news:news_content:edit')" ) - @Log(title = "新闻资讯" , businessType = BusinessType.UPDATE) + @PreAuthorize("@ss.hasPermi('news:news_content:edit')") + @Log(title = "新闻资讯", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody NewsContent newsContent) { return toAjax(iNewsContentService.updateById(newsContent) ? 1 : 0); @@ -118,9 +117,9 @@ public class NewsContentController extends BaseController { /** * 删除新闻资讯 */ - @PreAuthorize("@ss.hasPermi('news:news_content:remove')" ) - @Log(title = "新闻资讯" , businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}" ) + @PreAuthorize("@ss.hasPermi('news:news_content:remove')") + @Log(title = "新闻资讯", businessType = BusinessType.DELETE) + @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable String[] ids) { return toAjax(iNewsContentService.removeByIds(Arrays.asList(ids)) ? 1 : 0); } diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/mini/MiniController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/mini/MiniController.java index fe404042e..9d2b81ec0 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/mini/MiniController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/mini/MiniController.java @@ -8,7 +8,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.winery.component.MiniComponent; -import com.ruoyi.winery.domain.WineryCompanyRecord; +import com.ruoyi.winery.domain.winery.WineryCompanyRecord; import com.ruoyi.winery.enums.IrrigationTypeEnum; import com.ruoyi.winery.enums.SoilTypeEnum; import com.ruoyi.winery.enums.WineryStatusEnum; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryCompanyRecordController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryCompanyRecordController.java similarity index 96% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryCompanyRecordController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryCompanyRecordController.java index b610b6f22..fd0e15d8f 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryCompanyRecordController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryCompanyRecordController.java @@ -1,21 +1,15 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; -import cn.hutool.json.JSON; -import cn.hutool.json.JSONObject; -import cn.hutool.json.JSONUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import java.security.Principal; import java.util.List; import java.util.Arrays; -import com.ruoyi.common.annotation.DataScope; import com.ruoyi.common.utils.StringUtils; import lombok.RequiredArgsConstructor; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.authentication.UsernamePasswordAuthenticationToken; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -28,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryCompanyRecord; +import com.ruoyi.winery.domain.winery.WineryCompanyRecord; import com.ruoyi.winery.service.IWineryCompanyRecordService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryFoodSafetyController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryFoodSafetyController.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryFoodSafetyController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryFoodSafetyController.java index 598d82c56..72290ac19 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryFoodSafetyController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryFoodSafetyController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryFoodSafety; +import com.ruoyi.winery.domain.winery.WineryFoodSafety; import com.ruoyi.winery.service.IWineryFoodSafetyService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsController.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsController.java index 11d7367c6..c89d4ebcb 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryGoods; +import com.ruoyi.winery.domain.winery.WineryGoods; import com.ruoyi.winery.service.IWineryGoodsService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsSpecController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsSpecController.java similarity index 97% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsSpecController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsSpecController.java index 3c89e6194..cc71dc665 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryGoodsSpecController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryGoodsSpecController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryGoodsSpec; +import com.ruoyi.winery.domain.winery.WineryGoodsSpec; import com.ruoyi.winery.service.IWineryGoodsSpecService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryMauserController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryMauserController.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryMauserController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryMauserController.java index cc6b25fb8..60c4a58ab 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryMauserController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryMauserController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryMauser; +import com.ruoyi.winery.domain.winery.WineryMauser; import com.ruoyi.winery.service.IWineryMauserService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryOrdersController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryOrdersController.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryOrdersController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryOrdersController.java index f0464075c..b81c2c7d4 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryOrdersController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryOrdersController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryOrders; +import com.ruoyi.winery.domain.winery.WineryOrders; import com.ruoyi.winery.service.IWineryOrdersService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryWineSpecDetailController.java b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryWineSpecDetailController.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/controller/WineryWineSpecDetailController.java rename to hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryWineSpecDetailController.java index 005615b30..b59df8d8b 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/controller/WineryWineSpecDetailController.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/controller/winery/WineryWineSpecDetailController.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.controller; +package com.ruoyi.winery.controller.winery; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; @@ -22,7 +22,7 @@ import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.BaseController; import com.ruoyi.common.core.domain.AjaxResult; import com.ruoyi.common.enums.BusinessType; -import com.ruoyi.winery.domain.WineryWineSpecDetail; +import com.ruoyi.winery.domain.winery.WineryWineSpecDetail; import com.ruoyi.winery.service.IWineryWineSpecDetailService; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.common.core.page.TableDataInfo; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryCompanyRecord.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryCompanyRecord.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryCompanyRecord.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryCompanyRecord.java index 3c8a6dc42..b61a0250e 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryCompanyRecord.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryCompanyRecord.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.winery.enums.IrrigationTypeEnum; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryFoodSafety.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryFoodSafety.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryFoodSafety.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryFoodSafety.java index ba0fa2890..f62d580f0 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryFoodSafety.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryFoodSafety.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoods.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoods.java similarity index 97% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoods.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoods.java index 73a0c5da6..77e8b442a 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoods.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoods.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoodsSpec.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoodsSpec.java similarity index 97% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoodsSpec.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoodsSpec.java index 4ff24a818..37bde5fa4 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryGoodsSpec.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryGoodsSpec.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryMauser.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryMauser.java similarity index 97% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryMauser.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryMauser.java index c008b8085..deef9752e 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryMauser.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryMauser.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryOrders.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryOrders.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryOrders.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryOrders.java index f0571699e..1e03fd7a5 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryOrders.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryOrders.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryWineSpecDetail.java b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryWineSpecDetail.java similarity index 98% rename from hope-winery/src/main/java/com/ruoyi/winery/domain/WineryWineSpecDetail.java rename to hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryWineSpecDetail.java index 321551736..77362a98a 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/domain/WineryWineSpecDetail.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/domain/winery/WineryWineSpecDetail.java @@ -1,4 +1,4 @@ -package com.ruoyi.winery.domain; +package com.ruoyi.winery.domain.winery; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.Data; diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryCompanyRecordMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryCompanyRecordMapper.java index a387cf0e7..3683a6d94 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryCompanyRecordMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryCompanyRecordMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryCompanyRecord; +import com.ruoyi.winery.domain.winery.WineryCompanyRecord; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryFoodSafetyMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryFoodSafetyMapper.java index 4034c01f0..de46695bd 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryFoodSafetyMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryFoodSafetyMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryFoodSafety; +import com.ruoyi.winery.domain.winery.WineryFoodSafety; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsMapper.java index 4652be609..3e29a6cb5 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryGoods; +import com.ruoyi.winery.domain.winery.WineryGoods; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsSpecMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsSpecMapper.java index 3c8b45a1e..cc44fca8b 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsSpecMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryGoodsSpecMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryGoodsSpec; +import com.ruoyi.winery.domain.winery.WineryGoodsSpec; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryMauserMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryMauserMapper.java index 2ec5b337e..8ac7ef8c6 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryMauserMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryMauserMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryMauser; +import com.ruoyi.winery.domain.winery.WineryMauser; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryOrdersMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryOrdersMapper.java index 78b8ac387..ca44df166 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryOrdersMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryOrdersMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryOrders; +import com.ruoyi.winery.domain.winery.WineryOrders; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryWineSpecDetailMapper.java b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryWineSpecDetailMapper.java index c57d1828b..0eb6b23eb 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryWineSpecDetailMapper.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/mapper/WineryWineSpecDetailMapper.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.mapper; -import com.ruoyi.winery.domain.WineryWineSpecDetail; +import com.ruoyi.winery.domain.winery.WineryWineSpecDetail; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryCompanyRecordService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryCompanyRecordService.java index b89c14967..5dc226e2e 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryCompanyRecordService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryCompanyRecordService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryCompanyRecord; +import com.ruoyi.winery.domain.winery.WineryCompanyRecord; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryFoodSafetyService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryFoodSafetyService.java index 28bda6b4b..c180b901d 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryFoodSafetyService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryFoodSafetyService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryFoodSafety; +import com.ruoyi.winery.domain.winery.WineryFoodSafety; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsService.java index 3088c71da..fd44bde9e 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryGoods; +import com.ruoyi.winery.domain.winery.WineryGoods; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsSpecService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsSpecService.java index 4e428c5e7..4fb2b0e0b 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsSpecService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryGoodsSpecService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryGoodsSpec; +import com.ruoyi.winery.domain.winery.WineryGoodsSpec; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryMauserService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryMauserService.java index c9c153a35..de5a49129 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryMauserService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryMauserService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryMauser; +import com.ruoyi.winery.domain.winery.WineryMauser; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryOrdersService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryOrdersService.java index ab6f79c03..4b3177726 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryOrdersService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryOrdersService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryOrders; +import com.ruoyi.winery.domain.winery.WineryOrders; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryWineSpecDetailService.java b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryWineSpecDetailService.java index ed9b52146..f53aa3cff 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryWineSpecDetailService.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/IWineryWineSpecDetailService.java @@ -1,6 +1,6 @@ package com.ruoyi.winery.service; -import com.ruoyi.winery.domain.WineryWineSpecDetail; +import com.ruoyi.winery.domain.winery.WineryWineSpecDetail; import com.baomidou.mybatisplus.extension.service.IService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryCompanyRecordServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryCompanyRecordServiceImpl.java index 3b149befc..721828f87 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryCompanyRecordServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryCompanyRecordServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryCompanyRecordMapper; -import com.ruoyi.winery.domain.WineryCompanyRecord; +import com.ruoyi.winery.domain.winery.WineryCompanyRecord; import com.ruoyi.winery.service.IWineryCompanyRecordService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryFoodSafetyServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryFoodSafetyServiceImpl.java index f333acd05..2f308e446 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryFoodSafetyServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryFoodSafetyServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryFoodSafetyMapper; -import com.ruoyi.winery.domain.WineryFoodSafety; +import com.ruoyi.winery.domain.winery.WineryFoodSafety; import com.ruoyi.winery.service.IWineryFoodSafetyService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsServiceImpl.java index 233c18a6e..feb0b28e4 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryGoodsMapper; -import com.ruoyi.winery.domain.WineryGoods; +import com.ruoyi.winery.domain.winery.WineryGoods; import com.ruoyi.winery.service.IWineryGoodsService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsSpecServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsSpecServiceImpl.java index f10b36db3..6dd84aff0 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsSpecServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryGoodsSpecServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryGoodsSpecMapper; -import com.ruoyi.winery.domain.WineryGoodsSpec; +import com.ruoyi.winery.domain.winery.WineryGoodsSpec; import com.ruoyi.winery.service.IWineryGoodsSpecService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryMauserServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryMauserServiceImpl.java index 8599a1318..62be68824 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryMauserServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryMauserServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryMauserMapper; -import com.ruoyi.winery.domain.WineryMauser; +import com.ruoyi.winery.domain.winery.WineryMauser; import com.ruoyi.winery.service.IWineryMauserService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryOrdersServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryOrdersServiceImpl.java index d2116599d..18ea25bc5 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryOrdersServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryOrdersServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryOrdersMapper; -import com.ruoyi.winery.domain.WineryOrders; +import com.ruoyi.winery.domain.winery.WineryOrders; import com.ruoyi.winery.service.IWineryOrdersService; /** diff --git a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryWineSpecDetailServiceImpl.java b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryWineSpecDetailServiceImpl.java index 9c62c30af..c46631341 100644 --- a/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryWineSpecDetailServiceImpl.java +++ b/hope-winery/src/main/java/com/ruoyi/winery/service/impl/WineryWineSpecDetailServiceImpl.java @@ -3,7 +3,7 @@ package com.ruoyi.winery.service.impl; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.winery.mapper.WineryWineSpecDetailMapper; -import com.ruoyi.winery.domain.WineryWineSpecDetail; +import com.ruoyi.winery.domain.winery.WineryWineSpecDetail; import com.ruoyi.winery.service.IWineryWineSpecDetailService; /** diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/CosUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/CosUtils.java index ba772cfd4..29a40e6ec 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/CosUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/CosUtils.java @@ -18,6 +18,7 @@ import java.io.File; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; +import java.net.URLEncoder; import java.util.Objects; import java.util.Optional; @@ -77,8 +78,12 @@ public class CosUtils { COSObject cosObject = cosClient.getObject(getObjectRequest); + // 文件类型 response.setContentType(cosObject.getObjectMetadata().getContentType()); + // 文件大小 response.setContentLengthLong(cosObject.getObjectMetadata().getContentLength()); + // 文件名 + response.setHeader("Content-Disposition", "attachment;filename=" + cosObject.getKey()); OutputStream os = null; try { os = response.getOutputStream(); @@ -105,4 +110,22 @@ public class CosUtils { } + public String uploadFile(String type, String filename, File file) { + + + // 指定要上传到 COS 上对象键 + String key = ReUtil.replaceAll(StrUtil.trim(Optional.of(filename).orElse(StrUtil.EMPTY)), SPECIAL_CHARACTERS, StrUtil.EMPTY); + // 生成 cos 客户端。 + COSClient cosClient = new COSClient(cosCredentials, clientConfig); + try { + PutObjectResult putObjectResult = cosClient.putObject(properties.getBucketName(), type + "/" + key, file); + } catch (Exception e) { + } finally { + + cosClient.shutdown(); + } + return type + "/" + key; + + } + } diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java index 62c0439ae..a669c463f 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/poi/ExcelUtil.java @@ -1,10 +1,6 @@ package com.ruoyi.common.utils.poi; -import java.io.File; -import java.io.FileOutputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; +import java.io.*; import java.lang.reflect.Field; import java.math.BigDecimal; import java.text.DecimalFormat; @@ -18,6 +14,9 @@ import java.util.Map; import java.util.Set; import java.util.UUID; import java.util.stream.Collectors; + +import com.ruoyi.common.utils.file.CosUtils; +import com.ruoyi.common.utils.spring.SpringUtils; import org.apache.poi.ss.usermodel.BorderStyle; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellStyle; @@ -52,14 +51,14 @@ import com.ruoyi.common.utils.DateUtils; import com.ruoyi.common.utils.DictUtils; import com.ruoyi.common.utils.StringUtils; import com.ruoyi.common.utils.reflect.ReflectUtils; +import org.springframework.web.multipart.MultipartFile; /** * Excel相关处理 - * + * * @author ruoyi */ -public class ExcelUtil -{ +public class ExcelUtil { private static final Logger log = LoggerFactory.getLogger(ExcelUtil.class); /** @@ -117,15 +116,15 @@ public class ExcelUtil */ public Class clazz; - public ExcelUtil(Class clazz) - { + + CosUtils cosUtils = SpringUtils.getBean(CosUtils.class); + + public ExcelUtil(Class clazz) { this.clazz = clazz; } - public void init(List list, String sheetName, Type type) - { - if (list == null) - { + public void init(List list, String sheetName, Type type) { + if (list == null) { list = new ArrayList(); } this.list = list; @@ -137,62 +136,51 @@ public class ExcelUtil /** * 对excel表单默认第一个索引名转换成list - * + * * @param is 输入流 * @return 转换后集合 */ - public List importExcel(InputStream is) throws Exception - { + public List importExcel(InputStream is) throws Exception { return importExcel(StringUtils.EMPTY, is); } /** * 对excel表单指定表格索引名转换成list - * + * * @param sheetName 表格索引名 - * @param is 输入流 + * @param is 输入流 * @return 转换后集合 */ - public List importExcel(String sheetName, InputStream is) throws Exception - { + public List importExcel(String sheetName, InputStream is) throws Exception { this.type = Type.IMPORT; this.wb = WorkbookFactory.create(is); List list = new ArrayList(); Sheet sheet = null; - if (StringUtils.isNotEmpty(sheetName)) - { + if (StringUtils.isNotEmpty(sheetName)) { // 如果指定sheet名,则取指定sheet中的内容. sheet = wb.getSheet(sheetName); - } - else - { + } else { // 如果传入的sheet名不存在则默认指向第1个sheet. sheet = wb.getSheetAt(0); } - if (sheet == null) - { + if (sheet == null) { throw new IOException("文件sheet不存在"); } int rows = sheet.getPhysicalNumberOfRows(); - if (rows > 0) - { + if (rows > 0) { // 定义一个map用于存放excel列的序号和field. Map cellMap = new HashMap(); // 获取表头 Row heard = sheet.getRow(0); - for (int i = 0; i < heard.getPhysicalNumberOfCells(); i++) - { + for (int i = 0; i < heard.getPhysicalNumberOfCells(); i++) { Cell cell = heard.getCell(i); - if (StringUtils.isNotNull(cell)) - { + if (StringUtils.isNotNull(cell)) { String value = this.getCellValue(heard, i).toString(); cellMap.put(value, i); - } - else - { + } else { cellMap.put(null, i); } } @@ -200,28 +188,23 @@ public class ExcelUtil Field[] allFields = clazz.getDeclaredFields(); // 定义一个map用于存放列的序号和field. Map fieldsMap = new HashMap(); - for (int col = 0; col < allFields.length; col++) - { + for (int col = 0; col < allFields.length; col++) { Field field = allFields[col]; Excel attr = field.getAnnotation(Excel.class); - if (attr != null && (attr.type() == Type.ALL || attr.type() == type)) - { + if (attr != null && (attr.type() == Type.ALL || attr.type() == type)) { // 设置类的私有字段属性可访问. field.setAccessible(true); Integer column = cellMap.get(attr.name()); - if (column != null) - { + if (column != null) { fieldsMap.put(column, field); } } } - for (int i = 1; i < rows; i++) - { + for (int i = 1; i < rows; i++) { // 从第2行开始取数据,默认第一行是表头. Row row = sheet.getRow(i); T entity = null; - for (Map.Entry entry : fieldsMap.entrySet()) - { + for (Map.Entry entry : fieldsMap.entrySet()) { Object val = this.getCellValue(row, entry.getKey()); // 如果不存在实例则新建. @@ -230,67 +213,40 @@ public class ExcelUtil Field field = fieldsMap.get(entry.getKey()); // 取得类型,并根据对象类型设置值. Class fieldType = field.getType(); - if (String.class == fieldType) - { + if (String.class == fieldType) { String s = Convert.toStr(val); - if (StringUtils.endsWith(s, ".0")) - { + if (StringUtils.endsWith(s, ".0")) { val = StringUtils.substringBefore(s, ".0"); - } - else - { + } else { val = Convert.toStr(val); } - } - else if ((Integer.TYPE == fieldType || Integer.class == fieldType) && StringUtils.isNumeric(Convert.toStr(val))) - { + } else if ((Integer.TYPE == fieldType || Integer.class == fieldType) && StringUtils.isNumeric(Convert.toStr(val))) { val = Convert.toInt(val); - } - else if (Long.TYPE == fieldType || Long.class == fieldType) - { + } else if (Long.TYPE == fieldType || Long.class == fieldType) { val = Convert.toLong(val); - } - else if (Double.TYPE == fieldType || Double.class == fieldType) - { + } else if (Double.TYPE == fieldType || Double.class == fieldType) { val = Convert.toDouble(val); - } - else if (Float.TYPE == fieldType || Float.class == fieldType) - { + } else if (Float.TYPE == fieldType || Float.class == fieldType) { val = Convert.toFloat(val); - } - else if (BigDecimal.class == fieldType) - { + } else if (BigDecimal.class == fieldType) { val = Convert.toBigDecimal(val); - } - else if (Date.class == fieldType) - { - if (val instanceof String) - { + } else if (Date.class == fieldType) { + if (val instanceof String) { val = DateUtils.parseDate(val); - } - else if (val instanceof Double) - { + } else if (val instanceof Double) { val = DateUtil.getJavaDate((Double) val); } - } - else if (Boolean.TYPE == fieldType || Boolean.class == fieldType) - { + } else if (Boolean.TYPE == fieldType || Boolean.class == fieldType) { val = Convert.toBool(val, false); } - if (StringUtils.isNotNull(fieldType)) - { + if (StringUtils.isNotNull(fieldType)) { Excel attr = field.getAnnotation(Excel.class); String propertyName = field.getName(); - if (StringUtils.isNotEmpty(attr.targetAttr())) - { + if (StringUtils.isNotEmpty(attr.targetAttr())) { propertyName = field.getName() + "." + attr.targetAttr(); - } - else if (StringUtils.isNotEmpty(attr.readConverterExp())) - { + } else if (StringUtils.isNotEmpty(attr.readConverterExp())) { val = reverseByExp(Convert.toStr(val), attr.readConverterExp(), attr.separator()); - } - else if (StringUtils.isNotEmpty(attr.dictType())) - { + } else if (StringUtils.isNotEmpty(attr.dictType())) { val = reverseDictByExp(Convert.toStr(val), attr.dictType(), attr.separator()); } ReflectUtils.invokeSetter(entity, propertyName, val); @@ -304,56 +260,50 @@ public class ExcelUtil /** * 对list数据源将其里面的数据导入到excel表单 - * - * @param list 导出数据集合 + * + * @param list 导出数据集合 * @param sheetName 工作表的名称 * @return 结果 */ - public AjaxResult exportExcel(List list, String sheetName) - { + public AjaxResult exportExcel(List list, String sheetName) { this.init(list, sheetName, Type.EXPORT); return exportExcel(); } /** * 对list数据源将其里面的数据导入到excel表单 - * + * * @param sheetName 工作表的名称 * @return 结果 */ - public AjaxResult importTemplateExcel(String sheetName) - { + public AjaxResult importTemplateExcel(String sheetName) { this.init(null, sheetName, Type.IMPORT); return exportExcel(); } /** * 对list数据源将其里面的数据导入到excel表单 - * + * * @return 结果 */ - public AjaxResult exportExcel() - { + public AjaxResult exportExcel() { OutputStream out = null; - try - { + File file = null; + try { // 取出一共有多少个sheet. double sheetNo = Math.ceil(list.size() / sheetSize); - for (int index = 0; index <= sheetNo; index++) - { + for (int index = 0; index <= sheetNo; index++) { createSheet(sheetNo, index); // 产生一行 Row row = sheet.createRow(0); int column = 0; // 写入各个字段的列头名称 - for (Object[] os : fields) - { + for (Object[] os : fields) { Excel excel = (Excel) os[1]; this.createCell(excel, row, column++); } - if (Type.EXPORT.equals(type)) - { + if (Type.EXPORT.equals(type)) { fillExcelData(index, row); addStatisticsRow(); } @@ -361,58 +311,50 @@ public class ExcelUtil String filename = encodingFilename(sheetName); out = new FileOutputStream(getAbsoluteFile(filename)); wb.write(out); - return AjaxResult.success(filename); - } - catch (Exception e) - { + log.info("导出Excel临时路径:{}", getAbsoluteFile(filename)); + file = new File(getAbsoluteFile(filename)); + String fileKey = cosUtils.uploadFile("export/excel", filename, file); + return AjaxResult.success(fileKey); + } catch (Exception e) { log.error("导出Excel异常{}", e.getMessage()); throw new CustomException("导出Excel失败,请联系网站管理员!"); - } - finally - { - if (wb != null) - { - try - { + } finally { + if (wb != null) { + try { wb.close(); - } - catch (IOException e1) - { + } catch (IOException e1) { e1.printStackTrace(); } } - if (out != null) - { - try - { + if (out != null) { + try { out.close(); - } - catch (IOException e1) - { + } catch (IOException e1) { e1.printStackTrace(); } } + + if (file != null) { + file.delete(); + } } } /** * 填充excel数据 - * + * * @param index 序号 - * @param row 单元格行 + * @param row 单元格行 */ - public void fillExcelData(int index, Row row) - { + public void fillExcelData(int index, Row row) { int startNo = index * sheetSize; int endNo = Math.min(startNo + sheetSize, list.size()); - for (int i = startNo; i < endNo; i++) - { + for (int i = startNo; i < endNo; i++) { row = sheet.createRow(i + 1 - startNo); // 得到导出对象. T vo = (T) list.get(i); int column = 0; - for (Object[] os : fields) - { + for (Object[] os : fields) { Field field = (Field) os[0]; Excel excel = (Excel) os[1]; // 设置实体类私有属性可访问 @@ -424,12 +366,11 @@ public class ExcelUtil /** * 创建表格样式 - * + * * @param wb 工作薄对象 * @return 样式列表 */ - private Map createStyles(Workbook wb) - { + private Map createStyles(Workbook wb) { // 写入各条记录,每条记录对应excel表中的一行 Map styles = new HashMap(); CellStyle style = wb.createCellStyle(); @@ -462,7 +403,7 @@ public class ExcelUtil headerFont.setColor(IndexedColors.WHITE.getIndex()); style.setFont(headerFont); styles.put("header", style); - + style = wb.createCellStyle(); style.setAlignment(HorizontalAlignment.CENTER); style.setVerticalAlignment(VerticalAlignment.CENTER); @@ -493,8 +434,7 @@ public class ExcelUtil /** * 创建单元格 */ - public Cell createCell(Excel attr, Row row, int column) - { + public Cell createCell(Excel attr, Row row, int column) { // 创建列 Cell cell = row.createCell(column); // 写入列信息 @@ -506,19 +446,15 @@ public class ExcelUtil /** * 设置单元格信息 - * + * * @param value 单元格值 - * @param attr 注解相关 - * @param cell 单元格信息 + * @param attr 注解相关 + * @param cell 单元格信息 */ - public void setCellVo(Object value, Excel attr, Cell cell) - { - if (ColumnType.STRING == attr.cellType()) - { + public void setCellVo(Object value, Excel attr, Cell cell) { + if (ColumnType.STRING == attr.cellType()) { cell.setCellValue(StringUtils.isNull(value) ? attr.defaultValue() : value + attr.suffix()); - } - else if (ColumnType.NUMERIC == attr.cellType()) - { + } else if (ColumnType.NUMERIC == attr.cellType()) { cell.setCellValue(StringUtils.contains(Convert.toStr(value), ".") ? Convert.toDouble(value) : Convert.toInt(value)); } } @@ -526,27 +462,21 @@ public class ExcelUtil /** * 创建表格样式 */ - public void setDataValidation(Excel attr, Row row, int column) - { - if (attr.name().indexOf("注:") >= 0) - { + public void setDataValidation(Excel attr, Row row, int column) { + if (attr.name().indexOf("注:") >= 0) { sheet.setColumnWidth(column, 6000); - } - else - { + } else { // 设置列宽 sheet.setColumnWidth(column, (int) ((attr.width() + 0.72) * 256)); row.setHeight((short) (attr.height() * 20)); } // 如果设置了提示信息则鼠标放上去提示. - if (StringUtils.isNotEmpty(attr.prompt())) - { + if (StringUtils.isNotEmpty(attr.prompt())) { // 这里默认设了2-101列提示. setXSSFPrompt(sheet, "", attr.prompt(), 1, 100, column, column); } // 如果设置了combo属性则本列只能选择不能输入 - if (attr.combo().length > 0) - { + if (attr.combo().length > 0) { // 这里默认设了2-101列只能选择不能输入. setXSSFValidation(sheet, attr.combo(), 1, 100, column, column); } @@ -555,16 +485,13 @@ public class ExcelUtil /** * 添加单元格 */ - public Cell addCell(Excel attr, Row row, T vo, Field field, int column) - { + public Cell addCell(Excel attr, Row row, T vo, Field field, int column) { Cell cell = null; - try - { + try { // 设置行高 row.setHeight((short) (attr.height() * 20)); // 根据Excel中设置情况决定是否导出,有些情况需要保持为空,希望用户填写这一列. - if (attr.isExport()) - { + if (attr.isExport()) { // 创建cell cell = row.createCell(column); int align = attr.align().value(); @@ -576,32 +503,21 @@ public class ExcelUtil String readConverterExp = attr.readConverterExp(); String separator = attr.separator(); String dictType = attr.dictType(); - if (StringUtils.isNotEmpty(dateFormat) && StringUtils.isNotNull(value)) - { + if (StringUtils.isNotEmpty(dateFormat) && StringUtils.isNotNull(value)) { cell.setCellValue(DateUtils.parseDateToStr(dateFormat, (Date) value)); - } - else if (StringUtils.isNotEmpty(readConverterExp) && StringUtils.isNotNull(value)) - { + } else if (StringUtils.isNotEmpty(readConverterExp) && StringUtils.isNotNull(value)) { cell.setCellValue(convertByExp(Convert.toStr(value), readConverterExp, separator)); - } - else if (StringUtils.isNotEmpty(dictType) && StringUtils.isNotNull(value)) - { + } else if (StringUtils.isNotEmpty(dictType) && StringUtils.isNotNull(value)) { cell.setCellValue(convertDictByExp(Convert.toStr(value), dictType, separator)); - } - else if (value instanceof BigDecimal && -1 != attr.scale()) - { + } else if (value instanceof BigDecimal && -1 != attr.scale()) { cell.setCellValue((((BigDecimal) value).setScale(attr.scale(), attr.roundingMode())).toString()); - } - else - { + } else { // 设置列类型 setCellVo(value, attr, cell); } addStatisticsData(column, Convert.toStr(value), attr); } - } - catch (Exception e) - { + } catch (Exception e) { log.error("导出Excel失败{}", e); } return cell; @@ -609,18 +525,17 @@ public class ExcelUtil /** * 设置 POI XSSFSheet 单元格提示 - * - * @param sheet 表单 - * @param promptTitle 提示标题 + * + * @param sheet 表单 + * @param promptTitle 提示标题 * @param promptContent 提示内容 - * @param firstRow 开始行 - * @param endRow 结束行 - * @param firstCol 开始列 - * @param endCol 结束列 + * @param firstRow 开始行 + * @param endRow 结束行 + * @param firstCol 开始列 + * @param endCol 结束列 */ public void setXSSFPrompt(Sheet sheet, String promptTitle, String promptContent, int firstRow, int endRow, - int firstCol, int endCol) - { + int firstCol, int endCol) { DataValidationHelper helper = sheet.getDataValidationHelper(); DataValidationConstraint constraint = helper.createCustomConstraint("DD1"); CellRangeAddressList regions = new CellRangeAddressList(firstRow, endRow, firstCol, endCol); @@ -632,17 +547,16 @@ public class ExcelUtil /** * 设置某些列的值只能输入预制的数据,显示下拉框. - * - * @param sheet 要设置的sheet. + * + * @param sheet 要设置的sheet. * @param textlist 下拉框显示的内容 * @param firstRow 开始行 - * @param endRow 结束行 + * @param endRow 结束行 * @param firstCol 开始列 - * @param endCol 结束列 + * @param endCol 结束列 * @return 设置好的sheet. */ - public void setXSSFValidation(Sheet sheet, String[] textlist, int firstRow, int endRow, int firstCol, int endCol) - { + public void setXSSFValidation(Sheet sheet, String[] textlist, int firstRow, int endRow, int firstCol, int endCol) { DataValidationHelper helper = sheet.getDataValidationHelper(); // 加载下拉列表内容 DataValidationConstraint constraint = helper.createExplicitListConstraint(textlist); @@ -651,13 +565,10 @@ public class ExcelUtil // 数据有效性对象 DataValidation dataValidation = helper.createValidation(constraint, regions); // 处理Excel兼容性问题 - if (dataValidation instanceof XSSFDataValidation) - { + if (dataValidation instanceof XSSFDataValidation) { dataValidation.setSuppressDropDownArrow(true); dataValidation.setShowErrorBox(true); - } - else - { + } else { dataValidation.setSuppressDropDownArrow(false); } @@ -666,34 +577,26 @@ public class ExcelUtil /** * 解析导出值 0=男,1=女,2=未知 - * + * * @param propertyValue 参数值 - * @param converterExp 翻译注解 - * @param separator 分隔符 + * @param converterExp 翻译注解 + * @param separator 分隔符 * @return 解析后值 */ - public static String convertByExp(String propertyValue, String converterExp, String separator) - { + public static String convertByExp(String propertyValue, String converterExp, String separator) { StringBuilder propertyString = new StringBuilder(); String[] convertSource = converterExp.split(","); - for (String item : convertSource) - { + for (String item : convertSource) { String[] itemArray = item.split("="); - if (StringUtils.containsAny(separator, propertyValue)) - { - for (String value : propertyValue.split(separator)) - { - if (itemArray[0].equals(value)) - { + if (StringUtils.containsAny(separator, propertyValue)) { + for (String value : propertyValue.split(separator)) { + if (itemArray[0].equals(value)) { propertyString.append(itemArray[1] + separator); break; } } - } - else - { - if (itemArray[0].equals(propertyValue)) - { + } else { + if (itemArray[0].equals(propertyValue)) { return itemArray[1]; } } @@ -703,34 +606,26 @@ public class ExcelUtil /** * 反向解析值 男=0,女=1,未知=2 - * + * * @param propertyValue 参数值 - * @param converterExp 翻译注解 - * @param separator 分隔符 + * @param converterExp 翻译注解 + * @param separator 分隔符 * @return 解析后值 */ - public static String reverseByExp(String propertyValue, String converterExp, String separator) - { + public static String reverseByExp(String propertyValue, String converterExp, String separator) { StringBuilder propertyString = new StringBuilder(); String[] convertSource = converterExp.split(","); - for (String item : convertSource) - { + for (String item : convertSource) { String[] itemArray = item.split("="); - if (StringUtils.containsAny(separator, propertyValue)) - { - for (String value : propertyValue.split(separator)) - { - if (itemArray[1].equals(value)) - { + if (StringUtils.containsAny(separator, propertyValue)) { + for (String value : propertyValue.split(separator)) { + if (itemArray[1].equals(value)) { propertyString.append(itemArray[0] + separator); break; } } - } - else - { - if (itemArray[1].equals(propertyValue)) - { + } else { + if (itemArray[1].equals(propertyValue)) { return itemArray[0]; } } @@ -740,48 +635,40 @@ public class ExcelUtil /** * 解析字典值 - * + * * @param dictValue 字典值 - * @param dictType 字典类型 + * @param dictType 字典类型 * @param separator 分隔符 * @return 字典标签 */ - public static String convertDictByExp(String dictValue, String dictType, String separator) - { + public static String convertDictByExp(String dictValue, String dictType, String separator) { return DictUtils.getDictLabel(dictType, dictValue, separator); } /** * 反向解析值字典值 - * + * * @param dictLabel 字典标签 - * @param dictType 字典类型 + * @param dictType 字典类型 * @param separator 分隔符 * @return 字典值 */ - public static String reverseDictByExp(String dictLabel, String dictType, String separator) - { + public static String reverseDictByExp(String dictLabel, String dictType, String separator) { return DictUtils.getDictValue(dictType, dictLabel, separator); } /** * 合计统计信息 */ - private void addStatisticsData(Integer index, String text, Excel entity) - { - if (entity != null && entity.isStatistics()) - { + private void addStatisticsData(Integer index, String text, Excel entity) { + if (entity != null && entity.isStatistics()) { Double temp = 0D; - if (!statistics.containsKey(index)) - { + if (!statistics.containsKey(index)) { statistics.put(index, temp); } - try - { + try { temp = Double.valueOf(text); - } - catch (NumberFormatException e) - { + } catch (NumberFormatException e) { } statistics.put(index, statistics.get(index) + temp); } @@ -790,10 +677,8 @@ public class ExcelUtil /** * 创建统计行 */ - public void addStatisticsRow() - { - if (statistics.size() > 0) - { + public void addStatisticsRow() { + if (statistics.size() > 0) { Cell cell = null; Row row = sheet.createRow(sheet.getLastRowNum() + 1); Set keys = statistics.keySet(); @@ -801,8 +686,7 @@ public class ExcelUtil cell.setCellStyle(styles.get("total")); cell.setCellValue("合计"); - for (Integer key : keys) - { + for (Integer key : keys) { cell = row.createCell(key); cell.setCellStyle(styles.get("total")); cell.setCellValue(DOUBLE_FORMAT.format(statistics.get(key))); @@ -814,23 +698,20 @@ public class ExcelUtil /** * 编码文件名 */ - public String encodingFilename(String filename) - { - filename = UUID.randomUUID().toString() + "_" + filename + ".xlsx"; + public String encodingFilename(String filename) { + filename = UUID.randomUUID().toString() + "_" + filename + ".xlsx"; return filename; } /** * 获取下载路径 - * + * * @param filename 文件名称 */ - public String getAbsoluteFile(String filename) - { + public String getAbsoluteFile(String filename) { String downloadPath = RuoYiConfig.getDownloadPath() + filename; File desc = new File(downloadPath); - if (!desc.getParentFile().exists()) - { + if (!desc.getParentFile().exists()) { desc.getParentFile().mkdirs(); } return downloadPath; @@ -838,29 +719,23 @@ public class ExcelUtil /** * 获取bean中的属性值 - * - * @param vo 实体对象 + * + * @param vo 实体对象 * @param field 字段 * @param excel 注解 * @return 最终的属性值 * @throws Exception */ - private Object getTargetValue(T vo, Field field, Excel excel) throws Exception - { + private Object getTargetValue(T vo, Field field, Excel excel) throws Exception { Object o = field.get(vo); - if (StringUtils.isNotEmpty(excel.targetAttr())) - { + if (StringUtils.isNotEmpty(excel.targetAttr())) { String target = excel.targetAttr(); - if (target.indexOf(".") > -1) - { + if (target.indexOf(".") > -1) { String[] targets = target.split("[.]"); - for (String name : targets) - { + for (String name : targets) { o = getValue(o, name); } - } - else - { + } else { o = getValue(o, target); } } @@ -869,16 +744,14 @@ public class ExcelUtil /** * 以类的属性的get方法方法形式获取值 - * + * * @param o * @param name * @return value * @throws Exception */ - private Object getValue(Object o, String name) throws Exception - { - if (StringUtils.isNotNull(o) && StringUtils.isNotEmpty(name)) - { + private Object getValue(Object o, String name) throws Exception { + if (StringUtils.isNotNull(o) && StringUtils.isNotEmpty(name)) { Class clazz = o.getClass(); Field field = clazz.getDeclaredField(name); field.setAccessible(true); @@ -890,27 +763,22 @@ public class ExcelUtil /** * 得到所有定义字段 */ - private void createExcelField() - { + private void createExcelField() { this.fields = new ArrayList(); List tempFields = new ArrayList<>(); tempFields.addAll(Arrays.asList(clazz.getSuperclass().getDeclaredFields())); tempFields.addAll(Arrays.asList(clazz.getDeclaredFields())); - for (Field field : tempFields) - { + for (Field field : tempFields) { // 单注解 - if (field.isAnnotationPresent(Excel.class)) - { + if (field.isAnnotationPresent(Excel.class)) { putToField(field, field.getAnnotation(Excel.class)); } // 多注解 - if (field.isAnnotationPresent(Excels.class)) - { + if (field.isAnnotationPresent(Excels.class)) { Excels attrs = field.getAnnotation(Excels.class); Excel[] excels = attrs.value(); - for (Excel excel : excels) - { + for (Excel excel : excels) { putToField(field, excel); } } @@ -921,98 +789,72 @@ public class ExcelUtil /** * 放到字段集合中 */ - private void putToField(Field field, Excel attr) - { - if (attr != null && (attr.type() == Type.ALL || attr.type() == type)) - { - this.fields.add(new Object[] { field, attr }); + private void putToField(Field field, Excel attr) { + if (attr != null && (attr.type() == Type.ALL || attr.type() == type)) { + this.fields.add(new Object[]{field, attr}); } } /** * 创建一个工作簿 */ - public void createWorkbook() - { + public void createWorkbook() { this.wb = new SXSSFWorkbook(500); } /** * 创建工作表 - * + * * @param sheetNo sheet数量 - * @param index 序号 + * @param index 序号 */ - public void createSheet(double sheetNo, int index) - { + public void createSheet(double sheetNo, int index) { this.sheet = wb.createSheet(); this.styles = createStyles(wb); // 设置工作表的名称. - if (sheetNo == 0) - { + if (sheetNo == 0) { wb.setSheetName(index, sheetName); - } - else - { + } else { wb.setSheetName(index, sheetName + index); } } /** * 获取单元格值 - * - * @param row 获取的行 + * + * @param row 获取的行 * @param column 获取单元格列号 * @return 单元格值 */ - public Object getCellValue(Row row, int column) - { - if (row == null) - { + public Object getCellValue(Row row, int column) { + if (row == null) { return row; } Object val = ""; - try - { + try { Cell cell = row.getCell(column); - if (StringUtils.isNotNull(cell)) - { - if (cell.getCellType() == CellType.NUMERIC || cell.getCellType() == CellType.FORMULA) - { + if (StringUtils.isNotNull(cell)) { + if (cell.getCellType() == CellType.NUMERIC || cell.getCellType() == CellType.FORMULA) { val = cell.getNumericCellValue(); - if (DateUtil.isCellDateFormatted(cell)) - { + if (DateUtil.isCellDateFormatted(cell)) { val = DateUtil.getJavaDate((Double) val); // POI Excel 日期格式转换 - } - else - { - if ((Double) val % 1 > 0) - { + } else { + if ((Double) val % 1 > 0) { val = new BigDecimal(val.toString()); - } - else - { + } else { val = new DecimalFormat("0").format(val); } } - } - else if (cell.getCellType() == CellType.STRING) - { + } else if (cell.getCellType() == CellType.STRING) { val = cell.getStringCellValue(); - } - else if (cell.getCellType() == CellType.BOOLEAN) - { + } else if (cell.getCellType() == CellType.BOOLEAN) { val = cell.getBooleanCellValue(); - } - else if (cell.getCellType() == CellType.ERROR) - { + } else if (cell.getCellType() == CellType.ERROR) { val = cell.getErrorCellValue(); } } - } - catch (Exception e) - { + } catch (Exception e) { return val; } return val; diff --git a/ruoyi-ui/src/views/news/news_content/index.vue b/ruoyi-ui/src/views/news/news_content/index.vue index 97cd9f0b9..a36c8c051 100644 --- a/ruoyi-ui/src/views/news/news_content/index.vue +++ b/ruoyi-ui/src/views/news/news_content/index.vue @@ -1,15 +1,15 @@