//index.js
//获取应用实例
// 请注意常量的命名必须是Page
const Page = require('../../utils/ald-stat.js').Page;
const app = getApp();
Page({
 /**
  * 页面的初始数据
  */
 data: {
  showdoctor: false, //是否显示首页医生信息
  show_notest: false, //显示有记录和无记录之间的切换
  showfilesLog: false, //是否显示最新记录(没有记录不显示)
  showdoc_adv:true,
  articlelist:[],
  filesLogdata: '', //档案数量
  doctorinfo: [], //医生信息
  fileslog: {}, //最新记录
 },
 goaddrecord(files_id, patient) {
  wx.navigateTo({
   url: '/pages/addrecord/addrecord?fields_id=' + files_id + '&patient=' + patient,
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 gointroduce(e) {
  wx.navigateTo({
   url: '/pages/introduce/introduce?doctor_id=' + e.currentTarget.dataset.id,
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 gonormal() {
  wx.navigateTo({
   url: '/pages/normal/normal',
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 goarticle() {
  wx.navigateTo({
   url: '/pages/article/article',
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 gorecord(e) {
  let that = this;
  if (that.data.showfilesLog) {
   wx.navigateTo({
    url: '/pages/record/record?showrecord=' + e.currentTarget.dataset.showrecord + '&files_id=' +
     e.currentTarget.dataset.files_id,
   })
  } else {
   wx.showToast({
    title: '暂无记录',
    icon: 'none',
    duration: 2000,
   })
  }
 },
 gofile_manage(files_id) { 
  wx.navigateTo({
   url: '/pages/file_manage/file_manage?files_id=' + files_id,
  })
 },
 //到文章详情
 goarticle_details(e) {
  wx.navigateTo({
   url: '/pages/article_detail/article_detail?id=' + e.currentTarget.id,
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 //判断是否有医生id和是否登陆
 ifdoctorid(openid) {
  let that = this;
    let url = 'public/checkOpenid';
    let params = {
     openid:openid
    }
    app.post(url, params).then((res) => {
     wx.setStorageSync('token', res.token);
     that.getRecommendArticleList(openid, res.doctor_id);
     if (res.doctor_id == 0) { //没有关联医生
      if (app.globalData.doctorid == 0) { //没有传过来的doctorid
       that.setData({
        showdoctor: false
       })
      } else {
       that.getDoctorInfo(app.globalData.doctorid);
       that.bindDoctor(openid,app.globalData.doctorid);
      }
     } else { //有关联医生获取医生详情
      app.globalData.doctor_id = res.doctor_id;
      app.globalData.doctorid = res.doctorid;
      that.getDoctorInfo(res.doctorid);
     }
    }).catch((errMsg) => {
     console.log(errMsg)
    })
 },
 //绑定医生
 bindDoctor(openid, doctorid) {
  let that = this;
    let url = 'public/bindDoctor';
    let params = {
     openid: openid,
     doctorid: doctorid
    }
    app.post(url, params).then((res) => {}).catch((errMsg) => {
     console.log(errMsg)
    })
 },
 //获取医生详情,医生ID有两个用处不同
 getDoctorInfo(doctorid) {
  let that = this;
  let url = 'index/getDoctorInfo';
  let params = {
   doctorid: doctorid
  }
  app.post(url, params).then((res) => {
   if (res.avatar == '') {
    res.avatar = '../../img/no_puimg.png'
   }
   that.setData({
    doctorinfo: res,
    showdoctor: true
   })
  }).catch((errMsg) => {
   console.log(errMsg)
  })
 },
 // 获取文章列表
 getRecommendArticleList(openid, doctor_id) {
  let that = this;
  let url ='index/getRecommendArticleList';
  let params = {
   doctor_id: doctor_id,
   openid: openid
  }
  app.post(url, params).then((res) => {
   console.log('res', res);
   for (let obj of res) {
    if (obj.more.thumbnail == '') {
     obj.more.thumbnail = '../../img/LoadFail.png'
    }
   }
   that.setData({
    articlelist: res
   })
  }).catch((errMsg) => {
   console.log(errMsg)
  })
 },

 //到添加患者界面
 goaddfile() {
  wx.navigateTo({
   url: '/pages/addfile/addfile',
   success: function(res) {},
   fail: function(res) {},
   complete: function(res) {},
  })
 },
 //获取最新病情记录 
 getLastFilesLog(openid) {
  let that = this;
    let url = 'index/getLastFilesLog';
    let params = {
     'openid': openid
    }
    app.post(url, params).then((res) => {
     if (res.more.length != 0) {
      that.setData({
       showfilesLog: true,
       fileslog: res
      })
     } else {
      that.setData({
       showfilesLog: false,
       fileslog: res
      })
     }
    }).catch((errMsg) => {
     console.log(errMsg)
    })  
 },
 //获取档案数
 getFilesNumber(openid) {
  let that = this;
    let url = 'index/getFilesNumber';
    let params = {
     openid: openid
    }
    app.post(url, params).then((res) => {
     if (res == 0) {
      that.setData({
       filesLogdata: res,
       show_notest: true //显示没有档案,没有记录
      })
     } else {
      that.setData({
       filesLogdata: res,
       show_notest: false
      })
     }
    }).catch((errMsg) => {
     console.log(errMsg)
    })
 },
 //授权
 getopwer(e) {
  let that = this;
  console.log('token',wx.getStorageSync('token'));
  if (wx.getStorageSync('token') == undefined || wx.getStorageSync('token') == ''){
   wx.login({
    success: (res) => {
     let url = 'public/login';
     let params = {
      code: res.code,
      encrypted_data: e.detail.encryptedData,
      iv: e.detail.iv,
      doctorid: app.globalData.doctorid
     }
     app.post(url, params).then((res) => {
      wx.setStorageSync('token', res.token);
      if (e.currentTarget.dataset.tag == '1') {
       that.goaddfile();
      } else if (e.currentTarget.dataset.tag == '2') {
       that.gofile_manage(e.currentTarget.dataset.files_id);
      } else if (e.currentTarget.dataset.tag == '3') {
       that.goaddrecord(e.currentTarget.dataset.files_id, e.currentTarget.dataset.patient);
      }
     }).catch((errMsg) => {
      console.log(errMsg)
     })
    }
   })
  }else{
   if (e.currentTarget.dataset.tag == '1') {
    that.goaddfile();
   } else if (e.currentTarget.dataset.tag == '2') {
    that.gofile_manage(e.currentTarget.dataset.files_id);
   } else if (e.currentTarget.dataset.tag == '3') {
    that.goaddrecord(e.currentTarget.dataset.files_id, e.currentTarget.dataset.patient);
   }
  }
 },

 /**
  * 生命周期函数--监听页面加载
  */
 onLoad: function(options) {
  let that = this;
  wx.login({
   success: (res) => {
    let url = 'public/getSessionKey';
    let params = {
     code: res.code
    }
    app.post(url, params).then((res) => {
     wx.setStorageSync('openid', res.openid)
     that.ifdoctorid(res.openid); //判断是否有医生ID
     that.getFilesNumber(res.openid); //获取档案数量
     that.getLastFilesLog(res.openid);  
     app.setStatisticsVisitorLog('/pages/index/index'); //统计打开界面数量
    }).catch((errMsg) => {
     console.log(errMsg)
    })
   }
  })
 },
 /**
  * 生命周期函数--监听页面初次渲染完成
  */
 onReady: function() {},
 /**
  * 生命周期函数--监听页面显示
  */
 onShow: function(options) {
  let that = this;
  wx.login({
   success: (res) => {
    let url = 'public/getSessionKey';
    let params = {
     code: res.code
    }
    app.post(url, params).then((res) => {
     that.ifdoctorid(res.openid); //判断是否有医生ID
     
     that.getFilesNumber(res.openid); //获取档案数量
     that.getLastFilesLog(res.openid);  
    }).catch((errMsg) => {
     console.log(errMsg)
    })
   }
  })
 },
 /**
  * 生命周期函数--监听页面隐藏
  */
 onHide: function() {

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

 },

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

 },

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

 },

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

 }
})