Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cmeeting
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
翟斌
cmeeting
Commits
8f1afb93
提交
8f1afb93
authored
7月 23, 2025
作者:
洪东保
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
定时任务修改
父级
4e053985
全部展开
显示空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
69 行增加
和
14 行删除
+69
-14
src/main/java/com/cmeeting/job/CmeetingJob.java
+4
-0
src/main/java/com/cmeeting/job/EmailPushTask.java
+7
-1
src/main/java/com/cmeeting/job/FileProcessTask.java
+0
-0
src/main/java/com/cmeeting/pojo/MeetingInfo.java
+4
-1
src/main/java/com/cmeeting/service/FileProcessProducer.java
+10
-0
src/main/java/com/cmeeting/service/ModulePermissionService.java
+1
-0
src/main/java/com/cmeeting/service/impl/ModulePermissionServiceImpl.java
+14
-2
src/main/java/com/cmeeting/service/impl/TencentMeetingServiceImpl.java
+29
-10
没有找到文件。
src/main/java/com/cmeeting/job/CmeetingJob.java
浏览文件 @
8f1afb93
...
@@ -110,6 +110,9 @@ public class CmeetingJob {
...
@@ -110,6 +110,9 @@ public class CmeetingJob {
log
.
info
(
"-------关联企微腾会人员定时任务结束--------"
);
log
.
info
(
"-------关联企微腾会人员定时任务结束--------"
);
}
}
/**
* 拉取会议并走一遍总流程(生成纪要->推送邮件)
*/
@Scheduled
(
fixedRate
=
20
*
60
*
1000
,
initialDelay
=
2
*
60
*
1000
)
@Scheduled
(
fixedRate
=
20
*
60
*
1000
,
initialDelay
=
2
*
60
*
1000
)
public
void
execute
()
{
public
void
execute
()
{
if
(
isDev
)
{
if
(
isDev
)
{
...
@@ -162,6 +165,7 @@ public class CmeetingJob {
...
@@ -162,6 +165,7 @@ public class CmeetingJob {
List
<
MeetingInfo
>
meetingInfoList
=
List
<
MeetingInfo
>
meetingInfoList
=
meetingInfoService
.
list
(
new
LambdaQueryWrapper
<
MeetingInfo
>()
meetingInfoService
.
list
(
new
LambdaQueryWrapper
<
MeetingInfo
>()
.
eq
(
MeetingInfo:
:
getIsGenerated
,
Boolean
.
FALSE
)
.
eq
(
MeetingInfo:
:
getIsGenerated
,
Boolean
.
FALSE
)
.
eq
(
MeetingInfo:
:
getEmailGenerateAccess
,
true
)
.
eq
(
MeetingInfo:
:
getGenerateRetry
,
Boolean
.
FALSE
)
.
eq
(
MeetingInfo:
:
getGenerateRetry
,
Boolean
.
FALSE
)
.
le
(
MeetingInfo:
:
getSyncTime
,
LocalDateTime
.
now
().
minusHours
(
1
))
.
le
(
MeetingInfo:
:
getSyncTime
,
LocalDateTime
.
now
().
minusHours
(
1
))
);
);
...
...
src/main/java/com/cmeeting/job/EmailPushTask.java
浏览文件 @
8f1afb93
...
@@ -10,6 +10,7 @@ import com.cmeeting.mapper.primary.MeetingRecordTemplateMapper;
...
@@ -10,6 +10,7 @@ import com.cmeeting.mapper.primary.MeetingRecordTemplateMapper;
import
com.cmeeting.pojo.MeetingInfo
;
import
com.cmeeting.pojo.MeetingInfo
;
import
com.cmeeting.pojo.MeetingRecordTemplate
;
import
com.cmeeting.pojo.MeetingRecordTemplate
;
import
com.cmeeting.util.MinioUtils
;
import
com.cmeeting.util.MinioUtils
;
import
com.cmeeting.util.RedisUtils
;
import
com.cmeeting.vo.EmailPush
;
import
com.cmeeting.vo.EmailPush
;
import
com.deepoove.poi.XWPFTemplate
;
import
com.deepoove.poi.XWPFTemplate
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
...
@@ -46,12 +47,17 @@ public class EmailPushTask {
...
@@ -46,12 +47,17 @@ public class EmailPushTask {
private
MeetingInfoMapper
meetingInfoMapper
;
private
MeetingInfoMapper
meetingInfoMapper
;
private
MinioUtils
minioUtils
;
private
MinioUtils
minioUtils
;
private
RedisUtils
redisUtils
;
private
EmailSender
emailSender
;
private
EmailSender
emailSender
;
private
MeetingRecordTemplateMapper
meetingRecordTemplateMapper
;
private
MeetingRecordTemplateMapper
meetingRecordTemplateMapper
;
private
Map
<
String
,
String
>
tidWidRelations
;
private
Map
<
String
,
String
>
tidWidRelations
;
// 实际处理逻辑
// 实际处理逻辑
public
void
process
()
{
public
void
process
()
{
boolean
getKey
=
redisUtils
.
setnx
(
"meeting_"
+
meetingId
+
subMeetingId
,
meetingId
,
19
*
60
);
if
(!
getKey
)
{
return
;
}
Boolean
isSuccess
=
Boolean
.
FALSE
;
Boolean
isSuccess
=
Boolean
.
FALSE
;
AtomicInteger
retryCount
=
new
AtomicInteger
(
0
);
AtomicInteger
retryCount
=
new
AtomicInteger
(
0
);
MeetingInfo
meetingInfo
=
meetingInfoMapper
.
selectOne
(
new
LambdaQueryWrapper
<
MeetingInfo
>()
MeetingInfo
meetingInfo
=
meetingInfoMapper
.
selectOne
(
new
LambdaQueryWrapper
<
MeetingInfo
>()
...
@@ -144,7 +150,7 @@ public class EmailPushTask {
...
@@ -144,7 +150,7 @@ public class EmailPushTask {
.
set
(
MeetingInfo:
:
getIsPushed
,
isSuccess
)
.
set
(
MeetingInfo:
:
getIsPushed
,
isSuccess
)
.
set
(
MeetingInfo:
:
getPushRetry
,
Boolean
.
TRUE
)
.
set
(
MeetingInfo:
:
getPushRetry
,
Boolean
.
TRUE
)
);
);
redisUtils
.
del
(
"meeting_"
+
meetingId
+
subMeetingId
);
}
}
...
...
src/main/java/com/cmeeting/job/FileProcessTask.java
浏览文件 @
8f1afb93
差异被折叠。
点击展开。
src/main/java/com/cmeeting/pojo/MeetingInfo.java
浏览文件 @
8f1afb93
...
@@ -87,9 +87,12 @@ public class MeetingInfo implements Serializable {
...
@@ -87,9 +87,12 @@ public class MeetingInfo implements Serializable {
*/
*/
private
Boolean
isGenerated
;
private
Boolean
isGenerated
;
/**
/**
*
推送邮件许可 为false不推送
*
生成纪要许可
*/
*/
private
Boolean
emailGenerateAccess
;
private
Boolean
emailGenerateAccess
;
/**
* 推送邮件许可 为false不推送
*/
private
Boolean
emailPushAccess
;
private
Boolean
emailPushAccess
;
/**
/**
* 是否推送邮件完成
* 是否推送邮件完成
...
...
src/main/java/com/cmeeting/service/FileProcessProducer.java
浏览文件 @
8f1afb93
...
@@ -7,6 +7,7 @@ import com.cmeeting.job.FileProcessTask;
...
@@ -7,6 +7,7 @@ import com.cmeeting.job.FileProcessTask;
import
com.cmeeting.log.service.ProcessLogService
;
import
com.cmeeting.log.service.ProcessLogService
;
import
com.cmeeting.mapper.primary.MeetingInfoMapper
;
import
com.cmeeting.mapper.primary.MeetingInfoMapper
;
import
com.cmeeting.mapper.primary.MeetingRecordTemplateMapper
;
import
com.cmeeting.mapper.primary.MeetingRecordTemplateMapper
;
import
com.cmeeting.mapper.primary.UserIdMapper
;
import
com.cmeeting.pojo.UserId
;
import
com.cmeeting.pojo.UserId
;
import
com.cmeeting.util.MinioUtils
;
import
com.cmeeting.util.MinioUtils
;
import
com.cmeeting.util.RedisUtils
;
import
com.cmeeting.util.RedisUtils
;
...
@@ -49,6 +50,12 @@ public class FileProcessProducer {
...
@@ -49,6 +50,12 @@ public class FileProcessProducer {
@Resource
@Resource
private
MeetingRecordTemplateMapper
meetingRecordTemplateMapper
;
private
MeetingRecordTemplateMapper
meetingRecordTemplateMapper
;
@Resource
@Resource
private
MeetingRecordTemplateService
meetingRecordTemplateService
;
@Resource
private
MeetTypeService
meetTypeService
;
@Resource
private
UserIdMapper
userIdMapper
;
@Resource
private
MinioUtils
minioUtils
;
private
MinioUtils
minioUtils
;
@Resource
@Resource
private
RedisUtils
redisUtils
;
private
RedisUtils
redisUtils
;
...
@@ -87,6 +94,9 @@ public class FileProcessProducer {
...
@@ -87,6 +94,9 @@ public class FileProcessProducer {
redisUtils
,
redisUtils
,
emailSender
,
emailSender
,
meetingRecordTemplateMapper
,
meetingRecordTemplateMapper
,
meetingRecordTemplateService
,
meetTypeService
,
userIdMapper
,
llmApiAddr
,
llmApiAddr
,
finalRetry
,
finalRetry
,
processLogService
,
processLogService
,
...
...
src/main/java/com/cmeeting/service/ModulePermissionService.java
浏览文件 @
8f1afb93
...
@@ -32,6 +32,7 @@ public interface ModulePermissionService extends IService<ModulePermission> {
...
@@ -32,6 +32,7 @@ public interface ModulePermissionService extends IService<ModulePermission> {
*/
*/
List
<
ModulePermission
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
);
List
<
ModulePermission
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
);
List
<
Long
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
);
List
<
Long
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
);
Boolean
checkAdminPermission
(
List
<
String
>
deptIds
,
String
userId
);
Boolean
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
,
Long
targetId
);
Boolean
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
,
Long
targetId
);
Boolean
personalStatus
(
String
userId
);
Boolean
personalStatus
(
String
userId
);
...
...
src/main/java/com/cmeeting/service/impl/ModulePermissionServiceImpl.java
浏览文件 @
8f1afb93
...
@@ -204,7 +204,7 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
...
@@ -204,7 +204,7 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
@Override
@Override
public
List
<
ModulePermission
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
)
{
public
List
<
ModulePermission
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
)
{
return
this
.
list
(
new
LambdaQueryWrapper
<
ModulePermission
>()
return
this
.
list
(
new
LambdaQueryWrapper
<
ModulePermission
>()
.
and
(
e
->
e
.
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_DEPT
).
in
(
ModulePermission:
:
getRelId
,
deptIds
)
.
and
(
e
->
e
.
eq
(
CollUtil
.
isNotEmpty
(
deptIds
),
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_DEPT
).
in
(
ModulePermission:
:
getRelId
,
deptIds
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
userId
))
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
userId
))
.
select
(
ModulePermission:
:
getTargetId
)
.
select
(
ModulePermission:
:
getTargetId
)
);
);
...
@@ -214,7 +214,7 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
...
@@ -214,7 +214,7 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
public
List
<
Long
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
)
{
public
List
<
Long
>
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
)
{
List
<
ModulePermission
>
list
=
this
.
list
(
new
LambdaQueryWrapper
<
ModulePermission
>()
List
<
ModulePermission
>
list
=
this
.
list
(
new
LambdaQueryWrapper
<
ModulePermission
>()
.
eq
(
ModulePermission:
:
getPurpose
,
purpose
)
.
eq
(
ModulePermission:
:
getPurpose
,
purpose
)
.
and
(
e
->
e
.
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_DEPT
).
in
(
ModulePermission:
:
getRelId
,
deptIds
)
.
and
(
e
->
e
.
eq
(
CollUtil
.
isNotEmpty
(
deptIds
),
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_DEPT
).
in
(
ModulePermission:
:
getRelId
,
deptIds
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
userId
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
userId
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
CategoryConstant
.
ALL_EN
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
CategoryConstant
.
ALL_EN
)
).
select
(
ModulePermission:
:
getTargetId
)
).
select
(
ModulePermission:
:
getTargetId
)
...
@@ -223,6 +223,18 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
...
@@ -223,6 +223,18 @@ public class ModulePermissionServiceImpl extends ServiceImpl<ModulePermissionMap
}
}
@Override
@Override
public
Boolean
checkAdminPermission
(
List
<
String
>
deptIds
,
String
userId
)
{
List
<
ModulePermission
>
list
=
this
.
list
(
new
LambdaQueryWrapper
<
ModulePermission
>()
.
eq
(
ModulePermission:
:
getPurpose
,
PermissionPruposeType
.
ADMIN_AUTH
)
.
and
(
e
->
e
.
eq
(
CollUtil
.
isNotEmpty
(
deptIds
),
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_DEPT
).
in
(
ModulePermission:
:
getRelId
,
deptIds
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
userId
)
.
or
().
eq
(
ModulePermission:
:
getType
,
RecordTemplateConstant
.
REL_TYPE_USER
).
eq
(
ModulePermission:
:
getRelId
,
CategoryConstant
.
ALL_EN
)
).
select
(
ModulePermission:
:
getId
)
);
return
CollUtil
.
isNotEmpty
(
list
);
}
@Override
public
Boolean
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
,
Long
targetId
)
{
public
Boolean
checkPermission
(
List
<
String
>
deptIds
,
String
userId
,
Integer
purpose
,
Long
targetId
)
{
boolean
flag
=
purpose
.
equals
(
PermissionPruposeType
.
TEMPLATE_TYPE_PERMISSION
)
||
purpose
.
equals
(
PermissionPruposeType
.
TEMPLATE_PERMISSION
);
boolean
flag
=
purpose
.
equals
(
PermissionPruposeType
.
TEMPLATE_TYPE_PERMISSION
)
||
purpose
.
equals
(
PermissionPruposeType
.
TEMPLATE_PERMISSION
);
if
(
flag
&&
targetId
!=
null
)
{
if
(
flag
&&
targetId
!=
null
)
{
...
...
src/main/java/com/cmeeting/service/impl/TencentMeetingServiceImpl.java
浏览文件 @
8f1afb93
package
com
.
cmeeting
.
service
.
impl
;
package
com
.
cmeeting
.
service
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.cmeeting.constant.PermissionPruposeType
;
import
com.cmeeting.dto.UserDTO
;
import
com.cmeeting.dto.UserDTO
;
import
com.cmeeting.log.service.ProcessLogService
;
import
com.cmeeting.log.service.ProcessLogService
;
import
com.cmeeting.mapper.primary.AuthMapper
;
import
com.cmeeting.mapper.primary.AuthMapper
;
import
com.cmeeting.mapper.primary.MeetingInfoMapper
;
import
com.cmeeting.mapper.primary.MeetingInfoMapper
;
import
com.cmeeting.mapper.primary.TecentMeetingMapper
;
import
com.cmeeting.mapper.primary.TecentMeetingMapper
;
import
com.cmeeting.mapper.secondary.SysUserSysMapper
;
import
com.cmeeting.mapper.secondary.SysUserSysMapper
;
import
com.cmeeting.pojo.CoreModulePermissions
;
import
com.cmeeting.pojo.*
;
import
com.cmeeting.pojo.MeetingInfo
;
import
com.cmeeting.service.ModulePermissionService
;
import
com.cmeeting.pojo.TencentMeetingUser
;
import
com.cmeeting.service.SysUserSyncService
;
import
com.cmeeting.pojo.WeComUser
;
import
com.cmeeting.service.TencentMeetingService
;
import
com.cmeeting.service.TencentMeetingService
;
import
com.cmeeting.util.RedisUtils
;
import
com.cmeeting.util.RedisUtils
;
import
com.cmeeting.util.SignatureUtil
;
import
com.cmeeting.util.SignatureUtil
;
...
@@ -64,6 +66,10 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
...
@@ -64,6 +66,10 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
private
RedisUtils
redisUtils
;
private
RedisUtils
redisUtils
;
@Resource
@Resource
private
ProcessLogService
processLogService
;
private
ProcessLogService
processLogService
;
@Resource
private
ModulePermissionService
modulePermissionService
;
@Resource
private
SysUserSyncService
sysUserSyncService
;
private
static
final
String
HMAC_ALGORITHM
=
"HmacSHA256"
;
private
static
final
String
HMAC_ALGORITHM
=
"HmacSHA256"
;
private
static
final
char
[]
HEX_CHAR
=
{
'0'
,
'1'
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
,
'7'
,
'8'
,
'9'
,
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'f'
};
private
static
final
char
[]
HEX_CHAR
=
{
'0'
,
'1'
,
'2'
,
'3'
,
'4'
,
'5'
,
'6'
,
'7'
,
'8'
,
'9'
,
'a'
,
'b'
,
'c'
,
'd'
,
'e'
,
'f'
};
...
@@ -134,6 +140,8 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
...
@@ -134,6 +140,8 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
List
<
TencentMeetingVO
.
SimpleMeetingInfo
>
meetingIds
=
meetingInfoMapper
.
getAllMeetingIds
();
List
<
TencentMeetingVO
.
SimpleMeetingInfo
>
meetingIds
=
meetingInfoMapper
.
getAllMeetingIds
();
List
<
TencentMeetingUser
>
meetingUsers
=
tecentMeetingMapper
.
getAlluser
();
List
<
TencentMeetingUser
>
meetingUsers
=
tecentMeetingMapper
.
getAlluser
();
Map
<
String
,
String
>
meetingMap
=
meetingUsers
.
stream
().
collect
(
Collectors
.
toMap
(
TencentMeetingUser:
:
getUserId
,
TencentMeetingUser:
:
getUserName
));
Map
<
String
,
String
>
meetingMap
=
meetingUsers
.
stream
().
collect
(
Collectors
.
toMap
(
TencentMeetingUser:
:
getUserId
,
TencentMeetingUser:
:
getUserName
));
while
(
currentPage
.
intValue
()
<=
totalPage
)
{
while
(
currentPage
.
intValue
()
<=
totalPage
)
{
CorpRecordsVO
data
=
fetchMeetingRecords
(
tencentAdminUserId
,
1
,
startTime
,
endTime
,
currentPage
.
getAndIncrement
(),
20
);
CorpRecordsVO
data
=
fetchMeetingRecords
(
tencentAdminUserId
,
1
,
startTime
,
endTime
,
currentPage
.
getAndIncrement
(),
20
);
//设置总页数
//设置总页数
...
@@ -225,20 +233,31 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
...
@@ -225,20 +233,31 @@ public class TencentMeetingServiceImpl extends ServiceImpl<TecentMeetingMapper,
//判断是否有权限生成纪要
//判断是否有权限生成纪要
boolean
generateAccess
;
boolean
generateAccess
;
boolean
emailPushAccess
;
boolean
emailPushAccess
;
UserDTO
userDTO
=
accessUserIds
.
stream
().
filter
(
item
->
item
.
getTid
().
equals
(
hostId
)).
findFirst
().
get
();
String
userId
=
weComUserMap
.
get
(
userDTO
.
getWid
()).
getUserId
();
// 1. 智能体需要授权
// 1. 智能体需要授权
generateAccess
=
accessUserIds
.
stream
().
anyMatch
(
item
->
item
.
getTid
().
equals
(
hostId
));
generateAccess
=
accessUserIds
.
stream
().
anyMatch
(
item
->
item
.
getTid
().
equals
(
hostId
));
log
.
info
(
"
智能体是否授权: {}"
,
generateAccess
);
log
.
info
(
"
用户: {}, 智能体是否授权: {}"
,
userId
,
generateAccess
);
UserDTO
userDTO
=
accessUserIds
.
stream
().
filter
(
item
->
item
.
getTid
().
equals
(
hostId
)).
findFirst
().
get
();
String
email
=
userDTO
.
getEmail
();
String
email
=
userDTO
.
getEmail
();
// TODO 要改
// 2. 腾讯会议和企业微信信息同步过并且绑定关系
// 2. 腾讯会议和企业微信信息同步过并且绑定关系
// 3. 用户在超管授权了的人员里面
// 3. 用户自己没有关闭会议纪要功能
// 3. 用户自己没有关闭会议纪要功能
// 满足以上所有则emailGenerateAccess为ture
// 满足以上所有则emailGenerateAccess为ture
generateAccess
=
weComUserMap
.
containsKey
(
userDTO
.
getWid
())
?
weComUserMap
.
get
(
userDTO
.
getWid
()).
getEmailPushAccess
()
:
Boolean
.
FALSE
;
generateAccess
=
generateAccess
&&
weComUserMap
.
containsKey
(
userDTO
.
getWid
());
log
.
info
(
"uid是否绑定企业微信: {}"
,
generateAccess
);
List
<
SysUserSyncCategory
>
categoryList
=
sysUserSyncService
.
getCategoryListByUserId
(
userId
);
List
<
String
>
deptIds
=
categoryList
.
stream
().
map
(
SysUserSyncCategory:
:
getDeptId
).
collect
(
Collectors
.
toList
());
generateAccess
=
generateAccess
&&
modulePermissionService
.
checkAdminPermission
(
deptIds
,
userId
);
log
.
info
(
"超管是否授权给用户: {}"
,
generateAccess
);
generateAccess
=
generateAccess
&&
modulePermissionService
.
personalStatus
(
userId
);
log
.
info
(
"个人是否开启纪要功能: {}"
,
generateAccess
);
// 是否推送邮箱
// 是否推送邮箱
emailPushAccess
=
weComUserMap
.
containsKey
(
userDTO
.
getWid
())
?
weComUserMap
.
get
(
userDTO
.
getWid
()).
getEmailPushAccess
()
:
Boolean
.
FALSE
;
emailPushAccess
=
generateAccess
&&
(
weComUserMap
.
containsKey
(
userDTO
.
getWid
())
?
weComUserMap
.
get
(
userDTO
.
getWid
()).
getEmailPushAccess
()
:
Boolean
.
FALSE
)
;
log
.
info
(
"推送邮箱: {}"
,
emailPushAccess
);
log
.
info
(
"
是否
推送邮箱: {}"
,
emailPushAccess
);
// 查询会议开始和结束时间
// 查询会议开始和结束时间
MeetingInfo
startAndEndTimeByMeetingId
=
TencentMeetingApiUtil
.
getStartAndEndTimeByMeetingId
(
meetingId
);
MeetingInfo
startAndEndTimeByMeetingId
=
TencentMeetingApiUtil
.
getStartAndEndTimeByMeetingId
(
meetingId
);
//会议基本信息保存
//会议基本信息保存
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论