package com.casic.missiles.modular.system.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.casic.missiles.modular.system.dto.*;
import com.casic.missiles.modular.system.model.BusWellInfo;
import com.casic.missiles.core.datascope.DataScope;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;


/**
 * <p>
 * 闸井信息表 服务类
 * </p>
 *
 * @author lwh
 * @since 2019-05-13
 */
public interface IBusWellInfoService extends IService<BusWellInfo>{

    /**
     * 根据条件分页查询闸井列表
     *
     * @param dataScope  数据权限集合
     * @param page       分页参数
     * @return 设备列表
     */
    List<BusWellInfo> selectDataScopePage(DataScope dataScope, Page<BusWellInfo> page, String keywords, String wellType, String deptid, String bfzt);

    List<Long> deleteBatchByIds(List<Long> id);

    List<BatchExportDataDto> selectDataScope(DataScope dataScope, Page<BatchExportDataDto> page, String deviceType, String deptid, String keywords);

    List<BatchExportDataDto> getBatchExportData(DataScope dataScope, Page<BatchExportDataDto> page, String deviceType, String deptid, String keywords);

    Integer getDeviceCountData(Long id);

    String getDeptNameData(String deptid);

    List<String> addWellBatch(List<BusWellInfo> results);

    List<BusWellInfoDto> getWellList(DataScope dataScope, String keywords, String wellType, String deptid);

    String getAreaPid(String id);

    void updateBatchBfcf(String keywords, String wellType, String deptid, String bfzt, List<Long> deptIds);

    Boolean isExistWellCode(String wellCode);

    Boolean changeCoordinates(int startNumber);

}
