Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-boot-biz
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
项目统一框架
amos-boot-biz
Commits
383ba898
Commit
383ba898
authored
Jul 02, 2021
by
tangwei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
解决冲突
parent
f72d279a
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
447 additions
and
422 deletions
+447
-422
BaseDto.java
...in/java/com/yeejoin/amos/boot/biz/common/dto/BaseDto.java
+6
-6
FireChemicalDto.java
...yeejoin/amos/boot/module/jcs/api/dto/FireChemicalDto.java
+25
-11
ExcelListener.java
...yeejoin/amos/boot/module/jcs/api/excel/ExcelListener.java
+48
-48
ExcelUtil.java
...com/yeejoin/amos/boot/module/jcs/api/excel/ExcelUtil.java
+0
-0
ExplicitConstraint.java
...in/amos/boot/module/jcs/api/excel/ExplicitConstraint.java
+20
-20
ExplicitInterface.java
...oin/amos/boot/module/jcs/api/excel/ExplicitInterface.java
+12
-12
RoleNameExplicitConstraint.java
...boot/module/jcs/api/excel/RoleNameExplicitConstraint.java
+29
-29
TemplateCellWriteHandler.java
...s/boot/module/jcs/api/excel/TemplateCellWriteHandler.java
+81
-78
TemplateCellWriteHandlerDate.java
...ot/module/jcs/api/excel/TemplateCellWriteHandlerDate.java
+115
-115
ExcelController.java
.../amos/boot/module/jcs/biz/controller/ExcelController.java
+101
-101
pom.xml
pom.xml
+10
-2
No files found.
amos-boot-biz-common/src/main/java/com/yeejoin/amos/boot/biz/common/dto/BaseDto.java
View file @
383ba898
package
com
.
yeejoin
.
amos
.
boot
.
biz
.
common
.
dto
;
//
import com.alibaba.excel.annotation.ExcelIgnore;
import
com.alibaba.excel.annotation.ExcelIgnore
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -18,22 +18,22 @@ public class BaseDto implements Serializable{
/**
*
*/
//
@ExcelIgnore
@ExcelIgnore
private
static
final
long
serialVersionUID
=
1L
;
//
@ExcelIgnore
@ExcelIgnore
@ApiModelProperty
(
value
=
"主键ID"
)
protected
Long
sequenceNbr
;
//
@ExcelIgnore
@ExcelIgnore
@ApiModelProperty
(
value
=
"更新时间"
)
protected
Date
recDate
;
//
@ExcelIgnore
@ExcelIgnore
@ApiModelProperty
(
value
=
"更新人"
)
protected
String
recUserId
;
/**
* 是否删除
*/
//
@ExcelIgnore
@ExcelIgnore
@TableField
(
value
=
"is_delete"
)
private
Boolean
isDelete
;
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/dto/FireChemicalDto.java
View file @
383ba898
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
dto
;
//
import com.alibaba.excel.annotation.ExcelIgnore;
//
import com.alibaba.excel.annotation.ExcelProperty;
import
com.alibaba.excel.annotation.ExcelIgnore
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.yeejoin.amos.boot.biz.common.dto.BaseDto
;
//
import com.yeejoin.amos.boot.module.jcs.api.excel.ExplicitConstraint;
//
import com.yeejoin.amos.boot.module.jcs.api.excel.RoleNameExplicitConstraint;
import
com.yeejoin.amos.boot.module.jcs.api.excel.ExplicitConstraint
;
import
com.yeejoin.amos.boot.module.jcs.api.excel.RoleNameExplicitConstraint
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
...
...
@@ -22,67 +22,81 @@ import java.util.Date;
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"FireChemicalDto"
,
description
=
"危化品"
)
public
class
FireChemicalDto
extends
BaseDto
{
@ExcelIgnore
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"casNo"
)
@ExcelProperty
(
value
=
"casNo"
,
index
=
1
)
private
String
casNo
;
@ApiModelProperty
(
value
=
"国际危险号"
)
@ExcelProperty
(
value
=
"国际危险号"
,
index
=
2
)
private
String
dangerId
;
@ApiModelProperty
(
value
=
"防护处理"
)
@ExcelProperty
(
value
=
"防护处理"
,
index
=
3
)
private
String
defendWay
;
@ApiModelProperty
(
value
=
"处理措施"
)
@ExcelProperty
(
value
=
"处理措施"
,
index
=
4
)
private
String
dispose
;
@ApiModelProperty
(
value
=
"英文名"
)
@ExcelProperty
(
value
=
"英文名"
,
index
=
5
)
private
String
englishName
;
@ApiModelProperty
(
value
=
"分子式"
)
@ExcelProperty
(
value
=
"分子式"
,
index
=
6
)
private
String
formula
;
@ApiModelProperty
(
value
=
"主要成分"
)
@ExcelProperty
(
value
=
"主要成分"
,
index
=
7
)
private
String
ingredient
;
@ApiModelProperty
(
value
=
"泄漏处理"
)
@ExcelProperty
(
value
=
"泄漏处理"
,
index
=
8
)
private
String
leakWay
;
@ExcelProperty
(
value
=
"中文名"
,
index
=
0
)
@ApiModelProperty
(
value
=
"中文名"
)
private
String
name
;
@ApiModelProperty
(
value
=
"性状"
)
@ExcelProperty
(
value
=
"性状"
,
index
=
9
)
private
String
property
;
@ApiModelProperty
(
value
=
"贮藏方法"
)
@ExcelProperty
(
value
=
"贮藏方法"
,
index
=
10
)
private
String
store
;
@ApiModelProperty
(
value
=
"症状"
)
@ExcelProperty
(
value
=
"症状"
,
index
=
11
)
private
String
symptom
;
@ApiModelProperty
(
value
=
"禁忌物/禁忌"
)
@ExcelProperty
(
value
=
"禁忌物/禁忌"
,
index
=
12
)
private
String
tabu
;
@ExcelIgnore
@ApiModelProperty
(
value
=
"类型code"
)
private
String
typeCode
;
@ExplicitConstraint
(
type
=
"CHEMICALTYPE"
,
indexNum
=
13
,
sourceClass
=
RoleNameExplicitConstraint
.
class
)
//动态下拉内容
@ApiModelProperty
(
value
=
"类型名称"
)
@ExcelProperty
(
value
=
"类型名称"
,
index
=
13
)
private
String
type
;
// @ExplicitConstraint(indexNum=14,source = {"男","女"}) //固定下拉内容
@ExcelProperty
(
value
=
"国标号"
,
index
=
14
)
@ApiModelProperty
(
value
=
"国标号"
)
private
String
un
;
@ApiModelProperty
(
value
=
"化学品图片"
)
@ExcelProperty
(
value
=
"化学品图片"
,
index
=
15
)
private
String
image
;
@ExcelIgnore
@ApiModelProperty
(
value
=
"更新时间"
)
private
Date
updateTime
;
@ExcelIgnore
@ApiModelProperty
(
value
=
"操作人名称"
)
private
String
recUserName
;
...
...
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/ExcelListener.java
View file @
383ba898
//
package com.yeejoin.amos.boot.module.jcs.api.excel;
//
//
import java.util.ArrayList;
//
import java.util.List;
//
//
import com.alibaba.excel.context.AnalysisContext;
//
import com.alibaba.excel.event.AnalysisEventListener;
//
import com.alibaba.fastjson.JSON;
//
//
//
如果没有特殊说明,下面的案例将默认使用这个监听器
//
public class ExcelListener<T> extends AnalysisEventListener<T> {
//
//
List<T> list = new ArrayList<T>();
//
//
public List<T> getList() {
//
return list;
//
}
//
//
public void setList(List<T> list) {
//
this.list = list;
//
}
//
/
//
**
//
* 如果使用了spring,请使用这个构造方法。每次创建Listener的时候需要把spring管理的类传进来
//
*/
//
public ExcelListener() {}
//
//
/**
//
* 这个每一条数据解析都会来调用
//
*
//
* @param data
//
* @param context
//
*/
//
@Override
//
public void invoke(T data, AnalysisContext context) {
//
list.add(data);
//
}
//
//
/**
//
* 所有数据解析完成了 都会来调用
//
*
//
* @param context
//
*/
//
@Override
//
public void doAfterAllAnalysed(AnalysisContext context) {
//
//
}
//
}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
excel
;
import
java.util.ArrayList
;
import
java.util.List
;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.event.AnalysisEventListener
;
import
com.alibaba.fastjson.JSON
;
//如果没有特殊说明,下面的案例将默认使用这个监听器
public
class
ExcelListener
<
T
>
extends
AnalysisEventListener
<
T
>
{
List
<
T
>
list
=
new
ArrayList
<
T
>();
public
List
<
T
>
getList
()
{
return
list
;
}
public
void
setList
(
List
<
T
>
list
)
{
this
.
list
=
list
;
}
/**
* 如果使用了spring,请使用这个构造方法。每次创建Listener的时候需要把spring管理的类传进来
*/
public
ExcelListener
()
{}
/**
* 这个每一条数据解析都会来调用
*
* @param data
* @param context
*/
@Override
public
void
invoke
(
T
data
,
AnalysisContext
context
)
{
list
.
add
(
data
);
}
/**
* 所有数据解析完成了 都会来调用
*
* @param context
*/
@Override
public
void
doAfterAllAnalysed
(
AnalysisContext
context
)
{
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/ExcelUtil.java
View file @
383ba898
This diff is collapsed.
Click to expand it.
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/ExplicitConstraint.java
View file @
383ba898
//
package com.yeejoin.amos.boot.module.jcs.api.excel;
//
//
import java.lang.annotation.*;
/
//
**
//
* 导出模板数据
//
*/
//
@Documented
//
@Retention(RetentionPolicy.RUNTIME)
//
@Target({ElementType.FIELD})
//
public @interface ExplicitConstraint {
//
//定义固定下拉内容
//
String[]source()default {};
//
//定义动态下拉内容,
//
Class[]sourceClass()default {};
//
//列标号必须和字段下标一致
//
int indexNum() default 0;
//
字典type
//
String type() default "";
//
//
}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
excel
;
import
java.lang.annotation.*
;
/**
* 导出模板数据
*/
@Documented
@Retention
(
RetentionPolicy
.
RUNTIME
)
@Target
({
ElementType
.
FIELD
})
public
@interface
ExplicitConstraint
{
//定义固定下拉内容
String
[]
source
()
default
{};
//定义动态下拉内容,
Class
[]
sourceClass
()
default
{};
//列标号必须和字段下标一致
int
indexNum
()
default
0
;
//
字典type
String
type
()
default
""
;
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/ExplicitInterface.java
View file @
383ba898
//
package com.yeejoin.amos.boot.module.jcs.api.excel;
//
//
import com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper;
//
//
public interface ExplicitInterface {
//
/**
//
* 动态下拉列表的内容数组
//
* @return
//
* type 字典类型
//
*/
//
String[] source(String type,DataDictionaryMapper dataDictionaryMapper);
//
}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
excel
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper
;
public
interface
ExplicitInterface
{
/**
* 动态下拉列表的内容数组
* @return
* type 字典类型
*/
String
[]
source
(
String
type
,
DataDictionaryMapper
dataDictionaryMapper
);
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/RoleNameExplicitConstraint.java
View file @
383ba898
//
package com.yeejoin.amos.boot.module.jcs.api.excel;
//
//
import java.util.List;
//
import java.util.stream.Collectors;
//
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
//
import com.yeejoin.amos.boot.module.jcs.api.entity.DataDictionary;
//
import com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper;
//
/
//
***
//
*
//
* 获取动态值
//
*
//
* **/
//
public class RoleNameExplicitConstraint implements ExplicitInterface {
//
//
@Override
//
public String[] source(String type,DataDictionaryMapper dataDictionaryMapper) {
//
QueryWrapper<DataDictionary> queryWrapper = new QueryWrapper<>();
//
queryWrapper.eq("type", type);
//
queryWrapper.orderByAsc("sort_num");
//
List<DataDictionary> list= dataDictionaryMapper.selectList(queryWrapper);
//
List<String> names = list.stream().map(dataDictionary->{
//
return dataDictionary.getName()+"@"+dataDictionary.getCode();
//
}
//
).collect(Collectors.toList());
//
String[] str=names.toArray(new String[names.size()]);
//
return str;
//
}
//
}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
excel
;
import
java.util.List
;
import
java.util.stream.Collectors
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.DataDictionary
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper
;
/***
*
* 获取动态值
*
* **/
public
class
RoleNameExplicitConstraint
implements
ExplicitInterface
{
@Override
public
String
[]
source
(
String
type
,
DataDictionaryMapper
dataDictionaryMapper
)
{
QueryWrapper
<
DataDictionary
>
queryWrapper
=
new
QueryWrapper
<>();
queryWrapper
.
eq
(
"type"
,
type
);
queryWrapper
.
orderByAsc
(
"sort_num"
);
List
<
DataDictionary
>
list
=
dataDictionaryMapper
.
selectList
(
queryWrapper
);
List
<
String
>
names
=
list
.
stream
().
map
(
dataDictionary
->{
return
dataDictionary
.
getName
()+
"@"
+
dataDictionary
.
getCode
();
}
).
collect
(
Collectors
.
toList
());
String
[]
str
=
names
.
toArray
(
new
String
[
names
.
size
()]);
return
str
;
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/TemplateCellWriteHandler.java
View file @
383ba898
//package com.yeejoin.amos.boot.module.jcs.api.excel;
//
//import org.apache.poi.ss.usermodel.Cell;
//import org.apache.poi.ss.usermodel.CellStyle;
//import org.apache.poi.ss.usermodel.DataFormat;
//import org.apache.poi.ss.usermodel.FillPatternType;
//import org.apache.poi.ss.usermodel.Font;
//import org.apache.poi.ss.usermodel.HorizontalAlignment;
//import org.apache.poi.ss.usermodel.IndexedColors;
//import org.apache.poi.ss.usermodel.Row;
//import org.apache.poi.ss.usermodel.VerticalAlignment;
//import org.apache.poi.ss.usermodel.Workbook;
//import com.alibaba.excel.metadata.CellData;
//import com.alibaba.excel.metadata.Head;
//import com.alibaba.excel.write.handler.CellWriteHandler;
//import com.alibaba.excel.write.metadata.holder.WriteSheetHolder;
//import com.alibaba.excel.write.metadata.holder.WriteTableHolder;
//
///**
// * excel通用单元格格式类
// */
//public class TemplateCellWriteHandler implements CellWriteHandler {
//
// @Override
// public void beforeCellCreate(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, Row row,
// Head head, int relativeRowIndex, boolean isHead) {
// // TODO Auto-generated method stub
//
// }
//
// @Override
// public void afterCellCreate(WriteSheetHolder writeSheetHolder, WriteTableHolder writeTableHolder, CellData cellData,
// Cell cell, Head head, int relativeRowIndex, boolean isHead) {
// Workbook workbooks = writeSheetHolder.getSheet().getWorkbook();
// writeSheetHolder.getSheet().setColumnWidth(cell.getColumnIndex(), 20 * 256);
// CellStyle cellStyle = workbooks.createCellStyle();
// cellStyle.setVerticalAlignment(VerticalAlignment.CENTER);//居中
// cellStyle.setAlignment(HorizontalAlignment.CENTER);
// cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND);//设置前景填充样式
// cellStyle.setFillForegroundColor(IndexedColors.ROYAL_BLUE.getIndex());//前景填充色
// Font font1 = workbooks.createFont();//设置字体
// font1.setBold(true);
// font1.setColor((short)1);
// font1.setFontHeightInPoints((short)15);
// cellStyle.setFont(font1);
// cell.setCellStyle(cellStyle);
// //其他列
// if (!isHead){
// CellStyle style = workbooks.createCellStyle();
// DataFormat dataFormat = workbooks.createDataFormat();
// style.setDataFormat(dataFormat.getFormat("@"));
// style.setVerticalAlignment(VerticalAlignment.CENTER);
// style.setAlignment(HorizontalAlignment.CENTER);
// cell.setCellStyle(style);
// }
// //设置日期
// if (!isHead && cell.getColumnIndex()==19 || !isHead && cell.getColumnIndex()==21|| !isHead && cell.getColumnIndex()==20){
// CellStyle style = workbooks.createCellStyle();
// DataFormat dataFormat = workbooks.createDataFormat();
// style.setDataFormat(dataFormat.getFormat("yyyy/mm/dd hh:mm:ss"));
// style.setVerticalAlignment(VerticalAlignment.CENTER);
// style.setAlignment(HorizontalAlignment.CENTER);
// cell.setCellStyle(style);
// }
// //设置金额
// if (!isHead && cell.getColumnIndex()==15 ||!isHead && cell.getColumnIndex()==16||!isHead && cell.getColumnIndex()==22 ||!isHead && cell.getColumnIndex()==24||!isHead && cell.getColumnIndex()==25){
// CellStyle style = workbooks.createCellStyle();
// DataFormat dataFormat = workbooks.createDataFormat();
// style.setDataFormat(dataFormat.getFormat("0.00"));
// style.setVerticalAlignment(VerticalAlignment.CENTER);
// style.setAlignment(HorizontalAlignment.CENTER);
// cell.setCellStyle(style);
// }
// }
//
//
//
//}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
api
.
excel
;
import
org.apache.poi.ss.usermodel.Cell
;
import
org.apache.poi.ss.usermodel.CellStyle
;
import
org.apache.poi.ss.usermodel.DataFormat
;
import
org.apache.poi.ss.usermodel.FillPatternType
;
import
org.apache.poi.ss.usermodel.Font
;
import
org.apache.poi.ss.usermodel.HorizontalAlignment
;
import
org.apache.poi.ss.usermodel.IndexedColors
;
import
org.apache.poi.ss.usermodel.Row
;
import
org.apache.poi.ss.usermodel.VerticalAlignment
;
import
org.apache.poi.ss.usermodel.Workbook
;
import
com.alibaba.excel.metadata.CellData
;
import
com.alibaba.excel.metadata.Head
;
import
com.alibaba.excel.write.handler.CellWriteHandler
;
import
com.alibaba.excel.write.metadata.holder.WriteSheetHolder
;
import
com.alibaba.excel.write.metadata.holder.WriteTableHolder
;
/**
* excel通用单元格格式类
*/
public
class
TemplateCellWriteHandler
implements
CellWriteHandler
{
@Override
public
void
beforeCellCreate
(
WriteSheetHolder
writeSheetHolder
,
WriteTableHolder
writeTableHolder
,
Row
row
,
Head
head
,
int
relativeRowIndex
,
boolean
isHead
)
{
// TODO Auto-generated method stub
}
@Override
public
void
afterCellCreate
(
WriteSheetHolder
writeSheetHolder
,
WriteTableHolder
writeTableHolder
,
CellData
cellData
,
Cell
cell
,
Head
head
,
int
relativeRowIndex
,
boolean
isHead
)
{
Workbook
workbooks
=
writeSheetHolder
.
getSheet
().
getWorkbook
();
if
(
1
==
cell
.
getRowIndex
())
{
writeSheetHolder
.
getSheet
().
setColumnWidth
(
cell
.
getColumnIndex
(),
20
*
256
);
CellStyle
cellStyle
=
workbooks
.
createCellStyle
();
cellStyle
.
setVerticalAlignment
(
VerticalAlignment
.
CENTER
);
//居中
cellStyle
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
cellStyle
.
setFillPattern
(
FillPatternType
.
SOLID_FOREGROUND
);
//设置前景填充样式
cellStyle
.
setFillForegroundColor
(
IndexedColors
.
ROYAL_BLUE
.
getIndex
());
//前景填充色
Font
font1
=
workbooks
.
createFont
();
//设置字体
font1
.
setBold
(
true
);
font1
.
setColor
((
short
)
1
);
font1
.
setFontHeightInPoints
((
short
)
15
);
cellStyle
.
setFont
(
font1
);
cell
.
setCellStyle
(
cellStyle
);
//其他列
if
(!
isHead
){
CellStyle
style
=
workbooks
.
createCellStyle
();
DataFormat
dataFormat
=
workbooks
.
createDataFormat
();
style
.
setDataFormat
(
dataFormat
.
getFormat
(
"@"
));
style
.
setVerticalAlignment
(
VerticalAlignment
.
CENTER
);
style
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
cell
.
setCellStyle
(
style
);
}
//设置日期
if
(!
isHead
&&
cell
.
getColumnIndex
()==
19
||
!
isHead
&&
cell
.
getColumnIndex
()==
21
||
!
isHead
&&
cell
.
getColumnIndex
()==
20
){
CellStyle
style
=
workbooks
.
createCellStyle
();
DataFormat
dataFormat
=
workbooks
.
createDataFormat
();
style
.
setDataFormat
(
dataFormat
.
getFormat
(
"yyyy/mm/dd hh:mm:ss"
));
style
.
setVerticalAlignment
(
VerticalAlignment
.
CENTER
);
style
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
cell
.
setCellStyle
(
style
);
}
//设置金额
if
(!
isHead
&&
cell
.
getColumnIndex
()==
15
||!
isHead
&&
cell
.
getColumnIndex
()==
16
||!
isHead
&&
cell
.
getColumnIndex
()==
22
||!
isHead
&&
cell
.
getColumnIndex
()==
24
||!
isHead
&&
cell
.
getColumnIndex
()==
25
){
CellStyle
style
=
workbooks
.
createCellStyle
();
DataFormat
dataFormat
=
workbooks
.
createDataFormat
();
style
.
setDataFormat
(
dataFormat
.
getFormat
(
"0.00"
));
style
.
setVerticalAlignment
(
VerticalAlignment
.
CENTER
);
style
.
setAlignment
(
HorizontalAlignment
.
CENTER
);
cell
.
setCellStyle
(
style
);
}
}
}
}
amos-boot-module/amos-boot-module-api/amos-boot-module-jcs-api/src/main/java/com/yeejoin/amos/boot/module/jcs/api/excel/TemplateCellWriteHandlerDate.java
View file @
383ba898
This diff is collapsed.
Click to expand it.
amos-boot-module/amos-boot-module-biz/amos-boot-module-jcs-biz/src/main/java/com/yeejoin/amos/boot/module/jcs/biz/controller/ExcelController.java
View file @
383ba898
//
package com.yeejoin.amos.boot.module.jcs.biz.controller;
//
import org.springframework.web.bind.annotation.RequestMapping;
//
import io.swagger.annotations.ApiOperation;
//
import io.swagger.annotations.Api;
//
import org.springframework.web.bind.annotation.RestController;
//
import org.springframework.web.multipart.MultipartFile;
//
//
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
//
//
import org.apache.commons.beanutils.BeanUtils;
//
import org.bouncycastle.crypto.RuntimeCryptoException;
//
import org.springframework.beans.factory.annotation.Autowired;
//
//
import java.lang.reflect.InvocationTargetException;
//
import java.util.ArrayList;
//
import java.util.List;
//
//
import javax.servlet.http.HttpServletResponse;
//
import org.springframework.web.bind.annotation.*;
//
//
import com.yeejoin.amos.boot.module.jcs.api.dto.ExcelDto;
//
import com.yeejoin.amos.boot.module.jcs.api.dto.FireChemicalDto;
//
import com.yeejoin.amos.boot.module.jcs.api.entity.FireChemical;
//
import com.yeejoin.amos.boot.module.jcs.api.excel.ExcelUtil;
//
import com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper;
//
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireChemicalServiceImpl;
//
import com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireStationServiceImpl;
//
//
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
//
import org.typroject.tyboot.core.foundation.enumeration.UserType;
//
import org.typroject.tyboot.core.foundation.utils.Bean;
//
//
/
//
**
//
* 导出导入
//
*
//
* @author system_generator
//
* @date 2021-06-29
//
*/
//
@RestController
//
@Api(tags = "导出")
//
@RequestMapping(value = "/excel")
//
public class ExcelController extends BaseController {
//
//
//
@Autowired
//
DataDictionaryMapper dataDictionaryMapper;
//
@Autowired
//
FireChemicalServiceImpl fireChemicalServiceImpl;
//
private final String packageUrl="com.yeejoin.amos.boot.module.jcs.api.dto.";
//
//
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
//
@ApiOperation(value = "下载模板")
//
@GetMapping("/template")
//
public void template(HttpServletResponse response,ExcelDto excelDto ) {
//
try {
//
String url=packageUrl+excelDto.getClassUrl();
//
Class clz = Class.forName(url);
//
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), null,clz, dataDictionaryMapper,true);
//
} catch (Exception e) {
//
e.printStackTrace();
//
throw new RuntimeException("系统异常!");
//
}
//
}
//
//
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
//
@ApiOperation(value = "导出危险品")
//
@GetMapping("/getFireStationFile")
//
public void getFireStationFile(HttpServletResponse response,ExcelDto excelDto ) {
//
try {
//
List<FireChemicalDto> date= fireChemicalServiceImpl.queryForFireChemicalList();
//
ExcelUtil.createTemplate(response, excelDto.getFileName(), excelDto.getSheetName(), date,FireChemicalDto.class, dataDictionaryMapper,false);
//
} catch (Exception e) {
//
e.printStackTrace();
//
throw new RuntimeException("系统异常!");
//
}
//
}
//
@TycloudOperation(needAuth = false,ApiLevel = UserType.AGENCY)
//
@ApiOperation(value = "上传文件数据-")
//
@PostMapping("/upload")
//
public void template2(MultipartFile multipartFile, HttpServletResponse response) throws Exception {
//
//
//
List<FireChemicalDto> demoExcelEntities = ExcelUtil.readFirstSheetExcel(multipartFile, FireChemicalDto.class, 1);
//
List<FireChemical> demoExcelEntityErrorList = new ArrayList<>();
//
demoExcelEntities.forEach(
//
demoExcelEntity -> {
//
FireChemical demoExcelEntityError = new FireChemical();
//
demoExcelEntityError = Bean.toPo(demoExcelEntity, demoExcelEntityError);
//
if(demoExcelEntityError.getType()!=null) {
//
String[] dr= demoExcelEntityError.getType().split("@");
//
demoExcelEntityError.setType(dr[0]);
//
demoExcelEntityError.setTypeCode(dr[1]);
//
}
//
demoExcelEntityErrorList.add(demoExcelEntityError);
//
}
//
);
//
fireChemicalServiceImpl.saveOrUpdateBatch(demoExcelEntityErrorList);
//
}
//
//
}
package
com
.
yeejoin
.
amos
.
boot
.
module
.
jcs
.
biz
.
controller
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.Api
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.multipart.MultipartFile
;
import
com.yeejoin.amos.boot.biz.common.controller.BaseController
;
import
org.apache.commons.beanutils.BeanUtils
;
import
org.bouncycastle.crypto.RuntimeCryptoException
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
java.lang.reflect.InvocationTargetException
;
import
java.util.ArrayList
;
import
java.util.List
;
import
javax.servlet.http.HttpServletResponse
;
import
org.springframework.web.bind.annotation.*
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.ExcelDto
;
import
com.yeejoin.amos.boot.module.jcs.api.dto.FireChemicalDto
;
import
com.yeejoin.amos.boot.module.jcs.api.entity.FireChemical
;
import
com.yeejoin.amos.boot.module.jcs.api.excel.ExcelUtil
;
import
com.yeejoin.amos.boot.module.jcs.api.mapper.DataDictionaryMapper
;
import
com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireChemicalServiceImpl
;
import
com.yeejoin.amos.boot.module.jcs.biz.service.impl.FireStationServiceImpl
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.utils.Bean
;
/**
* 导出导入
*
* @author system_generator
* @date 2021-06-29
*/
@RestController
@Api
(
tags
=
"导出"
)
@RequestMapping
(
value
=
"/excel"
)
public
class
ExcelController
extends
BaseController
{
@Autowired
DataDictionaryMapper
dataDictionaryMapper
;
@Autowired
FireChemicalServiceImpl
fireChemicalServiceImpl
;
private
final
String
packageUrl
=
"com.yeejoin.amos.boot.module.jcs.api.dto."
;
@TycloudOperation
(
needAuth
=
false
,
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"下载模板"
)
@GetMapping
(
"/template"
)
public
void
template
(
HttpServletResponse
response
,
ExcelDto
excelDto
)
{
try
{
String
url
=
packageUrl
+
excelDto
.
getClassUrl
();
Class
clz
=
Class
.
forName
(
url
);
ExcelUtil
.
createTemplate
(
response
,
excelDto
.
getFileName
(),
excelDto
.
getSheetName
(),
null
,
clz
,
dataDictionaryMapper
,
true
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
"系统异常!"
);
}
}
@TycloudOperation
(
needAuth
=
false
,
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"导出危险品"
)
@GetMapping
(
"/getFireStationFile"
)
public
void
getFireStationFile
(
HttpServletResponse
response
,
ExcelDto
excelDto
)
{
try
{
List
<
FireChemicalDto
>
date
=
fireChemicalServiceImpl
.
queryForFireChemicalList
();
ExcelUtil
.
createTemplate
(
response
,
excelDto
.
getFileName
(),
excelDto
.
getSheetName
(),
date
,
FireChemicalDto
.
class
,
dataDictionaryMapper
,
false
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
throw
new
RuntimeException
(
"系统异常!"
);
}
}
@TycloudOperation
(
needAuth
=
false
,
ApiLevel
=
UserType
.
AGENCY
)
@ApiOperation
(
value
=
"上传文件数据-"
)
@PostMapping
(
"/upload"
)
public
void
template2
(
MultipartFile
multipartFile
,
HttpServletResponse
response
)
throws
Exception
{
List
<
FireChemicalDto
>
demoExcelEntities
=
ExcelUtil
.
readFirstSheetExcel
(
multipartFile
,
FireChemicalDto
.
class
,
1
);
List
<
FireChemical
>
demoExcelEntityErrorList
=
new
ArrayList
<>();
demoExcelEntities
.
forEach
(
demoExcelEntity
->
{
FireChemical
demoExcelEntityError
=
new
FireChemical
();
demoExcelEntityError
=
Bean
.
toPo
(
demoExcelEntity
,
demoExcelEntityError
);
if
(
demoExcelEntityError
.
getType
()!=
null
)
{
String
[]
dr
=
demoExcelEntityError
.
getType
().
split
(
"@"
);
demoExcelEntityError
.
setType
(
dr
[
0
]);
demoExcelEntityError
.
setTypeCode
(
dr
[
1
]);
}
demoExcelEntityErrorList
.
add
(
demoExcelEntityError
);
}
);
fireChemicalServiceImpl
.
saveOrUpdateBatch
(
demoExcelEntityErrorList
);
}
}
pom.xml
View file @
383ba898
...
...
@@ -53,11 +53,19 @@
<version>3.1.2</version>
</dependency> -->
<!--
<dependency>
<dependency>
<groupId>
com.alibaba
</groupId>
<artifactId>
easyexcel
</artifactId>
<version>
2.0.5
</version>
</dependency> -->
<exclusions>
<exclusion>
<groupId>
org.ow2.asm
</groupId>
<artifactId>
asm
</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- 添加commons-lang依赖包 -->
<dependency>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment