001package cn.mybatis.mp.generator.config; 002 003import lombok.Getter; 004 005import java.util.ArrayList; 006import java.util.Arrays; 007import java.util.List; 008 009/** 010 * 列配置 011 */ 012@Getter 013public class ColumnConfig { 014 015 /** 016 * 排除列 017 */ 018 private final List<String> excludeColumns = new ArrayList<>(); 019 020 /** 021 * 禁止修改的列 022 */ 023 private final List<String> disableUpdateColumns = new ArrayList<>(); 024 025 /** 026 * 禁止查询列 027 */ 028 private final List<String> disableSelectColumns = new ArrayList<>(); 029 030 /** 031 * 乐观锁列名 032 */ 033 private String versionColumn = ""; 034 035 /** 036 * 租户ID列名 037 */ 038 private String tenantIdColumn = ""; 039 040 /** 041 * 排除列 042 */ 043 public ColumnConfig excludeColumns(String... columns) { 044 this.excludeColumns.addAll(Arrays.asList(columns)); 045 return this; 046 } 047 048 /** 049 * 禁止修改的列 050 */ 051 public ColumnConfig disableUpdateColumns(String... columns) { 052 this.disableUpdateColumns.addAll(Arrays.asList(columns)); 053 return this; 054 } 055 056 /** 057 * 禁止查询列 058 */ 059 public ColumnConfig disableSelectColumns(String... columns) { 060 this.disableSelectColumns.addAll(Arrays.asList(columns)); 061 return this; 062 } 063 064 /** 065 * 乐观锁列名 066 * 067 * @param versionColumn 068 * @return 069 */ 070 public ColumnConfig versionColumn(String versionColumn) { 071 this.versionColumn = versionColumn; 072 return this; 073 } 074 075 /** 076 * 租户ID列名 077 * 078 * @param tenantIdColumn 079 * @return 080 */ 081 public ColumnConfig tenantIdColumn(String tenantIdColumn) { 082 this.tenantIdColumn = tenantIdColumn; 083 return this; 084 } 085}