springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/community/CommunityService.java
@@ -346,7 +346,7 @@ * @param comMngRealCompanyBelongsDTO * @return */ @GetMapping("/common/data/company/belongs") @PostMapping("/common/data/company/belongs") R belongsComMngRealCompany(@RequestBody ComMngRealCompanyBelongsDTO comMngRealCompanyBelongsDTO); @@ -1603,4 +1603,5 @@ */ @PostMapping("/common/data/population/editTag") R editTagPopulation(ComMngPopulationTagDTO populationTagDTO); } springcloud_k8s_panzhihuazhihuishequ/community_backstage/pom.xml
@@ -48,30 +48,7 @@ <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-scratchpad</artifactId> <version>3.11-beta2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.11-beta2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml-schemas</artifactId> <version>3.11-beta2</version> </dependency> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-excelant</artifactId> <version>3.11-beta2</version> </dependency> </dependencies> <build> <plugins> springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/api/CommonDataApi.java
@@ -26,8 +26,6 @@ import com.panzhihua.community_backstage.easyexcel.UploadEexcelUserDTOListener; import com.panzhihua.community_backstage.excel.CustomSheetWriteHandler; import com.panzhihua.community_backstage.model.dto.ExcelExportDto; import com.panzhihua.community_backstage.utils.ExportExcelUtil; import com.panzhihua.community_backstage.utils.ExportExcelWrapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiOperation; @@ -536,7 +534,7 @@ @ApiOperation(value = "实有单位归属地", response = ComMngRealCompanyVO.class) @GetMapping("/company/belongs") @PostMapping("/company/belongs") public R belongsComMngRealCompany(@RequestBody ComMngRealCompanyBelongsDTO comMngRealCompanyBelongsDTO) { return communityService.belongsComMngRealCompany(comMngRealCompanyBelongsDTO); } @@ -724,34 +722,154 @@ return communityService.editTagPopulation(populationTagDTO); } @ApiOperation(value = "实有人口导入模板") @PostMapping("/population/export") public void exportPopulation(HttpServletRequest request, HttpServletResponse response) { // @ApiOperation(value = "实有人口导入模板") // @PostMapping("/population/export") // public void exportPopulation(HttpServletRequest request, HttpServletResponse response) { // //获取登陆用户 // LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); // //获取登陆用户绑定社区id // Long communityId = loginUserInfo.getCommunityId(); // //创建Excel工具类对象 // ExportExcelWrapper<ExcelExportDto> util = new ExportExcelWrapper<>(); // //创建示范数据对象list // List<ExcelExportDto> list = new ArrayList<>(); // //创建表头数组集合 // String[] columnNames = new String[50]; // //加载默认表头数据 // for (int i = 0; i < ExportExcelUtil.ExportField.length; i++) { // columnNames[i] = ExportExcelUtil.ExportField[i]; // } // //查询当前社区标签列表 // R tagsResult = userService.listTags(communityId); // if(Constants.SUCCESS.equals(tagsResult.getCode())){ // List<String> TagsList = (List<String>)tagsResult.getData(); // //动态加载标签列表到表头 // for (int i = 0; i < TagsList.size(); i++) { // columnNames[ExportExcelUtil.ExportField.length + i] = TagsList.get(i) + "(是或否)"; // } // } // //导出模板 // util.exportExcel("实有人口导入模板", "实有人口导入模板", columnNames, list, response, ExportExcelUtil.EXCEl_FILE_2007); // } @ApiOperation(value = "下载居民导入模板") @GetMapping("/population/export") public R exportPopulation() { //获取登陆用户 LoginUserInfoVO loginUserInfo = this.getLoginUserInfo(); //获取登陆用户绑定社区id Long communityId = loginUserInfo.getCommunityId(); //创建Excel工具类对象 ExportExcelWrapper<ExcelExportDto> util = new ExportExcelWrapper<>(); //创建示范数据对象list List<ExcelExportDto> list = new ArrayList<>(); //创建表头数组集合 String[] columnNames = new String[50]; //加载默认表头数据 for (int i = 0; i < ExportExcelUtil.ExportField.length; i++) { columnNames[i] = ExportExcelUtil.ExportField[i]; } //生成动态模板excel通过ftp工具上传到主节点,然后返回模板下载地址 String ftpUrl = "/mnt/data/web/excel/"; String name = "实有人口导入模板.xlsx"; try { SFTPUtil sftp = new SFTPUtil(userName, password, host, port); sftp.login(); boolean existDir = sftp.isExistDir(ftpUrl + name); if (!existDir) { String property = System.getProperty("user.dir"); String fileName = property + File.separator + name; // 这里 需要指定写用哪个class去写 InputStream inputStream = null; try { List<List<String>> list = new ArrayList<>(); list = dataFilling(); //查询当前社区标签列表 R tagsResult = userService.listTags(communityId); if(Constants.SUCCESS.equals(tagsResult.getCode())){ List<String> TagsList = (List<String>)tagsResult.getData(); //动态加载标签列表到表头 for (int i = 0; i < TagsList.size(); i++) { columnNames[ExportExcelUtil.ExportField.length + i] = TagsList.get(i) + "(是或否)"; List<String> head = new ArrayList<>(); head.add(TagsList.get(i)); list.add(head); } } //导出模板 util.exportExcel("实有人口导入模板", "实有人口导入模板", columnNames, list, response, ExportExcelUtil.EXCEl_FILE_2007); List<List<Object>> dataList = new ArrayList<>(); List<Object> data = new ArrayList<>(); data.add("张三"); data.add("男"); data.add(25); data.add("是"); data.add("樱花街"); data.add(115); data.add("15栋"); data.add(10); data.add(1001); data.add("汉族"); data.add("群众"); data.add("513421199508187219"); data.add("13768548521"); dataList.add(data); EasyExcel.write(fileName).head(list).sheet("实有人口导入模板").doWrite(dataList); File file = new File(fileName); inputStream = new FileInputStream(file); sftp.uploadMore(ftpUrl, name, inputStream); sftp.logout(); inputStream.close(); String absolutePath = file.getAbsolutePath(); boolean delete = file.delete(); log.info("删除excel【{}】结果【{}】", absolutePath, delete); } finally { // 千万别忘记finish 会帮忙关闭流 if (inputStream != null) { inputStream.close(); } } } return R.ok(excelUrl + "实有人口导入模板.xlsx"); } catch (Exception e) { e.printStackTrace(); log.error("文件传输失败【{}】", e.getMessage()); return R.fail(); } } private List<List<String>> dataFilling(){ List<List<String>> list = new ArrayList<List<String>>(); List<String> head0 = new ArrayList<String>(); head0.add("家庭成员"); List<String> head1 = new ArrayList<String>(); head1.add("性别"); List<String> head2 = new ArrayList<String>(); head2.add("年龄"); List<String> head3 = new ArrayList<String>(); head3.add("是否租住"); List<String> head4 = new ArrayList<String>(); head4.add("街路巷"); List<String> head5 = new ArrayList<String>(); head5.add("门牌号"); List<String> head6 = new ArrayList<String>(); head6.add("楼排号"); List<String> head7 = new ArrayList<String>(); head7.add("单元号"); List<String> head8 = new ArrayList<String>(); head8.add("户室"); List<String> head10 = new ArrayList<String>(); head10.add("民族"); List<String> head11 = new ArrayList<String>(); head11.add("政治面貌"); List<String> head12 = new ArrayList<String>(); head12.add("身份证"); List<String> head13 = new ArrayList<String>(); head13.add("联系方式"); list.add(head0); list.add(head1); list.add(head2); list.add(head3); list.add(head4); list.add(head5); list.add(head6); list.add(head7); list.add(head8); list.add(head10); list.add(head11); list.add(head12); list.add(head13); return list; } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/excel/CustomSheetWriteHandler.java
@@ -30,22 +30,18 @@ // 区间设置 第一列第一行和第二行的数据。由于第一行是头,所以第一、二行的数据实际上是第二三行 CellRangeAddressList cellRangeAddressList = new CellRangeAddressList(1, 2000, 2, 2); CellRangeAddressList cellRangeAddressList1 = new CellRangeAddressList(1, 2000, 5 ,5); CellRangeAddressList cellRangeAddressList2 = new CellRangeAddressList(1, 2000, 12 ,12); CellRangeAddressList cellRangeAddressList3 = new CellRangeAddressList(1, 2000, 14 ,22); CellRangeAddressList cellRangeAddressList1 = new CellRangeAddressList(1, 2000, 4 ,4); CellRangeAddressList cellRangeAddressList2 = new CellRangeAddressList(1, 2000, 11 ,11); DataValidationHelper helper = writeSheetHolder.getSheet().getDataValidationHelper(); DataValidationConstraint constraint = helper.createExplicitListConstraint(new String[] {"是", "否"}); DataValidationConstraint constraint1 = helper.createExplicitListConstraint(new String[] {"党员", "团员","群众"}); DataValidation dataValidation = helper.createValidation(constraint, cellRangeAddressList); DataValidation dataValidation1 = helper.createValidation(constraint1, cellRangeAddressList1); DataValidation dataValidation2= helper.createValidation(constraint, cellRangeAddressList2); DataValidation dataValidation3= helper.createValidation(constraint, cellRangeAddressList3); DataValidationConstraint constraint1 = helper.createExplicitListConstraint(new String[] {"中共党员","中共预备党员","共青团员","民革党员","民盟盟员","民建会员","农工党党员","致公党党员","九三学社社员","台盟盟员","无党派人士","群众"}); DataValidationConstraint constraint2 = helper.createExplicitListConstraint(new String[] {"男", "女","未知"}); DataValidation dataValidation = helper.createValidation(constraint2, cellRangeAddressList); DataValidation dataValidation1 = helper.createValidation(constraint, cellRangeAddressList1); DataValidation dataValidation2= helper.createValidation(constraint1, cellRangeAddressList2); writeSheetHolder.getSheet().addValidationData(dataValidation); writeSheetHolder.getSheet().addValidationData(dataValidation1); writeSheetHolder.getSheet().addValidationData(dataValidation2); writeSheetHolder.getSheet().addValidationData(dataValidation3); } } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/model/dto/ExcelExportDto.java
@@ -1,5 +1,6 @@ package com.panzhihua.community_backstage.model.dto; import com.alibaba.excel.annotation.ExcelProperty; import lombok.Data; @Data @@ -8,53 +9,66 @@ /** * 家庭成员 */ @ExcelProperty("家庭成员") private String name = "张三"; /** * 性别 */ @ExcelProperty("性别") private String sex = "男"; /** * 年龄 */ @ExcelProperty("年龄") private String age = "25"; /** * 是否租住 */ @ExcelProperty("是否租住") private String isRent = "是"; /** * 街路巷 */ @ExcelProperty("街路巷") private String road = "樱花街"; /** * 门牌号 */ @ExcelProperty("门牌号") private String doorNo = "115"; /** * 楼排号 */ @ExcelProperty("楼排号") private String floor = "15栋"; /** * 单元号 */ @ExcelProperty("单元号") private String unitNo = "10"; /** * 户室 */ @ExcelProperty("户室") private String houseNo = "1001"; /** * 民族 */ @ExcelProperty("民族") private String nation = "汉族"; /** * 政治面貌 */ @ExcelProperty("政治面貌") private String politicalOutlook = "群众"; /** * 身份证 */ @ExcelProperty("身份证") private String cardNo = "513421199508187219"; /** * 联系方式 */ @ExcelProperty("联系方式") private String phone = "13768548521"; } springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/utils/ExportExcelUtil.java
File was deleted springcloud_k8s_panzhihuazhihuishequ/community_backstage/src/main/java/com/panzhihua/community_backstage/utils/ExportExcelWrapper.java
File was deleted springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommonDataApi.java
@@ -132,7 +132,7 @@ return comMngRealCompanyService.detailComMngRealCompany(id); } @GetMapping("/company/belongs") @PostMapping("/company/belongs") public R belongsComMngRealCompany(@RequestBody ComMngRealCompanyBelongsDTO comMngRealCompanyBelongsDTO) { return comMngRealCompanyService.belongsComMngRealCompany(comMngRealCompanyBelongsDTO); } springcloud_k8s_panzhihuazhihuishequ/service_user/src/main/java/com/panzhihua/service_user/service/impl/UserServiceImpl.java
@@ -1542,7 +1542,7 @@ @Override public R listTags(Long communityId) { List<String> list=new ArrayList<>(); List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO.selectList(new QueryWrapper<ComMngUserTagDO>().eq("sysFlag",1).or().eq("communityId",communityId)); List<ComMngUserTagDO> comMngUserTagDOS = comMngUserTagDAO.selectList(new QueryWrapper<ComMngUserTagDO>().eq("sys_flag",1).or().eq("community_id",communityId)); if (!ObjectUtils.isEmpty(comMngUserTagDOS)) { list=comMngUserTagDOS.stream().map(comMngUserTagDO -> comMngUserTagDO.getTagName()).collect(Collectors.toList()); }