/**
 * @fileoverview added by tsickle
 * Generated from: microenv-search/microenv-search.component.ts
 * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
 */
import * as tslib_1 from "tslib";
import { Component, EventEmitter, Input, Output } from '@angular/core';
import { NzMessageService } from 'ng-zorro-antd';
import { format, differenceInCalendarDays, startOfMonth, endOfMonth, startOfISOWeek, endOfISOWeek, startOfYear, endOfYear, startOfDay, endOfDay, getISOWeek, getHours, getMinutes, getSeconds, getISOWeekYear, startOfQuarter, endOfQuarter } from 'date-fns';
import * as _ from 'lodash';
import { DatePipe } from '@angular/common';
import { disabledStart, disabledEnd } from '../config/constant';
var MicroenvSearchComponent = /** @class */ (function () {
    function MicroenvSearchComponent(message, datepipe) {
        var _this = this;
        this.message = message;
        this.datepipe = datepipe;
        this.isCollapsed = false;
        this._isShowTime = true;
        this._conditionLists = [];
        this._conditionListsLength = this._conditionLists.length - 1;
        this._selectedQuater = 1;
        this._selectedQuaterStart = 1;
        this._selectedQuaterEnd = 4;
        this._isShowTimeTypeDropdown = true;
        this._isShowCollapsed = false;
        this._isShowOuterCheckAll = true;
        this.quaterLists = [
            { label: '一季度', value: 1 },
            { label: '二季度', value: 2 },
            { label: '三季度', value: 3 },
            { label: '四季度', value: 4 },
        ];
        this._timeTypeDropdownLists = [];
        //todo 选择改变回调
        this.bcacItemChange = new EventEmitter();
        //todo 时间下拉改变回调
        this.bcacTimeTypeChange = new EventEmitter();
        this.bcacSearch = new EventEmitter();
        //todo nz-time-picker不可选小时
        this.nzDisabledHours_start = (/**
         * @return {?}
         */
        function () { return []; });
        this.nzDisabledHours_end = (/**
         * @return {?}
         */
        function () { return []; });
        this.today = new Date(); // 今天
        // 今天
        //todo日期选择限制
        this.disabledDate = (/**
         * @param {?} current
         * @return {?}
         */
        function (current) {
            return differenceInCalendarDays(current, _this.today) > 0;
        });
        //todo 不可选时间 yyyy-MM-dd HH:mm:ss 
        this.disabledDateTime = (/**
         * @param {?} current
         * @return {?}
         */
        function (current) {
            /** @type {?} */
            var curr = _this.datepipe.transform(current, 'yyyy-MM-dd');
            /** @type {?} */
            var tod = _this.datepipe.transform(new Date(), 'yyyy-MM-dd');
            /** @type {?} */
            var hours = getHours(new Date()) //0~23
            ;
            //0~23
            /** @type {?} */
            var minutes = getMinutes(new Date()) //0~59
            ;
            //0~59
            /** @type {?} */
            var seconds = getSeconds(new Date());
            if (curr == tod) {
                return {
                    nzDisabledHours: (/**
                     * @return {?}
                     */
                    function () { return _this.range(hours + 1, 24); }),
                    nzDisabledMinutes: (/**
                     * @param {?} hour
                     * @return {?}
                     */
                    function (hour) {
                        if (hour === hours) {
                            return _this.range(minutes + 1, 60);
                        }
                        else {
                            return [];
                        }
                    }),
                    nzDisabledSeconds: (/**
                     * @param {?} hour
                     * @param {?} minute
                     * @return {?}
                     */
                    function (hour, minute) {
                        if (hour === hours && minute === minutes) {
                            return _this.range(seconds + 1, 60);
                        }
                        else {
                            return [];
                        }
                    })
                };
            }
        });
    }
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacIsShowTimeTypeDrop", {
        set: /**
         * @param {?} show
         * @return {?}
         */
        function (show) {
            this._isShowTimeTypeDropdown = typeof (show) == "string"
                ? JSON.parse(show)
                : show;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacIsShowCollapsed", {
        set: /**
         * @param {?} show
         * @return {?}
         */
        function (show) {
            this._isShowCollapsed = typeof (show) == "string"
                ? JSON.parse(show)
                : show;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacIsShowOuterCheckAll", {
        set: /**
         * @param {?} show
         * @return {?}
         */
        function (show) {
            this._isShowOuterCheckAll = typeof (show) == "string"
                ? JSON.parse(show)
                : show;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacConditionLists", {
        set: /**
         * @param {?} data
         * @return {?}
         */
        function (data) {
            var _this = this;
            if (data && data.length) {
                this._conditionLists = data.map((/**
                 * @param {?} item
                 * @return {?}
                 */
                function (item) {
                    /** @type {?} */
                    var totaldNum = item.queryItemlists.length;
                    /** @type {?} */
                    var selectedNum = _this.countNum(item.queryItemlists);
                    return tslib_1.__assign({}, item, { toltalNumber: totaldNum, selectedNumber: selectedNum, isAllChecked: totaldNum === selectedNum ? true : false, indeterminate: selectedNum > 0 && selectedNum < totaldNum ? true : false });
                }));
                /* if (this._conditionLists.length) {
                  for (const item of data) {
                    for (let existitem of this._conditionLists) {
                      if (JSON.stringify(item) != JSON.stringify(existitem)) {
                        let totaldNum = item.queryItemlists.length
                        let selectedNum = this.countNum(item.queryItemlists)
                        existitem = {
                          queryItemName: item.queryItemName,
                          queryItemlists: item.queryItemlists,
                          isopen: item.isopen,
                          isNewSection: item.isNewSection,
                          toltalNumber: totaldNum,
                          selectedNumber: selectedNum,
                          isAllChecked: totaldNum === selectedNum ? true : false,
                          indeterminate: selectedNum > 0 && selectedNum < totaldNum ? true : false
                        }
                      }
                    }
                  }
                } else {
                  this._conditionLists = data.map((item) => {
                    let totaldNum = item.queryItemlists.length
                    let selectedNum = this.countNum(item.queryItemlists)
                    return {
                      ...item,
                      toltalNumber: totaldNum,
                      selectedNumber: selectedNum,
                      isAllChecked: totaldNum === selectedNum ? true : false,
                      indeterminate: selectedNum > 0 && selectedNum < totaldNum ? true : false
                    }
                  })
                }
           */
                this._conditionListsLength = this._conditionLists.length - 1;
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacTimeTypeDropdownLists", {
        set: /**
         * @param {?} data
         * @return {?}
         */
        function (data) {
            if (data) {
                this.selectedValue = data.defaultValue;
                this._timeTypeDropdownLists = data.optLists;
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacQueryTimePickerStart", {
        set: /**
         * @param {?} time
         * @return {?}
         */
        function (time) {
            if (time) {
                this._bcacQueryTimePickerStart = new Date(time);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacQueryTimePickerEnd", {
        set: /**
         * @param {?} time
         * @return {?}
         */
        function (time) {
            if (time) {
                this._bcacQueryTimePickerEnd = new Date(time);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "bcacQueryTimePicker", {
        set: /**
         * @param {?} time
         * @return {?}
         */
        function (time) {
            if (time) {
                this._bcacQueryTimePicker = new Date(time);
            }
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "selectedQuater", {
        set: /**
         * @param {?} data
         * @return {?}
         */
        function (data) {
            if (data) {
                this._selectedQuater = Number(data);
            }
        } //single季度
        ,
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "selectedQuaterStart", {
        set: 
        //single季度
        /**
         * @param {?} data
         * @return {?}
         */
        function (data) {
            if (data) {
                this._selectedQuaterStart = Number(data);
            }
        } //开始季度
        ,
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(MicroenvSearchComponent.prototype, "selectedQuaterEnd", {
        set: 
        //开始季度
        /**
         * @param {?} data
         * @return {?}
         */
        function (data) {
            if (data) {
                this._selectedQuaterEnd = Number(data);
            }
        } //结束季度
        ,
        enumerable: true,
        configurable: true
    });
    //结束季度
    /**
     * @param {?} list
     * @return {?}
     */
    MicroenvSearchComponent.prototype.countNum = 
    //结束季度
    /**
     * @param {?} list
     * @return {?}
     */
    function (list) {
        var e_1, _a;
        /** @type {?} */
        var num = 0;
        try {
            for (var list_1 = tslib_1.__values(list), list_1_1 = list_1.next(); !list_1_1.done; list_1_1 = list_1.next()) {
                var item = list_1_1.value;
                if (item.checked) {
                    num = num + 1;
                }
            }
        }
        catch (e_1_1) { e_1 = { error: e_1_1 }; }
        finally {
            try {
                if (list_1_1 && !list_1_1.done && (_a = list_1.return)) _a.call(list_1);
            }
            finally { if (e_1) throw e_1.error; }
        }
        return num;
    };
    /**
     * @param {?} value
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.itemChangeCallback = /**
     * @param {?} value
     * @param {?} e
     * @return {?}
     */
    function (value, e) {
        var e_2, _a;
        try {
            for (var _b = tslib_1.__values(this._conditionLists), _c = _b.next(); !_c.done; _c = _b.next()) {
                var item = _c.value;
                if (item.queryItemName === value.queryItemName) {
                    /** @type {?} */
                    var data = item.queryItemlists.map((/**
                     * @param {?} em
                     * @return {?}
                     */
                    function (em) {
                        return tslib_1.__assign({}, em, { checked: e.includes(em.value) });
                    }));
                    item.queryItemlists = _.cloneDeep(data);
                    /** @type {?} */
                    var selectNum = this.countNum(item.queryItemlists);
                    item.selectedNumber = selectNum;
                    if (selectNum === item.toltalNumber) {
                        item.isAllChecked = true;
                        item.indeterminate = false;
                    }
                    else if (selectNum > 0 && selectNum < item.toltalNumber) {
                        item.isAllChecked = false;
                        item.indeterminate = true;
                    }
                    else {
                        item.isAllChecked = false;
                        item.indeterminate = false;
                    }
                }
            }
        }
        catch (e_2_1) { e_2 = { error: e_2_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_2) throw e_2.error; }
        }
        /** @type {?} */
        var par = {
            value: value,
            checkedList: e,
            conditionList: this._conditionLists
        };
        this.bcacItemChange.emit(par);
    };
    /**
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.timeTypeChange = /**
     * @param {?} e
     * @return {?}
     */
    function (e) {
        switch (e) {
            case 'minute':
                this.bcacQueryDateType = 'minute';
                break;
            case 'hour':
                this.bcacQueryDateType = 'hour';
                if (!this._bcacQueryTimePickerStart && !this._bcacQueryTimePickerEnd) {
                    this._bcacQueryTimePickerStart = new Date(format(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd HH:00:00'));
                    this._bcacQueryTimePickerEnd = new Date(format(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd HH:59:59'));
                }
                else if (!this._bcacQueryTimePicker) {
                    this._bcacQueryTimePicker = new Date(format(new Date(this.bcacQueryTime), 'yyyy-MM-dd HH:00:00'));
                }
                break;
            case 'day':
                this.bcacQueryDateType = 'daynotshowtime';
                break;
            case 'week':
                this.bcacQueryDateType = 'week';
                break;
            case 'month':
                this.bcacQueryDateType = 'month';
                break;
            case 'quater':
                this.bcacQueryDateType = 'quater';
                break;
            case 'year':
                this.bcacQueryDateType = 'year';
                break;
        }
        this.bcacTimeTypeChange.emit(e);
    };
    //todo 数据查询
    //todo 数据查询
    /**
     * @return {?}
     */
    MicroenvSearchComponent.prototype.queryByTime = 
    //todo 数据查询
    /**
     * @return {?}
     */
    function () {
        /** @type {?} */
        var emitpar = {
            startTime: '',
            endTime: '',
            conditionLists: this._conditionLists,
            dataType: this.bcacQueryDateType
        };
        if (this.bcacDatePickerType == 'double') {
            switch (this.bcacQueryDateType) {
                case 'minute':
                    emitpar.startTime = this.datepipe.transform(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'hour':
                    emitpar.startTime = this.datepipe.transform(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd') + ' ' + this.datepipe.transform(this._bcacQueryTimePickerStart, 'HH:00:00');
                    emitpar.endTime = this.datepipe.transform(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd') + ' ' + this.datepipe.transform(this._bcacQueryTimePickerEnd, 'HH:59:59');
                    break;
                case 'dayshowtime':
                    emitpar.startTime = this.datepipe.transform(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'daynotshowtime':
                    emitpar.startTime = this.datepipe.transform(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd');
                    emitpar.endTime = this.datepipe.transform(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd');
                    break;
                case 'week':
                    emitpar.startTime = this.datepipe.transform(startOfISOWeek(new Date(this.bcacQueryTimeStart)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfISOWeek(new Date(this.bcacQueryTimeEnd)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'month':
                    emitpar.startTime = this.datepipe.transform(startOfMonth(new Date(this.bcacQueryTimeStart)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfMonth(new Date(this.bcacQueryTimeEnd)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'quater':
                    /** @type {?} */
                    var years = this.datepipe.transform(this.bcacQueryTimeStart, 'yyyy');
                    /** @type {?} */
                    var yeare = this.datepipe.transform(this.bcacQueryTimeEnd, 'yyyy');
                    /** @type {?} */
                    var dates = new Date(parseInt(years), (3 * this._selectedQuaterStart - 2), 1);
                    /** @type {?} */
                    var datee = new Date(parseInt(yeare), (3 * this._selectedQuaterEnd - 2), 1);
                    emitpar.startTime = this.datepipe.transform(startOfQuarter(new Date(dates)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfQuarter(new Date(datee)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'year':
                    emitpar.startTime = this.datepipe.transform(startOfYear(new Date(this.bcacQueryTimeStart)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfYear(new Date(this.bcacQueryTimeEnd)), 'yyyy-MM-dd HH:mm:ss');
                    break;
            }
        }
        else {
            switch (this.bcacQueryDateType) {
                case 'hour':
                    emitpar.startTime = this.datepipe.transform(new Date(this.bcacQueryTime), 'yyyy-MM-dd') + ' ' + this.datepipe.transform(this._bcacQueryTimePicker, 'HH:00:00');
                    emitpar.endTime = this.datepipe.transform(new Date(this.bcacQueryTime), 'yyyy-MM-dd') + ' ' + this.datepipe.transform(this._bcacQueryTimePicker, 'HH:59:59');
                    break;
                case 'dayshowtime':
                    emitpar.startTime = this.datepipe.transform(startOfDay(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfDay(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'daynotshowtime':
                    emitpar.startTime = this.datepipe.transform(startOfDay(new Date(this.bcacQueryTime)), 'yyyy-MM-dd');
                    emitpar.endTime = this.datepipe.transform(endOfDay(new Date(this.bcacQueryTime)), 'yyyy-MM-dd');
                    break;
                case 'week':
                    emitpar.startTime = this.datepipe.transform(startOfISOWeek(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfISOWeek(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'month':
                    emitpar.startTime = this.datepipe.transform(startOfMonth(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfMonth(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'quater':
                    /** @type {?} */
                    var year = this.datepipe.transform(this.bcacQueryTime, 'yyyy');
                    /** @type {?} */
                    var date = new Date(parseInt(year), (3 * this._selectedQuater - 2), 1);
                    emitpar.startTime = this.datepipe.transform(startOfQuarter(new Date(date)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfQuarter(new Date(date)), 'yyyy-MM-dd HH:mm:ss');
                    break;
                case 'year':
                    emitpar.startTime = this.datepipe.transform(startOfYear(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    emitpar.endTime = this.datepipe.transform(endOfYear(new Date(this.bcacQueryTime)), 'yyyy-MM-dd HH:mm:ss');
                    break;
            }
        }
        if (new Date(emitpar.startTime).getTime() > new Date(emitpar.endTime).getTime()) {
            this.message.warning("开始时间不能大于结束时间");
            return;
        }
        this.bcacSearch.emit(emitpar);
    };
    //todo 全选按钮
    //todo 全选按钮
    /**
     * @param {?} value
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.updateAllChecked = 
    //todo 全选按钮
    /**
     * @param {?} value
     * @param {?} e
     * @return {?}
     */
    function (value, e) {
        var e_3, _a;
        try {
            for (var _b = tslib_1.__values(this._conditionLists), _c = _b.next(); !_c.done; _c = _b.next()) {
                var item = _c.value;
                if (item.queryItemName === value.queryItemName) {
                    item.indeterminate = false;
                    /** @type {?} */
                    var data = item.queryItemlists.map((/**
                     * @param {?} em
                     * @return {?}
                     */
                    function (em) {
                        return tslib_1.__assign({}, em, { checked: e });
                    }));
                    item.queryItemlists = _.cloneDeep(data);
                    item.selectedNumber = this.countNum(item.queryItemlists);
                }
            }
        }
        catch (e_3_1) { e_3 = { error: e_3_1 }; }
        finally {
            try {
                if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
            }
            finally { if (e_3) throw e_3.error; }
        }
    };
    /**
     * @return {?}
     */
    MicroenvSearchComponent.prototype.ngOnInit = /**
     * @return {?}
     */
    function () {
    };
    /**
     * @param {?} start
     * @param {?} end
     * @return {?}
     */
    MicroenvSearchComponent.prototype.range = /**
     * @param {?} start
     * @param {?} end
     * @return {?}
     */
    function (start, end) {
        /** @type {?} */
        var result = [];
        for (var i = start; i < end; i++) {
            result.push(i);
        }
        return result;
    };
    ;
    /**
     * @return {?}
     */
    MicroenvSearchComponent.prototype.hourStimeChange = /**
     * @return {?}
     */
    function () {
        var _this = this;
        /** @type {?} */
        var hours = getHours(new Date) //0~23
        ;
        //0~23
        /** @type {?} */
        var tod = this.datepipe.transform(new Date(), 'yyyy-MM-dd');
        if (this.datepipe.transform(new Date(this.bcacQueryTimeStart), 'yyyy-MM-dd') == tod) {
            this.nzDisabledHours_start = (/**
             * @return {?}
             */
            function () { return _this.range(hours, 24); });
        }
        else {
            this.nzDisabledHours_start = (/**
             * @return {?}
             */
            function () { return []; });
        }
    };
    /**
     * @return {?}
     */
    MicroenvSearchComponent.prototype.hourEtimeChange = /**
     * @return {?}
     */
    function () {
        var _this = this;
        /** @type {?} */
        var hours = getHours(new Date()) //0~23
        ;
        //0~23
        /** @type {?} */
        var tod = this.datepipe.transform(new Date(), 'yyyy-MM-dd');
        if (this.datepipe.transform(new Date(this.bcacQueryTimeEnd), 'yyyy-MM-dd') == tod) {
            this.nzDisabledHours_end = (/**
             * @return {?}
             */
            function () { return _this.range(hours, 24); });
        }
        else {
            this.nzDisabledHours_end = (/**
             * @return {?}
             */
            function () { return []; });
        }
    };
    //todo 时间选择改变回调
    //todo 时间选择改变回调
    /**
     * @param {?} $event
     * @return {?}
     */
    MicroenvSearchComponent.prototype.onStartChange = 
    //todo 时间选择改变回调
    /**
     * @param {?} $event
     * @return {?}
     */
    function ($event) {
        if ($event.getTime() > new Date().getTime()) {
            this.bcacQueryTimeStart = new Date();
        }
    };
    //todo 时间选择改变回调
    //todo 时间选择改变回调
    /**
     * @param {?} $event
     * @return {?}
     */
    MicroenvSearchComponent.prototype.onEndChange = 
    //todo 时间选择改变回调
    /**
     * @param {?} $event
     * @return {?}
     */
    function ($event) {
        if ($event.getTime() > new Date().getTime()) {
            this.bcacQueryTimeEnd = new Date();
        }
    };
    //todo 开始不可选分钟
    //todo 开始不可选分钟
    /**
     * @param {?} hour
     * @return {?}
     */
    MicroenvSearchComponent.prototype.disabledMinuteStart = 
    //todo 开始不可选分钟
    /**
     * @param {?} hour
     * @return {?}
     */
    function (hour) {
        return disabledStart;
    };
    //todo 结束不可选分钟
    //todo 结束不可选分钟
    /**
     * @param {?} hour
     * @return {?}
     */
    MicroenvSearchComponent.prototype.disabledMinuteEnd = 
    //todo 结束不可选分钟
    /**
     * @param {?} hour
     * @return {?}
     */
    function (hour) {
        return disabledEnd;
    };
    //todo 开始不可选秒
    //todo 开始不可选秒
    /**
     * @param {?} hour
     * @param {?} minute
     * @return {?}
     */
    MicroenvSearchComponent.prototype.disabledSecondsStart = 
    //todo 开始不可选秒
    /**
     * @param {?} hour
     * @param {?} minute
     * @return {?}
     */
    function (hour, minute) {
        return disabledStart;
    };
    //todo 结束不可选秒
    //todo 结束不可选秒
    /**
     * @param {?} hour
     * @param {?} minute
     * @return {?}
     */
    MicroenvSearchComponent.prototype.disabledSecondsEnd = 
    //todo 结束不可选秒
    /**
     * @param {?} hour
     * @param {?} minute
     * @return {?}
     */
    function (hour, minute) {
        return disabledEnd;
    };
    //todo 格式化周的显示为ISO
    //todo 格式化周的显示为ISO
    /**
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.rewriteWeek = 
    //todo 格式化周的显示为ISO
    /**
     * @param {?} e
     * @return {?}
     */
    function (e) {
        this.bcacDateFormat = getISOWeekYear(e) + '-' + getISOWeek(e);
        // this.bcacDateFormat = moment(e).isoWeekYear() + '-' + getISOWeek(e)
    };
    /**
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.rewriteWeekStart = /**
     * @param {?} e
     * @return {?}
     */
    function (e) {
        this.bcacDateFormatStart = getISOWeekYear(e) + '-' + getISOWeek(e);
    };
    /**
     * @param {?} e
     * @return {?}
     */
    MicroenvSearchComponent.prototype.rewriteWeekEnd = /**
     * @param {?} e
     * @return {?}
     */
    function (e) {
        this.bcacDateFormatEnd = getISOWeekYear(e) + '-' + getISOWeek(e);
    };
    MicroenvSearchComponent.decorators = [
        { type: Component, args: [{
                    selector: 'bcac-microenv-search',
                    template: "<div nz-row class=\"header\" [class.collapsed]=\"isCollapsed\" *ngIf=\"_isShowCollapsed\">\r\n    <div nz-col nzSpan=\"12\">\u67E5\u8BE2\u6761\u4EF6</div>\r\n    <div nz-col nzSpan=\"12\" style=\"text-align: right;padding-right: 1rem;\">\r\n        <i nz-icon  [nzType]=\"isCollapsed ? 'up' : 'down'\"  nzTheme=\"outline\" (click)=\"isCollapsed = !isCollapsed\"></i>\r\n    </div>\r\n</div>\r\n<div nz-row class=\"condition\" [style.display]=\"isCollapsed ? 'none' : 'block'\" >\r\n    <ng-container *ngFor=\"let item of _conditionLists;index as i;\">\r\n        <div nz-row *ngIf=\"!item.isopen\" class=\"queryrow\"\r\n            [ngClass]=\"{'lastrow': i == _conditionListsLength && !_isShowTime,'new-section': item.isNewSection}\">\r\n            <!-- <div nz-col nzSpan=\"2\" nzXs=\"4\" nzSm=\"4\" nzMd=\"4\" nzLg=\"4\" nzXl=\"3\" nzXXl=\"2\"\r\n                class=\"labelwrapper closemore\">\r\n                <div class=\"item-name\" nzTooltipTitle=\"{{item.queryItemName}}\"\r\n                    nzTooltipPlacement=\"topCenter\" nz-tooltip>{{item.queryItemName}}</div>\r\n            </div>\r\n            <div nz-col nzSpan=\"18\" nzXs=\"12\" nzSm=\"12\" nzMd=\"12\" nzLg=\"12\" nzXl=\"15\" nzXXl=\"18\"\r\n                class=\"checkboxwrapper\">\r\n                <div nz-row class=\"onerowboxwrapper\">\r\n                    <nz-checkbox-wrapper (nzOnChange)=\"itemChangeCallback(item,$event)\">\r\n                        <label nz-checkbox [nzDisabled]=\"item.disabled\"\r\n                            *ngFor=\"let item of item.queryItemlists\" [nzValue]=\"item.value\"\r\n                            nzTooltipTitle=\"{{item.label}}\" nzTooltipPlacement=\"topCenter\"\r\n                            nz-tooltip [ngModel]=\"item.checked\">{{item.label}}&nbsp;&nbsp;</label>\r\n                    </nz-checkbox-wrapper>\r\n                </div>\r\n            </div>\r\n            <div nz-col nzSpan=\"2\" nzXs=\"4\" nzSm=\"4\" nzMd=\"4\" nzLg=\"4\" nzXl=\"3\" nzXXl=\"2\"\r\n                class=\"remark\">\r\n                <span>\u5DF2\u9009:{{item.selectedNumber}}/{{item.toltalNumber}}</span>\r\n            </div>\r\n            <div nz-col nzSpan=\"2\" nzXs=\"4\" nzSm=\"4\" nzMd=\"4\" nzLg=\"4\" nzXl=\"3\" nzXXl=\"2\"\r\n                class=\"checkboxwrapper  morebuttonbox\">\r\n                <a href=\"javascript:void(0)\" (click)=\"item.isopen = !item.isopen\" class=\"unfold\">\r\n                    \u66F4\u591A&nbsp;&nbsp;<i nz-icon nzType=\"down-square\" nzTheme=\"outline\"></i>\r\n                </a>\r\n            </div> -->\r\n            <!-- new -->\r\n            <div  style=\"width:8%;float: left;\" class=\"labelwrapper closemore\">\r\n                <div class=\"item-name\" nzTooltipTitle=\"{{item.queryItemName}}\" nzTooltipPlacement=\"topCenter\"\r\n                    nz-tooltip>{{item.queryItemName}}</div>\r\n            </div>\r\n            <div style=\"width:70%;float: left;\" class=\"checkboxwrapper\" *ngIf=\"_isShowOuterCheckAll\">\r\n                <div nz-row class=\"onerowboxwrapper\">\r\n                    <nz-checkbox-wrapper (nzOnChange)=\"itemChangeCallback(item,$event)\">\r\n                        <label nz-checkbox [nzDisabled]=\"item.disabled\" *ngFor=\"let item of item.queryItemlists\"\r\n                            [nzValue]=\"item.value\" nzTooltipTitle=\"{{item.label}}\"\r\n                            nzTooltipPlacement=\"topCenter\" nz-tooltip\r\n                            [ngModel]=\"item.checked\">{{item.label}}&nbsp;&nbsp;</label>\r\n                    </nz-checkbox-wrapper>\r\n                </div>\r\n            </div>\r\n            <div style=\"width:76%;float: left;\" class=\"checkboxwrapper\" *ngIf=\"!_isShowOuterCheckAll\">\r\n                <div nz-row class=\"onerowboxwrapper\">\r\n                    <nz-checkbox-wrapper (nzOnChange)=\"itemChangeCallback(item,$event)\">\r\n                        <label nz-checkbox [nzDisabled]=\"item.disabled\" *ngFor=\"let item of item.queryItemlists\"\r\n                            [nzValue]=\"item.value\" nzTooltipTitle=\"{{item.label}}\"\r\n                            nzTooltipPlacement=\"topCenter\" nz-tooltip\r\n                            [ngModel]=\"item.checked\">{{item.label}}&nbsp;&nbsp;</label>\r\n                    </nz-checkbox-wrapper>\r\n                </div>\r\n            </div>\r\n            <div style=\"width:6%;float: left;\" class=\"remark\" *ngIf=\"_isShowOuterCheckAll\">\r\n                <label nz-checkbox [(ngModel)]=\"item.isAllChecked\" (ngModelChange)=\"updateAllChecked(item,$event)\"\r\n                    [nzIndeterminate]=\"item.indeterminate\" class=\"allcheckedlabl\" style=\"font-weight: 200;\">\r\n                    \u5168\u9009\r\n                </label>\r\n            </div>\r\n            <div style=\"width:8%;float: left;\"  class=\"remark\">\r\n                <span>\u5DF2\u9009:{{item.selectedNumber}}/{{item.toltalNumber}}</span>\r\n            </div>\r\n            <div  style=\"width:8%;float: left;\"  class=\"checkboxwrapper  morebuttonbox\">\r\n                <a href=\"javascript:void(0)\" (click)=\"item.isopen = !item.isopen\" class=\"unfold\">\r\n                    \u66F4\u591A&nbsp;&nbsp;<i nz-icon nzType=\"down-square\" nzTheme=\"outline\"></i>\r\n                </a>\r\n            </div>\r\n        </div>\r\n        <div nz-row *ngIf=\"item.isopen\" class=\"queryrow\"\r\n            [ngClass]=\"{'lastrow': i == _conditionListsLength && !_isShowTime,'new-section': item.isNewSection }\">\r\n            <div style=\"width:8%;float: left;\" class=\"labelwrapper openmore\">\r\n                <div class=\"item-name\" nzTooltipTitle=\"{{item.queryItemName}}\"\r\n                    nzTooltipPlacement=\"topCenter\" nz-tooltip>{{item.queryItemName}}</div>\r\n            </div>\r\n            <div style=\"width:92%;float: left;\">\r\n                <div nz-row class=\"checkbox_header\">\r\n                    <div nz-col nzSpan=\"18\" class=\"labelbox \">\r\n                        <label\r\n                            class=\"selectedremark\"><span>\u5DF2\u9009:{{item.selectedNumber}}/{{item.toltalNumber}}</span></label>\r\n                        <label nz-checkbox [(ngModel)]=\"item.isAllChecked\"\r\n                            (ngModelChange)=\"updateAllChecked(item,$event)\"\r\n                            [nzIndeterminate]=\"item.indeterminate\" class=\"allcheckedlabl\">\r\n                            \u5168\u9009\r\n                        </label>\r\n                    </div>\r\n                    <div nz-col nzSpan=\"6\" class=\"morebuttonbox\">\r\n                        <a href=\"javascript:void(0)\" (click)=\"item.isopen = !item.isopen\"\r\n                            class=\"fold\">\r\n                            \u6536\u8D77&nbsp;&nbsp;<i nz-icon nzType=\"up-square\" nzTheme=\"outline\"></i>\r\n                        </a>\r\n                    </div>\r\n                </div>\r\n                <div nz-row class=\"checkbox_expandwrapper\">\r\n                    <nz-checkbox-wrapper (nzOnChange)=\"itemChangeCallback(item,$event)\">\r\n                        <label nz-checkbox [nzDisabled]=\"item.disabled\"\r\n                            *ngFor=\"let item of item.queryItemlists\" nzTooltipTitle=\"{{item.label}}\"\r\n                            nzTooltipPlacement=\"topCenter\" nz-tooltip [nzValue]=\"item.value\"\r\n                            [ngModel]=\"item.checked\">{{item.label}}&nbsp;&nbsp;</label>\r\n                    </nz-checkbox-wrapper>\r\n                </div>\r\n            </div>\r\n        </div>\r\n    </ng-container>\r\n    <ng-container>\r\n        <div nz-row class=\"queryrow timerow\">\r\n            <div style=\"width:8%;float: left;\"class=\"labelwrapper closemore\">\u67E5\u8BE2\u65F6\u95F4\r\n            </div>\r\n            <ng-container [ngSwitch]=\"bcacDatePickerType\">\r\n                <ng-container *ngSwitchCase=\"'single'\">\r\n                    <div style=\"width:84%;float: left;\" class=\"checkboxwrapper timewrapper\"\r\n                        [ngSwitch]=\"bcacQueryDateType\">\r\n                        <div *ngIf=\"_isShowTimeTypeDropdown\">\r\n                            <nz-select [(ngModel)]=\"selectedValue\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"margin-right: 1rem;width: 8rem;\"\r\n                                (ngModelChange)=\"timeTypeChange($event)\">\r\n                                <nz-option *ngFor=\"let item of _timeTypeDropdownLists\"\r\n                                    [nzValue]=\"item.value\" [nzLabel]=\"item.label\">\r\n                                </nz-option>\r\n                            </nz-select>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'minute'\">\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [(ngModel)]=\"bcacQueryTime\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'hour'\">\r\n                            <nz-date-picker [(ngModel)]=\"bcacQueryTime\" nzSize=\"small\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\"\r\n                                [nzStyle]\u00A0=\"{\u00A0width:\u00A0'100%'\u00A0}\" nzFormat=\"yyyy-MM-dd\"\r\n                                (ngModelChange)=\"hourStimeChange()\">\r\n                            </nz-date-picker>\r\n                            <nz-time-picker nzSize=\"small\" [nzDisabledMinutes]=\"disabledMinuteStart\"\r\n                                [nzAllowEmpty]=\"false\" [nzDisabledHours]=\"nzDisabledHours_start\"\r\n                                [nzDisabledSeconds]=\"disabledSecondsStart\"\r\n                                [(ngModel)]=\"_bcacQueryTimePicker\" nzHideDisabledOptions=\"true\"\r\n                                nzHideDisabledOptions>\r\n                            </nz-time-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'dayshowtime'\">\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [(ngModel)]=\"bcacQueryTime\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'daynotshowtime'\">\r\n                            <nz-date-picker [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [(ngModel)]=\"bcacQueryTime\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'week'\">\r\n                            <nz-week-picker [(ngModel)]=\"bcacQueryTime\" nzSize=\"small\"\r\n                                (ngModelChange)=\"rewriteWeek($event)\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\"\r\n                                [nzFormat]=\"bcacDateFormat\">\r\n                            </nz-week-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'month'\">\r\n                            <nz-month-picker [(ngModel)]=\"bcacQueryTime\" nzSize=\"small\"\r\n                                [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM'\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\">\r\n                            </nz-month-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'quater'\">\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTime\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 10rem;\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                            <nz-select [(ngModel)]=\"_selectedQuater\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 4rem;\"\r\n                                style=\"margin-right: 1rem;\"\r\n                                (ngModelChange)=\"timeTypeChange($event)\">\r\n                                <nz-option *ngFor=\"let item of quaterLists\" [nzValue]=\"item.value\"\r\n                                    [nzLabel]=\"item.label\">\r\n                                </nz-option>\r\n                            </nz-select>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'year'\">\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTime\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                        </div>\r\n                    </div>\r\n                </ng-container>\r\n                <ng-container *ngSwitchCase=\"'double'\">\r\n                    <div style=\"width:84%;float: left;\"  class=\"checkboxwrapper timewrapper\"\r\n                        [ngSwitch]=\"bcacQueryDateType\">\r\n                        <div *ngIf=\"_isShowTimeTypeDropdown\">\r\n                            <nz-select [(ngModel)]=\"selectedValue\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"margin-right: 1rem;width: 8rem;\"\r\n                                (ngModelChange)=\"timeTypeChange($event)\">\r\n                                <nz-option *ngFor=\"let item of _timeTypeDropdownLists\"\r\n                                    [nzValue]=\"item.value\" [nzLabel]=\"item.label\">\r\n                                </nz-option>\r\n                            </nz-select>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'minute'\">\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzDisabledTime]=\"disabledDateTime\"\r\n                                [(ngModel)]=\"bcacQueryTimeStart\">\r\n                            </nz-date-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzDisabledTime]=\"disabledDateTime\" [(ngModel)]=\"bcacQueryTimeEnd\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'hour'\">\r\n                            <nz-date-picker [(ngModel)]=\"bcacQueryTimeStart\" nzSize=\"small\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\"\r\n                                nzFormat=\"yyyy-MM-dd\" style=\"width: 20%;\"\r\n                                [nzStyle]\u00A0=\"{\u00A0width:\u00A0'100%'\u00A0}\" nzPlaceHolder=\"\u5F00\u59CB\u65F6\u95F4\"\r\n                                (ngModelChange)=\"hourStimeChange()\">\r\n                            </nz-date-picker>\r\n                            <nz-time-picker nzSize=\"small\" style=\"width: 18%;\"\r\n                                [nzDisabledMinutes]=\"disabledMinuteStart\" [nzAllowEmpty]=\"false\"\r\n                                [nzDisabledHours]=\"nzDisabledHours_start\"\r\n                                [nzDisabledSeconds]=\"disabledSecondsStart\"\r\n                                [(ngModel)]=\"_bcacQueryTimePickerStart\" nzHideDisabledOptions=\"true\"\r\n                                nzHideDisabledOptions>\r\n                            </nz-time-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-date-picker [(ngModel)]=\"bcacQueryTimeEnd\" nzFormat=\"yyyy-MM-dd\"\r\n                                nzSize=\"small\" [nzDisabledDate]=\"disabledDate\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 20%;\"\r\n                                [nzStyle]\u00A0=\"{\u00A0width:\u00A0'100%'\u00A0}\" nzPlaceHolder=\"\u7ED3\u675F\u65F6\u95F4\"\r\n                                (ngModelChange)=\"hourEtimeChange()\">\r\n                            </nz-date-picker>\r\n                            <nz-time-picker nzSize=\"small\" style=\"width: 18%;\"\r\n                                [nzDisabledMinutes]=\"disabledMinuteEnd\" [nzAllowEmpty]=\"false\"\r\n                                [nzDisabledHours]=\"nzDisabledHours_end\"\r\n                                [nzDisabledSeconds]=\"disabledSecondsEnd\"\r\n                                [(ngModel)]=\"_bcacQueryTimePickerEnd\" nzHideDisabledOptions=\"true\"\r\n                                nzHideDisabledOptions>\r\n                            </nz-time-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'dayshowtime'\">\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzDisabledTime]=\"disabledDateTime\"\r\n                                [(ngModel)]=\"bcacQueryTimeStart\">\r\n                            </nz-date-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-date-picker nzShowTime\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd HH:mm:ss'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzDisabledTime]=\"disabledDateTime\" [(ngModel)]=\"bcacQueryTimeEnd\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'daynotshowtime'\">\r\n                            <nz-date-picker [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [(ngModel)]=\"bcacQueryTimeStart\">\r\n                            </nz-date-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-date-picker [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM-dd'\"\r\n                                [nzDisabledDate]=\"disabledDate\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [(ngModel)]=\"bcacQueryTimeEnd\">\r\n                            </nz-date-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'week'\">\r\n                            <nz-week-picker [(ngModel)]=\"bcacQueryTimeStart\" nzSize=\"small\"\r\n                                nzPlaceHolder=\"\u5F00\u59CB\u5468\" (ngModelChange)=\"rewriteWeekStart($event)\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\"\r\n                                [nzAllowClear]=\"false\" [nzFormat]=\"bcacDateFormatStart\">\r\n                            </nz-week-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-week-picker [(ngModel)]=\"bcacQueryTimeEnd\" nzSize=\"small\"\r\n                                nzPlaceHolder=\"\u7ED3\u675F\u5468\" (ngModelChange)=\"rewriteWeekEnd($event)\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\"\r\n                                [nzAllowClear]=\"false\" [nzFormat]=\"bcacDateFormatEnd\">\r\n                            </nz-week-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'month'\">\r\n                            <nz-month-picker [(ngModel)]=\"bcacQueryTimeStart\" nzSize=\"small\"\r\n                                nzPlaceHolder=\"\u5F00\u59CB\u6708\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM'\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\">\r\n                            </nz-month-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-month-picker [(ngModel)]=\"bcacQueryTimeEnd\" nzSize=\"small\"\r\n                                nzPlaceHolder=\"\u7ED3\u675F\u6708\" [nzStyle]=\"{ width: '100%' }\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy-MM'\"\r\n                                [nzDisabledDate]=\"disabledDate\" [nzAllowClear]=\"false\">\r\n                            </nz-month-picker>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'quater'\">\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTimeStart\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 10rem;\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                            <nz-select [(ngModel)]=\"_selectedQuaterStart\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 4rem;\"\r\n                                style=\"margin-right: 1rem;\"\r\n                                (ngModelChange)=\"timeTypeChange($event)\">\r\n                                <nz-option *ngFor=\"let item of quaterLists\" [nzValue]=\"item.value\"\r\n                                    [nzLabel]=\"item.label\">\r\n                                </nz-option>\r\n                            </nz-select>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTimeEnd\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 10rem;\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                            <nz-select [(ngModel)]=\"_selectedQuaterEnd\" nzSize=\"small\"\r\n                                [nzAllowClear]=\"false\" style=\"width: 4rem;\"\r\n                                style=\"margin-right: 1rem;\"\r\n                                (ngModelChange)=\"timeTypeChange($event)\">\r\n                                <nz-option *ngFor=\"let item of quaterLists\" [nzValue]=\"item.value\"\r\n                                    [nzLabel]=\"item.label\">\r\n                                </nz-option>\r\n                            </nz-select>\r\n                        </div>\r\n                        <div *ngSwitchCase=\"'year'\">\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTimeStart\" nzPlaceHolder=\"\u5F00\u59CB\u5E74\"\r\n                                nzSize=\"small\" [nzAllowClear]=\"false\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                            <span class=\"timeinterval\">~</span>\r\n                            <nz-year-picker [(ngModel)]=\"bcacQueryTimeEnd\" nzPlaceHolder=\"\u7ED3\u675F\u5E74\"\r\n                                nzSize=\"small\" [nzAllowClear]=\"false\"\r\n                                [nzFormat]=\"bcacDateFormat?bcacDateFormat:'yyyy'\"\r\n                                [nzStyle]=\"{ width: '100%' }\" [nzDisabledDate]=\"disabledDate\">\r\n                            </nz-year-picker>\r\n                        </div>\r\n                    </div>\r\n                </ng-container>\r\n            </ng-container>\r\n            <div style=\"width:8%;float: left;\"  class=\"checkboxwrapper morebuttonbox\">\r\n                <a href=\"javascript:void(0)\" (click)=\"queryByTime()\">\r\n                    \u67E5\u8BE2&nbsp;&nbsp;<i nz-icon nzType=\"search\" nzTheme=\"outline\"></i>\r\n                </a>\r\n            </div>\r\n        </div>\r\n    </ng-container>\r\n</div>",
                    styles: [".condition{background:#fff;padding:1rem}.condition .queryrow{border-top:1px solid #ddd}.condition .lastrow{border-bottom:1px solid #ddd}.condition .new-section{border-top:3px solid #ddd}.condition .timerow{border-bottom:1px solid #ddd}.condition .timerow .timeinterval{margin:0 1rem}.condition .checkbox_header{height:30px;display:flex;align-items:center}.condition .openmore{height:120px;background-color:#f3f3f3;padding-left:1rem}.condition .openmorefunzone{height:96px}.condition .labelwrapper{font-weight:600;display:flex;align-items:center}.condition .item-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.condition .closemore{height:38px;background-color:#f3f3f3;padding-left:1rem}.condition .labelbox{justify-content:flex-start;padding:0 1rem}.condition .labelbox .selectedremark{margin-right:2rem;color:#7d7878;font-size:1.2rem}.condition .morebuttonbox{padding-right:1rem;display:flex;align-items:center;justify-content:flex-end}.condition .morebuttonbox .fold,.condition .morebuttonbox .unfold{color:rgba(0,0,0,.65)}.condition .morebuttonbox .fold:hover,.condition .morebuttonbox .unfold:hover{color:#1890ff}.condition .checkboxwrapper{height:38px;overflow-y:hidden;position:relative;display:flex;align-items:center;padding-left:1rem}.condition .checkboxwrapper .onerowboxwrapper{height:24px}.condition .checkbox_expandwrapper{height:90px;padding-left:1rem;padding-top:.4rem}.condition .checkbox_expandwrapper nz-checkbox-wrapper{height:86px;overflow-y:auto}.condition .checkbox_expandwrapper nz-checkbox-wrapper::-webkit-scrollbar{background-color:#e8e8e8;width:10px}.condition .checkbox_expandwrapper nz-checkbox-wrapper::-webkit-scrollbar-thumb{background-color:#aaa;border-radius:.5rem}.condition .checkbox_expandwrapper_funzone{height:60px}.condition .checkbox_expandwrapper_funzone nz-checkbox-wrapper{height:56px}.condition .checkbox_expandwrapper nz-checkbox-wrapper label,.condition .checkboxwrapper nz-checkbox-wrapper label{margin:0;width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.condition .allcheckedlabl{padding:0;font-weight:600;color:#989595}.condition .remark{height:38px;display:flex;align-items:flex-end;font-size:1.2rem;justify-content:flex-end}.header{background:#fff;padding:.8rem 1rem 0;font-size:1.4rem;font-weight:600}.collapsed{border-bottom:1px solid #ddd;padding:.8rem 1rem}:host ::ng-deep .ant-checkbox,:host ::ng-deep .ant-checkbox-wrapper,:host ::ng-deep .ant-transfer,:host ::ng-deep .ant-transfer-list-body{padding:4px 0}:host ::ng-deep .ant-calendar-week-number-cell{opacity:0}"]
                }] }
    ];
    /** @nocollapse */
    MicroenvSearchComponent.ctorParameters = function () { return [
        { type: NzMessageService },
        { type: DatePipe }
    ]; };
    MicroenvSearchComponent.propDecorators = {
        bcacIsShowTimeTypeDrop: [{ type: Input }],
        bcacIsShowCollapsed: [{ type: Input }],
        bcacIsShowOuterCheckAll: [{ type: Input }],
        bcacConditionLists: [{ type: Input }],
        bcacTimeTypeDropdownLists: [{ type: Input }],
        bcacDatePickerType: [{ type: Input }],
        bcacQueryDateType: [{ type: Input }],
        bcacDateFormat: [{ type: Input }],
        bcacQueryTimeStart: [{ type: Input }],
        bcacQueryTimeEnd: [{ type: Input }],
        bcacQueryTimePickerStart: [{ type: Input }],
        bcacQueryTimePickerEnd: [{ type: Input }],
        bcacQueryTime: [{ type: Input }],
        bcacQueryTimePicker: [{ type: Input }],
        selectedQuater: [{ type: Input }],
        selectedQuaterStart: [{ type: Input }],
        selectedQuaterEnd: [{ type: Input }],
        bcacItemChange: [{ type: Output }],
        bcacTimeTypeChange: [{ type: Output }],
        bcacSearch: [{ type: Output }]
    };
    return MicroenvSearchComponent;
}());
export { MicroenvSearchComponent };
if (false) {
    /** @type {?} */
    MicroenvSearchComponent.prototype.isCollapsed;
    /** @type {?} */
    MicroenvSearchComponent.prototype._isShowTime;
    /** @type {?} */
    MicroenvSearchComponent.prototype._conditionLists;
    /** @type {?} */
    MicroenvSearchComponent.prototype._conditionListsLength;
    /** @type {?} */
    MicroenvSearchComponent.prototype._selectedQuater;
    /** @type {?} */
    MicroenvSearchComponent.prototype._selectedQuaterStart;
    /** @type {?} */
    MicroenvSearchComponent.prototype._selectedQuaterEnd;
    /** @type {?} */
    MicroenvSearchComponent.prototype._isShowTimeTypeDropdown;
    /** @type {?} */
    MicroenvSearchComponent.prototype._isShowCollapsed;
    /** @type {?} */
    MicroenvSearchComponent.prototype._isShowOuterCheckAll;
    /** @type {?} */
    MicroenvSearchComponent.prototype.quaterLists;
    /** @type {?} */
    MicroenvSearchComponent.prototype._timeTypeDropdownLists;
    /** @type {?} */
    MicroenvSearchComponent.prototype.selectedValue;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacDatePickerType;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacQueryDateType;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacDateFormat;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacQueryTimeStart;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacQueryTimeEnd;
    /** @type {?} */
    MicroenvSearchComponent.prototype._bcacQueryTimePickerStart;
    /** @type {?} */
    MicroenvSearchComponent.prototype._bcacQueryTimePickerEnd;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacQueryTime;
    /** @type {?} */
    MicroenvSearchComponent.prototype._bcacQueryTimePicker;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacItemChange;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacTimeTypeChange;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacSearch;
    /** @type {?} */
    MicroenvSearchComponent.prototype.nzDisabledHours_start;
    /** @type {?} */
    MicroenvSearchComponent.prototype.nzDisabledHours_end;
    /** @type {?} */
    MicroenvSearchComponent.prototype.today;
    /** @type {?} */
    MicroenvSearchComponent.prototype.disabledDate;
    /** @type {?} */
    MicroenvSearchComponent.prototype.disabledDateTime;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacDateFormatStart;
    /** @type {?} */
    MicroenvSearchComponent.prototype.bcacDateFormatEnd;
    /**
     * @type {?}
     * @private
     */
    MicroenvSearchComponent.prototype.message;
    /**
     * @type {?}
     * @private
     */
    MicroenvSearchComponent.prototype.datepipe;
    /* Skipping unhandled member: ;*/
}
//# sourceMappingURL=data:application/json;base64, 