package com.engine.organization.entity.staff.vo;

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

/**
 * @description:
 * @author:dxfeng
 * @createTime: 2022/05/25
 * @version: 1.0
 */
@Data
@Builder
@AllArgsConstructor
@NoArgsConstructor
@OrganizationTable(pageId = "0cdfd5bb-dc09-11ec-b69e-00ffcbed7508",
        fields = "t.id,t.is_used,s.control_dimension,t.plan_id,t.comp_id,t.dept_id,t.job_id,t.staff_num,t.permanent_num,t.freeze_num,t.lack_status,t.staff_desc",
        fromSql = "FROM jcl_org_staff t inner join jcl_org_staffplan s on t.plan_id = s.id",
        orderby = "id desc",
        primarykey = "id",
        operates = {
                @OrganizationTableOperate(index = "0", labelId = 547132, text = "编辑"),
                @OrganizationTableOperate(index = "1", labelId = 547135, text = "删除"),
                @OrganizationTableOperate(index = "2", text = "变更")
        }, tableType = WeaTableType.CHECKBOX

)
public class StaffTableVO {
    /**
     * 主键
     */
    //@OrganizationTableColumn(column = "id", display = false)
    private Long id;
    /**
     * 是否被引用
     */
    //@OrganizationTableColumn(column = "isUsed", display = false)
    private Integer isUsed;
    /**
     * 方案id
     */
    @OrganizationTableColumn(labelId = 547344, text = "方案", width = "10%", column = "plan_id", transmethod = "com.engine.organization.transmethod.StaffPlanTransMethod.getSpanById")
    private String planId;
    /**
     * 维度
     */
    @OrganizationTableColumn(labelId = 547293, text = "维度", width = "10%", column = "control_dimension", transmethod = "com.engine.organization.transmethod.StaffPlanTransMethod.getControlDimension")
    private String controlDimension;
    /**
     * 分部
     */
    @OrganizationTableColumn(labelId = 547332, text = "分部", width = "10%", column = "comp_id", transmethod = "com.engine.organization.transmethod.CompTransMethod.getSpanById")
    private String compId;
    /**
     * 部门
     */
    @OrganizationTableColumn(labelId = 547331, text = "部门", width = "10%", column = "dept_id", transmethod = "com.engine.organization.transmethod.DepartmentTransMethod.getSpanById")
    private String deptId;
    /**
     * 岗位
     */
    @OrganizationTableColumn(labelId = 547333, text = "岗位", width = "10%", column = "job_id", transmethod = "com.engine.organization.transmethod.JobTransMethod.getSpanById")
    private String jobId;
    /**
     * 编制数
     */
    @OrganizationTableColumn(labelId = 547345, text = "编制数", width = "10%", column = "staff_num")
    private Integer staffNum;
    /**
     * 在编
     */
    @OrganizationTableColumn(labelId = 547346, text = "在编", width = "10%", column = "permanent_num")
    private Integer permanentNum;
    /**
     * 冻结数
     */
    @OrganizationTableColumn(labelId = 547347, text = "冻结数", width = "10%", column = "freeze_num")
    private Integer freezeNum;
    /**
     * 缺编状态
     */
    @OrganizationTableColumn(labelId = 547348, text = "缺编状态", width = "10%", column = "lack_status", transmethod = "com.engine.organization.transmethod.StaffTransMethod.getLackSpan")
    private String lackStatus;
    /**
     * 编制描述
     */
    @OrganizationTableColumn(labelId = 547349, text = "编制描述", width = "10%", column = "staff_desc")
    private String staffDesc;

}
