package com.persagy.adm.server.custom.dto;

import com.baomidou.mybatisplus.annotation.TableField;
import com.persagy.adm.server.custom.entity.db.RelationDefineCollect;
import com.persagy.dmp.basic.dto.RelationCalDTO;
import com.persagy.dmp.basic.dto.RelationCalRuleDTO;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.util.List;
import java.util.Set;

/**
 * 平台/项目级采集的信息点定义
 * @author linhuili
 * @date 2021-10-13
 */
@Data
@EqualsAndHashCode(callSuper = true)
public class RelationDefineCollectDTO extends RelationDefineCollect {

    /** 图类型名称*/
    private String graphName;
    /** 边类型名称 */
    private String relName;
    /** 边方向性 */
    private Integer directional;
    /** 边属性 */
    private String attribute;
    /** 主要连接对象 */
    private String targetObjs;
    /** 关系处理模块提示信息,兼容数据中心而存在 */
    private String prompting;
    /** 备注 */
    private String remark;
    /** 计算关系之前需要计算的关系 */
    private List<RelationCalDTO> beforeCalRels;
    /** 计算器,就是计算规则 */
    private RelationCalRuleDTO calRules;
    /** 关系左侧的对象分类 */
    private String fromObjType;
    /** 关系右侧的对象分类 */
    private String toObjType;
    /** 自动计算类型,0-手动计算,1-自动计算,0-手动计算,1-自动计算 */
    private Boolean automaticFlag;
    /** 是否需要配置源末端 */
    @TableField(value = "source_flag")
    private Boolean sourceFlag;
    /** 手动计算类型 1 禁用  2提示引导 3手动维护 */
    @TableField(value = "manual")
    private Integer manual;
    /** 系统类型,风系统1,水系统0 */
    @TableField(value = "system_type")
    private Integer systemType;
    /** 机电系统类型 */
    private Set<String> mepSystemType;
    /** 分区类型code集合 */
    private Set<String> zoneTypes;
    /** 是否参与计算 */
    @TableField(value = "cal_flag")
    private Boolean calFlag;



}
