package com.engine.organization.entity.department.dto;

import com.cloudstore.eccom.pc.table.WeaTableType;
import com.engine.organization.annotation.OrganizationTable;
import com.engine.organization.annotation.TableTitle;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * @Author weaver_cl
 * @description:
 * @Date 2022/5/19
 * @Version V1.0
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@OrganizationTable(pageId = "96f2bb0d-da73-11ec-a0da-00ffcbed7508",
        tableType = WeaTableType.NONE)
public class DepartmentListDTO {

    private Long id;
    /**
     * 是否被引用
     */
    private Integer isUsed;

    /**
     * 名称
     */
    @TableTitle(title = "名称", dataIndex = "deptName", key = "deptName")
    private String deptName;

    /**
     * 编号
     */
    @TableTitle(title = "编号", dataIndex = "deptNo", key = "deptNo")
    private String deptNo;

    /**
     * 简称
     */
    @TableTitle(title = "简称", dataIndex = "deptNameShort", key = "deptNameShort")
    private String deptNameShort;

    /**
     * 所属分部
     */
    @TableTitle(title = "所属分部", dataIndex = "parentComp", key = "parentComp")
    private String parentComp;

    /**
     * 上级部门
     */
    @TableTitle(title = "上级部门", dataIndex = "parentDeptName", key = "parentDeptName")
    private String parentDeptName;

    private Long parentDept;

    /**
     * 部门负责人
     */
    @TableTitle(title = "部门负责人", dataIndex = "deptPrincipal", key = "deptPrincipal")
    private String deptPrincipal;

    /**
     * 显示顺序
     */
    @TableTitle(title = "显示顺序", dataIndex = "showOrder", key = "showOrder",sorter = true)
    private int showOrder;

    ///**
    // * 说明
    // */
    //@TableTitle(title = "说明", dataIndex = "description", key = "description")
    //private String description;

    /**
     * 禁用标记
     */
    @TableTitle(title = "是否启用", dataIndex = "forbiddenTag", key = "forbiddenTag")
    private int forbiddenTag;
    /**
     * 操作列
     */
    @TableTitle(title = "", dataIndex = "operate", key = "operate")
    private String operate;
    /**
     * 子节点
     */
    private List<DepartmentListDTO> children;
}
