package com.ygtx.gxt.service;

import java.util.List;
import com.ygtx.gxt.domain.GxtMonthScore;
import com.ygtx.gxt.domain.GxtRepairOrder;
import com.ygtx.gxt.domain.GxtWorkOrder;

/**
 * 月度统计表Service接口
 * 
 * @author ruoyi
 * @date 2025-11-12
 */
public interface IGxtMonthScoreService 
{
    /**
     * 查询月度统计表
     * 
     * @param id 月度统计表主键
     * @return 月度统计表
     */
    public GxtMonthScore selectGxtMonthScoreById(Long id);

    public GxtMonthScore getGxtMonthScoreByParams(Integer rtType,String monthPeriod,Long deptId);

    public List<GxtWorkOrder> getWorkOrderByMonth(Long userId, String model, String inspectionTypeId, Long pid, String monthPeriod);

    public List<GxtRepairOrder> getRepairOrderByMonth(Long userId, String maintenanceType, Long pid, String monthPeriod);

    public GxtMonthScore getGxtMonthScoreByParams(Integer rtType,Long id);

    public List<GxtMonthScore> getMonthScoreList(GxtMonthScore monthScore);

    public void submitGxtMonthScore(GxtMonthScore monthScore);

    /**
     * 查询月度统计表列表
     * 
     * @param gxtMonthScore 月度统计表
     * @return 月度统计表集合
     */
    public List<GxtMonthScore> selectGxtMonthScoreList(GxtMonthScore gxtMonthScore);

    /**
     * 新增月度统计表
     * 
     * @param gxtMonthScore 月度统计表
     * @return 结果
     */
    public int insertGxtMonthScore(GxtMonthScore gxtMonthScore);

    /**
     * 修改月度统计表
     * 
     * @param gxtMonthScore 月度统计表
     * @return 结果
     */
    public int updateGxtMonthScore(GxtMonthScore gxtMonthScore);

    /**
     * 批量删除月度统计表
     * 
     * @param ids 需要删除的月度统计表主键集合
     * @return 结果
     */
    public int deleteGxtMonthScoreByIds(Long[] ids);

    /**
     * 删除月度统计表信息
     * 
     * @param id 月度统计表主键
     * @return 结果
     */
    public int deleteGxtMonthScoreById(Long id);
}