package com.ruoyi.orderPlan.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.model.LoginUser;
import com.ruoyi.orderPlan.domain.Ftmsorderbillsfees;

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

/**
 * 订单费用Service接口
 *
 * @author ruoyi
 * @date 2021-02-22
 */
public interface IftmsorderbillsfeesService {
    /**
     * 查询车队费用
     *
     * @param fId 车队费用ID
     * @return 车队费用
     */
    public Ftmsorderbillsfees selectFTmsorderbillsfeesById(Long fId);

    /**
     *  单条费用提交
     * @param cars      主表信息
     * @param fees      费用
     * @return  结果
     */
    public AjaxResult insertFTmsorderbillsfeesAdd(String cars, String fees);

    /**
     *  单条费用暂存分表
     * @param cars      主表信息
     * @param fees      费用
     * @return  结果
     * dongyongwei 2021-07-19
     */
    public AjaxResult insertFTmsorderbillsfeesAddTemporaryStorage(String cars, String fees);

    public AjaxResult insertFTmsorderbillsfeesAddTemporaryStorageList(String cars, String fees);

    /**
     * 查询车队费用列表
     *
     * @param fTmsorderbillsfees 车队费用
     * @return 车队费用集合
     */
    public List<Ftmsorderbillsfees> selectFTmsorderbillsfeesList(Ftmsorderbillsfees fTmsorderbillsfees);

    /**
     * 新增车队费用
     *
     * @param fTmsorderbillsfees 车队费用
     * @return 结果
     */
    public int insertFTmsorderbillsfees(Ftmsorderbillsfees fTmsorderbillsfees);

    /**
     * 修改车队费用
     *
     * @param fTmsorderbillsfees 车队费用
     * @return 结果
     */
    public int updateFTmsorderbillsfees(Ftmsorderbillsfees fTmsorderbillsfees);

    /**
     * 批量删除车队费用
     *
     * @param fIds 需要删除的车队费用ID
     * @return 结果
     */
    public int deleteFTmsorderbillsfeesByIds(Long[] fIds);

    /**
     * 删除车队费用信息
     *
     * @param fId 车队费用ID
     * @return 结果
     */
    public int deleteFTmsorderbillsfeesById(Long fId);

    public int deleteFTmsorderbillsfeesModifyById(Long fId);

    /**
     *  查询费用是否允许变更、删除
     * @param fId   费用信息id
     * @return  结果
     */
    public AjaxResult ftmsorderbillsChange(Long fId, String types);

    /** 提交审批 暂存费用明细*/
    public AjaxResult submitOrderbillsfeesModifyApproval(Long fId, LoginUser loginUser);
}
