appraise.js 6.5 KB
// pages/appraise/appraise.js
import {
  request
} from "../../request/index.js"
const a = getApp()
Page({
  data: {
    imagesUrl: a.globalData.baseUrl,
    recommendList: [],
    type: '',
    id: '',
    order_no: '',
    data: [],
    ping: '',
    cnt: '',
    images: [],
    i: 0
  },

  onLoad: function (options) {
    console.log(options);
    this.setData({
      order_no: options.order_no,
    })
    this.getRecommendList()
  },

  // 发布评价
  async onSubmit() {
    let that = this,
      rlist = that.data.recommendList,
      list = [];
    rlist.forEach(function (item, index) {
      let obj = {},
        arr = {};
      obj.id = item.id;
      obj.ping = item.ping;
      obj.cnt = item.cnt;
      obj.images = item.images;
      obj.order_no = that.data.order_no
      list.push(obj)
    })
    try {
      const {
        data
      } = await request({
        url: 'api/my/ping',
        data: list
      })
      console.log(data);
      if (data.code == 1) {
        that.setData({
          msg: data.msg
        })
        that.popMaskTest()
        setTimeout(() => {
          wx.navigateBack()
        }, 2000);
      } else {
        that.setData({
          msg: data.msg
        })
        that.popMaskTest()
      }
    } catch (err) {
      console.log(err);
      that.setData({
        msg: err.msg
      })
      that.popMaskTest()
    }


  },
  popMaskTest() {
    wx.showToast({
      title: this.data.msg,
      duration: 2000,
      icon: 'none',
      mask: true //是否有透明蒙层,默认为false 
      //如果有透明蒙层,弹窗的期间不能点击文档内容 
    })
  },

  // 评价商品
  choosePing(e) {
    let t = this,
      i = e.currentTarget.dataset.i,
      star = e.currentTarget.dataset.type,
      list = t.data.recommendList;
    list[i].ping = star;
    t.setData({
      recommendList: list
    })
  },
  getContent(e) {
    let t = this,
      i = e.currentTarget.dataset.i,
      list = t.data.recommendList;
    list[i].cnt = e.detail.value;
    t.setData({
      recommendList: list
    })
  },

  onReady: function () {

  },
  onShow: function () {

  },
  getRecommendList() {
    let that = this;
    request({
        url: 'api/my/pingGood',
        data: {
          order_no: that.data.order_no,
        }
      })
      .then(res => {
        res.data.data.forEach((item, index) => {
          item.cnt = '';
          item.images = [];
          item.imgList = [];
          item.ping = 1;
        });
        that.setData({
          recommendList: res.data.data
        })
        console.log(that.data.recommendList, "评价");

      }).catch(err => {
        console.log(err);
        that.setData({
          msg: err.msg
        })
        that.popMaskTest()
      })
  },


  chooseImg: function (e) { //上传图片开始
    var that = this;
    that.setData({
      i: e.currentTarget.dataset.i
    })
    let images = that.data.recommendList[e.currentTarget.dataset.i].images
    if (images.length < 10) {
      wx.chooseImage({
        count: 9, // 最多可以选择的图片张数,默认9
        sizeType: ['original', 'compressed'], // original 原图,compressed 压缩图,默认二者都有
        sourceType: ['album', 'camera'], // album 从相册选图,camera 使用相机,默认二者都有
        success: function (res) {
          console.log(res);
          // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片
          var tempFilePaths = res.tempFilePaths;
          console.log(tempFilePaths);

          let successUp = 0; //成功个数
          let failUp = 0; //失败个数
          let i = 0; //第几个
          let length = res.tempFilePaths.length //总共个数
          wx.showNavigationBarLoading()
          wx.showLoading({
            title: '上传中',
          })
          that.uploadAllfile(tempFilePaths, successUp, failUp, i, length);

        },
      });
    } else {
      wx.showToast({
        title: '最多上传9张图片',
        icon: 'none',
        duration: 3000
      });

    }
  },
  // 上传图片至后台
  uploadAllfile(filePaths, successUp, failUp, i, length) {
    let that = this;
    let url = 'api/common/upload';
    let headers = {
      "XX-Token": wx.getStorageSync("token") || '',
      'content-type': 'multipart/form-data'
    }
    wx.uploadFile({
      url: a.globalData.baseUrl + url, //仅为示例,非真实的接口地址
      header: headers,
      filePath: filePaths[i],
      name: 'file',
      formData: {
        file: '',
        filetype: 'image'
      },
      success: function (res) {
        console.log(res)
        wx.hideNavigationBarLoading()
        wx.hideLoading()
        if (res.statusCode == 200) {
          console.log(res)
          let data = JSON.parse(res.data)
          console.log(data);
          if (data.code == 1) {
            console.log(data.data);
            let list = that.data.recommendList;
            list[that.data.i].images.push(data.data.save_path);
            list[that.data.i].imgList.push(data.data.url);
            that.setData({
              recommendList: list
            })
            console.log(that.data.recommendList);

          }
        } else {
          wx.showModal({
            title: '提示',
            content: res.msg,
            showCancel: false
          })
        }
        //do something 返回图片地址
      },
      fail: function (res) {
        wx.hideNavigationBarLoading()
        wx.hideLoading()
        console.log(res);
      },
      complete() {
        i++;
        // let img = t.data.img
        if (i == length) {
          // console.log('总共' + successUp + '张上传成功,' + failUp + '张上传失败!');
        } else {
          //递归调用uploadDIY函数
          that.uploadAllfile(filePaths, successUp, failUp, i, length);
        }
      }

    })

  },
  deleteImg: function (e) { // 删除图片
    console.log(e)
    var that = this;
    var index = e.currentTarget.dataset.index;
    let list = that.data.recommendList
    let x = e.currentTarget.dataset.i
    list[index].images.splice(x, 1);
    list[index].imgList.splice(x, 1);
    this.setData({
      recommendList: list
    })
    console.log(that.data.recommendList)
  },
  previewImg1: function (e) { // 预览图片
    //获取当前图片的下标
    var index = e.currentTarget.dataset.index;
    //所有图片
    var images = this.data.images;
    wx.previewImage({
      //当前显示图片
      current: images[index],
      //所有图片
      urls: images
    })
  },


})