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:"",
    receiverNameList: [
      // {id: 56, name: "苗舒怡"},{id: 57, name: "颛孙洋洋"},{id: 58, name: "李涛"}
    ],
    receiverIndex:'',
    receiverId:'',
    visitNameList: [
      // {id: 222, name: "拜访"}, {id: 223, name: "远程服务"}, {id: 224, name: "现场服务"}
    ],
    visitIndex:'',
    visitId:'',
    telvisitNameList: [
      // {id: 222, name: "拜访"}, {id: 223, name: "远程服务"}, {id: 224, name: "现场服务"}
    ],
    telvisitIndex:'',
    telvisitId:'',
    groupId: '', 
    groupName: '',

   
   
 
    rules: {
      customerName: [{ required: true, message: '客户必填', trigger: 'blur' }],
      rdate: [{ required: true, message: '拜访日期必填', trigger: 'blur' }],
      // visiterId: [{ required: true, message: '必填', trigger: 'blur' }],
      receiverName: [{ required: true, message: '接待人必填', trigger: 'blur' }],
      content: [{  required: true, message: '情况说明必填', trigger: 'blur' }],
    },
    // 新增/编辑
    create: {
        dialogStatus: '',
        temp: {
           customerId: '', 
           customerName: '', 
           groupId: '', 
           groupName: '', 
           rdate: util.getToday(), 
           employeeId: '', 
           employeeName: '', 
           receiverId: '', 
           receiverId2: '@insertContactsNew.LastInsertId', 
           receiverName: '', 
           remark: '', 
           content: '', 
           visitId: '', 
           visitName: '', 
           telvisitId: '', 
           telvisitName: '',
           created: util.getToday(), 
           receiverChoose: 'true' 
        },
        
    }
  },

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

    var id = options.id;
    //获取编辑内容
    util.getDataByName({ name:'getRemoteById', 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],
      
      ['create.temp.rdate']:  res.data.list[0].remoteBeginDate,

      customerId: res.data.list[0].customerId, 
      receiverId: res.data.list[0].receiverId, 
      visitId: res.data.list[0].visitId,
      telvisitId: res.data.list[0].telvisitId
    })
    //获取接待人
   // util.getDataByName({name: 'getContacts',returntype: 'Map',parammaps: { "customerId": customerId }}, this.getPickerList2)
    //获取拜访记录
    util.getDataByName({name: 'getVisitByCustomerId',returntype: 'Map',parammaps: {  "customerId": customerId }}, this.getPickerList3)
    //获取回访记录
    util.getDataByName({name: 'getTelvisitByCustomerId',returntype: 'Map',parammaps: {  "customerId": customerId  }}, this.getPickerList4)
    
  },

 
  // 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.visitId
    console.log('拜访下拉数据id======>',id)
    const visitIndex = res.data.list.findIndex(obj => obj.id == id) 
    this.setData({
      visitNameList: res.data.list,
      visitIndex: visitIndex
    })
  },
  getPickerList4:  function (res) {
    console.log('回访下拉数据======>', res.data.list)
    const id = this.data.telvisitId
    console.log('回访下拉数据id======>',id)
    const telvisitIndex = res.data.list.findIndex(obj => obj.id == id) 
    this.setData({
      telvisitNameList: res.data.list,
      telvisitIndex: telvisitIndex
    })
  },
 
  //日期选择触发
  on_rdate_tap:function(e){
    this.setData({
      ['create.temp.rdate']:e.detail.value
    })
  },
   
  //下拉框：接待人
  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_visit:function(e){
    console.log('change_visit的选项', e.detail.value)
    var newId = this.data.visitNameList[e.detail.value]['id']
     this.setData({
       visitIndex: e.detail.value,
       visitId: newId,
       ['create.temp.visitId']: newId,
     })
  },
  //下拉框：回访记录
  change_telvisit:function(e){
    console.log('cchange_telvisit的选项', e.detail.value)
    var newId = this.data.telvisitNameList[e.detail.value]['id']
     this.setData({
        telvisitIndex: e.detail.value,
        telvisitId: newId,
       ['create.temp.telvisitId']: 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' 
    })
  },
  
  //保存
  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)
    submit_data.receiverChoose = this.data.receiverChoose
    console.log("保存发送：",submit_data)
    
     
   
   
    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": "updateRemoteApp", "type": "e",
          "parammaps": submit_data
        }
      ]
    }


       //验证必填项是否为空
       if(submit_data.customerId == ""){
        wx.showToast({title: '客户名称必填',icon: 'none',duration: 2000})
      } else if(submit_data.rdate == ""){
        wx.showToast({title: '服务日期必填',icon: 'none',duration: 2000})
      } else if(submit_data.receiverName == ""){
        wx.showToast({title: '客户对接人必填',icon: 'none',duration: 2000})
      } else if(submit_data.content == ""){
        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:"../remoteService/remoteService"})
        }
      })
    } else {
      wx.showToast({
        title: '保存失败'+res.data,
        icon: 'error',
        duration: 2000,
      })
    }
  },

 
  
  onReady: function () {

  },

  
  onShow: function () {

  },

 
  onHide: function () {

  },

   
  onUnload: function () {

  },

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

  },

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

  },

 
  onShareAppMessage: function () {

  }
})