You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
893 lines
22 KiB
893 lines
22 KiB
import dayjs from 'dayjs' |
|
|
|
const app = getApp<IAppOption>() |
|
let echarts: any = null |
|
|
|
Page({ |
|
data: { |
|
showTel: false, |
|
|
|
doctor: {}, |
|
hospital: {}, |
|
qolDetail: {}, |
|
hormoneDetail: {}, |
|
|
|
id: '', |
|
remark: '', |
|
detail: {} as any, |
|
ec: { |
|
lazyLoad: true, |
|
}, |
|
fields: { |
|
2: 'month', |
|
3: 'year', |
|
}, |
|
|
|
StartDate: '', |
|
EndDate: '', |
|
typeRange: [ |
|
{ |
|
id: '2', |
|
value: '按月', |
|
}, |
|
{ |
|
id: '3', |
|
value: '按年', |
|
}, |
|
], |
|
type: '2', |
|
typeName: '按月', |
|
|
|
// 激素图表的独立日期范围选择器 |
|
hormoneStartDate: '', |
|
hormoneEndDate: '', |
|
hormoneType: '2', |
|
hormoneTypeName: '按月', |
|
|
|
userInfo: {}, |
|
|
|
popupRemarkShow: false, |
|
remarkFocus: false, |
|
|
|
popupEditShow: false, |
|
|
|
antibodyTypeRangeList: [ |
|
{ |
|
id: '1', |
|
value: 'AchR', |
|
}, |
|
{ |
|
id: '2', |
|
value: 'MuSK', |
|
}, |
|
{ |
|
id: '3', |
|
value: 'LRP4', |
|
}, |
|
{ |
|
id: '4', |
|
value: 'RyR', |
|
}, |
|
], |
|
thyroidAbnormalRangeList: [ |
|
{ |
|
id: '1', |
|
value: '是', |
|
}, |
|
{ |
|
id: '2', |
|
value: '否', |
|
}, |
|
], |
|
previousConvulsionRangeList: [ |
|
{ |
|
id: '1', |
|
value: '是', |
|
}, |
|
{ |
|
id: '2', |
|
value: '否', |
|
}, |
|
], |
|
traditionalImmunosuppressantRangeList: [ |
|
{ |
|
id: '1', |
|
value: '他克莫司', |
|
}, |
|
{ |
|
id: '2', |
|
value: '硫唑嘌呤', |
|
}, |
|
{ |
|
id: '3', |
|
value: '吗替麦考酚酯', |
|
}, |
|
{ |
|
id: '4', |
|
value: '其它', |
|
}, |
|
], |
|
medicalInsuranceTypeRangeList: [ |
|
{ |
|
id: '1', |
|
value: '城市职工', |
|
}, |
|
{ |
|
id: '2', |
|
value: '城市居民', |
|
}, |
|
{ |
|
id: '3', |
|
value: '新农合', |
|
}, |
|
], |
|
|
|
nav: '0', |
|
|
|
adlList: [] as any, |
|
tableData: [ |
|
{ |
|
title: '说话', |
|
key: 'TalkingScore', |
|
}, |
|
{ |
|
title: '咀嚼', |
|
key: 'ChewScore', |
|
}, |
|
{ |
|
title: '吞咽', |
|
key: 'SwallowScore', |
|
}, |
|
{ |
|
title: '呼吸', |
|
key: 'BreathScore', |
|
}, |
|
{ |
|
title: '刷牙梳头能力受损', |
|
key: 'BrushTeethAndCombHairScore', |
|
}, |
|
{ |
|
title: '从椅子上起身能力受损', |
|
key: 'GetUpFromChairScore', |
|
}, |
|
{ |
|
title: '复视/重影', |
|
key: 'DoubleVisionScore', |
|
}, |
|
{ |
|
title: '眼睑下垂', |
|
key: 'DroopyEyelidsScore', |
|
}, |
|
], |
|
|
|
list4Show: true, |
|
list5Show: true, |
|
list6Show: true, |
|
|
|
pagination: { |
|
page: 1, |
|
pages: 1, |
|
count: 1, |
|
}, |
|
}, |
|
chartComponent1: null as any, |
|
chartComponent2: null as any, |
|
chartComponent3: null as any, |
|
chartComponent4: null as any, |
|
chartComponent5: null as any, |
|
chartComponent6: null as any, |
|
async onLoad(option) { |
|
echarts = await require.async('../../gift/compontnts/echart/echarts.js') |
|
this.chartComponent1 = this.selectComponent('#chart1') |
|
this.chartComponent2 = this.selectComponent('#chart2') |
|
this.chartComponent3 = this.selectComponent('#chart3') |
|
this.chartComponent4 = this.selectComponent('#chart4') |
|
this.chartComponent5 = this.selectComponent('#chart5') |
|
this.chartComponent6 = this.selectComponent('#chart6') |
|
this.setData({ |
|
id: option.id, |
|
}) |
|
if (option.anchor) { |
|
setTimeout(() => { |
|
this.handleAnchor(option.anchor) |
|
}, 1000) |
|
} |
|
|
|
app.waitLogin({ type: [2] }).then(async (_res) => { |
|
app.mpBehavior({ doctor: true, PageName: 'PG_DoctorPatientDetail' }) |
|
this.getDoctorDetail() |
|
this.handleTypeChange() |
|
this.handleHormoneTypeChange() |
|
this.getQolDetail() |
|
this.getHormoneDetail() |
|
await this.getDetail() |
|
app.getUserInfo(2).then((userInfo) => { |
|
this.setData({ |
|
userInfo, |
|
}) |
|
}) |
|
}) |
|
}, |
|
handleAnchor(anchor) { |
|
if (anchor == 'qol') { |
|
wx.pageScrollTo({ selector: '#qol' }) |
|
} |
|
if (anchor == 'hormone') { |
|
wx.pageScrollTo({ selector: '#hormone' }) |
|
} |
|
}, |
|
getQolDetail() { |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=xd/doctor/qol/get-last-record', |
|
data: { |
|
patientId: this.data.id, |
|
}, |
|
}).then((res) => { |
|
this.setData({ |
|
qolDetail: { |
|
...res, |
|
CreateTime: dayjs(res.CreateTime).format('YYYY-MM-DD'), |
|
}, |
|
}) |
|
}) |
|
}, |
|
getHormoneDetail() { |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=xd/doctor/hormone-dosage/get-last-record', |
|
data: { |
|
patientId: this.data.id, |
|
}, |
|
}).then((res) => { |
|
this.setData({ |
|
hormoneDetail: { |
|
...res, |
|
createTime: dayjs(res.createTime).format('YYYY-MM-DD'), |
|
}, |
|
}) |
|
}) |
|
}, |
|
getDoctorDetail() { |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=zd/doctor/account/info', |
|
data: {}, |
|
}).then((res) => { |
|
this.setData({ |
|
doctor: res.doctor, |
|
hospital: res.hospital, |
|
}) |
|
}) |
|
}, |
|
getDetail() { |
|
return wx |
|
.ajax({ |
|
method: 'GET', |
|
url: '?r=zd/doctor/patient/info', |
|
data: { patientId: this.data.id }, |
|
}) |
|
.then((res) => { |
|
if (res.LastAdlTime) { |
|
res.LastAdlTimeName = dayjs(res.LastAdlTime).from(dayjs().format('YYYY-MM-DD')).replace(' ', '') |
|
} |
|
if (res.LastUseDrugsTime) { |
|
res.LastUseDrugsTimeName |
|
= dayjs().format('YYYY-MM-DD') === res.LastUseDrugsTime |
|
? '' |
|
: dayjs(res.LastUseDrugsTime).from(dayjs().format('YYYY-MM-DD')).replace(' ', '') |
|
} |
|
this.setData({ |
|
detail: { |
|
...res, |
|
hideName: res.Name.replace(/^(.)(.*)$/, (_, first, rest) => first + '*'.repeat(rest.length)), |
|
BecomePatientTime: res.BecomePatientTime ? dayjs(res.BecomePatientTime).format('YYYY-MM-DD') : '', |
|
}, |
|
}) |
|
}) |
|
}, |
|
handleChange() { |
|
this.getGraph() |
|
}, |
|
handleHormoneChange() { |
|
this.getHormoneData() |
|
}, |
|
handleTypeChange(e = '') { |
|
let index = 0 |
|
if (e) { |
|
index = (e as any).detail.value |
|
} |
|
const { typeRange } = this.data |
|
const type = typeRange[index].id |
|
const typeName = typeRange[index].value |
|
let EndDate = '' |
|
let StartDate = '' |
|
if (type === '2') { |
|
EndDate = dayjs().format('YYYY-MM') |
|
StartDate = dayjs().subtract(1, 'M').format('YYYY-MM') |
|
} |
|
else if (type === '3') { |
|
EndDate = dayjs().format('YYYY') |
|
StartDate = dayjs().subtract(1, 'y').format('YYYY') |
|
} |
|
this.setData({ |
|
type, |
|
typeName, |
|
EndDate, |
|
StartDate, |
|
}) |
|
this.getGraph() |
|
}, |
|
handleHormoneTypeChange(e = '') { |
|
let index = 0 |
|
if (e) { |
|
index = (e as any).detail.value |
|
} |
|
const { typeRange } = this.data |
|
const hormoneType = typeRange[index].id |
|
const hormoneTypeName = typeRange[index].value |
|
let hormoneEndDate = '' |
|
let hormoneStartDate = '' |
|
if (hormoneType === '2') { |
|
hormoneEndDate = dayjs().format('YYYY-MM') |
|
hormoneStartDate = dayjs().subtract(1, 'M').format('YYYY-MM') |
|
} |
|
else if (hormoneType === '3') { |
|
hormoneEndDate = dayjs().format('YYYY') |
|
hormoneStartDate = dayjs().subtract(1, 'y').format('YYYY') |
|
} |
|
this.setData({ |
|
hormoneType, |
|
hormoneTypeName, |
|
hormoneEndDate, |
|
hormoneStartDate, |
|
}) |
|
this.getHormoneData() |
|
}, |
|
getGraph() { |
|
const { type, StartDate, EndDate } = this.data |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=xd/doctor/qol/graph', |
|
data: { |
|
DateType: type, |
|
StartDate, |
|
EndDate, |
|
count: 0, |
|
PatientId: this.data.id, |
|
}, |
|
}).then((res) => { |
|
const list0: any[] = [] |
|
const list1: any[] = [] |
|
const list2: any[] = [] |
|
res.list.forEach((item: any) => { |
|
list0.push({ |
|
Date: item.Date, |
|
value: item.TotalScore, |
|
}) |
|
list1.push({ |
|
Date: item.Date, |
|
value: item.VisionScore, |
|
}) |
|
list2.push({ |
|
Date: item.Date, |
|
value: item.AppearanceScore, |
|
}) |
|
}) |
|
|
|
this.initChart(list0, 'chartComponent1') |
|
this.initChart(list1, 'chartComponent2') |
|
this.initChart(list2, 'chartComponent3') |
|
}) |
|
}, |
|
getHormoneData() { |
|
const { hormoneType, hormoneStartDate, hormoneEndDate } = this.data |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=xd/doctor/hormone-dosage/graph', |
|
data: { |
|
DateType: hormoneType, |
|
StartDate: hormoneStartDate, |
|
EndDate: hormoneEndDate, |
|
PatientId: this.data.id, |
|
count: 0, |
|
}, |
|
}).then((res) => { |
|
const list4: any[] = [] |
|
const list5: any[] = [] |
|
const list6: any[] = [] |
|
let list4Show = false |
|
let list5Show = false |
|
let list6Show = false |
|
res.forEach((item: any) => { |
|
if (item.dosage) { |
|
if (item.medicationMethod == 1) { |
|
list4Show = true |
|
} |
|
if (item.medicationMethod == 2) { |
|
list5Show = true |
|
} |
|
if (item.medicationMethod == 3) { |
|
list6Show = true |
|
} |
|
} |
|
list4.push({ |
|
Date: item.recordDate, |
|
value: item.medicationMethod == 1 ? item.dosage : '', |
|
}) |
|
list5.push({ |
|
Date: item.recordDate, |
|
value: item.medicationMethod == 2 ? item.dosage : '', |
|
}) |
|
list6.push({ |
|
Date: item.recordDate, |
|
value: item.medicationMethod == 3 ? item.dosage : '', |
|
}) |
|
}) |
|
this.setData({ |
|
list4Show, |
|
list5Show, |
|
list6Show, |
|
}) |
|
|
|
this.chartComponent4 = this.selectComponent('#chart4') |
|
this.chartComponent5 = this.selectComponent('#chart5') |
|
this.chartComponent6 = this.selectComponent('#chart6') |
|
|
|
this.initChartHormone(list4, 'chartComponent4', '#1ec580') |
|
this.initChartHormone(list5, 'chartComponent5', '#B982FF') |
|
this.initChartHormone(list6, 'chartComponent6', '#FFA300') |
|
}) |
|
}, |
|
initChart(defaultList = [] as any[], key) { |
|
return new Promise((reslove) => { |
|
this[key].init((canvas, width, height, dpr) => { |
|
const chart = echarts.init(canvas, null, { |
|
width, |
|
height, |
|
devicePixelRatio: dpr, // new |
|
}) |
|
canvas.setChart(chart) |
|
|
|
const option: any = { |
|
tooltip: { |
|
show: false, |
|
trigger: 'axis', |
|
axisPointer: { |
|
type: 'shadow', |
|
}, |
|
confine: true, |
|
backgroundColor: 'rgba(0, 0, 0, 0.5)', |
|
textStyle: { |
|
color: '#fff', |
|
fontSize: 14, |
|
}, |
|
order: 'seriesDesc', |
|
}, |
|
grid: { |
|
top: '30', |
|
left: '0', |
|
right: '0', |
|
bottom: '10', |
|
containLabel: true, |
|
}, |
|
xAxis: [ |
|
{ |
|
type: 'category', |
|
axisTick: { |
|
show: false, |
|
inside: true, |
|
length: 1, |
|
alignWithLabel: true, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: '#D8D8D8', |
|
width: 4, |
|
cap: 'round', |
|
}, |
|
}, |
|
axisLine: { |
|
lineStyle: { |
|
color: '#8C8C8C', |
|
type: 'dashed', |
|
}, |
|
}, |
|
splitLine: { |
|
show: true, |
|
showMinLine: false, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: 'rgba(137, 141, 151, 0.23)', |
|
}, |
|
}, |
|
data: defaultList.map(item => dayjs(item.Date).format('MM-DD')), |
|
}, |
|
], |
|
yAxis: [ |
|
{ |
|
type: 'value', |
|
minInterval: 20, |
|
max: 100, |
|
axisLine: { |
|
show: false, |
|
lineStyle: { |
|
type: 'solid', |
|
color: 'rgba(161, 164, 172, 1)', |
|
}, |
|
}, |
|
splitLine: { |
|
show: true, |
|
showMinLine: false, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: 'rgba(137, 141, 151, 0.23)', |
|
}, |
|
}, |
|
}, |
|
], |
|
series: [ |
|
{ |
|
name: '总分', |
|
data: defaultList.length ? defaultList.map(item => item.value) : [25], |
|
barWidth: '16', |
|
label: { |
|
show: true, |
|
position: 'top', |
|
color: '#B982FF', |
|
}, |
|
type: 'line', |
|
symbolSize: 4, |
|
showSymbol: defaultList.length >= 1, |
|
connectNulls: true, |
|
z: 10, |
|
itemStyle: { |
|
color: '#B982FF', |
|
}, |
|
markLine: { |
|
symbol: ['none', 'none'], |
|
data: [ |
|
{ |
|
name: '达标区', |
|
yAxis: 80, |
|
label: { |
|
formatter: '{b}', |
|
position: 'insideMiddle', |
|
color: '#24D8C8', |
|
fontSize: '10', |
|
}, |
|
lineStyle: { |
|
cap: '', |
|
color: '#34D7C7', |
|
type: 'dashed', |
|
}, |
|
}, |
|
], |
|
}, |
|
markArea: { |
|
itemStyle: { |
|
color: 'rgba(37,217,200,0.19)', |
|
}, |
|
data: [ |
|
[ |
|
{ |
|
yAxis: 80, |
|
}, |
|
{ |
|
yAxis: 100, |
|
}, |
|
], |
|
], |
|
}, |
|
}, |
|
], |
|
dataZoom: { |
|
type: 'inside', // 有type这个属性,滚动条在最下面,也可以不行,写y:36,这表示距离顶端36px,一般就是在图上面。 |
|
startValue: 0, |
|
endValue: 4, |
|
filterMode: 'none', |
|
}, |
|
} |
|
|
|
chart.setOption(option) |
|
reslove(chart) |
|
return chart |
|
}) |
|
}) |
|
}, |
|
initChartHormone(defaultList = [] as any[], key, color) { |
|
return new Promise((reslove) => { |
|
this[key].init((canvas, width, height, dpr) => { |
|
const chart = echarts.init(canvas, null, { |
|
width, |
|
height, |
|
devicePixelRatio: dpr, // new |
|
}) |
|
canvas.setChart(chart) |
|
|
|
const option: any = { |
|
tooltip: { |
|
show: false, |
|
trigger: 'axis', |
|
axisPointer: { |
|
type: 'shadow', |
|
}, |
|
confine: true, |
|
backgroundColor: 'rgba(0, 0, 0, 0.5)', |
|
textStyle: { |
|
color: '#fff', |
|
fontSize: 10, |
|
}, |
|
order: 'seriesDesc', |
|
}, |
|
grid: { |
|
top: '30', |
|
left: '0', |
|
right: '0', |
|
bottom: '10', |
|
containLabel: true, |
|
}, |
|
xAxis: [ |
|
{ |
|
type: 'category', |
|
axisTick: { |
|
show: false, |
|
inside: true, |
|
length: 1, |
|
alignWithLabel: true, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: '#D8D8D8', |
|
width: 4, |
|
cap: 'round', |
|
}, |
|
}, |
|
axisLine: { |
|
lineStyle: { |
|
color: '#8C8C8C', |
|
type: 'dashed', |
|
}, |
|
}, |
|
splitLine: { |
|
show: true, |
|
showMinLine: false, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: 'rgba(137, 141, 151, 0.23)', |
|
}, |
|
}, |
|
data: defaultList.map(item => dayjs(item.Date).format('MM-DD')), |
|
}, |
|
], |
|
yAxis: [ |
|
{ |
|
type: 'value', |
|
minInterval: 20, |
|
min: 0, |
|
axisLine: { |
|
show: false, |
|
lineStyle: { |
|
type: 'solid', |
|
color: 'rgba(161, 164, 172, 1)', |
|
}, |
|
}, |
|
splitLine: { |
|
show: true, |
|
showMinLine: false, |
|
lineStyle: { |
|
type: 'dotted', |
|
color: 'rgba(137, 141, 151, 0.23)', |
|
}, |
|
}, |
|
}, |
|
], |
|
series: [ |
|
{ |
|
name: '总分', |
|
data: defaultList.length ? defaultList.map(item => item.value) : [25], |
|
barWidth: '16', |
|
label: { |
|
show: true, |
|
position: 'top', |
|
color, |
|
fontSize: 14, |
|
}, |
|
type: 'line', |
|
symbolSize: 4, |
|
showSymbol: defaultList.length >= 1, |
|
connectNulls: true, |
|
z: 10, |
|
itemStyle: { |
|
color, |
|
}, |
|
}, |
|
], |
|
dataZoom: { |
|
type: 'inside', // 有type这个属性,滚动条在最下面,也可以不行,写y:36,这表示距离顶端36px,一般就是在图上面。 |
|
startValue: 0, |
|
endValue: 4, |
|
filterMode: 'none', |
|
}, |
|
} |
|
|
|
chart.setOption(option) |
|
reslove(chart) |
|
return chart |
|
}) |
|
}) |
|
}, |
|
handleRemark() { |
|
this.setData({ |
|
popupRemarkShow: true, |
|
remark: this.data.detail.DoctorRemark, |
|
}) |
|
setTimeout(() => { |
|
this.setData({ |
|
remarkFocus: true, |
|
}) |
|
}, 300) |
|
}, |
|
handleRemarkClose() { |
|
this.setData({ |
|
popupRemarkShow: false, |
|
remarkFocus: false, |
|
remark: '', |
|
}) |
|
}, |
|
handleRemarkSubmit() { |
|
if (!this.data.remark) { |
|
wx.showToast({ |
|
icon: 'none', |
|
title: '请输入备注', |
|
}) |
|
} |
|
wx.ajax({ |
|
method: 'POST', |
|
url: '?r=zd/doctor/patient/remark', |
|
data: { |
|
PatientId: this.data.id, |
|
DoctorRemark: this.data.remark, |
|
}, |
|
}).then((_res) => { |
|
this.handleRemarkClose() |
|
this.getDetail() |
|
}) |
|
}, |
|
|
|
handleEditUser() { |
|
this.setData({ |
|
popupEditShow: true, |
|
}) |
|
}, |
|
handleUserCancel() { |
|
this.setData({ |
|
popupEditShow: false, |
|
}) |
|
}, |
|
handleUserSubmit() { |
|
this.handleUserCancel() |
|
this.handlePatientUpdate() |
|
}, |
|
handleRadio(e) { |
|
const { id, key } = e.currentTarget.dataset |
|
this.setData({ |
|
[`detail.${key}`]: id, |
|
}) |
|
}, |
|
handlePatientUpdate() { |
|
const { detail } = this.data |
|
wx.ajax({ |
|
method: 'POST', |
|
url: '?r=zd/doctor/patient/update', |
|
data: { |
|
PatientId: detail.PatientId, // 患者Id |
|
AntibodyType: detail.AntibodyType, // 抗体类型 1:AChR 2:Musk 3:LRP4 4:RYR |
|
ThyroidAbnormal: detail.ThyroidAbnormal, // 胸腺异常 1:是 2:否 |
|
PreviousConvulsion: detail.PreviousConvulsion, // 既往发生危象 1:是 2:否 |
|
TraditionalImmunosuppressant: detail.TraditionalImmunosuppressant, // 传统免疫抑制剂 1:特克莫苏 2:硫唑嘌呤 3:马替麦考酚酯 4:其他 |
|
MedicalInsuranceType: detail.MedicalInsuranceType, // 医保类型 1:城市职工 2:城市居民 3:新农合 |
|
}, |
|
}).then(() => { |
|
wx.showToast({ |
|
icon: 'none', |
|
title: '更新成功', |
|
}) |
|
this.getDetail() |
|
}) |
|
}, |
|
handleBack() { |
|
wx.navigateBack() |
|
}, |
|
handleSend() { |
|
app.mpBehavior({ doctor: true, PageName: 'BTN_DoctorPatientDetailSendMessage' }) |
|
wx.navigateTo({ |
|
url: `/pages/d_interactiveDoctor/index?patientId=${this.data.detail.PatientId}`, |
|
}) |
|
}, |
|
|
|
getAdlList(newPage = 1) { |
|
const { detail, EndDate, StartDate, type } = this.data |
|
wx.ajax({ |
|
method: 'GET', |
|
url: '?r=zd/doctor/patient/adl-list', |
|
data: { |
|
DateType: type, |
|
PatientId: detail.PatientId, |
|
StartDate, |
|
EndDate, |
|
page: newPage, |
|
}, |
|
}).then((res) => { |
|
res.list.map((item) => { |
|
let grade = 1 |
|
if (item.TotalScore < 5) { |
|
grade = 1 |
|
} |
|
else if (item.TotalScore >= 5 && item.TotalScore < 15) { |
|
grade = 2 |
|
} |
|
else { |
|
grade = 3 |
|
} |
|
item.grade = grade |
|
item.fold = false |
|
return item |
|
}) |
|
|
|
const adlList = res.page === 1 ? res.list : [...this.data.adlList, ...res.list] |
|
this.setData({ |
|
adlList, |
|
pagination: { |
|
page: res.page, |
|
pages: res.pages, |
|
count: res.count, |
|
}, |
|
}) |
|
}) |
|
}, |
|
handleFold(e) { |
|
const { index } = e.currentTarget.dataset |
|
this.setData({ |
|
[`adlList[${index}].fold`]: !this.data.adlList[index].fold, |
|
}) |
|
}, |
|
handleAdlDetail() {}, |
|
handleToastOk() { |
|
this.setData({ |
|
toastShow: false, |
|
}) |
|
}, |
|
handleToastCancel() { |
|
wx.navigateBack() |
|
}, |
|
handleToggleTel() { |
|
this.setData({ |
|
showTel: !this.data.showTel, |
|
}) |
|
}, |
|
handleEDC() { |
|
app.mpBehavior({ doctor: true, PageName: 'BTN_DoctorPatientDetailEDC' }) |
|
wx.ajax({ |
|
method: 'POST', |
|
url: '?r=zd/doctor/patient/set-edc', |
|
data: { patientId: this.data.detail.PatientId }, |
|
}).then(() => { |
|
this.setData({ |
|
'detail.IsEDC': this.data.detail.IsEDC == 1 ? 2 : 1, |
|
}) |
|
wx.showToast({ |
|
icon: 'none', |
|
title: this.data.detail.IsEDC == 1 ? '已设置为EDC患者' : '已取消EDC患者', |
|
}) |
|
}) |
|
}, |
|
handleHormones() { |
|
wx.navigateTo({ |
|
url: `/pages/d_patientHormones/index?id=${this.data.detail.PatientId}&name=${this.data.detail.Name}`, |
|
}) |
|
}, |
|
hadnleQolDetail() { |
|
wx.navigateTo({ |
|
url: `/pages/d_qolDetail/index?id=${this.data.detail.PatientId}`, |
|
}) |
|
}, |
|
})
|
|
|