import { Rule, RuleType } from '@midwayjs/validate'; import { ApiProperty } from '@midwayjs/swagger'; import { SearchBase } from 'free-midway-component'; import get = require('lodash/get'); const dealVO = (cla, data) => { for (const key in cla) { const val = get(data, key); if (val || val === 0) cla[key] = val; } }; export class FVO_patentWarning { constructor(data: object) { dealVO(this, data); } @ApiProperty({ description: '数据id' }) _id: string = undefined; @ApiProperty({ description: '专利号' }) 'create_number': string = undefined; @ApiProperty({ description: '专利id' }) 'patent_id': string = undefined; @ApiProperty({ description: '专利名称' }) 'patnet_name': string = undefined; @ApiProperty({ description: '发送时间' }) 'send_date': string = undefined; @ApiProperty({ description: '缴费截止日期' }) 'lose_date': string = undefined; @ApiProperty({ description: '预警信息' }) 'content': string = undefined; @ApiProperty({ description: '接收人' }) 'receive': Array = undefined; } export class QDTO_patentWarning extends SearchBase { constructor() { const like_prop = []; const props = [ 'create_number', 'patnet_name', 'send_date', 'lose_date', 'patent_id', ]; const mapping = []; super({ like_prop, props, mapping }); } @ApiProperty({ description: '专利号' }) 'create_number': string = undefined; @ApiProperty({ description: '专利id' }) 'patent_id': string = undefined; @ApiProperty({ description: '专利名称' }) 'patnet_name': string = undefined; @ApiProperty({ description: '发送时间' }) 'send_date': string = undefined; @ApiProperty({ description: '缴费截止日期' }) 'lose_date': string = undefined; } export class QVO_patentWarning extends FVO_patentWarning { constructor(data: object) { super(data); dealVO(this, data); } } export class CDTO_patentWarning { @ApiProperty({ description: '专利号' }) @Rule(RuleType['string']().empty('')) 'create_number': string = undefined; @ApiProperty({ description: '专利id' }) @Rule(RuleType['string']().empty('')) 'patent_id': string = undefined; @ApiProperty({ description: '专利名称' }) @Rule(RuleType['string']().empty('')) 'patnet_name': string = undefined; @ApiProperty({ description: '发送时间' }) @Rule(RuleType['string']().empty('')) 'send_date': string = undefined; @ApiProperty({ description: '缴费截止日期' }) @Rule(RuleType['string']().empty('')) 'lose_date': string = undefined; @ApiProperty({ description: '预警信息' }) @Rule(RuleType['string']().empty('')) 'content': string = undefined; @ApiProperty({ description: '接收人' }) @Rule(RuleType['array']().empty('')) 'receive': Array = undefined; } export class CVO_patentWarning extends FVO_patentWarning { constructor(data: object) { super(data); dealVO(this, data); } } export class UDTO_patentWarning extends CDTO_patentWarning { @ApiProperty({ description: '数据id' }) @Rule(RuleType['string']().empty('')) _id: string = undefined; } export class UVAO_patentWarning extends FVO_patentWarning { constructor(data: object) { super(data); dealVO(this, data); } }