|
|
|
|
import Toast from '@vant/weapp/toast/toast'
|
|
|
|
|
|
|
|
|
|
const app = getApp<IAppOption>()
|
|
|
|
|
|
|
|
|
|
Page({
|
|
|
|
|
data: {
|
|
|
|
|
toastText: '',
|
|
|
|
|
id: '',
|
|
|
|
|
step: 0,
|
|
|
|
|
qolList0: [
|
|
|
|
|
{
|
|
|
|
|
title: '1. 骑自行车或电动车',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
4: '没学过',
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '2. 开车',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
4: '没学过',
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '3. 室内走动',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '4. 室外走动',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '5. 看书看报',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '6. 看电视',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '7. 兴趣爱好及平时娱乐',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '8. 过去的1周内,您是否觉得甲状腺相关眼病会阻碍您去做您想做的事',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '无影响',
|
|
|
|
|
2: '有点影响',
|
|
|
|
|
1: '严重影响',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
qolList1: [
|
|
|
|
|
{
|
|
|
|
|
title: '9. 您是否感觉到甲状腺相关眼病改变您的外表?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '10. 您是否感觉到甲状腺相关眼病使您受到了别人的注视?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '11. 您是否感觉到别人因为甲状腺相关眼病对您不友善?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '12. 您是否感觉到甲状腺相关眼病影响您的自信心?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '13. 您是否感觉到甲状腺相关眼病影响您结交新朋友?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '14. 您是否感觉到甲状腺相关眼病使您收到了社会孤立?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '15. 您是否感觉到甲状腺相关眼病使您拍照的次数减少了?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
title: '16. 您是否会试图掩饰甲状腺相关眼病给您带来的外貌变化?',
|
|
|
|
|
answer: '',
|
|
|
|
|
answerList: {
|
|
|
|
|
3: '不,没有',
|
|
|
|
|
2: '是的,有点',
|
|
|
|
|
1: '是的,严重',
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
],
|
|
|
|
|
},
|
|
|
|
|
onLoad(options) {
|
|
|
|
|
this.setData({
|
|
|
|
|
id: options.id,
|
|
|
|
|
})
|
|
|
|
|
app.waitLogin({ type: [1] }).then(() => {
|
|
|
|
|
if (options.id) {
|
|
|
|
|
this.getDetail()
|
|
|
|
|
}
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
getDetail() {
|
|
|
|
|
const { qolList0, qolList1 } = this.data
|
|
|
|
|
wx.ajax({
|
|
|
|
|
method: 'GET',
|
|
|
|
|
url: '?r=xd/qol/view',
|
|
|
|
|
data: {
|
|
|
|
|
Id: this.data.id,
|
|
|
|
|
},
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
this.setData({
|
|
|
|
|
detail: res,
|
|
|
|
|
})
|
|
|
|
|
qolList0.forEach((item, index) => {
|
|
|
|
|
item.answer = res[`Question${index + 1}`]
|
|
|
|
|
})
|
|
|
|
|
qolList1.forEach((item, index) => {
|
|
|
|
|
item.answer = res[`Question${index + 9}`]
|
|
|
|
|
})
|
|
|
|
|
this.setData({
|
|
|
|
|
qolList0,
|
|
|
|
|
qolList1,
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleSelect(e) {
|
|
|
|
|
const { id } = this.data
|
|
|
|
|
if (id)
|
|
|
|
|
return
|
|
|
|
|
const { list, key, index } = e.currentTarget.dataset
|
|
|
|
|
this.setData({
|
|
|
|
|
[`${list}[${index}].answer`]: key,
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleNext() {
|
|
|
|
|
const { qolList0 } = this.data
|
|
|
|
|
for (let i = 0; i < qolList0.length; i++) {
|
|
|
|
|
const item = qolList0[i]
|
|
|
|
|
const order = item.title.split('.')[0]
|
|
|
|
|
if (!item.answer) {
|
|
|
|
|
this.setData({
|
|
|
|
|
toastText: `请填写第${order}题`,
|
|
|
|
|
})
|
|
|
|
|
Toast()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
this.setData({
|
|
|
|
|
step: 1,
|
|
|
|
|
})
|
|
|
|
|
wx.pageScrollTo({
|
|
|
|
|
scrollTop: 0,
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleReset() {
|
|
|
|
|
wx.redirectTo({
|
|
|
|
|
url: '/patient/pages/qolAdd/index',
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleSubmit() {
|
|
|
|
|
const { qolList0, qolList1 } = this.data
|
|
|
|
|
const arr = [...qolList0, ...qolList1]
|
|
|
|
|
const form = {}
|
|
|
|
|
for (let i = 0; i < arr.length; i++) {
|
|
|
|
|
const item = arr[i]
|
|
|
|
|
const order = item.title.split('.')[0]
|
|
|
|
|
if (!item.answer) {
|
|
|
|
|
this.setData({
|
|
|
|
|
toastText: `请填写第${order}题`,
|
|
|
|
|
})
|
|
|
|
|
Toast()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
form[`Question${order}`] = item.answer
|
|
|
|
|
}
|
|
|
|
|
wx.ajax({
|
|
|
|
|
method: 'POST',
|
|
|
|
|
url: '?r=xd/qol/create',
|
|
|
|
|
data: {
|
|
|
|
|
...form,
|
|
|
|
|
},
|
|
|
|
|
}).then((res) => {
|
|
|
|
|
wx.redirectTo({
|
|
|
|
|
url: `/patient/pages/qolResult/index?id=${res.Id}`,
|
|
|
|
|
})
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handlePrev() {
|
|
|
|
|
this.setData({
|
|
|
|
|
step: 0,
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
handleBack() {
|
|
|
|
|
const { id, qolList0, qolList1 } = this.data
|
|
|
|
|
const isEmpry = [...qolList0, ...qolList1].every(item => !item.answer)
|
|
|
|
|
if (isEmpry || id) {
|
|
|
|
|
wx.navigateBack()
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
wx.showModal({
|
|
|
|
|
content: '已答问题将被清空,是否放弃自评?',
|
|
|
|
|
confirmColor: '#8c75d0',
|
|
|
|
|
cancelColor: '#141515',
|
|
|
|
|
cancelText: '放弃',
|
|
|
|
|
confirmText: '继续',
|
|
|
|
|
success: (e) => {
|
|
|
|
|
if (e.cancel) {
|
|
|
|
|
wx.navigateBack({
|
|
|
|
|
fail() {
|
|
|
|
|
wx.reLaunch({
|
|
|
|
|
url: '/patient/pages/index/index',
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
},
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
export {}
|