import { Rule, RuleType } from '@midwayjs/validate';
import { ApiProperty } from '@midwayjs/swagger';
import { dealVO } from '../../frame/VOBase';
export class FVO_competition {
  constructor(data: object) {
    dealVO(this, data);
  }
  @ApiProperty({ description: '数据id' })
  id: number = undefined;
  @ApiProperty({ description: '平台用户id' })
  'user': number = undefined;
  @ApiProperty({ description: '名称' })
  'name': string = undefined;
  @ApiProperty({ description: '负责人名称' })
  'person': string = undefined;
  @ApiProperty({ description: '负责人电话' })
  'person_phone': string = undefined;
  @ApiProperty({ description: '简介' })
  'brief': string = undefined;
  @ApiProperty({ description: '地址' })
  'address': string = undefined;
  @ApiProperty({ description: '是否公开' })
  'is_show': string = undefined;
  @ApiProperty({ description: '状态' })
  'status': string = undefined;
}

export class QDTO_competition {
  @ApiProperty({ description: '平台用户id' })
  'user': number = undefined;
  @ApiProperty({ description: '名称' })
  'name': string = undefined;
  @ApiProperty({ description: '负责人名称' })
  'person': string = undefined;
  @ApiProperty({ description: '负责人电话' })
  'person_phone': string = undefined;
  @ApiProperty({ description: '是否公开' })
  'is_show': string = undefined;
  @ApiProperty({ description: '状态' })
  'status': string = undefined;
}

export class QVO_competition extends FVO_competition {
  constructor(data: object) {
    super(data);
    dealVO(this, data);
  }
}

export class CDTO_competition {
  @ApiProperty({ description: '平台用户id' })
  @Rule(RuleType['number']().empty(''))
  'user': number = undefined;
  @ApiProperty({ description: '名称' })
  @Rule(RuleType['string']().empty(''))
  'name': string = undefined;
  @ApiProperty({ description: '负责人名称' })
  @Rule(RuleType['string']().empty(''))
  'person': string = undefined;
  @ApiProperty({ description: '负责人电话' })
  @Rule(RuleType['string']().empty(''))
  'person_phone': string = undefined;
  @ApiProperty({ description: '简介' })
  @Rule(RuleType['string']().empty(''))
  'brief': string = undefined;
  @ApiProperty({ description: '地址' })
  @Rule(RuleType['string']().empty(''))
  'address': string = undefined;
  @ApiProperty({ description: '是否公开' })
  @Rule(RuleType['string']().empty(''))
  'is_show': string = undefined;
  @ApiProperty({ description: '状态' })
  @Rule(RuleType['string']().empty(''))
  'status': string = undefined;
}

export class CVO_competition extends FVO_competition {
  constructor(data: object) {
    super(data);
    dealVO(this, data);
  }
}

export class UDTO_competition extends CDTO_competition {
  @ApiProperty({ description: '数据id' })
  @Rule(RuleType['number']().empty(''))
  id: number = undefined;
}

export class UVAO_competition extends FVO_competition {
  constructor(data: object) {
    super(data);
    dealVO(this, data);
  }
}
