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
47b8b75e
Commit
47b8b75e
authored
Aug 31, 2020
by
zhiwj
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
导购导入优化
parent
914990c0
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
84 additions
and
20 deletions
+84
-20
ClerkTmpDTO.java
...tore-api/src/main/java/com/gic/store/dto/ClerkTmpDTO.java
+9
-0
ClerkImportApiService.java
...ain/java/com/gic/store/service/ClerkImportApiService.java
+14
-1
ClerkTaskApiService.java
.../main/java/com/gic/store/service/ClerkTaskApiService.java
+2
-1
ClerkImportApiServiceImpl.java
...c/store/service/outer/impl/ClerkImportApiServiceImpl.java
+13
-2
ClerkTaskServiceImpl.java
...om/gic/store/service/outer/impl/ClerkTaskServiceImpl.java
+23
-8
StoreTaskServiceImpl.java
...om/gic/store/service/outer/impl/StoreTaskServiceImpl.java
+4
-5
ClerkImportController.java
...a/com/gic/store/web/controller/ClerkImportController.java
+19
-3
No files found.
gic-store-api/src/main/java/com/gic/store/dto/ClerkTmpDTO.java
View file @
47b8b75e
...
...
@@ -87,6 +87,7 @@ public class ClerkTmpDTO implements Serializable {
*/
private
String
operatorName
;
private
String
clerkType
;
private
boolean
replace
;
public
Integer
getClerkTmpId
()
{
return
clerkTmpId
;
...
...
@@ -231,4 +232,12 @@ public class ClerkTmpDTO implements Serializable {
public
void
setRegionName
(
String
regionName
)
{
this
.
regionName
=
regionName
;
}
public
void
setReplace
(
boolean
replace
)
{
this
.
replace
=
replace
;
}
public
boolean
getReplace
()
{
return
replace
;
}
}
gic-store-api/src/main/java/com/gic/store/service/ClerkImportApiService.java
View file @
47b8b75e
...
...
@@ -51,10 +51,11 @@ public interface ClerkImportApiService {
* @param enterpriseId 企业id
* @param userId 操作人
* @param uuId 上传任务的唯一标识
* @param isReplace
* @return com.gic.api.base.commons.ServiceResponse<java.lang.String>
* @throws
*/
ServiceResponse
<
String
>
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
);
ServiceResponse
<
String
>
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
,
boolean
isReplace
);
/**
* @Title: listClerkTmp
...
...
@@ -124,4 +125,16 @@ public interface ClerkImportApiService {
* @throws
*/
ServiceResponse
<
List
<
List
<
String
>>>
listError
(
Integer
enterpriseId
);
/**
* @Title: validateClerkCode
* @Description:
* @author zhiwj
* @param enterpriseId
* @param storeInfoId
* @param clerkCode
* @return com.gic.api.base.commons.ServiceResponse<java.lang.Boolean>
* @throws
*/
ServiceResponse
<
Boolean
>
validateClerkCode
(
Integer
enterpriseId
,
Integer
storeInfoId
,
String
clerkCode
);
}
gic-store-api/src/main/java/com/gic/store/service/ClerkTaskApiService.java
View file @
47b8b75e
...
...
@@ -15,10 +15,11 @@ public interface ClerkTaskApiService {
* @param enterpriseId 企业id
* @param userId 操作人
* @param uuId 上传唯一参数
* @param isReplace
* @return java.lang.String
* @throws
*/
String
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
);
String
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
,
boolean
isReplace
);
/**
* @Title: run
...
...
gic-store-service/src/main/java/com/gic/store/service/outer/impl/ClerkImportApiServiceImpl.java
View file @
47b8b75e
...
...
@@ -5,8 +5,10 @@ import com.gic.api.base.commons.ServiceResponse;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.PageHelperUtils
;
import
com.gic.store.dto.ClerkTmpDTO
;
import
com.gic.store.entity.TabClerk
;
import
com.gic.store.service.ClerkImportApiService
;
import
com.gic.store.service.ClerkImportService
;
import
com.gic.store.service.ClerkService
;
import
com.gic.store.service.ClerkTaskApiService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -28,6 +30,9 @@ public class ClerkImportApiServiceImpl implements ClerkImportApiService {
@Autowired
private
ClerkTaskApiService
clerkTaskService
;
@Autowired
private
ClerkService
clerkService
;
@Override
public
ServiceResponse
<
Boolean
>
hasImportingClerk
(
Integer
enterpriseId
)
{
return
ServiceResponse
.
success
(
clerkImportService
.
hasImportingClerk
(
enterpriseId
));
...
...
@@ -46,8 +51,8 @@ public class ClerkImportApiServiceImpl implements ClerkImportApiService {
}
@Override
public
ServiceResponse
<
String
>
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
)
{
return
ServiceResponse
.
success
(
clerkTaskService
.
importDataToClerk
(
enterpriseId
,
userId
,
uuId
));
public
ServiceResponse
<
String
>
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
,
boolean
isReplace
)
{
return
ServiceResponse
.
success
(
clerkTaskService
.
importDataToClerk
(
enterpriseId
,
userId
,
uuId
,
isReplace
));
}
@Override
...
...
@@ -116,4 +121,10 @@ public class ClerkImportApiServiceImpl implements ClerkImportApiService {
}
return
ServiceResponse
.
success
(
resultList
);
}
@Override
public
ServiceResponse
<
Boolean
>
validateClerkCode
(
Integer
enterpriseId
,
Integer
storeInfoId
,
String
clerkCode
)
{
TabClerk
clerk
=
clerkService
.
getClerkByCode
(
enterpriseId
,
clerkCode
,
storeInfoId
);
return
ServiceResponse
.
success
(
clerk
!=
null
);
}
}
gic-store-service/src/main/java/com/gic/store/service/outer/impl/ClerkTaskServiceImpl.java
View file @
47b8b75e
package
com
.
gic
.
store
.
service
.
outer
.
impl
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.ServiceResponse
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.store.constant.*
;
import
com.gic.store.dto.ClerkDTO
;
import
com.gic.store.dto.ClerkTmpDTO
;
import
com.gic.store.dto.StoreDTO
;
import
com.gic.store.dto.StoreRegionDTO
;
import
com.gic.store.dto.*
;
import
com.gic.store.entity.TabClerkPosition
;
import
com.gic.store.entity.TabClerkTmp
;
import
com.gic.store.service.*
;
...
...
@@ -14,6 +13,7 @@ import com.task.allocation.api.AbstractTaskAllocationOperation;
import
com.task.allocation.exception.TaskAllocationException
;
import
com.task.allocation.qo.InitTaskQO
;
import
com.task.allocation.util.TaskAllocationSdkClient
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.logging.log4j.LogManager
;
import
org.apache.logging.log4j.Logger
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -44,7 +44,7 @@ public class ClerkTaskServiceImpl extends AbstractTaskAllocationOperation implem
private
StoreRegionService
storeRegionService
;
@Override
public
String
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
)
{
public
String
importDataToClerk
(
Integer
enterpriseId
,
String
userId
,
String
uuId
,
boolean
isReplace
)
{
logger
.
info
(
"enterpriseId:{}, userId:{}, uuId:{}"
,
enterpriseId
,
userId
,
uuId
);
String
message
=
""
;
InitTaskQO
initTaskQo
=
new
InitTaskQO
();
...
...
@@ -53,8 +53,14 @@ public class ClerkTaskServiceImpl extends AbstractTaskAllocationOperation implem
// key
initTaskQo
.
setTaskMqKey
(
Constants
.
CLERK_BATCH_IMPORT_MQ_KEY
);
// 注册的队列名称
initTaskQo
.
setTaskType
(
Constants
.
CLERK_BATCH_IMPORT_TASK_TYPE
);
// 任务类型
initTaskQo
.
setParams
(
enterpriseId
.
toString
());
// 你自己处理需要的参数
initTaskQo
.
setTaskSignKey
(
uuId
);
// 任务类型 唯一标识符
JSONObject
params
=
new
JSONObject
();
//如果门店code重复,是否替换更新
params
.
put
(
"isReplace"
,
isReplace
);
params
.
put
(
"enterpriseId"
,
enterpriseId
);
initTaskQo
.
setParams
(
params
.
toString
());
try
{
TaskAllocationSdkClient
instance
=
TaskAllocationSdkClient
.
getInstance
();
// 初始化sdk
instance
.
initTask
(
initTaskQo
);
// 初始化接口
...
...
@@ -68,9 +74,18 @@ public class ClerkTaskServiceImpl extends AbstractTaskAllocationOperation implem
@Override
public
List
<
Object
>
getListTasks
(
String
params
)
{
List
<
TabClerkTmp
>
list
=
clerkImportService
.
listUnImportClerk
(
params
);
JSONObject
json
=
JSON
.
parseObject
(
params
);
String
enterpriseId
=
json
.
getString
(
"enterpriseId"
);
boolean
isReplace
=
json
.
getBoolean
(
"isReplace"
);
List
<
TabClerkTmp
>
list
=
clerkImportService
.
listUnImportClerk
(
enterpriseId
);
logger
.
info
(
"导购批量导入放入队列数据数量:{}"
,
list
.
size
());
List
listTask
=
EntityUtil
.
changeEntityListByOrika
(
ClerkTmpDTO
.
class
,
list
);
List
<
ClerkTmpDTO
>
taskList
=
EntityUtil
.
changeEntityListByJSON
(
ClerkTmpDTO
.
class
,
list
);
if
(
CollectionUtils
.
isNotEmpty
(
taskList
))
{
for
(
ClerkTmpDTO
dto
:
taskList
)
{
dto
.
setReplace
(
isReplace
);
}
}
List
listTask
=
taskList
;
return
listTask
;
}
...
...
gic-store-service/src/main/java/com/gic/store/service/outer/impl/StoreTaskServiceImpl.java
View file @
47b8b75e
...
...
@@ -23,7 +23,6 @@ import org.apache.logging.log4j.Logger;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Optional
;
...
...
@@ -127,10 +126,9 @@ public class StoreTaskServiceImpl extends AbstractTaskAllocationOperation implem
// 判断门店品牌
String
brands
=
t
.
getBrands
();
if
(
StringUtils
.
isNotBlank
(
brands
))
{
String
[]
brandArr
=
brands
.
trim
().
split
(
"、"
);
List
<
TabStoreBrand
>
storeBrandList
=
storeBrandService
.
listAllStoreBrand
(
t
.
getEnterpriseId
(),
null
);
TabStoreBrand
storeBrand
=
storeBrandService
.
getByStoreBrandName
(
t
.
getEnterpriseId
(),
brands
);
List
<
Integer
>
list
=
new
ArrayList
<>();
// String[] brandArr = brands.trim().split("、");
// List<TabStoreBrand> storeBrandList = storeBrandService.listAllStoreBrand(t.getEnterpriseId(), null);
// List<Integer> list = new ArrayList<>();
// for (String brandName : brandArr) {
// for (TabStoreBrand storeBrand : storeBrandList) {
// if (storeBrand.getStoreBrandName().equals(brandName)) {
...
...
@@ -140,6 +138,7 @@ public class StoreTaskServiceImpl extends AbstractTaskAllocationOperation implem
// }
// }
// storeDTO.setBrandIds(Joiner.on(GlobalInfo.FLAG_COMMA).join(list));
TabStoreBrand
storeBrand
=
storeBrandService
.
getByStoreBrandName
(
t
.
getEnterpriseId
(),
brands
);
storeDTO
.
setBrandIds
(
storeBrand
.
getStoreBrandId
().
toString
());
}
// 判断省市区
...
...
gic-store-web/src/main/java/com/gic/store/web/controller/ClerkImportController.java
View file @
47b8b75e
...
...
@@ -117,6 +117,12 @@ public class ClerkImportController {
if
(
file
.
getSize
()
>
0
)
{
String
fileName
=
file
.
getOriginalFilename
();
String
uuId
=
request
.
getParameter
(
"uuId"
);
String
repeatStoreCodeConfig
=
request
.
getParameter
(
"repeatStoreCodeConfig"
);
if
(
StringUtils
.
isBlank
(
repeatStoreCodeConfig
))
{
repeatStoreCodeConfig
=
"0"
;
}
//如果门店code重复,是否替换更新
boolean
isReplace
=
"1"
.
equals
(
repeatStoreCodeConfig
);
if
(
fileName
.
endsWith
(
"xlsx"
)
||
fileName
.
endsWith
(
"xls"
))
{
try
{
Workbook
workbook
=
ExcelUtils
.
getWorkbookFromUpload
(
file
.
getInputStream
(),
fileName
);
...
...
@@ -128,7 +134,7 @@ public class ClerkImportController {
int
logCount
=
0
;
StringBuilder
sb
=
new
StringBuilder
();
for
(
Map
<
Integer
,
String
>
row
:
data
)
{
ClerkTmpDTO
bean
=
this
.
validateData
(
row
,
enterpriseId
);
ClerkTmpDTO
bean
=
this
.
validateData
(
row
,
enterpriseId
,
isReplace
);
try
{
bean
.
setSignKey
(
uuId
);
// 保存数据到临时表
...
...
@@ -151,8 +157,10 @@ public class ClerkImportController {
LogUtils
.
createLog
(
"批量导入"
,
sb
.
toString
());
if
(
clerkImportApiService
.
hasImportingClerk
(
enterpriseId
).
getResult
())
{
// userId
Integer
userId
=
UserDetailUtils
.
getUserDetail
().
getUserInfo
().
getUserId
();
// 开队列
String
r
=
clerkImportApiService
.
importDataToClerk
(
enterpriseId
,
"123"
,
uuId
).
getResult
();
String
r
=
clerkImportApiService
.
importDataToClerk
(
enterpriseId
,
userId
.
toString
(),
uuId
,
isReplace
).
getResult
();
if
(
StringUtils
.
isNotBlank
(
r
))
{
logger
.
warn
(
"队列错误, {}"
,
r
);
return
RestResponse
.
failure
(
ErrorCode
.
PARAMETER_ERROR
.
getCode
(),
"网络错误"
);
...
...
@@ -251,7 +259,7 @@ public class ClerkImportController {
}
private
ClerkTmpDTO
validateData
(
Map
<
Integer
,
String
>
row
,
Integer
enterpriseId
)
{
private
ClerkTmpDTO
validateData
(
Map
<
Integer
,
String
>
row
,
Integer
enterpriseId
,
boolean
isReplace
)
{
boolean
validate
=
true
;
ClerkTmpDTO
bean
=
new
ClerkTmpDTO
();
bean
.
setEnterpriseId
(
enterpriseId
);
...
...
@@ -354,8 +362,16 @@ public class ClerkImportController {
}
else
if
(
StoreOwnTypeEnum
.
OWNER
.
getCode
()
!=
storeDTO
.
getOwnType
())
{
bean
.
setErrorMessage
(
"不能在被授权门店下导入导购"
);
validate
=
false
;
}
else
if
(!
isReplace
)
{
// 验证code唯一
if
(
clerkImportApiService
.
validateClerkCode
(
enterpriseId
,
storeDTO
.
getStoreInfoId
(),
clerkCode
).
getResult
())
{
bean
.
setErrorMessage
(
"导购编码重复"
);
validate
=
false
;
}
}
}
// 验证岗位
String
positionName
=
row
.
get
(
6
);
if
(
validate
)
{
...
...
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