Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
N
notes2.0
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
zjm
notes2.0
Commits
bf94361e
提交
bf94361e
authored
3月 09, 2020
作者:
zjm
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加了查看部门下所有任务接口
上级
d2347b26
流水线
#56
已取消 于阶段
变更
10
流水线
1
隐藏空白字符变更
内嵌
并排
正在显示
10 个修改的文件
包含
468 行增加
和
211 行删除
+468
-211
WorkController.java
...com/zjty/tynotes/job/basic/controller/WorkController.java
+9
-2
WorkRepository.java
...com/zjty/tynotes/job/basic/repository/WorkRepository.java
+12
-0
WorkService.java
.../java/com/zjty/tynotes/job/basic/service/WorkService.java
+3
-0
ConversionServiceImpl.java
...tynotes/job/basic/service/impl/ConversionServiceImpl.java
+3
-2
WorkServiceImpl.java
.../zjty/tynotes/job/basic/service/impl/WorkServiceImpl.java
+23
-0
WorkAttribution1.java
...m/zjty/tynotes/job/common/exception/WorkAttribution1.java
+4
-0
RedisPersonalWork.java
...com/zjty/tynotes/job/status/entity/RedisPersonalWork.java
+13
-0
InternalServiceImpl.java
.../tynotes/job/status/service/impl/InternalServiceImpl.java
+10
-2
TestSeeServiceImpl.java
...y/tynotes/job/status/service/impl/TestSeeServiceImpl.java
+3
-1
TestServiceImpl.java
...zjty/tynotes/job/status/service/impl/TestServiceImpl.java
+388
-204
没有找到文件。
notes-job/src/main/java/com/zjty/tynotes/job/basic/controller/WorkController.java
浏览文件 @
bf94361e
...
...
@@ -20,6 +20,7 @@ import org.springframework.http.ResponseEntity;
import
org.springframework.web.bind.annotation.*
;
import
java.util.Date
;
import
java.util.List
;
import
static
org
.
springframework
.
http
.
ResponseEntity
.
ok
;
...
...
@@ -174,8 +175,7 @@ public class WorkController {
workService
.
alterTaskStatus
(
workId
,
status
);
businessTreeManagement
.
saveAction
(
userId
,
workId
,
Action
.
FINISH_WORK
,
new
Date
(),
msg
);
break
;
case
WorkStatus
.
FINISHED
:
case
WorkStatus
.
FINISHED
:
workService
.
alterTaskStatus
(
workId
,
status
);
businessTreeManagement
.
saveAction
(
userId
,
workId
,
Action
.
FINISHED_WORK
,
new
Date
(),
msg
);
...
...
@@ -201,4 +201,11 @@ public class WorkController {
return
ok
(
workService
.
findBySuperoirIdCount
(
workId
));
}
@GetMapping
(
value
=
"/select/work/{userId}"
)
@ApiOperation
(
value
=
"根据用户id查看其部门所有的任务"
,
notes
=
"部门所有的任务"
)
public
ResponseEntity
<
List
<
WorkVo
>>
selectWorkUserId
(
@PathVariable
(
"userId"
)
String
userId
)
{
return
ok
(
workService
.
selectUserIdsWork
(
userId
));
}
}
notes-job/src/main/java/com/zjty/tynotes/job/basic/repository/WorkRepository.java
浏览文件 @
bf94361e
...
...
@@ -13,6 +13,18 @@ import java.util.List;
*/
@Repository
public
interface
WorkRepository
extends
MongoRepository
<
Work
,
String
>
{
/**
* 上级任务id查询所有子任务
* @param superiorId 任务id
* @return 任务集合
*/
List
<
Work
>
findBySuperiorId
(
String
superiorId
);
/**
* 根据执行者id查询所有的任务
* @param ids 用户id集合
* @return
*/
List
<
Work
>
findAllByExecutorIn
(
List
<
String
>
ids
);
}
notes-job/src/main/java/com/zjty/tynotes/job/basic/service/WorkService.java
浏览文件 @
bf94361e
...
...
@@ -2,6 +2,7 @@ package com.zjty.tynotes.job.basic.service;
import
com.zjty.tynotes.job.basic.entity.database.Work
;
import
com.zjty.tynotes.job.basic.entity.response.WorkIsNotCommit
;
import
com.zjty.tynotes.job.basic.entity.response.WorkVo
;
import
com.zjty.tynotes.job.basic.service.impl.WorkServiceImpl
;
import
org.springframework.stereotype.Service
;
...
...
@@ -126,4 +127,6 @@ public interface WorkService {
// * 查看正在进行中的任务
// */
// List<Work> selectTimeWork();
List
<
WorkVo
>
selectUserIdsWork
(
String
userId
);
}
notes-job/src/main/java/com/zjty/tynotes/job/basic/service/impl/ConversionServiceImpl.java
浏览文件 @
bf94361e
...
...
@@ -3,6 +3,7 @@ package com.zjty.tynotes.job.basic.service.impl;
import
com.zjty.tynotes.job.basic.entity.database.Attachment
;
import
com.zjty.tynotes.job.basic.entity.database.Work
;
import
com.zjty.tynotes.job.basic.entity.response.WorkVo
;
import
com.zjty.tynotes.job.basic.repository.AttachmentRepository
;
import
com.zjty.tynotes.job.basic.service.AttachmentService
;
import
com.zjty.tynotes.job.basic.service.ConversionService
;
import
com.zjty.tynotes.pas.entity.User
;
...
...
@@ -21,7 +22,7 @@ public class ConversionServiceImpl implements ConversionService {
IUserService
iUserService
;
@Autowired
Attachment
Service
attachmentService
;
Attachment
Repository
attachmentRepository
;
@Override
public
WorkVo
workToVo
(
Work
work
)
{
...
...
@@ -42,7 +43,7 @@ public class ConversionServiceImpl implements ConversionService {
if
(
attachIds
!=
null
&&
attachIds
.
size
()!=
0
){
for
(
String
id:
attachIds
){
attachments
.
add
(
attachment
Service
.
findById
(
id
));
attachments
.
add
(
attachment
Repository
.
findById
(
id
).
get
(
));
}
}
return
new
WorkVo
(
...
...
notes-job/src/main/java/com/zjty/tynotes/job/basic/service/impl/WorkServiceImpl.java
浏览文件 @
bf94361e
...
...
@@ -3,11 +3,15 @@ package com.zjty.tynotes.job.basic.service.impl;
import
com.google.common.collect.Lists
;
import
com.zjty.tynotes.job.basic.entity.database.Work
;
import
com.zjty.tynotes.job.basic.entity.response.WorkIsNotCommit
;
import
com.zjty.tynotes.job.basic.entity.response.WorkVo
;
import
com.zjty.tynotes.job.basic.repository.WorkRepository
;
import
com.zjty.tynotes.job.basic.service.ConversionService
;
import
com.zjty.tynotes.job.basic.service.WorkService
;
import
com.zjty.tynotes.job.common.constant.WorkStatus
;
import
com.zjty.tynotes.job.common.exception.BadRequestException
;
import
com.zjty.tynotes.job.common.exception.NotFoundException
;
import
com.zjty.tynotes.pas.service.IUserService
;
import
com.zjty.tynotes.pas.service.impl.UserServiceImpl
;
import
lombok.extern.slf4j.Slf4j
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
...
...
@@ -16,6 +20,7 @@ import java.util.ArrayList;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Optional
;
import
java.util.stream.Collectors
;
import
static
java
.
util
.
Objects
.
isNull
;
import
static
java
.
util
.
Objects
.
nonNull
;
...
...
@@ -35,6 +40,11 @@ public class WorkServiceImpl implements WorkService {
private
final
WorkRepository
workRepository
;
@Autowired
IUserService
iUserService
;
@Autowired
ConversionService
conversionService
;
@Autowired
public
WorkServiceImpl
(
WorkRepository
workRepository
)
{
this
.
workRepository
=
workRepository
;
...
...
@@ -115,6 +125,9 @@ public class WorkServiceImpl implements WorkService {
workRepository
.
save
(
ob
);
}
@Override
public
void
deleteWork
(
String
taskId
,
int
personalWorkload
,
int
workloadCount
)
{
Work
ob
=
workRepository
.
findById
(
taskId
).
get
();
...
...
@@ -179,6 +192,16 @@ public class WorkServiceImpl implements WorkService {
}
@Override
public
List
<
WorkVo
>
selectUserIdsWork
(
String
userId
)
{
return
workRepository
.
findAllByExecutorIn
(
iUserService
.
findUsers
(
userId
))
.
stream
()
.
map
(
conversionService:
:
workToVo
)
.
collect
(
Collectors
.
toList
());
}
// @Override
// public List<Work> selectTimeWork() {
//// LocalDateTime minTime = LocalDateTime.now().with(LocalTime.MIN).atZone(ZoneOffset.ofHours(8)).ge;
...
...
notes-job/src/main/java/com/zjty/tynotes/job/common/exception/WorkAttribution1.java
浏览文件 @
bf94361e
...
...
@@ -21,6 +21,10 @@ public interface WorkAttribution1 {
*/
int
ME_RELEASE_WORK
=
3
;
/**
* 我的接收任务
*/
int
ME_RECEIVE_WORK
=
4
;
...
...
notes-job/src/main/java/com/zjty/tynotes/job/status/entity/RedisPersonalWork.java
浏览文件 @
bf94361e
...
...
@@ -84,4 +84,17 @@ public class RedisPersonalWork {
*/
@ApiModelProperty
(
value
=
"是否是代办任务"
,
name
=
"isNotCommission"
,
example
=
"1是代办 0不是"
)
private
int
isNotCommission
;
// /**
// * 任务根据人员的状态
// */
// @ApiModelProperty(value = "任务根据人员的状态")
// private int TaskPersonnelStatus;
/**
* 执行人和发布者是否是同一人
*/
private
int
executorEqualRelease
;
}
notes-job/src/main/java/com/zjty/tynotes/job/status/service/impl/InternalServiceImpl.java
浏览文件 @
bf94361e
package
com
.
zjty
.
tynotes
.
job
.
status
.
service
.
impl
;
import
com.zjty.tynotes.job.common.Constants
;
import
com.zjty.tynotes.job.common.constant.WorkStatus
;
import
com.zjty.tynotes.job.common.exception.WorkAttribution
;
import
com.zjty.tynotes.job.common.exception.WorkAttribution1
;
import
com.zjty.tynotes.job.status.entity.Personnel
;
import
com.zjty.tynotes.job.status.entity.RedisPersonalWork
;
import
com.zjty.tynotes.job.status.service.InternalService
;
...
...
@@ -31,7 +33,10 @@ public class InternalServiceImpl implements InternalService {
for
(
Object
object:
lists
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution
.
ME_WORK
){
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution1
.
ME_RECEIVE_WORK
&&
redisPersonalWork
.
getStatus
().
equals
(
WorkStatus
.
ONGOING
)){
count
++;
}
if
(
redisPersonalWork
.
getExecutorEqualRelease
()==
1
&&
redisPersonalWork
.
getStatus
().
equals
(
WorkStatus
.
ONGOING
)){
count
++;
}
}
...
...
@@ -47,7 +52,10 @@ public class InternalServiceImpl implements InternalService {
for
(
Object
object:
lists
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution
.
ME_WORK
){
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution1
.
ME_RECEIVE_WORK
&&
redisPersonalWork
.
getStatus
().
equals
(
WorkStatus
.
ONGOING
)){
count
++;
}
if
(
redisPersonalWork
.
getExecutorEqualRelease
()==
1
&&
redisPersonalWork
.
getStatus
().
equals
(
WorkStatus
.
ONGOING
)){
count
++;
}
}
...
...
notes-job/src/main/java/com/zjty/tynotes/job/status/service/impl/TestSeeServiceImpl.java
浏览文件 @
bf94361e
package
com
.
zjty
.
tynotes
.
job
.
status
.
service
.
impl
;
import
com.zjty.tynotes.job.common.Constants
;
import
com.zjty.tynotes.job.common.constant.WorkStatus
;
import
com.zjty.tynotes.job.common.exception.WorkAttribution1
;
import
com.zjty.tynotes.job.status.entity.EsListSum
;
import
com.zjty.tynotes.job.status.entity.RedisListSum
;
...
...
@@ -37,9 +38,10 @@ public class TestSeeServiceImpl implements TestSeeService {
List
<
Object
>
objectList
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
id
,
0
,-
1
);
for
(
Object
object:
objectList
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution1
.
ME_RELATED_WORK
){
if
(
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution1
.
ME_RELATED_WORK
||
redisPersonalWork
.
getWorkAttribution
()==
WorkAttribution1
.
ME_RECEIVE_WORK
||
redisPersonalWork
.
getExecutorEqualRelease
()==
1
){
list
.
add
(
redisPersonalWork
);
}
}
return
listSum
(
list
,
size
,
page
);
...
...
notes-job/src/main/java/com/zjty/tynotes/job/status/service/impl/TestServiceImpl.java
浏览文件 @
bf94361e
...
...
@@ -7,7 +7,6 @@ import com.zjty.tynotes.job.common.constant.WorkStatus;
import
com.zjty.tynotes.job.common.exception.WorkAttribution
;
import
com.zjty.tynotes.job.common.exception.WorkAttribution1
;
import
com.zjty.tynotes.job.status.entity.RedisPersonalWork
;
import
com.zjty.tynotes.job.status.entity.RoleSum
;
import
com.zjty.tynotes.job.status.entity.RoleSum1
;
import
com.zjty.tynotes.job.status.service.TestService
;
import
com.zjty.tynotes.job.status.utils.JacksonUtil
;
...
...
@@ -62,46 +61,78 @@ public class TestServiceImpl implements TestService {
Long
time
=
new
Date
().
getTime
();
String
releaseName
=
iUserService
.
findUserById
(
work
.
getPublisher
()).
getUsername
();
String
executorName
=
iUserService
.
findUserById
(
work
.
getExecutor
()).
getUsername
();
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
);
//发布人
if
(
work
.
getSuperiorId
()==
null
){
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
,
0
);
if
(
releaseName
.
equals
(
executorName
)){
if
(
work
.
getSuperiorId
()
==
null
){
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setExecutorEqualRelease
(
1
);
personalWork
.
setReadState
(
0
);
personalWork
.
setIsNotCommission
(
1
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setExecutorEqualRelease
(
1
);
personalWork
.
setReadState
(
0
);
personalWork
.
setIsNotCommission
(
1
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
}
else
{
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
//发布人
if
(
work
.
getSuperiorId
()
==
null
)
{
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
//执行人 判断执行人是否有分解权限
}
else
{
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
//执行人 判断执行人是否有分解权限
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELATED
_WORK
);
personalWork
.
setReadState
(
1
);
personalWork
.
setIsNotCommission
(
1
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RECEIVE
_WORK
);
personalWork
.
setReadState
(
1
);
personalWork
.
setIsNotCommission
(
1
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getExecutor
());
log
.
info
(
"{}这里发送{}"
,
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getExecutor
());
log
.
info
(
"{}这里发送{}"
,
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
//有待修改
if
(
uIds
.
size
()!=
0
)
{
for
(
String
id
:
uIds
)
{
...
...
@@ -111,7 +142,7 @@ public class TestServiceImpl implements TestService {
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
id
,
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
id
,
personalWork
);
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
id
,
0
,
-
1
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
id
,
0
,
-
1
);
assert
list
!=
null
;
pushData
(
id
,
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
id
);
...
...
@@ -127,30 +158,59 @@ public class TestServiceImpl implements TestService {
String
releaseName
=
iUserService
.
findUserById
(
work
.
getPublisher
()).
getUsername
();
String
executorName
=
iUserService
.
findUserById
(
work
.
getExecutor
()).
getUsername
();
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
);
//发布人
if
(
work
.
getSuperiorId
()==
null
){
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
,
0
);
if
(
releaseName
.
equals
(
executorName
)){
if
(
work
.
getSuperiorId
()
==
null
){
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setExecutorEqualRelease
(
1
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setExecutorEqualRelease
(
1
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
}
else
{
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//发布人
if
(
work
.
getSuperiorId
()
==
null
)
{
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELEASE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RESOLVE_WORK
);
personalWork
.
setReadState
(
0
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
}
}
...
...
@@ -163,36 +223,54 @@ public class TestServiceImpl implements TestService {
}
String
releaseName
=
iUserService
.
findUserById
(
work
.
getPublisher
()).
getUsername
();
String
executorName
=
iUserService
.
findUserById
(
work
.
getExecutor
()).
getUsername
();
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
);
//发布人
List
<
Object
>
objects
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object:
objects
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
work
.
getId
().
equals
(
redisPersonalWork
.
getWorkId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
work
.
getStatus
());
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
RedisPersonalWork
personalWork
=
new
RedisPersonalWork
(
work
.
getId
(),
time
,
work
.
getTitle
(),
work
.
getStatus
(),
releaseName
,
executorName
,
1
,
WorkAttribution
.
ME_WORK
,
latestNews
,
work
.
getSuperiorId
(),
new
ArrayList
<>(),
0
,
0
);
if
(
releaseName
.
equals
(
executorName
)){
List
<
Object
>
objects
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
objects
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
work
.
getId
().
equals
(
redisPersonalWork
.
getWorkId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
work
.
getStatus
());
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setIsNotCommission
(
1
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
}
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
subWork
(
objects
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
subWork
(
objects
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
}
else
{
//发布人
List
<
Object
>
objects
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
objects
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
work
.
getId
().
equals
(
redisPersonalWork
.
getWorkId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
work
.
getStatus
());
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
personalWork
);
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
subWork
(
objects
,
work
,
work
.
getPublisher
());
log
.
info
(
"{}这里发送{}"
,
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
objects
)));
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELATED_WORK
);
personalWork
.
setReadState
(
1
);
personalWork
.
setIsNotCommission
(
1
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
personalWork
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
assert
list
!=
null
;
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getExecutor
());
log
.
info
(
"{}这里发送{}"
,
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
work
.
getExecutor
());
log
.
info
(
"{}这里发送{}"
,
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
//有待修改
for
(
String
id:
uIds
){
personalWork
.
setWorkAttribution
(
WorkAttribution1
.
ME_RELATED_WORK
);
...
...
@@ -201,7 +279,7 @@ public class TestServiceImpl implements TestService {
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
id
,
personalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
id
,
personalWork
);
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
id
,
0
,-
1
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
id
,
0
,-
1
);
assert
list
!=
null
;
pushData
(
id
,
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
subWork
(
list
,
work
,
id
);
...
...
@@ -216,76 +294,116 @@ public class TestServiceImpl implements TestService {
if
(
work
.
getSuperiorId
()!=
null
)
{
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
}
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
status
);
redisPersonalWork
.
setTime
(
time
);
if
(
work
.
getPublisher
().
equals
(
executorId
)){
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
}
switch
(
status
){
case
WorkStatus
.
ONGOING
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
case
WorkStatus
.
AUDIT
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
REVIEW
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
default
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
}
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
if
(
work
.
getExecutor
().
equals
(
work
.
getPublisher
())){
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
status
);
redisPersonalWork
.
setTime
(
time
);
if
(
work
.
getPublisher
().
equals
(
executorId
))
{
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
}
switch
(
status
)
{
case
WorkStatus
.
ONGOING
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
AUDIT
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
REVIEW
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
default
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
}
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
status
);
if
(
work
.
getPublisher
().
equals
(
executorId
)){
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
status
);
redisPersonalWork
.
setTime
(
time
);
if
(
work
.
getPublisher
().
equals
(
executorId
))
{
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
}
switch
(
status
)
{
case
WorkStatus
.
ONGOING
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
case
WorkStatus
.
AUDIT
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
REVIEW
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
default
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
}
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
redisPersonalWork
.
setTime
(
time
);
switch
(
status
){
case
WorkStatus
.
ONGOING
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
AUDIT
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
case
WorkStatus
.
REVIEW
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
default
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setStatus
(
status
);
if
(
work
.
getPublisher
().
equals
(
executorId
))
{
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
}
redisPersonalWork
.
setTime
(
time
);
switch
(
status
)
{
case
WorkStatus
.
ONGOING
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
case
WorkStatus
.
AUDIT
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
case
WorkStatus
.
REVIEW
:
redisPersonalWork
.
setIsNotCommission
(
1
);
break
;
default
:
redisPersonalWork
.
setIsNotCommission
(
0
);
break
;
}
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
}
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
if
(
uIds
.
size
()!=
0
)
{
for
(
String
uId:
uIds
)
{
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
...
...
@@ -312,37 +430,59 @@ public class TestServiceImpl implements TestService {
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
}
Long
time
=
new
Date
().
getTime
();
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
if
(
work
.
getExecutor
().
equals
(
work
.
getPublisher
())){
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setReadState
(
1
);
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
if
(
executorId
.
equals
(
work
.
getPublisher
()))
{
redisPersonalWork
.
setReadState
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
}
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setReadState
(
1
);
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
}
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
if
(
uIds
.
size
()!=
0
)
{
for
(
String
uId:
uIds
)
{
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
...
...
@@ -367,49 +507,67 @@ public class TestServiceImpl implements TestService {
uIds
=
tests
(
work
.
getSuperiorId
(),
uIds
);
}
Long
time
=
new
Date
().
getTime
();
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
if
(
work
.
getPublisher
().
equals
(
executorId
)){
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setIsNotCommission
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
if
(
work
.
getExecutor
().
equals
(
work
.
getPublisher
())){
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
redisPersonalWork
.
setIsNotCommission
(
1
);
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object:
list
){
RedisPersonalWork
redisPersonalWork
=(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
())){
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
if
(
work
.
getExecutor
().
equals
(
executorId
)){
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setIsNotCommission
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
redisPersonalWork
.
setIsNotCommission
(
0
);
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
else
{
//发布者
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
1
,
redisPersonalWork
);
if
(
work
.
getPublisher
().
equals
(
executorId
))
{
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setIsNotCommission
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
redisPersonalWork
.
setIsNotCommission
(
1
);
}
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getPublisher
(),
redisPersonalWork
);
}
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
}
pushData
(
work
.
getPublisher
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
//执行者
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
redisTemplate
.
opsForList
().
remove
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
1
,
redisPersonalWork
);
if
(
work
.
getExecutor
().
equals
(
executorId
))
{
redisPersonalWork
.
setReadState
(
0
);
redisPersonalWork
.
setIsNotCommission
(
0
);
}
else
{
redisPersonalWork
.
setReadState
(
1
);
redisPersonalWork
.
setIsNotCommission
(
0
);
}
redisPersonalWork
.
setTime
(
time
);
redisPersonalWork
.
setLatestNews
(
latestNews
);
redisTemplate
.
opsForList
().
leftPush
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
asynchronousAddEs
(
Constants
.
REDIS_EVENT
+
work
.
getExecutor
(),
redisPersonalWork
);
}
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
}
pushData
(
work
.
getExecutor
(),
JacksonUtil
.
toJSon
(
statisticalRoleCount
(
list
)));
if
(
uIds
.
size
()!=
0
)
{
for
(
String
uId:
uIds
)
{
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
List
<
Object
>
list
=
redisTemplate
.
opsForList
().
range
(
Constants
.
REDIS_EVENT
+
uId
,
0
,
-
1
);
for
(
Object
object
:
list
)
{
RedisPersonalWork
redisPersonalWork
=
(
RedisPersonalWork
)
object
;
if
(
redisPersonalWork
.
getWorkId
().
equals
(
work
.
getId
()))
{
...
...
@@ -511,6 +669,12 @@ public class TestServiceImpl implements TestService {
unread1
=
1
;
}
}
if
(
redisPersonalWork
.
getExecutorEqualRelease
()==
1
){
role2
++;
if
(
redisPersonalWork
.
getReadState
()==
1
){
unread2
=
1
;
}
}
break
;
case
WorkAttribution1
.
ME_RELEASE_WORK
:
role4
++;
...
...
@@ -518,6 +682,26 @@ public class TestServiceImpl implements TestService {
unread4
=
1
;
}
if
(
redisPersonalWork
.
getIsNotCommission
()==
1
){
role1
++;
if
(
redisPersonalWork
.
getReadState
()==
1
){
unread1
=
1
;
}
}
if
(
redisPersonalWork
.
getExecutorEqualRelease
()==
1
){
role2
++;
if
(
redisPersonalWork
.
getReadState
()==
1
){
unread2
=
1
;
}
}
break
;
case
WorkAttribution1
.
ME_RECEIVE_WORK
:
role2
++;
if
(
redisPersonalWork
.
getReadState
()==
1
){
unread2
=
1
;
}
if
(
redisPersonalWork
.
getIsNotCommission
()==
1
){
role1
++;
if
(
redisPersonalWork
.
getReadState
()==
1
){
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论