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
5f0bbf59
Commit
5f0bbf59
authored
Apr 27, 2022
by
罗长华
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
合并置顶和免打扰接口为聊天设置接口
parent
c242ddc7
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
81 additions
and
60 deletions
+81
-60
core/src/main/java/com/wecloud/im/controller/ImConversationMembersController.java
+6
-31
core/src/main/java/com/wecloud/im/param/ChatSettingParam.java
+6
-3
core/src/main/java/com/wecloud/im/param/ChatSettingTypeEnum.java
+48
-0
core/src/main/java/com/wecloud/im/service/ImConversationMembersService.java
+2
-10
core/src/main/java/com/wecloud/im/service/impl/ImConversationMembersServiceImpl.java
+19
-16
No files found.
core/src/main/java/com/wecloud/im/controller/ImConversationMembersController.java
View file @
5f0bbf59
...
@@ -2,7 +2,6 @@ package com.wecloud.im.controller;
...
@@ -2,7 +2,6 @@ package com.wecloud.im.controller;
import
io.geekidea.springbootplus.framework.common.api.ApiResult
;
import
io.geekidea.springbootplus.framework.common.api.ApiResult
;
import
io.geekidea.springbootplus.framework.common.controller.BaseController
;
import
io.geekidea.springbootplus.framework.common.controller.BaseController
;
import
io.geekidea.springbootplus.framework.shiro.util.SecurityUtils
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
import
io.swagger.annotations.ApiOperation
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -16,10 +15,9 @@ import org.springframework.web.bind.annotation.RequestBody;
...
@@ -16,10 +15,9 @@ import org.springframework.web.bind.annotation.RequestBody;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.RestController
;
import
com.wecloud.im.param.ChatSettingParam
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ListConversationMembersParam
;
import
com.wecloud.im.param.ListConversationMembersParam
;
import
com.wecloud.im.param.SetConversationDoNotDisturbParam
;
import
com.wecloud.im.param.SetConversationTopParam
;
import
com.wecloud.im.param.add.ImConversationMemAttrUpdate
;
import
com.wecloud.im.param.add.ImConversationMemAttrUpdate
;
import
com.wecloud.im.service.ImConversationMembersService
;
import
com.wecloud.im.service.ImConversationMembersService
;
import
com.wecloud.im.vo.ConversationMemberVo
;
import
com.wecloud.im.vo.ConversationMemberVo
;
...
@@ -77,39 +75,16 @@ public class ImConversationMembersController extends BaseController {
...
@@ -77,39 +75,16 @@ public class ImConversationMembersController extends BaseController {
}
}
/**
/**
*
会话置顶
*
聊天设置
* @Author luozh
* @Author luozh
* @Date 2022年04月26日 11:48:59
* @Date 2022年04月26日 11:48:59
* @param
* @param
* @Return
* @Return
*/
*/
@ApiOperation
(
value
=
"会话置顶"
)
@ApiOperation
(
value
=
"聊天设置"
)
@PostMapping
(
"/sdk/setTop"
)
@PostMapping
(
"/chatSetting"
)
public
ApiResult
<
Boolean
>
setTop
(
@RequestBody
SetConversationTopParam
param
)
{
public
ApiResult
<
Boolean
>
chatSetting
(
@RequestBody
ChatSettingParam
param
)
{
Long
appId
=
SecurityUtils
.
getCurrentAppId
();
return
ApiResult
.
ok
(
imConversationMembersService
.
chatSetting
(
param
));
String
clientId
=
param
.
getClientId
();
Long
conversationId
=
param
.
getConversationId
();
Boolean
top
=
param
.
getTop
();
imConversationMembersService
.
setTop
(
appId
,
clientId
,
conversationId
,
top
);
return
ApiResult
.
ok
();
}
/**
* 设置免打扰
* @Author luozh
* @Date 2022年04月26日 11:49:55
* @param
* @Return
*/
@ApiOperation
(
value
=
"会话免打扰"
)
@PostMapping
(
"/sdk/setDoNotDisturb"
)
public
ApiResult
<
Boolean
>
setDoNotDisturb
(
@RequestBody
SetConversationDoNotDisturbParam
param
)
{
Long
appId
=
SecurityUtils
.
getCurrentAppId
();
String
clientId
=
param
.
getClientId
();
Long
conversationId
=
param
.
getConversationId
();
Boolean
doNotDisturb
=
param
.
getDoNotDisturb
();
imConversationMembersService
.
setDoNotDisturb
(
appId
,
clientId
,
conversationId
,
doNotDisturb
);
return
ApiResult
.
ok
();
}
}
}
}
...
...
core/src/main/java/com/wecloud/im/param/
SetConversationTop
Param.java
→
core/src/main/java/com/wecloud/im/param/
ChatSetting
Param.java
View file @
5f0bbf59
...
@@ -4,14 +4,14 @@ import io.swagger.annotations.ApiModelProperty;
...
@@ -4,14 +4,14 @@ import io.swagger.annotations.ApiModelProperty;
import
lombok.Data
;
import
lombok.Data
;
/**
/**
*
设置会话置顶
入参
*
聊天设置
入参
* @Author luozh
* @Author luozh
* @Date 2022年04月26日 11:52
* @Date 2022年04月26日 11:52
* @Version 1.0
* @Version 1.0
*/
*/
@Data
@Data
public
class
SetConversationTop
Param
{
public
class
ChatSetting
Param
{
@ApiModelProperty
(
"客户端id"
)
@ApiModelProperty
(
"客户端id"
)
String
clientId
;
String
clientId
;
...
@@ -19,7 +19,10 @@ public class SetConversationTopParam {
...
@@ -19,7 +19,10 @@ public class SetConversationTopParam {
@ApiModelProperty
(
"会话id"
)
@ApiModelProperty
(
"会话id"
)
Long
conversationId
;
Long
conversationId
;
@ApiModelProperty
(
"设置类型"
)
ChatSettingTypeEnum
type
;
@ApiModelProperty
(
"是否免打扰"
)
@ApiModelProperty
(
"是否免打扰"
)
private
Boolean
top
;
private
Boolean
on
;
}
}
core/src/main/java/com/wecloud/im/param/ChatSettingTypeEnum.java
0 → 100644
View file @
5f0bbf59
package
com
.
wecloud
.
im
.
param
;
import
io.geekidea.springbootplus.framework.common.enums.BaseEnum
;
import
com.baomidou.mybatisplus.annotation.EnumValue
;
import
com.fasterxml.jackson.annotation.JsonValue
;
/**
*
* @Author luozh
* @Date 2022年04月27日 17:26
* @Version 1.0
*/
public
enum
ChatSettingTypeEnum
implements
BaseEnum
{
/**
* 1-置顶
*/
TOP
(
1
,
"置顶"
),
/**
* 2-消息免打扰
*/
DO_NOT_DISTURB
(
2
,
"消息免打扰"
),
;
ChatSettingTypeEnum
(
int
code
,
String
desc
)
{
this
.
code
=
code
;
this
.
desc
=
desc
;
}
@JsonValue
@EnumValue
private
final
Integer
code
;
private
final
String
desc
;
@Override
public
Integer
getCode
()
{
return
null
;
}
@Override
public
String
getDesc
()
{
return
null
;
}
}
core/src/main/java/com/wecloud/im/service/ImConversationMembersService.java
View file @
5f0bbf59
...
@@ -10,6 +10,7 @@ import com.wecloud.im.entity.ImApplication;
...
@@ -10,6 +10,7 @@ import com.wecloud.im.entity.ImApplication;
import
com.wecloud.im.entity.ImConversationMembers
;
import
com.wecloud.im.entity.ImConversationMembers
;
import
com.wecloud.im.param.ApiImConversationMembersPageParam
;
import
com.wecloud.im.param.ApiImConversationMembersPageParam
;
import
com.wecloud.im.param.ApiImConversationMembersQueryVo
;
import
com.wecloud.im.param.ApiImConversationMembersQueryVo
;
import
com.wecloud.im.param.ChatSettingParam
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ImConversationMembersPageParam
;
import
com.wecloud.im.param.ImConversationMembersPageParam
;
import
com.wecloud.im.param.ImConversationMembersQueryVo
;
import
com.wecloud.im.param.ImConversationMembersQueryVo
;
...
@@ -129,14 +130,5 @@ public interface ImConversationMembersService extends BaseService<ImConversation
...
@@ -129,14 +130,5 @@ public interface ImConversationMembersService extends BaseService<ImConversation
* @param
* @param
* @Return
* @Return
*/
*/
Boolean
setTop
(
Long
appId
,
String
clientId
,
Long
conversationId
,
Boolean
top
);
Boolean
chatSetting
(
ChatSettingParam
param
);
/**
* 设置免打扰
* @Author luozh
* @Date 2022年04月25日 06:24:43
* @param
* @Return
*/
Boolean
setDoNotDisturb
(
Long
appId
,
String
clientId
,
Long
conversationId
,
Boolean
doNotDisturb
);
}
}
core/src/main/java/com/wecloud/im/service/impl/ImConversationMembersServiceImpl.java
View file @
5f0bbf59
...
@@ -6,6 +6,7 @@ import io.geekidea.springbootplus.framework.common.exception.BusinessException;
...
@@ -6,6 +6,7 @@ import io.geekidea.springbootplus.framework.common.exception.BusinessException;
import
io.geekidea.springbootplus.framework.common.service.impl.BaseServiceImpl
;
import
io.geekidea.springbootplus.framework.common.service.impl.BaseServiceImpl
;
import
io.geekidea.springbootplus.framework.core.pagination.PageInfo
;
import
io.geekidea.springbootplus.framework.core.pagination.PageInfo
;
import
io.geekidea.springbootplus.framework.core.pagination.Paging
;
import
io.geekidea.springbootplus.framework.core.pagination.Paging
;
import
io.geekidea.springbootplus.framework.shiro.util.SecurityUtils
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
import
java.util.Date
;
import
java.util.Date
;
...
@@ -31,6 +32,8 @@ import com.wecloud.im.mapper.ImConversationMapper;
...
@@ -31,6 +32,8 @@ import com.wecloud.im.mapper.ImConversationMapper;
import
com.wecloud.im.mapper.ImConversationMembersMapper
;
import
com.wecloud.im.mapper.ImConversationMembersMapper
;
import
com.wecloud.im.param.ApiImConversationMembersPageParam
;
import
com.wecloud.im.param.ApiImConversationMembersPageParam
;
import
com.wecloud.im.param.ApiImConversationMembersQueryVo
;
import
com.wecloud.im.param.ApiImConversationMembersQueryVo
;
import
com.wecloud.im.param.ChatSettingParam
;
import
com.wecloud.im.param.ChatSettingTypeEnum
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ImConvMemeClientRemarkNameParam
;
import
com.wecloud.im.param.ImConversationMembersPageParam
;
import
com.wecloud.im.param.ImConversationMembersPageParam
;
import
com.wecloud.im.param.ImConversationMembersQueryVo
;
import
com.wecloud.im.param.ImConversationMembersQueryVo
;
...
@@ -259,21 +262,13 @@ public class ImConversationMembersServiceImpl extends BaseServiceImpl<ImConversa
...
@@ -259,21 +262,13 @@ public class ImConversationMembersServiceImpl extends BaseServiceImpl<ImConversa
}
}
@Override
@Override
public
Boolean
setTop
(
Long
appId
,
String
clientId
,
Long
conversationId
,
Boolean
top
)
{
public
Boolean
chatSetting
(
ChatSettingParam
param
)
{
// 找到对应的会话
Long
appId
=
SecurityUtils
.
getCurrentAppId
();
ImConversationMembers
conversation
=
String
clientId
=
param
.
getClientId
();
baseMapper
.
selectOne
(
Wrappers
.<
ImConversationMembers
>
lambdaQuery
()
Long
conversationId
=
param
.
getConversationId
();
.
eq
(
ImConversationMembers:
:
getClientId
,
clientId
)
ChatSettingTypeEnum
type
=
param
.
getType
();
.
eq
(
ImConversationMembers:
:
getFkConversationId
,
conversationId
)
Boolean
on
=
param
.
getOn
();
.
eq
(
ImConversationMembers:
:
getFkAppid
,
appId
));
if
(
conversation
==
null
)
{
throw
new
BusinessException
(
"会话不存在"
);
}
return
update
(
Wrappers
.<
ImConversationMembers
>
lambdaUpdate
().
eq
(
ImConversationMembers:
:
getId
,
conversation
.
getId
()).
set
(
ImConversationMembers:
:
getTop
,
top
));
}
@Override
public
Boolean
setDoNotDisturb
(
Long
appId
,
String
clientId
,
Long
conversationId
,
Boolean
doNotDisturb
)
{
// 找到对应的会话
// 找到对应的会话
ImConversationMembers
conversation
=
ImConversationMembers
conversation
=
baseMapper
.
selectOne
(
Wrappers
.<
ImConversationMembers
>
lambdaQuery
()
baseMapper
.
selectOne
(
Wrappers
.<
ImConversationMembers
>
lambdaQuery
()
...
@@ -283,8 +278,16 @@ public class ImConversationMembersServiceImpl extends BaseServiceImpl<ImConversa
...
@@ -283,8 +278,16 @@ public class ImConversationMembersServiceImpl extends BaseServiceImpl<ImConversa
if
(
conversation
==
null
)
{
if
(
conversation
==
null
)
{
throw
new
BusinessException
(
"会话不存在"
);
throw
new
BusinessException
(
"会话不存在"
);
}
}
return
update
(
Wrappers
.<
ImConversationMembers
>
lambdaUpdate
().
eq
(
ImConversationMembers:
:
getId
,
boolean
result
=
false
;
conversation
.
getId
()).
set
(
ImConversationMembers:
:
getDoNotDisturb
,
doNotDisturb
));
if
(
ChatSettingTypeEnum
.
TOP
.
equals
(
type
))
{
result
=
update
(
Wrappers
.<
ImConversationMembers
>
lambdaUpdate
().
eq
(
ImConversationMembers:
:
getId
,
conversation
.
getId
()).
set
(
ImConversationMembers:
:
getTop
,
on
));
}
else
if
(
ChatSettingTypeEnum
.
DO_NOT_DISTURB
.
equals
(
type
))
{
result
=
update
(
Wrappers
.<
ImConversationMembers
>
lambdaUpdate
().
eq
(
ImConversationMembers:
:
getId
,
conversation
.
getId
()).
set
(
ImConversationMembers:
:
getDoNotDisturb
,
on
));
}
return
result
;
}
}
}
}
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