<template>
|
<div class="record">
|
<van-nav-bar
|
title=""
|
left-text="返回"
|
left-arrow
|
@click="fanhui"
|
/>
|
<div>
|
<van-calendar
|
:min-date="minDate"
|
@month-show="monthShow"
|
:poppable="false"
|
:show-confirm="false"
|
@select="selectData"
|
:formatter="formatter"
|
:show-title="false"
|
:style="{ height: '400px' }"
|
/>
|
</div>
|
<van-loading v-if="loand" size="24" />
|
<div class="listdiv" v-else>
|
<div class="listrow">
|
<van-row>
|
<van-row class="lable">
|
<van-col span="8">
|
<span style="color: #777;">状态:</span>
|
<span v-if="pageInfo.medState === 0" style="color: #769aff;">未签到</span>
|
<span v-if="pageInfo.medState === 1" style="color: #769aff;">已签到</span>
|
<span v-if="pageInfo.medState === 2 || pageInfo.medState === 2.5" style="color: #769aff;">透析中</span>
|
<span v-if="pageInfo.medState === 3" style="color: #769aff;">已检查</span>
|
<span v-if="pageInfo.medState === 4" style="color: #769aff;">已归档</span>
|
</van-col>
|
<van-col span="8">
|
<span style="color: #777;">上机:</span>
|
<span style="color: #769aff;">{{pageInfo.detailForPatientMedStartTime.substring(11,16)}}</span>
|
</van-col>
|
<van-col span="8">
|
<span style="color: #777;">下机:</span>
|
<span style="color: #769aff;">{{pageInfo.detailForPatientMedEndTime.substring(11,16)}}</span>
|
</van-col>
|
</van-row>
|
<van-row class="lable">
|
<van-col span="8">
|
<span style="color: #777;">班次:</span>
|
<span v-if="pageInfo.scheduleTimeSlot === 0" style="color: #769aff;">上午</span>
|
<span v-if="pageInfo.scheduleTimeSlot === 1" style="color: #769aff;">下午</span>
|
<span v-if="pageInfo.scheduleTimeSlot === 2" style="color: #769aff;">晚上午</span>
|
</van-col>
|
<van-col span="8">
|
<span style="color: #777;">机号:</span>
|
<span style="color: #769aff;">{{pageInfo.deviceInfo.deviceNo}}</span>
|
</van-col>
|
<van-col span="8">
|
<span style="color: #777;">模式:</span>
|
<span style="color: #769aff;">{{pageInfo.schemeName}}</span>
|
</van-col>
|
</van-row>
|
<van-row class="lable2">
|
<van-col span="8">
|
<span style="color: #777;">次数:</span>
|
<span style="color: #769aff;">{{pageInfo.historyCount}}</span>
|
</van-col>
|
<van-col span="8">
|
<span style="color: #777;">本次费用:</span>
|
<span style="color: #769aff;">---</span>
|
</van-col>
|
</van-row>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">干体重:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.pureWeight}}(kg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">衣物重:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientClothesWeight}}(kg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透前称重:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientPreWeight}}(kg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透后称重:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientAfterWeight}}(kg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透前血压:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientPreBP}}(mmHg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透前心率:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientPrePulse}}(次/分)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透后血压:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientAfterBP}}(mmHg)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">透后心率:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientAfterPulse}}(次/分)</van-col>
|
</van-row>
|
<van-row class="item">
|
<van-col span="12">抗凝剂:</van-col>
|
<van-col span="12" style="text-align: right; color: #769aff ;">{{pageInfo.detailForPatientKNJ}}</van-col>
|
</van-row>
|
</div>
|
</div>
|
</div>
|
</template>
|
<script lang="ts" setup>
|
import {ref} from 'vue'
|
import {ajaxPost} from '@/utils/axios'
|
import { Calendar as vanCalendar, Toast } from 'vant'
|
import {useRouter} from 'vue-router'
|
import { userInfoStore } from '@/stores/userInfo'
|
const userInfo = userInfoStore()
|
const router=useRouter()
|
const loand=ref(false)
|
const pageInfo=ref({pureWeight:'',
|
detailForPatientAfterBP: '',
|
detailForPatientAfterPulse: '',
|
detailForPatientAfterWeight:'',
|
detailForPatientPreBP: '',
|
detailForPatientPrePulse: '',
|
detailForPatientPreWeight:'',
|
detailForPatientKNJ:'',
|
detailForPatientClothesWeight:'',
|
schemeName:'',medState:0,detailForPatientMedCount:0,deviceInfo:{deviceName:''},scheduleTimeSlot:0,detailForPatientMedEndTime:'',detailForPatientMedStartTime:''})
|
const day=new Date()
|
const Year = day.getFullYear()
|
const minDate=ref( new Date(Date.parse(Year+'-01-01'.replace(/-/g, '/'))))
|
const selectDate=ref([{y:2000,m:1,d:1,type:'',code:'',id:0,timeSlot:1,scheduleDay:''}])
|
const selectData=(day:any)=>{
|
const y=day.getFullYear()
|
const m = day.getMonth() + 1
|
const d = day.getDate()
|
const x=selectDate.value.findIndex(e=>{return e.y===y&&e.m===m&&e.d===d})
|
console.log(selectDate.value[x],'找到了')
|
if (x===-1){
|
|
Toast('没有排班信息,请选择其他日期!')
|
}
|
else {
|
getDetail(selectDate.value[x].id)
|
}
|
|
|
}
|
const fanhui=()=>{
|
router.go(-1)
|
}
|
const getPaiban=(date:Date)=>{
|
const y=date.getFullYear()
|
const m= date.getMonth()+1
|
const pagedata={
|
patientCode:userInfo.patient.patientInfo.code,
|
year:y,
|
month:m,
|
}
|
ajaxPost('/patient/hemo/med/record/listByPatient',pagedata).then((re:any)=>{
|
console.log(re)
|
re.forEach((element:any) => {
|
const dey=element.scheduleDate.split('-')
|
// 不能添加重复的
|
const x=selectDate.value.findIndex(e=>{return e.code===element.code})
|
if (x===-1){
|
selectDate.value.push({
|
y:Number(dey[0]),
|
m:Number(dey[1]),
|
d:Number(dey[2].substring(0,2)),
|
type:element.schemeName,
|
timeSlot:element.scheduleTimeSlot,
|
code:element.code,
|
scheduleDay:element.scheduleDay,
|
id:element.id,
|
透析单状态:element.medState,
|
|
})
|
}
|
|
})
|
selectDate.value= selectDate.value.sort((a,b)=>new Date(b.scheduleDay)-new Date(a.scheduleDay))
|
console.log(selectDate.value)
|
})
|
}
|
const monthShow=(month:any)=>{
|
console.log(month)
|
getPaiban(month.date)
|
}
|
const formatter=(day:any)=>{
|
const year=day.date.getFullYear()
|
const month = day.date.getMonth() + 1
|
const date = day.date.getDate()
|
const index= selectDate.value.findIndex(el=>{return el.y===year&&el.m===month&&el.d===date})
|
if (index>0){
|
day.text=selectDate.value[index].type
|
if (selectDate.value[index].透析单状态){
|
day.type='end'
|
} else {
|
day.type='start'
|
}
|
if (selectDate.value[index].timeSlot===0){
|
day.bottomInfo='上午'
|
}
|
else if (selectDate.value[index].timeSlot===1){
|
day.bottomInfo='上午'
|
}
|
else {
|
day.bottomInfo='晚上'
|
}
|
console.log(day)
|
}
|
return day
|
}
|
const getDetail=(id:any)=>{
|
loand.value=true
|
ajaxPost('/patient/hemo/med/record/detailForMobile',`id=${id}`).then((re:any)=>{
|
console.log(re)
|
pageInfo.value=re
|
loand.value=false
|
}).finally(()=>{
|
loand.value=false
|
})
|
}
|
</script>
|
<style lang="scss">
|
.recordclass {
|
// background: rgb(228, 231, 225);
|
color: #00f;
|
}
|
|
.record {
|
background-color: #f6faff;
|
padding: 0;
|
}
|
|
.listdiv {
|
margin-top: 20px;
|
|
.listrow {
|
margin-top: 10px;
|
width: 94%;
|
margin-left: 3%;
|
height: 129px;
|
background: #fff;
|
box-shadow: 0 2px 4px 0 rgba(70, 150, 249, 0.1);
|
border-radius: 8px;
|
|
.lable {
|
width: 90%;
|
margin-left: 5%;
|
height: 40px;
|
font-size: 13px;
|
font-family: Arial, sans-serif;
|
font-weight: 400;
|
color: #aaa;
|
line-height: 40px;
|
border-bottom: #f1f1f2 solid 1px;
|
}
|
|
.lable2 {
|
width: 90%;
|
margin-left: 5%;
|
height: 40px;
|
font-size: 13px;
|
font-family: Arial, sans-serif;
|
font-weight: 400;
|
color: #aaa;
|
line-height: 40px;
|
margin-bottom: 10px;
|
}
|
|
.item {
|
// margin-top: 10px;
|
width: 90%;
|
margin-left: 5%;
|
height: 30px;
|
font-size: 13px;
|
font-family: Arial, sans-serif;
|
font-weight: 500;
|
color: #333;
|
line-height: 30px;
|
background: #fff;
|
border-bottom: #f1f1f2 solid 1px;
|
}
|
}
|
}
|
|
.fanhui {
|
// padding-top: 20px;
|
width: 100%;
|
background: #4696f9;
|
text-align: center;
|
border-radius: 5px;
|
color: #fff;
|
height: 36px;
|
line-height: 36px;
|
}
|
/* stylelint-disable selector-pseudo-class-no-unknown */
|
:deep(.van-calendar__day--end) {
|
border-radius: 0 var(--van-border-radius-md) var(--van-border-radius-md) 0;
|
background: #4696f9;
|
}
|
</style>
|