// pages/agent/serviceBillDetail/index.js
import api from '../../api/api'
// import Dialog from 'tdesign-miniprogram/dialog/index';
Page({

  /**
   * 页面的初始数据
   */
  data: {
    showWithInput:false,  
    showToWoker:false, 
    orderMainData:{},
    list:[],
    templist:[],
    actTemp:null,
    actLeader:null
  },
  async mainData () {
    const res = await api._post({
      "id": "20230206091603",
      "version":1,
      "content": {
        "sa_serviceorderid":this.data.id
      }
    })
    this.setData({
      orderMainData:res.data
    })
    this.productmx()
    this.fileData()
    this.workOrderTemp()
    this.workerData()
  },
  async fileData () {
    const res = await api._post({
      "method": "queryFileLink",
      "classname": "system.attachment.Attachment",
      "content": {
        "ownertable": "sa_serviceorder",
        "ownerid": this.data.id,
        "usetype":"附件"//传空返回有所
      }
    })
    this.setData({
      filelist:res.data,
      refresh:true
    })
  },
  addProduct () {
    wx.navigateTo({
      url: '/Eservice/workerLeader/billCanUseProduct/index',
    })
  },

  async getAdd(selection) {
    const res = await api._post({
      "id": "20230206161803", 
      "version": 1, 
      "content": {
        "sa_serviceorderid": this.data.id,
        "iteminfos":selection.map(e=>{
          return {
            "sa_serviceorderitemsid": 0, 
            "itemid": e, 
            "reason": ""
          }
        })
      }
    })
    this.productmx()
  },

  async productmx () {
    const res = await api._post({
      "id": "20230206161903", 
      "version": 1, 
      "content": {
        "sa_serviceorderid": this.data.id
      }
    })
    this.setData({
      list:res.data
    })
  },
  async onMXDelete (data) {
    let itemid = data.detail.sa_serviceorderitemsid
    const res = await api._post({
      "id": "20230206162003",
      "content": {
        "sa_serviceorderitemsids": [itemid]
      }
    })
    this.productmx()
  },
  onEdit () {

    getApp().globalData.handelSelect = this

    wx.navigateTo({
      url: '/Eservice/workerLeader/editServiceBill/index',
    })
  },
   onSubmit() {
    let that = this
    const dialogConfig = {
      context: this,
      title: '提示',
      content: '确认提交当前申请单吗',
      confirmBtn: '确定',
      cancelBtn: '取消',
    };

    Dialog.confirm(dialogConfig)
      .then(async () => {
        const res = await api._post({
          "id": "20230206101403",
          "version":1,
          "content": {
            "sa_serviceorderid":that.data.id,
            "issumbit":1,
          }
        })
        that.mainData()
      })
      .catch((err) => console.log(err))
      .finally(() => Dialog.close());
  },
  showBackReason () {
    this.setData({
      showWithInput:!this.data.showWithInput
    })
  },
  inputReason (data) {
    console.log(data)
    this.data.backreason = data.detail.value
  },
  async onBack() {
    let that = this
    const res = await api._post({
      "id": "20230206101403",
      "version":1,
      "content": {
        "sa_serviceorderid":that.data.id,
        "issumbit":0,
        "backreason":that.data.backreason
      }
    })
    that.mainData()
  },
  onDelete() {
    let that = this
    const dialogConfig = {
      context: this,
      title: '提示',
      content: '确认删除当前申请单吗',
      confirmBtn: '确定',
      cancelBtn: '取消',
    };

    Dialog.confirm(dialogConfig)
      .then(async () => {
        const res = await api._post({
          "id": "20230206091803",
          "version":1,
          "content": {
            "sa_serviceorderids":[that.data.id],
          }
        })
        wx.navigateBack()
        
      })
      .catch((err) => console.log(err))
      .finally(() => Dialog.close());
  },

  async workOrderTemp () {
    const res = await api._post({
      "id": "20230206155803",
      "version":1,
      "content": {
      }
    })
    this.setData({
      templist:res.data
    })
  },
  showWorkerDialog () {
    this.setData({
      showToWoker:!this.data.showToWoker
    })
  },
  selectTemp (data) {
    this.setData({
      actTemp:data.currentTarget.dataset.item
    })
  },

  async workerData () {
    const res = await api._post({
      "id": "20230213143003",
      "version":1,
      "content": {
        "where":{
          "condition":""
        }
      }
    })
    this.setData({
      workers:res.data
    })
  },
  selectLeader (data) {
    this.setData({
      actLeader:data.currentTarget.dataset.item
    })
  },
  async toWorker () {
    console.log(this.data.actTemp)
    if (!this.data.actTemp && !this.data.actLeader) {
      wx.showToast({
        title: '未选择工单模板或负责人',
        icon:'none'
      })
    } else {
      const res = api._post({
        "id": "20230207091003",
        "content": {
          "type":this.data.actTemp.type,
          "sa_serviceorderid":this.data.id,
          "projectlearders":[this.data.actLeader.userid]
        }
      })
      this.setData({
        showToWoker:false
      })
      this.mainData()
    }
    
  },
  async linkWorkOrder() {
    const res = await api._post({
      "id": "20230207154203",
      "version":1,
      "content": {
        "sa_serviceorderid":this.data.id
      }
    })
    this.setData({
      linkWorkOrders:res.data
    })
  },
  tolinkWorkOrder (e) {
    let id = e.currentTarget.dataset.item.sa_workorderid

    let app = getApp()

    app.globalData.action = ['editLeader']

    wx.navigateTo({
      url: '/Eservice/workerLeader/editworkOrderDetail/index?id=' + id
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.setData({
      id:options.id
    })
    this.linkWorkOrder()
  },

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

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {
    this.mainData()
  },

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

  },

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

  },

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

  },

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

  },

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

  }
})