addrecord.js 9.0 KB
// pages/addrecord/addrecord.js
// 请注意常量的命名必须是Page
const Page = require('../../utils/ald-stat.js').Page;
const app=getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
   drug:'',
   date: '请选择时间',//停药时间
   date1:'请选择时间',//血项检查时间
   enddate:'',//结束时间
   files_id:'',//患者id
   patient:'',//患者姓名
   white_blood_cell:'',//白细胞
   neutrophils: '',//中性粒细胞
   platelet: '',//血小板
   hemoglobin: '',//血红蛋白
   remarks:'',//备注
   upimg:[]
  },
 imgYu: function (event) {
  var src = event.currentTarget.dataset.src;//获取data-src
  var imgList = event.currentTarget.dataset.list;//获取data-list
  //图片预览
  wx.previewImage({
   current: src, // 当前显示图片的http链接
   urls: imgList // 需要预览的图片http链接列表
  })
 },
 setdrug(e){
  this.setData({
   drug:e.detail.value
  })
 },
 setremarks(e){
  this.setData({
   remarks: e.detail.value
  })
 },
 bindDateChange: function (e) {
  this.setData({
   date: e.detail.value
  })
 },
 bindDateChange1: function (e) {
  this.setData({
   date1: e.detail.value
  })
 },
 //设置白细胞数
 setwhite_blood_cell(e){
  this.setData({
   white_blood_cell:e.detail.value
  })
 },
 //设置中性粒细胞
 setneutrophils(e){
  this.setData({
   neutrophils:e.detail.value
  })
 },
 //血小板
 setplatelet(e){
  this.setData({
   platelet: e.detail.value
  })
 },
//血红蛋白
 sethemoglobin(e){
  this.setData({
   hemoglobin:e.detail.value
  })
 },
 //上传多个文件的方法
 uploadImages() {
  let that = this;
  wx.chooseImage({
   count: 8 - that.data.upimg.length ,
   sizeType: ['original', 'compressed'],
   success: function (res) {
    let successUp = 0; //成功个数
    let failUp = 0; //失败个数
    let i = 0; //第几个
    let tempFilePaths = res.tempFilePaths //总文件
    let length = res.tempFilePaths.length //总共个数
    wx.showNavigationBarLoading()
    wx.showLoading({
     title: '上传中',
    })
    console.log(tempFilePaths)
    that.uploadAllfile(tempFilePaths, successUp, failUp, i, length)
   },
   fail: function (res) {
   }
  })
 },
 uploadAllfile(filePaths, successUp, failUp, i, length) {
  let that = this
  let bannerimgs = that.data.bannerimgs;
  let head={
   'XX-Token':wx.getStorageSync('token'),
   'XX-Device-Type':''
  }
  let url = 'https://shuhou.superkangaroo.net/api/user/upload/one'
  wx.uploadFile({
   url: url, //仅为示例,非真实的接口地址
   filePath: filePaths[i],
   name: 'file',
   header:head,
   formData: {},
   success: function (res) {
    let temdata = JSON.parse(res.data)
    wx.hideNavigationBarLoading();
    wx.hideLoading(); 
     let upimg = that.data.upimg;
     if(upimg.length<8){
       upimg.push(temdata.data.url);
       that.setData({
         upimg: upimg
       })
     }

   },
   fail: function (res) {
    wx.hideNavigationBarLoading()
    wx.hideLoading()
    console.log(res);
   },
   complete: () => {
    i++;
    if (i == length) {
     console.log('总共' + successUp + '张上传成功,' + failUp + '张上传失败!');
    } else { //递归调用uploadDIY函数
     this.uploadAllfile(filePaths, successUp, failUp, i, length);
    }
   },
  })
 },
 //删除图片
 del_upimg(e){
  let that=this;
  let upimg=that.data.upimg;
  upimg.splice(e.currentTarget.dataset.index,1);
  that.setData({
   upimg:upimg
  })
 },
 formSubmit: function (e) {
  let that=this;
  console.log(e.detail.formId);
  console.log(e);
  // that.addFilesLog(e.detail.formId);
  let err = '';
  if (that.data.files_id == '') {
   err = '患者id不能为空'
  } else if (that.data.drug == '') {
   err = '请输入用药'
  } else if (that.data.date == '请选择时间') {
   err = '请停药日期'
  } else if (that.data.date1 == '请选择时间') {
   err = '请血项检查日期'
  } else if (that.data.white_blood_cell == '') {
   err = '请填写白细胞数量'
  } else if (that.data.neutrophils == '') {
   err = '请填写中性细胞数量'
  } else if (that.data.hemoglobin == '') {
   err = '请填写血红蛋白数量'
  } else if (that.data.platelet == '') {
   err = '请填写血小板数量'
  }
  if (err == '') {
    if (that.data.white_blood_cell > 100) {
      wx.showModal({
        title: '提示',
        content: '请输入正确的白细胞指标',
        showCancel: false
      })
      return false
    } else if (that.data.neutrophils > 100) {
      wx.showModal({
        title: '提示',
        content: '请输入正确的中性粒细胞指标',
        showCancel: false
      })
      return false
    } else if (that.data.hemoglobin > 250) {
      wx.showModal({
        title: '提示',
        content: '请输入正确的血红蛋白指标',
        showCancel: false
      })
      return false
    } else if (that.data.hemoglobin > 1000) {
      wx.showModal({
        title: '提示',
        content: '请输入正确的血小板指标',
        showCancel: false
      })
      return false
    } else {
      let url = 'user/addFilesLog';
      let header = {
        'XX-Token': wx.getStorageSync('token'),
        'XX-Device-Type': ''
      }
      let params = {
        form_id: e.detail.formId,
        fields_id: that.data.files_id,
        drug_name: that.data.drug,
        stop_date: that.data.date,
        blood_test_date: that.data.date1,
        hemoglobin: that.data.hemoglobin,
        white_blood_cell: that.data.white_blood_cell,
        neutrophils: that.data.neutrophils,
        platelet: that.data.platelet,
        remark: that.data.remarks,
        images: that.data.upimg
      }
      app.post(url, params, header).then((res) => {
        wx.showModal({
          title: '成功',
          content: '添加记录成功',
          showCancel: false,
          success(res) {
            if (res.confirm) {
              wx.switchTab({
                url: '/pages/index/index'
              })
            } else if (res.cancel) {
              console.log('用户点击取消')
            }
          }
        })
      }).catch((errMsg) => {
        console.log(errMsg)
      })
    }
  } else {
   wx.showModal({
    title: '提示',
    content: err,
    showCancel: false,
    confirmText: '知道了',
    success(res) {
     if (res.confirm) {
     } else if (res.cancel) {
     }
    }
   })
  }
 },
