| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271 | let sys_payorderid = null,    _Http = getApp().globalData.http,    currency = require("../../utils/currency"),    pageNumber = 1,    pageTotal = 1,    CNY = value => currency(value, {        symbol: "¥",        precision: 2    }).format();Page({    data: {        loading: true    },    onLoad(options) {        sys_payorderid = options.id;        // sys_payincidence 1账号 2主体        this.setData({            sys_payincidence: wx.getStorageSync('siteP').sys_payincidence,            sys_payswitch: wx.getStorageSync('siteP').sys_payswitch        })        this.getDetail();        this.getList(true);    },    getDetail() {        _Http.basic({            "classname": "system.payorder.payorder",            "method": "detail",            "content": {                nocache: true,                sys_payorderid            }        }).then(res => {            console.log("付费订单详情", res)            if (res.msg != '成功') {                wx.showToast({                    title: res.msg,                    icon: "none",                    mask: true                });                setTimeout(() => wx.navigateBack(), 1000)                return;            };            let detail = res.data;            detail.showAmount = CNY(detail.amount);            switch (detail.ispaid) {                case 0:                    detail.color = "#FF3B30";                    detail.status = '未付费';                    break;                case 1:                    detail.color = '#52C41A';                    detail.status = '已付费';                    break;                case 2:                    detail.color = '#ddd';                    detail.status = "新建";                    break;                case 3:                    detail.color = '#ddd';                    detail.status = "已取消";                    break;                case 4:                    detail.color = '#ddd';                    detail.status = "已退费";                    break;            };            this.setData({                detail,                showroom: [{                    label: "付费订单号",                    value: detail.orderno                }, {                    label: "付费状态",                    value: detail.status,                    color: detail.color,                }, {                    label: "付费金额",                    value: detail.showAmount,                    color: '#FF3B30',                }, {                    label: "付费时间",                    value: detail.paytime                }, {                    label: "付费版本",                    value: detail.partitionname,                    func: "viewDetails"                }, {                    label: "付费人",                    value: detail.createby                }, {                    label: "付费渠道",                    value: detail.paymode                }, {                    label: "备注",                    value: detail.remarks                }],                loading: false            });        })    },    /* 获取列表 */    getList(init = false) {        if (init) {            pageNumber = 1;            pageTotal = 1;        };        if (pageNumber > pageTotal) return;        _Http.basic({            "classname": "system.payorder.payorder",            "method": "detail_userlist",            "content": {                sys_payorderid,                pageNumber,                "where": {                    "condition": ""                }            }        }).then(res => {            console.log("获取付费列表", res)            if (res.msg != '成功') {                wx.showToast({                    title: res.msg,                    icon: "none",                    mask: true                });                setTimeout(() => wx.navigateBack(), 1000)                return;            };            pageNumber = res.pageNumber + 1;            pageTotal = res.pageTotal;            res.data = res.data.map(v => {                v.discount = v.price == 0;                v.price = CNY(v.price)                return v            })            this.setData({                list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),                total: res.total            })        })    },    /* 支付 */    payment() {        let that = this;        wx.login({            success: (s) => {                _Http.basic({                    "classname": "system.payment.wechatpay",                    "method": "createWechatOrder",                    "content": {                        "orderno": that.data.detail.orderno,                        "wechat_code": s.code,                        "trade_type": "JSAPI"                    }                }).then(res => {                    console.log("获取支付信息", res)                    if (res.data == '失败') return wx.showToast({                        title: res.msg,                        icon: "none",                        mask: true                    });                    wx.requestPayment({                        timeStamp: res.data.timeStamp,                        nonceStr: res.data.nonceStr,                        package: res.data.package,                        signType: res.data.signType,                        paySign: res.data.paySign,                        success(re) {                            console.log(re)                            wx.showToast({                                title: '支付成功',                                mask: true                            })                            that.getDetail();                        },                        fail(err) {                            console.error(err)                            wx.showToast({                                title: '已取消支付',                                icon: "none",                                mask: true                            })                        }                    })                })            },        })    },    /* 删除订单 */    deleteOrder() {        let that = this;        wx.showModal({            title: '提示',            content: '是否确定删除该订单',            complete: (s) => {                if (s.confirm) _Http.basic({                    "classname": "system.payorder.payorder",                    "method": "delete",                    "content": {                        "sys_payorderid": that.data.detail.sys_payorderid                    }                }).then(res => {                    console.log("删除订单", res)                    wx.showToast({                        title: res.msg == '成功' ? '删除成功' : res.msg,                        icon: "none",                        mask: true                    });                    if (res.msg == '成功') setTimeout(() => {                        wx.navigateBack()                    }, 500)                })            }        })    },    /* 查看版本 */    viewDetails() {        this.selectComponent("#inventory").show(this.data.detail.systemapp)    },    onReachBottom() {        this.getList();    },    onUnload() {        let page = getCurrentPages().find(v => v.__route__ == 'pages/teams/index');        if (!page) return;        if (page.data.active.title == '付费订单') {            let content = JSON.parse(JSON.stringify(page.data.content));            content.pageSize = (content.pageNumber - 1) * content.pageSize;            content.pageNumber = 1;            _Http.basic({                "classname": "system.payorder.payorder",                "method": "list",                content            }).then(res => {                console.log('更新列表数据', res)                res.data = res.data.map(v => {                    switch (v.ispaid) {                        case 0:                            v.color = "#FF3B30";                            v.status = '未付费';                            break;                        case 1:                            v.color = '#52C41A';                            v.status = '已付费';                            break;                        case 2:                            v.color = '#ddd';                            v.status = "新建";                            break;                        case 3:                            v.color = '#ddd';                            v.status = "已取消";                            break;                        case 4:                            v.color = '#ddd';                            v.status = "已退费";                            break;                    };                    v.amount = CNY(v.amount);                    return v                })                if (res.msg == '成功') page.setData({                    list: res.data                })            })        }    }})
 |