6 changed files with 198 additions and 55 deletions
@ -0,0 +1,141 @@ |
|||||
|
<template> |
||||
|
<div id="multipleTable"> |
||||
|
<div v-if="curProject" class="project_title">医疗项目:{{ curProject.itemName }}</div> |
||||
|
<el-table |
||||
|
:data="dataList" |
||||
|
tooltip-effect="dark" |
||||
|
style="width: 100%" |
||||
|
@sort-change="sortList" |
||||
|
> |
||||
|
<el-table-column label="预约时间" header-align="center" align="center" width="110px"> |
||||
|
<template slot-scope="scope"> |
||||
|
{{ scope.row.appointDate ? scope.row.appointDate : '-' }} |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="类型" prop="source" header-align="center" align="center" width="55px" /> |
||||
|
<el-table-column label="负责医生" header-align="center" align="center" width="100px"> |
||||
|
<template slot-scope="scope"> |
||||
|
{{ scope.row.doctorName ? scope.row.doctorName : '-' }} |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="patientName" label="患者姓名" header-align="center" align="center" width="100px" /> |
||||
|
<el-table-column prop="patientId" label="登记号" header-align="center" align="center" width="120px" /> |
||||
|
<el-table-column prop="patientPhone" label="电话" header-align="center" align="center" width="120px" /> |
||||
|
<el-table-column label="眼别" prop="eyeType" header-align="center" align="center" width="80px" /> |
||||
|
<el-table-column label="项目" prop="project" header-align="center" align="center" width="120px"> |
||||
|
<template slot-scope="scope"> |
||||
|
<div v-if="scope.row.project"> |
||||
|
<div v-for="item in scope.row.project.split(',')" :key="item"> |
||||
|
<div v-if="item!=='其他'"> |
||||
|
{{ item }} |
||||
|
</div> |
||||
|
<div v-else> |
||||
|
{{ `${item}: ${scope.row.otherProject}` }} |
||||
|
</div> |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="准备工作" prop="preparation" header-align="center" align="center" width="120px"> |
||||
|
<template slot-scope="scope"> |
||||
|
<div> |
||||
|
<div v-if="showPreparation(scope.row.preparation,'医嘱已开')" :class="{active_check:showPreparation(scope.row.preparation,'医嘱已开')}"> |
||||
|
医嘱已开 |
||||
|
</div> |
||||
|
<div v-if="showPreparation(scope.row.preparation,'散瞳')" :class="{active_check:showPreparation(scope.row.preparation,'散瞳')}"> |
||||
|
散瞳 |
||||
|
</div> |
||||
|
<div v-if="showPreparation(scope.row.preparation,'表麻')" :class="{active_check:showPreparation(scope.row.preparation,'表麻')}"> |
||||
|
表麻 |
||||
|
</div> |
||||
|
<div v-if="showPreparation(scope.row.preparation,'全身检查完成')" :class="{active_check:showPreparation(scope.row.preparation,'全身检查完成')}"> |
||||
|
全身检查完成 |
||||
|
</div> |
||||
|
<div v-if="showPreparation(scope.row.preparation,'缩瞳')" :class="{active_check_red:showPreparation(scope.row.preparation,'缩瞳')}"> |
||||
|
缩瞳 |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column sortable label="是否到达" header-align="center" align="center" width="110px"> |
||||
|
<template slot-scope="scope"> |
||||
|
<div> |
||||
|
<el-select v-model="scope.row.arrival" :class="{'active_check':scope.row.arrival==='Y'}" class="arrivalSelect" placeholder="" size="small" @change="value=>changeEyeType(value,scope)"> |
||||
|
<el-option |
||||
|
v-for="item in arrivalList" |
||||
|
:key="item.value" |
||||
|
:label="item.label" |
||||
|
:value="item.value" |
||||
|
/> |
||||
|
</el-select> |
||||
|
<div v-if="scope.row.arrivalDate && scope.row.arrival==='Y'"> |
||||
|
{{ scope.row.arrivalDate }} |
||||
|
</div> |
||||
|
</div> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="操作" class-name="hidden" header-align="center" align="center" width="200px"> |
||||
|
<template slot-scope="scope"> |
||||
|
<span class="call" @click="editOpera(scope.row)">{{ scope.row.appointDate ? "改约":"预约" }}</span> |
||||
|
<span class="cancel" @click="cancelClick(scope.row)">取消</span> |
||||
|
<span class="call" @click="checkPatientDetail(scope.row)">患者360</span> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
export default { |
||||
|
name: 'PrintTable', |
||||
|
props: { |
||||
|
curProject: { |
||||
|
type: Object |
||||
|
}, |
||||
|
dataList: { |
||||
|
type: Array |
||||
|
}, |
||||
|
arrivalList: { |
||||
|
type: Array |
||||
|
} |
||||
|
}, |
||||
|
methods: { |
||||
|
sortList(val) { |
||||
|
if (val.order === 'ascending') { |
||||
|
val.order = 'asc' |
||||
|
} |
||||
|
if (val.order === 'descending') { |
||||
|
val.order = 'desc' |
||||
|
} |
||||
|
this.dataForm.arrivalSort = val.order |
||||
|
this.getDataList() |
||||
|
}, |
||||
|
showPreparation(scope, value) { |
||||
|
if (!scope) { |
||||
|
return false |
||||
|
} |
||||
|
return scope.includes(value) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style lang="scss" scoped> |
||||
|
.active_check{ |
||||
|
color: #409EFF; |
||||
|
} |
||||
|
.active_check_red{ |
||||
|
color: #ff0000; |
||||
|
} |
||||
|
.arrivalSelect{ |
||||
|
::v-deep .el-input__suffix{ |
||||
|
display: none; |
||||
|
} |
||||
|
::v-deep .el-input__inner{ |
||||
|
border: 0; |
||||
|
font-size: 16px; |
||||
|
text-align: center; |
||||
|
padding: 0; |
||||
|
} |
||||
|
} |
||||
|
</style> |
Loading…
Reference in new issue