Commit 845d8e78bd38889990500b5dc69422df4459d01f
1 parent
552cb337
Exists in
dev
1: 项目类型下拉框
Showing
4 changed files
with
33 additions
and
25 deletions
Show diff stats
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicCmtyController.java
... | ... | @@ -194,9 +194,18 @@ public class McBasicCmtyController extends BaseController { |
194 | 194 | List<String> xllist = new ArrayList<>(); |
195 | 195 | xllist.add("乡燃"); |
196 | 196 | xllist.add("城燃"); |
197 | + List<String> xllist2 = new ArrayList<>(); | |
198 | + xllist2.add("雷行动项目(市政中压已覆盖)"); | |
199 | + xllist2.add("扫雷行动项目(市政中压未覆盖)"); | |
200 | + xllist2.add("新增空白项目(市政中压已覆盖)"); | |
201 | + xllist2.add("新增空白项目(市政中压未覆盖)"); | |
202 | + xllist2.add("已通气项目零散开发"); | |
203 | + HashMap<Integer, List<String>> d = new HashMap<>(); | |
204 | + d.put(11,xllist); | |
205 | + d.put(12,xllist2); | |
197 | 206 | // 这里需要设置不关闭流 |
198 | 207 | EasyExcel.write(response.getOutputStream(), McBasicCmty.class) |
199 | - .registerWriteHandler(new McBasicCmtySheetWriteHandler(xllist, 11)) | |
208 | + .registerWriteHandler(new McBasicCmtySheetWriteHandler(d)) | |
200 | 209 | .autoCloseStream(Boolean.FALSE) |
201 | 210 | .sheet("客户信息列表") |
202 | 211 | .doWrite(list); | ... | ... |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/controller/McBasicMoneyController.java
... | ... | @@ -151,9 +151,11 @@ public class McBasicMoneyController extends BaseController { |
151 | 151 | List<String> xllist = new ArrayList<>(); |
152 | 152 | xllist.add("乡燃"); |
153 | 153 | xllist.add("城燃"); |
154 | + HashMap<Integer, List<String>> d = new HashMap<>(); | |
155 | + d.put(11,xllist); | |
154 | 156 | // 这里需要设置不关闭流 |
155 | 157 | EasyExcel.write(response.getOutputStream(), McBasicMoney.class) |
156 | - .registerWriteHandler(new McBasicCmtySheetWriteHandler(xllist, 11)) | |
158 | + .registerWriteHandler(new McBasicCmtySheetWriteHandler(d)) | |
157 | 159 | .autoCloseStream(Boolean.FALSE) |
158 | 160 | .sheet("客户信息列表") |
159 | 161 | .doWrite(list); | ... | ... |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/utils/listener/McBasicCmtyImportInspection.java
... | ... | @@ -33,6 +33,17 @@ public class McBasicCmtyImportInspection extends AnalysisEventListener<McBasicCm |
33 | 33 | throw new RuntimeException(String.format("第%s行 城乡分类 请选择‘乡燃’或‘城燃’,请核实", context.readRowHolder().getRowIndex() + 1)); |
34 | 34 | } |
35 | 35 | } |
36 | + if (StringUtils.isNotEmpty(mcBasicCmty.getProjectTypeName())) { | |
37 | + if ( | |
38 | + !mcBasicCmty.getProjectTypeName().equals("雷行动项目(市政中压已覆盖)") | |
39 | + && !mcBasicCmty.getProjectTypeName().equals("扫雷行动项目(市政中压未覆盖)") | |
40 | + && !mcBasicCmty.getProjectTypeName().equals("新增空白项目(市政中压已覆盖)") | |
41 | + && !mcBasicCmty.getProjectTypeName().equals("新增空白项目(市政中压未覆盖)") | |
42 | + && !mcBasicCmty.getProjectTypeName().equals("已通气项目零散开发") | |
43 | + ){ | |
44 | + throw new RuntimeException(String.format("第%s行 项目类型 请选择‘雷行动项目(市政中压已覆盖)’‘扫雷行动项目(市政中压未覆盖)’‘新增空白项目(市政中压已覆盖)’‘新增空白项目(市政中压未覆盖)’‘已通气项目零散开发’,请核实", context.readRowHolder().getRowIndex() + 1)); | |
45 | + } | |
46 | + } | |
36 | 47 | } |
37 | 48 | |
38 | 49 | /** | ... | ... |
zr-cloud/zr-modules/zr-schsf/src/main/java/com/chinagas/modules/schsf/utils/listener/McBasicCmtySheetWriteHandler.java
... | ... | @@ -6,33 +6,20 @@ import com.alibaba.excel.write.metadata.holder.WriteWorkbookHolder; |
6 | 6 | import org.apache.poi.ss.usermodel.*; |
7 | 7 | import org.apache.poi.ss.util.CellRangeAddressList; |
8 | 8 | |
9 | -import java.util.HashMap; | |
10 | 9 | import java.util.List; |
11 | 10 | import java.util.Map; |
12 | 11 | |
13 | 12 | public class McBasicCmtySheetWriteHandler implements SheetWriteHandler { |
14 | 13 | |
15 | - private List<String> selectDataList; | |
16 | - private int ls = 0; | |
14 | + private Map<Integer, List<String>> selectDataMap; | |
17 | 15 | |
18 | - public McBasicCmtySheetWriteHandler(List<String> selectDataList, int ls) { | |
19 | - this.selectDataList = selectDataList; | |
20 | - this.ls = ls; | |
16 | + public McBasicCmtySheetWriteHandler(Map<Integer, List<String>> selectDataMap) { | |
17 | + this.selectDataMap = selectDataMap; | |
21 | 18 | } |
22 | 19 | |
23 | - /** | |
24 | - * 想实现Excel引用其他sheet页数据作为单元格下拉选项值, | |
25 | - * 需要重写该方法 | |
26 | - * | |
27 | - * @param writeWorkbookHolder | |
28 | - * @param writeSheetHolder | |
29 | - */ | |
30 | 20 | @Override |
31 | 21 | public void afterSheetCreate(WriteWorkbookHolder writeWorkbookHolder, WriteSheetHolder writeSheetHolder) { |
32 | - // 构造下拉选项单元格列的位置,以及下拉选项可选参数值的map集合 | |
33 | - Map<Integer, List<String>> selectParamMap = new HashMap<>(); | |
34 | - selectParamMap.put(ls, selectDataList); // 假设下拉选项放在第一列 | |
35 | - | |
22 | + int globalIndex = 1; | |
36 | 23 | // 获取第一个sheet页 |
37 | 24 | Sheet sheet = writeSheetHolder.getCachedSheet(); |
38 | 25 | // 获取sheet页的数据校验对象 |
... | ... | @@ -40,14 +27,13 @@ public class McBasicCmtySheetWriteHandler implements SheetWriteHandler { |
40 | 27 | // 获取工作簿对象,用于创建存放下拉数据的字典sheet数据页 |
41 | 28 | Workbook workbook = writeWorkbookHolder.getWorkbook(); |
42 | 29 | |
43 | - // 迭代索引,用于存放下拉数据的字典sheet命名 | |
44 | - int index = 1; | |
45 | - for (Map.Entry<Integer, List<String>> entry : selectParamMap.entrySet()) { | |
30 | + for (Map.Entry<Integer, List<String>> entry : selectDataMap.entrySet()) { | |
46 | 31 | // 设置存放下拉数据的字典sheet,并把这些sheet隐藏掉,这样用户交互更友好 |
47 | - String dictSheetName = "dict_hide_sheet" + index; | |
32 | + String dictSheetName = "dict_hide_sheet" + globalIndex; | |
48 | 33 | Sheet dictSheet = workbook.createSheet(dictSheetName); |
49 | 34 | // 隐藏字典sheet页 |
50 | - workbook.setSheetHidden(index++, true); | |
35 | + workbook.setSheetHidden(globalIndex, true); | |
36 | + | |
51 | 37 | // 创建一个名为“dictSheetName”的名称,指向字典表中的数据区域 |
52 | 38 | String refers = dictSheetName + "!$A$1:$A$" + (entry.getValue().size() + 1); |
53 | 39 | Name name = workbook.createName(); |
... | ... | @@ -69,7 +55,7 @@ public class McBasicCmtySheetWriteHandler implements SheetWriteHandler { |
69 | 55 | DataValidation dataValidation = helper.createValidation(constraint, infoList); |
70 | 56 | sheet.addValidationData(dataValidation); |
71 | 57 | |
72 | - index++; | |
58 | + globalIndex++; | |
73 | 59 | } |
74 | 60 | } |
75 | 61 | } | ... | ... |