package com.zjrs.zwnw.sxgl.bpo;

import org.mohrss.leaf.core.framework.persistens.PageResult;
import com.zjrs.zwnw.sxgl.dto.*;

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

public interface SxpzxxBPO {
    public PageResult querySxList(SxpzxxQueryDTO dto, int page, int rows);

    //批量更新事项状态
    public Map<String, String> updateSxztByIds(SxpzxxQueryDTO dto);

    //获取事项详细信息
    public SxpzxxXsDTO getSxpzxxById(SxpzxxXsQueryDTO dto);

    //获取事项关联材料分页列表
    public PageResult getSxglclList(SxglclQueryDTO dto, int page, int rows);

    //获取事项未关联材料分页列表
    public PageResult getSxWglclList(SxWglclQueryDTO dto, int page, int rows);

    //批量关联材料
    public Map<String, String> addSxglclByIds(SxglclAddDTO dto);

    //批量删除关联材料
    public void deleteSxglclByIds(SxglclDeleteDTO dto);

    //更新事项关联材料
    public Map<String, String> updateSxglcl(SdszzcxxDTO dto);

    //获取事项流程环节分页list
    public PageResult getLchjList(SxgllcQueryDTO dto, int page, int rows);

    //更新事项详细信息
    public Map<String, String> updateSxpzxxById(SxpzxxXsUpdateDTO dto);

    //获取事项关联详细信息
    public SxglclListDTO getSxglcXx(SxglclXxQueryDTO dto);

    //下一步校验
    public Map<String, String> checkNext(CheckDTO dto);

    //判断流程是否走完
    public boolean checkProcessInstance(String id);
    //事项流程配置列表
    public PageResult getSxlcpzList(SxpzxxLcpzQueryDTO dto, int page, int rows);
    //新增环节
    public Map<String, String> addHj(SxpzxxLcpzAddHjQueryDTO dto);
    //保存环节
    public Map<String, String> saveHj(SxpzxxLcpzSaveHjDTO dto);
    //删除环节
    public void delHj(SxpzxxLcpzDelHjDTO dto);
    //环节设置列表
    public List<SxpzxxLcpzSetListDTO> getLcpzSetList(SxpzxxLcpzSetDTO dto);
    //保存环节设置列表
    public Map<String, String> saveSetHj(SxpzxxLcpzSetListSaveDTO dto);
    //还原流程
    public void gobackLcpz(String id);
    //确认流程
    public Map<String, String> confirmLcpz(SxpzxxLcpzConfirmDTO dto);

    //环节名称动态字典
    public List<HjmcDictDTO> getHjmcDict();
    //获取流程图信息
    public Map<String, List> getLcpzLct(SxpzxxLcpzGetLctDTO dto);
    //获取事项配置附件list
    public PageResult getFjybList(SxpzxxFjybQueryDTO dto, Integer pagenum, Integer pagesize);
    //保存事项配置附件
    public Map<String, String> saveFjyb(SxpzxxFjybSaveDTO dto);
    //删除事项配置附件
    public void delFjybByIds(SxpzxxFjybDelDTO dto);
    //批量修改领导信息
    public void saveBatchLdxx(SxpzxxBatchUpdateLdxxDTO dto);

    List<HjmcDictDTO> getSysx(String sxbm);
}
