package com.ygtx.gxt.service;

import java.util.List;
import com.ygtx.gxt.domain.GxtUserRuntimeScore;

/**
 * 维保运行天数得分Service接口
 * 
 * @author ruoyi
 * @date 2025-11-05
 */
public interface IGxtUserRuntimeScoreService 
{
    /**
     * 查询维保运行天数得分
     * 
     * @param id 维保运行天数得分主键
     * @return 维保运行天数得分
     */
    public GxtUserRuntimeScore selectGxtUserRuntimeScoreById(Long id);

    /**
     * 查询维保运行天数得分列表
     * 
     * @param gxtUserRuntimeScore 维保运行天数得分
     * @return 维保运行天数得分集合
     */
    public List<GxtUserRuntimeScore> selectGxtUserRuntimeScoreList(GxtUserRuntimeScore gxtUserRuntimeScore);

    /**
     * 根据rtType和月份查询维保运行天数得分列表
     * 
     * @param rtType 查询类型 1-部门所有用户  其他-当前用户
     * @param monthPeriod 月份
     * @return 维保运行天数得分集合
     */
    public List<GxtUserRuntimeScore> selectGxtUserRuntimeScoreListByRtTypeAndMonth(Integer rtType, String monthPeriod, Long userId, Long deptId, String permission);

    public List<GxtUserRuntimeScore> selectRuntimeScoreListByRtTypeAndMonth(Integer rtType, String monthPeriod, Long userId, Long deptId, String permission);
    /**
     * 新增维保运行天数得分
     * 
     * @param gxtUserRuntimeScore 维保运行天数得分
     * @return 结果
     */
    public int insertGxtUserRuntimeScore(GxtUserRuntimeScore gxtUserRuntimeScore);

    /**
     * 修改维保运行天数得分
     * 
     * @param gxtUserRuntimeScore 维保运行天数得分
     * @return 结果
     */
    public int updateGxtUserRuntimeScore(GxtUserRuntimeScore gxtUserRuntimeScore);

    /**
     * 批量更新维保运行天数得分
     * 
     * @param gxtUserRuntimeScores 维保运行天数得分列表
     * @return 结果
     */
    public int updateGxtUserRuntimeScores(List<GxtUserRuntimeScore> gxtUserRuntimeScores);

    /**
     * 批量删除维保运行天数得分
     * 
     * @param ids 需要删除的维保运行天数得分主键集合
     * @return 结果
     */
    public int deleteGxtUserRuntimeScoreByIds(Long[] ids);

    /**
     * 删除维保运行天数得分信息
     * 
     * @param id 维保运行天数得分主键
     * @return 结果
     */
    public int deleteGxtUserRuntimeScoreById(Long id);
}