REQ-3502: 按钮排序
This commit is contained in:
parent
cb618ced63
commit
0f3e1c440f
@ -2,6 +2,7 @@ package cn.axzo.msg.center.message.service.todo.manage;
|
|||||||
|
|
||||||
import cn.axzo.msg.center.dal.TodoBusinessDao;
|
import cn.axzo.msg.center.dal.TodoBusinessDao;
|
||||||
import cn.axzo.msg.center.dal.TodoBusinesses;
|
import cn.axzo.msg.center.dal.TodoBusinesses;
|
||||||
|
import cn.axzo.msg.center.dal.TodoDao;
|
||||||
import cn.axzo.msg.center.dal.TodoLogDao;
|
import cn.axzo.msg.center.dal.TodoLogDao;
|
||||||
import cn.axzo.msg.center.domain.entity.Todo;
|
import cn.axzo.msg.center.domain.entity.Todo;
|
||||||
import cn.axzo.msg.center.domain.entity.TodoBusiness;
|
import cn.axzo.msg.center.domain.entity.TodoBusiness;
|
||||||
@ -19,6 +20,8 @@ import java.util.ArrayList;
|
|||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import static java.util.stream.Collectors.toList;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author yanglin
|
* @author yanglin
|
||||||
*/
|
*/
|
||||||
@ -28,6 +31,7 @@ public class TodoLogger {
|
|||||||
|
|
||||||
private final TodoLogDao todoLogDao;
|
private final TodoLogDao todoLogDao;
|
||||||
private final TodoBusinessDao todoBusinessDao;
|
private final TodoBusinessDao todoBusinessDao;
|
||||||
|
private final TodoDao todoDao;
|
||||||
private final PendingMessageBizConfig cfg;
|
private final PendingMessageBizConfig cfg;
|
||||||
|
|
||||||
void logBusinessUpdated(TodoRequestContext ctx, TodoBusiness business) {
|
void logBusinessUpdated(TodoRequestContext ctx, TodoBusiness business) {
|
||||||
@ -67,7 +71,11 @@ public class TodoLogger {
|
|||||||
if (CollectionUtils.isEmpty(todos)) return;
|
if (CollectionUtils.isEmpty(todos)) return;
|
||||||
TodoBusinesses businesses = todoBusinessDao.getBusinesses(todos);
|
TodoBusinesses businesses = todoBusinessDao.getBusinesses(todos);
|
||||||
ArrayList<TodoLog> logs = new ArrayList<>();
|
ArrayList<TodoLog> logs = new ArrayList<>();
|
||||||
for (Todo todo : todos) {
|
List<String> todoCodes = todos.stream()
|
||||||
|
.map(Todo::getIdentityCode)
|
||||||
|
.distinct().collect(toList());
|
||||||
|
// reload to get the up-to-date update time
|
||||||
|
for (Todo todo : todoDao.getByCodes(todoCodes)) {
|
||||||
logs.add(createTodoLog(ctx, businesses, todo)
|
logs.add(createTodoLog(ctx, businesses, todo)
|
||||||
.addLogContents(ctx.getLogContents()));
|
.addLogContents(ctx.getLogContents()));
|
||||||
}
|
}
|
||||||
|
|||||||
@ -17,9 +17,7 @@ import org.springframework.stereotype.Component;
|
|||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
|
|
||||||
@ -157,24 +155,4 @@ public class TodoDao extends ServiceImpl<TodoMapper, Todo> {
|
|||||||
.set(Todo::getState, PendingMessageStateEnum.PROCESSING)
|
.set(Todo::getState, PendingMessageStateEnum.PROCESSING)
|
||||||
.update();
|
.update();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean setExecutableHide(String subBizCode, Date expireTime) {
|
|
||||||
return lambdaUpdate()
|
|
||||||
.eq(Todo::getType, TodoType.EXECUTABLE)
|
|
||||||
.eq(Todo::getSubBizCode, subBizCode)
|
|
||||||
.eq(Todo::getState, PendingMessageStateEnum.HAS_BEEN_SENT)
|
|
||||||
.set(Todo::getHideUntil, expireTime)
|
|
||||||
.update();
|
|
||||||
}
|
|
||||||
|
|
||||||
public List<Todo> findByCondition(String templateCode, String bizCode, String subBizCode, Long executorPersonId, Long ouId, Long workspaceId) {
|
|
||||||
return lambdaQuery()
|
|
||||||
.eq(StringUtils.isNotBlank(templateCode), Todo::getTemplateCode, templateCode)
|
|
||||||
.eq(StringUtils.isNotBlank(bizCode), Todo::getBizCode, bizCode)
|
|
||||||
.eq(StringUtils.isNotBlank(subBizCode), Todo::getSubBizCode, subBizCode)
|
|
||||||
.eq(Objects.nonNull(executorPersonId), Todo::getExecutorPersonId, executorPersonId)
|
|
||||||
.eq(Objects.nonNull(ouId), Todo::getOuId, ouId)
|
|
||||||
.eq(Objects.nonNull(workspaceId), Todo::getReceiverWorkspaceId, workspaceId)
|
|
||||||
.list();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user