修改
This commit is contained in:
parent
52cd660c26
commit
ffa823345d
56
pages.json
56
pages.json
@ -624,25 +624,47 @@
|
|||||||
"navigationBarTitleText": "糖尿病评估问卷",
|
"navigationBarTitleText": "糖尿病评估问卷",
|
||||||
"enablePullDownRefresh": false
|
"enablePullDownRefresh": false
|
||||||
}
|
}
|
||||||
} ,{
|
}, {
|
||||||
"path" : "copd/copd",
|
"path": "copd/copd",
|
||||||
"style" :
|
"style": {
|
||||||
{
|
"navigationBarTitleText": "慢阻肺评估问卷",
|
||||||
"navigationBarTitleText": "慢阻肺评估问卷",
|
"enablePullDownRefresh": false
|
||||||
"enablePullDownRefresh": false
|
}
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}, {
|
||||||
,{
|
"path": "cerebralapoplexy/cerebralapoplexy",
|
||||||
"path" : "cerebralapoplexy/cerebralapoplexy",
|
"style": {
|
||||||
"style" :
|
"navigationBarTitleText": "脑卒中评估问卷",
|
||||||
{
|
"enablePullDownRefresh": false
|
||||||
"navigationBarTitleText": "脑卒中评估问卷",
|
}
|
||||||
"enablePullDownRefresh": false
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}, {
|
||||||
]
|
"path": "chronicdisease/chronicdisease",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "慢病评估问卷",
|
||||||
|
"enablePullDownRefresh": false
|
||||||
|
}
|
||||||
|
|
||||||
|
}, {
|
||||||
|
"path": "nephropathy/nephropathy",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "糖尿病肾病评估报告",
|
||||||
|
"enablePullDownRefresh": false
|
||||||
|
}
|
||||||
|
|
||||||
|
}, {
|
||||||
|
"path": "Ophthalmopathy/Ophthalmopathy",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "糖尿病眼病评估报告",
|
||||||
|
"enablePullDownRefresh": false
|
||||||
|
}
|
||||||
|
}, {
|
||||||
|
"path": "Footdisease/Footdisease",
|
||||||
|
"style": {
|
||||||
|
"navigationBarTitleText": "糖尿病足病评估问卷",
|
||||||
|
"enablePullDownRefresh": false
|
||||||
|
}
|
||||||
|
}]
|
||||||
}],
|
}],
|
||||||
"globalStyle": {
|
"globalStyle": {
|
||||||
"navigationBarTextStyle": "white",
|
"navigationBarTextStyle": "white",
|
||||||
|
|||||||
@ -53,6 +53,22 @@
|
|||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url: `/questionnaire/copd/copd?item=${encodeURIComponent(JSON.stringify(item))}`
|
url: `/questionnaire/copd/copd?item=${encodeURIComponent(JSON.stringify(item))}`
|
||||||
})
|
})
|
||||||
|
} else if (item.surveySubject == 1005) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/questionnaire/chronicdisease/chronicdisease?item=${encodeURIComponent(JSON.stringify(item))}`
|
||||||
|
})
|
||||||
|
} else if (item.surveySubject == 1006) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/questionnaire/nephropathy/nephropathy?item=${encodeURIComponent(JSON.stringify(item))}`
|
||||||
|
})
|
||||||
|
} else if (item.surveySubject == 1007) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/questionnaire/Ophthalmopathy/Ophthalmopathy?item=${encodeURIComponent(JSON.stringify(item))}`
|
||||||
|
})
|
||||||
|
} else if (item.surveySubject == 1008) {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/questionnaire/Footdisease/Footdisease?item=${encodeURIComponent(JSON.stringify(item))}`
|
||||||
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
info() {
|
info() {
|
||||||
|
|||||||
126
questionnaire/Footdisease/Footdisease.vue
Normal file
126
questionnaire/Footdisease/Footdisease.vue
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
<template>
|
||||||
|
<view class="app" v-if='list'>
|
||||||
|
<view class="item" v-for="(item,index) in list.questions" :key="index">
|
||||||
|
<view class="title">
|
||||||
|
{{Number(index)+1}}、{{item.questionName}}
|
||||||
|
</view>
|
||||||
|
<u-radio-group v-model="list.answers[index].optionContent" @change="radioGroupChange($event,item)">
|
||||||
|
<u-radio @change="radioChange($event,aitem,index)" v-for="(aitem, aindex) in item.options" :key="aindex"
|
||||||
|
:name="aitem.optionName">
|
||||||
|
{{aitem.optionName}}
|
||||||
|
</u-radio>
|
||||||
|
</u-radio-group>
|
||||||
|
</view>
|
||||||
|
<view class="btns" @tap='updata'>
|
||||||
|
提交
|
||||||
|
</view>
|
||||||
|
<u-toast ref="uToast" />
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
updata() {
|
||||||
|
this.list.answers.forEach(e => {
|
||||||
|
if (!e.optionId) {
|
||||||
|
this.$refs.uToast.show({
|
||||||
|
title: '请选择完全部选项',
|
||||||
|
type: 'error',
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
var truelist = this.list.answers.filter(e => e.optionContent == '是')
|
||||||
|
if (truelist.length > 0) {
|
||||||
|
this.list.evaluateResult = '您有糖尿病足病并发症风险,建议前往专业医疗机构进行进一步检查。'
|
||||||
|
} else if (truelist.length == 0) {
|
||||||
|
this.list.evaluateResult = '您没有糖尿病足病并发症风险,请继续保持!'
|
||||||
|
}
|
||||||
|
console.log(this.list)
|
||||||
|
},
|
||||||
|
// 选中某个单选框时,由radio时触发
|
||||||
|
radioChange(e, item, index) {
|
||||||
|
this.list.answers[index].optionId = item.id
|
||||||
|
},
|
||||||
|
// 选中任一radio时,由radio-group触发
|
||||||
|
radioGroupChange(e) {
|
||||||
|
// console.log(e);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
let list = JSON.parse(decodeURIComponent(options.item))
|
||||||
|
list.answers = []
|
||||||
|
list.questions.forEach(e => {
|
||||||
|
e.name = '请选择'
|
||||||
|
var obj = {
|
||||||
|
"questionId": e.id,
|
||||||
|
"optionId": null,
|
||||||
|
"optionContent": null,
|
||||||
|
}
|
||||||
|
list.answers.push(obj)
|
||||||
|
})
|
||||||
|
this.list = {
|
||||||
|
userId: uni.getStorageSync('patientId'),
|
||||||
|
surveyId: list.id,
|
||||||
|
surveySubject: list.surveySubject,
|
||||||
|
evaluateResult: null,
|
||||||
|
advice: null,
|
||||||
|
questions: list.questions,
|
||||||
|
answers: list.answers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.app {
|
||||||
|
width: 96%;
|
||||||
|
margin: 16rpx auto;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
|
||||||
|
border-radius: 5rpx;
|
||||||
|
padding-bottom: 200rpx;
|
||||||
|
|
||||||
|
.btns {
|
||||||
|
width: 90%;
|
||||||
|
margin: 100rpx auto;
|
||||||
|
background-color: #26A888;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 60rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
width: 90%;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 30rpx 0;
|
||||||
|
|
||||||
|
::v-deep .u-radio {
|
||||||
|
padding: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: 40rpx 0 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-picker-container {
|
||||||
|
width: 100%;
|
||||||
|
height: 63rpx;
|
||||||
|
background: #A7A7A7;
|
||||||
|
line-height: 63rpx;
|
||||||
|
opacity: 0.1;
|
||||||
|
border-radius: 5rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
126
questionnaire/Ophthalmopathy/Ophthalmopathy.vue
Normal file
126
questionnaire/Ophthalmopathy/Ophthalmopathy.vue
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
<template>
|
||||||
|
<view class="app" v-if='list'>
|
||||||
|
<view class="item" v-for="(item,index) in list.questions" :key="index">
|
||||||
|
<view class="title">
|
||||||
|
{{Number(index)+1}}、{{item.questionName}}
|
||||||
|
</view>
|
||||||
|
<u-radio-group v-model="list.answers[index].optionContent" @change="radioGroupChange($event,item)">
|
||||||
|
<u-radio @change="radioChange($event,aitem,index)" v-for="(aitem, aindex) in item.options" :key="aindex"
|
||||||
|
:name="aitem.optionName">
|
||||||
|
{{aitem.optionName}}
|
||||||
|
</u-radio>
|
||||||
|
</u-radio-group>
|
||||||
|
</view>
|
||||||
|
<view class="btns" @tap='updata'>
|
||||||
|
提交
|
||||||
|
</view>
|
||||||
|
<u-toast ref="uToast" />
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
updata() {
|
||||||
|
this.list.answers.forEach(e => {
|
||||||
|
if (!e.optionId) {
|
||||||
|
this.$refs.uToast.show({
|
||||||
|
title: '请选择完全部选项',
|
||||||
|
type: 'error',
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
var truelist = this.list.answers.filter(e => e.optionContent == '是')
|
||||||
|
if (truelist.length > 0) {
|
||||||
|
this.list.evaluateResult = '您有糖尿病眼病并发症风险,建议前往专业医疗机构进行进一步检查。'
|
||||||
|
} else if (truelist.length == 0) {
|
||||||
|
this.list.evaluateResult = '您没有糖尿病眼病并发症风险,请继续保持!'
|
||||||
|
}
|
||||||
|
console.log(this.list)
|
||||||
|
},
|
||||||
|
// 选中某个单选框时,由radio时触发
|
||||||
|
radioChange(e, item, index) {
|
||||||
|
this.list.answers[index].optionId = item.id
|
||||||
|
},
|
||||||
|
// 选中任一radio时,由radio-group触发
|
||||||
|
radioGroupChange(e) {
|
||||||
|
// console.log(e);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
let list = JSON.parse(decodeURIComponent(options.item))
|
||||||
|
list.answers = []
|
||||||
|
list.questions.forEach(e => {
|
||||||
|
e.name = '请选择'
|
||||||
|
var obj = {
|
||||||
|
"questionId": e.id,
|
||||||
|
"optionId": null,
|
||||||
|
"optionContent": null,
|
||||||
|
}
|
||||||
|
list.answers.push(obj)
|
||||||
|
})
|
||||||
|
this.list = {
|
||||||
|
userId: uni.getStorageSync('patientId'),
|
||||||
|
surveyId: list.id,
|
||||||
|
surveySubject: list.surveySubject,
|
||||||
|
evaluateResult: null,
|
||||||
|
advice: null,
|
||||||
|
questions: list.questions,
|
||||||
|
answers: list.answers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.app {
|
||||||
|
width: 96%;
|
||||||
|
margin: 16rpx auto;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
|
||||||
|
border-radius: 5rpx;
|
||||||
|
padding-bottom: 200rpx;
|
||||||
|
|
||||||
|
.btns {
|
||||||
|
width: 90%;
|
||||||
|
margin: 100rpx auto;
|
||||||
|
background-color: #26A888;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 60rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
width: 90%;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 30rpx 0;
|
||||||
|
|
||||||
|
::v-deep .u-radio {
|
||||||
|
padding: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: 40rpx 0 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-picker-container {
|
||||||
|
width: 100%;
|
||||||
|
height: 63rpx;
|
||||||
|
background: #A7A7A7;
|
||||||
|
line-height: 63rpx;
|
||||||
|
opacity: 0.1;
|
||||||
|
border-radius: 5rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -46,6 +46,7 @@
|
|||||||
} else if (truelist.length == 0) {
|
} else if (truelist.length == 0) {
|
||||||
this.list.evaluateResult = '本次评估结果为0分,3分以下者,没有脑卒中高危风险,请继续保持!'
|
this.list.evaluateResult = '本次评估结果为0分,3分以下者,没有脑卒中高危风险,请继续保持!'
|
||||||
}
|
}
|
||||||
|
console.log(this.list)
|
||||||
},
|
},
|
||||||
// 选中某个单选框时,由radio时触发
|
// 选中某个单选框时,由radio时触发
|
||||||
radioChange(e, item, index) {
|
radioChange(e, item, index) {
|
||||||
|
|||||||
138
questionnaire/chronicdisease/chronicdisease.vue
Normal file
138
questionnaire/chronicdisease/chronicdisease.vue
Normal file
@ -0,0 +1,138 @@
|
|||||||
|
<template>
|
||||||
|
<view class="app" v-if='list'>
|
||||||
|
<view class="item" v-for="(item,index) in list.questions" :key="index">
|
||||||
|
<view class="title">
|
||||||
|
{{Number(index)+1}}、{{item.questionName}}
|
||||||
|
</view>
|
||||||
|
<u-radio-group v-model="list.answers[index].optionContent" @change="radioGroupChange($event,item)">
|
||||||
|
<u-radio @change="radioChange($event,aitem,index)" v-for="(aitem, aindex) in item.options" :key="aindex"
|
||||||
|
:name="aitem.optionName">
|
||||||
|
{{aitem.optionName}}
|
||||||
|
</u-radio>
|
||||||
|
</u-radio-group>
|
||||||
|
</view>
|
||||||
|
<view class="btns" @tap='updata'>
|
||||||
|
提交
|
||||||
|
</view>
|
||||||
|
<u-toast ref="uToast" />
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
updata() {
|
||||||
|
this.list.answers.forEach(e => {
|
||||||
|
if (!e.optionId) {
|
||||||
|
this.$refs.uToast.show({
|
||||||
|
title: '请选择完全部选项',
|
||||||
|
type: 'error',
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
var arr = []
|
||||||
|
if (this.list.answers[0].optionContent == '是') {
|
||||||
|
arr.push('糖尿病风险')
|
||||||
|
}
|
||||||
|
if (this.list.answers[1].optionContent == '是') {
|
||||||
|
arr.push('高血压风险')
|
||||||
|
}
|
||||||
|
if (this.list.answers[2].optionContent == '是') {
|
||||||
|
arr.push('脑卒中风险')
|
||||||
|
}
|
||||||
|
this.list.evaluateResult = "";
|
||||||
|
for (var i = 0; i < arr.length; i++) {
|
||||||
|
this.list.evaluateResult += arr[i] + ",";
|
||||||
|
}
|
||||||
|
//去掉最后一个逗号(如果不需要去掉,就不用写)
|
||||||
|
if (this.list.evaluateResult.length > 0) {
|
||||||
|
this.list.evaluateResult = this.list.evaluateResult.substr(0, this.list.evaluateResult.length - 1);
|
||||||
|
}
|
||||||
|
console.log(this.list)
|
||||||
|
},
|
||||||
|
// 选中某个单选框时,由radio时触发
|
||||||
|
radioChange(e, item, index) {
|
||||||
|
this.list.answers[index].optionId = item.id
|
||||||
|
},
|
||||||
|
// 选中任一radio时,由radio-group触发
|
||||||
|
radioGroupChange(e) {
|
||||||
|
// console.log(e);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
let list = JSON.parse(decodeURIComponent(options.item))
|
||||||
|
list.answers = []
|
||||||
|
list.questions.forEach(e => {
|
||||||
|
e.name = '请选择'
|
||||||
|
var obj = {
|
||||||
|
"questionId": e.id,
|
||||||
|
"optionId": null,
|
||||||
|
"optionContent": null,
|
||||||
|
}
|
||||||
|
list.answers.push(obj)
|
||||||
|
})
|
||||||
|
this.list = {
|
||||||
|
userId: uni.getStorageSync('patientId'),
|
||||||
|
surveyId: list.id,
|
||||||
|
surveySubject: list.surveySubject,
|
||||||
|
evaluateResult: null,
|
||||||
|
advice: null,
|
||||||
|
questions: list.questions,
|
||||||
|
answers: list.answers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.app {
|
||||||
|
width: 96%;
|
||||||
|
margin: 16rpx auto;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
|
||||||
|
border-radius: 5rpx;
|
||||||
|
padding-bottom: 200rpx;
|
||||||
|
|
||||||
|
.btns {
|
||||||
|
width: 90%;
|
||||||
|
margin: 100rpx auto;
|
||||||
|
background-color: #26A888;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 60rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
width: 90%;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 30rpx 0;
|
||||||
|
|
||||||
|
::v-deep .u-radio {
|
||||||
|
padding: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: 40rpx 0 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-picker-container {
|
||||||
|
width: 100%;
|
||||||
|
height: 63rpx;
|
||||||
|
background: #A7A7A7;
|
||||||
|
line-height: 63rpx;
|
||||||
|
opacity: 0.1;
|
||||||
|
border-radius: 5rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -36,12 +36,35 @@
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
var truelist = this.list.answers.filter(e => e.optionContent == '是')
|
var value = 0
|
||||||
if (truelist.length > 0) {
|
if (this.list.answers[0].optionContent == '从未感觉气短' || this.list.answers[0].optionContent ==
|
||||||
this.list.evaluateResult = '您可能存在糖尿病高危风险,建议每年至医疗机构进行一次糖尿病筛查。'
|
'很少感觉气短') {} else if (this.list.answers[0].optionContent == '有时感觉气短' || this.list.answers[0]
|
||||||
} else if (truelist.length == 0) {
|
.optionContent == '经常感觉气短' || this.list.answers[0].optionContent == '总是感觉气短') {
|
||||||
this.list.evaluateResult = '您没有糖尿病高危风险,请继续保持!'
|
value++
|
||||||
}
|
}
|
||||||
|
if (this.list.answers[1].optionContent == '从未咳出' || this.list.answers[1].optionContent ==
|
||||||
|
'是的,但仅在偶尔和感冒或胸部感染时咳出') {} else if (this.list.answers[1].optionContent == '是的,每月都咳出几天' || this.list
|
||||||
|
.answers[1].optionContent == '是的,大多数日子都咳' || this.list.answers[1].optionContent == '是的,每天都咳') {
|
||||||
|
value++
|
||||||
|
}
|
||||||
|
if (this.list.answers[2].optionContent == '强烈反对' || this.list.answers[2].optionContent ==
|
||||||
|
'反对' || this.list.answers[2].optionContent == '不确定') {} else if (this.list.answers[2].optionContent ==
|
||||||
|
'同意' || this.list.answers[2].optionContent == '非常同意') {
|
||||||
|
value++
|
||||||
|
}
|
||||||
|
if (this.list.answers[3].optionContent == '否') {} else if (this.list.answers[3].optionContent == '是') {
|
||||||
|
value++
|
||||||
|
}
|
||||||
|
if (this.list.answers[4].optionContent == '35-49岁' || this.list.answers[4].optionContent ==
|
||||||
|
'≥70岁') {} else if (this.list.answers[4].optionContent == '50-69岁') {
|
||||||
|
value = value + 2
|
||||||
|
}
|
||||||
|
if (value <= 4) {
|
||||||
|
this.list.evaluateResult = `您的评估结果为${value}分,0-4分为呼吸状况良好,若伴有呼吸问题,请尽早就医。`
|
||||||
|
} else if (value >= 5) {
|
||||||
|
this.list.evaluateResult = `您的评估结果为${value}分,5分及以上可能存在慢性阻塞性肺疾病风险,如有以下情形,请尽早就医。`
|
||||||
|
}
|
||||||
|
console.log(this.list)
|
||||||
},
|
},
|
||||||
// 选中某个单选框时,由radio时触发
|
// 选中某个单选框时,由radio时触发
|
||||||
radioChange(e, item, index) {
|
radioChange(e, item, index) {
|
||||||
|
|||||||
@ -42,6 +42,7 @@
|
|||||||
} else if (truelist.length == 0) {
|
} else if (truelist.length == 0) {
|
||||||
this.list.evaluateResult = '您没有糖尿病高危风险,请继续保持!'
|
this.list.evaluateResult = '您没有糖尿病高危风险,请继续保持!'
|
||||||
}
|
}
|
||||||
|
console.log(this.list)
|
||||||
},
|
},
|
||||||
// 选中某个单选框时,由radio时触发
|
// 选中某个单选框时,由radio时触发
|
||||||
radioChange(e, item, index) {
|
radioChange(e, item, index) {
|
||||||
|
|||||||
@ -42,6 +42,7 @@
|
|||||||
} else if (truelist.length == 0) {
|
} else if (truelist.length == 0) {
|
||||||
this.list.evaluateResult = '您没有高血压风险,请继续保持!'
|
this.list.evaluateResult = '您没有高血压风险,请继续保持!'
|
||||||
}
|
}
|
||||||
|
console.log(this.list)
|
||||||
},
|
},
|
||||||
// 选中某个单选框时,由radio时触发
|
// 选中某个单选框时,由radio时触发
|
||||||
radioChange(e, item, index) {
|
radioChange(e, item, index) {
|
||||||
|
|||||||
126
questionnaire/nephropathy/nephropathy.vue
Normal file
126
questionnaire/nephropathy/nephropathy.vue
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
<template>
|
||||||
|
<view class="app" v-if='list'>
|
||||||
|
<view class="item" v-for="(item,index) in list.questions" :key="index">
|
||||||
|
<view class="title">
|
||||||
|
{{Number(index)+1}}、{{item.questionName}}
|
||||||
|
</view>
|
||||||
|
<u-radio-group v-model="list.answers[index].optionContent" @change="radioGroupChange($event,item)">
|
||||||
|
<u-radio @change="radioChange($event,aitem,index)" v-for="(aitem, aindex) in item.options" :key="aindex"
|
||||||
|
:name="aitem.optionName">
|
||||||
|
{{aitem.optionName}}
|
||||||
|
</u-radio>
|
||||||
|
</u-radio-group>
|
||||||
|
</view>
|
||||||
|
<view class="btns" @tap='updata'>
|
||||||
|
提交
|
||||||
|
</view>
|
||||||
|
<u-toast ref="uToast" />
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
list: null,
|
||||||
|
};
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
updata() {
|
||||||
|
this.list.answers.forEach(e => {
|
||||||
|
if (!e.optionId) {
|
||||||
|
this.$refs.uToast.show({
|
||||||
|
title: '请选择完全部选项',
|
||||||
|
type: 'error',
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
})
|
||||||
|
var truelist = this.list.answers.filter(e => e.optionContent == '是')
|
||||||
|
if (truelist.length > 0) {
|
||||||
|
this.list.evaluateResult = '您有糖尿病肾病并发症风险,建议前往专业医疗机构进行进一步检查。'
|
||||||
|
} else if (truelist.length == 0) {
|
||||||
|
this.list.evaluateResult = '您没有糖尿病肾病并发症风险,请继续保持!'
|
||||||
|
}
|
||||||
|
console.log(this.list)
|
||||||
|
},
|
||||||
|
// 选中某个单选框时,由radio时触发
|
||||||
|
radioChange(e, item, index) {
|
||||||
|
this.list.answers[index].optionId = item.id
|
||||||
|
},
|
||||||
|
// 选中任一radio时,由radio-group触发
|
||||||
|
radioGroupChange(e) {
|
||||||
|
// console.log(e);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onLoad(options) {
|
||||||
|
let list = JSON.parse(decodeURIComponent(options.item))
|
||||||
|
list.answers = []
|
||||||
|
list.questions.forEach(e => {
|
||||||
|
e.name = '请选择'
|
||||||
|
var obj = {
|
||||||
|
"questionId": e.id,
|
||||||
|
"optionId": null,
|
||||||
|
"optionContent": null,
|
||||||
|
}
|
||||||
|
list.answers.push(obj)
|
||||||
|
})
|
||||||
|
this.list = {
|
||||||
|
userId: uni.getStorageSync('patientId'),
|
||||||
|
surveyId: list.id,
|
||||||
|
surveySubject: list.surveySubject,
|
||||||
|
evaluateResult: null,
|
||||||
|
advice: null,
|
||||||
|
questions: list.questions,
|
||||||
|
answers: list.answers
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss">
|
||||||
|
.app {
|
||||||
|
width: 96%;
|
||||||
|
margin: 16rpx auto;
|
||||||
|
background: #FFFFFF;
|
||||||
|
box-shadow: 0rpx 9rpx 31rpx 9rpx rgba(0, 0, 0, 0.03);
|
||||||
|
border-radius: 5rpx;
|
||||||
|
padding-bottom: 200rpx;
|
||||||
|
|
||||||
|
.btns {
|
||||||
|
width: 90%;
|
||||||
|
margin: 100rpx auto;
|
||||||
|
background-color: #26A888;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 60rpx;
|
||||||
|
height: 60rpx;
|
||||||
|
color: #fff;
|
||||||
|
}
|
||||||
|
|
||||||
|
.item {
|
||||||
|
width: 90%;
|
||||||
|
margin: 0 auto;
|
||||||
|
padding: 30rpx 0;
|
||||||
|
|
||||||
|
::v-deep .u-radio {
|
||||||
|
padding: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
padding: 40rpx 0 20rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #333333;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep .uni-picker-container {
|
||||||
|
width: 100%;
|
||||||
|
height: 63rpx;
|
||||||
|
background: #A7A7A7;
|
||||||
|
line-height: 63rpx;
|
||||||
|
opacity: 0.1;
|
||||||
|
border-radius: 5rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
Loading…
Reference in New Issue
Block a user