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
9545c8cf
Commit
9545c8cf
authored
Dec 21, 2022
by
徐高华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
活码链接数
parent
bb9ae77d
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
60 additions
and
17 deletions
+60
-17
HmLinkMapper.java
...gic/haoban/manage/service/dao/mapper/hm/HmLinkMapper.java
+6
-0
GroupChatHmService.java
...aoban/manage/service/service/chat/GroupChatHmService.java
+2
-1
GroupChatHmServiceImpl.java
...age/service/service/chat/impl/GroupChatHmServiceImpl.java
+33
-7
HmLinkChatMapper.xml
...service/src/main/resources/mapper/hm/HmLinkChatMapper.xml
+2
-2
HmLinkMapper.xml
...ge3-service/src/main/resources/mapper/hm/HmLinkMapper.xml
+17
-7
No files found.
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/dao/mapper/hm/HmLinkMapper.java
View file @
9545c8cf
...
@@ -5,6 +5,7 @@ import java.util.List;
...
@@ -5,6 +5,7 @@ import java.util.List;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO
;
import
com.gic.haoban.manage.service.entity.hm.TabHmLink
;
import
com.gic.haoban.manage.service.entity.hm.TabHmLink
;
/**
/**
...
@@ -63,4 +64,8 @@ public interface HmLinkMapper {
...
@@ -63,4 +64,8 @@ public interface HmLinkMapper {
public
List
<
TabHmLink
>
queryPageRelationList
(
@Param
(
"pageId"
)
Long
pageId
,
public
List
<
TabHmLink
>
queryPageRelationList
(
@Param
(
"pageId"
)
Long
pageId
,
@Param
(
"enterpriseId"
)
String
enterpriseId
,
@Param
(
"searchText"
)
String
searchText
);
@Param
(
"enterpriseId"
)
String
enterpriseId
,
@Param
(
"searchText"
)
String
searchText
);
public
List
<
HmLinkChatDTO
>
getLinkCountForHm
(
@Param
(
"wxEnterpriseId"
)
String
wxEnterpriseId
,
@Param
(
"chatHmIdList"
)
List
<
Long
>
chatHmIdList
)
;
}
}
\ No newline at end of file
haoban-manage3-service/src/main/java/com/gic/haoban/manage/service/service/chat/GroupChatHmService.java
View file @
9545c8cf
...
@@ -40,6 +40,6 @@ public interface GroupChatHmService {
...
@@ -40,6 +40,6 @@ public interface GroupChatHmService {
public
void
updateLinkCount
(
String
wxEnterpriseId
,
Long
chatHmId
);
public
void
updateLinkCount
(
String
wxEnterpriseId
,
Long
chatHmId
);
public
void
updateLinkCount
(
String
wxEnterpriseId
,
List
<
Long
>
chatHmIdList
);
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 @
9545c8cf
...
@@ -4,6 +4,7 @@ import java.util.ArrayList;
...
@@ -4,6 +4,7 @@ import java.util.ArrayList;
import
java.util.Arrays
;
import
java.util.Arrays
;
import
java.util.Date
;
import
java.util.Date
;
import
java.util.HashSet
;
import
java.util.HashSet
;
import
java.util.Iterator
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Set
;
import
java.util.Set
;
...
@@ -383,15 +384,40 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
...
@@ -383,15 +384,40 @@ public class GroupChatHmServiceImpl implements GroupChatHmService {
public
void
updateLinkCount
(
String
wxEnterpriseId
,
List
<
Long
>
chatHmIdList
)
{
public
void
updateLinkCount
(
String
wxEnterpriseId
,
List
<
Long
>
chatHmIdList
)
{
if
(
CollectionUtils
.
isNotEmpty
(
chatHmIdList
))
{
if
(
CollectionUtils
.
isNotEmpty
(
chatHmIdList
))
{
Set
<
Long
>
set
=
new
HashSet
<>(
chatHmIdList
);
Set
<
Long
>
set
=
new
HashSet
<>(
chatHmIdList
);
List
<
HmLinkChatDTO
>
link
Count
=
this
.
hmLinkChatService
.
getLinkCountForHm
(
wxEnterpriseId
,
List
<
HmLinkChatDTO
>
link
Group
=
this
.
hmLinkChatService
.
getLinkCountForHm
(
wxEnterpriseId
,
new
ArrayList
<>(
set
));
new
ArrayList
<>(
set
));
linkCount
.
forEach
(
dto
->
{
Integer
count
=
dto
.
getLinkCount
();
List
<
String
>
otherIdList
=
new
ArrayList
<>();
if
(
null
==
count
)
{
if
(
CollectionUtils
.
isNotEmpty
(
linkGroup
))
{
count
=
0
;
for
(
HmLinkChatDTO
item
:
linkGroup
)
{
otherIdList
.
add
(
item
.
getChatHmId
()
+
"_"
+
item
.
getLinkId
());
}
}
this
.
groupChatHmMapper
.
updateLinkCount
(
dto
.
getChatHmId
(),
count
);
}
});
List
<
HmLinkChatDTO
>
otherList
=
this
.
hmLinkMapper
.
getLinkCountForHm
(
wxEnterpriseId
,
chatHmIdList
);
for
(
HmLinkChatDTO
dto
:
otherList
)
{
String
tmp
=
dto
.
getChatHmId
()
+
"_"
+
dto
.
getLinkId
();
if
(!
otherIdList
.
contains
(
tmp
))
{
linkGroup
.
add
(
dto
);
}
}
Map
<
Long
,
List
<
HmLinkChatDTO
>>
map
=
linkGroup
.
stream
()
.
collect
(
Collectors
.
groupingBy
(
HmLinkChatDTO:
:
getChatHmId
));
Set
<
Long
>
allSet
=
map
.
keySet
();
Iterator
<
Long
>
it
=
allSet
.
iterator
();
while
(
it
.
hasNext
())
{
Long
key
=
it
.
next
();
int
count
=
0
;
for
(
HmLinkChatDTO
item
:
map
.
get
(
key
))
{
count
+=
item
.
getLinkCount
();
}
this
.
groupChatHmMapper
.
updateLinkCount
(
key
,
count
);
}
for
(
Long
id
:
chatHmIdList
)
{
if
(!
allSet
.
contains
(
id
))
{
this
.
groupChatHmMapper
.
updateLinkCount
(
id
,
0
);
}
}
}
}
}
}
...
...
haoban-manage3-service/src/main/resources/mapper/hm/HmLinkChatMapper.xml
View file @
9545c8cf
...
@@ -95,12 +95,12 @@
...
@@ -95,12 +95,12 @@
<select
id=
"getLinkCountForHm"
resultType=
"com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO"
>
<select
id=
"getLinkCountForHm"
resultType=
"com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO"
>
select chat_hm_id chatHmId,
COUNT(DISTINCT(link_id)
) linkCount from tab_haoban_hm_link_chat where wx_enterprise_id = #{wxEnterpriseId}
select chat_hm_id chatHmId,
link_id linkId , COUNT(*
) linkCount from tab_haoban_hm_link_chat where wx_enterprise_id = #{wxEnterpriseId}
and chat_hm_id in
and chat_hm_id in
<foreach
collection=
"chatHmIdList"
item=
"item"
separator=
","
index=
"index"
close=
")"
open=
"("
>
<foreach
collection=
"chatHmIdList"
item=
"item"
separator=
","
index=
"index"
close=
")"
open=
"("
>
#{item}
#{item}
</foreach>
</foreach>
and delete_flag = 0 group by chat_hm_id
and delete_flag = 0 group by chat_hm_id
, link_id
</select>
</select>
...
...
haoban-manage3-service/src/main/resources/mapper/hm/HmLinkMapper.xml
View file @
9545c8cf
...
@@ -157,12 +157,21 @@
...
@@ -157,12 +157,21 @@
and status_flag = 1 order by create_time desc
and status_flag = 1 order by create_time desc
</select>
</select>
<select
id=
"queryPageRelationList"
resultMap=
"result-map-tabHaobanHmLink"
>
<select
id=
"queryPageRelationList"
resultMap=
"result-map-tabHaobanHmLink"
>
select
<include
refid=
"Base_Column_List"
/>
select
<include
refid=
"Base_Column_List"
/>
from tab_haoban_hm_link where page_id = #{pageId} and enterprise_id=#{enterpriseId}
from tab_haoban_hm_link where page_id = #{pageId} and enterprise_id=#{enterpriseId}
<if
test=
"searchText != null and searchText != '' "
>
<if
test=
"searchText != null and searchText != '' "
>
and ( link_code = #{searchText} or name like CONCAT('%', #{searchText},'%'))
and ( link_code = #{searchText} or name like CONCAT('%', #{searchText},'%'))
</if>
</if>
</select>
</select>
<select
id=
"getLinkCountForHm"
resultType=
"com.gic.haoban.manage.api.dto.hm.HmLinkChatDTO"
>
select other_chat_hm_id chatHmId, link_id linkId , 1 linkCount from tab_haoban_hm_link where wx_enterprise_id = #{wxEnterpriseId}
and other_chat_hm_id in
<foreach
collection=
"chatHmIdList"
item=
"item"
separator=
","
index=
"index"
close=
")"
open=
"("
>
#{item}
</foreach>
</select>
</mapper>
</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