package cc.iotkit.manager.service;


import cc.iotkit.common.api.PageRequest;
import cc.iotkit.common.api.Paging;
import cc.iotkit.manager.dto.vo.FeedBackEvaluation.FeedBackEvaluationPageReqVO;
import cc.iotkit.manager.dto.vo.FeedBackEvaluation.FeedBackEvaluationSaveReqVO;
import cc.iotkit.manager.dto.vo.FeedBackEvaluation.FeedBackEvaluationVO;
import cc.iotkit.model.FeedBackEvaluation.FeedBackEvaluationDO;
import cn.hutool.db.PageResult;

import javax.validation.Valid;

/**
 * 意见反馈评价 Service 接口
 *
 * @author zhp
 */
public interface FeedBackEvaluationService {

    /**
     * 创建意见反馈评价
     *
     * @param createReqVO 创建信息
     * @return 编号
     */
    Long createFeedBackEvaluation(@Valid FeedBackEvaluationSaveReqVO createReqVO);

    /**
     * 更新意见反馈评价
     *
     * @param updateReqVO 更新信息
     */
    void updateFeedBackEvaluation(@Valid FeedBackEvaluationSaveReqVO updateReqVO);

    /**
     * 删除意见反馈评价
     *
     * @param id 编号
     */
    void deleteFeedBackEvaluation(Long id);

    /**
     * 获得意见反馈评价
     *
     * @param id 编号
     * @return 意见反馈评价
     */
    FeedBackEvaluationDO getFeedBackEvaluation(Long id);

    /**
     * 获得意见反馈评价分页
     *
     * @param pageReqVO 分页查询
     * @return 意见反馈评价分页
     */
    Paging<FeedBackEvaluationVO> getFeedBackEvaluationPage(PageRequest<FeedBackEvaluationPageReqVO> pageReqVO);

}