java110-db/src/main/resources/mapper/acct/AccountServiceDaoImplMapper.xml
@@ -226,7 +226,7 @@ and t.acct_id= #{acctId} </if> <if test="objId !=null and objId != ''"> t.obj_id= #{objId}, and t.obj_id = #{objId} </if> </update> service-front/src/main/java/com/java110/front/components/assetImport/ImportMeterWaterFeeComponent.java
@@ -45,10 +45,31 @@ * @param pd 页面数据封装 * @return ResponseEntity 对象 */ public ResponseEntity<String> importData2(IPageData pd, MultipartFile uploadFile) throws Exception { return importMeterWaterFeeSMOImpl.importExcelData2(pd, uploadFile); } /** * 添加应用数据 * * @param pd 页面数据封装 * @return ResponseEntity 对象 */ public ResponseEntity<Object> exportData(IPageData pd) throws Exception { return exportMeterWaterSMOImpl.exportExcelData(pd); } /** * 添加应用数据 * * @param pd 页面数据封装 * @return ResponseEntity 对象 */ public ResponseEntity<Object> exportData2(IPageData pd) throws Exception { return exportMeterWaterSMOImpl.exportExcelData(pd); } } service-front/src/main/java/com/java110/front/smo/assetExport/IExportMeterWaterSMO.java
@@ -19,4 +19,10 @@ * @return ResponseEntity */ public ResponseEntity<Object> exportExcelData(IPageData pd) throws Exception; /** * 导入excel数据 * @param pd 前台数据封装 * @return ResponseEntity */ public ResponseEntity<Object> exportExcelData2(IPageData pd) throws Exception; } service-front/src/main/java/com/java110/front/smo/assetExport/impl/ExportMeterWaterSMOImpl.java
@@ -163,6 +163,45 @@ sheet.addMergedRegion(region); } @Override public ResponseEntity<Object> exportExcelData2(IPageData pd) throws Exception { ComponentValidateResult result = this.validateStoreStaffCommunityRelationship(pd, restTemplate); Assert.hasKeyAndValue(JSONObject.parseObject(pd.getReqData()), "communityId", "请求中未包含小区"); Assert.hasKeyAndValue(JSONObject.parseObject(pd.getReqData()), "meterType", "请求中未包含费用项目"); Workbook workbook = null; //工作簿 //工作表 workbook = new XSSFWorkbook(); //获取楼信息 getMeterWater(pd, result, workbook); ByteArrayOutputStream os = new ByteArrayOutputStream(); MultiValueMap headers = new HttpHeaders(); headers.add("content-type", "application/octet-stream;charset=UTF-8"); headers.add("Content-Disposition", "attachment;filename=meteWaterImport_" + DateUtil.getyyyyMMddhhmmssDateString() + ".xlsx"); headers.add("Pargam", "no-cache"); headers.add("Cache-Control", "no-cache"); //headers.add("Content-Disposition", "attachment; filename=" + outParam.getString("fileName")); headers.add("Accept-Ranges", "bytes"); byte[] context = null; try { workbook.write(os); context = os.toByteArray(); os.close(); workbook.close(); } catch (IOException e) { e.printStackTrace(); // 保存数据 return new ResponseEntity<Object>("导出失败", HttpStatus.INTERNAL_SERVER_ERROR); } // 保存数据 return new ResponseEntity<Object>(context, headers, HttpStatus.OK); } public RestTemplate getRestTemplate() { return restTemplate; } service-front/src/main/java/com/java110/front/smo/assetImport/IImportMeterWaterFeeSMO.java
@@ -21,4 +21,6 @@ * @return ResponseEntity */ public ResponseEntity<String> importExcelData(IPageData pd, MultipartFile uploadFile) throws Exception; ResponseEntity<String> importExcelData2(IPageData pd, MultipartFile uploadFile); } service-front/src/main/java/com/java110/front/smo/assetImport/impl/ImportMeterWaterFeeSMOImpl.java
@@ -70,6 +70,27 @@ } } @Override public ResponseEntity<String> importExcelData2(IPageData pd, MultipartFile uploadFile) { try { ComponentValidateResult result = this.validateStoreStaffCommunityRelationship(pd, restTemplate); //InputStream is = uploadFile.getInputStream(); Workbook workbook = ImportExcelUtils.createWorkbook(uploadFile); //工作簿 List<ImportExportMeterWaterDto> rooms = new ArrayList<ImportExportMeterWaterDto>(); //获取楼信息 getRooms(workbook, rooms); // 保存数据 return dealExcelData(pd, rooms, result); } catch (Exception e) { logger.error("导入失败 ", e); return new ResponseEntity<String>("非常抱歉,您填写的模板数据有误:" + e.getMessage(), HttpStatus.BAD_REQUEST); } } /** * 处理ExcelData数据 */