const _Http = getApp().globalData.http;

Page({
    data: {
        navList: [{
            label: "我负责的",
            icon: "icon-webxialaxuanxiangjiantou",
            color: "",
            width: "",
            id: "1"
        }, {
            label: "排序",
            icon: "icon-jiangxu1",
            color: "",
            width: "",
            id: "sort"
        }, {
            label: "筛选",
            icon: "icon-shaixuan",
            color: "",
            width: "",
            id: "2"
        }],
        content: {
            "type": 99,
            "pageNumber": 1,
            "pageSize": 20,
            "where": {
                "condition": "",
                "startdate": "",
                "enddate": "",
                "type": "",
                "stagename": ""
            }
        }
    },
    async onLoad() {
        getApp().globalData.Language.getLanguagePackage(this);
        let templetList = wx.getStorageSync('templetList')
        this.setData({
            insert: wx.getStorageSync('auth').wdoctors.options.some(v => v == 'insert'), //查询新增权限
            classActions: templetList.map((v, i) => {
                return {
                    name: v.templetname,
                    index: v.templetid,
                    color: i == 0 ? '#3874F6' : '',
                    i: i,
                }
            }),
            'navList[0].label': templetList[0].templetname,
            "content.type": templetList[0].templetid,
        });
        this.getList(true)

        _Http.basic({
            "id": 20220929085401,
            "content": {
                "ownertable": "sa_doctor",
                "ownerid": ""
            }
        }).then(res => {
            if (res.code == 1) {
                let filtratelist = [{
                    label: "标签",
                    index: null,
                    type: "checkbox",
                    showName: "tag", //显示字段
                    valueKey: "tag", //返回Key
                    selectKey: "tag", //传参 代表选着字段 不传参返回整个选择对象
                    value: "", //选中值
                    list: res.data.option
                }]
                this.setData({
                    filtratelist
                })
            }
        })
    },
    getList(init = false) {
        _Http.init(this.data.content, init).then(content => {
            _Http.basic({
                "id": 2025102208523002,
                content
            }).then(res => {
                console.log("医生列表", res)
                this.selectComponent('#ListBox').RefreshToComplete();
                if (res.code != '1') return wx.showToast({
                    title: res.msg,
                    icon: "none"
                })
                setTimeout(() => {
                    if (res.pageNumber == 1 && res.data.length && !this.data.filtratelist.some(v => v.label == '开发阶段')) {
                        this.data.filtratelist.push({
                            label: "开发阶段",
                            index: null,
                            showName: "stagename", //显示字段
                            valueKey: "stagename", //返回Key
                            selectKey: "stagename", //传参 代表选着字段 不传参返回整个选择对象
                            value: "", //选中值
                            list: res.data[0].stages
                        })
                        this.setData({
                            filtratelist: this.data.filtratelist
                        })
                    }
                }, 1500);
                this.setData({
                    content: _Http.paging(content, res),
                    list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data)
                })
            })
        })
    },
    toAdd() {
        wx.navigateTo({
            url: '/prsx/doctors/insert'
        })
    },
    /* 处理筛选 */
    handleFilter({
        detail
    }) {
        detail.condition = this.data.content.where.condition;
        this.data.content.where = detail;
        this.getList(true);
    },
    /* 顶部条件导航回调 */
    navClick({
        detail
    }) {
        switch (detail.id) {
            case '1':
                this.setData({
                    classShow: true
                })
                break;
            case '2':
                this.setData({
                    'filterShow': true
                })
                break;
            case '3':
                this.setData({
                    'content.sort[0].reversed': this.data.content.sort[0].reversed == 0 ? 1 : 0
                });
                this.getList(true)
                break;
        }
    },
    /* 处理搜索 */
    onSearch({
        detail
    }) {
        this.data.content.where.condition = detail;
        this.getList(true);
    },
    classClose() {
        this.setData({
            classShow: false
        })
    },
    classSelect({
        detail
    }) {
        if (this.data.content.type == detail.index) return this.classClose();
        this.setData({
            "content.type": detail.index,
            'navList[0].label': detail.name,
            classActions: this.data.classActions.map(v => {
                v.color = detail.i == v.i ? '#3874F6' : ''
                return v
            })
        })
        this.classClose();
        this.getList(true)
    }
})