Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wecloud_im_server
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
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
hewei
wecloud_im_server
Commits
4ec6121e
Commit
4ec6121e
authored
Oct 19, 2022
by
Future
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改配置文件
parent
41b94ad8
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
98 additions
and
91 deletions
+98
-91
config/src/main/resources/config/application-xhdtest.yml
+1
-1
core/src/main/java/com/wecloud/im/entity/ImMessage.java
+5
-0
core/src/main/resources/mapper/ImMessageMapper.xml
+92
-90
No files found.
config/src/main/resources/config/application-xhdtest.yml
View file @
4ec6121e
...
...
@@ -17,7 +17,7 @@ spring:
datasource
:
url
:
jdbc:mysql://mysql:3306/wecloud_im?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true
username
:
root
password
:
temple12345
password
:
temple12345
6
#//测试外网
# url: jdbc:mysql://18.136.207.16:3306/wecloud_im?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false&allowPublicKeyRetrieval=true
...
...
core/src/main/java/com/wecloud/im/entity/ImMessage.java
View file @
4ec6121e
package
com
.
wecloud
.
im
.
entity
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.geekidea.springbootplus.framework.common.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
...
...
@@ -24,6 +25,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
@ApiModel
(
value
=
"ImMessage对象"
)
@TableName
(
"im_message_new"
)
public
class
ImMessage
extends
BaseEntity
{
private
static
final
long
serialVersionUID
=
1L
;
...
...
@@ -84,4 +86,7 @@ public class ImMessage extends BaseEntity {
@ApiModelProperty
(
"是否删除 1-未删除 2-已删除"
)
private
Integer
isDelete
;
@ApiModelProperty
(
"前一条消息的id"
)
private
Long
preMessageId
;
}
core/src/main/resources/mapper/ImMessageMapper.xml
View file @
4ec6121e
...
...
@@ -11,29 +11,29 @@
<select
id=
"getImMessageById"
resultType=
"com.wecloud.im.param.ImMessageQueryVo"
>
select
<include
refid=
"Base_Column_List"
/>
from im_message where id = #{id}
from im_message
_new
where id = #{id}
</select>
<select
id=
"getImMessagePageList"
parameterType=
"com.wecloud.im.param.ImMessagePageParam"
resultType=
"com.wecloud.im.param.ImMessageQueryVo"
>
select
<include
refid=
"Base_Column_List"
/>
from im_message
from im_message
_new
</select>
<select
id=
"getOfflineListByClientAndConversation"
resultType=
"com.wecloud.im.vo.OfflineMsgDto"
>
SELECT im_message.id AS msgId,
im_message.create_time,
im_message.withdraw_time,
im_message.update_date,
SELECT im_message
_new
.id AS msgId,
im_message
_new
.create_time,
im_message
_new
.withdraw_time,
im_message
_new
.update_date,
`im_client`.client_id AS sender,
im_message.content,
im_message.withdraw,
im_message.`event`,
im_message.system_flag,
im_message.`at`,
im_message.send_status,
im_message.fk_conversation_id,
im_message.`msg_type` AS 'type',
im_message
_new
.content,
im_message
_new
.withdraw,
im_message
_new
.`event`,
im_message
_new
.system_flag,
im_message
_new
.`at`,
im_message
_new
.send_status,
im_message
_new
.fk_conversation_id,
im_message
_new
.`msg_type` AS 'type',
(SELECT COUNT(id)
FROM im_inbox
WHERE fk_msg_id = msgId
...
...
@@ -44,110 +44,111 @@
AND receiver_msg_status = 0) AS not_receiver_count
FROM im_inbox
INNER JOIN im_message
im_message ON im_message
.id = im_inbox.fk_msg_id
INNER JOIN `im_client` ON `im_client`.id = `im_message`.sender
INNER JOIN im_message
_new im_message_new ON im_message_new
.id = im_inbox.fk_msg_id
INNER JOIN `im_client` ON `im_client`.id = `im_message
_new
`.sender
WHERE im_inbox.fk_conversation_id = #{conversationId}
AND im_inbox.receiver = #{clientId}
AND im_inbox.receiver_msg_status = 0
AND im_message.is_delete = 1
AND im_message.withdraw = 0
AND im_message
_new
.is_delete = 1
AND im_message
_new
.withdraw = 0
</select>
<select
id=
"getHistoryMsgConversationId"
resultType=
"com.wecloud.im.vo.OfflineMsgDto"
>
SELECT im_message.id AS msgId,
im_message.create_time,
im_message.withdraw_time,
im_message.update_date,
SELECT im_message_new.id AS msgId,
im_message_new.pre_message_id AS preMessageId,
im_message_new.create_time,
im_message_new.withdraw_time,
im_message_new.update_date,
`im_client`.client_id AS sender,
im_message.content,
im_message.withdraw,
im_message.`event`,
im_message.system_flag,
im_message.`at`,
im_message.send_status,
im_message.`msg_type` AS 'type',
im_message.fk_conversation_id as conversationId
im_message
_new
.content,
im_message
_new
.withdraw,
im_message
_new
.`event`,
im_message
_new
.system_flag,
im_message
_new
.`at`,
im_message
_new
.send_status,
im_message
_new
.`msg_type` AS 'type',
im_message
_new
.fk_conversation_id as conversationId
-- (SELECT COUNT(id) FROM im_inbox WHERE fk_msg_id = msgId AND read_msg_status = 0) AS not_read_count,
-- (SELECT COUNT(id)
-- FROM im_inbox
-- WHERE fk_msg_id = msgId
-- AND receiver_msg_status = 0) AS not_receiver_count
FROM `im_message`
INNER JOIN `im_client` ON `im_client`.id = `im_message`.sender
WHERE fk_conversation_id = #{param.conversationId} and im_message
.is_delete = 1 and im_message
.withdraw = 0
and (im_message
.`event`=0 || (im_message
.`event`=1 and sender != #{param.currentFkClientId} and (receivers is
FROM `im_message
_new
`
INNER JOIN `im_client` ON `im_client`.id = `im_message
_new
`.sender
WHERE fk_conversation_id = #{param.conversationId} and im_message
_new.is_delete = 1 and im_message_new
.withdraw = 0
and (im_message
_new.`event`=0 || (im_message_new
.`event`=1 and sender != #{param.currentFkClientId} and (receivers is
null || (receivers !=null and FIND_IN_SET(#{param.currentFkClientId}, receivers))) ))
<if
test=
"param.msgIdStart != null"
>
AND im_message.id > #{param.msgIdStart}
AND im_message
_new
.id > #{param.msgIdStart}
</if>
<if
test=
"param.msgIdEnd != null"
>
AND im_message.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
AND im_message
_new
.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
</if>
and im_message.create_time > DATE_SUB(CURDATE(), INTERVAL 7 DAY)
and im_message
_new
.create_time > DATE_SUB(CURDATE(), INTERVAL 7 DAY)
ORDER BY `im_message`.`create_time` DESC
ORDER BY `im_message
_new
`.`create_time` DESC
</select>
<select
id=
"getHistoryMsgConversationIdNew"
resultType=
"com.wecloud.im.vo.OfflineMsgDto"
>
SELECT im_message.id AS msgId,
im_message.create_time,
im_message.withdraw_time,
im_message.update_date,
SELECT im_message
_new
.id AS msgId,
im_message
_new
.create_time,
im_message
_new
.withdraw_time,
im_message
_new
.update_date,
`im_client`.client_id AS sender,
im_message.content,
im_message.withdraw,
im_message.`event`,
im_message.system_flag,
im_message.`at`,
im_message.send_status,
im_message.`msg_type` AS 'type',
im_message.fk_conversation_id as conversationId,
im_message
_new
.content,
im_message
_new
.withdraw,
im_message
_new
.`event`,
im_message
_new
.system_flag,
im_message
_new
.`at`,
im_message
_new
.send_status,
im_message
_new
.`msg_type` AS 'type',
im_message
_new
.fk_conversation_id as conversationId,
(SELECT COUNT(id) FROM im_inbox WHERE fk_msg_id = msgId AND read_msg_status = 0) AS not_read_count,
(SELECT COUNT(id)
FROM im_inbox
WHERE fk_msg_id = msgId
AND receiver_msg_status = 0) AS not_receiver_count
FROM `im_message`
INNER JOIN `im_client` ON `im_client`.id = `im_message`.sender
WHERE fk_conversation_id = #{param.conversationId} and im_message
.is_delete = 1 and im_message
.withdraw = 0
and (im_message
.`event`=0 || (im_message
.`event`=1 and sender != #{param.currentFkClientId} and (receivers is
FROM `im_message
_new
`
INNER JOIN `im_client` ON `im_client`.id = `im_message
_new
`.sender
WHERE fk_conversation_id = #{param.conversationId} and im_message
_new.is_delete = 1 and im_message_new
.withdraw = 0
and (im_message
_new.`event`=0 || (im_message_new
.`event`=1 and sender != #{param.currentFkClientId} and (receivers is
null || (receivers !=null and FIND_IN_SET(#{param.currentFkClientId}, receivers))) ))
<if
test=
"param.msgIdStart != null"
>
AND im_message.id > #{param.msgIdStart}
AND im_message
_new
.id > #{param.msgIdStart}
</if>
<if
test=
"param.getLast != null and param.getLast == 1"
>
AND im_message.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
AND im_message
_new
.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
</if>
<if
test=
"param.getLast != null and param.getLast == 0"
>
AND im_message.id
<![CDATA[ <= ]]>
#{param.msgIdEnd}
AND im_message
_new
.id
<![CDATA[ <= ]]>
#{param.msgIdEnd}
</if>
<if
test=
"param.getLast == null"
>
AND im_message.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
AND im_message
_new
.id
<![CDATA[ < ]]>
#{param.msgIdEnd}
</if>
ORDER BY `im_message`.`create_time` DESC
ORDER BY `im_message
_new
`.`create_time` DESC
</select>
<select
id=
"getReceivedLastMsgByConversationId"
resultType=
"com.wecloud.im.vo.OfflineMsgDto"
>
SELECT im_message.id AS msgId,
im_message.create_time,
im_message.withdraw_time,
im_message.update_date,
SELECT im_message
_new
.id AS msgId,
im_message
_new
.create_time,
im_message
_new
.withdraw_time,
im_message
_new
.update_date,
`im_client`.client_id AS sender,
im_message.content,
im_message.withdraw,
im_message.`event`,
im_message.system_flag,
im_message.`at`,
im_message.`msg_type` AS 'type',
im_message.send_status,
im_message.fk_conversation_id
im_message
_new
.content,
im_message
_new
.withdraw,
im_message
_new
.`event`,
im_message
_new
.system_flag,
im_message
_new
.`at`,
im_message
_new
.`msg_type` AS 'type',
im_message
_new
.send_status,
im_message
_new
.fk_conversation_id
FROM im_inbox
INNER JOIN im_message
ON im_message
.id = im_inbox.fk_msg_id
INNER JOIN im_client AS im_client ON im_client.id = im_message.sender
INNER JOIN im_message
_new ON im_message_new
.id = im_inbox.fk_msg_id
INNER JOIN im_client AS im_client ON im_client.id = im_message
_new
.sender
WHERE im_inbox.receiver = #{clientId}
AND im_inbox.fk_conversation_id = #{conversationId}
ORDER BY create_time DESC
...
...
@@ -155,27 +156,28 @@
</select>
<select
id=
"getLastMsgByConversationId"
resultType=
"com.wecloud.im.vo.OfflineMsgDto"
>
SELECT im_message.id AS msgId,
im_message.create_time,
im_message.withdraw_time,
im_message.update_date,
SELECT im_message
_new
.id AS msgId,
im_message
_new
.create_time,
im_message
_new
.withdraw_time,
im_message
_new
.update_date,
`im_client`.client_id AS sender,
im_message.content,
im_message.withdraw,
im_message.`event`,
im_message.system_flag,
im_message.`at`,
im_message.send_status,
im_message.`msg_type` AS 'type',
im_message.fk_conversation_id
FROM im_message
INNER JOIN im_client AS im_client ON im_client.id = im_message.sender
WHERE im_message.fk_conversation_id = #{conversationId}
and (im_message.`event` = 0 || (im_message.`event` = 1 and sender != #{currentFkClientId} and
im_message_new.content,
im_message_new.withdraw,
im_message_new.`event`,
im_message_new.system_flag,
im_message_new.`at`,
im_message_new.send_status,
im_message_new.`msg_type` AS 'type',
im_message_new.fk_conversation_id,
im_message_new.pre_message_id AS 'preMessageId'
FROM im_message_new
INNER JOIN im_client AS im_client ON im_client.id = im_message_new.sender
WHERE im_message_new.fk_conversation_id = #{conversationId}
and (im_message_new.`event` = 0 || (im_message_new.`event` = 1 and sender != #{currentFkClientId} and
(receivers is null ||
(receivers != null and FIND_IN_SET(#{currentFkClientId}, receivers)))))
ORDER BY im_message.id DESC
ORDER BY im_message
_new
.id DESC
LIMIT 1
</select>
...
...
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