package com.njcn.product.device.ledger.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.njcn.product.device.ledger.pojo.po.DeptLine;
import com.njcn.web.pojo.param.DeptLineParam;

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

/**
 * @author denghuajun
 * @date 2022/1/12 17:30
 *
 */
public interface DeptLineService extends IService<DeptLine> {

    /**
     * 部门绑定监测点
     * @param deptLineParam 部门监测点的实体类
     * @return 绑定结果
     */
    void deptBindLine(DeptLineParam deptLineParam);


    /**
     * 部门解绑监测点
     * @param deptLineParam 部门监测点的实体类
     * @return 解绑结果
     */
    void deptDeleteBindLine(DeptLineParam deptLineParam);


    /**
     * 根据部门ids集合查询是否绑定监测点
     * @param ids 部门ids
     * @return 查询结果
     */
    List<DeptLine> selectDeptBindLines(List<String> ids);

    /**
     * 部门解除绑定监测点
     * @param id 部门id
     * @return 解绑结果
     */
    int removeBind(String id);

    /**
     * 功能描述: 根据部门id获取绑定的监测点
     *
     * @param id
     * @return java.util.List<java.lang.String>
     * @author xy
     * @date 2022/1/25 9:28
     */
    List<String> getLineByDeptId(String id);
    /**
    * @Description: 获取部门和监测点的关系（分稳态暂态）
    * @Param: [devDataType]
    * @return: java.util.Map<java.lang.String,java.util.List<java.lang.String>>
    * @Author: clam
    * @Date: 2022/10/19
    */
    Map<String, List<String>> getLineByDeptRelation(Integer devDataType);
}
