package com.engine.organization.annotation;


import com.cloudstore.eccom.pc.table.WeaTableType;
import com.engine.organization.enums.DeleteTypeEnum;

import java.lang.annotation.*;

/**
 * @Author dxfeng
 * @Description:
 * @Date 2022/5/9
 * @Version V1.0
 **/
@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface OrganizationTable {

    String pageId() default "";

    /**
     * 数据库字段，以','分割,例如:"id, name, description"
     */
    String fields() default "";

    /**
     * 表名 ,例如:"FROM hrsa_tax_agent"
     */
    String fromSql() default "";

    /**
     * 条件
     */
    String where() default "";

    /**
     * 分组
     */
    String groupby() default "";


    /**
     * 排序
     */
    String orderby() default "";

    /**
     * 主键
     */
    String primarykey() default "";

    /**
     * 去重
     */
    boolean distinct() default false;


    /**
     * 排序方式
     * @return
     */
    String sortway() default "desc";

    /**
     * 操作按钮
     */
    OrganizationTableOperate[] operates() default {};

    /**
     * 操作按钮权限控制
     * @return
     */
    OperatePopedom operatePopedom() default @OperatePopedom;

    /**
     * 列表选择框
     */
    WeaTableType tableType() default WeaTableType.NONE;

    CheckboxPopedom checkboxPopedom() default @CheckboxPopedom;
}
