package com.changhu.module.superManagement.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.changhu.module.superManagement.pojo.params.CkGroupSaveOrUpdateParams;
import com.changhu.module.superManagement.pojo.params.CkItemSaveOrUpdateParams;
import com.changhu.module.superManagement.pojo.params.CkProjectSaveOrUpdateParams;
import com.changhu.module.superManagement.pojo.params.CkStandardSaveOrUpdateParams;
import com.changhu.module.superManagement.pojo.queryParams.CkProjectPagerQueryParams;
import com.changhu.module.superManagement.pojo.vo.CkProjectDetailTableVo;
import com.changhu.module.superManagement.pojo.vo.CkProjectPagerVo;
import com.changhu.support.mybatisplus.pojo.params.PageParams;

import java.util.List;

/**
 * @author 20252
 * @createTime 2024/11/22 下午2:38
 * @desc AssessmentCriteriaService...
 */
public interface AssessmentCriteriaService {

    /**
     * 考核项目分页查询
     *
     * @param queryParams 查询参数
     * @return 查询结果
     */
    Page<CkProjectPagerVo> ckProjectPagerVoPager(PageParams<CkProjectPagerQueryParams, CkProjectPagerVo> queryParams);

    /**
     * 新增或修改考核项目
     *
     * @param params 参数
     */
    void saveOrUpdateCkProject(CkProjectSaveOrUpdateParams params);

    /**
     * 删除考核项目
     *
     * @param ckProjectId 考核项目id
     */
    void deleteCkProjectById(Long ckProjectId);

    /**
     * 考核项目详情
     *
     * @param ckProjectId 考核项目id
     * @return 结果
     */
    List<CkProjectDetailTableVo> ckProjectDetail(Long ckProjectId);

    /**
     * 新增或修改考核分组
     *
     * @param params 参数
     */
    void saveOrUpdateCkGroup(CkGroupSaveOrUpdateParams params);

    /**
     * 新增或修改考核项
     *
     * @param params 参数
     */
    void saveOrUpdateCkItem(CkItemSaveOrUpdateParams params);

    /**
     * 新增或修改考核标准
     *
     * @param params 参数
     */
    void saveOrUpdateCkStandard(CkStandardSaveOrUpdateParams params);

}
