var util = require('../../../utils/util.js')
const app = getApp();
Page({


  data: {
    customerNameList: [
      // {id: 11, name: "海文牧场"}, {id: 22, name: "成宏牧场"}, {id: 32, name: "瑞福牧业"}
    ],
    customerIndex:'',
    customerId:'',

    allDisabled:true,
    receiverShow:false,
    r_txt_Show:false,
    receiverChoose:'false',
    telephone:"",
    scenePhotoUrlList:[],

    receiverNameList: [
      // {id: 56, name: "苗舒怡"},{id: 57, name: "颛孙洋洋"},{id: 58, name: "李涛"}
    ],
    receiverIndex:'',
    receiverId:'',
    nextNameList: [
      // {id: 222, name: "拜访"}, {id: 223, name: "远程服务"}, {id: 224, name: "现场服务"}
    ],
    nextIndex:'',
    nextId:'',
    groupId: '', 
    groupName: '',
 
    picIsLoading:false,
    rules: {
      customerName: [{ required: true, message: '客户必填', trigger: 'blur' }],
      vdate: [{ required: true, message: '拜访日期必填', trigger: 'blur' }],
      location: [{ required: true, message: '必填', trigger: 'blur' }],
      receiverName: [{ required: true, message: '接待人必填', trigger: 'blur' }],
      receiverTel: [{ required: true, message: '电话必填', trigger: 'blur' }],
      scenePhoto: [{ required: true, message: '照片必填', trigger: 'blur' }],
      content: [{  required: true, message: '情况说明必填', trigger: 'blur' }] 
    },
    // 新增/编辑
    create: {
        dialogStatus: '',
        temp: {
           customerId: '', 
           customerName: '', 
           groupId: '', 
           groupName: '', 
           vdate: util.getToday(), 
           visiterId: '', 
           visiterName: '', 
           receiverId: '', 
           receiverName: '', 
           receiverTel: '', 
           remark: '', 
           content: '', 
           nextId: '', 
           nextName: '', 
           location: '', 
           created: util.getToday(), 
           receiverChoose: 'true',
           vPhoto1: -1, vPhoto2: -1, vPhoto3: -1, vPhoto4: -1,vPhoto5: -1,vPhoto6: -1,vPhoto7: -1,vPhoto8: -1,vPhoto9: -1,
           picname1: '', picname2: '', picname3: '', picname4: '', picname5: '', picname6: '', picname7: '', picname8: '', picname9: '', 
        },
        
    }
  },

  onLoad: function (options) {
    // 表单初始化
    wx.lin.initValidateForm(this)

    var id = options.id;
    //获取编辑内容
    util.getDataByName({ name:'getVisitById', parammaps: {"id":id} }, this.getShowList)
  },
  getShowList:function(res){
    console.log('展示数据======>', res.data.list)
    var customerId = res.data.list[0].customerId
    this.setData({
      ['create.temp']:  res.data.list[0],
      customerId: res.data.list[0].customerId, 
      receiverId: res.data.list[0].receiverId, 
      nextId: res.data.list[0].nextId
    })
    //获取下一步
    util.getDataByName({ name: 'getDictListSelect4', parammaps: { "pid": "55" } }, this.getPickerList3)
   


    var picname1 = res.data.list[0].picname1
    var picname2 = res.data.list[0].picname2
    var picname3 = res.data.list[0].picname3
    var picname4 = res.data.list[0].picname4
    var picname5 = res.data.list[0].picname5
    var picname6 = res.data.list[0].picname6
    var picname7 = res.data.list[0].picname7
    var picname8 = res.data.list[0].picname8
    var picname9 = res.data.list[0].picname9
    var scenePhotoUrlList = []

    if(picname1 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname1)}
    if(picname2 != undefined){scenePhotoUrlList.push(app.globalData.g_url + picname2)}
    if(picname3 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname3)}
    if(picname4 != undefined){scenePhotoUrlList.push(app.globalData.g_url + picname4)}
    if(picname5 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname5)}
    if(picname6 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname6)}
    if(picname7 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname7)}
    if(picname8 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname8)}
    if(picname9 != undefined ){scenePhotoUrlList.push(app.globalData.g_url + picname9)}
    console.log(scenePhotoUrlList)

    this.setData({
      scenePhotoUrlList:scenePhotoUrlList
    })
   
   
    //获取接待人
    //util.getDataByName({name: 'getContacts',returntype: 'Map',parammaps: { "customerId": customerId }}, this.getPickerList2)
  },
   
  // getPickerList2:  function (res) {
  //   console.log('接待人下拉数据======>', res.data.list)
  //   const id = this.data.receiverId
  //   const receiverIndex = res.data.list.findIndex(obj => obj.id == id) 
  //   this.setData({
  //     receiverNameList: res.data.list,
  //     receiverIndex: receiverIndex
  //   })
  // },
  getPickerList3:  function (res) {
    console.log('下一步下拉数据======>', res.data.list)
    const id = this.data.nextId
    console.log('下一步id======>',id)
    const nextIndex = res.data.list.findIndex(obj => obj.id == id) 
    this.setData({
      nextNameList: res.data.list,
      nextIndex: nextIndex
    })
  },


   
  //日期选择触发
  on_vdate_tap:function(e){
    this.setData({
      ['create.temp.vdate']:e.detail.value
    })
  },
  //日期选择确定
  on_vdate_sure: function (e) {
    this.setData({
      ['create.temp.vdate']: e.detail
    })
  },
  //下拉框：接待人
  change_receiver:function(e){
    console.log('receiver的选项', e.detail.value)
    var newId = this.data.receiverNameList[e.detail.value]['id']
     this.setData({
       receiverIndex: e.detail.value,
       receiverId: newId,
       ['create.temp.receiverId']: newId,
     })
  },
  //下拉框：下一步计划
  change_next:function(e){
    console.log('next的选项', e.detail.value)
    var newId = this.data.nextNameList[e.detail.value]['id']
     this.setData({
       nextIndex: e.detail.value,
       nextId: newId,
       ['create.temp.nextId']: newId,
     })
  },


  
  //接待人文本框输入
  change_receiver_input:function(e){
    var value =e.detail.value
    var customerId = this.data.customerId
    console.log(value)
    //接待人列表框
    util.getDataByName({ name:'getContactsByNameApp',parammaps: {"customerId":customerId,"contactName":value,} }, this.getPickerList2)
  },
  getPickerList2:  function (res) {
    console.log('接待人下拉数据======>', res.data.list)
    var receiverNameList = res.data.list
    this.setData({
      receiverShow:true,
      allDisabled:false,
      receiverNameList: receiverNameList
    })
    if(receiverNameList !== null){
      this.setData({r_txt_Show:false})
    } else {
      this.setData({r_txt_Show:true})
    }
  },
  //接待人列表点击
  on_rece_tap: function (e) {
    console.log("接待人列表点击",e )
    var newId = e.currentTarget.dataset.id;
    var name = e.currentTarget.dataset.name;
    var that = this

    this.setData({
      receiverShow:false,
      allDisabled:true,
      ['create.temp.receiverName']: name,
      ['create.temp.receiverId']: newId,
      receiverChoose: 'true' 
    })
    //获取电话
    util.getDataByName({name: 'getTelById',returntype: 'Map',parammaps: { id: newId }
    }, function(e){
      console.log(e)
  
      var telephone = e.data.list[0].telephone
      that.setData({
        ['create.temp.receiverTel']: telephone, 
        telephone: telephone 
      })
    })
  
  },
  //接待人完成
  confirm_receiver_input:function(e){
    console.log("接收人直接输入")
    this.setData({
      receiverShow:false,
      allDisabled:true,
      receiverChoose: 'false' 
    })
  },


    //新增现场照片照片
    change_scenePhoto:function(e){
      console.log("选择现场照片照片",e)
      if(this.data.picIsLoading){
          wx.showToast({title: '照片正在上传中，请稍等！',icon: 'none',duration: 2000})
      } else {
        var that = this
        var list  = e.detail.all
        this.setData({
          scenePhotoUrlList:list
        })
      
        console.log(app.globalData.g_token)
        var tempFile = e.detail.current[0]
        var allFile = e.detail.all
    
        allFile.forEach(function(item,index){
          that.setData({picIsLoading:true})
          console.log(item)
          console.log(index)
          console.log(index+1)
          var i = index+1
            wx.uploadFile({
              url: app.globalData.g_url +'authdata/uploaderimage', 
              filePath: item,
              name: 'file',
              header: {
                optname: 'insertcustompic',
                id: 1,
                token: app.globalData.g_token
                
              },
              formData: {
                optname: 'insertcustompic',
                id: 1,
                token: app.globalData.g_token
              },
              success (res){
                console.log( "上传图片后返回的",res.data )
                var LastInsertId = JSON.parse(res.data).execresult.LastInsertId
                console.log("scenePhotoUrlList的个数",that.data.scenePhotoUrlList.length)
                console.log("LastInsertId",LastInsertId)
                that.data.create.temp["vPhoto" +i] = LastInsertId
              
                console.log(that.data.create.temp)
                that.setData({picIsLoading:false})
                
              }
            })
    
        })
      }
      
  
   
  
    },
    //删除现场照片照片
    clear_scenePhoto:function(e){
      console.log("删除现场照片",e)
      var that = this
      var list  = e.detail.all
      var index = e.detail.index
      
      this.setData({
        scenePhotoUrlList:list
      })
  
      console.log("选择现场照片",this.data.create.temp.vPhoto1)
      console.log("选择现场照片",this.data.create.temp.vPhoto2)
      console.log("选择现场照片",this.data.create.temp.vPhoto3)
      var vPhoto1 = this.data.create.temp.vPhoto1
      var vPhoto2 = this.data.create.temp.vPhoto2
      var vPhoto3 = this.data.create.temp.vPhoto3
      var vPhoto4 = this.data.create.temp.vPhoto4
      var vPhoto5 = this.data.create.temp.vPhoto5
      var vPhoto6 = this.data.create.temp.vPhoto6
      var vPhoto7 = this.data.create.temp.vPhoto7
      var vPhoto8 = this.data.create.temp.vPhoto8
      var vPhoto9 = this.data.create.temp.vPhoto9
      if(index == 0){
        this.setData({
          ['create.temp.vPhoto1']: vPhoto2,
          ['create.temp.vPhoto2']: vPhoto3,
          ['create.temp.vPhoto3']: vPhoto4,
          ['create.temp.vPhoto4']: vPhoto5,
          ['create.temp.vPhoto5']: vPhoto6,
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      }else if(index == 1){
        this.setData({
          ['create.temp.vPhoto2']: vPhoto3,
          ['create.temp.vPhoto3']: vPhoto4,
          ['create.temp.vPhoto4']: vPhoto5,
          ['create.temp.vPhoto5']: vPhoto6,
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      }else if(index == 2){
        this.setData({
          ['create.temp.vPhoto3']: vPhoto4,
          ['create.temp.vPhoto4']: vPhoto5,
          ['create.temp.vPhoto5']: vPhoto6,
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 3){
        this.setData({
          ['create.temp.vPhoto4']: vPhoto5,
          ['create.temp.vPhoto5']: vPhoto6,
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 4){
        this.setData({
          ['create.temp.vPhoto5']: vPhoto6,
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 5){
        this.setData({
          ['create.temp.vPhoto6']: vPhoto7,
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 6){
        this.setData({
          ['create.temp.vPhoto7']: vPhoto8,
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 7){
        this.setData({
          ['create.temp.vPhoto8']: vPhoto9,
          ['create.temp.vPhoto9']: -1,
        })
      } else if(index == 8){
        this.setData({
          ['create.temp.vPhoto9']: -1,
        })
      }
    },


  //保存
  submit:function(e){
    
    var detail_value = e.detail.values
    var detail_errors = e.detail.errors
    var detail_errors = e.detail.errors
    console.log("detail_value",detail_value)
    console.log("create.temp",this.data.create.temp)


    const submit_data = Object.assign({}, this.data.create.temp, detail_value)
   
    console.log("保存发送：",submit_data)

    submit_data.receiverChoose = this.data.receiverChoose

 
    var send_data = {
      "common": { "returnmap": "0" },
      "data": [
        {
          "name": "insertContactsNewApp", "type": "e",
          "parammaps": {
            "customerId": submit_data.customerId,
            "contactName": submit_data.receiverName,
            "telephone": submit_data.receiverTel,
            "address": "",
            "remark": submit_data.remark,
            "receiverChoose": this.data.receiverChoose
          }
        },
        {
          "name": "updateVisitApp",
          "resultmaps": {
            "list": [submit_data]
          },
          "children": [{
            "name": "updateVisitApp",
            "type": "e",
            "parammaps": {
              "vdate": "@updateVisitApp.vdate",
              "visiterId": "@updateVisitApp.visiterId",
              "receiverName": "@updateVisitApp.receiverName",
                "receiverTel": "@updateVisitApp.receiverTel",
                "remark": "@updateVisitApp.remark",
                "content": "@updateVisitApp.content",
                "nextId": "@updateVisitApp.nextId",
                "id": "@updateVisitApp.id",
                "vPhoto1": "@updateVisitApp.vPhoto1",
                "vPhoto2": "@updateVisitApp.vPhoto2",
                "vPhoto3": "@updateVisitApp.vPhoto3",
                "vPhoto4": "@updateVisitApp.vPhoto4",
                "vPhoto5": "@updateVisitApp.vPhoto5",
                "vPhoto6": "@updateVisitApp.vPhoto6",
                "vPhoto7": "@updateVisitApp.vPhoto7",
                "vPhoto8": "@updateVisitApp.vPhoto8",
                "vPhoto9": "@updateVisitApp.vPhoto9"
            }
          }]
        }
      ]
    }


    console.log("send_data",JSON.stringify(send_data))



    console.log("send_data发送：",send_data)
    //验证必填项是否为空
    if(submit_data.customerId == ""){
      wx.showToast({title: '客户名称必填',icon: 'none',duration: 2000})
    } else if(submit_data.vdate == ""){
      wx.showToast({title: '拜访日期必填',icon: 'none',duration: 2000})
    } else if(submit_data.receiverName == ""){
      wx.showToast({title: '接待人必填',icon: 'none',duration: 2000})
    } else if(submit_data.receiverTel == ""){
      wx.showToast({title: '接待人电话必填',icon: 'none',duration: 2000})
    } else if(submit_data.content == ""){
      wx.showToast({title: '情况说明必填',icon: 'none',duration: 2000})
    }  else if(this.data.picIsLoading){
      wx.showToast({title: '照片正在上传中，请稍等！',icon: 'none',duration: 2000})
    }  else {
      if( wx.getStorageSync('isLoading')  == "true"){
        wx.showToast({
          title: '正在保存中，请稍等！',
          icon: 'none',
          duration: 2000
        })
      } else {
        util.execDataByConfig(send_data, this.getListSuccess)
      }
    }
  },

  getListSuccess:  function (res) {
    console.log('table数据======>', res)
    if (res.msg !== 'fail') {
      wx.showToast({
        title: '保存成功',
        icon: 'success',
        duration: 2000,
        success: function(){
          wx.redirectTo({ url:"../visitRecord/visitRecord"})
        }
      })
      
       
    } else {
      wx.showToast({
        title: '保存失败',
        icon: 'error',
        duration: 2000,
      })
    }
  }

})