const _Http = getApp().globalData.http,
    getHeight = require("../../utils/getRheRemainingHeight");

Page({
    data: {
        navList: [{
            label: "全部",
            icon: "icon-webxialaxuanxiangjiantou",
            color: "",
            width: "",
            id: "1"
        }, {
            label: "创建时间",
            icon: "icon-quxiao",
            color: "",
            width: "",
            id: "3"
        }, {
            label: "筛选",
            icon: "icon-daoruxialajiantou",
            color: "",
            width: "",
            id: "2"
        }],
        classShow: false,
        classActions: [{
                name: '全部',
                index: 0
            }, {
                name: '我负责的',
                index: 1
            },
            {
                name: '我参与的',
                index: 2
            },
            {
                name: "我下属负责的",
                index: 3
            }, {
                name: "我下属参与的",
                index: 4
            }
        ],
        content: {
            nocache: true,
            "type": 0,
            "pageNumber": 1,
            "pageSize": 20,
            "where": {
                "condition": "",
                "status": "",
                "startdate": "",
                "enddate": ""
            },
            "sort": [{
                sortname: "默认",
                sorted: 1,
                sortid: 68,
                reversed: 0
            }]
        },
        filter: {
            show: false,
            status: ['跟进中', '已成交', '已失败'], //状态项
            statusActive: "",
            projectTypeList: [], //项目类型项
            typeActive: "",
            stageList: [], //项目阶段项目
            stageActive: "",
            startdate: "",
            enddate: ""
        }
    },
    onLoad(options) {
        this.getList();
    },
    /* 获取列表 */
    getList(init = false, data) {
        if (init.detail != undefined) init = init.detail;
        let content = this.data.content;
        if (init) content.pageNumber = 1;
        if (content.pageNumber > content.pageTotal) return;
        if (data) {
            content.where.status = data.statusActive;
            content.where.projecttype = data.typeActive;
            content.where.stagename = data.stageActive;
            content.where.startdate = data.startdate;
            content.where.enddate = data.enddate;
        }
        _Http.basic({
            "id": 20221020143502,
            content
        }).then(res => {
            console.log("客户商机列表", res)
            this.selectComponent('#ListBox').RefreshToComplete();
            if (res.msg != '成功') return wx.showToast({
                title: res.data,
                icon: "none"
            })
            // this.getTags(res.data.map(v => v.sys_enterpriseid));
            res.data = res.data.map(v => {
                v.winrate = parseFloat(v.winrate.substring(0, v.winrate.length - 1));
                return v
            })
            this.setData({
                'content.pageNumber': res.pageNumber + 1,
                'content.pageTotal': res.pageTotal,
                'content.total': res.total,
                list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data)
            })
        })
    },
    /* 添加 */
    toAdd() {
        wx.navigateTo({
            url: '/packageA/project/addAndEdit'
        })
    },
    /* 处理筛选 */
    handleFilter({
        detail
    }) {
        const data = this.data.filter;
        switch (detail) {
            case 'confirm':
                this.setData({
                    'filter.show': false
                });
                this.getList(true, data);
                break;
            case 'reset':
                this.setData({
                    'filter.statusActive': "",
                    'filter.typeActive': "",
                    'filter.stageActive': "",
                    'filter.startdate': "",
                    'filter.enddate': "",
                });
                this.getList(true, this.data.filter)
                break;
            case 'close':
                this.setData({
                    'filter.show': false
                });
                break;
        }
    },
    /* 筛选状态选择 */
    selectStatus(e) {
        const {
            item
        } = e.currentTarget.dataset;
        this.setData({
            "filter.statusActive": this.data.filter.statusActive == item ? "" : item
        })
    },
    /* 筛选项目类 */
    selectTypeName(e) {
        const {
            value
        } = e.currentTarget.dataset.item;
        if (this.data.filter.typeActive == value) return;
        this.setData({
            "filter.typeActive": value
        });
        _Http.basic({
            "id": 20221107150004,
            "content": {
                "projecttype": value
            }
        }).then(res => {
            console.log("模板阶段", res)
            if (res.msg != '成功') return wx.showToast({
                title: res.data,
                icon: "none"
            })
            this.setData({
                "filter.stageList": res.data,
                "filter.stageActive": ""
            })
        })

    },
    /* 筛选阶段 */
    stageStatus(e) {
        const {
            stagename
        } = e.currentTarget.dataset.item;
        this.setData({
            "filter.stageActive": stagename
        })
    },
    /* 筛选日期范围 */
    changeDate(e) {
        const name = e.currentTarget.dataset.name,
            value = e.detail.value;
        this.setData({
            [`filter.${name}`]: value
        })
    },
    /* 顶部条件导航回调 */
    navClick({
        detail
    }) {
        switch (detail.id) {
            case '1':
                this.setData({
                    classShow: true
                })
                break;
            case '2':
                _Http.basic({
                    "classname": "sysmanage.develop.optiontype.optiontype",
                    "method": "optiontypeselect",
                    "content": {
                        nocache: true,
                        "pageNumber": 1,
                        "pageSize": 999,
                        "typename": "projecttype",
                        "parameter": {
                            "siteid": wx.getStorageSync('siteP').siteid
                        }
                    }
                }).then(res => {
                    console.log("项目类型", res)
                    if (res.msg != '成功') return wx.showToast({
                        title: res.data,
                        icon: "none"
                    })
                    this.setData({
                        'filter.show': true,
                        'filter.projectTypeList': res.data,
                    })
                })
                break;
            case '3':
                this.setData({
                    'content.sort[0].reversed': this.data.content.sort[0].reversed == 0 ? 1 : 0
                });
                this.getList(true)
                break;
        }
    },
    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
        })
        this.classClose();
        this.getList(true)
    },
    onReady() {
        getHeight.getHeight('.total', this).then(res => this.setData({
            listHeight: res
        }));
    },
    /* 搜索 */
    navSearch() {
        wx.navigateTo({
            url: '/packageA/project/search'
        })
    },
    onShareAppMessage() {}
})