|
|
|
package cn.teammodel.service;
|
|
|
|
|
|
|
|
import cn.teammodel.model.dto.Appraise.*;
|
|
|
|
import cn.teammodel.model.entity.appraise.Appraise;
|
|
|
|
import cn.teammodel.model.entity.appraise.AppraiseRecordItem;
|
|
|
|
import cn.teammodel.model.entity.appraise.AppraiseTreeNode;
|
|
|
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @author winter
|
|
|
|
* @create 2023-11-20 17:46
|
|
|
|
*/
|
|
|
|
public interface EvaluationService {
|
|
|
|
Appraise getTree(GetEvaluateTreeDto getEvaluateTreeDto);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 递归构建树
|
|
|
|
*/
|
|
|
|
Appraise buildTree(Appraise appraise);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 递归扁平化树
|
|
|
|
* @param trees: 树的列表
|
|
|
|
* @param nodes: 扁平化后的节点列表
|
|
|
|
* @author: winter
|
|
|
|
* @date: 2023/11/21 16:40
|
|
|
|
* @description:
|
|
|
|
*/
|
|
|
|
void flattenTree(List<AppraiseTreeNode> trees, List<AppraiseTreeNode> nodes);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 新增评价树节点
|
|
|
|
*/
|
|
|
|
Appraise insertNode(InsertNodeDto insertNodeDto);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 更新评价树节点
|
|
|
|
*/
|
|
|
|
Appraise updateNode(UpdateNodeDto updateNodeDto);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 删除评价树节点,同时删除其子节点
|
|
|
|
*/
|
|
|
|
Appraise deleteNode(DeleteNodeDto deleteNodeDto);
|
|
|
|
|
|
|
|
/**
|
|
|
|
* 给学生评价
|
|
|
|
*/
|
|
|
|
void vote(AppraiseVoteDto appraiseVoteDto);
|
|
|
|
|
|
|
|
List<AppraiseRecordItem> findVoteRecord(FindVoteRecordDto findVoteRecordDto);
|
|
|
|
}
|