import { Component, OnInit } from '@angular/core'; import { UserData } from '../../providers/user-data'; @Component({ selector: 'app-sample', templateUrl: './sample.page.html', styleUrls: ['./sample.page.scss'], }) export class SamplePage implements OnInit { sampleInfo = { sdDocument: '', sdFinishDateLt: '', sdFinishDateGt: '', sdCreateDateLt: '', sdCreateDateGt: '', sdStatus: '', sdMan: '' }; constructor( public userData: UserData ) { } ngOnInit() { } search() { this.userData.getSampleTableData(this.getSerchForm()) } getSerchForm() { let queryForm = { query: { bool: { must: [], must_not: [], should: [] } }, from: 0, size: 10, sort: [{sdCreateDate: {order: "desc"}}], aggs: {} }; if (this.sampleInfo.sdDocument) { let prefix = {} prefix['sdDocument.keyword'] = this.sampleInfo.sdDocument.toUpperCase() queryForm.query.bool.must.push({ prefix: prefix }) } if (this.sampleInfo.sdCreateDateGt || this.sampleInfo.sdCreateDateLt) { let range = { sdCreateDate: {} } if (this.sampleInfo.sdCreateDateGt) { range.sdCreateDate['gt'] = new Date(this.sampleInfo.sdCreateDateGt).getTime() } if (this.sampleInfo.sdCreateDateLt) { range.sdCreateDate['lt'] = new Date(this.sampleInfo.sdCreateDateLt).getTime() } queryForm.query.bool.must.push({ range: range }) } if (this.sampleInfo.sdMan) { let prefix = {} prefix['sdMan.keyword'] = this.sampleInfo.sdMan queryForm.query.bool.must.push({ prefix: prefix }) } return queryForm } clear() { this.sampleInfo = { sdDocument: '', sdFinishDateLt: '', sdFinishDateGt: '', sdCreateDateLt: '', sdCreateDateGt: '', sdStatus: '', sdMan: '' } } }