Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
H
haoban-manage3.0
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
1
Merge Requests
1
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
haoban3.0
haoban-manage3.0
Commits
b30771b4
Commit
b30771b4
authored
Jul 10, 2020
by
fudahua
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
主导购 在线沟通
parent
f067cab1
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
66 additions
and
59 deletions
+66
-59
StaffApiServiceImpl.java
.../manage/service/service/out/impl/StaffApiServiceImpl.java
+46
-54
DealSyncTest.java
haoban-manage3-service/src/test/java/DealSyncTest.java
+20
-5
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/out/impl/StaffApiServiceImpl.java
View file @
b30771b4
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
out
.
impl
;
import
java.io.InputStream
;
import
java.net.URL
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.commons.util.GlobalInfo
;
import
com.gic.commons.util.GlobalVar
;
import
com.gic.commons.util.ImageUtil
;
import
com.gic.haoban.manage.api.dto.*
;
import
com.gic.haoban.manage.api.enums.SecretTypeEnum
;
import
com.gic.haoban.manage.api.service.DepartmentApiService
;
import
com.gic.haoban.manage.service.service.*
;
import
com.gic.haoban.manage.service.util.EmojiFilterUtil
;
import
com.gic.redis.data.anno.RedisCache
;
import
com.gic.thirdparty.api.dto.PicUploadResDTO
;
import
com.gic.thirdparty.api.service.QQCloudPicService
;
import
com.google.common.collect.Sets
;
import
com.vdurmont.emoji.EmojiParser
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.io.IOUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
cn.hutool.core.collection.CollectionUtil
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONArray
;
import
com.alibaba.fastjson.JSONObject
;
import
com.gic.api.base.commons.JSONResponse
;
import
com.gic.api.base.commons.Page
;
import
com.gic.clerk.api.dto.ClerkDTO
;
import
com.gic.clerk.api.service.ClerkService
;
import
com.gic.commons.util.EntityUtil
;
import
com.gic.commons.util.GlobalInfo
;
import
com.gic.commons.util.GlobalVar
;
import
com.gic.commons.util.ImageUtil
;
import
com.gic.enterprise.api.dto.StoreDTO
;
import
com.gic.enterprise.api.dto.StoreGroupDTO
;
import
com.gic.enterprise.api.service.StoreGroupService
;
...
...
@@ -47,6 +21,9 @@ import com.gic.haoban.base.api.common.ServiceResponse;
import
com.gic.haoban.common.utils.PageUtil
;
import
com.gic.haoban.common.utils.StringUtil
;
import
com.gic.haoban.common.utils.UuidUtil
;
import
com.gic.haoban.manage.api.dto.*
;
import
com.gic.haoban.manage.api.enums.SecretTypeEnum
;
import
com.gic.haoban.manage.api.service.DepartmentApiService
;
import
com.gic.haoban.manage.api.service.StaffApiService
;
import
com.gic.haoban.manage.api.service.WxEnterpriseRelatedApiService
;
import
com.gic.haoban.manage.service.dao.mapper.StaffDepartmentRelatedMapper
;
...
...
@@ -55,10 +32,26 @@ import com.gic.haoban.manage.service.entity.TabHaobanDepartment;
import
com.gic.haoban.manage.service.entity.TabHaobanStaff
;
import
com.gic.haoban.manage.service.entity.TabHaobanStaffDepartmentRelated
;
import
com.gic.haoban.manage.service.entity.TabHaobanSyncErrorLog
;
import
com.gic.haoban.manage.service.service.*
;
import
com.gic.haoban.manage.service.util.EmojiFilterUtil
;
import
com.gic.redis.data.anno.RedisCache
;
import
com.gic.redis.data.util.RedisUtil
;
import
com.gic.thirdparty.api.dto.PicUploadResDTO
;
import
com.gic.thirdparty.api.service.QQCloudPicService
;
import
com.gic.wechat.api.dto.qywx.UserDTO
;
import
com.gic.wechat.api.service.qywx.QywxUserApiService
;
import
com.github.pagehelper.PageHelper
;
import
com.google.common.collect.Sets
;
import
org.apache.commons.collections.CollectionUtils
;
import
org.apache.commons.lang.StringUtils
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.util.*
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
@Service
public
class
StaffApiServiceImpl
implements
StaffApiService
{
...
...
@@ -1398,32 +1391,31 @@ public class StaffApiServiceImpl implements StaffApiService {
@RedisCache
(
value
=
"qrcode-${clerkCode}-${storeId}"
,
timeOut
=
1
,
timeunit
=
TimeUnit
.
DAYS
)
public
ServiceResponse
<
String
>
getStaffQrcode
(
String
clerkCode
,
String
storeId
)
{
ServiceResponse
<
String
>
resp
=
new
ServiceResponse
<>();
TabHaobanDepartment
department
=
departmentService
.
selectByRelatedId
(
storeId
);
if
(
null
==
department
)
{
resp
.
setMessage
(
"部门没关联"
);
resp
.
setCode
(
0
);
return
resp
;
List
<
String
>
clerkCodes
=
new
ArrayList
<>();
clerkCodes
.
add
(
clerkCode
);
List
<
ClerkDTO
>
list
=
clerkService
.
listClerk
(
storeId
,
clerkCodes
,
true
);
if
(
CollectionUtils
.
isEmpty
(
list
))
{
logger
.
info
(
"成员不存在:{}"
,
clerkCode
);
return
null
;
}
List
<
TabHaobanStaffDepartmentRelated
>
retList
=
staffDepartmentRelatedService
.
listByDepartmentId
(
department
.
getDepartmentId
());
if
(
CollectionUtils
.
isEmpty
(
retList
))
{
resp
.
setMessage
(
"成员没关联"
);
resp
.
setCode
(
0
);
return
resp
;
ClerkDTO
clerkDTO
=
list
.
get
(
0
);
StaffClerkRelationDTO
relationDTO
=
staffClerkRelationService
.
getByClerkId
(
clerkDTO
.
getClerkId
());
if
(
relationDTO
==
null
)
{
logger
.
info
(
"成员没有关联:{}"
,
clerkCode
);
return
null
;
}
for
(
TabHaobanStaffDepartmentRelated
tab
:
retList
)
{
if
(
clerkCode
.
equals
(
tab
.
getClerkCode
()))
{
WxEnterpriseDTO
wxEnterpriseDTO
=
wxEnterpriseService
.
selectById
(
department
.
getWxEnterpriseId
());
SecretSettingDTO
secretSetting
=
secretSettingService
.
getSecretSetting
(
wxEnterpriseDTO
.
getWxEnterpriseId
(),
SecretTypeEnum
.
HAOBAN_HELP
.
getVal
());
if
(
null
==
secretSetting
||
secretSetting
.
getCheckFlag
()==
0
)
{
logger
.
info
(
"没有配置secret:{}"
,
wxEnterpriseDTO
.
getWxEnterpriseId
());
return
null
;
}
UserDTO
user
=
qywxUserApiService
.
getSelfWorkWxUser
(
wxEnterpriseDTO
.
getCorpid
(),
secretSetting
.
getSecretVal
(),
tab
.
getWxUserId
());
if
(
user
!=
null
)
{
resp
.
setResult
(
user
.
getQr_code
());
return
resp
;
}
}
WxEnterpriseDTO
wxEnterpriseDTO
=
wxEnterpriseService
.
selectById
(
relationDTO
.
getWxEnterpriseId
());
SecretSettingDTO
secretSetting
=
secretSettingService
.
getSecretSetting
(
wxEnterpriseDTO
.
getWxEnterpriseId
(),
SecretTypeEnum
.
HAOBAN_HELP
.
getVal
());
if
(
null
==
secretSetting
||
secretSetting
.
getCheckFlag
()==
0
)
{
logger
.
info
(
"没有配置secret:{}"
,
wxEnterpriseDTO
.
getWxEnterpriseId
());
return
null
;
}
UserDTO
user
=
qywxUserApiService
.
getSelfWorkWxUser
(
wxEnterpriseDTO
.
getCorpid
(),
secretSetting
.
getSecretVal
(),
relationDTO
.
getWxUserId
());
if
(
user
!=
null
)
{
resp
.
setResult
(
user
.
getQr_code
());
return
resp
;
}
return
resp
;
}
...
...
haoban-manage3-service/src/test/java/DealSyncTest.java
View file @
b30771b4
...
...
@@ -12,6 +12,7 @@ import org.apache.commons.collections.CollectionUtils;
import
org.apache.commons.lang3.StringUtils
;
import
org.junit.Test
;
import
org.junit.runner.RunWith
;
import
org.redisson.api.RLock
;
import
org.slf4j.Logger
;
import
org.slf4j.LoggerFactory
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -118,15 +119,29 @@ public class DealSyncTest {
@Test
public
void
test6
()
{
String
key
=
"test2"
;
RedisUtil
.
lock
(
key
,
100L
,
TimeUnit
.
SECONDS
,
0L
);
// RedisUtil.lock(key,100L, TimeUnit.SECONDS,0L);
// try {
// Thread.sleep(3000);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
RLock
lock
=
RedisUtil
.
getRedisClient
().
getLock
(
key
);
try
{
Thread
.
sleep
(
3000
);
if
(
lock
.
tryLock
(
0
,
10
,
TimeUnit
.
MINUTES
))
{
try
{
Thread
.
sleep
(
1000L
);
}
finally
{
lock
.
unlock
();
}
}
}
catch
(
InterruptedException
e
)
{
e
.
printStackTrace
();
}
if
(
RedisUtil
.
isLocked
(
key
)){
RedisUtil
.
unlock
(
key
);
}
// if(RedisUtil.isLocked(key)){
// RedisUtil.unlock(key);
// }
// RedisUtil.unlock();
// RedisUtil.setCache("test5511","111",2592030L);
}
@Test
...
...
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