Browse Source

peter

360view
newPeter7 2 years ago
parent
commit
5afd50e305
  1. 14
      src/components/360View/afterPart/index-copy.vue
  2. 831
      src/components/360View/commonForm/deveopmentFIle-copy.vue
  3. 405
      src/components/360View/commonForm/deveopmentFIle.vue
  4. 1
      src/components/360View/commonForm/threeVision.vue
  5. 4
      src/components/360View/index1.vue
  6. 265
      src/components/360View/medicalRecord/outPatientRecord/afterForm-copy.vue
  7. 240
      src/components/360View/medicalRecord/outPatientRecord/afterForm.vue
  8. 2
      src/components/360View/medicalRecord/outPatientRecord/allFormPrint.vue
  9. 61
      src/components/360View/medicalRecord/outPatientRecord/index.vue
  10. 2
      src/components/360View/opticalFile/index.vue
  11. 1
      src/components/360View/special/index.vue

14
src/components/360View/afterPart/index-copy.vue

@ -132,17 +132,6 @@
</template>
</el-table-column>
</el-table>
<!-- <after-form-->
<!-- :only-read="onlyRead"-->
<!-- ref="afterForm"-->
<!-- :data-form="dataForm"-->
<!-- :table-data="tableData"-->
<!-- @selection="selection"-->
<!-- @moveHandle="moveHandle"-->
<!-- @handleNode="handleNode"-->
<!-- @addTree="addTree"-->
<!-- @removeTree="removeTree"-->
<!-- />-->
</div>
<el-dialog :title="title" :visible.sync="dialogFormVisible" width="40%">
<el-form :model="form" style="margin-top: 16px">
@ -186,10 +175,8 @@ import eventBus from '@/page-subspecialty/utils/eventBus'
import treeSelect from '@/components/360View/itemSelect'
import axios from 'axios'
import Cookies from 'js-cookie'
import AfterForm from '@/components/360View/medicalRecord/outPatientRecord/afterForm-copy.vue'
export default {
components: {
// AfterForm,
treeSelect
},
mixins: [],
@ -481,7 +468,6 @@ export default {
})
})
}
// this.sourceData = Object.assign([], this.tableData)
}).catch((error) => {
console.log(error)
})

831
src/components/360View/commonForm/deveopmentFIle-copy.vue