//添加记录
 addFilesLog(fromId){
  let that=this;
  let err='';
  if (that.data.files_id==''){
   err='患者id不能为空'
  } else if (that.data.drug =='请选择用药'){
   err ='请选择用药'
  } else if (that.data.date =='请选择时间'){
   err ='请停药日期'
  } else if (that.data.date1 =='请选择时间'){
   err = '请血项检查日期'
  } else if (that.data.white_blood_cell==''){
   err='请填写白细胞数量'
  } else if (that.data.neutrophils==''){
   err='请填写中性细胞数量'
  } else if (that.data.hemoglobin==''){
   err='请填写血红蛋白数量'
  } else if (that.data.platelet==''){
   err='请填写血小板数量'
  }
  if(err==''){
   let url ='user/addFilesLog';
   let header={
    'XX-Token':wx.getStorageSync('token'),
    'XX-Device-Type':''
   }
   let params={
    form_id: formId,
    fields_id: that.data.files_id,
    drug_name: that.data.drug,
    stop_date: that.data.date,
    blood_test_date:that.data.date1,
    hemoglobin: that.data.hemoglobin,
    white_blood_cell: that.data.white_blood_cell,
    neutrophils: that.data.neutrophils,
    platelet: that.data.platelet,
    remark: that.data.remarks,
    images:that.data.upimg
   }
app.post(url,params,header).then((res)=>{
 wx.showModal({
  title: '成功',
  content: '添加记录成功',
  showCancel:false,
  success(res) {
   if (res.confirm) {
       wx.switchTab({
        url: '/pages/index/index'
       })
   } else if (res.cancel) {
    console.log('用户点击取消')
   }
  }
 })
}).catch((errMsg)=>{
 console.log(errMsg)
})
  }else{
   wx.showModal({
    title: '提示',
    content: err,
    showCancel: false,
    confirmText: '知道了',
    success(res) {
     if (res.confirm) {
     } else if (res.cancel) {

     }
    }
   })
  }
 },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
   app.setStatisticsVisitorLog('/pages/addrecord/addrecord');
   let that=this;
   let dateobj = app.dateLater(0);
   that.setData({
    enddate: dateobj.dataday
   })
   that.setData({
    files_id: options.fields_id,
    patient: options.patient
   })

  },

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

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {

  },

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

  },

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

  },

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

  },

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

  },

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

  }
})