diff --git a/src/main/java/org/energy/modules/leger/controller/EquipmentLedgerController.java b/src/main/java/org/energy/modules/leger/controller/EquipmentLedgerController.java index 197f3f7..a02bfca 100644 --- a/src/main/java/org/energy/modules/leger/controller/EquipmentLedgerController.java +++ b/src/main/java/org/energy/modules/leger/controller/EquipmentLedgerController.java @@ -15,17 +15,28 @@ */ package org.energy.modules.leger.controller; +import com.alibaba.excel.EasyExcel; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.dayu.daf.core.log.annotation.ApiLog; +import com.dayu.daf.core.secure.DafUser; +import com.dayu.daf.core.tool.constant.DafConstant; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import lombok.AllArgsConstructor; + +import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import com.dayu.daf.core.mp.support.Condition; import com.dayu.daf.core.mp.support.Query; import com.dayu.daf.core.tool.api.R; import com.dayu.daf.core.tool.utils.Func; +import lombok.SneakyThrows; +import org.apache.commons.codec.Charsets; +import org.energy.modules.leger.excel.EquipmentLedgerExcel; +import org.energy.modules.system.excel.UserExcel; import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.RequestParam; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -33,6 +44,11 @@ import org.energy.modules.leger.entity.EquipmentLedger; import org.energy.modules.leger.vo.EquipmentLedgerVO; import org.energy.modules.leger.service.IEquipmentLedgerService; import com.dayu.daf.core.boot.ctrl.DafController; +import springfox.documentation.annotations.ApiIgnore; + +import java.net.URLEncoder; +import java.util.List; +import java.util.Map; /** * 设备台账编码一览 控制器 @@ -123,5 +139,24 @@ public class EquipmentLedgerController extends DafController { return R.status(equipmentLedgerService.deleteLogic(Func.toLongList(ids))); } + /** + * 导出 + */ + @SneakyThrows + @GetMapping("export") + @ApiOperationSupport(order = 13) + @ApiOperation(value = "导出", notes = "传入") + @ApiLog + public void exportUser(@ApiIgnore @RequestParam Map entity, HttpServletResponse response) { + QueryWrapper queryWrapper = Condition.getQueryWrapper(entity, EquipmentLedger.class); + queryWrapper.lambda().eq(EquipmentLedger::getIsDeleted, DafConstant.DB_NOT_DELETED); + List list = equipmentLedgerService.export(queryWrapper); + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding(Charsets.UTF_8.name()); + String fileName = URLEncoder.encode("数据导出", Charsets.UTF_8.name()); + response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); + EasyExcel.write(response.getOutputStream(), EquipmentLedgerExcel.class).sheet("数据表").doWrite(list); + } + } diff --git a/src/main/java/org/energy/modules/leger/excel/EquipmentLedgerExcel.java b/src/main/java/org/energy/modules/leger/excel/EquipmentLedgerExcel.java new file mode 100644 index 0000000..cb9265c --- /dev/null +++ b/src/main/java/org/energy/modules/leger/excel/EquipmentLedgerExcel.java @@ -0,0 +1,41 @@ +/** + * Copyright (c) 2018-2028, Chill Zhuang 庄骞 (smallchill@163.com). + *

+ * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + *

+ * http://www.apache.org/licenses/LICENSE-2.0 + *

+ * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.energy.modules.leger.excel; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; +import com.alibaba.excel.annotation.write.style.ContentRowHeight; +import com.alibaba.excel.annotation.write.style.HeadRowHeight; +import lombok.Data; + +import java.io.Serializable; + +/** + * EquipmentLedge model export + * @author edwong + */ +@Data +@ColumnWidth(25) +@HeadRowHeight(20) +@ContentRowHeight(18) +public class EquipmentLedgerExcel implements Serializable { + private static final long serialVersionUID = 1L; + + @ColumnWidth(15) + @ExcelProperty("eqLedgerCode") + private String eqLedgerCode; + +} diff --git a/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.java b/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.java index 55119ca..30ef4fa 100644 --- a/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.java +++ b/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.java @@ -1,9 +1,13 @@ package org.energy.modules.leger.mapper; +import com.baomidou.mybatisplus.core.conditions.Wrapper; +import org.apache.ibatis.annotations.Param; import org.energy.modules.leger.entity.EquipmentLedger; import org.energy.modules.leger.vo.EquipmentLedgerVO; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import org.energy.modules.leger.excel.EquipmentLedgerExcel; + import java.util.List; /** @@ -23,4 +27,6 @@ public interface EquipmentLedgerMapper extends BaseMapper { */ List selectEquipmentLedgerPage(IPage page, EquipmentLedgerVO equipmentLedger); + List exportData(@Param("ew") Wrapper queryWrapper); + } diff --git a/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.xml b/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.xml index c82a7ee..bdb2612 100644 --- a/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.xml +++ b/src/main/java/org/energy/modules/leger/mapper/EquipmentLedgerMapper.xml @@ -56,4 +56,9 @@ select * from l_equipment_ledger where is_deleted = 0 + + diff --git a/src/main/java/org/energy/modules/leger/service/IEquipmentLedgerService.java b/src/main/java/org/energy/modules/leger/service/IEquipmentLedgerService.java index 1e9b328..6fa9d56 100644 --- a/src/main/java/org/energy/modules/leger/service/IEquipmentLedgerService.java +++ b/src/main/java/org/energy/modules/leger/service/IEquipmentLedgerService.java @@ -1,9 +1,13 @@ package org.energy.modules.leger.service; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.energy.modules.leger.entity.EquipmentLedger; import org.energy.modules.leger.vo.EquipmentLedgerVO; import com.dayu.daf.core.mp.base.BaseService; import com.baomidou.mybatisplus.core.metadata.IPage; +import org.energy.modules.leger.excel.EquipmentLedgerExcel; + +import java.util.List; /** * 设备台账编码一览 服务类 @@ -22,4 +26,12 @@ public interface IEquipmentLedgerService extends BaseService { */ IPage selectEquipmentLedgerPage(IPage page, EquipmentLedgerVO equipmentLedger); + /** + * 获取导出数据 + * + * @param queryWrapper + * @return + */ + List export(Wrapper queryWrapper); + } diff --git a/src/main/java/org/energy/modules/leger/service/impl/EquipmentLedgerServiceImpl.java b/src/main/java/org/energy/modules/leger/service/impl/EquipmentLedgerServiceImpl.java index c20b19e..0998ddf 100644 --- a/src/main/java/org/energy/modules/leger/service/impl/EquipmentLedgerServiceImpl.java +++ b/src/main/java/org/energy/modules/leger/service/impl/EquipmentLedgerServiceImpl.java @@ -1,13 +1,17 @@ package org.energy.modules.leger.service.impl; +import com.baomidou.mybatisplus.core.conditions.Wrapper; import org.energy.modules.leger.entity.EquipmentLedger; import org.energy.modules.leger.vo.EquipmentLedgerVO; import org.energy.modules.leger.mapper.EquipmentLedgerMapper; import org.energy.modules.leger.service.IEquipmentLedgerService; import com.dayu.daf.core.mp.base.BaseServiceImpl; +import org.energy.modules.leger.excel.EquipmentLedgerExcel; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.core.metadata.IPage; +import java.util.List; + /** * 设备台账编码一览 服务实现类 * @@ -22,4 +26,10 @@ public class EquipmentLedgerServiceImpl extends BaseServiceImpl export(Wrapper queryWrapper) { + List list = baseMapper.exportData(queryWrapper); + return list; + } + } diff --git a/src/main/java/org/energy/modules/system/controller/FileController.java b/src/main/java/org/energy/modules/system/controller/FileController.java index 040b880..3b4bbf9 100644 --- a/src/main/java/org/energy/modules/system/controller/FileController.java +++ b/src/main/java/org/energy/modules/system/controller/FileController.java @@ -53,7 +53,6 @@ public class FileController { */ @ApiOperation("附件上载") @PostMapping(value = "/upload") - @ResponseBody public R upload(@RequestPart("file") MultipartFile picture, @RequestParam("fileType") String fileType) { Map resultMap = new HashMap<>(); @@ -69,7 +68,7 @@ public class FileController { String fileSavePath = dataConfig.getUploadPath(); fileSavePath = fileSavePath + EnumFileInfoType.getKeyDesc(fileType) + "/" + DateTimeUtils.getFormatDate(new Date(), DateTimeUtils.YEAR_MONTH_DATE_FORMAT) + "/"; - String filePath = "/data/file/actual/" + EnumFileInfoType.getKeyDesc(fileType) + "/" + DateTimeUtils.getFormatDate(new Date(), DateTimeUtils.YEAR_MONTH_DATE_FORMAT) + "/"; + String filePath = "/data/actual/" + EnumFileInfoType.getKeyDesc(fileType) + "/" + DateTimeUtils.getFormatDate(new Date(), DateTimeUtils.YEAR_MONTH_DATE_FORMAT) + "/"; if (!new File(fileSavePath).exists()) { new File(fileSavePath).mkdirs(); } @@ -81,7 +80,7 @@ public class FileController { log.error(e.getMessage(), e); throw new ServiceException("上传图片出错"); } - return R.data(JSON.toJSONString(resultMap)); + return R.data(resultMap); } } diff --git a/src/main/java/org/energy/modules/system/service/impl/FileServiceImpl.java b/src/main/java/org/energy/modules/system/service/impl/FileServiceImpl.java index d86d821..0e96a78 100644 --- a/src/main/java/org/energy/modules/system/service/impl/FileServiceImpl.java +++ b/src/main/java/org/energy/modules/system/service/impl/FileServiceImpl.java @@ -32,11 +32,14 @@ public class FileServiceImpl extends BaseServiceImpl implement file.setFilePath(filePath); file.setFileName(fileName); file.setFileSuffix(fileSuffix); + file.setFileOldName(oldFileName); boolean saveFlag = super.save(file); Map map = new HashMap<>(); if (saveFlag) { map.put("id", file.getId()); - map.put("filePath", file.getFilePath() + file.getFileName() + file.getFileSuffix()); + map.put("url", "./api/system/file/download?fileName=" + fileName); + map.put("fileName", fileName); + map.put("name", oldFileName); return map; } return null; diff --git a/src/main/java/org/energy/modules/system/util/EnumFileInfoType.java b/src/main/java/org/energy/modules/system/util/EnumFileInfoType.java index 2214042..be8c23d 100644 --- a/src/main/java/org/energy/modules/system/util/EnumFileInfoType.java +++ b/src/main/java/org/energy/modules/system/util/EnumFileInfoType.java @@ -5,7 +5,7 @@ package org.energy.modules.system.util; */ public enum EnumFileInfoType { - STATIC_LEDGER_DOCUMENT_INVENTORY("0", "STATIC_LEDGER_DOCUMENT_INVENTORY", "静态台账文档清册"), + STATIC_LEDGER_DOCUMENT_INVENTORY("1", "ST_LD_DOC_INV", "静态台账文档清册"), ; private String key; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 871ad1c..11da843 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -141,4 +141,4 @@ daf: tables: - sys_notice file: - upload_path: c:\\data\\actual #文件上传目录(不配置的话为java.io.tmpdir目录) + upload_path: c:\\data\\actual\\ #文件上传目录(不配置的话为java.io.tmpdir目录)