若依管理系统导出Excel时添加没有的列和关联码表显示中文进行导出
生活随笔
收集整理的這篇文章主要介紹了
若依管理系统导出Excel时添加没有的列和关联码表显示中文进行导出
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
在使用若依后臺管理系統時對于單表會自動生成導出相關的接口。
此時如果直接進行導出會導出相應的實體類中添加了
@Excel注解的屬性。
自動生成導出接口示例:
??? @GetMapping("/export")public AjaxResult export(KqDksz kqDksz){List<KqDksz> list = kqDkszService.selectKqDkszList(kqDksz);ExcelUtil<KqDksz> util = new ExcelUtil<KqDksz>(KqDksz.class);return util.exportExcel(list, "dksz");}此時會查詢出一個對象的List,然后將這個List作為數據源傳遞給導出的工具類。
在對象的Model中
?
此時如果直接進行導出的話,會導出帶有@Excel注解的屬性。
導出的ExceL如下
?
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關注公眾號
霸道的程序猿
獲取編程相關電子書、教程推送與免費下載。
實現
如果要想多導出一些屬性或者將上面的狀態等需要碼表關聯的屬性關聯后再進行導出。
可以通過修改Mybatis的查詢的xml來實現。
比如數據庫中只有存放的工號,而需要導出姓名。
此時可以在實體類中添加姓名xm這個屬性并添加@Excel注解。
然后在selectKqDkszList查詢數據List時關聯人員表查詢出姓名來
??????????????? SELECTb.id,b.gh,j.xm,FROMkq_bcbdls bLEFT JOIN dp_jbxx j ON b.gh = j.gh這樣就能在導出時添加姓名列了。
如果想將狀態的數字轉換成碼表的中文狀態。
同理狀態屬性設置為String 然后關聯碼表或者字典表查詢出中文顯示并賦值
?
?????????????? SELECTb.id,b.gh,j.xm,s2.dict_label AS zt,FROMkq_bcbdls bLEFT JOIN dp_jbxx j ON b.gh = j.ghLEFT JOIN sys_dict_data s2 ON b.zt = s2.dict_valueAND s2.dict_type = "kqgl_bcbdls_zt"這樣就可以了。
總結
以上是生活随笔為你收集整理的若依管理系统导出Excel时添加没有的列和关联码表显示中文进行导出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MyBatis中传递数组参数和List参
- 下一篇: Vue中向js中传递参数并在js中定义对