wx-app/pages/user/index.js
2019-06-22 22:01:46 +08:00

153 lines
4.2 KiB
JavaScript

// pages/user/index.js
import allCities from './../../utils/allCities.js';
import api from './../../utils/api.js';
// const { regeneratorRuntime } = global
Page({
/**
* 页面的初始数据
*/
data: {
allCities,
userInfo: {
avatarUrl: 'http://thirdwx.qlogo.cn/mmopen/vi_32/9xkaQhBrbjIsJNJkxKicKayJiajy2ZsKFHM7vhibPjic0sLhn0cxCicxgQUl9VDF9o02NsQlcxZicJPWb4K9RibQJ8ibDQ/132',
address: '北京 东城区',
realname: '',
},
subjects: {
smoke: [
'不吸烟',
'10支/天以下',
'10~20支/天',
'20支/天以上',
],
medical_histories: [
'慢性支气管炎、支气管哮喘、支气管扩张病、肺心病',
'高血压、冠心病、心肌病、先天性心脏病、风湿性心脏病',
'反流性食道炎、慢性胃炎、胃溃疡、慢性胰腺炎、肠易激惹综合征、结肠炎',
'3个月内脑梗塞和/或脑出血、癫痫、脑炎、脑膜炎',
'特发性或继发性肺动脉高压症',
'其他疾病'
]
},
provinces: allCities,
cities: allCities[0].children,
showRecord: true,
dialog: {
title: '姓名',
default: '',
show: false,
value: ''
},
userDetail: {},
dataList: Array(2).fill({
create_time: '2019-06-20 12:20',
totalScore: 4,
headache: {
subject: '头痛',
text: '无头痛',
score: '0'
},
gastrointestinal: {
subject: '胃肠道症状',
text: '食欲不振或恶心',
score: '2'
},
tired: {
subject: '劳累或虚弱',
text: '轻度疲劳或虚弱',
score: '2'
},
dizzy: {
subject: '头晕或眩晕',
text: '无头晕或眩晕',
score: '0'
},
}),
collapseTags: []
},
onLoad: function() {
this.initUserData();
},
/**
* 初始化用户数据
*/
async initUserData() {
let evaluationData = await api.queryAllEvaluation();
var tags = [];
evaluationData.data.forEach((o,i) => {
tags.push(true);
let level = 0;
// 判断结果
if(o.options[0].score == 0 || o.score < 3){
// 没有高反
level = 0;
} else if (o.score <= 5) {
level = 1;
} else if (o.score <= 9) {
level = 2;
} else if (o.score <= 12) {
level = 3;
} else {
level = 4;
}
evaluationData.data[i]['level'] = level;
})
this.setData({
dataList: evaluationData.data,
collapseTags: tags
});
let userDetail = await api.queryUserDetail();
this.setData({
userDetail: userDetail.data
});
},
switchView() {
this.setData({
showRecord: !this.data.showRecord
})
},
toggleCollapse(e) {
console.log(e);
let index = e.currentTarget.dataset.index;
this.data.collapseTags[index] = !this.data.collapseTags[index];
this.setData({
collapseTags: this.data.collapseTags
});
},
bindDialogInput: function(e) {
this.setData({
dialog: {
value: e.detail.value
}
})
},
hideInputDialog() {
this.setData({
dialog: {
show: false
}
})
},
showModal(e) {
this.setData({
modalName: e.currentTarget.dataset.target
})
},
hideModal(e) {
this.setData({
modalName: null
})
},
bindCityChange(e) {
let data = e.detail.value;
this.setData({
cities: allCities[data[0]].children
})
},
showAlert() {
}
})