Browse Source

sumdoctor

master
pengjun 2 years ago
parent
commit
f41909b431
  1. 25
      src/components/sumDoctorCheck/ButtonList.vue
  2. 16
      src/components/sumDoctorCheck/CheckDetails.vue
  3. 6
      src/components/sumDoctorCheck/SumAsbItemStatus.vue
  4. 6
      src/components/sumDoctorCheck/SumDiagnosis.vue
  5. 17
      src/components/sumDoctorCheck/SumHistory.vue
  6. 29
      src/components/sumDoctorCheck/SumItems.vue
  7. 11
      src/components/sumDoctorCheck/SumItemsType.vue
  8. 11
      src/components/sumDoctorCheck/SumSug.vue
  9. 2
      src/views/doctorCheck/doctorCheck.vue
  10. 14
      src/views/doctorCheck/sumDoctorCheck.vue

25
src/components/sumDoctorCheck/ButtonList.vue

@ -1,28 +1,28 @@
<template>
<div>
<div v-show="checkPagePriv(pagePriv.privs,'人员列表')" class="listBtn">
<el-button type="primary" class="btnClass" @click="prList">人员列表</el-button>
<el-button type="primary" class="commonbutton" @click="prList">人员列表</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'医生诊台')" class="listBtn">
<el-button type="primary" class="btnClass" @click="toDoctorCheck">医生诊台</el-button>
<el-button type="primary" class="commonbutton" @click="toDoctorCheck">医生诊台</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'保存')" class="listBtn">
<el-button type="primary" class="btnClass" @click="save">保存</el-button>
<el-button type="primary" class="commonbutton" @click="save">保存</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'修改')" class="listBtn">
<el-button type="primary" class="btnClass" @click="edit">修改</el-button>
<el-button type="primary" class="commonbutton" @click="edit">修改</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'取消总检')" class="listBtn">
<el-button type="primary" class="btnClass" @click="del">取消总检</el-button>
<el-button type="primary" class="commonbutton" @click="del">取消总检</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'审核')" class="listBtn">
<el-button type="primary" class="btnClass" @click="audit">审核</el-button>
<el-button type="primary" class="commonbutton" @click="audit">审核</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'取消审核')" class="listBtn">
<el-button type="primary" class="btnClass" @click="unAudit">取消审核</el-button>
<el-button type="primary" class="commonbutton" @click="unAudit">取消审核</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'新增建议')" class="listBtn">
<el-button type="primary" class="btnClass" @click="addSuggtion">新增建议</el-button>
<el-button type="primary" class="commonbutton" @click="addSuggtion">新增建议</el-button>
</div>
<!-- 直接放在 建议旁边
<div class="listBtn">
@ -30,13 +30,13 @@
</div>
-->
<div v-show="checkPagePriv(pagePriv.privs,'体检报告')" class="listBtn">
<el-button type="primary" class="btnClass" @click="report">体检报告</el-button>
<el-button type="primary" class="commonbutton" @click="report">体检报告</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'复查')" class="listBtn">
<el-button type="primary" class="btnClass" @click="reCheck">复查</el-button>
<el-button type="primary" class="commonbutton" @click="reCheck">复查</el-button>
</div>
<div v-show="checkPagePriv(pagePriv.privs,'干预措施')" class="listBtn">
<el-button type="primary" class="btnClass" @click="intervene">干预措施</el-button>
<el-button type="primary" class="commonbutton" @click="intervene">干预措施</el-button>
</div>
@ -481,7 +481,4 @@ export default {
text-align: center;
}
.btnClass {
width: 100px;
}
</style>

16
src/components/sumDoctorCheck/CheckDetails.vue

