package com.srs.comprehensive.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.srs.common.core.domain.AjaxResult;
import com.srs.comprehensive.domain.CphNewGoodClassApply;
import com.srs.comprehensive.domain.Dto.CphCancel;
import com.srs.comprehensive.domain.Vo.CphSearch;
import com.srs.comprehensive.domain.Vo.ExcelGoodClass;
import org.springframework.web.bind.annotation.RequestBody;

/**
 * 先进班集体Service接口
 *
 * @author srs
 * @date 2024-05-15
 */
public interface ICphNewGoodClassApplyService extends IService<CphNewGoodClassApply> {

    public AjaxResult editSendMoney(CphNewGoodClassApply param);
    public AjaxResult editAllSendMoney();
    public AjaxResult editManySendMoney(List<Long> ids);
    public AjaxResult addRemark(CphNewGoodClassApply param);
    public AjaxResult editStatus(CphNewGoodClassApply param);



    public List<ExcelGoodClass> exportFdy(CphNewGoodClassApply param);
    public List<ExcelGoodClass> exportView(CphNewGoodClassApply param);


    public AjaxResult manyAudit(List<Long> ids);
    public AjaxResult doAudit( CphNewGoodClassApply param);


    public AjaxResult cancelApply( CphCancel param);

    public AjaxResult doApply( CphNewGoodClassApply param);


    public CphNewGoodClassApply getStuClass(String stuNo);

    public List<CphNewGoodClassApply> listView(CphNewGoodClassApply param);
    public List<CphNewGoodClassApply> listFdy(CphNewGoodClassApply param);



    /**
     * 查询先进班集体
     *
     * @param id 先进班集体主键
     * @return 先进班集体
     */
    public CphNewGoodClassApply selectCphNewGoodClassApplyById(Long id);

    /**
     * 查询先进班集体列表
     *
     * @param cphNewGoodClassApply 先进班集体
     * @return 先进班集体集合
     */
    List<CphNewGoodClassApply> selectCphNewGoodClassApplyList(CphNewGoodClassApply cphNewGoodClassApply);

    /**
     * 新增先进班集体
     *
     * @param cphNewGoodClassApply 先进班集体
     * @return 结果
     */
    int insertCphNewGoodClassApply(CphNewGoodClassApply cphNewGoodClassApply);

    /**
     * 修改先进班集体
     *
     * @param cphNewGoodClassApply 先进班集体
     * @return 结果
     */
    int updateCphNewGoodClassApply(CphNewGoodClassApply cphNewGoodClassApply);

    /**
     * 批量删除先进班集体
     *
     * @param ids 需要删除的先进班集体主键集合
     * @return 结果
     */
    int deleteCphNewGoodClassApplyByIds(Long[] ids);

    /**
     * 删除先进班集体信息
     *
     * @param id 先进班集体主键
     * @return 结果
     */
    int deleteCphNewGoodClassApplyById(Long id);

    AjaxResult reApply(@RequestBody CphNewGoodClassApply param);
}
