Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gic-store
Overview
Overview
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
base_platform_enterprise
gic-store
Commits
8f2a6e88
Commit
8f2a6e88
authored
Jul 05, 2019
by
zhiwj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
门店对外接口
parent
97db5d20
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
213 additions
and
55 deletions
+213
-55
StoreImportApiService.java
...ain/java/com/gic/store/service/StoreImportApiService.java
+4
-0
TabStoreExtendMapper.java
...n/java/com/gic/store/dao/mapper/TabStoreExtendMapper.java
+5
-0
TabStoreMapper.java
...rc/main/java/com/gic/store/dao/mapper/TabStoreMapper.java
+5
-0
StoreExtendService.java
...c/main/java/com/gic/store/service/StoreExtendService.java
+15
-0
StoreService.java
...ice/src/main/java/com/gic/store/service/StoreService.java
+4
-0
StoreExtendServiceImpl.java
...va/com/gic/store/service/impl/StoreExtendServiceImpl.java
+15
-0
StoreServiceImpl.java
...ain/java/com/gic/store/service/impl/StoreServiceImpl.java
+10
-0
StoreImportApiServiceImpl.java
...om/gic/store/service/outer/StoreImportApiServiceImpl.java
+71
-10
TabStoreExtendMapper.xml
...ervice/src/main/resources/mapper/TabStoreExtendMapper.xml
+16
-0
TabStoreMapper.xml
...tore-service/src/main/resources/mapper/TabStoreMapper.xml
+15
-0
ExcelUtils.java
...store-web/src/main/java/com/gic/store/web/ExcelUtils.java
+17
-10
StoreController.java
...in/java/com/gic/store/web/controller/StoreController.java
+0
-2
StoreImportController.java
...a/com/gic/store/web/controller/StoreImportController.java
+36
-33
No files found.
gic-store-api/src/main/java/com/gic/store/service/StoreImportApiService.java
View file @
8f2a6e88
...
...
@@ -37,5 +37,9 @@ public interface StoreImportApiService {
ServiceResponse
<
List
<
StoreTmpDTO
>>
listAllStoreTmp
(
Integer
enterpriseId
);
ServiceResponse
<
List
<
List
<
String
>>>
listError
(
Integer
enterpriseId
);
ServiceResponse
<
Page
>
pageError
(
Integer
enterpriseId
,
Integer
currentPage
,
Integer
pageSize
);
// List<StoreTmpDTO> listStoreTmp(Integer enterpriseId, Boolean isSuccess, Boolean isWait);
}
gic-store-service/src/main/java/com/gic/store/dao/mapper/TabStoreExtendMapper.java
View file @
8f2a6e88
...
...
@@ -55,4 +55,8 @@ public interface TabStoreExtendMapper {
int
updateByPrimaryKey
(
TabStoreExtend
record
);
List
<
TabStoreExtend
>
list
(
@Param
(
"enterpriseId"
)
Integer
enterpriseId
,
@Param
(
"storeId"
)
Integer
storeId
);
TabStoreExtend
getStoreExtendByStoreIdAndStoreFieldId
(
@Param
(
"storeId"
)
Integer
storeId
,
@Param
(
"storeFieldId"
)
Integer
storeFieldId
);
int
countStoreExtendStoreField
(
@Param
(
"storeField"
)
Integer
storeField
,
@Param
(
"storeFieldSelectId"
)
Integer
storeFieldSelectId
);
}
\ No newline at end of file
gic-store-service/src/main/java/com/gic/store/dao/mapper/TabStoreMapper.java
View file @
8f2a6e88
...
...
@@ -5,6 +5,8 @@ import com.gic.store.entity.TabStore;
import
com.github.pagehelper.Page
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
public
interface
TabStoreMapper
{
/**
* 根据主键删除
...
...
@@ -66,4 +68,6 @@ public interface TabStoreMapper {
Integer
countByBrandId
(
@Param
(
"brandId"
)
Integer
brandId
);
Page
listStore
(
StoreDTO
storeDTO
);
List
<
TabStore
>
listStoreByRegionAndStatus
(
@Param
(
"regionIdList"
)
List
<
Integer
>
regionIdList
,
@Param
(
"statusList"
)
List
<
Integer
>
statusList
);
}
\ No newline at end of file
gic-store-service/src/main/java/com/gic/store/service/StoreExtendService.java
View file @
8f2a6e88
...
...
@@ -15,4 +15,19 @@ public interface StoreExtendService {
List
<
TabStoreExtend
>
listByStoreId
(
Integer
enterpriseId
,
Integer
storeId
);
List
<
StoreExtendDTO
>
convertStoreExtendToDTO
(
List
<
TabStoreExtend
>
extendList
);
TabStoreExtend
getStoreExtendByStoreIdAndFieldId
(
Integer
storeId
,
Integer
storeFieldId
);
/**
* 判断自定义属性是否在使用
* @return true:在使用 false:不在使用
*/
boolean
storeExtendHasStoreField
(
Integer
storeField
);
/**
* 判断自定义属性值是否在使用
* @return true:在使用 false:不在使用
*/
boolean
storeExtendHasStoreFieldSelect
(
Integer
storeField
,
Integer
storeFieldSelectId
);
}
gic-store-service/src/main/java/com/gic/store/service/StoreService.java
View file @
8f2a6e88
...
...
@@ -4,6 +4,8 @@ import com.gic.store.dto.StoreDTO;
import
com.gic.store.entity.TabStore
;
import
com.github.pagehelper.Page
;
import
java.util.List
;
/**
* @author zhiwj
* @date 2019/6/27
...
...
@@ -54,4 +56,6 @@ public interface StoreService {
Page
listStore
(
StoreDTO
storeDTO
,
Integer
pageNum
,
Integer
pageSize
);
Integer
checkCompleteStatus
(
StoreDTO
storeDTO
);
List
<
TabStore
>
listStoreByRegionAndStatus
(
List
<
Integer
>
regionIdList
,
List
<
Integer
>
statusList
);
}
gic-store-service/src/main/java/com/gic/store/service/impl/StoreExtendServiceImpl.java
View file @
8f2a6e88
...
...
@@ -67,4 +67,19 @@ public class StoreExtendServiceImpl implements StoreExtendService {
return
Collections
.
emptyList
();
}
}
@Override
public
TabStoreExtend
getStoreExtendByStoreIdAndFieldId
(
Integer
storeId
,
Integer
storeFieldId
)
{
return
tabStoreExtendMapper
.
getStoreExtendByStoreIdAndStoreFieldId
(
storeId
,
storeFieldId
);
}
@Override
public
boolean
storeExtendHasStoreField
(
Integer
storeField
)
{
return
tabStoreExtendMapper
.
countStoreExtendStoreField
(
storeField
,
null
)
>
0
;
}
@Override
public
boolean
storeExtendHasStoreFieldSelect
(
Integer
storeField
,
Integer
storeFieldSelectId
)
{
return
tabStoreExtendMapper
.
countStoreExtendStoreField
(
storeField
,
storeFieldSelectId
)
>
0
;
}
}
gic-store-service/src/main/java/com/gic/store/service/impl/StoreServiceImpl.java
View file @
8f2a6e88
...
...
@@ -12,7 +12,9 @@ import org.apache.commons.lang3.StringUtils;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.Collections
;
import
java.util.Date
;
import
java.util.List
;
/**
* @author zhiwj
...
...
@@ -140,4 +142,12 @@ public class StoreServiceImpl implements StoreService {
:
GlobalInfo
.
DATA_STATUS_DELETE
;
}
@Override
public
List
<
TabStore
>
listStoreByRegionAndStatus
(
List
<
Integer
>
regionIdList
,
List
<
Integer
>
statusList
)
{
if
(
CollectionUtils
.
isEmpty
(
regionIdList
)
||
CollectionUtils
.
isEmpty
(
statusList
))
{
return
Collections
.
emptyList
();
}
return
tabStoreMapper
.
listStoreByRegionAndStatus
(
regionIdList
,
statusList
);
}
}
gic-store-service/src/main/java/com/gic/store/service/outer/StoreImportApiServiceImpl.java
View file @
8f2a6e88
...
...
@@ -21,6 +21,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.LinkedList
;
import
java.util.List
;
import
java.util.stream.Collectors
;
...
...
@@ -41,6 +42,9 @@ public class StoreImportApiServiceImpl implements StoreImportApiService {
private
StoreService
storeService
;
@Autowired
private
StoreApiService
storeApiService
;
@Autowired
private
StoreImportService
storeImportService
;
@Autowired
...
...
@@ -115,7 +119,13 @@ public class StoreImportApiServiceImpl implements StoreImportApiService {
@Override
public
ServiceResponse
<
List
<
StoreTmpDTO
>>
listStoreTmp
(
Integer
enterpriseId
,
Boolean
isRight
)
{
return
ServiceResponse
.
success
(
EntityUtil
.
changeEntityListByOrika
(
StoreTmpDTO
.
class
,
storeImportService
.
listStoreTmp
(
enterpriseId
,
isRight
)));
List
<
StoreTmpDTO
>
result
=
EntityUtil
.
changeEntityListByOrika
(
StoreTmpDTO
.
class
,
storeImportService
.
listStoreTmp
(
enterpriseId
,
isRight
));
for
(
StoreTmpDTO
storeTmpDTO
:
result
)
{
String
customField
=
storeTmpDTO
.
getCustomField
();
List
<
StoreExtendDTO
>
extendList
=
storeExtendService
.
convertStoreExtendToDTO
(
JSON
.
parseArray
(
customField
,
TabStoreExtend
.
class
));
storeTmpDTO
.
setExtendList
(
extendList
);
}
return
ServiceResponse
.
success
(
result
);
}
@Override
...
...
@@ -123,6 +133,66 @@ public class StoreImportApiServiceImpl implements StoreImportApiService {
return
ServiceResponse
.
success
(
EntityUtil
.
changeEntityListByOrika
(
StoreTmpDTO
.
class
,
storeImportService
.
listAllStoreTmp
(
enterpriseId
)));
}
@Override
public
ServiceResponse
<
List
<
List
<
String
>>>
listError
(
Integer
enterpriseId
)
{
List
<
List
<
String
>>
resultList
=
new
LinkedList
<>();
List
<
StoreTmpDTO
>
dataList
=
this
.
listStoreTmp
(
enterpriseId
,
Boolean
.
FALSE
).
getResult
();
// title
// 系统title
// 自定义title
List
<
String
>
title
=
getTitle
(
enterpriseId
,
dataList
.
get
(
0
).
getRegionId
());
resultList
.
add
(
title
);
// 数据
// 普通数据
// 自定义数据
for
(
int
i
=
0
;
i
<
dataList
.
size
();
i
++)
{
List
<
String
>
list
=
new
LinkedList
<>();
StoreTmpDTO
storeTmpDTO
=
dataList
.
get
(
i
);
//{"序号", "门店名称", "门店代码", "门店类型", "门店状态", "门店电话", "门店所属分组", "关联门店品牌", "省", "市", "区县", "门店地址(不包括省市区)", "经度", "纬度"};
list
.
add
(
i
+
1
+
""
);
list
.
add
(
storeTmpDTO
.
getStoreName
());
list
.
add
(
storeTmpDTO
.
getStoreCode
());
list
.
add
(
storeTmpDTO
.
getStoreType
());
list
.
add
(
storeTmpDTO
.
getErpStatus
());
list
.
add
(
storeTmpDTO
.
getConactsPhone
());
list
.
add
(
storeTmpDTO
.
getStoreGroupName
());
list
.
add
(
storeTmpDTO
.
getBrands
());
list
.
add
(
storeTmpDTO
.
getProvince
());
list
.
add
(
storeTmpDTO
.
getCity
());
list
.
add
(
storeTmpDTO
.
getCounty
());
list
.
add
(
storeTmpDTO
.
getAddress
());
list
.
add
(
storeTmpDTO
.
getLongitude
());
list
.
add
(
storeTmpDTO
.
getLatitude
());
List
<
StoreExtendDTO
>
extendList
=
storeTmpDTO
.
getExtendList
();
if
(
CollectionUtils
.
isNotEmpty
(
extendList
))
{
List
<
String
>
valueList
=
extendList
.
stream
().
map
(
StoreExtendDTO:
:
getValue
).
collect
(
Collectors
.
toList
());
list
.
addAll
(
valueList
);
}
list
.
add
(
storeTmpDTO
.
getErrorMessage
());
resultList
.
add
(
list
);
}
return
ServiceResponse
.
success
(
resultList
);
}
private
List
<
String
>
getTitle
(
Integer
enterpriseId
,
Integer
regionId
)
{
List
<
String
>
titleList
=
storeApiService
.
listImportTitle
(
enterpriseId
,
regionId
).
getResult
().
get
(
0
);
titleList
.
add
(
"错误信息"
);
return
titleList
;
}
@Override
public
ServiceResponse
<
Page
>
pageError
(
Integer
enterpriseId
,
Integer
currentPage
,
Integer
pageSize
)
{
List
<
List
<
String
>>
resultList
=
new
LinkedList
<>();
Page
page
=
this
.
listStoreTmp
(
enterpriseId
,
Boolean
.
FALSE
,
currentPage
,
pageSize
).
getResult
();
List
<
StoreTmpDTO
>
result
=
page
.
getResult
();
return
null
;
}
@Override
public
ServiceResponse
<
String
>
importDataToStore
(
Integer
enterpriseId
,
String
userId
,
String
uuId
)
{
...
...
@@ -134,13 +204,4 @@ public class StoreImportApiServiceImpl implements StoreImportApiService {
return
ServiceResponse
.
failure
(
ErrorCode
.
ERR_3
.
getCode
(),
"队列错误"
);
}
// @Autowired
// TabStoreTmpMapper tabStoreTmpMapper;
//
// @Override
// public List<StoreTmpDTO> listStoreTmp(Integer enterpriseId, Boolean isSuccess, Boolean isWait) {
// return EntityUtil.changeEntityListByOrika(StoreTmpDTO.class, tabStoreTmpMapper.listStoreTmp(enterpriseId, isSuccess, isWait));
// }
}
gic-store-service/src/main/resources/mapper/TabStoreExtendMapper.xml
View file @
8f2a6e88
...
...
@@ -145,4 +145,19 @@
from tab_store_extend
where enterprise_id = #{enterpriseId} and store_id = #{storeId}
</select>
<select
id=
"getStoreExtendByStoreIdAndStoreFieldId"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from tab_store_extend
where store_id = #{storeId} and store_field_id = #{storeFieldId}
</select>
<select
id=
"countStoreExtendStoreField"
resultType=
"java.lang.Integer"
>
select count(1)
from tab_store_extend
where store_field_id = #{storeField}
<if
test=
"storeFieldSelectId != null"
>
and brand_ids REGEXP '^${storeFieldSelectId}$|^${storeFieldSelectId},.*$|^.*,${storeFieldSelectId},.*$|^.*,${storeFieldSelectId}$'
</if>
</select>
</mapper>
\ No newline at end of file
gic-store-service/src/main/resources/mapper/TabStoreMapper.xml
View file @
8f2a6e88
...
...
@@ -335,4 +335,18 @@
<include
refid=
"Base_Column_List"
/>
from tab_store
</select>
<select
id=
"listStoreByRegionAndStatus"
resultMap=
"BaseResultMap"
>
select
<include
refid=
"Base_Column_List"
/>
from tab_store
where
region_id in
<foreach
collection=
"regionIdList"
index=
"index"
item=
"regionId"
open=
"("
separator=
","
close=
")"
>
#{regionId}
</foreach>
and status in
<foreach
collection=
"statusList"
index=
"index"
item=
"status"
open=
"("
separator=
","
close=
")"
>
#{status}
</foreach>
</select>
</mapper>
\ No newline at end of file
gic-store-web/src/main/java/com/gic/store/web/ExcelUtils.java
View file @
8f2a6e88
...
...
@@ -77,7 +77,9 @@ public class ExcelUtils {
XSSFRow
row1
=
sheet
.
createRow
(
0
);
row1
.
setZeroHeight
(
true
);
XSSFCell
cell1
=
row1
.
createCell
(
0
);
cell1
.
setCellValue
(
regionIdStr
);
if
(
StringUtils
.
isNotBlank
(
regionIdStr
))
{
cell1
.
setCellValue
(
regionIdStr
);
}
XSSFRow
rowm
=
sheet
.
createRow
(
1
);
// 产生表格标题行
XSSFCell
cellTiltle
=
rowm
.
createCell
(
0
);
//创建表格标题列
...
...
@@ -98,20 +100,25 @@ public class ExcelUtils {
cellRowName
.
setCellValue
(
text
);
// 设置列头单元格的值
cellRowName
.
setCellStyle
(
columnTopStyle
);
// 设置列头单元格样式
}
int
descriptionNum
=
description
.
size
();
// 定义所需列数
XSSFRow
descriptionRow
=
sheet
.
createRow
(
4
);
// 在索引2的位置创建行(最顶端的行开始的第二行)
for
(
int
n
=
0
;
n
<
descriptionNum
;
n
++)
{
XSSFCell
cellRowName
=
descriptionRow
.
createCell
(
n
);
// 创建列头对应个数的单元格
cellRowName
.
setCellType
(
XSSFCell
.
CELL_TYPE_STRING
);
// 设置列头单元格的数据类型
XSSFRichTextString
text
=
new
XSSFRichTextString
(
description
.
get
(
n
));
cellRowName
.
setCellValue
(
text
);
// 设置列头单元格的值
cellRowName
.
setCellStyle
(
columnTopStyle
);
// 设置列头单元格样式
// 定义数据开始的行数
int
dataLine
=
4
;
if
(
CollectionUtils
.
isNotEmpty
(
description
))
{
int
descriptionNum
=
description
.
size
();
// 定义所需列数
XSSFRow
descriptionRow
=
sheet
.
createRow
(
dataLine
);
// 在索引2的位置创建行(最顶端的行开始的第二行)
dataLine
++;
for
(
int
n
=
0
;
n
<
descriptionNum
;
n
++)
{
XSSFCell
cellRowName
=
descriptionRow
.
createCell
(
n
);
// 创建列头对应个数的单元格
cellRowName
.
setCellType
(
XSSFCell
.
CELL_TYPE_STRING
);
// 设置列头单元格的数据类型
XSSFRichTextString
text
=
new
XSSFRichTextString
(
description
.
get
(
n
));
cellRowName
.
setCellValue
(
text
);
// 设置列头单元格的值
cellRowName
.
setCellStyle
(
columnTopStyle
);
// 设置列头单元格样式
}
}
// 将查询出的数据设置到sheet对应的单元格中
for
(
int
i
=
0
;
i
<
dataList
.
size
();
i
++)
{
List
<
String
>
obj
=
dataList
.
get
(
i
);
// 遍历每个对象
XSSFRow
row
=
sheet
.
createRow
(
i
+
5
);
// 创建所需的行数
XSSFRow
row
=
sheet
.
createRow
(
i
+
dataLine
);
// 创建所需的行数
for
(
int
j
=
0
;
j
<
obj
.
size
();
j
++)
{
XSSFCell
cell
=
null
;
// 设置单元格的数据类型
if
(
j
==
0
)
{
...
...
gic-store-web/src/main/java/com/gic/store/web/controller/StoreController.java
View file @
8f2a6e88
...
...
@@ -83,5 +83,4 @@ public class StoreController {
return
RestResponse
.
failure
(
serviceResponse
.
getCode
(),
serviceResponse
.
getMessage
());
}
}
}
\ No newline at end of file
gic-store-web/src/main/java/com/gic/store/web/controller/StoreImportController.java
View file @
8f2a6e88
...
...
@@ -68,34 +68,26 @@ public class StoreImportController {
List
<
List
<
String
>>
list
=
new
ArrayList
<>();
ServiceResponse
<
List
<
List
<
String
>>>
titleServiceResponse
=
storeApiService
.
listImportTitle
(
enterpriseId
,
Integer
.
parseInt
(
regionIdStr
));
if
(
titleServiceResponse
.
isSuccess
())
{
List
<
String
>
list3
=
new
ArrayList
<>();
Collections
.
addAll
(
list3
,
"1"
,
"杭州测试总店"
,
"A001"
,
"自营"
,
"上线"
,
"12345678912"
,
"杭州门店"
,
"品牌1、品牌2"
,
"浙江省"
,
"杭州市"
,
"西湖区"
,
"华星时代广场"
,
"经度"
,
"纬度"
);
Collections
.
addAll
(
list
,
list3
);
int
size
=
list3
.
size
();
for
(
int
i
=
0
;
i
<
titleServiceResponse
.
getResult
().
get
(
0
).
size
()
-
size
;
i
++)
{
list3
.
add
(
" "
);
}
Workbook
workbook
=
ExcelUtils
.
getWorkbook
(
"门店导入模板"
,
titleServiceResponse
.
getResult
().
get
(
0
),
titleServiceResponse
.
getResult
().
get
(
1
),
list
,
regionIdStr
);
String
fileName
=
"门店资料导入模板.xlsx"
;
byte
[]
bytesName
=
fileName
.
getBytes
(
"UTF-8"
);
fileName
=
new
String
(
bytesName
,
"ISO-8859-1"
);
response
.
setHeader
(
"content-disposition"
,
"attachment;fileName="
+
fileName
);
OutputStream
out
=
response
.
getOutputStream
();
workbook
.
write
(
out
);
out
.
close
();
return
RestResponse
.
success
();
}
else
{
//
return
RestResponse
.
failure
(
ErrorCode
.
ERR_5
.
getCode
(),
"网络错误"
);
// 测试数据
List
<
String
>
list3
=
new
ArrayList
<>();
Collections
.
addAll
(
list3
,
"1"
,
"杭州测试总店"
,
"A001"
,
"自营"
,
"上线"
,
"12345678912"
,
"杭州门店"
,
"品牌1、品牌2"
,
"浙江省"
,
"杭州市"
,
"西湖区"
,
"华星时代广场"
,
"经度"
,
"纬度"
);
Collections
.
addAll
(
list
,
list3
);
int
size
=
list3
.
size
();
for
(
int
i
=
0
;
i
<
titleServiceResponse
.
getResult
().
get
(
0
).
size
()
-
size
;
i
++)
{
list3
.
add
(
" "
);
}
Workbook
workbook
=
ExcelUtils
.
getWorkbook
(
"门店导入模板"
,
titleServiceResponse
.
getResult
().
get
(
0
),
titleServiceResponse
.
getResult
().
get
(
1
),
list
,
regionIdStr
);
String
fileName
=
"门店资料导入模板.xlsx"
;
byte
[]
bytesName
=
fileName
.
getBytes
(
"UTF-8"
);
fileName
=
new
String
(
bytesName
,
"ISO-8859-1"
);
response
.
setHeader
(
"content-disposition"
,
"attachment;fileName="
+
fileName
);
OutputStream
out
=
response
.
getOutputStream
();
workbook
.
write
(
out
);
out
.
close
();
return
RestResponse
.
success
();
}
@RequestMapping
(
"/store-tmp-file-upload"
)
...
...
@@ -164,7 +156,7 @@ public class StoreImportController {
}
}
catch
(
Exception
e
)
{
logger
.
warn
(
e
);
return
RestResponse
.
failure
(
ErrorCode
.
ERR_5
.
getCode
(),
"
excel验证不通过
"
);
return
RestResponse
.
failure
(
ErrorCode
.
ERR_5
.
getCode
(),
"
异步队列调用失败
"
);
}
}
catch
(
Exception
e
)
{
logger
.
warn
(
e
);
...
...
@@ -182,7 +174,7 @@ public class StoreImportController {
Integer
enterpriseId
=
1111
;
Map
<
String
,
Object
>
result
=
new
HashMap
<
String
,
Object
>();
List
<
StoreTmpDTO
>
successList
=
storeImportApiService
.
listStoreTmp
(
enterpriseId
,
true
).
getResult
();
ServiceResponse
<
Page
>
serviceResponse
=
storeImportApiService
.
listStoreTmp
(
enterpriseId
,
false
,
page
.
getCurrentPage
(),
page
.
getPageSize
());
ServiceResponse
<
Page
>
serviceResponse
=
storeImportApiService
.
pageError
(
enterpriseId
,
page
.
getCurrentPage
(),
page
.
getPageSize
());
List
<
StoreTmpDTO
>
totalList
=
storeImportApiService
.
listAllStoreTmp
(
enterpriseId
).
getResult
();
Page
pageResponse
=
serviceResponse
.
getResult
();
result
.
put
(
"errorData"
,
pageResponse
);
...
...
@@ -192,18 +184,29 @@ public class StoreImportController {
return
RestResponse
.
success
(
result
);
}
@RequestMapping
(
"export-error-data"
)
public
void
exportErrorData
(
HttpServletRequest
request
,
HttpServletResponse
response
)
throws
IOException
{
@RequestMapping
(
"
/
export-error-data"
)
public
RestResponse
exportErrorData
(
HttpServletRequest
request
,
HttpServletResponse
response
)
throws
IOException
{
Integer
enterpriseId
=
1111
;
String
fileName
=
"门店导入错误记录.xlsx"
;
List
<
StoreTmpDTO
>
listErrorData
=
storeImportApiService
.
listStoreTmp
(
enterpriseId
,
false
).
getResult
();
if
(!
listErrorData
.
isEmpty
())
{
SimpleDateFormat
sdf
=
new
SimpleDateFormat
(
"yyyyMMddHHmm"
);
fileName
=
sdf
.
format
(
listErrorData
.
get
(
0
).
getUpdateTime
())
+
fileName
;
List
<
List
<
String
>>
errorList
=
storeImportApiService
.
listError
(
enterpriseId
).
getResult
();
List
<
String
>
titleList
=
errorList
.
get
(
0
);
errorList
.
remove
(
0
);
Workbook
workbook
=
ExcelUtils
.
getWorkbook
(
"门店导入模板"
,
titleList
,
null
,
errorList
,
null
);
byte
[]
bytesName
=
fileName
.
getBytes
(
"UTF-8"
);
fileName
=
new
String
(
bytesName
,
"ISO-8859-1"
);
response
.
setHeader
(
"content-disposition"
,
"attachment;fileName="
+
fileName
);
OutputStream
out
=
response
.
getOutputStream
();
workbook
.
write
(
out
);
out
.
close
();
return
RestResponse
.
success
();
}
else
{
return
;
return
RestResponse
.
failure
(
ErrorCode
.
ERR_3
.
getCode
(),
"没有错误日志"
)
;
}
// todo
}
private
StoreTmpDTO
validateData
(
Map
<
Integer
,
String
>
row
,
Integer
enterpriseId
,
Integer
regionId
)
{
...
...
@@ -416,7 +419,7 @@ public class StoreImportController {
final
String
erpStatusTmp
=
erpStatus
.
replace
(
"\\s+"
,
""
);
long
count
=
list
.
stream
().
filter
(
e
->
e
.
getKey
().
equals
(
erpStatusTmp
)).
count
();
if
(
count
>
0
)
{
return
(
int
)
count
;
return
(
int
)
count
;
}
}
return
-
1
;
...
...
@@ -429,7 +432,7 @@ public class StoreImportController {
final
String
storeTypeTmp
=
storeType
.
replace
(
"\\s+"
,
""
);
long
count
=
list
.
stream
().
filter
(
e
->
e
.
getKey
().
equals
(
storeTypeTmp
)).
count
();
if
(
count
>
0
)
{
return
(
int
)
count
;
return
(
int
)
count
;
}
}
return
-
1
;
...
...
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