package com.ruoyi.orderPlan.mapper;

import com.ruoyi.orderPlan.domain.Ftmsorderbills;
import com.ruoyi.orderPlan.domain.Ftmsorderbillscntrs;
import com.ruoyi.orderPlan.domain.Ftmsorderbillsplans;

import java.util.List;
import java.util.Map;

/**
 * 订单调度Mapper接口
 *
 * @author ruoyi
 * @date 2021-02-22
 */
public interface FtmsorderbillsplansMapper {
    /**
     * 查询订单调度
     *
     * @param id 订单调度ID
     * @return 订单调度
     */
    public Ftmsorderbillsplans selectftmsorderbillsplansById(Long id);

    /**
     * 查询订单调度列表
     *
     * @param ftmsorderbillsplans 订单调度
     * @return 订单调度集合
     */
    public List<Ftmsorderbillsplans> selectftmsorderbillsplansList(Ftmsorderbillsplans ftmsorderbillsplans);

    /**
     * 新增订单调度
     *
     * @param ftmsorderbillsplans 订单调度
     * @return 结果
     */
    public int insertftmsorderbillsplans(Ftmsorderbillsplans ftmsorderbillsplans);

    /**
     * 修改订单调度
     *
     * @param ftmsorderbillsplans 订单调度
     * @return 结果
     */
    public int updateftmsorderbillsplans(Ftmsorderbillsplans ftmsorderbillsplans);

    /**
     * 删除订单调度
     *
     * @param id 订单调度ID
     * @return 结果
     */
    public int deleteftmsorderbillsplansById(Long id);

    /**
     * 根据主表id删除订单调度
     *
     * @param id 订单调度ID
     * @return 结果
     */
    public int deleteftmsorderbillsplansByPId(Long id);

    /**
     * 批量删除订单调度
     *
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteftmsorderbillsplansByIds(Long[] ids);

    /**
     *  更具上级id获取对应信息
     * @param pId   上级id
     * @return  结果
     */
    public List<Ftmsorderbillsplans> selectftmsorderbillsplansByPId(long pId);

    /**
     *  根据来源id删除对应信息
     * @param orgId   orgId
     * @return  结果
     */
    public int deleteftmsorderbillsplansByOrgId(long orgId);

    /**
     *  根据orgId查询对应数据
     * @param orgId orgId
     * @return  结果
     */
    public List<Ftmsorderbillsplans> selectftmsorderbillsplansByOrgId(long orgId);

    /**
     *  根据来源id更新数据状态
     * @param ftmsorderbillsplans 参数
     * @return 结果
     */
    public int updateTmsorderSplanStatusByOrgId(Ftmsorderbillsplans ftmsorderbillsplans);

    /**
     *  根据判断条件查询条数
     * @param tmsorderbillsplans    参数
     * @return  结果
     */
    public int selectftmsorderbillsplansCountList(Ftmsorderbillsplans tmsorderbillsplans);

    /**
     *  查询车队派车列表数据
     * @param ftmsorderbills   参数
     * @return  结果
     */
    List<Map<String, Object>> selectftmsorderbillsplansMapList(Ftmsorderbills ftmsorderbills);

    /**
     *  查询车队派车列表数据(配载)
     * @param ftmsorderbills   参数
     * @return  结果
     */
    List<Map<String, Object>> selectftmsorderbillsplansMapListForStowage(Ftmsorderbills ftmsorderbills);

    /**
     * 已调度的
     * @return
     */
    public Integer selectManagCout();
}
