|
@@ -11,14 +11,13 @@ import seecoder.devcloud.web.aop.TreeLogging;
|
|
|
import seecoder.devcloud.web.dao.project.CommitMapper;
|
|
import seecoder.devcloud.web.dao.project.CommitMapper;
|
|
|
import seecoder.devcloud.web.dao.tree.TreeNodeMapper;
|
|
import seecoder.devcloud.web.dao.tree.TreeNodeMapper;
|
|
|
import seecoder.devcloud.web.dao.user.UserMapper;
|
|
import seecoder.devcloud.web.dao.user.UserMapper;
|
|
|
-import seecoder.devcloud.web.model.enums.CommitRelatedType;
|
|
|
|
|
-import seecoder.devcloud.web.model.enums.NodeStateEnum;
|
|
|
|
|
-import seecoder.devcloud.web.model.enums.NodeTypeEnum;
|
|
|
|
|
-import seecoder.devcloud.web.model.enums.OperationEnum;
|
|
|
|
|
|
|
+import seecoder.devcloud.web.model.enums.*;
|
|
|
import seecoder.devcloud.web.model.po.project.CommitPO;
|
|
import seecoder.devcloud.web.model.po.project.CommitPO;
|
|
|
import seecoder.devcloud.web.model.po.tree.TreeNodePO;
|
|
import seecoder.devcloud.web.model.po.tree.TreeNodePO;
|
|
|
import seecoder.devcloud.web.model.po.user.UserPO;
|
|
import seecoder.devcloud.web.model.po.user.UserPO;
|
|
|
-import seecoder.devcloud.web.model.vo.TreeNodeVO;
|
|
|
|
|
|
|
+import seecoder.devcloud.web.model.vo.tree.TreeNodeCreateVO;
|
|
|
|
|
+import seecoder.devcloud.web.model.vo.tree.TreeNodeVO;
|
|
|
|
|
+import seecoder.devcloud.web.model.vo.tree.TreeNodeUpdateBasicVO;
|
|
|
import seecoder.devcloud.web.service.tree.TreeNodeService;
|
|
import seecoder.devcloud.web.service.tree.TreeNodeService;
|
|
|
|
|
|
|
|
import java.text.SimpleDateFormat;
|
|
import java.text.SimpleDateFormat;
|
|
@@ -56,9 +55,9 @@ public class TreeNodeServiceImpl implements TreeNodeService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
@TreeLogging(OperationEnum.START)
|
|
@TreeLogging(OperationEnum.START)
|
|
|
- public void insertTreeNode(TreeNodeVO treeNodeVO) throws ServiceException {
|
|
|
|
|
|
|
+ public void insertTreeNode(TreeNodeCreateVO treeNodeCreateVO) throws ServiceException {
|
|
|
TreeNodePO treeNodePO = new TreeNodePO();
|
|
TreeNodePO treeNodePO = new TreeNodePO();
|
|
|
- BeanUtils.copyProperties(treeNodeVO,treeNodePO);
|
|
|
|
|
|
|
+ BeanUtils.copyProperties(treeNodeCreateVO,treeNodePO);
|
|
|
int res = treeNodeMapper.insertTreeNode(treeNodePO);
|
|
int res = treeNodeMapper.insertTreeNode(treeNodePO);
|
|
|
// TODO:safety check
|
|
// TODO:safety check
|
|
|
if (res <= 0) {
|
|
if (res <= 0) {
|
|
@@ -68,16 +67,18 @@ public class TreeNodeServiceImpl implements TreeNodeService {
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
@TreeLogging(OperationEnum.UPDATE)
|
|
@TreeLogging(OperationEnum.UPDATE)
|
|
|
- public void updateTreeNode(TreeNodeVO treeNodeVO) {
|
|
|
|
|
|
|
+ public void updateTreeNode(TreeNodeUpdateBasicVO treeNodeUpdateBasicVO) {
|
|
|
TreeNodePO treeNodePO = new TreeNodePO();
|
|
TreeNodePO treeNodePO = new TreeNodePO();
|
|
|
- BeanUtils.copyProperties(treeNodeVO,treeNodePO);
|
|
|
|
|
|
|
+ BeanUtils.copyProperties(treeNodeUpdateBasicVO,treeNodePO);
|
|
|
treeNodeMapper.updateTreeNode(treeNodePO);
|
|
treeNodeMapper.updateTreeNode(treeNodePO);
|
|
|
// TODO:safety check
|
|
// TODO:safety check
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
@Override
|
|
|
public void deleteTreeNode(int nodeId) {
|
|
public void deleteTreeNode(int nodeId) {
|
|
|
|
|
+
|
|
|
treeNodeMapper.deleteTreeNode(nodeId);
|
|
treeNodeMapper.deleteTreeNode(nodeId);
|
|
|
|
|
+ //todo 删除子节点
|
|
|
// TODO:safety check
|
|
// TODO:safety check
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -116,7 +117,7 @@ public class TreeNodeServiceImpl implements TreeNodeService {
|
|
|
treeNodePO.setTitle("title");
|
|
treeNodePO.setTitle("title");
|
|
|
treeNodePO.setDescription("description");
|
|
treeNodePO.setDescription("description");
|
|
|
treeNodePO.setType(NodeTypeEnum.TASK);
|
|
treeNodePO.setType(NodeTypeEnum.TASK);
|
|
|
- treeNodePO.setPriority(3);
|
|
|
|
|
|
|
+ treeNodePO.setPriority(PriorityEnum.MIDDLE);
|
|
|
treeNodePO.setState(NodeStateEnum.CREATED);
|
|
treeNodePO.setState(NodeStateEnum.CREATED);
|
|
|
treeNodePO.setTimeToTake(10);
|
|
treeNodePO.setTimeToTake(10);
|
|
|
treeNodePO.setStartTime(format.format(new Date()));
|
|
treeNodePO.setStartTime(format.format(new Date()));
|
|
@@ -132,12 +133,14 @@ public class TreeNodeServiceImpl implements TreeNodeService {
|
|
|
public void updateNodeState(Integer id, CommitState state) {
|
|
public void updateNodeState(Integer id, CommitState state) {
|
|
|
TreeNodePO po = new TreeNodePO();
|
|
TreeNodePO po = new TreeNodePO();
|
|
|
po.setId(id);
|
|
po.setId(id);
|
|
|
|
|
+ SimpleDateFormat format = DateUtil.getSimpleDateFormat();
|
|
|
switch (state){
|
|
switch (state){
|
|
|
case WORKING_ON:
|
|
case WORKING_ON:
|
|
|
po.setState(NodeStateEnum.PROCESSING);
|
|
po.setState(NodeStateEnum.PROCESSING);
|
|
|
break;
|
|
break;
|
|
|
case COMPLETE:
|
|
case COMPLETE:
|
|
|
po.setState(NodeStateEnum.FINISHED);
|
|
po.setState(NodeStateEnum.FINISHED);
|
|
|
|
|
+ po.setEndTime(format.format(new Date()));
|
|
|
break;
|
|
break;
|
|
|
}
|
|
}
|
|
|
treeNodeMapper.update(po);
|
|
treeNodeMapper.update(po);
|
|
@@ -149,11 +152,11 @@ public class TreeNodeServiceImpl implements TreeNodeService {
|
|
|
*/
|
|
*/
|
|
|
private List<TreeNodeVO> getTreeNodeVOS(List<TreeNodePO> nodesPO) {
|
|
private List<TreeNodeVO> getTreeNodeVOS(List<TreeNodePO> nodesPO) {
|
|
|
int projectId = nodesPO.get(0).getProjectId();
|
|
int projectId = nodesPO.get(0).getProjectId();
|
|
|
- List<Integer> userIds = nodesPO.stream().map(TreeNodePO::getUserId).collect(Collectors.toList());
|
|
|
|
|
|
|
+ List<Integer> userIds = nodesPO.stream().map(TreeNodePO::getProcessorId).collect(Collectors.toList());
|
|
|
|
|
|
|
|
Map<Integer,String> usernameMap = userMapper.selectByIds(userIds).stream().collect(Collectors.toMap(UserPO::getId, UserPO::getUsername));
|
|
Map<Integer,String> usernameMap = userMapper.selectByIds(userIds).stream().collect(Collectors.toMap(UserPO::getId, UserPO::getUsername));
|
|
|
List<CommitPO> commits = commitMapper.selectByProjectIdAndType(projectId, CommitRelatedType.TREE_ID);
|
|
List<CommitPO> commits = commitMapper.selectByProjectIdAndType(projectId, CommitRelatedType.TREE_ID);
|
|
|
Map<Integer, List<CommitPO>> commitsMap = commits.stream().collect(Collectors.groupingBy(CommitPO::getRelatedId));
|
|
Map<Integer, List<CommitPO>> commitsMap = commits.stream().collect(Collectors.groupingBy(CommitPO::getRelatedId));
|
|
|
- return nodesPO.stream().map(po -> new TreeNodeVO(po,usernameMap.get(po.getUserId()),commitsMap.get(po.getId()))).collect(Collectors.toList());
|
|
|
|
|
|
|
+ return nodesPO.stream().map(po -> new TreeNodeVO(po,usernameMap.get(po.getProcessorId()),commitsMap.get(po.getId()))).collect(Collectors.toList());
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|