punchAppealDetail.js 8.9 KB
// pages/punchAppealDetail/punchAppealDetail.js
const app = getApp();
Page({

    /**
     * 页面的初始数据
     */
    data: {
        status: 1,//1:审核中,2:已通过,3:未通过
        reason: '',
        id: 1,
        image: [],
        image_params:[],
        disabled:true,
        new_images:[],
    },
//补充提交申诉
    againSubmit(e) {
        const self = this;
        // console.log(self.data.new_images);
        if (self.data.image.length === 0) {
            wx.showToast({title: '请上传申诉照片!', icon: 'none'})
        } else {
            let url = '/portal/Experiment/user_complain_second';
            let header = {
                "XX-token": wx.getStorageSync('token')
            };
            let params = {
                id: self.data.id,//申诉id
                images: self.data.new_images,
                description: this.data.reason,
                formId: e.detail.formId,
            };
            app.post(url, params, header).then((res) => {
                // console.log('补充提交结果', res);
                if (res.data.is_success) {
                    wx.showToast({
                        title: '二次申诉成功',
                        icon: 'success',
                        success: function () {
                            setTimeout(function () {
                                wx.navigateBack({
                                    delta: 1,
                                })
                                //     self.setData({image: '',image1: '',imag2: '',current: 1})
                            }, 500)
                        }
                    })
                }
            })
        }

    },
    //上传图片
    uploadImg(e) {
        const current = +e.currentTarget.dataset.current;
        // console.log(current);
        const self = this;
        // console.log('status=3才可上传',self.data.detail.status);
        // self.setData({current:current})
        if (self.data.detail.status === 3) {
            wx.chooseImage({
                count: 3, //最多可以选择的图片总数
                sizeType: ['compressed'], // 可以指定是原图还是压缩图,默认二者都有
                sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
                success: function (res) {
                    // console.log(res.tempFilePaths[0]);
                    // const tempFilePaths = res.tempFilePaths[0];
                    // self.setData({[`image[${current}]`]: tempFilePaths});


                    const tempFilePaths = res.tempFilePaths;
                    let token = wx.getStorageSync('token');
                    let uploadImgCount = 0;
                    for (let i = 0, h = tempFilePaths.length; i < h; i++) {
                        wx.uploadFile({
                            url: 'https://kexueduizhang.cn/api/user/Upload/one',
                            filePath: tempFilePaths[i],
                            name: 'file',
                            formData: {
                                'imgIndex': i
                            },
                            header: {
                                'content-type': 'application/x-www-form-urlencoded',
                                'XX-Token': token,
                                'XX-Device-Type': 'wxapp',
                            },
                            success: function(res) {
                                uploadImgCount++;
                                let data = JSON.parse(res.data);
                                // console.log('data',data);
                                if (data.code == 20000) {
                                    //服务器返回格式: { "Catalog": "testFolder", "FileName": "1.jpg", "Url": "https://test.com/1.jpg" }
                                    // let image_params = self.data.image;
                                    if (current === 0) { //点击第一个照片
                                        // image_params[0].local_url = data.data.local_url;
                                        // console.log('进入0',image_params[0].local_url);

                                        self.setData({[`image[${current}].url`]: data.data.url,[`image_params[${current}].local_url`]:data.data.local_url});

                                    } else if (current === 1) { //点击第二个照片
                                        // console.log('进入1');

                                        self.setData({[`image[${current}].url`]: data.data.url,[`image_params[${current}].local_url`]:data.data.local_url});
                                    } else { //点击第三个照片
                                        // console.log('进入2');

                                        self.setData({[`image[${current}].url`]: data.data.url,[`image_params[${current}].local_url`]:data.data.local_url});
                                    }
                                    // console.log('image_params', self.data.image_params);
                                    // console.log('image', self.data.image);
                                    // const images = [];
                                    const new_images = [];
                                    // images.push(self.data.image_params,self.data.image_params1,self.data.image_params2);
                                    self.data.image_params.map((item)=> {
                                        if(item.local_url !== "") {
                                            // console.log('item', item);
                                            new_images.push(item.local_url)
                                        }
                                    });
                                    self.setData({new_images: new_images.join(',')});
                                    // console.log('new_images',new_images,new_images.join(','),'image',self.data.image);

                                }else {
                                    wx.showModal({
                                        title: '提示',
                                        content: data.msg,
                                        showCancel: false
                                    })
                                }
                            },
                            fail: function(res) {
                                wx.hideToast();
                                wx.showModal({
                                    title: '错误提示',
                                    content: '上传图片失败',
                                    showCancel: false,
                                    success: function(res) {}
                                })
                            }
                        });
                    }
                },
            })
        }
    },
    //重新输入申诉理由
    reasonInput(e) {
        this.setData({reason:e.detail.value})
    },
    //获取申诉详情
    getAppealInfo() {
        let url = '/portal/Experiment/user_complain_detail';
        let header = {
            "XX-token": wx.getStorageSync('token')
        };
        let params = {
            id: this.data.id,//申诉id
        };
        app.post(url, params, header).then((res) => {
            // console.log('申诉详情', res);
            // (1,审核中、2,已通过、3,未通过、4,二次审核中;5,二次审核已通过;6,二次审核未通过)
            if (res.info.status === 4 || res.info.status === 5 || res.info.status === 6) {
                this.setData({detail: res.info, image: res.info.re_images})
            } else {
                if(res.info.status === 3) { //二次申诉时开启textarea
                    this.setData({disabled:false})
                }
                this.setData({detail: res.info, image: res.info.images,image_params:res.info.images})
            }
        })
    },
    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        const self = this;
        // console.log('options', options);
        self.setData({
            // status: options.status,
            test_name: options.test_name ? options.test_name : '',
            id: +options.id ? +options.id : '',
        });
        self.getAppealInfo();
    },

    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {

    },

    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {

    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {

    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})