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
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
haoban3.0
haoban-manage3.0
Commits
4b818034
Commit
4b818034
authored
Dec 21, 2022
by
徐高华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新活码链接数
parent
b5f83612
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
73 additions
and
44 deletions
+73
-44
GroupChatHmService.java
...aoban/manage/service/service/chat/GroupChatHmService.java
+5
-0
GroupChatHmServiceImpl.java
...age/service/service/chat/impl/GroupChatHmServiceImpl.java
+24
-13
HmLinkChatService.java
...c/haoban/manage/service/service/hm/HmLinkChatService.java
+2
-1
HmLinkChatServiceImpl.java
...manage/service/service/hm/impl/HmLinkChatServiceImpl.java
+20
-11
HmLinkServiceImpl.java
...ban/manage/service/service/hm/impl/HmLinkServiceImpl.java
+21
-18
GroupChatHmController.java
...ban/manage/web/controller/chat/GroupChatHmController.java
+1
-1
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatHmService.java
View file @
4b818034
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
chat
;
import
java.util.List
;
import
com.gic.api.base.commons.BasePageInfo
;
import
com.gic.api.base.commons.Page
;
import
com.gic.api.base.commons.ServiceResponse
;
...
...
@@ -37,5 +39,7 @@ public interface GroupChatHmService {
public
void
discard
(
Long
chatHmId
,
String
wxEnterpriseId
,
String
clerkId
,
String
clerkName
);
public
void
updateLinkCount
(
String
wxEnterpriseId
,
Long
chatHmId
);
public
void
updateLinkCount
(
String
wxEnterpriseId
,
List
<
Long
>
chatHmIdList
);
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/impl/GroupChatHmServiceImpl.java
View file @
4b818034
...
...
@@ -6,6 +6,7 @@ import java.util.Date;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
org.apache.commons.collections.CollectionUtils
;
...
...
@@ -94,7 +95,7 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
if
(
null
==
link
)
{
return
new
Page
<>();
}
chatHmIdList
.
add
(
link
.
getOtherChatHmId
())
;
chatHmIdList
.
add
(
link
.
getOtherChatHmId
());
qdto
.
setChatHmIdList
(
chatHmIdList
);
}
PageHelper
.
startPage
(
basePageInfo
);
...
...
@@ -271,7 +272,7 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
SecretTypeEnum
.
CUSTOMIZED_APP
.
getVal
());
if
(
null
==
secretSetting
)
{
logger
.
info
(
"没有配置代开应用"
);
return
ServiceResponse
.
failure
(
"9999"
,
"没有配置代开应用"
);
return
ServiceResponse
.
failure
(
"9999"
,
"没有配置代开应用"
);
}
boolean
updateFlag
=
false
;
Long
hmid
=
dto
.
getChatHmId
();
...
...
@@ -304,7 +305,7 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
ServiceResponse
<
Void
>
updateResp
=
this
.
qywxChatApiService
.
updateJoinWay
(
qwDTO
.
getDkCorpid
(),
secretSetting
.
getSecretVal
(),
joinDTO
);
if
(!
updateResp
.
isSuccess
())
{
return
ServiceResponse
.
failure
(
"9999"
,
updateResp
.
getMessage
());
return
ServiceResponse
.
failure
(
"9999"
,
updateResp
.
getMessage
());
}
this
.
groupChatHmMapper
.
updateById
(
hm
);
List
<
TabGroupChatHmRelation
>
oldList
=
this
.
groupChatHmRelationMapper
.
listByChatHmId
(
hmid
);
...
...
@@ -341,14 +342,14 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
secretSetting
.
getSecretVal
(),
joinDTO
);
logger
.
info
(
"addResp={}"
,
JSON
.
toJSONString
(
addResp
));
if
(!
addResp
.
isSuccess
())
{
return
ServiceResponse
.
failure
(
"9999"
,
addResp
.
getMessage
());
return
ServiceResponse
.
failure
(
"9999"
,
addResp
.
getMessage
());
}
String
configId
=
addResp
.
getResult
();
ServiceResponse
<
AddJoinWayDTO
>
getResp
=
this
.
qywxChatApiService
.
getJoinWay
(
qwDTO
.
getDkCorpid
(),
secretSetting
.
getSecretVal
(),
configId
);
logger
.
info
(
"getResp={}"
,
JSON
.
toJSONString
(
getResp
));
if
(!
getResp
.
isSuccess
())
{
return
ServiceResponse
.
failure
(
"9999"
,
getResp
.
getMessage
());
return
ServiceResponse
.
failure
(
"9999"
,
getResp
.
getMessage
());
}
String
qrCode
=
getResp
.
getResult
().
getQr_code
();
hm
.
setWxConfigId
(
configId
);
...
...
@@ -379,15 +380,24 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
}
@Override
public
void
updateLinkCount
(
String
wxEnterpriseId
,
Long
chatHmId
)
{
List
<
HmLinkChatDTO
>
linkCount
=
this
.
hmLinkChatService
.
getLinkCountForHm
(
wxEnterpriseId
,
Arrays
.
asList
(
chatHmId
));
if
(
CollectionUtils
.
isNotEmpty
(
linkCount
))
{
Integer
count
=
linkCount
.
get
(
0
).
getLinkCount
();
if
(
null
!=
count
&&
count
!=
0
)
{
this
.
groupChatHmMapper
.
updateLinkCount
(
chatHmId
,
count
);
}
public
void
updateLinkCount
(
String
wxEnterpriseId
,
List
<
Long
>
chatHmIdList
)
{
if
(
CollectionUtils
.
isNotEmpty
(
chatHmIdList
))
{
Set
<
Long
>
set
=
new
HashSet
<>(
chatHmIdList
);
List
<
HmLinkChatDTO
>
linkCount
=
this
.
hmLinkChatService
.
getLinkCountForHm
(
wxEnterpriseId
,
new
ArrayList
<>(
set
));
linkCount
.
forEach
(
dto
->
{
Integer
count
=
dto
.
getLinkCount
();
if
(
null
==
count
)
{
count
=
0
;
}
this
.
groupChatHmMapper
.
updateLinkCount
(
dto
.
getChatHmId
(),
count
);
});
}
}
@Override
public
void
updateLinkCount
(
String
wxEnterpriseId
,
Long
chatHmId
)
{
this
.
updateLinkCount
(
wxEnterpriseId
,
Arrays
.
asList
(
chatHmId
));
}
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/hm/HmLinkChatService.java
View file @
4b818034
...
...
@@ -5,6 +5,7 @@ import com.gic.api.base.commons.BasePageInfo;
import
com.gic.api.base.commons.Page
;
import
com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO
;
import
com.gic.haoban.manage.api.dto.qdto.hm.HmLinkChatQDTO
;
import
com.gic.haoban.manage.service.entity.hm.TabHmLink
;
/**
*
...
...
@@ -20,7 +21,7 @@ public interface HmLinkChatService {
public
List
<
HmLinkChatDTO
>
listByLinkId
(
String
wxEnterpriseId
,
String
enterpriseId
,
Long
linkId
);
public
int
save
(
Long
linkId
,
List
<
HmLinkChatDTO
>
list
);
public
int
save
(
Long
linkId
,
List
<
HmLinkChatDTO
>
list
,
Long
otherHmId
,
TabHmLink
link
);
public
Page
<
HmLinkChatDTO
>
listPage
(
HmLinkChatQDTO
qdto
,
BasePageInfo
basePageInfo
);
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/hm/impl/HmLinkChatServiceImpl.java
View file @
4b818034
package
com
.
gic
.
haoban
.
manage
.
service
.
service
.
hm
.
impl
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Set
;
import
java.util.stream.Collectors
;
import
org.apache.commons.collections.CollectionUtils
;
...
...
@@ -20,6 +18,7 @@ import com.gic.enterprise.api.service.ScreeningDetailService;
import
com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO
;
import
com.gic.haoban.manage.api.dto.qdto.hm.HmLinkChatQDTO
;
import
com.gic.haoban.manage.service.dao.mapper.hm.HmLinkChatMapper
;
import
com.gic.haoban.manage.service.entity.hm.TabHmLink
;
import
com.gic.haoban.manage.service.entity.hm.TabHmLinkChat
;
import
com.gic.haoban.manage.service.service.chat.GroupChatHmService
;
import
com.gic.haoban.manage.service.service.hm.HmLinkChatService
;
...
...
@@ -38,15 +37,15 @@ public class HmLinkChatServiceImpl implements HmLinkChatService {
@Override
public
List
<
HmLinkChatDTO
>
listByLinkId
(
String
wxEnterpriseId
,
String
enterpriseId
,
Long
linkId
)
{
List
<
HmLinkChatDTO
>
list
=
this
.
hmLinkChatMapper
.
listByLinkId
(
wxEnterpriseId
,
enterpriseId
,
linkId
)
;
list
.
forEach
(
dto
->
{
dto
.
setEsId
(
HmLinkChatService
.
ES_ID
+
dto
.
getLinkChatId
());
List
<
HmLinkChatDTO
>
list
=
this
.
hmLinkChatMapper
.
listByLinkId
(
wxEnterpriseId
,
enterpriseId
,
linkId
);
list
.
forEach
(
dto
->
{
dto
.
setEsId
(
HmLinkChatService
.
ES_ID
+
dto
.
getLinkChatId
());
});
return
list
;
return
list
;
}
@Override
public
int
save
(
Long
linkId
,
List
<
HmLinkChatDTO
>
list
)
{
public
int
save
(
Long
linkId
,
List
<
HmLinkChatDTO
>
list
,
Long
otherHmId
,
TabHmLink
link
)
{
log
.
info
(
"保存群链接={}"
,
JSON
.
toJSONString
(
list
));
List
<
HmLinkChatDTO
>
updateList
=
list
.
stream
().
filter
(
dto
->
null
!=
dto
.
getLinkChatId
())
.
collect
(
Collectors
.
toList
());
...
...
@@ -75,11 +74,21 @@ public class HmLinkChatServiceImpl implements HmLinkChatService {
}
}
}
Set
<
Long
>
set
=
list
.
stream
().
map
(
dto
->
dto
.
getChatHmId
()).
collect
(
Collectors
.
toSet
());
List
<
Long
>
idList
=
new
ArrayList
<>(
set
);
for
(
Long
id
:
idList
)
{
this
.
groupChatHmService
.
updateLinkCount
(
list
.
get
(
0
).
getWxEnterpriseId
(),
id
);
// 更新其他链接
List
<
Long
>
idList
=
list
.
stream
().
map
(
dto
->
dto
.
getChatHmId
()).
collect
(
Collectors
.
toList
());
idList
.
add
(
otherHmId
);
if
(
null
!=
link
)
{
idList
.
add
(
link
.
getOtherChatHmId
());
}
// 统计活码关联的链接数量
String
wxEnterpriseId
=
list
.
get
(
0
).
getWxEnterpriseId
();
String
enterpriseId
=
list
.
get
(
0
).
getEnterpriseId
();
List
<
HmLinkChatDTO
>
oldList
=
this
.
hmLinkChatMapper
.
listByLinkId
(
wxEnterpriseId
,
enterpriseId
,
linkId
);
for
(
HmLinkChatDTO
old
:
oldList
)
{
idList
.
add
(
old
.
getChatHmId
());
}
this
.
groupChatHmService
.
updateLinkCount
(
wxEnterpriseId
,
idList
);
return
0
;
}
...
...
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/hm/impl/HmLinkServiceImpl.java
View file @
4b818034
...
...
@@ -50,9 +50,9 @@ public class HmLinkServiceImpl implements HmLinkService {
@Autowired
private
WelcomeRelationService
welcomeRelationService
;
@Autowired
private
HmLinkChatService
hmLinkChatService
;
private
HmLinkChatService
hmLinkChatService
;
@Autowired
private
GroupChatHmService
groupChatHmService
;
private
GroupChatHmService
groupChatHmService
;
@Override
public
HmLinkBO
getByLinkId
(
String
wxEnterpriseId
,
String
enterprieId
,
Long
linkId
)
{
...
...
@@ -99,17 +99,19 @@ public class HmLinkServiceImpl implements HmLinkService {
}
return
link
;
}
private
void
delCache
(
Long
linkId
,
String
shortCode
)
{
private
void
delCache
(
Long
linkId
,
String
shortCode
)
{
String
key1
=
"hm:link:"
+
shortCode
;
RedisUtil
.
delCache
(
key1
)
;
RedisUtil
.
delCache
(
key1
);
String
key2
=
"hm:link:"
+
linkId
;
RedisUtil
.
delCache
(
key2
)
;
RedisUtil
.
delCache
(
key2
);
}
@Override
public
List
<
HmLinkBO
>
listForSms
(
String
wxEnterpriseId
,
String
enterpriseId
,
String
linkName
,
Integer
linkType
,
List
<
String
>
creatorIdList
)
{
List
<
TabHmLink
>
list
=
this
.
linkMapper
.
listForSms
(
wxEnterpriseId
,
enterpriseId
,
linkName
,
linkType
,
creatorIdList
);
public
List
<
HmLinkBO
>
listForSms
(
String
wxEnterpriseId
,
String
enterpriseId
,
String
linkName
,
Integer
linkType
,
List
<
String
>
creatorIdList
)
{
List
<
TabHmLink
>
list
=
this
.
linkMapper
.
listForSms
(
wxEnterpriseId
,
enterpriseId
,
linkName
,
linkType
,
creatorIdList
);
return
EntityUtil
.
changeEntityListByJSON
(
HmLinkBO
.
class
,
list
);
}
...
...
@@ -119,10 +121,11 @@ public class HmLinkServiceImpl implements HmLinkService {
// 新增
Long
linkId
=
dto
.
getLinkId
();
String
oldWelcomeId
=
null
;
TabHmLink
oldLink
=
null
;
if
(
null
==
linkId
)
{
linkId
=
UniqueIdUtils
.
uniqueLong
();
StringBuilder
sb
=
new
StringBuilder
(
"LJ"
)
;
if
(
dto
.
getLinkType
()<
HmLinkTypeEnum
.
CHAT_HM_LINK_TYPE
.
getLinkType
())
{
StringBuilder
sb
=
new
StringBuilder
(
"LJ"
);
if
(
dto
.
getLinkType
()
<
HmLinkTypeEnum
.
CHAT_HM_LINK_TYPE
.
getLinkType
())
{
sb
.
append
(
"0"
);
}
sb
.
append
(
dto
.
getLinkType
()).
append
(
linkId
);
...
...
@@ -134,14 +137,15 @@ public class HmLinkServiceImpl implements HmLinkService {
TabHmLink
entity
=
EntityUtil
.
changeEntityByJSON
(
TabHmLink
.
class
,
dto
);
this
.
linkMapper
.
insert
(
entity
);
}
else
{
TabHmLink
oldLink
=
this
.
linkMapper
.
selectById
(
linkId
);
oldLink
=
this
.
linkMapper
.
selectById
(
linkId
);
this
.
delCache
(
oldLink
.
getLinkId
(),
oldLink
.
getShortCode
());
oldWelcomeId
=
oldLink
.
getWelcomeId
();
TabHmLink
entity
=
EntityUtil
.
changeEntityByJSON
(
TabHmLink
.
class
,
dto
);
this
.
linkMapper
.
update
(
entity
);
}
// 单人活码
if
(
dto
.
getLinkType
()==
HmLinkTypeEnum
.
HM_LINK_TYPE_1
.
getLinkType
()
||
dto
.
getLinkType
()==
HmLinkTypeEnum
.
HM_LINK_TYPE_2
.
getLinkType
())
{
if
(
dto
.
getLinkType
()
==
HmLinkTypeEnum
.
HM_LINK_TYPE_1
.
getLinkType
()
||
dto
.
getLinkType
()
==
HmLinkTypeEnum
.
HM_LINK_TYPE_2
.
getLinkType
())
{
if
(
CollectionUtils
.
isNotEmpty
(
storeList
))
{
storeList
.
forEach
(
item
->
{
item
.
setWxEnterpriseId
(
dto
.
getWxEnterpriseId
());
...
...
@@ -153,15 +157,14 @@ public class HmLinkServiceImpl implements HmLinkService {
this
.
hmLinkStoreService
.
saveStore
(
linkId
,
storeList
);
}
// 群活码
if
(
dto
.
getLinkType
()==
HmLinkTypeEnum
.
CHAT_HM_LINK_TYPE
.
getLinkType
())
{
int
index
=
0
;
for
(
HmLinkChatDTO
item
:
dto
.
getLinkChatList
())
{
if
(
dto
.
getLinkType
()
==
HmLinkTypeEnum
.
CHAT_HM_LINK_TYPE
.
getLinkType
())
{
int
index
=
0
;
for
(
HmLinkChatDTO
item
:
dto
.
getLinkChatList
())
{
item
.
setWxEnterpriseId
(
dto
.
getWxEnterpriseId
());
item
.
setEnterpriseId
(
dto
.
getEnterpriseId
());
item
.
setSortNum
(
index
++);
}
this
.
hmLinkChatService
.
save
(
linkId
,
dto
.
getLinkChatList
())
;
this
.
groupChatHmService
.
updateLinkCount
(
dto
.
getWxEnterpriseId
(),
dto
.
getOtherChatHmId
());
this
.
hmLinkChatService
.
save
(
linkId
,
dto
.
getLinkChatList
()
,
dto
.
getOtherChatHmId
()
,
oldLink
);
}
return
dto
.
getLinkCode
();
}
...
...
haoban-manage3-web/src/main/java/com/gic/haoban/manage/web/controller/chat/GroupChatHmController.java
View file @
4b818034
...
...
@@ -96,7 +96,7 @@ public class GroupChatHmController {
dto
.
setEnterpriseId
(
loginUser
.
getEnterpriseId
());
ServiceResponse
<
GroupChatHmDTO
>
resp
=
this
.
groupChatHmApiService
.
save
(
dto
);
if
(
resp
.
isSuccess
())
{
String
logContent
=
"新增群活码【"
+
dto
.
getChatHmCode
()
+
"-"
+
dto
.
getName
()
+
"】"
;
String
logContent
=
"新增群活码【"
+
resp
.
getResult
()
.
getChatHmCode
()
+
"-"
+
dto
.
getName
()
+
"】"
;
GicLogRecordEvaluationContext
.
putAttribute
(
"logValue"
,
logContent
);
GicLogRecordEvaluationContext
.
putOptTargetId
(
AuthWebRequestUtil
.
getLoginUser
().
getClerkId
());
return
RestResponse
.
successResult
();
...
...
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