package cn.ezhizao.project.business.service;

import cn.ezhizao.project.business.domain.BizDaywork;
import cn.ezhizao.project.business.domain.BizDayworkItem;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * 报工记录Service接口
 *
 * @author ezhizao
 * @date 2023-12-04
 */
public interface IBizDayworkItemService extends IService<BizDayworkItem>
{
    /**
     * 查询报工记录列表
     *
     * @param bizDayworkItem 报工记录
     * @return 报工记录集合
     */
    public List<BizDayworkItem> getList(BizDayworkItem bizDayworkItem);
    public List<BizDaywork> getInnerListByDeptId(BizDayworkItem bizDayworkItem);
    public List<BizDaywork> getOutListByDeptId(BizDayworkItem bizDayworkItem);

    /**
     * 物理删除
     * @param bizDayworkItem
     * @return 删除结果
     */
    public int physicalDelete(BizDayworkItem bizDayworkItem);
    public List<BizDayworkItem> getListByDayworkId(BizDayworkItem bizDayworkItem);
    public List<BizDayworkItem> getSortListByDayworkId(BizDayworkItem bizDayworkItem);

    /**
     * 根据载具id查询待周转列表
     */
    public List<BizDayworkItem> getDayworkItemByCarrier(BizDayworkItem bizDayworkItem);

    /**
     * 根据载具code查询待周转列表
     */
    public List<BizDayworkItem> getDayworkItemByCarrierCode(BizDayworkItem bizDayworkItem);

    /**
     * 查询未周转的item
     * @param bizDayworkItem
     * @return
     */
    public List<BizDayworkItem> getUndoneItem(BizDayworkItem bizDayworkItem);

    List<BizDayworkItem> getDayWorkItemHistory(String startTime,String endTime,String userName);

    List<BizDayworkItem> getItemScreen(Long dayWorkId);
    List<BizDayworkItem> getUnfinishedDayworkItemByUser(Long userId);

    //根据dayworkId查询报工信息按照创建时间倒叙查询
    List<BizDayworkItem> getByDayworkId(Long dayworkId);

    BizDayworkItem selById(Long dayworkItemId);
    List<BizDayworkItem> getDayworkItemByDayworkIds(List<Long> dayworkIds);

    List<BizDayworkItem> getByDaywork(BizDaywork daywork);
    List<BizDayworkItem> getTurnoverList(BizDaywork daywork);



}