@ -1,10 +1,13 @@
<template>
<div :style="'overflow: scroll;width:100%;height:'+(window.pageHeight < 600 ? 330:window.pageHeight-270)+'px;'">
<div :style="'overflow: scroll;width:100%;height:' + divHeight + 'px;'">
<table width="100%" style="font-size:14px;">
<tbody v-for="(item, index) of tableData" :key="index">
<tr height="30"><td style="text-align: center;font-weight: bolder;">{{item.itemTypeName}}</td></tr>
<tr height="30">
<td style="text-align: center;font-weight: bolder;">{{ item.itemTypeName }}</td>
</tr>
<tr>
<table v-for="(item2,index2) in item.asbitems" :key="index + '-' + index2" width="100%" border="1" cellspacing="0" bordercolor="#909399" style="border-collapse:collapse;">
<table v-for="(item2, index2) in item.asbitems" :key="index + '-' + index2" width="100%" border="1"
cellspacing="0" bordercolor="#909399" style="border-collapse:collapse;">
<tr height="24">
<td width="200">{{ item2.asbitemName }}</td>
<td width="604" colspan="5">{{ '检查日期:' + item2.checkDate + ' 检查医生:' + item2.checkDoctorName }}</td>
@ -37,7 +40,7 @@
</table>
</div>
</template>
<script lang="ts">
<script>
import { mapState } from 'vuex';
import Sortable from "sortablejs";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
@ -62,6 +65,11 @@ export default {
computed: {
...mapState(['window', 'dict', 'doctorCheck', 'sumDoctorCheck']),
divHeight() {
let tempHeight = this.window.pageHeight < 600 ? 600 : this.window.pageHeight
return tempHeight - 195
},
},
methods: {

6
src/components/sumDoctorCheck/SumAsbItemStatus.vue

@ -59,6 +59,10 @@ export default {
computed: {
...mapState(["window","dict", "doctorCheck", "sumDoctorCheck"]),
sumHeight(){
let tempHeight = this.window.pageHeight < 600 ? 600:this.window.pageHeight
return tempHeight - 320
},
},
methods: {
getSumAsbItemStatus(PatientRegisterId) {
@ -96,7 +100,7 @@ export default {
<style scoped>
.asbitemListClass {
display: block;
width: v-bind("Math.floor((window.pageWidth - 110 - 15 - 45)/4) + 'px'");
width: v-bind("Math.floor((window.pageWidth - 110 - 15 - 15)/4) + 'px'");
margin-left: 3px;
}

6
src/components/sumDoctorCheck/SumDiagnosis.vue

@ -10,7 +10,7 @@
</div>
</div>
<div>
<el-table :data="sumDoctorCheck.diagnosisList" :height="window.pageHeight < 600 ? 178 : window.pageHeight - 390 - 32" width="100%" size="small">
<el-table :data="sumDoctorCheck.diagnosisList" :height="sumHeight" width="100%" size="small">
<!-- temporaryselection personnelUnit.nogroupselected-->
<!--
"patientRegisterId": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
@ -69,6 +69,10 @@ export default {
mounted() { },
computed: {
...mapState(["window", "dict", "patientRegister", "customerOrg", "doctorCheck", "sumDoctorCheck", "report"]),
sumHeight(){
let tempHeight = this.window.pageHeight < 600 ? 600:this.window.pageHeight
return tempHeight - 352
},
},
methods: {
checkPagePriv,

17
src/components/sumDoctorCheck/SumHistory.vue

@ -1,5 +1,5 @@
<template>
<div :style="'overflow: scroll;width:100%;height:'+(window.pageHeight < 600 ? 330:window.pageHeight-270)+'px;'">
<div :style="'overflow: scroll;width:100%;height:' + divHeight + 'px;'">
<table width="800">
<tbody v-for="(item, index) of tableData" :key="index">
<tr height="40">
@ -8,12 +8,16 @@
<td width="200">总检医生{{ item.summaryDoctor }}</td>
<td>总检日期{{ item.summaryDate }}</td>
</tr>
<tr height="10"><td colspan="4"></td></tr>
<tr height="10">
<td colspan="4"></td>
</tr>
<tr height="40">
<td width="100" style="vertical-align: top;">检查综述</td>
<td colspan="3" v-html="item.sumSummarys"></td>
</tr>
<tr height="20"><td colspan="4"></td></tr>
<tr height="20">
<td colspan="4"></td>
</tr>
<tr height="40">
<td width="100" style="vertical-align: top;">医生建议</td>
<td colspan="3" v-html="item.sumSuggestions"></td>
@ -47,6 +51,10 @@ export default {
computed: {
...mapState(['window', 'dict', 'doctorCheck', 'sumDoctorCheck']),
divHeight() {
let tempHeight = this.window.pageHeight < 600 ? 600 : this.window.pageHeight
return tempHeight - 195
},
},
methods: {
@ -98,6 +106,5 @@ export default {
::v-deep .el-table td.el-table__cell,
.el-table th.el-table__cell.is-leaf {
padding: 0;
}
</style>
}</style>

29
src/components/sumDoctorCheck/SumItems.vue

@ -2,21 +2,21 @@
<div style="display: flex;width:100%;">
<div style="width:180;">
<!-- :row-class-name="tableRowClassName" -->
<el-table :data="RegisterCheckList" width="180"
:height="window.pageHeight < 600 ? 330:window.pageHeight-270"
border highlight-current-row
<el-table :data="RegisterCheckList" width="180" :height="divHeight" border highlight-current-row
@row-click="rowClick">
<el-table-column prop="asbitemName" label="组合项目" width="180">
<template slot-scope="scope">
<div>
<el-tooltip class="item" effect="dark" content="未检" placement="top">
<i v-show="scope.row.completeFlag == '0'" class="el-icon-circle-plus" style="font-size: 18px;color: red;"></i>
<i v-show="scope.row.completeFlag == '0'" class="el-icon-circle-plus"
style="font-size: 18px;color: red;" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="已检" placement="top">
<i v-show="scope.row.completeFlag == '1'" class="el-icon-success" style="font-size: 18px;color: green;"></i>
<i v-show="scope.row.completeFlag == '1'" class="el-icon-success"
style="font-size: 18px;color: green;" />
</el-tooltip>
<el-tooltip class="item" effect="dark" content="弃检" placement="top">
<i v-show="scope.row.completeFlag == '2'" class="el-icon-remove" style="font-size: 18px;"></i>
<i v-show="scope.row.completeFlag == '2'" class="el-icon-remove" style="font-size: 18px;" />
</el-tooltip>
{{ scope.row.asbitemName }}
</div>
@ -24,20 +24,19 @@
</el-table-column>
</el-table>
</div>
<div :style="'width:' + (window.pageWidth - 180 - 110 - 45) + 'px;'">
<el-table :data="tableData" :width="(window.pageWidth - 330 - 80)"
:height="window.pageHeight < 600 ? 330:window.pageHeight-270"
border highlight-current-row>
<div :style="'width:' + (window.pageWidth - 180 - 110 - 15) + 'px;'">
<el-table :data="tableData" :height="divHeight" border highlight-current-row>
<el-table-column prop="itemName" label="项目" width="150" />
<el-table-column prop="unitName" label="单位" width="80" align="center" />
<el-table-column prop="referenceRangeValue" label="参考范围" width="80" align="center" />
<el-table-column v-for="(item, index) of tableCols" :label="item" :prop="item" :key="index" min-width="150" align="center">
<el-table-column v-for="(item, index) of tableCols" :label="item" :prop="item" :key="index" min-width="150"
align="center">
</el-table-column>
</el-table>
</div>
</div>
</template>
<script lang="ts">
<script>
import { mapState } from 'vuex';
import Sortable from "sortablejs";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
@ -65,6 +64,11 @@ export default {
computed: {
...mapState(['window', 'dict', 'doctorCheck', 'sumDoctorCheck']),
divHeight() {
let tempHeight = this.window.pageHeight < 600 ? 600 : this.window.pageHeight
return tempHeight - 195
},
},
methods: {
@ -182,6 +186,5 @@ export default {
</script>
<style scoped>
@import '../../assets/css/global_table.css';
</style>

11
src/components/sumDoctorCheck/SumItemsType.vue

@ -1,8 +1,6 @@
<template>
<div :style="'width:100%;height:'+(window.pageHeight < 600 ? 330:window.pageHeight-270)+'px;'">
<el-table :data="tableData"
:height="window.pageHeight < 600 ? 330:window.pageHeight-270"
border highlight-current-row >
<div style="'width:100%;">
<el-table :data="tableData" :height="divHeight" border highlight-current-row>
<el-table-column prop="itemTypeName" label="项目" width="180" />
<el-table-column v-for="(item, index) of tableCols" :label="item" :prop="item" :key="index" width="200">
</el-table-column>
@ -37,6 +35,11 @@ export default {
computed: {
...mapState(['window', 'dict', 'doctorCheck', 'sumDoctorCheck']),
divHeight() {
let tempHeight = this.window.pageHeight < 600 ? 600 : this.window.pageHeight
return tempHeight - 195
},
},
methods: {

11
src/components/sumDoctorCheck/SumSug.vue

@ -2,7 +2,7 @@
<div style="display: flex;">
<div style="width:50%;">
<el-table id="tableSummary" row-key="id" :data="sumDoctorCheck.summaryList" width="100%"
:height="window.pageHeight < 600 ? 210 : window.pageHeight - 390" border size="small">
:height="sumHeight" border size="small">
<el-table-column type="index" width="20" align="center"/>
<el-table-column prop="summaryTitle" label="综述">
<template slot-scope="scope">
@ -31,7 +31,7 @@
</div>
<div style="width:50%;">
<el-table id="tableSuggestion" row-key="id" :data="sumDoctorCheck.suggestionList" width="100%"
:height="window.pageHeight < 600 ? 210 : window.pageHeight - 390" border size="small">
:height="sumHeight" border size="small">
<el-table-column type="index" width="20" align="center">
</el-table-column>
<el-table-column prop="suggestionTitle" label="建议">
@ -79,7 +79,7 @@
</div>
</div>
</template>
<script lang="ts">
<script>
import { mapState } from 'vuex';
import Sortable from "sortablejs";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
@ -112,6 +112,11 @@ export default {
computed: {
...mapState(['window', 'dict', 'doctorCheck', 'sumDoctorCheck']),
sumHeight(){
let tempHeight = this.window.pageHeight < 600 ? 600:this.window.pageHeight
return tempHeight - 320
},
},
methods: {

2
src/views/doctorCheck/doctorCheck.vue

@ -3,7 +3,7 @@
<div>
<div style="display: flex;justify-content:space-between;">
<div class="contenttitle">
体检登记 /<span class="contenttitleBold">体检人员登记</span>
体检 /<span class="contenttitleBold">检查医生诊台</span>
</div>
<div style="position: absolute;top:50px;right:10px;z-index: 2000;">
<el-image

14
src/views/doctorCheck/sumDoctorCheck.vue

@ -1,21 +1,23 @@
<template>
<div>
<el-card style="display: block">
<div slot="header">总检医生诊台</div>
<div>
<div class="contenttitle">
体检 /<span class="contenttitleBold">总检医生诊台</span>
</div>
<div style="display: flex">
<div :style="'width:' + (window.pageWidth - 110 - 45) + 'px;'">
<div :style="'width:' + (window.pageWidth - 110 - 15) + 'px;'">
<div>
<PatientRegisterBase />
</div>
<div :style="'height:' +
(window.pageHeight < 600 ? 380 : window.pageHeight - 220) +
(window.pageHeight < 600 ? 435 : window.pageHeight - 165) +
'px;'
">
<el-tabs v-model="tabChoosed">
<el-tab-pane label="综述建议" name="1">
<div style="display: flex;">
<!-- 综述建议 -->
<div :style="'width:' + (window.pageWidth - 110 - 45 - 200) + 'px;'">
<div :style="'width:' + (window.pageWidth - 110 - 15 - 200) + 'px;'">
<SumSug :patientRegisterId="sumDoctorCheck.sumPREdit.id" :curGetFocusSuggestionId="curGetFocusSuggestionId"/>
</div>
<div style="width:200px;">
@ -49,7 +51,7 @@
<ButtonList :fnSetSuggestionFocus="fnSetSuggestionFocus" />
</div>
</div>
</el-card>
</div>
</div>
</template>
<script>

Loading…
Cancel
Save