|
|
@ -1,5 +1,6 @@ |
|
|
|
<template> |
|
|
|
<div class="subject-management"> |
|
|
|
<div class="subject"> |
|
|
|
<div v-if="!detailViewVisible" class="subject-management"> |
|
|
|
<div class="subject-left"> |
|
|
|
<el-scrollbar style="height: 100%"> |
|
|
|
<div class="photo-groups"> |
|
|
@ -36,10 +37,10 @@ |
|
|
|
placeholder="姓名" |
|
|
|
class="input-with-select" |
|
|
|
clearable |
|
|
|
@clear="getDataList()" |
|
|
|
@change="getDataList()" |
|
|
|
@clear="getDataListInitial()" |
|
|
|
@change="getDataListInitial()" |
|
|
|
> |
|
|
|
<el-button slot="append" icon="el-icon-search" @click="getDataList()" /> |
|
|
|
<el-button slot="append" icon="el-icon-search" @click="getDataListInitial()" /> |
|
|
|
</el-input> |
|
|
|
</div> |
|
|
|
|
|
|
@ -147,7 +148,7 @@ |
|
|
|
</span> |
|
|
|
</el-button> |
|
|
|
<el-dropdown-menu slot="dropdown"> |
|
|
|
<el-dropdown-item command="export">导出</el-dropdown-item> |
|
|
|
<!-- <el-dropdown-item command="export">导出</el-dropdown-item>--> |
|
|
|
<el-dropdown-item command="remove">移除</el-dropdown-item> |
|
|
|
<el-dropdown-item command="group">分组</el-dropdown-item> |
|
|
|
</el-dropdown-menu> |
|
|
@ -160,7 +161,7 @@ |
|
|
|
</span> |
|
|
|
</el-button> |
|
|
|
<el-dropdown-menu slot="dropdown"> |
|
|
|
<el-dropdown-item command="export">导出</el-dropdown-item> |
|
|
|
<!-- <el-dropdown-item command="export">导出</el-dropdown-item>--> |
|
|
|
<el-dropdown-item command="remove">移除</el-dropdown-item> |
|
|
|
<el-dropdown-item command="group">分组</el-dropdown-item> |
|
|
|
</el-dropdown-menu> |
|
|
@ -169,6 +170,7 @@ |
|
|
|
</checked-footer> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- 分组 --> |
|
|
|
<el-dialog |
|
|
@ -192,25 +194,6 @@ |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 详情页 --> |
|
|
|
<el-dialog |
|
|
|
class="dialog-360" |
|
|
|
:visible.sync="dialogVisible" |
|
|
|
:title="'患者360'" |
|
|
|
:close-on-click-modal="false" |
|
|
|
:close-on-press-escape="false" |
|
|
|
:fullscreen="true" |
|
|
|
append-to-body |
|
|
|
> |
|
|
|
<patient-view |
|
|
|
v-if="dialogVisible" |
|
|
|
ref="detailView" |
|
|
|
:patient-id-number="patient.patientIdNumber" |
|
|
|
:project-id="patient.projectId" |
|
|
|
:is-subject="true" |
|
|
|
/> |
|
|
|
</el-dialog> |
|
|
|
|
|
|
|
<!-- 添加分组弹框 --> |
|
|
|
<el-dialog title="添加分组" :visible.sync="dialogFormVisible" @close="CloseDialog"> |
|
|
|
<el-form ref="addGroupRuleForm" :model="formGroup" :rules="addGroupRules" @submit.native.prevent> |
|
|
@ -249,9 +232,12 @@ |
|
|
|
<el-button type="primary" @click="exportOK()">确 定</el-button> |
|
|
|
</span> |
|
|
|
</el-dialog> |
|
|
|
<!-- 详情页 --> |
|
|
|
<detail-view v-if="detailViewVisible" ref="viewRef" :only-read="onlyRead" :is-search="'1'" :patient-id="patientId" @detailViewVisible="detailViewVisible=false" /> |
|
|
|
</div> |
|
|
|
</template> |
|
|
|
<script> |
|
|
|
import detailView from '@/components/360View/index' // 360试图 |
|
|
|
import checked from '@/mixins/checked' |
|
|
|
import patientView from '@/components/patient-view' |
|
|
|
import checkedFooter from '@/components/checked-footer' |
|
|
@ -262,7 +248,7 @@ import { formatDate } from '@/utils/index.js' |
|
|
|
import eventBus from '@/page-subspecialty/utils/eventBus' |
|
|
|
|
|
|
|
export default { |
|
|
|
components: { patientView, checkedFooter, kpiSelect, deviceSelect }, |
|
|
|
components: { patientView, checkedFooter, kpiSelect, deviceSelect, detailView }, |
|
|
|
mixins: [checked], |
|
|
|
data() { |
|
|
|
return { |
|
|
@ -313,8 +299,10 @@ export default { |
|
|
|
patient: { |
|
|
|
patientIdNumber: '', |
|
|
|
projectId: '' |
|
|
|
} |
|
|
|
|
|
|
|
}, |
|
|
|
detailViewVisible: false, |
|
|
|
patientId: '', |
|
|
|
onlyRead: true |
|
|
|
} |
|
|
|
}, |
|
|
|
computed: { |
|
|
@ -327,38 +315,37 @@ export default { |
|
|
|
}, |
|
|
|
created() { |
|
|
|
this.formGroup.projectId = this.$route.query.projectId |
|
|
|
this.getDataList() |
|
|
|
this.projectId = this.$route.query.projectId |
|
|
|
this.getDataListInitial() |
|
|
|
this.getGroupList() |
|
|
|
}, |
|
|
|
mounted() { |
|
|
|
eventBus.$off('getSubjectSuccess') |
|
|
|
eventBus.$on('getSubjectSuccess', () => { |
|
|
|
this.getGroupList() |
|
|
|
this.getDataList() |
|
|
|
this.getDataListInitial() |
|
|
|
}) |
|
|
|
}, |
|
|
|
methods: { |
|
|
|
|
|
|
|
refresh() { |
|
|
|
this.getGroupList() |
|
|
|
this.grouplistClick(this.groupId, this.currentIndex) |
|
|
|
}, |
|
|
|
// 查看详情 |
|
|
|
showDetail(row) { |
|
|
|
// console.log(row) |
|
|
|
this.dialogVisible = true |
|
|
|
this.patient.patientIdNumber = row.patientIdNumber |
|
|
|
this.patient.projectId = this.projectId |
|
|
|
this.patientId = row.patientId |
|
|
|
console.log(this.patientId) |
|
|
|
this.detailViewVisible = true |
|
|
|
}, |
|
|
|
// 点击分组列表 |
|
|
|
grouplistClick(id, index) { |
|
|
|
this.groupId = id |
|
|
|
this.currentIndex = index |
|
|
|
this.page = 1 |
|
|
|
this.getDataList() |
|
|
|
this.getDataListInitial() |
|
|
|
}, |
|
|
|
// 获取受试者分组里的列表 右侧 |
|
|
|
getDataList() { |
|
|
|
getDataListInitial() { |
|
|
|
this.tabelLoading = true |
|
|
|
this.$http.get('/project/patient/page', { |
|
|
|
params: { |
|
|
@ -443,6 +430,7 @@ export default { |
|
|
|
}).then(({ data: res }) => { |
|
|
|
this.groupList = [{ name: '全部', id: '' }, { name: '未分组', id: 0 }, ...res.data.list] |
|
|
|
this.groupListAll = res.data |
|
|
|
console.log(this.groupList) |
|
|
|
}) |
|
|
|
}, |
|
|
|
// 修改编辑分组列表 |
|
|
@ -505,6 +493,7 @@ export default { |
|
|
|
// 分组 |
|
|
|
handleGroup(type) { |
|
|
|
this.dialogVisible_group = true |
|
|
|
console.log(type) |
|
|
|
this.dialogGroup.type = type |
|
|
|
}, |
|
|
|
handleGroup_OK() { |
|
|
@ -610,13 +599,13 @@ export default { |
|
|
|
// 分页, 当前页 |
|
|
|
pageCurrentChangeHandle(val) { |
|
|
|
this.page = val |
|
|
|
this.getDataList() |
|
|
|
this.getDataListInitial() |
|
|
|
}, |
|
|
|
// 分页, 每页条数 |
|
|
|
pageSizeChangeHandle(val) { |
|
|
|
this.page = 1 |
|
|
|
this.limit = val |
|
|
|
this.getDataList() |
|
|
|
this.getDataListInitial() |
|
|
|
}, |
|
|
|
// 分组下拉菜单 |
|
|
|
async handleGroupCommand(e) { |
|
|
@ -753,6 +742,9 @@ export default { |
|
|
|
font-size: 12px; |
|
|
|
} |
|
|
|
} |
|
|
|
.subject{ |
|
|
|
height: 100%; |
|
|
|
} |
|
|
|
.subject-management .detail-view { |
|
|
|
.el-dialog { |
|
|
|
background: #000; |
|
|
|