@ -1,831 +0,0 @@
<template>
<div id="operation-record" style=" background: #fff; padding: 10px 20px 50px 20px;page-break-after:always">
<div v-if="!onlyRead && isPlatform" class="btnBox">
<el-button v-print="printObj" size="small">打印</el-button>
<el-button type="primary" size="small" @click="handleSaveTable">保存</el-button>
<el-button type="danger" size="small" @click="handleDelete">删除</el-button>
</div>
<div id="threeFunc" style="width: 840px;padding-right: 8px">
<div class="flex j-c">
<img width="450" src="@/assets/img/xianganlogo.png">
</div>
<p style="color:#000000;font-size:32px;text-align:center;margin: 16px 0">
青少年儿童屈光发育档案
</p>
<div class="operation-record-table">
<el-table :data="headData" :span-method="headSpanMethod" border style="width: 820px;">
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
<el-input v-model="dataForm.patientName" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="dataForm.patientSg" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否戴镜'">
<div style="display:flex;">
<el-select v-model="dataForm.sfDj" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorList"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
</div>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
性别
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
体重
</div>
</div>
<div v-if="scope.row.name == '是否戴镜'">
<div class="width-100 center">
戴镜习惯
</div>
</div>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
<el-input v-model="dataForm.patientSex" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="dataForm.patientTz" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否戴镜'">
<div style="display:flex;">
<el-select v-model="dataForm.djXg" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorHabit"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
</div>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
出生日期
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
何时发现视力下降
</div>
</div>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-140 center">
<el-date-picker
v-model="dataForm.patientBirth"
type="date"
placeholder="选择日期"
/>
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="dataForm.slHsXj" placeholder="" />
</div>
</div>
</template>
</el-table-column>
</el-table>
<el-table :data="tableData" :span-method="objectSpanMethod" border style="width: 820px">
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column label="" width="" :resizable="false" prop="type">
<template slot-scope="scope">
<div v-if="scope.row.name == '戴镜类型'">
<el-select v-model="dataForm.djLx" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorType"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
<div v-if="scope.row.name == '旧镜参数'">
<div class="width-180 center">
<el-input v-model="dataForm.jjCsOd" placeholder="">
<template slot="prepend">OD:</template>
</el-input>
</div>
</div>
<div v-if="scope.row.name == '父母是否近视'">
<el-select v-model="dataForm.fmSfJs" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.shortsighte"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
<div v-if="scope.row.name == '户外活动时间'">
<el-select v-model="dataForm.hwHdSj" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.outTime"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
<div v-if="scope.row.name == '备注'">
<div class="center">
<el-input v-model="dataForm.beiZhu" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '项目'">
<div class="width-180 center">
OD
</div>
</div>
<div v-if="scope.row.name == '裸眼/旧镜视力'">
<div class="width-180 center">
<el-input v-model="dataForm.jjslOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否散瞳'">
<div>
<el-select v-model="dataForm.sfstOd" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mydriasis"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
</div>
<div v-if="scope.row.name == '主觉验光'">
<div class="width-180 center">
<el-input v-model="dataForm.zjygOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼位'">
<div class="width-180 center">
<el-input v-model="dataForm.ywOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼压/mmHg'">
<div class="width-180 center">
<el-input v-model="dataForm.yyOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜曲率/D'">
<div class="width-180 center">
<el-input v-model="dataForm.jmqlOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜厚度/μm'">
<div class="width-180 center">
<el-input v-model="dataForm.jmhdOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '处方'">
<div class="width-180 center">
<el-input v-model="dataForm.cfOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '建议'">
<el-select v-model="dataForm.jianYi" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.suggest"
:key="item.id"
:label="item.name"
:value="item.name"
/>
</el-select>
</div>
<div v-if="scope.row.name == '眼轴/眼底照/地形图'">
<div class="center">
<el-input v-model="dataForm.yzOd" placeholder="" />
</div>
</div>
</template>
</el-table-column>
<el-table-column label="" width="" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '旧镜参数'">
<div class="width-180 center">
<el-input v-model="dataForm.jjCsOs" placeholder="">
<template slot="prepend">OS:</template>
</el-input>
</div>
</div>
<div v-if="scope.row.name == '项目'">
<div class="width-180 center">
OS
</div>
</div>
<div v-if="scope.row.name == '裸眼/旧镜视力'">
<div class="width-180 center">
<el-input v-model="dataForm.jjslOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '主觉验光'">
<div class="width-180 center">
<el-input v-model="dataForm.zjygOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼位'">
<div class="width-180 center">
<el-input v-model="dataForm.ywOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼压/mmHg'">
<div class="width-180 center">
<el-input v-model="dataForm.yyOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜曲率/D'">
<div class="width-180 center">
<el-input v-model="dataForm.jmqlOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜厚度/μm'">
<div class="width-180 center">
<el-input v-model="dataForm.jmhdOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '处方'">
<div class="width-180 center">
<el-input v-model="dataForm.cfOs" placeholder="" />
</div>
</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>
</template>
<script>
export default {
props: {
isSearch: {
type: String,
default: ''
},
patientId: {
type: String,
default: ''
},
caseId: {
type: String,
default: ''
},
isPlatform: {
type: Boolean,
default: true
},
onlyRead: {
type: Boolean,
default: false
}
},
data() {
return {
printObj: {
id: 'threeFunc',
extraHead: '<meta http-equiv="Content-Language"content="zh-cn"/>,<style>  #printId { width: 100%; !important; } .el-input__prefix { display: none } <style>'
},
dataForm: {
id: '',
caseId: this.caseId,
patientId: '',
patientName: '',
patientSex: '',
patientSg: '',
patientTz: '',
patientBirth: '',
beiZhu: '',
cfOd: '',
cfOs: '', //
djXg: '', //
djLx: '', //
fmSfJs: '', //
hwHdSj: '', //
jianYi: '', //
jjCsOd: '', //
jjCsOs: '', //
jjslOd: '', //
jjslOs: '', //
jmdxtOd: '', //
jmdxtOs: '', //
jmhdOd: '', //
jmhdOs: '', //
jmqlOd: '', //
jmqlOs: '', //
lyslOd: '', //
lyslOs: '', //
sfDj: '', //
sfstOd: '', //
sfstOs: '', //
slHsXj: '', //
ydzOd: '', //
ydzOs: '', //
ywOd: '', //
ywOs: '', //
yyOd: '', //
yyOs: '', //
yzOd: '', //
yzOs: '', //
zjygOd: '', //
zjygOs: '' //
},
headData: [
{
name: '个人基础信息'
},
{
name: '姓名'
}, {
name: '身高'
}, {
name: '是否戴镜',
mirrorList: [{
name: '是',
id: '1'
}, {
name: '否',
id: '2'
}],
mirrorHabit: [
{
name: '好',
id: '1'
}, {
name: '一般',
id: '2'
}, {
name: '差',
id: '3'
}]
}],
tableData: [
{
name: '戴镜类型',
mirrorType: [
{
name: '框架',
id: '1'
},
{
name: 'OK镜',
id: '2'
}, {
name: 'RGP',
id: '3'
}, {
name: '软镜',
id: '4'
}
]
},
{
name: '旧镜参数'
}, {
name: '父母是否近视',
shortsighte: [
{
name: '父亲',
id: '1'
}, {
name: '母亲',
id: '2'
}, {
name: '父亲和母亲',
id: '3'
}, {
name: '均无',
id: '4'
}
]
}, {
name: '户外活动时间',
outTime: [
{
name: '\<1h',
id: '1'
}, {
name: '1h-2h',
id: '2'
}, {
name: '\>2h',
id: '3'
}
]
}, {
name: '备注'
}, {
name: '综合检查信息'
}, {
name: '项目'
}, {
name: '裸眼/旧镜视力'
}, {
name: '是否散瞳',
mydriasis: [
{
name: '未散瞳',
id: '1'
}, {
name: '美多丽',
id: '2'
}, {
name: '阿托品',
id: '3'
}, {
name: '其他',
id: '4'
}
]
}, {
name: '主觉验光'
}, {
name: '眼位'
}, {
name: '眼压/mmHg'
}, {
name: '角膜曲率/D'
}, {
name: '角膜厚度/μm'
}, {
name: '处方'
}, {
name: '建议',
suggest: [
{
name: '框架',
id: '1'
}, {
name: 'OK镜',
id: '2'
}, {
name: 'RGP',
id: '3'
}, {
name: '软镜',
id: '4'
}, {
name: '其他',
id: '5'
}
]
}, {
name: '眼轴/眼底照/地形图'
}]
}
},
watch: {
caseId: {
handler: function(newV, oldV) {
this.queryForm()
}
}
},
mounted() {
this.queryForm()
this.getPatientData()
},
methods: {
async queryForm() {
const { data: res } = await this.$http.get(
'/qgfyda/getQgfyda',
{
params: {
patientId: this.patientId,
caseId: this.caseId
}
}
)
if (res.code === 0) {
this.dataForm = res.data
} else {
this.$message.error(res.msg)
}
},
async getPatientData() {
const { data: res } = await this.$http.get(
'/patient/view/getPatientData',
{
params: {
patientId: this.patientId
}
}
)
if (res.code === 0) {
const data = res.data
this.dataForm.patientName = data.patientName
this.dataForm.patientSex = data.patientSex
this.dataForm.patientBirth = data.patientBirthday
} else {
this.$message.error(res.msg)
}
},
handleDelete() {
const params = {
id: this.caseId
}
this.$confirmFun('你确定要删除吗?').then(async() => {
await this.deleteNewForm()
const { data: res } = await this.$http.post('/case/delete', params)
if (res.code === 0) {
this.$message.success('删除成功')
await this.$parent.getFormList()
} else {
this.$message.error(res.msg)
}
})
},
async deleteNewForm() {
const params = {
id: this.caseId
}
const { data: res } = await this.$http.post('/qgfyda/delQgfyda', params)
if (res.code === 0) {
} else {
this.$message.error(res.msg)
}
},
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
if (rowIndex === 5) {
return {
rowspan: 1,
colspan: 3
}
}
} else if (columnIndex === 1) {
if (rowIndex === 0 || rowIndex === 2 || rowIndex === 3 || rowIndex === 4 || rowIndex === 8 || rowIndex === 15 || rowIndex === 16) {
return {
rowspan: 1,
colspan: 2
}
} else if (rowIndex === 5) {
return {
rowspan: 0,
colspan: 0
}
}
} else if (columnIndex === 2) {
if (rowIndex === 0 || rowIndex === 2 || rowIndex === 3 || rowIndex === 4 || rowIndex === 5 || rowIndex === 8 || rowIndex === 15 || rowIndex === 16) {
return {
rowspan: 0,
colspan: 0
}
}
}
},
headSpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
if (rowIndex === 0) {
return {
rowspan: 1,
colspan: 6
}
}
} else if (columnIndex === 1 || columnIndex === 3) {
if (rowIndex === 3) {
return {
rowspan: 1,
colspan: 2
}
}
} else if (columnIndex === 1 || columnIndex === 2 || columnIndex === 3 || columnIndex === 4 || columnIndex === 5) {
if (rowIndex === 0) {
return {
rowspan: 0,
colspan: 0
}
}
}
},
handlePrint() {
this.printPage('threeFunc')
},
handleSaveTable() {
this.$http.post('/qgfyda/saveQgfyda', this.dataForm).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.queryForm()
}
})
}).catch(() => {})
}
}
}
</script>
<style lang="scss">
#threeFunc {
.el-input__suffix, .el-input__prefix {
display: none;
}
.width-100 {
.el-input {
width: 100px;
}
}
.width-140 {
.el-input {
width: 125px;
}
}
}
.flex{
display: flex;
}
.j-c{
justify-content: center;
}
.operation-record-table{
.el-input__inner {
border: none;
height: 26px !important;
line-height: 26px !important;
text-align: center;
}
.el-input-group__append, .el-input-group__prepend{
background-color: transparent;
color: #606266;
border: none;
}
.el-table__header-wrapper{
display: none;
}
}
#operation-record {
.btnBox{
display: flex;
justify-content: flex-end;
}
.el-table--border{
border-right: 1px solid #EBEEF5;
}
.operation-record-table {
//width: 100%;
width: 840px !important;
padding-right: 8px;
.operation-text {
font-weight: 700;
}
.text {
font-weight: 700;
}
.sign {
cursor: pointer;
color: #46a1ff;
font-weight: 400;
}
.el-input__inner {
border: none;
height: 26px !important;
line-height: 26px !important;
text-align: center;
}
.el-input__inner {
border-bottom: 1px solid #ccc;
border-radius: 0;
padding: 0;
}
.el-input__prefix {
display: none;
}
}
.center {
text-align: center;
}
.left {
text-align: left;
}
.width-50 {
.el-input {
width: 50px;
}
}
.width-70 {
.el-input {
width: 70px;
}
}
.width-100 {
.el-input {
width: 100px;
}
}
.width-120 {
.el-input {
width: 120px;
}
}
.width-180 {
.el-input {
width: 180px;
}
}
.width-240 {
.el-input {
width: 240px;
}
}
//.el-date-editor.el-input,
//.el-date-editor.el-input__inner {
// width: 140px;
//}
//.el-input__suffix {
// top: -7px;
//}
//.el-checkbox__input.is-checked + .el-checkbox__label {
// color: #606266;
//}
//.el-checkbox__input.is-checked .el-checkbox__inner,
//.el-checkbox__input.is-indeterminate .el-checkbox__inner {
// background: #767676;
// border-color: #767676;
//}
//.el-checkbox__inner:hover,
//.el-checkbox__inner {
// border-color: #767676;
//}
//.el-radio__input.is-checked + .el-radio__label {
// color: #606266;
//}
//.el-radio__input.is-checked .el-radio__inner {
// background: #767676;
// border-color: #767676;
//}
//.el-radio {
// margin-right: 8px;
// display: block;
//}
//.el-radio__inner {
// border: 1px solid #767676 !important;
//}
//.el-radio__inner:hover {
// border-color: #767676;
//}
.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell {
background: none !important;
}
.has-gutter {
display: none;
.cell {
font-weight: 700;
}
.el-table__cell {
background: #ced4d9;
}
}
.el-table__header-wrapper{
display: none;
}
}
</style>

