From e925cc31483a602fe20beb7d25f5f401bdbd26ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BB=84=E6=B5=B7?= <10402852@qq.com> Date: Tue, 5 Nov 2024 11:50:09 +0800 Subject: [PATCH] 'commit' --- .../48697D31-12A2-4418-B3A8-6DA85427BF6C.xlsx | Bin 0 -> 3479 bytes .../636FCF96-809A-4A44-87F8-FF75475DCF24.xlsx | Bin 0 -> 3608 bytes .../A5B2D8CE-166B-467D-BE56-041D8E8C15CD.xlsx | Bin 0 -> 3245 bytes .../C1AF51AC-88BD-47BE-9D40-4E922C5D8E5E.xlsx | Bin 0 -> 4027 bytes .../C67EE628-37AA-4CAE-AA24-87B44778EE37.xlsx | Bin 0 -> 3245 bytes .../base/DataEase/Model/DataEaseModel.java | 28 +++-- .../dsideal/base/Util/ExcelCommonUtil.java | 115 +++++++++--------- 7 files changed, 73 insertions(+), 70 deletions(-) create mode 100644 WebRoot/upload/48697D31-12A2-4418-B3A8-6DA85427BF6C.xlsx create mode 100644 WebRoot/upload/636FCF96-809A-4A44-87F8-FF75475DCF24.xlsx create mode 100644 WebRoot/upload/A5B2D8CE-166B-467D-BE56-041D8E8C15CD.xlsx create mode 100644 WebRoot/upload/C1AF51AC-88BD-47BE-9D40-4E922C5D8E5E.xlsx create mode 100644 WebRoot/upload/C67EE628-37AA-4CAE-AA24-87B44778EE37.xlsx diff --git a/WebRoot/upload/48697D31-12A2-4418-B3A8-6DA85427BF6C.xlsx b/WebRoot/upload/48697D31-12A2-4418-B3A8-6DA85427BF6C.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..8443c31f530e133a905c6e5fc94a345f62933a18 GIT binary patch literal 3479 zcmaJ@dpwi<8y+ij3=v9Na@Z!Pd6#o?jEsyShmf(5*_a{6oD!ilhlnVr&Y>J~m_x)c z$5f6bq?S@S7R7I?-|w~8@2%_kJkOp#p8LD+ecku>zAh9JxJ4Mi$;k+hs^+6PyG?!-S<7Wke{eIcj1fU?;UWdLpyxwQa19-3A%%Xv=L#)Zo}zYn!_&2UDFYa?(x z)RRx!G2(3dZ!Zp(>b(8BcgyWPIfi@ooz@>t$)S@hsy$2T zQ(O+!52`~($3*FI?PB*VRnYQfODiVjFL~y+1dg8|?0YE?Wz!>WHB?~$Rq=~!_H)%h zkBRfi?&MoPFEacb+N*bOce*e1_AZiykRV#Mv`6DItijYcI-2UQZ<&H=RuLg#>Y4l84r5u>k-QTL1vmZ@K4TaPLCI;{25q zna_LVCQ~3>AkIaGM#=WsD(E$w$Vo{U0Ewjzjg@AbnH(Ogr!*y2;`Ev(mH&FR4sQ=U zbnXZRt(aR774S4V-*f2Op!jJGo%^%8JDT44PMB~UwLZ}>qVqJ?>R87(+A>`*F-lK* z%-iXME*r8r0rQcR12k3eFA*9R4DHXZq&)iu0d{A-ALpHlag5Q#%pT#TrLK)@*Q;DK zfAYK))<@86k#88eo3j6j9RbD{?gTd!k>KmEJd0B%WLa5Mq#}*#RPdRYlq{b7@r1INpKFQ$a5nQrm{9`EG4tPLEzcIU* zd;vM*`t}|W9Lfm|HXHAM_9(H>Pe1yDZej}LapC7@Aqtq9l?-*sSB5-=*A{X-T*G;o}eoJ z`8j(+aRai^JiyAIu4jmXa-G($v2G8Vvvzj+RP_kvS=J%e`EDpTBP^h)a}jA2(PimE|DmNj2z7; z{g{Z(A81LNNE#R*kM0ha0s{Z~G1@}YmeI4hVzD>8wq zD|`LoN9U7k^SWmai-yqnTA$Kh8Gw(v!ypNMzZft#(1SYoC8RUuz;D z>z6^LP|qH?i3;^XYqwcuSexdih=KMZXZqS{$+AovjXBM7l3`MHnljlU-5wCK1R^tZs zPLI6iUT919_0W(zdPhp~P?$Oq*sNvj&s9%e+q-yntqM$feGV1}2ysGnt6f-hkPxqr zj0@Vqt+rZCy1c7e3m&IjB+0AlI{Ezuz9|$VzTP1c@T_m09O9=((Y__<<@oY#$Bv0l zp@2QwL33QZ2MkCn=I&r-e>*y2>9)vwpx&X%2r zcKeWq<~+fd%x)eC8J=*Cxk8+?@SUwQ6YNcmyXaM-TR3db=j8_0rL7fHPsz%A5Q7JP zP0to}*}Wr-teyYZ=(~RL@=GsS+4-fNm(0Bx6zQ&??+f?qZxSoOE4lT0ABu=9O;<;h zB^On6Hk8yhKi36mEl4MQ4&^UDekM6a({fse188m&lYgRM#=v8|bp3S5)+fGg1TX zlM_|v$9MDK^o15cC~Yc`jNEl>>v3Cj{<^2z$Wq43f*-qKREgT$CcRe|?MGXvh~CNl z^|#K@^Uf^3&Aj*_Vambz@ccV6xaq**p8J%VpHskNCjaI$M(T(^YNgmOa+tLEdt$L9 zf5v=d{J@#rgC%$3W0VDqmeW`GGnSJjy@uu3^UGnUMAL8AFL7{`Mjxc+#zsW&1>cMx zJHC2+EUT?QJb{Fl5+0)J5-8f|jML+qzx}Op}J~Oo<_r7=bIG-*}JSj2QeBgep zZ!n)j&Cbdb-^~+jk#qgFk1Isn;h7|(il;IQhSbEfST^48Y za*a(fPx>2>d0-P@cJEagO=gfae- z#TIT3WHlR1kF;`|x>o5`|y9oD8`9=i>+ ba{axD|2u>z&mmt2hN5Ti``KTG}}VKZUk literal 0 HcmV?d00001 diff --git a/WebRoot/upload/636FCF96-809A-4A44-87F8-FF75475DCF24.xlsx b/WebRoot/upload/636FCF96-809A-4A44-87F8-FF75475DCF24.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..2202271488afc43d9caa24e0009bb075aa7804bf GIT binary patch literal 3608 zcmaJ@c|6nqAIDq~Hg^gg=FSx&gmSCD^hK4?>DU(jr=|+#(v>S~`p-vLztabeIUuSBPxS6(YrQg;G z%;;Z~WpCP)U8mKNmmb$ho??Xd9HonIDEOuP(#ORiMOOVD5 zgL-qBoP1PZPgI^e>92uxe%$ZUY&@qlu!K~QKnx~Bg9Ut$2ly)R??C!%emPdU#S>~Bxq96Q~hkYxO} zuUUeK(5jum6f)HyP4n~poL8P!cl^TYK%jHC>E6jPFr; z-K%7}mRKV3S$fiX;i=a1h?AcBN1UB+Sf?>fULdr8qrWqoFf#F~-6BIm1o0BL6eDL$ zAgc~!o^u{J*+J_ID*(Ndj6j(^R&Rc5-K49vO5`r!hg&gh)ki&u-lVjbiCGyQeI%9g zx-Ti$@7oR9y&)HbKa9E~pF4JtCOPidEkk@by5N3Z?ko^?Se!lE2*cV^d0bgogb3dn zc}`&YVwbY2${~iRR{u;J9?4O!q;y&JEpx*2(vv=k4}#EN>GFZsO`R(kJ;P!m`;EbZ znSD)twoK|PK$QRwV+jbDG{U zxLf=7rime#uP}7ANgA5+nnu8Af6QdU&k7KReT%)lMN3Gl5jw6i<)RwkaZE2~eqQL) z`3k0JVcp;3{kb5K!+FRJ za#UU~E{&Yf+nX|cDEt@zaAIQ^*M1tTh9(=Sp*ib{)n1$?)%WW);s|=eB6OhezKZph zGCPxXzQ)lWT35_yPh76^VC*OJDK6*|GGer?WR{-$45@a3G#p3IU4L<4(YtlC_)J|+ zkkK1C$8-IQc5Ri9yOq)6#bD^JuT3F&Y+68HdAjf7>JKmSuU(yUCItXz_Uc#F8Dq#9+U%{pGF(W z=T$+$sYBe2WsB%gOnX^5r;FNoE2TnSlvWmZf1fgksq3vQ7H84YT+R^-LssV_?}zY; zSt;Er$z!Ic?~mw4$;Ca>nbVPZa`yV50h%mvyQ;v_hme=zl$3JUVoFb%2p?`wqcz*r~i>p9Ao+_CR*5V zluX;od0vW@uA`>f_NnJ^b9%L*CRCxyGR4M0#HZmPRftM`*_-|PHOw=<_MUH{Q3sk32mSm2r+No?B`CxpgxDSe&) z#M@_0n&kFhpV$9+1Airh8yHnOEyL__Qlxp#o?J%ED!A3u z+$lEOi%m}5Sjy38yu2~XbA!6x~4u&CbcDzgoRL!=a;S}MxQdB zQfCAhTSn(O=Fe!mja6&~UuAe3h5ZNw9JqVason2;RX zzuGngx0$?0?Ac3>iSNPs*1(RXtDBu<&d-VC;PQ8hggPo$S{) zdLUq-@yXd-v)-av5-Z>$ZNgU)IBB#pcjzb_#CI1pzx7Ti@&0gq4O?AgrQsC`4rN=y z!?wWOSCW$&50Zr8KkQaE?G)S>oxNyWMLv7Cdf_%NFr)js4C{zzkW0nAMd|t_B{8#X z_&4!`dND&j(l#Zha=_O;a|3wpp%f-pv9m6(bu)rjGNZ7Yd?&2d3YOy`4ZIS?;Jnit zk&OQIt;B3>$y=?6rNe{!wrLM@|jU#r!YkOfLf zcilLci^24eUiPG0{Hu*Ko8JOS`=o_&-uRuY>90w4F={VgsN0MPtp5r9Vi=H&qT*d zde3Zn7<`Qd#EItF_r3ww_yaXO?0U*qjaHbbo)90QQGAc0d-S#^(9&_!?1cE;5tAC? z|A~Kz^iaq@7ucP`s7Z7OVU)kzl}q;)?oK<@khX&?iVXKgw!PK6$2>I=?Z6ALtNMTW zXm9!M5lGDfJE)+L^l!;v?+Wl;MoS%)JLqBfwZh+nb8qQxFQPi}4$7IfOLsfZ-s0V7 wm1XZ8@9}P;Inzmd1AG7(b00000 literal 0 HcmV?d00001 diff --git a/WebRoot/upload/A5B2D8CE-166B-467D-BE56-041D8E8C15CD.xlsx b/WebRoot/upload/A5B2D8CE-166B-467D-BE56-041D8E8C15CD.xlsx new file mode 100644 index 0000000000000000000000000000000000000000..02c3649b2c9c7e94fdbc5551a8813eecb5212f43 GIT binary patch literal 3245 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 AGXMYp literal 0 HcmV?d00001 diff --git a/src/main/java/com/dsideal/base/DataEase/Model/DataEaseModel.java b/src/main/java/com/dsideal/base/DataEase/Model/DataEaseModel.java index df73d10a..35048852 100644 --- a/src/main/java/com/dsideal/base/DataEase/Model/DataEaseModel.java +++ b/src/main/java/com/dsideal/base/DataEase/Model/DataEaseModel.java @@ -352,6 +352,18 @@ public class DataEaseModel { Db.use(DataEaseModel.DB_NAME).update(sql); } + public void fillDefaultXzqh(int identity_id,String tableName){ + //补全默认行政区划 + if (identity_id == 2) { + String sql = "update `" + tableName + "` set `行政区划`='昆明市',`上级行政区划`='云南省' where `行政区划` is null or `上级行政区划` is null"; + Db.use(DB_NAME).update(sql); + } + if (identity_id == 3) { + String sql = "update `" + tableName + "` set `行政区划`='寻甸县',`上级行政区划`='昆明市' where `行政区划` is null or `上级行政区划` is null"; + Db.use(DB_NAME).update(sql); + } + } + /** * 导出Excel * @@ -362,25 +374,21 @@ public class DataEaseModel { * @throws IOException */ public String exportExcel(int identity_id, String tableName, String exportPath, String area_name) throws IOException { - //补全默认行政区划 - if (identity_id == 2) { - String sql = "update `" + tableName + "` set `行政区划`='昆明市',`上级行政区划`='云南省' where `行政区划` is null or `上级行政区划` is null"; - Db.use(DB_NAME).update(sql); - } - if (identity_id == 3) { - String sql = "update `" + tableName + "` set `行政区划`='寻甸县',`上级行政区划`='昆明市' where `行政区划` is null or `上级行政区划` is null"; - Db.use(DB_NAME).update(sql); - } + //填充默认的行政区划 + fillDefaultXzqh(identity_id, tableName); //对此表中的数据进行直接导出EXCEL String sql = "select * from `" + tableName + "`"; if (identity_id > 1) { sql = sql + "where `行政区划`='" + area_name + "'"; } + //获取一下表有哪些列 + List columnNames = getColumns(tableName); + List tableData = Db.use(DataEaseModel.DB_NAME).find(sql); String excelFileName = UUID.randomUUID().toString().toUpperCase() + ".xlsx"; String filePath = exportPath + excelFileName; //导出 - ExcelCommonUtil.writeExcel(tableData, filePath, true); + ExcelCommonUtil.writeExcel(columnNames,tableData, filePath, true); return filePath; } diff --git a/src/main/java/com/dsideal/base/Util/ExcelCommonUtil.java b/src/main/java/com/dsideal/base/Util/ExcelCommonUtil.java index fdceda70..0548d66a 100644 --- a/src/main/java/com/dsideal/base/Util/ExcelCommonUtil.java +++ b/src/main/java/com/dsideal/base/Util/ExcelCommonUtil.java @@ -852,81 +852,76 @@ public class ExcelCommonUtil { * @param filePath * @throws IOException */ - public static void writeExcel(List tableData, String filePath, boolean killIdColumns) throws IOException { + public static void writeExcel(List columnNames, List tableData, String filePath, boolean killIdColumns) throws IOException { if (killIdColumns) { //表tableData中如果有一列叫id,那么去掉这一列 for (Record tableDatum : tableData) { tableDatum.remove("id"); } + columnNames.remove("id"); } // 创建Excel工作簿 Workbook workbook = new XSSFWorkbook(); // 创建一个Excel工作表 Sheet sheet = workbook.createSheet("Sheet1"); - - if(tableData!=null && !tableData.isEmpty() ){ - // 获取第一个Record的元数据以确定列名 - Record firstRecord = tableData.getFirst(); - String[] headers = firstRecord.getColumnNames(); - int columnCount = headers.length; - - // 创建标题行 - Row titleRow = sheet.createRow(0); - // 设置标题行的样式 - CellStyle titleStyle = workbook.createCellStyle(); - Font font = workbook.createFont(); - font.setBold(true); - font.setFontHeightInPoints((short) 14); - titleStyle.setFont(font); - titleStyle.setBorderBottom(BorderStyle.THIN); - titleStyle.setBorderLeft(BorderStyle.THIN); - titleStyle.setBorderRight(BorderStyle.THIN); - titleStyle.setBorderTop(BorderStyle.THIN); - - // 填充标题行 + // 获取第一个Record的元数据以确定列名 + int columnCount = columnNames.size(); + // 创建标题行 + Row titleRow = sheet.createRow(0); + // 设置标题行的样式 + CellStyle titleStyle = workbook.createCellStyle(); + Font font = workbook.createFont(); + font.setBold(true); + font.setFontHeightInPoints((short) 14); + titleStyle.setFont(font); + titleStyle.setBorderBottom(BorderStyle.THIN); + titleStyle.setBorderLeft(BorderStyle.THIN); + titleStyle.setBorderRight(BorderStyle.THIN); + titleStyle.setBorderTop(BorderStyle.THIN); + + // 填充标题行 + for (int i = 1; i <= columnCount; i++) { + Cell cell = titleRow.createCell(i - 1); + cell.setCellValue(columnNames.get(i - 1)); + cell.setCellStyle(titleStyle); + } + + // 创建数据行的样式 + CellStyle dataStyle = workbook.createCellStyle(); + font = workbook.createFont(); + font.setFontHeightInPoints((short) 14); + dataStyle.setFont(font); + dataStyle.setBorderBottom(BorderStyle.THIN); + dataStyle.setBorderLeft(BorderStyle.THIN); + dataStyle.setBorderRight(BorderStyle.THIN); + dataStyle.setBorderTop(BorderStyle.THIN); + + // 填充数据行 + int rowNum = 1; + for (Record record : tableData) { + Row row = sheet.createRow(rowNum++); + int cellNum = 0; for (int i = 1; i <= columnCount; i++) { - Cell cell = titleRow.createCell(i - 1); - cell.setCellValue(headers[i - 1]); - cell.setCellStyle(titleStyle); - } - - // 创建数据行的样式 - CellStyle dataStyle = workbook.createCellStyle(); - font = workbook.createFont(); - font.setFontHeightInPoints((short) 14); - dataStyle.setFont(font); - dataStyle.setBorderBottom(BorderStyle.THIN); - dataStyle.setBorderLeft(BorderStyle.THIN); - dataStyle.setBorderRight(BorderStyle.THIN); - dataStyle.setBorderTop(BorderStyle.THIN); - - // 填充数据行 - int rowNum = 1; - for (Record record : tableData) { - Row row = sheet.createRow(rowNum++); - int cellNum = 0; - for (int i = 1; i <= columnCount; i++) { - Cell cell = row.createCell(cellNum++); - Object value = record.get(headers[i - 1]); - cell.setCellValue(value == null ? "" : value.toString()); - cell.setCellStyle(dataStyle); - } + Cell cell = row.createCell(cellNum++); + Object value = record.get(columnNames.get(i - 1)); + cell.setCellValue(value == null ? "" : value.toString()); + cell.setCellStyle(dataStyle); } + } - // 设置最小列宽 - int minColumnWidth = 100 * 256 / 7; // 将像素转换为字符单位(Excel的单位是1/256个字符宽度) - for (int i = 0; i < headers.length; i++) { - sheet.setColumnWidth(i, Math.max(minColumnWidth, sheet.getColumnWidth(i))); - } + // 设置最小列宽 + int minColumnWidth = 100 * 256 / 7; // 将像素转换为字符单位(Excel的单位是1/256个字符宽度) + for (int i = 0; i < columnNames.size(); i++) { + sheet.setColumnWidth(i, Math.max(minColumnWidth, sheet.getColumnWidth(i))); + } - // 自动调整列宽 - for (int i = 0; i < headers.length; i++) { - sheet.autoSizeColumn(i); - int columnWidth = sheet.getColumnWidth(i); - int newColumnWidth = Math.max(minColumnWidth, columnWidth); - sheet.setColumnWidth(i, newColumnWidth); - } + // 自动调整列宽 + for (int i = 0; i < columnNames.size(); i++) { + sheet.autoSizeColumn(i); + int columnWidth = sheet.getColumnWidth(i); + int newColumnWidth = Math.max(minColumnWidth, columnWidth); + sheet.setColumnWidth(i, newColumnWidth); } // 将工作簿写入文件