package com.xjrsoft.module.material.service;

import com.github.yulichang.base.MPJBaseService;
import com.xjrsoft.module.material.dto.AddMaterialTaskDto;
import com.xjrsoft.module.material.dto.MaterialTaskAssignAppendixDto;
import com.xjrsoft.module.material.dto.MaterialTaskAssignListDto;
import com.xjrsoft.module.material.entity.MaterialTask;
import com.xjrsoft.module.material.vo.MaterialTaskAssignListVo;
import com.xjrsoft.module.material.vo.MaterialTaskVo;

import java.util.List;

/**
* @title: 材料提交任务
* @Author baicai
* @Date: 2023-10-31
* @Version 1.0
*/

public interface IMaterialTaskService extends MPJBaseService<MaterialTask> {
    /**
    * 新增
    *
    * @param dto
    * @return
    */
    Long add(AddMaterialTaskDto dto);

    /**
    * 更新
    *
    * @param materialTask
    * @return
    */
    Boolean update(MaterialTask materialTask);

    /**
    * 删除
    *
    * @param ids
    * @return
    */
    Boolean delete(List<Long> ids);
    /**
     * 提交材料
     *
     * @param dto
     * @return
     */
    Boolean submited(MaterialTaskAssignAppendixDto dto);

    MaterialTaskVo getInfoById(Long id);

    void sendMessage(Long materialTaskId);

    List<MaterialTaskAssignListVo> assignList(MaterialTaskAssignListDto dto);
}
