const _Http = getApp().globalData.http;
let sa_brandid = null,
  sys_enterpriseid = null;
import {
  fileList
} from "../../utils/FormatTheAttachment";
import currency from "../../utils/currency";

Page({
  data: {
    loading: true,
    content: {
      sa_itemgroupid: null,
      spec: "", //规格
      color: "", //颜色
      material: "", //材质
      cheek: "", //边框
    }
  },
  onLoad(options) {
    let data = JSON.parse(options.params);
    sa_brandid = data.sa_brandid;
    if (wx.getStorageSync('userrole') == '业务员') sys_enterpriseid = data.sys_enterpriseid
    this.data.content.sa_itemgroupid = data.sa_itemgroupid;
    this.setData({
      userrole: wx.getStorageSync('userrole')
    })
    this.getDetail(true);
  },
  /* 获取详情 */
  getDetail(init = false) {
    let content = this.data.content;
    if (sys_enterpriseid) content.sys_enterpriseid = sys_enterpriseid;
    _Http.basic({
      "id": "20221223165503",
      content
    }).then(res => {
      wx.hideLoading();
      console.log("商品详情", res)
      if (res.msg != '成功') return wx.showToast({
        title: res.msg,
        icon: "none"
      })
      if (res.data.item.length == 0) return wx.showToast({
        title: '未查询到商品',
        icon: "none",
        mask: true
      })
      this.handleFiles(res.data.item[0].attinfos)
      const CNY = sum => currency(sum, {
        symbol: "￥",
        precision: 2
      }).format();
      res.data.item[0].gradeprice = CNY(res.data.item[0].gradeprice);
      res.data.item[0].marketprice = CNY(res.data.item[0].marketprice);
      this.setData({
        content,
        detail: res.data.item[0],
        specRows: res.data.specRows,
        cheekRows: res.data.cheekRows,
        materialRows: res.data.materialRows,
        colorRows: res.data.colorRows,
        loading: false
      });
    })
  },
  /* 预览媒体 */
  viewMedias(e) {
    const {
      index,
      type
    } = e.currentTarget.dataset;
    wx.previewMedia({
      current: index,
      sources: type == 'image' ? this.data.files.viewImages : this.data.files.viewVideos,
    })
  },
  /* 处理附件 */
  handleFiles(arr) {
    let files = {
        images: [],
        viewImages: [],
        videos: [],
        viewVideos: [],
        files: []
      },
      list = fileList(arr);
    list.forEach(v => {
      switch (v.fileType) {
        case "video":
          files.videos.push(v)
          files.viewVideos.push({
            url: v.url,
            type: "video",
            poster: v.subfiles[0].url
          })
          break;
        case "image":
          files.images.push(v)
          files.viewImages.push({
            url: v.url,
            type: "image"
          })
          break;
        default:
          files.files.push(v)
          break;
      }
    });
    this.setData({
      files
    })
  },
  /* 切换产品 */
  changeItemno(e) {
    console.log("切换产品", e.currentTarget.dataset)
    const {
      value,
      valuename
    } = e.currentTarget.dataset,
      content = this.data.content;
    if (!value.flag) return;
    wx.showLoading({
      title: '加载中...',
      mask: true
    })
    content[valuename] = (content[valuename] == value.parm) ? "" : value.parm;
    this.getDetail()
  },
  clickBut() {
    this.data.detail.tradefield.length >= 2 ? wx.showToast({
      title: '请选择加入产品领域',
      icon: "none",
      duration: 3000
    }) : this.handleStorage(0);
  },
  /* 打开文档 */
  openDocument(e) {
    const {
      item
    } = e.currentTarget.dataset;
    console.log(item)
    wx.showLoading({
      title: '加载中...',
      mask: true,
    })
    wx.downloadFile({
      url: item.url,
      success: function (res) {
        const filePath = res.tempFilePath
        wx.openDocument({
          filePath: filePath,
          showMenu: true,
          fileType: item.postfix,
          success: function (res) {
            wx.hideLoading();
            console.log('打开文档成功')
          },
          fail(e) {
            console.log(e)
            wx.showToast({
              title: '打开失败',
              icon: "error",
              mask: true
            })
          }
        })
      },
      fail(e) {
        console.log(e)
        wx.showToast({
          title: '打开失败',
          icon: "error",
          mask: true
        })
      }
    })
  },
  /* 选择领域 */
  storage(e) {
    this.handleStorage(e.detail.value)
  },
  handleStorage(index) {
    let detail = this.data.detail;
    _Http.basic({
      "id": 20220924095102,
      "content": {
        sa_brandid,
        "itemid": detail.itemid, //货品id
        "qty": detail.orderminqty, //数量
        itemno: detail.itemno, //货品编号
        tradefield: detail.tradefield[index].tradefield
      },
    }).then(res => {
      console.log("加入购物车", res)
      wx.showToast({
        title: res.msg == '成功' ? '加入成功' : res.msg,
        icon: "none"
      });
      if (res.msg == '成功') getApp().globalData.getCollectCount()
    })
  }
})