Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
C
cloud-platform
Project
Project
Details
Activity
Releases
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
youjj
cloud-platform
Commits
92b5c848
Commit
92b5c848
authored
May 06, 2019
by
hezhen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加分公司导入功能
parent
1007a052
Changes
13
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
2277 additions
and
4 deletions
+2277
-4
pom.xml
vehicle/pom.xml
+39
-1
BranchCompanyStockService.java
...aravan/caravan/vehicle/biz/BranchCompanyStockService.java
+57
-0
BranchCompanyStockInfoMapper.java
.../caravan/vehicle/mapper/BranchCompanyStockInfoMapper.java
+1
-1
SysRegionMapper.java
...xinxincaravan/caravan/vehicle/mapper/SysRegionMapper.java
+3
-0
BranchCompanyStockController.java
...an/caravan/vehicle/rest/BranchCompanyStockController.java
+15
-0
Excel2003Reader.java
...incaravan/caravan/vehicle/util/excel/Excel2003Reader.java
+275
-0
Excel2007Reader.java
...incaravan/caravan/vehicle/util/excel/Excel2007Reader.java
+667
-0
Excel2Html.java
.../xinxincaravan/caravan/vehicle/util/excel/Excel2Html.java
+427
-0
ExcelExport.java
...xinxincaravan/caravan/vehicle/util/excel/ExcelExport.java
+609
-0
ExcelImport.java
...xinxincaravan/caravan/vehicle/util/excel/ExcelImport.java
+152
-0
XssfDataType.java
...inxincaravan/caravan/vehicle/util/excel/XssfDataType.java
+12
-0
BranchCompanyStockInfoMapper.xml
...rc/main/resources/mapper/BranchCompanyStockInfoMapper.xml
+12
-0
SysRegionMapper.xml
vehicle/src/main/resources/mapper/SysRegionMapper.xml
+8
-2
No files found.
vehicle/pom.xml
View file @
92b5c848
...
...
@@ -30,6 +30,7 @@
<mapper.version>
3.4.0
</mapper.version>
<mybatis.version>
3.3.1
</mybatis.version>
<mybatis.spring.version>
1.2.4
</mybatis.spring.version>
<poi.version>
3.15
</poi.version>
</properties>
<dependencies>
...
...
@@ -144,7 +145,44 @@
<artifactId>
log4j
</artifactId>
<version>
1.2.17
</version>
</dependency>
<!-- excel 组件 -->
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi
</artifactId>
<version>
${poi.version}
</version>
</dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi-ooxml
</artifactId>
<version>
${poi.version}
</version>
</dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi-ooxml-schemas
</artifactId>
<version>
${poi.version}
</version>
<exclusions>
<exclusion>
<artifactId>
stax-api
</artifactId>
<groupId>
stax
</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>
org.apache.poi
</groupId>
<artifactId>
poi-ooxml
</artifactId>
<version>
${poi.version}
</version>
</dependency>
<dependency>
<groupId>
org.apache.xmlbeans
</groupId>
<artifactId>
xmlbeans
</artifactId>
<version>
2.6.0
</version>
<exclusions>
<exclusion>
<artifactId>
stax-api
</artifactId>
<groupId>
stax
</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>
org.projectlombok
</groupId>
<artifactId>
lombok
</artifactId>
...
...
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/biz/BranchCompanyStockService.java
View file @
92b5c848
...
...
@@ -12,11 +12,14 @@ import com.xinxincaravan.caravan.vehicle.entity.BranchCompanyStockInfo;
import
com.xinxincaravan.caravan.vehicle.mapper.BranchCompanyMapper
;
import
com.xinxincaravan.caravan.vehicle.mapper.BranchCompanyStockApplyInfoMapper
;
import
com.xinxincaravan.caravan.vehicle.mapper.BranchCompanyStockInfoMapper
;
import
com.xinxincaravan.caravan.vehicle.mapper.SysRegionMapper
;
import
com.xinxincaravan.caravan.vehicle.util.excel.ExcelImport
;
import
com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockApplyInfoVo
;
import
com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockApplyVo
;
import
com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockInfoVo
;
import
com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockSearchVo
;
import
org.apache.commons.io.FileUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.joda.time.DateTime
;
import
org.joda.time.format.DateTimeFormat
;
import
org.joda.time.format.DateTimeFormatter
;
...
...
@@ -32,8 +35,11 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletRequest
;
import
java.io.File
;
import
java.io.IOException
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.concurrent.TimeUnit
;
...
...
@@ -59,6 +65,8 @@ public class BranchCompanyStockService {
@Autowired
BranchCompanyStockApplyInfoMapper
branchCompanyStockApplyInfoMapper
;
@Autowired
SysRegionMapper
sysRegionMapper
;
public
PageInfo
<
BranchCompanyStockInfoVo
>
selectAll
(
Integer
page
,
Integer
limit
)
{
PageHelper
.
startPage
(
page
,
limit
);
...
...
@@ -228,4 +236,53 @@ public class BranchCompanyStockService {
headers
.
setContentType
(
MediaType
.
APPLICATION_OCTET_STREAM
);
return
new
ResponseEntity
<
byte
[]>(
FileUtils
.
readFileToByteArray
(
file
),
headers
,
HttpStatus
.
CREATED
);
}
public
RestResponse
<
String
>
importExcel
(
MultipartFile
multipartfile
,
HttpServletRequest
request
){
try
{
List
<
String
[]>
readExcel
=
ExcelImport
.
getExcelData
(
multipartfile
);
if
(
readExcel
.
size
()<
4
){
return
RestResponse
.
codeAndMessage
(
1001
,
"导入不能没数据!!!"
);
}
List
<
BranchCompanyStockInfo
>
list
=
new
ArrayList
<>();
for
(
int
i
=
3
;
i
<
readExcel
.
size
();
i
++)
{
BranchCompanyStockInfo
stockInfoVo
=
new
BranchCompanyStockInfo
();
String
[]
str
=
readExcel
.
get
(
i
);
String
province
=
str
[
2
];
String
city
=
str
[
3
];
Integer
addr_province
=
sysRegionMapper
.
getNumber
(
province
);
Integer
addr_city
=
sysRegionMapper
.
getNumber
(
city
);
String
company_name
=
str
[
5
];
String
str6
=
str
[
6
];
if
(
StringUtils
.
isNotBlank
(
str6
)){
if
(
str6
.
contains
(
"万港币/股"
)){
str6
=
str6
.
replace
(
"万港币/股"
,
""
);
}
else
{
str6
=
str6
.
replace
(
"万/股"
,
""
);
}
}
else
{
str6
=
"0"
;
}
BigDecimal
price
=
new
BigDecimal
(
str6
);
price
=
price
.
multiply
(
new
BigDecimal
(
"10000"
));
Integer
balance
=
Integer
.
parseInt
(
str
[
7
]);
Integer
total
=
Integer
.
parseInt
(
str
[
8
])+
balance
;
stockInfoVo
.
setCompanyName
(
company_name
);
stockInfoVo
.
setPrice
(
price
);
stockInfoVo
.
setBalance
(
balance
);
stockInfoVo
.
setTotal
(
total
);
stockInfoVo
.
setState
(
2
);
stockInfoVo
.
setAddrProvince
(
addr_province
);
stockInfoVo
.
setAddrCity
(
addr_city
);
stockInfoVo
.
setCompanyPic
(
"1"
);
list
.
add
(
stockInfoVo
);
branchCompanyStockInfoMapper
.
insertSelective
(
stockInfoVo
);
}
// branchCompanyStockInfoMapper.addCompamyList(list);
}
catch
(
Exception
e
){
e
.
printStackTrace
();
return
RestResponse
.
codeAndMessage
(
10001
,
"网络异常!"
);
}
return
RestResponse
.
suc
();
}
}
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/mapper/BranchCompanyStockInfoMapper.java
View file @
92b5c848
...
...
@@ -5,7 +5,6 @@ import com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockInfoVo;
import
com.xinxincaravan.caravan.vehicle.vo.BranchCompanyStockSearchVo
;
import
org.apache.ibatis.annotations.Param
;
import
tk.mybatis.mapper.common.Mapper
;
import
java.util.List
;
public
interface
BranchCompanyStockInfoMapper
extends
Mapper
<
BranchCompanyStockInfo
>
{
...
...
@@ -16,4 +15,5 @@ public interface BranchCompanyStockInfoMapper extends Mapper<BranchCompanyStockI
int
updateBalance
(
@Param
(
"companyId"
)
Integer
companyId
,
@Param
(
"balance"
)
Integer
balance
,
@Param
(
"lastBalance"
)
Integer
lastBalance
);
List
<
Integer
>
selectAllPrice
();
int
addCompamyList
(
@Param
(
"list"
)
List
<
BranchCompanyStockInfo
>
list
);
}
\ No newline at end of file
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/mapper/SysRegionMapper.java
View file @
92b5c848
...
...
@@ -12,4 +12,7 @@ public interface SysRegionMapper extends Mapper<SysRegion> {
public
List
<
SysRegion
>
getAllByPage
(
Map
<
String
,
Object
>
params
);
public
List
<
SysRegion
>
getByIdList
(
List
<
Long
>
idList
);
//获取地区的编号
public
Integer
getNumber
(
@Param
(
"name"
)
String
name
);
}
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/rest/BranchCompanyStockController.java
View file @
92b5c848
...
...
@@ -14,6 +14,8 @@ import org.springframework.http.ResponseEntity;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletRequest
;
@RestController
@IgnoreClientToken
@IgnoreUserToken
...
...
@@ -203,4 +205,17 @@ public class BranchCompanyStockController {
return
RestResponse
.
suc
(
branchCompanyStockService
.
getAllPrice
());
}
/**
* 导入
* @param multipartfile
* @param request
* @return
*/
@PostMapping
(
"importExcel"
)
public
RestResponse
importExcel
(
@RequestParam
(
value
=
"file"
)
MultipartFile
multipartfile
,
HttpServletRequest
request
)
{
return
branchCompanyStockService
.
importExcel
(
multipartfile
,
request
);
}
}
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/Excel2003Reader.java
0 → 100644
View file @
92b5c848
package
com
.
xinxincaravan
.
caravan
.
vehicle
.
util
.
excel
;
import
org.apache.poi.hssf.eventusermodel.*
;
import
org.apache.poi.hssf.eventusermodel.EventWorkbookBuilder.SheetRecordCollectingListener
;
import
org.apache.poi.hssf.eventusermodel.dummyrecord.LastCellOfRowDummyRecord
;
import
org.apache.poi.hssf.eventusermodel.dummyrecord.MissingCellDummyRecord
;
import
org.apache.poi.hssf.model.HSSFFormulaParser
;
import
org.apache.poi.hssf.record.*
;
import
org.apache.poi.hssf.usermodel.HSSFWorkbook
;
import
org.apache.poi.poifs.filesystem.POIFSFileSystem
;
import
java.io.IOException
;
import
java.io.InputStream
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* Excel2003格式解析
*
* @author lipengjun
* @email 939961241@qq.com
* @date 2017年10月28日 13:11:27
*/
public
class
Excel2003Reader
implements
HSSFListener
{
private
int
minColumns
=
-
1
;
private
POIFSFileSystem
fs
;
/**
* 最后一行行号
*/
private
int
lastRowNumber
;
/**
* 最后一列列号
*/
private
int
lastColumnNumber
;
/**
* Should we output the formula, or the value it has?
*/
private
boolean
outputFormulaValues
=
true
;
/**
* For parsing Formulas
*/
private
SheetRecordCollectingListener
workbookBuildingListener
;
// 工作薄
private
HSSFWorkbook
stubWorkbook
;
// Records we pick up as we process
private
SSTRecord
sstRecord
;
private
FormatTrackingHSSFListener
formatListener
;
// 表索引
private
int
sheetIndex
=
-
1
;
private
BoundSheetRecord
[]
orderedBSRs
;
@SuppressWarnings
(
"rawtypes"
)
private
ArrayList
boundSheetRecords
=
new
ArrayList
();
// For handling formulas with string results
private
int
nextRow
;
private
int
nextColumn
;
private
boolean
outputNextStringRecord
;
// 存储行记录的容器
private
List
<
String
>
rowlist
=
new
ArrayList
<
String
>();
;
// 单Sheet数据
private
List
<
String
[]>
sheetData
=
new
ArrayList
<
String
[]>();
// 多Sheet数据
private
Map
<
Integer
,
List
<
String
[]>>
workData
=
new
HashMap
<
Integer
,
List
<
String
[]>>();
/**
* 遍历excel下所有的sheet
*
* @param fileStream 处理文件流
* @throws IOException 抛出IO异常
*/
public
void
process
(
InputStream
fileStream
)
throws
IOException
{
this
.
fs
=
new
POIFSFileSystem
(
fileStream
);
MissingRecordAwareHSSFListener
listener
=
new
MissingRecordAwareHSSFListener
(
this
);
formatListener
=
new
FormatTrackingHSSFListener
(
listener
);
HSSFEventFactory
factory
=
new
HSSFEventFactory
();
HSSFRequest
request
=
new
HSSFRequest
();
if
(
outputFormulaValues
)
{
request
.
addListenerForAllRecords
(
formatListener
);
}
else
{
workbookBuildingListener
=
new
SheetRecordCollectingListener
(
formatListener
);
request
.
addListenerForAllRecords
(
workbookBuildingListener
);
}
factory
.
processWorkbookEvents
(
request
,
fs
);
}
/**
* HSSFListener 监听方法,处理 Record
*
* @param record 行记录
*/
@SuppressWarnings
(
"unchecked"
)
@Override
public
void
processRecord
(
Record
record
)
{
int
thisRow
=
-
1
;
int
thisColumn
=
-
1
;
String
thisStr
=
null
;
String
value
=
null
;
switch
(
record
.
getSid
())
{
case
BoundSheetRecord
.
sid
:
boundSheetRecords
.
add
(
record
);
break
;
case
BOFRecord
.
sid
:
BOFRecord
br
=
(
BOFRecord
)
record
;
if
(
br
.
getType
()
==
BOFRecord
.
TYPE_WORKSHEET
)
{
// 如果有需要,则建立子工作薄
if
(
workbookBuildingListener
!=
null
&&
stubWorkbook
==
null
)
{
stubWorkbook
=
workbookBuildingListener
.
getStubHSSFWorkbook
();
}
if
(
sheetIndex
>=
0
)
{
List
<
String
[]>
data
=
new
ArrayList
<
String
[]>();
data
.
addAll
(
sheetData
);
workData
.
put
(
sheetIndex
,
data
);
sheetData
.
clear
();
}
sheetIndex
++;
if
(
orderedBSRs
==
null
)
{
orderedBSRs
=
BoundSheetRecord
.
orderByBofPosition
(
boundSheetRecords
);
}
}
break
;
case
SSTRecord
.
sid
:
sstRecord
=
(
SSTRecord
)
record
;
break
;
case
BlankRecord
.
sid
:
BlankRecord
brec
=
(
BlankRecord
)
record
;
thisRow
=
brec
.
getRow
();
thisColumn
=
brec
.
getColumn
();
thisStr
=
""
;
rowlist
.
add
(
thisColumn
,
thisStr
);
break
;
case
BoolErrRecord
.
sid
:
// 单元格为布尔类型
BoolErrRecord
berec
=
(
BoolErrRecord
)
record
;
thisRow
=
berec
.
getRow
();
thisColumn
=
berec
.
getColumn
();
thisStr
=
berec
.
getBooleanValue
()
+
""
;
rowlist
.
add
(
thisColumn
,
thisStr
);
break
;
case
FormulaRecord
.
sid
:
// 单元格为公式类型
FormulaRecord
frec
=
(
FormulaRecord
)
record
;
thisRow
=
frec
.
getRow
();
thisColumn
=
frec
.
getColumn
();
if
(
outputFormulaValues
)
{
if
(
Double
.
isNaN
(
frec
.
getValue
()))
{
// Formula result is a string
// This is stored in the next record
outputNextStringRecord
=
true
;
nextRow
=
frec
.
getRow
();
nextColumn
=
frec
.
getColumn
();
}
else
{
thisStr
=
formatListener
.
formatNumberDateCell
(
frec
);
}
}
else
{
thisStr
=
'"'
+
HSSFFormulaParser
.
toFormulaString
(
stubWorkbook
,
frec
.
getParsedExpression
())
+
'"'
;
}
rowlist
.
add
(
thisColumn
,
thisStr
);
break
;
case
StringRecord
.
sid
:
// 单元格中公式的字符串
if
(
outputNextStringRecord
)
{
// String for formula
StringRecord
srec
=
(
StringRecord
)
record
;
thisStr
=
srec
.
getString
();
thisRow
=
nextRow
;
thisColumn
=
nextColumn
;
outputNextStringRecord
=
false
;
}
break
;
case
LabelRecord
.
sid
:
LabelRecord
lrec
=
(
LabelRecord
)
record
;
thisColumn
=
lrec
.
getColumn
();
value
=
lrec
.
getValue
().
trim
();
value
=
value
.
equals
(
""
)
?
" "
:
value
;
this
.
rowlist
.
add
(
thisColumn
,
value
);
break
;
case
LabelSSTRecord
.
sid
:
// 单元格为字符串类型
LabelSSTRecord
lsrec
=
(
LabelSSTRecord
)
record
;
thisColumn
=
lsrec
.
getColumn
();
if
(
sstRecord
==
null
)
{
rowlist
.
add
(
thisColumn
,
" "
);
}
else
{
value
=
sstRecord
.
getString
(
lsrec
.
getSSTIndex
()).
toString
().
trim
();
value
=
value
.
equals
(
""
)
?
" "
:
value
;
rowlist
.
add
(
thisColumn
,
value
);
}
break
;
case
NumberRecord
.
sid
:
// 单元格为数字类型
NumberRecord
numrec
=
(
NumberRecord
)
record
;
thisColumn
=
numrec
.
getColumn
();
value
=
formatListener
.
formatNumberDateCell
(
numrec
).
trim
();
value
=
value
.
equals
(
""
)
?
" "
:
value
;
// 向容器加入列值
rowlist
.
add
(
thisColumn
,
value
);
break
;
default
:
break
;
}
// 遇到新行的操作
if
(
thisRow
!=
-
1
&&
thisRow
!=
lastRowNumber
)
{
lastColumnNumber
=
-
1
;
}
// 空值的操作
if
(
record
instanceof
MissingCellDummyRecord
)
{
MissingCellDummyRecord
mc
=
(
MissingCellDummyRecord
)
record
;
thisColumn
=
mc
.
getColumn
();
rowlist
.
add
(
thisColumn
,
""
);
}
// 更新行和列的值
if
(
thisRow
>
-
1
)
{
lastRowNumber
=
thisRow
;
}
if
(
thisColumn
>
-
1
)
{
lastColumnNumber
=
thisColumn
;
}
// 行结束时的操作
if
(
record
instanceof
LastCellOfRowDummyRecord
)
{
if
(
minColumns
>
0
)
{
// 列值重新置空
if
(
lastColumnNumber
==
-
1
)
{
lastColumnNumber
=
0
;
}
}
lastColumnNumber
=
-
1
;
// 每行结束时, 数据写入集合
sheetData
.
add
(
rowlist
.
toArray
(
new
String
[]{}));
// 清空容器
rowlist
.
clear
();
}
}
/**
* 获取数据(单Sheet)
*
* @param sheetIndex sheet下标
* @return List<String[]> 数据
*/
public
List
<
String
[]>
getSheetData
(
Integer
sheetIndex
)
{
return
workData
.
get
(
sheetIndex
);
}
/**
* 获取数据(多Sheet)
*
* @return Map<Integer, List<String[]>> 多sheet的数据
*/
public
Map
<
Integer
,
List
<
String
[]>>
getSheetData
()
{
return
workData
;
}
}
\ No newline at end of file
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/Excel2007Reader.java
0 → 100644
View file @
92b5c848
This diff is collapsed.
Click to expand it.
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/Excel2Html.java
0 → 100644
View file @
92b5c848
This diff is collapsed.
Click to expand it.
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/ExcelExport.java
0 → 100644
View file @
92b5c848
This diff is collapsed.
Click to expand it.
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/ExcelImport.java
0 → 100644
View file @
92b5c848
package
com
.
xinxincaravan
.
caravan
.
vehicle
.
util
.
excel
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.Map
;
/**
* Excel文件导入的基本功能类
* 可导入EXCEL2003 和 EXCEL2007格式。
*
* @author lipengjun
* @email 939961241@qq.com
* @date 2017年10月28日 13:11:27
*/
public
class
ExcelImport
{
/**
* excel2003扩展名
*/
public
static
final
String
EXCEL03_EXTENSION
=
".xls"
;
/**
* excel2007扩展名
*/
public
static
final
String
EXCEL07_EXTENSION
=
".xlsx"
;
private
ExcelImport
()
{
}
/**
* 解析EXCEL数据为 List<String[]>
*
* @param excelFile 要解析的上传EXCEL文件
* @return List<String[]) 行(列)
*/
public
static
List
<
String
[]>
getExcelData07
(
MultipartFile
excelFile
)
{
List
<
String
[]>
resultList
=
null
;
if
(
null
==
excelFile
||
excelFile
.
isEmpty
())
{
throw
new
RuntimeException
(
"文件内容为空!"
);
}
Excel2007Reader
excel07
=
new
Excel2007Reader
();
try
{
excel07
.
process
(
excelFile
.
getInputStream
(),
false
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
resultList
=
excel07
.
getSheetData
(
0
);
return
resultList
;
}
/**
* 解析EXCEL数据为 List<String[]>
*
* @param excelFile 要解析的上传EXCEL文件
* @return List<String[]) 行(列)
*/
public
static
List
<
String
[]>
getExcelData03
(
MultipartFile
excelFile
)
{
List
<
String
[]>
resultList
=
null
;
if
(
null
==
excelFile
||
excelFile
.
isEmpty
())
{
throw
new
RuntimeException
(
"文件内容为空!"
);
}
Excel2003Reader
excel03
=
new
Excel2003Reader
();
// 实例化excel处理对象
try
{
excel03
.
process
(
excelFile
.
getInputStream
());
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
resultList
=
excel03
.
getSheetData
(
0
);
return
resultList
;
}
/**
* 通过解析MultipartFile对象获取excel内容,并且将其拼装为List<String[]>对象返回
*
* @param excelFile
* @return
* @throws Exception
*/
public
static
List
<
String
[]>
getExcelData
(
MultipartFile
excelFile
)
throws
RuntimeException
{
List
<
String
[]>
resultList
=
null
;
if
(!
excelFile
.
isEmpty
())
{
// 上传的文件不能为空
String
excelFileName
=
excelFile
.
getOriginalFilename
();
// 文件名(带后缀)
if
(
excelFileName
.
toLowerCase
().
endsWith
(
EXCEL03_EXTENSION
))
{
// 如果文件是以.xls为后缀
Excel2003Reader
excel03
=
new
Excel2003Reader
();
// 实例化excel处理对象
try
{
excel03
.
process
(
excelFile
.
getInputStream
());
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
resultList
=
excel03
.
getSheetData
(
0
);
}
else
if
(
excelFileName
.
toLowerCase
().
endsWith
(
EXCEL07_EXTENSION
))
{
// 如果文件是以.xlsx为后缀
Excel2007Reader
excel07
=
new
Excel2007Reader
();
try
{
excel07
.
process
(
excelFile
.
getInputStream
(),
false
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
resultList
=
excel07
.
getSheetData
(
0
);
}
}
return
resultList
;
}
/**
* 通过解析MultipartFile对象获取excel内容,并且将其拼装为Map<Integer, List<String[]>>对象返回
*
* @param excelFile
* @return
* @throws Exception
*/
public
static
Map
<
Integer
,
List
<
String
[]>>
getExcelDataAll
(
MultipartFile
excelFile
)
throws
RuntimeException
{
Map
<
Integer
,
List
<
String
[]>>
result
=
null
;
if
(!
excelFile
.
isEmpty
())
{
// 上传的文件不能为空
String
excelFileName
=
excelFile
.
getOriginalFilename
();
// 文件名(带后缀)
if
(
excelFileName
.
toLowerCase
().
endsWith
(
EXCEL03_EXTENSION
))
{
// 如果文件是以.xls为后缀
Excel2003Reader
excel03
=
new
Excel2003Reader
();
// 实例化excel处理对象
try
{
excel03
.
process
(
excelFile
.
getInputStream
());
}
catch
(
IOException
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
result
=
excel03
.
getSheetData
();
}
else
if
(
excelFileName
.
toLowerCase
().
endsWith
(
EXCEL07_EXTENSION
))
{
// 如果文件是以.xlsx为后缀
Excel2007Reader
excel07
=
new
Excel2007Reader
();
try
{
excel07
.
process
(
excelFile
.
getInputStream
(),
true
);
}
catch
(
Exception
e
)
{
throw
new
RuntimeException
(
"excel解析失败!"
);
}
result
=
excel07
.
getSheetData
();
}
}
return
result
;
}
}
vehicle/src/main/java/com/xinxincaravan/caravan/vehicle/util/excel/XssfDataType.java
0 → 100644
View file @
92b5c848
package
com
.
xinxincaravan
.
caravan
.
vehicle
.
util
.
excel
;
/**
* XSSFDataType
*
* @author lipengjun
* @email 939961241@qq.com
* @date 2017年10月28日 13:11:27
*/
public
enum
XssfDataType
{
BOOL
,
ERROR
,
FORMULA
,
INLINESTR
,
SSTINDEX
,
NUMBER
,
DATE
,
DATETIME
,
TIME
,
}
vehicle/src/main/resources/mapper/BranchCompanyStockInfoMapper.xml
View file @
92b5c848
...
...
@@ -36,4 +36,16 @@
<select
id=
"selectAllPrice"
resultType=
"int"
>
select distinct price from branch_company_stock_info order by price
</select>
<insert
id=
"addCompamyList"
>
insert into branch_company_stock_info (
balance,total,price,company_name,addr_province,addr_city,state,company_pic
) vaules
<foreach
collection =
"list"
item=
"item"
index=
"index"
separator =
","
>
(
#{item.balance},#{item.total},
#{item.price},#{item.companyName},#{item.companyPic},#{item.addrProvince},#{item.addrCity},#{item.companyPic}
)
</foreach >
</insert>
</mapper>
\ No newline at end of file
vehicle/src/main/resources/mapper/SysRegionMapper.xml
View file @
92b5c848
...
...
@@ -2,15 +2,21 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.xinxincaravan.caravan.vehicle.mapper.SysRegionMapper"
>
<select
id=
"getAllByPage"
parameterType=
"java.util.Map"
resultType=
"com.xinxincaravan.caravan.vehicle.entity.SysRegion"
>
<select
id=
"getAllByPage"
parameterType=
"java.util.Map"
resultType=
"com.xinxincaravan.caravan.vehicle.entity.SysRegion"
>
select `id`, parent_id, `name`, `type`, agency_id from sys_region limit #{pageStart},${pageSize}
</select>
<select
id=
"getByIdList"
parameterType=
"java.util.List"
resultType=
"com.xinxincaravan.caravan.vehicle.entity.SysRegion"
>
<select
id=
"getByIdList"
parameterType=
"java.util.List"
resultType=
"com.xinxincaravan.caravan.vehicle.entity.SysRegion"
>
select `id`, parent_id, `name`, `type`, agency_id from sys_region where id in
<foreach
collection=
"list"
index=
"i"
item=
"item"
open=
"("
close=
")"
separator=
","
>
#{item}
</foreach>
</select>
<select
id=
"getNumber"
resultType=
"Integer"
>
select `id` from sys_region where name like CONCAT('%',#{name},'%') limit 1
</select>
</mapper>
\ No newline at end of file
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