package com.chinaitop.depot.intelligent.fumigation.service;

import com.chinaitop.depot.intelligent.energyMonitor.model.TEnergyInfo;
import com.chinaitop.depot.intelligent.fumigation.model.TFumigationPlan;
import com.chinaitop.depot.intelligent.fumigation.model.TFumigationPlanExample;
import com.chinaitop.depot.intelligent.fumigation.model.TFumigationProcess;

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

/**
 * @author lvzhikai
 * @description: 熏蒸管理
 * @create 2018-12-15 11:00
 */
public interface FumigationPlanService {

    /**
     * 列表
     * @param example
     * @return
     */
    List<TFumigationPlan> getFumigationPlanList(TFumigationPlanExample example);
    //作业过程--新增时用到的熏蒸列表
    List<TFumigationPlan> getProcessList(Map<String, Object> map);

    /**
     * 根据id查询熏蒸方案申请数据
     * @param fumigationId
     * @return
     */
    TFumigationPlan findById(String fumigationId);

    void add(TFumigationPlan tFumigationPlan);

    void update(TFumigationPlan tFumigationPlan);

    void updateByExample(TFumigationPlan tFumigationPlan,TFumigationPlanExample example);

    /**
     * 获取方案列表
     * @param map
     * @return
     */
    List<Map<String,Object>> selectPlanQueryList(Map<String, Object> map);

    /**
     * 作业全部信息--省级平台用
     * @param map
     * @return
     */
    List<Map<String,Object>> getAllQueryList(Map<String, Object> map);

    /**
     * 获取熏蒸审批方案列表
     * @param map
     * @return
     */
    List<Map<String,Object>> getFumigationApproveList(Map<String, Object> map);

    void insertBatch(List<TFumigationProcess> fumigations);

    List<TFumigationProcess> getByCodeAndTimes(List<String> cDcsCodes,List<Date> cTimes);

    List<Map<Object,Object>> getJcd(Map<Object, Object> map);
	
	void submit(String id, Integer approvalStatus);
}