405
src/components/360View/commonForm/deveopmentFIle.vue

@ -1,6 +1,6 @@
<template>
<div id="operation-record" style=" background: #fff; padding: 10px 20px 50px 20px;page-break-after:always">
<div v-if="!onlyRead" class="btnBox">
<div v-if="!onlyRead && isPlatform" class="btnBox">
<el-button v-print="printObj" size="small">打印</el-button>
<el-button type="primary" size="small" @click="handleSaveTable">保存</el-button>
<el-button type="danger" size="small" @click="handleDelete">删除</el-button>
@ -19,21 +19,21 @@
<span>{{ scope.row.name }}</span>
</template>
</el-table-column>
<el-table-column label="" width="" align="center" :resizable="false" >
<el-table-column label="" width="" align="center" :resizable="false">
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
<el-input v-model="scope.row.patientName" placeholder="" />
<el-input v-model="dataForm.patientName" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="scope.row.height" placeholder="" />
<el-input v-model="dataForm.patientSg" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否戴镜'">
<div style="display:flex;">
<el-select v-model="scope.row.isMirror" placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.sfDj" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorList"
:key="item.id"
@ -68,17 +68,17 @@
<template slot-scope="scope">
<div v-if="scope.row.name == '姓名'">
<div class="width-100 center">
<el-input v-model="scope.row.sex" placeholder="" />
<el-input v-model="dataForm.patientSex" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="scope.row.weight" placeholder="" />
<el-input v-model="dataForm.patientTz" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否戴镜'">
<div style="display:flex;">
<el-select v-model="scope.row.value" placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.djXg" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorHabit"
:key="item.id"
@ -86,10 +86,6 @@
:value="item.name"
/>
</el-select>
<!-- <div v-for="(item,index) in scope.row.mirrorHabit" :key="index" class="check" @click="item.isSelect = !item.isSelect">-->
<!-- <input type="checkbox" :checked="item.isSelect">-->
<!-- <div>{{ item.name }}</div>-->
<!-- </div>-->
</div>
</div>
</template>
@ -113,7 +109,7 @@
<div v-if="scope.row.name == '姓名'">
<div class="width-140 center">
<el-date-picker
v-model="scope.row.birthday"
v-model="dataForm.patientBirth"
type="date"
placeholder="选择日期"
/>
@ -121,7 +117,7 @@
</div>
<div v-if="scope.row.name == '身高'">
<div class="width-100 center">
<el-input v-model="scope.row.time" placeholder="" />
<el-input v-model="dataForm.slHsXj" placeholder="" />
</div>
</div>
</template>
@ -136,7 +132,7 @@
<el-table-column label="" width="" :resizable="false" prop="type">
<template slot-scope="scope">
<div v-if="scope.row.name == '戴镜类型'">
<el-select v-model="scope.row.value" multiple placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.djLx" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mirrorType"
:key="item.id"
@ -147,13 +143,13 @@
</div>
<div v-if="scope.row.name == '旧镜参数'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="">
<el-input v-model="dataForm.jjCsOd" placeholder="">
<template slot="prepend">OD:</template>
</el-input>
</div>
</div>
<div v-if="scope.row.name == '父母是否近视'">
<el-select v-model="scope.row.value" multiple placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.fmSfJs" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.shortsighte"
:key="item.id"
@ -163,7 +159,7 @@
</el-select>
</div>
<div v-if="scope.row.name == '户外活动时间'">
<el-select v-model="scope.row.value" multiple placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.hwHdSj" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.outTime"
:key="item.id"
@ -173,8 +169,8 @@
</el-select>
</div>
<div v-if="scope.row.name == '备注'">
<div class="width-180 center">
<el-input v-model="scope.row.note" placeholder="" />
<div class="center">
<el-input v-model="dataForm.beiZhu" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '项目'">
@ -184,12 +180,12 @@
</div>
<div v-if="scope.row.name == '裸眼/旧镜视力'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.jjslOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '是否散瞳'">
<div>
<el-select v-model="scope.row.value" multiple placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.sfstOd" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.mydriasis"
:key="item.id"
@ -201,36 +197,36 @@
</div>
<div v-if="scope.row.name == '主觉验光'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.zjygOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼位'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.ywOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼压/mmHg'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.yyOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜曲率/D'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.jmqlOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜厚度/μm'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.jmhdOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '处方'">
<div class="width-180 center">
<el-input v-model="scope.row.od" placeholder="" />
<el-input v-model="dataForm.cfOd" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '建议'">
<el-select v-model="scope.row.value" multiple placeholder="请选择" style="width: 80%">
<el-select v-model="dataForm.jianYi" placeholder="" style="width: 80%">
<el-option
v-for="item in scope.row.suggest"
:key="item.id"
@ -240,8 +236,8 @@
</el-select>
</div>
<div v-if="scope.row.name == '眼轴/眼底照/地形图'">
<div class="width-240 center">
<el-input v-model="scope.row.type" placeholder="" />
<div class="center">
<el-input v-model="dataForm.yzOd" placeholder="" />
</div>
</div>
</template>
@ -250,7 +246,7 @@
<template slot-scope="scope">
<div v-if="scope.row.name == '旧镜参数'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="">
<el-input v-model="dataForm.jjCsOs" placeholder="">
<template slot="prepend">OS:</template>
</el-input>
</div>
@ -262,37 +258,37 @@
</div>
<div v-if="scope.row.name == '裸眼/旧镜视力'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.jjslOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '主觉验光'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.zjygOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼位'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.ywOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '眼压/mmHg'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.yyOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜曲率/D'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.jmqlOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '角膜厚度/μm'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.jmhdOs" placeholder="" />
</div>
</div>
<div v-if="scope.row.name == '处方'">
<div class="width-180 center">
<el-input v-model="scope.row.os" placeholder="" />
<el-input v-model="dataForm.cfOs" placeholder="" />
</div>
</div>
</template>
@ -313,9 +309,13 @@ export default {
type: String,
default: ''
},
formContent: {
type: Object,
default: () => { }
caseId: {
type: String,
default: ''
},
isPlatform: {
type: Boolean,
default: true
},
onlyRead: {
type: Boolean,
@ -329,28 +329,59 @@ export default {
extraHead: '<meta http-equiv="Content-Language"content="zh-cn"/>,<style>  #printId { width: 100%; !important; } .el-input__prefix { display: none } <style>'
},
dataForm: {
yghcValue: '',
operationListValueOD: []
id: '',
caseId: this.caseId,
patientId: '',
patientName: '',
patientSex: '',
patientSg: '',
patientTz: '',
patientBirth: '',
beiZhu: '',
cfOd: '',
cfOs: '', //
djXg: '', //
djLx: '', //
fmSfJs: '', //
hwHdSj: '', //
jianYi: '', //
jjCsOd: '', //
jjCsOs: '', //
jjslOd: '', //
jjslOs: '', //
jmdxtOd: '', //
jmdxtOs: '', //
jmhdOd: '', //
jmhdOs: '', //
jmqlOd: '', //
jmqlOs: '', //
lyslOd: '', //
lyslOs: '', //
sfDj: '', //
sfstOd: '', //
sfstOs: '', //
slHsXj: '', //
ydzOd: '', //
ydzOs: '', //
ywOd: '', //
ywOs: '', //
yyOd: '', //
yyOs: '', //
yzOd: '', //
yzOs: '', //
zjygOd: '', //
zjygOs: '' //
},
headData: [
{
name: '个人基础信息',
type: ''
name: '个人基础信息'
},
{
name: '姓名',
patientName: '',
sex: '',
birthday: '',
type: ''
name: '姓名'
}, {
name: '身高',
height: '',
weight: '',
time: ''
name: '身高'
}, {
name: '是否戴镜',
isMirror: '',
mirrorList: [{
name: '是',
id: '1'
@ -358,203 +389,160 @@ export default {
name: '否',
id: '2'
}],
value: '',
mirrorHabit: [{
name: '好',
id: '1',
isSelect: false
}, {
name: '一般',
id: '2',
isSelect: false
}, {
name: '差',
id: '3',
isSelect: false
}],
type: ''
mirrorHabit: [
{
name: '好',
id: '1'
}, {
name: '一般',
id: '2'
}, {
name: '差',
id: '3'
}]
}],
originHeadData: [],
originTableData: [],
tableData: [
{
name: '戴镜类型',
value: '',
mirrorType: [
{
name: '框架',
id: '1',
isSelect: false
id: '1'
},
{
name: 'OK镜',
id: '2',
isSelect: false
id: '2'
}, {
name: 'RGP',
id: '3',
isSelect: false
id: '3'
}, {
name: '软镜',
id: '4',
isSelect: false
id: '4'
}
]
},
{
name: '旧镜参数',
od: '',
os: '',
type: ''
name: '旧镜参数'
}, {
name: '父母是否近视',
value: '',
shortsighte: [
{
name: '父亲',
id: '1',
isSelect: false
id: '1'
}, {
name: '母亲',
id: '2',
isSelect: false
id: '2'
}, {
name: '父亲和母亲',
id: '3',
isSelect: false
id: '3'
}, {
name: '均无',
id: '4',
isSelect: false
id: '4'
}
]
}, {
name: '户外活动时间',
value: '',
outTime: [
{
name: '\<1h',
id: '1',
isSelect: false
id: '1'
}, {
name: '1h-2h',
id: '2',
isSelect: false
id: '2'
}, {
name: '\>2h',
id: '3',
isSelect: false
id: '3'
}
],
type: ''
]
}, {
name: '备注',
note: ''
name: '备注'
}, {
name: '综合检查信息',
type: '1'
name: '综合检查信息'
}, {
name: '项目'
}, {
name: '裸眼/旧镜视力',
od: '',
os: ''
name: '裸眼/旧镜视力'
}, {
name: '是否散瞳',
value: '',
mydriasis: [
{
name: '未散瞳',
id: '1',
isSelect: false
id: '1'
}, {
name: '美多丽',
id: '2',
isSelect: false
id: '2'
}, {
name: '阿托品',
id: '3',
isSelect: false
id: '3'
}, {
name: '其他',
id: '4',
isSelect: false
id: '4'
}
]
}, {
name: '主觉验光',
od: '',
os: '',
vaod: '',
vaos: '',
type: '2'
name: '主觉验光'
}, {
name: '眼位',
od: '',
os: '',
type: ''
name: '眼位'
}, {
name: '眼压/mmHg',
od: '',
os: ''
name: '眼压/mmHg'
}, {
name: '角膜曲率/D',
od: '',
os: ''
name: '角膜曲率/D'
}, {
name: '角膜厚度/μm',
od: '',
os: ''
name: '角膜厚度/μm'
}, {
name: '处方',
od: '',
os: ''
name: '处方'
}, {
name: '建议',
suggest: [
{
name: '框架',
id: '1',
isSelect: false
id: '1'
}, {
name: 'OK镜',
id: '2',
isSelect: false
id: '2'
}, {
name: 'RGP',
id: '3',
isSelect: false
id: '3'
}, {
name: '软镜',
id: '4',
isSelect: false
id: '4'
}, {
name: '其他',
id: '5',
isSelect: false
id: '5'
}
]
}, {
name: '眼轴/眼底照/地形图',
type: ''
name: '眼轴/眼底照/地形图'
}]
}
},
watch: {
caseId: {
handler: function(newV, oldV) {
this.queryForm()
}
}
},
mounted() {
this.originTableData = JSON.parse(JSON.stringify(this.tableData))
this.originHeadData = JSON.parse(JSON.stringify(this.headData))
this.queryForm()
this.getPatientData()
},
methods: {
setData() {
this.headData = this.formContent.a
this.tableData = this.formContent.b
this.getPatientData()
},
reSet() {
this.headData = this.originHeadData
this.tableData = this.originTableData
this.getPatientData()
async queryForm() {
const { data: res } = await this.$http.get(
'/qgfyda/getQgfyda',
{
params: {
patientId: this.patientId,
caseId: this.caseId
}
}
)
if (res.code === 0) {
this.dataForm = res.data
} else {
this.$message.error(res.msg)
}
},
async getPatientData() {
const { data: res } = await this.$http.get(
@ -567,15 +555,37 @@ export default {
)
if (res.code === 0) {
const data = res.data
this.headData[1].patientName = data.patientName
this.headData[1].sex = data.patientSex
this.headData[1].birthday = data.patientBirthday
this.dataForm.patientName = data.patientName
this.dataForm.patientSex = data.patientSex
this.dataForm.patientBirth = data.patientBirthday
} else {
this.$message.error(res.msg)
}
},
handleDelete() {
this.$emit('del')
const params = {
id: this.caseId
}
this.$confirmFun('你确定要删除吗?').then(async() => {
await this.deleteNewForm()
const { data: res } = await this.$http.post('/case/delete', params)
if (res.code === 0) {
this.$message.success('删除成功')
await this.$parent.getFormList()
} else {
this.$message.error(res.msg)
}
})
},
async deleteNewForm() {
const params = {
id: this.caseId
}
const { data: res } = await this.$http.post('/qgfyda/delQgfyda', params)
if (res.code === 0) {
} else {
this.$message.error(res.msg)
}
},
objectSpanMethod({ row, column, rowIndex, columnIndex }) {
if (columnIndex === 0) {
@ -634,11 +644,19 @@ export default {
this.printPage('threeFunc')
},
handleSaveTable() {
const data = {
a: this.headData,
b: this.tableData
}
this.$emit('save', data)
this.$http.post('/qgfyda/saveQgfyda', this.dataForm).then(({ data: res }) => {
if (res.code !== 0) {
return this.$message.error(res.msg)
}
this.$message({
message: this.$t('prompt.success'),
type: 'success',
duration: 500,
onClose: () => {
this.queryForm()
}
})
}).catch(() => {})
}
}
}
@ -655,7 +673,7 @@ export default {
}
.width-140 {
.el-input {
width: 135px;
width: 125px;
}
}
}
@ -757,43 +775,6 @@ export default {
width: 240px;
}
}
//.el-date-editor.el-input,
//.el-date-editor.el-input__inner {
// width: 140px;
//}
//.el-input__suffix {
// top: -7px;
//}
//.el-checkbox__input.is-checked + .el-checkbox__label {
// color: #606266;
//}
//.el-checkbox__input.is-checked .el-checkbox__inner,
//.el-checkbox__input.is-indeterminate .el-checkbox__inner {
// background: #767676;
// border-color: #767676;
//}
//.el-checkbox__inner:hover,
//.el-checkbox__inner {
// border-color: #767676;
//}
//.el-radio__input.is-checked + .el-radio__label {
// color: #606266;
//}
//.el-radio__input.is-checked .el-radio__inner {
// background: #767676;
// border-color: #767676;
//}
//.el-radio {
// margin-right: 8px;
// display: block;
//}
//.el-radio__inner {
// border: 1px solid #767676 !important;
//}
//.el-radio__inner:hover {
// border-color: #767676;
//}
.el-table--enable-row-hover .el-table__body tr:hover>td.el-table__cell {
background: none !important;
}

1
src/components/360View/commonForm/threeVision.vue

@ -288,7 +288,6 @@
</div>
<div v-else-if="scope.row.name === 'TITMUS()'" class="flex">
<span>TITMUS():</span>
<!-- <el-input v-model="dataForm.titmus" style="width: 60%" placeholder="" />-->
<el-select v-model="dataForm.titmus" placeholder="" clearable style="display: inline-block;width: 95px;margin-left: 8px">
<el-option
v-for="item in titmusList"

4
src/components/360View/index1.vue

@ -389,8 +389,8 @@ export default {
},
// 360
handlePacs() {
const baseUrl = 'http://z1.huimucloud.com:8085'
// const baseUrl = 'http://10.80.5.32:8026'
// const baseUrl = 'http://z1.huimucloud.com:8085'
const baseUrl = 'http://10.80.5.32:8026'
// const baseUrl = 'http://192.168.0.85:8001'
const href = `${baseUrl}/EXAMINE_Report/InterFace?PatID=${this.patientId}&DoctorID=${this.employeeId}&PatIdKey=&ExamNo=`
window.open(href, '_blank')

265
src/components/360View/medicalRecord/outPatientRecord/afterForm-copy.vue

@ -1,265 +0,0 @@
<template>
<el-table
id="foreCheck"
ref="multipleTable"
:data="tableData"
style="margin: 8px 8px 0 0"
>
<el-table-column
align="center"
label="OD"
>
<template slot-scope="scope">
<div>
<span v-if="scope.row.name === '黄斑' && scope.row.id">
<treeSelect v-model="dataForm.hbOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '视网膜' && scope.row.id">
<treeSelect v-model="dataForm.swmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '脉络膜' && scope.row.id">
<treeSelect v-model="dataForm.mlmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '玻璃体 vitreous' && scope.row.id">
<treeSelect v-model="dataForm.bltOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '血管' && scope.row.id">
<treeSelect v-model="dataForm.xgOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '巩膜' && scope.row.id">
<treeSelect v-model="dataForm.hmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '边缘 periphery' && scope.row.id">
<treeSelect v-model="dataForm.byOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="!scope.row.sort && !scope.row.id">{{ scope.row.name }}</span>
<span v-if="scope.row.sort === 3">
<p style="margin:0 16px 6px 0">视盘视神经</p>
<treeSelect v-model="dataForm.spSsjOd" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.sort === 4">
<span style="margin:0 16px 6px 0">视盘CDR</span>
<treeSelect v-model="dataForm.spCrdOd" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
</div>
</template>
</el-table-column>
<el-table-column
align="center"
label="OS"
>
<template slot-scope="scope">
<div>
<span v-if="scope.row.name === '黄斑' && scope.row.id">
<treeSelect v-model="dataForm.hbOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '视网膜' && scope.row.id">
<treeSelect v-model="dataForm.swmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '脉络膜' && scope.row.id">
<treeSelect v-model="dataForm.mlmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '玻璃体 vitreous' && scope.row.id">
<treeSelect v-model="dataForm.bltOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '血管' && scope.row.id">
<treeSelect v-model="dataForm.xgOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '巩膜' && scope.row.id">
<treeSelect v-model="dataForm.hmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '边缘 periphery' && scope.row.id">
<treeSelect v-model="dataForm.byOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="!scope.row.sort && !scope.row.id">{{ scope.row.name }}</span>
<span v-if="scope.row.sort === 3">
<span style="margin:0 16px 6px 0">视盘视神经</span>
<treeSelect v-model="dataForm.spSsjOs" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.sort === 4">
<span style="margin:0 16px 6px 0">视盘CDR</span>
<treeSelect v-model="dataForm.spCrdOs" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
</div>
</template>
</el-table-column>
</el-table>
</template>
<script>
import treeSelect from '@/components/360View/itemSelect'
import axios from 'axios'
import Cookies from 'js-cookie'
export default {
name: 'AfterForm',
components: {
treeSelect
},
props: {
dataForm: {
type: Object
},
isSearch: {
type: String,
default: ''
}
},
data() {
return {
userData: {},
doctorId: '',
treeProps: {
value: 'id',
label: 'name',
children: 'child'
},
tableData: [
{
name: '黄斑'
}, {
name: '黄斑',
sort: 99,
id: 14,
type: 'hangman',
od: 'hbOd',
os: 'hbOs'
}, {
name: '视盘'
}, {
name: '视盘',
id: 15,
sort: 3,
type: 'shipman',
od: 'spSsjOd',
os: 'spSsjOs'
}, {
name: '视盘',
id: 16,
sort: 4,
type: 'shipman',
od: 'spCrdOd',
os: 'spCrdOs'
}, {
name: '视网膜'
}, {
name: '视网膜',
sort: 99,
id: 17,
type: 'showing',
od: 'swmOd',
os: 'swmOs'
}, {
name: '脉络膜'
}, {
name: '脉络膜',
sort: 99,
id: 18,
type: 'mailbomb',
od: 'mlmOd',
os: 'mlmOs'
}, {
name: '玻璃体 vitreous'
}, {
name: '玻璃体 vitreous',
sort: 99,
id: 19,
type: 'blit',
od: 'bltOd',
os: 'bltOs'
}, {
name: '血管'
}, {
name: '血管',
sort: 99,
id: 20,
type: 'began',
od: 'xgOd',
os: 'xgOs'
}, {
name: '巩膜'
}, {
name: '巩膜',
sort: 99,
id: 21,
type: 'gong',
od: 'hmOd',
os: 'hmOs'
}, {
name: '边缘 periphery'
}, {
name: '边缘 periphery',
sort: 99,
id: 22,
type: 'banyan',
od: 'byOd',
os: 'byOs'
}]
}
},
mounted() {
this.userData = JSON.parse(window.localStorage.getItem('qg-userData'))
this.doctorId = this.userData.id
this.queryOptions()
},
methods: {
//
queryTree(type) {
const baseUrl = window.SITE_CONFIG['apiURL'] + '/treetag/findTree'
return new Promise((resolve, reject) => {
axios.defaults.headers.common['token'] = Cookies.get('xa-token') || ''
axios.get(baseUrl, {
params: {
doctorId: this.doctorId,
type: type,
platform: this.isSearch
}
}).then(res => {
if (res.data.code === 0) {
const data = res.data
resolve(data.data)
}
})
.catch(error => {
reject(error)
})
})
},
queryOptions() {
const treeList = []
this.tableData.forEach(item => {
item.flag = false
if (item.type) {
const p = this.queryTree(item.type)
treeList.push(p)
}
})
Promise.all(treeList).then((result) => {
if (result.length) {
result.forEach(item => {
item.forEach(row => {
this.tableData.forEach((e, index) => {
if (e.type === row.type) {
e.data = item
const sort = e.sort
if (sort === 1 || sort === 2 || sort === 99) {
e.sort = ''
this.$nextTick(() => {
e.sort = sort
})
}
}
})
})
})
}
}).catch((error) => {
})
}
}
}
</script>
<style scoped>
</style>

240
src/components/360View/medicalRecord/outPatientRecord/afterForm.vue

@ -4,62 +4,82 @@
ref="multipleTable"
:data="tableData"
style="margin: 8px 8px 0 0"
@select="selection"
>
<el-table-column
type="selection"
width="55"
/>
<el-table-column
align="center"
label="OD"
>
<template slot-scope="scope">
<div>
<span v-if="scope.row.sort === 99">
<treeSelect v-model="scope.row.od" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'od', $event)" @add="addTree(scope.row, $event)" @remove="removeTree" />
<span v-if="scope.row.name === '黄斑' && scope.row.id">
<treeSelect v-model="dataForm.hbOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '视网膜' && scope.row.id">
<treeSelect v-model="dataForm.swmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '脉络膜' && scope.row.id">
<treeSelect v-model="dataForm.mlmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '玻璃体 vitreous' && scope.row.id">
<treeSelect v-model="dataForm.bltOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '血管' && scope.row.id">
<treeSelect v-model="dataForm.xgOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '巩膜' && scope.row.id">
<treeSelect v-model="dataForm.hmOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '边缘 periphery' && scope.row.id">
<treeSelect v-model="dataForm.byOd" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="!scope.row.sort && !scope.row.id">{{ scope.row.name }}</span>
<span v-if="scope.row.sort === 3">
<p style="margin:0 16px 6px 0">视盘视神经</p>
<treeSelect v-model="scope.row.od" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'od', $event)" @add="addTree(scope.row, $event)" />
<treeSelect v-model="dataForm.spSsjOd" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.sort === 4">
<span style="margin:0 16px 6px 0">视盘CDR</span>
<treeSelect v-model="scope.row.od" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'od', $event)" @add="addTree(scope.row, $event)" />
<treeSelect v-model="dataForm.spCrdOd" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
</div>
</template>
</el-table-column>
<el-table-column
class="move"
align="center"
width="120"
>
<template slot-scope="scope">
<div v-if="!isPrint && !onlyRead">
<p @click="moveHandle(scope.$index,1, scope.row)"><i style="font-size: 20px" class="el-icon-back" /></p>
<p style="margin-top: 5px" @click="moveHandle(scope.$index,2, scope.row)"><i class="el-icon-back" style="transform: rotateY(180deg);font-size: 20px" /></p>
</div>
</template>
</el-table-column>
<el-table-column
align="center"
label="OS"
>
<template slot-scope="scope">
<div>
<span v-if="scope.row.sort === 99">
<treeSelect v-model="scope.row.os" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'os', $event)" @add="addTree(scope.row, $event)" />
<span v-if="scope.row.name === '黄斑' && scope.row.id">
<treeSelect v-model="dataForm.hbOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '视网膜' && scope.row.id">
<treeSelect v-model="dataForm.swmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '脉络膜' && scope.row.id">
<treeSelect v-model="dataForm.mlmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '玻璃体 vitreous' && scope.row.id">
<treeSelect v-model="dataForm.bltOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '血管' && scope.row.id">
<treeSelect v-model="dataForm.xgOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '巩膜' && scope.row.id">
<treeSelect v-model="dataForm.hmOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.name === '边缘 periphery' && scope.row.id">
<treeSelect v-model="dataForm.byOs" :options="scope.row.data" :props="treeProps" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="!scope.row.sort && !scope.row.id">{{ scope.row.name }}</span>
<span v-if="scope.row.sort === 3">
<span style="margin:0 16px 6px 0">视盘视神经</span>
<treeSelect v-model="scope.row.os" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'os', $event)" @add="addTree(scope.row, $event)" />
<treeSelect v-model="dataForm.spSsjOs" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
<span v-if="scope.row.sort === 4">
<span style="margin:0 16px 6px 0">视盘CDR</span>
<treeSelect v-model="scope.row.os" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" @handleNode="handleNode(scope.$index,'os', $event)" @add="addTree(scope.row, $event)" />
<treeSelect v-model="dataForm.spCrdOs" :props="treeProps" style="display: inline-block;" :options="scope.row.data" :multiple="true" :filterable="true" :check-strictly="true" :default-expand-all="true" />
</span>
</div>
</template>
@ -69,41 +89,173 @@
<script>
import treeSelect from '@/components/360View/itemSelect'
import axios from 'axios'
import Cookies from 'js-cookie'
export default {
name: 'AfterForm',
components: {
treeSelect
},
props: ['tableData', 'isPrint', 'onlyRead'],
props: {
dataForm: {
type: Object
},
isSearch: {
type: String,
default: ''
}
},
data() {
return {
userData: {},
doctorId: '',
treeProps: {
value: 'id',
label: 'name',
children: 'child'
}
},
tableData: [
{
name: '黄斑'
}, {
name: '黄斑',
sort: 99,
id: 14,
type: 'hangman',
od: 'hbOd',
os: 'hbOs'
}, {
name: '视盘'
}, {
name: '视盘',
id: 15,
sort: 3,
type: 'shipman',
od: 'spSsjOd',
os: 'spSsjOs'
}, {
name: '视盘',
id: 16,
sort: 4,
type: 'shipman',
od: 'spCrdOd',
os: 'spCrdOs'
}, {
name: '视网膜'
}, {
name: '视网膜',
sort: 99,
id: 17,
type: 'showing',
od: 'swmOd',
os: 'swmOs'
}, {
name: '脉络膜'
}, {
name: '脉络膜',
sort: 99,
id: 18,
type: 'mailbomb',
od: 'mlmOd',
os: 'mlmOs'
}, {
name: '玻璃体 vitreous'
}, {
name: '玻璃体 vitreous',
sort: 99,
id: 19,
type: 'blit',
od: 'bltOd',
os: 'bltOs'
}, {
name: '血管'
}, {
name: '血管',
sort: 99,
id: 20,
type: 'began',
od: 'xgOd',
os: 'xgOs'
}, {
name: '巩膜'
}, {
name: '巩膜',
sort: 99,
id: 21,
type: 'gong',
od: 'hmOd',
os: 'hmOs'
}, {
name: '边缘 periphery'
}, {
name: '边缘 periphery',
sort: 99,
id: 22,
type: 'banyan',
od: 'byOd',
os: 'byOs'
}]
}
},
mounted() {
this.userData = JSON.parse(window.localStorage.getItem('qg-userData'))
this.doctorId = this.userData.id
this.queryOptions()
},
methods: {
moveHandle(index, type, row) {
this.$emit('moveHandle', { index, type, row })
},
handleNode(index, type, event) {
this.$emit('handleNode', { index, type, event })
},
addTree(item, event) {
this.$emit('addTree', { item, event })
//
queryTree(type) {
const baseUrl = window.SITE_CONFIG['apiURL'] + '/treetag/findTree'
return new Promise((resolve, reject) => {
axios.defaults.headers.common['token'] = Cookies.get('xa-token') || ''
axios.get(baseUrl, {
params: {
doctorId: this.doctorId,
type: type,
platform: this.isSearch
}
}).then(res => {
if (res.data.code === 0) {
const data = res.data
resolve(data.data)
}
})
.catch(error => {
reject(error)
})
})
},
removeTree(item) {
this.$emit('removeTree', item)
},
selection(selection, val) {
this.$emit('selection', { selection, val })
queryOptions() {
const treeList = []
this.tableData.forEach(item => {
item.flag = false
if (item.type) {
const p = this.queryTree(item.type)
treeList.push(p)
}
})
Promise.all(treeList).then((result) => {
if (result.length) {
result.forEach(item => {
item.forEach(row => {
this.tableData.forEach((e, index) => {
if (e.type === row.type) {
e.data = item
const sort = e.sort
if (sort === 1 || sort === 2 || sort === 99) {
e.sort = ''
this.$nextTick(() => {
e.sort = sort
})
}
}
})
})
})
}
}).catch((error) => {
})
}
}
}
</script>
<style scoped>
</style>

2
src/components/360View/medicalRecord/outPatientRecord/allFormPrint.vue

@ -30,7 +30,7 @@ import ForeForm from '@/components/360View/medicalRecord/outPatientRecord/foreFo
import SpecialExamine from '@/components/360View/specialExamine/index.vue'
import DiagnosisForm from '@/components/360View/medicalRecord/outPatientRecord/diagnosisForm.vue'
import eventBus from '@/page-subspecialty/utils/eventBus'
import AfterForm from '@/components/360View/medicalRecord/outPatientRecord/afterForm-copy.vue'
import AfterForm from '@/components/360View/medicalRecord/outPatientRecord/afterForm.vue'
export default {
name: 'AllFormPrint',
components: { AfterForm, DiagnosisForm, SpecialExamine, ForeForm, HistoryForm },

61
src/components/360View/medicalRecord/outPatientRecord/index.vue

@ -212,67 +212,6 @@ export default {
this.$message.error(res.msg)
}
}
// async getOutPatientList(flag) {
// const { data: res } = await this.$http.get('/case/getCaseByCaseId', {
// params: {
// caseId: this.caseId,
// patientId: this.patientId,
// platform: this.isSearch,
// flag: flag
// }
// })
// if (res.code === 0) {
// if (flag === '1') {
// this.formData = res.data ? JSON.parse(res.data.jsonText) : {}
// this.formId = res.data ? res.data.id : ''
// } else if (flag === '5') {
// this.diagnosis = res.data ? JSON.parse(res.data.jsonText) : {}
// this.diagnosisId = res.data ? res.data.id : ''
// }
// } else {
// this.$message.error(res.msg)
// }
// },
// async saveTableData(flag, name) {
// let data = ''
// let url = ''
// const params = {
// flag: flag,
// name: name,
// caseId: this.caseId,
// patientId: this.patientId,
// platform: this.isSearch
// }
// if (flag === '1') {
// data = JSON.stringify(this.formData)
// params.jsonText = data
// if (this.formId) {
// url = '/case/update'
// params.id = this.formId
// } else {
// url = '/case/save'
// }
// } else if (flag === '5') {
// data = JSON.stringify(this.diagnosis)
// params.jsonText = data
// if (this.diagnosisId) {
// url = '/case/update'
// params.id = this.diagnosisId
// } else {
// url = '/case/save'
// }
// }
//
// const { data: res } = await this.$http.post(url, params)
// if (res.code === 0) {
// if (flag === '1') {
// this.$message.success('')
// }
// this.getOutPatientList(flag)
// } else {
// this.$message.error(res.msg)
// }
// }
}
}
</script>

2
src/components/360View/opticalFile/index.vue

@ -76,7 +76,7 @@ import ourPatientRecord from './outPatientRecord'
import eyesVision from '@/components/360View/commonForm/eyesVision' //
import threeVision from '@/components/360View/commonForm/threeVision' //
import optometryForm from '@/components/360View/commonForm/optometryForm-copy' //
import deveopmentFile from '@/components/360View/commonForm/deveopmentFIle-copy' //
import deveopmentFile from '@/components/360View/commonForm/deveopmentFIle' //
export default {
components: {
ourPatientRecord,

1
src/components/360View/special/index.vue

@ -21,7 +21,6 @@
width="195"
/>
<el-table-column
prop="name"
label="检查结果"
align="center"
width="180"

Loading…
Cancel
Save