postdischarge-ui/src/views/system/specialDiseaseNode/index.vue

339 lines
9.9 KiB
Vue
Raw Normal View History

2024-03-25 09:45:10 +08:00
<template>
<div class="app-container">
2024-03-26 14:49:50 +08:00
<el-descriptions title="添加主路径" />
<div class="title">
<el-tag>主路径</el-tag>
<div>
卒中后癫痫
</div>
2024-03-26 16:04:26 +08:00
<div class="select">
<span>
适用范围
</span>
<el-select v-model="value">
<el-option label="出院后" value="item.value">
</el-option>
</el-select>
</div>
2024-03-26 14:49:50 +08:00
</div>
<div class="list">
<div class="timelist">
<div class="timetitle">
管理路径节点({{ timelinelist.length }})
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
2024-03-25 09:45:10 +08:00
</div>
2024-03-26 14:49:50 +08:00
<el-timeline>
<el-timeline-item v-for="(item, index) in timelinelist" :key="index"
:color="listindex == index ? '#409EFF' : ''">
<div class="top" @click="topclickevent(index)">
<div class="toptop">
2024-03-26 16:04:26 +08:00
<el-select v-model="value" style="width:87px">
2024-03-26 14:49:50 +08:00
<el-option label="出院后" value="item.value">
</el-option>
</el-select>
2024-03-26 16:04:26 +08:00
<el-input v-model="input" style="width: 50px;"></el-input>
2024-03-26 14:49:50 +08:00
<span></span>
</div>
<div>
<i class="el-icon-delete" @click="delitem(item)"></i>
<i class="el-icon-circle-plus-outline" @click="additem(item)"></i>
</div>
</div>
<el-card v-for="(uitem, uindex) in item.list" :key="uitem.id"
2024-03-27 15:57:52 +08:00
@click.native='bottomclickevent(uitem, index, uindex)'
2024-03-26 14:49:50 +08:00
:class="listindex == index && itemindex == uindex ? 'cards' : ''">
<h4>{{ uitem.title }}</h4>
<p>{{ uitem.text }}</p>
</el-card>
</el-timeline-item>
</el-timeline>
</div>
<div class="texts">
2024-03-26 16:04:26 +08:00
<div class="topform">
<el-form ref="form" :inline="true" :model="form" label-width="60px" class="form">
<el-form-item label="任务类型" prop="name">
2024-03-27 15:57:52 +08:00
<el-select v-model="value" style="width:100px" @change="changeTaskType">
<el-option v-for="item in selectTaskTypeList" :key="item.id" :label="item.taskTypeName"
:value="item.id">
2024-03-26 16:04:26 +08:00
</el-option>
</el-select>
</el-form-item>
<el-form-item label="任务细分" prop="name">
<el-select v-model="value" style="width:100px">
2024-03-27 15:57:52 +08:00
<el-option v-for="item in taskPartitionList" :key="item.id" :label="item.taskTypeName"
:value="item.id">
2024-03-26 16:04:26 +08:00
</el-option>
</el-select>
</el-form-item>
<el-form-item label="任务状态" prop="name">
<el-select v-model="value" style="width:100px">
2024-03-27 15:57:52 +08:00
<el-option v-for="item in taskStatusDictList" :key="item.id"
:label="item.taskStatusName" :value="item.id">
2024-03-26 16:04:26 +08:00
</el-option>
</el-select>
</el-form-item>
<el-form-item label="二级分类描述" prop="name" label-width="90px">
<el-input v-model="form.name" style="width:100px"></el-input>
</el-form-item>
<el-form-item label="执行时间" prop="name">
<el-select v-model="value" style="width:100px">
<el-option label="出院后" value="item.value">
</el-option>
</el-select>
</el-form-item>
</el-form>
</div>
2024-03-29 10:25:31 +08:00
<div class="bottomform">
<wangeditor style="height:300px;width:100%;" ref="editor" />
</div>
2024-03-26 14:49:50 +08:00
</div>
</div>
2024-03-25 09:45:10 +08:00
</div>
</template>
<script>
import wangeditor from '../components/wangEditor.vue'
2024-03-27 15:57:52 +08:00
import {
selectTaskTypeList, taskPartitionList, taskStatusDictList
} from '@/api/system/specialDiseaseNode'
2024-03-25 09:45:10 +08:00
export default {
components: { wangeditor },
name: "specialDiseaseNode",
data() {
return {
2024-03-26 16:04:26 +08:00
form: { name: '' },
2024-03-25 09:45:10 +08:00
itemindex: 0,
listindex: 0,
timelinelist: [{
title: '选项1',
text: '黄金糕',
list: [
{
title: '选项1',
text: '黄金糕',
},
{
title: '选项1',
text: '黄金糕',
},
],
}, {
title: '选项2',
text: '双皮奶',
list: [
{
title: '选项1',
text: '黄金糕',
},
],
}, {
title: '选项3',
text: '蚵仔煎',
list: [
{
title: '选项1',
text: '黄金糕',
},
{
title: '选项1',
text: '黄金糕',
},
],
}, {
title: '选项4',
text: '龙须面'
}, {
title: '选项5',
text: '北京烤鸭',
list: [
{
title: '选项1',
text: '黄金糕',
},
{
title: '选项1',
text: '黄金糕',
},
],
}],
value: '',
input: '',
2024-03-27 15:57:52 +08:00
//任务类型
selectTaskTypeList: [],
//任务状态
taskStatusDictList: [],
//任务细分
taskPartitionList: [],
2024-03-25 09:45:10 +08:00
};
},
created() {
2024-03-27 15:57:52 +08:00
this.taskinfo();
2024-03-25 09:45:10 +08:00
},
watch: {
},
mounted() {
2024-03-26 14:49:50 +08:00
// console.log(this.$refs.editor.html)
2024-03-25 09:45:10 +08:00
},
methods: {
topclickevent(index) {
this.listindex = index
this.itemindex = 0
},
2024-03-27 15:57:52 +08:00
bottomclickevent(uitem, index, uindex) {
this.uitem = uitem
2024-03-25 09:45:10 +08:00
this.listindex = index
this.itemindex = uindex
},
handleStep() {
this.active = 2
},
2024-03-27 15:57:52 +08:00
//任务类型 任务状态
taskinfo() {
selectTaskTypeList().then(res => {
this.selectTaskTypeList = res.data
})
taskStatusDictList().then(res => {
this.taskStatusDictList = res.data
})
},
//任务细分
changeTaskType(id) {
taskPartitionList(id).then(res => {
this.taskPartitionList = res.data
})
},
2024-03-25 09:45:10 +08:00
}
};
</script>
<style scoped lang="scss">
2024-03-29 10:25:31 +08:00
.bottomform {
overflow: scroll;
height: 930px;
}
2024-03-26 16:04:26 +08:00
.topform {
padding: 15px 0 0 15px;
2024-03-29 10:25:31 +08:00
height: 70px;
2024-03-26 16:04:26 +08:00
.form {
::v-deep .el-input__inner {
height: 30px !important;
line-height: 30px !important;
}
::v-deep .el-form-item__label {
font-size: 12px !important;
}
}
}
2024-03-26 14:49:50 +08:00
.title {
display: flex;
align-items: center;
div {
2024-03-26 16:04:26 +08:00
display: flex;
2024-03-26 14:49:50 +08:00
padding-left: 10px;
font-weight: 600;
2024-03-26 16:04:26 +08:00
align-items: center;
}
.select {
font-weight: 550;
margin-left: 20%;
font-size: 12px;
.el-input {
width: 200px;
height: 30px !important;
line-height: 30px !important;
}
2024-03-26 14:49:50 +08:00
}
}
2024-03-26 16:04:26 +08:00
::v-deep .el-input__inner {
height: 30px !important;
line-height: 30px !important;
}
2024-03-26 14:49:50 +08:00
.list {
margin: 20px auto;
width: 100%;
background-color: #f2f4f5;
display: flex;
2024-03-26 16:04:26 +08:00
padding-top: 15px;
2024-03-26 14:49:50 +08:00
justify-content: space-evenly;
.timelist {
2024-03-26 16:04:26 +08:00
width: 22%;
2024-03-26 14:49:50 +08:00
background-color: #fff;
padding: 0 20px 20px;
2024-03-29 10:25:31 +08:00
height: 1000px;
overflow: scroll;
2024-03-26 14:49:50 +08:00
.timetitle {
height: 60px;
display: flex;
align-items: center;
justify-content: space-between;
}
::v-deep .el-timeline {
width: 100%;
padding: 15px 0 0 !important;
}
}
.texts {
2024-03-26 16:04:26 +08:00
width: 75%;
2024-03-26 14:49:50 +08:00
background-color: #fff;
height: 1000px;
2024-03-29 10:25:31 +08:00
overflow: scroll;
2024-03-26 14:49:50 +08:00
}
}
2024-03-25 09:45:10 +08:00
.cards {
border: 1px solid #409EFF;
border-left: 5px solid #409EFF;
}
.top {
display: flex;
justify-content: space-between;
align-items: center;
.toptop {
display: flex;
align-items: center;
}
span {
2024-03-26 16:04:26 +08:00
padding: 0 4px;
2024-03-25 09:45:10 +08:00
}
i {
font-size: 17px;
}
2024-03-26 16:04:26 +08:00
i:nth-child(2) {
padding-left: 12px;
}
2024-03-25 09:45:10 +08:00
}
::v-deep .el-timeline-item__timestamp {
margin: 0 !important;
padding: 0 !important;
}
2024-03-26 16:04:26 +08:00
::v-deep .el-timeline-item__wrapper {
padding-left: 14px !important;
}
2024-03-25 09:45:10 +08:00
::v-deep .el-timeline-item__content {
transform: translateY(-2%);
}
::v-deep .el-card {
margin-top: 20px !important;
}
</style>