沈斌
2017-12-15 f9b157566af34b8dc28ba10b34d025ac04f3168b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
import { NzMessageService } from 'ng-zorro-antd';
import * as moment from 'moment';
import { getFakeList } from '../../../../../../_mock/api.service';
 
@Component({
    selector: 'pro-list-filter-card-list',
    templateUrl: './filter-card-list.component.html',
    styleUrls: [ './filter-card-list.component.less' ],
    encapsulation: ViewEncapsulation.Emulated
})
export class ProFilterCardListComponent implements OnInit {
    q: any = {
        ps: 8,
        categories: [],
        owners: [ 'zxx' ]
    };
 
    list: any[] = [ ];
 
    loading = true;
 
    // region: cateogry
    categories = [
        { id: 0, text: '全部', value: false },
        { id: 1, text: '类目一', value: false },
        { id: 2, text: '类目二', value: false },
        { id: 3, text: '类目三', value: false },
        { id: 4, text: '类目四', value: false },
        { id: 5, text: '类目五', value: false },
        { id: 6, text: '类目六', value: false },
        { id: 7, text: '类目七', value: false },
        { id: 8, text: '类目八', value: false },
        { id: 9, text: '类目九', value: false },
        { id: 10, text: '类目十', value: false },
        { id: 11, text: '类目十一', value: false },
        { id: 12, text: '类目十二', value: false }
    ];
 
    changeCategory(status: boolean, idx: number) {
        if (idx === 0) {
            this.categories.map(i => i.value = status);
        } else {
            this.categories[idx].value = status;
        }
        this.getData();
    }
    // endregion
 
    constructor(public msg: NzMessageService) {}
 
    ngOnInit() {
        this.getData();
    }
 
    getData() {
        this.loading = true;
        setTimeout(() => {
            this.list = this.list.concat(getFakeList(this.q.ps)).map(item => {
                if (item.updatedAt) item.updatedAt = moment(item.updatedAt).fromNow();
                item.activeUser = this.formatWan(item.activeUser);
                return item;
            });
            this.loading = false;
        }, 1000);
    }
 
 
    private formatWan(val) {
        const v = val * 1;
        if (!v || isNaN(v)) return '';
 
        let result = val;
        if (val > 10000) {
            result = Math.floor(val / 10000);
            result = `${result}<em>万</em>`;
        }
        return result;
    }
}