Browse Source

peter

360view
newPeter7 2 years ago
parent
commit
ac9729e6e6
  1. 4
      src/components/360View/commonForm/threeVision.vue
  2. 6
      src/components/patient-search/data-list.vue
  3. 7
      src/page-subspecialty/store/modules/sign.js
  4. 95
      src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/addPatientOrder.vue
  5. 2
      src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/number-detail-manage.vue
  6. 16
      src/page-subspecialty/views/modules/optometryManagement/cornea/HIS-add.vue
  7. 39
      src/page-subspecialty/views/modules/optometryManagement/cornea/index.vue
  8. 2
      src/page-subspecialty/views/modules/optometryManagement/cornea/patient-add-or-update.vue
  9. 344
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/CornealReview.vue
  10. 293
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/first-visit/index.vue
  11. 2
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/informBook/notice-book.vue
  12. 2
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/informBook/rgp-book.vue
  13. 1
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/ok-lens-rgp/add-or-update.vue
  14. 24
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/ok-lens-rgp/left-right-eye.vue
  15. 184
      src/page-subspecialty/views/modules/optometryManagement/seeDoctor/review.vue
  16. 6
      src/page-subspecialty/views/modules/scientificManagement/sys/project.vue

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

@ -778,8 +778,8 @@ export default {
data() { data() {
return { return {
myLayout: [ myLayout: [
'1234567890{delete:backspace}|qwertyuiop|asdfghjkl|{shift:goto:1}zxcvbnm|{space:space}{custom:custom}',
'@+-/%△°*()ᴿᴸ|1234567890|QWERTYUIOP|ASDFGHJKL|{shift:goto:0}ZXCVBNM|{space:space}{custom:custom}'
'@+-/%△°*()ᴿᴸ|1234567890|QWERTYUIOP|ASDFGHJKL|{shift:goto:1}ZXCVBNM|{space:space}{custom:custom}{delete:backspace}',
'1234567890{delete:backspace}|qwertyuiop|asdfghjkl|{shift:goto:0}zxcvbnm|{space:space}{custom:custom}'
], ],
// myLayout: '||{EX:EX}', // myLayout: '||{EX:EX}',
focusItem: '', focusItem: '',

6
src/components/patient-search/data-list.vue

@ -19,9 +19,9 @@
<!-- 检查项目 --> <!-- 检查项目 -->
<el-form-item :label="'检查计次'"> <el-form-item :label="'检查计次'">
<div class="exam"> <div class="exam">
<p v-for="(item, index) in getExamItem(scope.row.statsExamItem)" :key="index">
<span class="exam-name" :title="item.name">{{ item.name }}</span>
<span class="exam-num">{{ item.num }}</span>
<p v-for="(item, index) in scope.row.checkCount" :key="index">
<span class="exam-name" :title="item.checkName">{{ item.checkName }}</span>
<span class="exam-num">{{ item.count }}</span>
</p> </p>
</div> </div>
</el-form-item> </el-form-item>

7
src/page-subspecialty/store/modules/sign.js

@ -26,6 +26,7 @@ export default {
operator: '', operator: '',
informedDocSign: '', informedDocSign: '',
informPatientSign: '', informPatientSign: '',
checkSign: ''
fundusDocSign: '', fundusDocSign: '',
kinSign: '', kinSign: '',
performerSign: '', performerSign: '',
@ -44,6 +45,7 @@ export default {
operator: state => state.operator, operator: state => state.operator,
informedDocSign: state => state.informedDocSign, informedDocSign: state => state.informedDocSign,
informPatientSign: state => state.informPatientSign, informPatientSign: state => state.informPatientSign,
checkSign: state => state.checkSign,
fundusDocSign: state => state.fundusDocSign, fundusDocSign: state => state.fundusDocSign,
kinSign: state => state.kinSign, kinSign: state => state.kinSign,
performerSign: state => state.performerSign, performerSign: state => state.performerSign,
@ -198,6 +200,8 @@ export default {
this.commit('performerSign', img_base64) this.commit('performerSign', img_base64)
} else if (state.type === 15) { } else if (state.type === 15) {
this.commit('checkerSign', img_base64) this.commit('checkerSign', img_base64)
} else if (state.type === 16) {
this.commit('checkSign', img_base64)
} }
} else { } else {
// debugPrint("saveSignToBase64 error,description:" + args[0]); // debugPrint("saveSignToBase64 error,description:" + args[0]);
@ -241,6 +245,9 @@ export default {
informPatientSign(state, val) { informPatientSign(state, val) {
state.informPatientSign = val state.informPatientSign = val
}, },
checkSign(state, val) {
state.checkSign = val
}
fundusDocSign(state, val) { fundusDocSign(state, val) {
state.fundusDocSign = val state.fundusDocSign = val
}, },

95
src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/addPatientOrder.vue

@ -29,14 +29,19 @@
/> />
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="11" style="display: flex;align-items: center;margin-left: 15px">
<span style="margin-right: 10px">
已开医嘱:
</span>
<el-radio v-model="form.yzOpen" label="Y">
</el-radio>
<el-radio v-model="form.yzOpen" label="N">
</el-radio>
<el-col :span="13" style="display: flex;align-items: center;margin-left: 15px">
<span style="margin-right: 6px;margin-bottom: 3px">患者类型:</span>
<el-checkbox-group v-model="form.patientType">
<el-checkbox label="门诊"></el-checkbox>
<el-checkbox label="住院"></el-checkbox>
<el-checkbox label="会诊"></el-checkbox>
</el-checkbox-group>
<!-- <div class="radioItem" @click="form.yzOpen='Y'">-->
<!-- <input :checked="form.yzOpen==='Y'" type="radio">-->
<!-- </div>-->
<!-- <div class="radioItem" @click="form.yzOpen='N'">-->
<!-- <input :checked="form.yzOpen==='N'" type="radio">-->
<!-- </div>-->
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="备注:"> <el-form-item label="备注:">
@ -65,28 +70,60 @@
<el-radio v-model="form.eyeType" label="OU">OU <el-radio v-model="form.eyeType" label="OU">OU
</el-radio> </el-radio>
</el-col> </el-col>
<el-col :span="7" style="display: flex;align-items: center">
<span style="margin-right: 10px">散瞳:</span>
<el-radio v-model="form.pupilDilate" label="Y">OD
</el-radio>
<el-radio v-model="form.pupilDilate" label="N">OS
</el-radio>
</el-col>
<el-col :span="7" style="display: flex;align-items: center">
<span style="margin-right: 10px">缩瞳:</span>
<el-radio v-model="form.pupilShrink" label="Y">OD
</el-radio>
<el-radio v-model="form.pupilShrink" label="N">OS
</el-radio>
<!--/* <el-col :span="6" style="display: flex;align-items: center">*/-->
<!--/* 散瞳:*/-->
<!--/* <div class="radioItem" @click="form.pupilDilate='Y'">*/-->
<!--/* <input :checked="form.pupilDilate==='Y'" type="radio">是*/-->
<!--/* </div>*/-->
<!--/* <div class="radioItem" @click="form.pupilDilate='N'">*/-->
<!--/* <input :checked="form.pupilDilate==='N'" type="radio">否*/-->
<!--/* </div>*/-->
<!--/* </el-col>*/-->
<!-- <el-col :span="6" style="display: flex;align-items: center">-->
<!-- 缩瞳:-->
<!-- <div class="radioItem" @click="form.pupilShrink='Y'">-->
<!-- <input :checked="form.pupilShrink==='Y'" type="radio">-->
<!-- </div>-->
<!-- <div class="radioItem" @click="form.pupilShrink='N'">-->
<!-- <input :checked="form.pupilShrink==='N'" type="radio">-->
<!-- </div>-->
<!-- </el-col>-->
</div>
<div style="display: flex;padding:0 0 20px 0px">
<el-col :span="24" style="display: flex;align-items: center">
<div class="addLabel">项目:</div>
<el-checkbox-group v-model="form.patientType">
<el-checkbox label="眼底激光治疗"></el-checkbox>
<el-checkbox label="三面镜检查"></el-checkbox>
<el-checkbox label="FFA"></el-checkbox>
<el-checkbox label="ICGA"></el-checkbox>
<el-checkbox label="其他"></el-checkbox>
<el-input size="small" v-model="form.patientId" placeholder="请输入" style="width: 125px;"/>
</el-checkbox-group>
<!-- <div class="radioItem" @click="form.threeMirror='Y'">-->
<!-- <input :checked="form.threeMirror==='Y'" type="radio">-->
<!-- </div>-->
<!-- <div class="radioItem" @click="form.threeMirror='N'">-->
<!-- <input :checked="form.threeMirror==='N'" type="radio">-->
<!-- </div>-->
</el-col> </el-col>
</div> </div>
<div style="display: flex;padding:0 0 20px 0px"> <div style="display: flex;padding:0 0 20px 0px">
<el-col :span="12" style="display: flex;align-items: center">
<div class="addLabel">三面镜:</div>
<el-radio v-model="form.threeMirror" label="Y">
</el-radio>
<el-radio v-model="form.threeMirror" label="N">
</el-radio>
<el-col :span="24" style="display: flex;align-items: center">
<div class="addLabel">准备工作:</div>
<el-checkbox-group v-model="form.patientType">
<el-checkbox label="医嘱已开"></el-checkbox>
<el-checkbox label="散瞳"></el-checkbox>
<el-checkbox label="表麻"></el-checkbox>
<el-checkbox label="全身检查完成"></el-checkbox>
<el-checkbox label="缩瞳"></el-checkbox>
</el-checkbox-group>
<!-- <div class="radioItem" @click="form.threeMirror='Y'">-->
<!-- <input :checked="form.threeMirror==='Y'" type="radio">-->
<!-- </div>-->
<!-- <div class="radioItem" @click="form.threeMirror='N'">-->
<!-- <input :checked="form.threeMirror==='N'" type="radio">-->
<!-- </div>-->
</el-col> </el-col>
</div> </div>
<el-form-item label="预约时间:" required> <el-form-item label="预约时间:" required>
@ -151,6 +188,7 @@ export default {
patientInfo: null, patientInfo: null,
form: { form: {
patientId: '', patientId: '',
patientType: [],
doctorName: '', doctorName: '',
yzOpen: '', yzOpen: '',
remark: '', remark: '',
@ -334,6 +372,9 @@ input{
::v-deep .el-radio{ ::v-deep .el-radio{
margin-right: 8px; margin-right: 8px;
} }
::v-deep .el-checkbox{
margin-right: 12px;
}
.patientDetail{ .patientDetail{
border: 1px solid #6EB1FF; border: 1px solid #6EB1FF;
border-radius: 8px; border-radius: 8px;

2
src/page-subspecialty/views/modules/nurseManagement/reservation/schedule/number-detail-manage.vue

@ -78,7 +78,7 @@ export default {
}, },
addOrder() { addOrder() {
this.addPatientVisible = true this.addPatientVisible = true
this.addTitle = '新增预约'
this.addTitle = `新增预约-${this.projectName}`
this.isEdit = false this.isEdit = false
this.curPatient = null this.curPatient = null
this.$nextTick(() => { this.$nextTick(() => {

16
src/page-subspecialty/views/modules/optometryManagement/cornea/HIS-add.vue

@ -108,7 +108,21 @@ export default {
// //
async introduceHandle(scopwRow) { async introduceHandle(scopwRow) {
this.visible = false this.visible = false
this.$parent.addOrUpdateHandle('', scopwRow, 'HIS引入')
// this.$parent.addOrUpdateHandle('', scopwRow, 'HIS')
await this.doLeadIn()
},
async doLeadIn() {
this.loading = true
const { data: res } = await this.$http.get('/lenses/doLeadIn', {
params: this.dataFormHis
})
if (res.code === 0) {
this.loading = false
this.$parent.getDataListInitial()
} else {
this.loading = false
this.$message.error(res.msg)
}
} }
} }
} }

39
src/page-subspecialty/views/modules/optometryManagement/cornea/index.vue

@ -30,25 +30,25 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<!-- <div style="display: flex;justify-content: space-between;background-color: white;padding: 16px 16px 0">-->
<!-- <div>-->
<!--&lt;!&ndash; <el-select v-model="dataForm.searchType" placeholder="请选择" style="width:120px;float: left;margin-right: 16px" size="small" @change="getDataListInitial">&ndash;&gt;-->
<!--&lt;!&ndash; <el-option&ndash;&gt;-->
<!--&lt;!&ndash; v-for="item in options"&ndash;&gt;-->
<!--&lt;!&ndash; :key="item.value"&ndash;&gt;-->
<!--&lt;!&ndash; :label="item.label"&ndash;&gt;-->
<!--&lt;!&ndash; :value="item.value"&ndash;&gt;-->
<!--&lt;!&ndash; />&ndash;&gt;-->
<!--&lt;!&ndash; </el-select>&ndash;&gt;-->
<!-- </div>- -->
<!-- <div>-->
<div style="display: flex;justify-content: space-between;background-color: white;padding: 16px 16px 0">
<div>
<!-- <el-select v-model="dataForm.searchType" placeholder="请选择" style="width:120px;float: left;margin-right: 16px" size="small" @change="getDataListInitial">-->
<!-- <el-option-->
<!-- v-for="item in options"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- :value="item.value"-->
<!-- />-->
<!-- </el-select>-->
</div>
<div>
<!-- <el-button type="primary" size="small" icon="el-icon-plus" @click="addOrUpdateHandle('','','新增患者')">新增</el-button>--> <!-- <el-button type="primary" size="small" icon="el-icon-plus" @click="addOrUpdateHandle('','','新增患者')">新增</el-button>-->
<!-- <el-button type="primary" size="small" @click="HISHandle">-->
<!-- <svg-icon icon-class="icon-HIS-up" style="font-size:12px;" />-->
<!-- <span style="padding-left:5px;vertical-align: middle;">HIS引入</span>-->
<!-- </el-button>-->
<!-- </div>-->
<!-- </div>-->
<el-button type="primary" size="small" @click="HISHandle">
<svg-icon icon-class="icon-HIS-up" style="font-size:12px;" />
<span style="padding-left:5px;vertical-align: middle;">HIS引入</span>
</el-button>
</div>
</div>
<div class="patient-info-content"> <div class="patient-info-content">
<el-table <el-table
ref="multipleTable" ref="multipleTable"
@ -101,7 +101,8 @@ export default {
data() { data() {
return { return {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: '/patient/page',
getDataListURL: '/lenses/page',
// getDataListURL: '/patient/page',
getDataListIsPage: true getDataListIsPage: true
}, },
nextVisitTime: [], nextVisitTime: [],

2
src/page-subspecialty/views/modules/optometryManagement/cornea/patient-add-or-update.vue

@ -108,7 +108,7 @@ export default {
visible: false, visible: false,
dataForm: { dataForm: {
registerType: 1, registerType: 1,
platform: 3,
// platform: 3,
patientId: '', patientId: '',
patientName: '', patientName: '',
patientIdNumber: '', patientIdNumber: '',

344
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/CornealReview.vue

@ -1,12 +1,12 @@
<template> <template>
<div class="corneal"> <div class="corneal">
<head-template> <head-template>
<el-button type="primary" size="small" @click="saveCheckData()">保存</el-button>
<el-button v-print="'cornealPrint'" size="small">打印</el-button>
<el-button type="primary" size="small" @click="handleSaveTable()">保存</el-button>
<el-button v-print="'secondPrint'" size="small">打印</el-button>
</head-template> </head-template>
<div class="notice-content"> <div class="notice-content">
<div class="notice-box"> <div class="notice-box">
<div id="cornealPrint" class="notice_tip" style="page-break-after:always">
<div id="secondPrint" class="notice_tip" style="page-break-after:always">
<h2 style="text-align: center;margin-bottom: 32px;"> <h2 style="text-align: center;margin-bottom: 32px;">
角膜塑形镜复查单 角膜塑形镜复查单
</h2> </h2>
@ -17,22 +17,19 @@
<div class="tdItem"> <div class="tdItem">
<span style="word-break: keep-all">检查日期</span> <span style="word-break: keep-all">检查日期</span>
<el-date-picker <el-date-picker
v-model="formData.patientCheckDate"
v-model="formData.checkDate"
type="date" type="date"
/> />
</div> </div>
</td> </td>
<td colspan="2"><div class="tdItem">已戴镜时间 <el-input v-model="formData.patientWearTime" style="flex: 1" placeholder="" /></div></td>
<td colspan="2"><div class="tdItem">已戴镜时间 <el-input v-model="formData.djTime" style="flex: 1" placeholder="" /></div></td>
</tr> </tr>
<tr> <tr>
<td colspan="6"> <td colspan="6">
<div style="display: flex;flex-wrap: wrap"> <div style="display: flex;flex-wrap: wrap">
<el-select v-model="formData.check" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="index" :value="item.id" :label="item.name" />
<el-select v-model="formData.checkResult" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="item.id" :value="item.id" :label="item.name" />
</el-select> </el-select>
<!-- <div v-for="(item,index) in formData.checkList" :key="index" class="checkItem" @click="item.isSelect=!item.isSelect">-->
<!-- <input type="checkbox" :checked="item.isSelect">{{ item.name }}-->
<!-- </div>-->
</div> </div>
</td> </td>
</tr> </tr>
@ -41,49 +38,59 @@
<td colspan="2">右眼</td> <td colspan="2">右眼</td>
<td colspan="2">左眼</td> <td colspan="2">左眼</td>
</tr> </tr>
<tr v-for="(item,index) in formData.projectList" :key="`${index}_${index}`">
<template v-if="index<4">
<template v-if="item.name === '角膜地形图'">
<td colspan="2">{{ item.name }}</td>
<td colspan="2">
<el-select v-model="item.os" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="index" :value="item.id" :label="item.name" />
</el-select>
</td>
<td colspan="2">
<el-select v-model="item.od" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="index" :value="item.id" :label="item.name" />
</el-select>
</td>
</template>
<template v-else>
<td colspan="2">{{ item.name }}</td>
<td colspan="2"><el-input v-model="item.os" /></td>
<td colspan="2"><el-input v-model="item.od" /></td>
</template>
</template>
<tr>
<td colspan="2">视力</td>
<td colspan="2"><el-input v-model="formData.vaOs" /></td>
<td colspan="2"><el-input v-model="formData.vaOd" /></td>
</tr> </tr>
<tr> <tr>
<td rowspan="4">{{ formData.projectList[4].name }}</td>
<td colspan="2">眼压</td>
<td colspan="2"><el-input v-model="formData.iolOs" /></td>
<td colspan="2"><el-input v-model="formData.iolOd" /></td>
</tr> </tr>
<tr v-for="(item,idx) in formData.projectList[4].areaList" :key="`${item}_${idx}`">
<td>{{ item.name }}</td>
<td colspan="2"><el-input v-model="item.os" /></td>
<td colspan="2"><el-input v-model="item.od" /></td>
<tr>
<td colspan="2">角膜地形图</td>
<td colspan="2">
<el-select v-model="formData.jmdxtOs" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="item.id" :value="item.id" :label="item.name" />
</el-select>
</td>
<td colspan="2">
<el-select v-model="formData.jmdxtOd" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in cornealList " :key="item.id" :value="item.id" :label="item.name" />
</el-select>
</td>
</tr>
<tr>
<td rowspan="4">眼表</td>
</tr> </tr>
<tr> <tr>
<td colspan="2">{{ formData.projectList[5].name }}</td>
<td>角膜</td>
<td colspan="2"><el-input v-model="formData.corneaOs" /></td>
<td colspan="2"><el-input v-model="formData.corneaOd" /></td>
</tr>
<tr>
<td>结膜</td>
<td colspan="2"><el-input v-model="formData.conjunctivaOs" /></td>
<td colspan="2"><el-input v-model="formData.conjunctivaOd" /></td>
</tr>
<tr>
<td>其他</td>
<td colspan="2"><el-input v-model="formData.otherOs" /></td>
<td colspan="2"><el-input v-model="formData.otherOd" /></td>
</tr>
<tr>
<td colspan="2">镜片</td>
<td colspan="2"> <td colspan="2">
<div style="display: flex;flex-wrap: wrap"> <div style="display: flex;flex-wrap: wrap">
<el-select v-model="formData.lensOD" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-select v-model="formData.mirrorOs" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in lensList " :key="index" :value="item.id" :label="item.name" /> <el-option v-for="(item,index) in lensList " :key="index" :value="item.id" :label="item.name" />
</el-select> </el-select>
</div> </div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div style="display: flex;flex-wrap: wrap"> <div style="display: flex;flex-wrap: wrap">
<el-select v-model="formData.lensOS" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-select v-model="formData.mirrorOd" placeholder="" clearable multiple filterable allow-create style="width: 100%">
<el-option v-for="(item,index) in lensList " :key="index" :value="item.id" :label="item.name" /> <el-option v-for="(item,index) in lensList " :key="index" :value="item.id" :label="item.name" />
</el-select> </el-select>
</div> </div>
@ -98,11 +105,16 @@
<tr> <tr>
<td colspan="6" style="padding: 0"> <td colspan="6" style="padding: 0">
<div style="display: flex"> <div style="display: flex">
<div style="flex: 1;padding: 5px 10px;display: flex;align-items: center">
<span style="word-break: keep-all">检查人签字</span> <el-input v-model="formData.patientSign" />
<div style="flex: 1;padding: 5px 10px;display: flex;align-items: center" @click="signClick(16)">
<span style="word-break: keep-all">检查人签字:</span>
<img v-if="!formData.checkSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-left: 12px">
<img v-else style="width: 80px;height: 40px;" :src="formData.checkSign">
<!-- <el-input v-model="formData.checkSign" />-->
</div> </div>
<div style="flex: 1;border-left: 1px solid #ccc;padding: 5px 10px;display: flex;align-items: center"> <div style="flex: 1;border-left: 1px solid #ccc;padding: 5px 10px;display: flex;align-items: center">
<span style="word-break: keep-all">医生签字</span><el-input v-model="formData.docSign" />
<span style="word-break: keep-all">医生签字:</span>
<img v-if="formData.doctorSign" :src="formData.doctorSign" alt="" style="width: 80px;height: 50px;border-style:none;margin-left: 12px">
<!-- <el-input v-model="formData.doctorSign" />-->
</div> </div>
</div> </div>
</td> </td>
@ -121,188 +133,261 @@ export default {
components: { components: {
headTemplate headTemplate
}, },
props: {
caseId: {
type: String,
default: ''
},
patientId: {
type: String,
default: ''
},
},
data() { data() {
return { return {
cornealList: [ cornealList: [
{ {
name: '居中', name: '居中',
id: 1
id: '1'
}, },
{ {
name: '大致居中', name: '大致居中',
id: 2
id: '2'
}, },
{ {
name: '偏上', name: '偏上',
id: 3
id: '3'
}, },
{ {
name: '偏下', name: '偏下',
id: 4
id: '4'
}, },
{ {
name: '偏左', name: '偏左',
id: 5
id: '5'
}, },
{ {
name: '偏右', name: '偏右',
id: 6
id: '6'
}, },
{ {
name: '偏颞上', name: '偏颞上',
id: 7
id: '7'
}, },
{ {
name: '偏颞下', name: '偏颞下',
id: 8
id: '8'
}, },
{ {
name: '偏鼻上', name: '偏鼻上',
id: 9
id: '9'
}, },
{ {
name: '偏鼻下', name: '偏鼻下',
id: 10
id: '10'
}, },
{ {
name: '稍上', name: '稍上',
id: 11
id: '11'
}, },
{ {
name: '稍下', name: '稍下',
id: 12
id: '12'
}, },
{ {
name: '稍左', name: '稍左',
id: 13
id: '13'
}, },
{ {
name: '稍右', name: '稍右',
id: 14
id: '14'
}, },
{ {
name: '稍颞上', name: '稍颞上',
id: 15
id: '15'
}, },
{ {
name: '稍颞下', name: '稍颞下',
id: 16
id: '16'
}, },
{ {
name: '稍鼻上', name: '稍鼻上',
id: 17
id: '17'
}, },
{ {
name: '稍鼻下', name: '稍鼻下',
id: 18
id: '18'
} }
], ],
checkList: [ checkList: [
{ {
name: '正常', name: '正常',
id: 1
id: '1'
}, { }, {
name: '重影', name: '重影',
id: 2
id: '2'
}, { }, {
name: '视力波动', name: '视力波动',
id: 3
id: '3'
}, { }, {
name: '异物感', name: '异物感',
id: 4
id: '4'
}, { }, {
name: '镜片难摘', name: '镜片难摘',
id: 5
id: '5'
}, { }, {
name: '眼红', name: '眼红',
id: 6
id: '6'
}, { }, {
name: '眼痛', name: '眼痛',
id: 7
id: '7'
}, { }, {
name: '眩光', name: '眩光',
id: 8
id: '8'
}, { }, {
name: '视力不佳', name: '视力不佳',
id: 9
id: '9'
}, { }, {
name: '其他', name: '其他',
id: 10
id: '10'
} }
], ],
lensList: [ lensList: [
{ {
name: '正常', name: '正常',
id: 1
id: '1'
}, { }, {
name: '划痕', name: '划痕',
id: 2
id: '2'
}, { }, {
name: '污染', name: '污染',
id: 3
id: '3'
}, { }, {
name: '破损', name: '破损',
id: 4
id: '4'
} }
], ],
formData: { formData: {
patientName: '',
patientCheckDate: '',
patientWearTime: '',
check: '',
projectList: [
{
name: '视力',
os: '',
od: ''
}, {
name: '眼压',
os: '',
od: ''
}, {
name: '角膜地形图',
os: '',
od: ''
}, {
name: '眼轴',
os: '',
od: ''
}, {
name: '眼表',
os: '',
od: '',
areaList: [
{
name: '角膜',
os: '',
od: ''
}, {
name: '结膜',
os: '',
od: ''
}, {
name: '其他',
os: '',
od: ''
}
]
}, {
name: '镜片',
os: '',
od: '',
}
],
remark: '',
patientSign: '',
lensOD: '',
lensOS: '',
docSign: ''
checkResult: [], //
checkSign: '', //
conjunctivaOd: '', //
conjunctivaOs: '', //
corneaOd: '', //
corneaOs: '', //
djTime: '', //
doctorSign: '', //
iolOd: '', //
iolOs: '', //
iopOd: '', //
iopOs: '', //
jmdxtOd: [], //
jmdxtOs: [], //
mirrorOd: [], //
mirrorOs: [], //
otherOd: '', //
otherOs: '', //
patientName: '', //
patientAddress: '', //
patientBirthday: '', //
patientId: '', // id
patientPhone: '', //
patientSex: '', //
remark: '', //
vaOd: '', //
vaOs: '', //
checkDate: '' //
} }
} }
}, },
watch: {
caseId(val) {
this.querySecondVisit()
}
},
computed: {
checkSign: {
get() {
return this.$store.getters.checkSign
},
set(val) {
}
},
},
mounted() {
this.$store.commit('initPlugin')
this.querySecondVisit()
},
methods: { methods: {
saveCheckData() {
console.log(this.formData)
signClick(index) {
this.$store.commit('beginSign', index)
},
setSign() {
const userData = window.sessionStorage.getItem('qg-userData')
const date = this.$moment().format('YYYY-MM-DD')
this.formData.doctorSign = JSON.parse(userData).signImgBase
this.formData.checkDate = date
},
async querySecondVisit() {
const params = {
caseId: this.caseId
}
const { data: res } = await this.$http.get('/hospital/notice/getSecondDiagnosis', {
params: params
})
if (res.code === 0) {
this.formData = res.data
this.formData.checkResult = this.formData.checkResult ? this.formData.checkResult.split(',') : []
this.formData.jmdxtOd = this.formData.jmdxtOd ? this.formData.jmdxtOd.split(',') : []
this.formData.jmdxtOs = this.formData.jmdxtOs ? this.formData.jmdxtOs.split(',') : []
this.formData.mirrorOd = this.formData.mirrorOd ? this.formData.mirrorOd.split(',') : []
this.formData.mirrorOs = this.formData.mirrorOs ? this.formData.mirrorOs.split(',') : []
if (this.formData.isChange === 0) {
this.$store.commit('checkSign', '')
await this.getPatientData()
this.setSign()
} else {
this.$store.commit('checkSign', res.data.checkSign)
}
} 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) {
this.formData.patientId = res.data.patientId
this.formData.patientName = res.data.patientName
} else {
this.$message.error(res.msg)
}
},
async handleSaveTable() {
this.formData.checkResult = this.formData.checkResult.length ? this.formData.checkResult.join(',') : ''
this.formData.jmdxtOd = this.formData.jmdxtOd.length ? this.formData.jmdxtOd.join(',') : ''
this.formData.jmdxtOs = this.formData.jmdxtOs.length ? this.formData.jmdxtOs.join(',') : ''
this.formData.mirrorOd = this.formData.mirrorOd.length ? this.formData.mirrorOd.join(',') : ''
this.formData.mirrorOs = this.formData.mirrorOs.length ? this.formData.mirrorOs.join(',') : ''
this.formData.checkSign = this.checkSign ? this.checkSign : ''
const data = JSON.parse(JSON.stringify(this.formData))
const params = {
...data
}
const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateSecondDiagnosis', params)
if (res.code === 0) {
await this.querySecondVisit()
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
} }
} }
} }
@ -344,6 +429,9 @@ input{
word-break: keep-all; word-break: keep-all;
margin-right: 20px; margin-right: 20px;
} }
::v-deep .el-icon-arrow-up{
display: none;
}
} }
} }
.corneal{ .corneal{

293
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/first-visit/index.vue

@ -1,7 +1,7 @@
<template> <template>
<div class="first-visit"> <div class="first-visit">
<head-template> <head-template>
<el-button type="primary" size="small" @click="saveCheckData()">保存</el-button>
<el-button type="primary" size="small" @click="handleSaveTable()">保存</el-button>
<el-button v-print="'cornealPrint'" size="small">打印</el-button> <el-button v-print="'cornealPrint'" size="small">打印</el-button>
</head-template> </head-template>
<div class="notice-content"> <div class="notice-content">
@ -13,55 +13,61 @@
<div style="float: right"> <div style="float: right">
<span style="word-break: keep-all;font-size: 18px">验配日期</span> <span style="word-break: keep-all;font-size: 18px">验配日期</span>
<el-date-picker <el-date-picker
v-model="formData.ypDate"
style="width: 220px" style="width: 220px"
v-model="formData.patientCheckDate"
type="date" type="date"
/> />
</div> </div>
<table class="cornealTable"> <table class="cornealTable">
<tr> <tr>
<td colspan="1"><div class="tdItem">姓名 <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div></td> <td colspan="1"><div class="tdItem">姓名 <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div></td>
<td colspan="1"><div class="tdItem">姓别 <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div></td>
<td colspan="1"><div class="tdItem">姓别 <el-input v-model="formData.patientSex" style="flex: 1" placeholder="" /></div></td>
<td colspan="1"> <td colspan="1">
<div class="tdItem"> <div class="tdItem">
<span style="word-break: keep-all">检查日期</span> <span style="word-break: keep-all">检查日期</span>
<el-date-picker <el-date-picker
v-model="formData.patientCheckDate"
v-model="formData.checkDate"
type="date" type="date"
/> />
</div> </div>
</td> </td>
<td colspan="1"><div class="tdItem">联系电话 <el-input v-model="formData.patientWearTime" style="flex: 1" placeholder="" /></div></td>
<td colspan="1"><div class="tdItem">联系电话 <el-input v-model="formData.patientPhone" style="flex: 1" placeholder="" /></div></td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">家庭住址 <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">家庭住址 <el-input v-model="formData.patientAddress" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">近视家族史 <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">近视家族史 <el-input v-model="formData.jsjzs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">裸眼视力: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">裸眼视力:
R<el-input v-model="formData.vanOd" style="flex: 1" placeholder="" />
L<el-input v-model="formData.vanOs" style="flex: 1" placeholder="" />
</div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">眼压: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">眼压:
R<el-input v-model="formData.iopOd" style="flex: 1" placeholder="" />
L<el-input v-model="formData.iopOs" style="flex: 1" placeholder="" />
</div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="4"> <td colspan="4">
<div class="tdItem">电脑验光: <div class="tdItem">电脑验光:
R<el-input v-model="formData.patientName" style="flex: 1" placeholder="" />
L<el-input v-model="formData.patientName" style="flex: 1" placeholder="" />
R<el-input v-model="formData.dnygR" style="flex: 1" placeholder="" />
L<el-input v-model="formData.dnygL" style="flex: 1" placeholder="" />
</div> </div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="4"> <td colspan="4">
<div class="tdItem">主觉验光: <div class="tdItem">主觉验光:
R<el-input v-model="formData.patientName" style="flex: 1" placeholder="" />
L<el-input v-model="formData.patientName" style="flex: 1" placeholder="" />
R<el-input v-model="formData.zjygR" style="flex: 1" placeholder="" />
L<el-input v-model="formData.zjygL" style="flex: 1" placeholder="" />
</div> </div>
</td> </td>
</tr> </tr>
@ -71,66 +77,66 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">H: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">H: <el-input v-model="formData.hod" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">H: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">H: <el-input v-model="formData.hos" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">V: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">V: <el-input v-model="formData.vod" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">V: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">V: <el-input v-model="formData.vos" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">E值: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">E值: <el-input v-model="formData.eod" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">E值: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">E值: <el-input v-model="formData.eos" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">直径: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">直径: <el-input v-model="formData.zjOd" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">直径: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">直径: <el-input v-model="formData.zjOs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">眼轴: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">眼轴: <el-input v-model="formData.iolOd" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">眼轴: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">眼轴: <el-input v-model="formData.iolOs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">厚度: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">厚度: <el-input v-model="formData.hdOd" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">厚度: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">厚度: <el-input v-model="formData.hdOs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">内皮: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">内皮: <el-input v-model="formData.npOd" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">内皮: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">内皮: <el-input v-model="formData.npOs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">BUT: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">BUT: <el-input v-model="formData.butOd" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">BUT: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">BUT: <el-input v-model="formData.butOs" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -138,26 +144,26 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">R: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">R: <el-input v-model="formData.sdcsR1" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">L: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">L: <el-input v-model="formData.sdcsL1" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">R: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">R: <el-input v-model="formData.sdcsR2" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">L: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">L: <el-input v-model="formData.sdcsL2" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">R: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">R: <el-input v-model="formData.sdcsR3" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">L: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">L: <el-input v-model="formData.sdcsL3" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -165,10 +171,10 @@
</tr> </tr>
<tr> <tr>
<td colspan="2"> <td colspan="2">
<div class="tdItem">R: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">R: <el-input v-model="formData.dpcsR1" style="flex: 1" placeholder="" /></div>
</td> </td>
<td colspan="2"> <td colspan="2">
<div class="tdItem">L: <el-input v-model="formData.patientName" style="flex: 1" placeholder="" /></div>
<div class="tdItem">L: <el-input v-model="formData.dpcsL1" style="flex: 1" placeholder="" /></div>
</td> </td>
</tr> </tr>
</table> </table>
@ -185,126 +191,109 @@ export default {
components: { components: {
headTemplate headTemplate
}, },
props: {
patientId: {
type: String,
default: ''
}
},
data() { data() {
return { return {
formData: { formData: {
patientName: '',
patientCheckDate: '',
patientWearTime: '',
checkList: [
{
name: '正常',
isSelect: false
}, {
name: '重影',
isSelect: false
}, {
name: '视力波动',
isSelect: false
}, {
name: '异物感',
isSelect: false
}, {
name: '镜片难摘',
isSelect: false
}, {
name: '眼红',
isSelect: false
}, {
name: '眼痛',
isSelect: false
}, {
name: '眩光',
isSelect: false
}, {
name: '视力不佳',
isSelect: false
}, {
name: '其他',
isSelect: false
}
],
projectList: [
{
name: '视力',
os: '',
od: ''
}, {
name: '眼压',
os: '',
od: ''
}, {
name: '角膜地形图',
os: '',
od: ''
}, {
name: '眼轴',
os: '',
od: ''
}, {
name: '眼表',
os: '',
od: '',
areaList: [
{
name: '角膜',
os: '',
od: ''
}, {
name: '结膜',
os: '',
od: ''
}, {
name: '其他',
os: '',
od: ''
}
]
}, {
name: '镜片',
os: '',
od: '',
osList: [
{
name: '正常',
isSelect: false
}, {
name: '划痕',
isSelect: false
}, {
name: '污染',
isSelect: false
}, {
name: '破损',
isSelect: false
}
],
odList: [
{
name: '正常',
isSelect: false
}, {
name: '划痕',
isSelect: false
}, {
name: '污染',
isSelect: false
}, {
name: '破损',
isSelect: false
}
]
}
],
remark: '',
patientSign: '',
docSign: ''
butOd: '', // but
butOs: '',
dnygL: '', //
dnygR: '',
dpcsL1: '', //
dpcsR1: '',
hod: '', // h
hos: '', // h
eod: '', // e
eos: '',
hdOd: '', //
hdOs: '', //
iolOd: '', //
iolOs: '', //
iopOs: '', //
iopOd: '', //
jsjzs: '', //
npOd: '', //
npOs: '', //
patientName: '', //
patientAddress: '', //
patientBirthday: '', //
patientId: '', // id
patientPhone: '', // id
patientSex: '', // id
sdcsL1: '', //
sdcsL2: '', //
sdcsL3: '', //
sdcsR1: '', //
sdcsR2: '', //
sdcsR3: '', //
vanOd: '', //
vanOs: '', //
vod: '', // v
vos: '', // v
ypDate: '', //
zjOd: '', //
zjOs: '', //
zjygL: '', //
zjygR: '' //
} }
} }
}, },
mounted() {
this.queryFirstVisit()
this.getPatientData()
},
methods: { methods: {
saveCheckData() {
console.log(this.formData)
async queryFirstVisit() {
const params = {
patientId: this.patientId
}
const { data: res } = await this.$http.get('/hospital/notice/getFirstDiagnosis', {
params: params
})
if (res.code === 0) {
this.formData = 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) {
this.formData.patientId = res.data.patientId
// this.formData.patientAge = res.data.patientAge
this.formData.patientSex = res.data.patientSex
this.formData.patientName = res.data.patientName
this.formData.patientAddress = res.data.patientAddress
this.formData.patientPhone = res.data.patientPhone
} else {
this.$message.error(res.msg)
}
},
async handleSaveTable() {
const data = JSON.parse(JSON.stringify(this.formData))
const params = {
...data
}
const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateFirstDiagnosis', params)
if (res.code === 0) {
await this.queryFirstVisit()
this.$message.success('保存成功')
} else {
this.$message.error(res.msg)
}
} }
} }
} }
@ -336,7 +325,7 @@ input{
tr td{ tr td{
border: 1px solid #ccc; border: 1px solid #ccc;
font-size: 18px; font-size: 18px;
padding: 5px 10px;
padding: 3px 10px;
::v-deep .el-input__inner { ::v-deep .el-input__inner {
border: none !important; border: none !important;
text-align: center; text-align: center;
@ -378,7 +367,7 @@ input{
height: 100%; height: 100%;
overflow-y: auto; overflow-y: auto;
border: 1px solid #000; border: 1px solid #000;
padding: 64px 32px;
padding: 32px 32px;
margin-right: 16px; margin-right: 16px;
} }
} }

2
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/informBook/notice-book.vue

@ -185,7 +185,7 @@ export default {
created() { created() {
}, },
mounted() { mounted() {
// this.getNoticeName()
this.getNoticeName()
this.$store.commit('initPlugin') this.$store.commit('initPlugin')
this.doctorSignDate = this.$moment().format('YYYY-MM-DD') this.doctorSignDate = this.$moment().format('YYYY-MM-DD')
this.wearerOrGuardianSignDate = this.$moment().format('YYYY-MM-DD') this.wearerOrGuardianSignDate = this.$moment().format('YYYY-MM-DD')

2
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/informBook/rgp-book.vue

@ -173,7 +173,7 @@ export default {
created() { created() {
}, },
mounted() { mounted() {
// this.getNoticeName()
this.getNoticeName()
this.$store.commit('initPlugin') this.$store.commit('initPlugin')
this.doctorSignDate = this.$moment().format('YYYY-MM-DD') this.doctorSignDate = this.$moment().format('YYYY-MM-DD')
this.wearerOrGuardianSignDate = this.$moment().format('YYYY-MM-DD') this.wearerOrGuardianSignDate = this.$moment().format('YYYY-MM-DD')

1
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/ok-lens-rgp/add-or-update.vue

@ -66,7 +66,6 @@ export default {
dpDoctorId: '', dpDoctorId: '',
dpDate: '', dpDate: '',
patientId: this.patientId, patientId: this.patientId,
drgsName: window.localStorage.getItem('identity')
}, },
ISCRTForm: false ISCRTForm: false
} }

24
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/ok-lens-rgp/left-right-eye.vue

@ -11,50 +11,50 @@
<el-option v-for="(item,index) in replaceList " :key="index" :value="item.id" :label="`${item.dpDate}-${item.brand}-${item.colour}`" /> <el-option v-for="(item,index) in replaceList " :key="index" :value="item.id" :label="`${item.dpDate}-${item.brand}-${item.colour}`" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="品 牌:" :label-width="title=='新增' ? '60px' : '95px'" prop="brandId">
<el-form-item label="品 牌:" label-width="95px" prop="brandId">
<el-select v-model="dataForm.brandId" placeholder="请选择品牌" clearable multiple filterable allow-create> <el-select v-model="dataForm.brandId" placeholder="请选择品牌" clearable multiple filterable allow-create>
<el-option v-for="(item,index) in brandList " :key="index" :value="item.id" :label="item.brand" @click.native="selectOptionBrandHandle(item)" /> <el-option v-for="(item,index) in brandList " :key="index" :value="item.id" :label="item.brand" @click.native="selectOptionBrandHandle(item)" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<template v-if="ISCRTForm=='0' || ISCRTForm=='2'"> <template v-if="ISCRTForm=='0' || ISCRTForm=='2'">
<el-form-item v-if="tabTitle==='okLens' && tabTitle !== 'LJRJ'" label="曲 率:" :label-width="title=='新增' ? '60px' : '95px'" prop="curvity">
<el-form-item v-if="tabTitle==='okLens' && tabTitle !== 'LJRJ'" label="曲 率:" label-width="95px" prop="curvity">
<el-input v-model="dataForm.curvity" placeholder="请填写曲率" /> <el-input v-model="dataForm.curvity" placeholder="请填写曲率" />
</el-form-item> </el-form-item>
<el-form-item v-if="tabTitle==='RGP' && tabTitle !== 'LJRJ'" label="基弧:" :label-width="title=='新增' ? '60px' : '95px'" prop="baseArc">
<el-form-item v-if="tabTitle==='RGP' && tabTitle !== 'LJRJ'" label="基弧:" label-width="95px" prop="baseArc">
<el-input v-model="dataForm.baseArc" placeholder="请填写基弧" /> <el-input v-model="dataForm.baseArc" placeholder="请填写基弧" />
</el-form-item> </el-form-item>
<el-form-item label="度 数:" :label-width="title=='新增' ? '60px' : '95px'" prop="degrees">
<el-form-item label="度 数:" label-width="95px" prop="degrees">
<el-input v-model="dataForm.degrees" placeholder="请填写度数" /> <el-input v-model="dataForm.degrees" placeholder="请填写度数" />
</el-form-item> </el-form-item>
</template> </template>
<template> <template>
<el-form-item v-if=" ISCRTForm=='2'" label="AZT:" :label-width="title=='新增' ? '60px' : '95px'" prop="azt">
<el-form-item v-if=" ISCRTForm=='2'" label="AZT:" label-width="95px" prop="azt">
<el-input v-model="dataForm.azt" placeholder="请填写度数" /> <el-input v-model="dataForm.azt" placeholder="请填写度数" />
</el-form-item> </el-form-item>
<el-form-item v-if="ISCRTForm =='1' || ISCRTForm =='2'" label="BC:" :label-width="title=='新增' ? '60px' : '95px'" prop="bc">
<el-form-item v-if="ISCRTForm =='1' || ISCRTForm =='2'" label="BC:" label-width="95px" prop="bc">
<el-input v-model="dataForm.bc" placeholder="请填写BC" /> <el-input v-model="dataForm.bc" placeholder="请填写BC" />
</el-form-item> </el-form-item>
</template> </template>
<template v-if="ISCRTForm =='1'"> <template v-if="ISCRTForm =='1'">
<el-form-item label="RZD:" :label-width="title=='新增' ? '60px' : '95px'" prop="rzd">
<el-form-item label="RZD:" label-width="95px" prop="rzd">
<el-input v-model="dataForm.rzd" placeholder="请填写RZD" /> <el-input v-model="dataForm.rzd" placeholder="请填写RZD" />
</el-form-item> </el-form-item>
<el-form-item label="LZA:" :label-width="title=='新增' ? '60px' : '95px'" prop="lza">
<el-form-item label="LZA:" label-width="95px" prop="lza">
<el-input v-model="dataForm.lza" placeholder="请填写LZA" /> <el-input v-model="dataForm.lza" placeholder="请填写LZA" />
</el-form-item> </el-form-item>
</template> </template>
<el-form-item v-if="tabTitle !== 'LJRJ'" label="直 径:" :label-width="title=='新增' ? '60px' : '95px'" prop="diameter">
<el-form-item v-if="tabTitle !== 'LJRJ'" label="直 径:" label-width="95px" prop="diameter">
<el-input v-model="dataForm.diameter" placeholder="请填写直径" /> <el-input v-model="dataForm.diameter" placeholder="请填写直径" />
</el-form-item> </el-form-item>
<el-form-item v-if="tabTitle !== 'LJRJ'" label="颜 色:" :label-width="title=='新增' ? '60px' : '95px'" prop="colourId">
<el-form-item v-if="tabTitle !== 'LJRJ'" label="颜 色:" label-width="95px" prop="colourId">
<el-select v-model="dataForm.colourId" placeholder="请选择颜色" clearable @change="colorChange"> <el-select v-model="dataForm.colourId" placeholder="请选择颜色" clearable @change="colorChange">
<el-option v-for="item in brandCOlorList.data" :key="item.id" :label="item.colour" :value="item.id" @click.native="selectOptionColorHandle(item)" /> <el-option v-for="item in brandCOlorList.data" :key="item.id" :label="item.colour" :value="item.id" @click.native="selectOptionColorHandle(item)" />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item v-if="title.includes('借片')" label="归还日期:" :label-width="title=='新增' ? '60px' : '95px'" prop="returnDate">
<el-form-item v-if="title.includes('借片')" label="归还日期:" label-width="95px" prop="returnDate">
<el-date-picker v-model="dataForm.returnDate" type="date" placeholder="请选择归还日期" value-format="yyyy-MM-dd" /> <el-date-picker v-model="dataForm.returnDate" type="date" placeholder="请选择归还日期" value-format="yyyy-MM-dd" />
</el-form-item> </el-form-item>
<el-form-item label="备 注:" :label-width="title=='新增' ? '60px' : '95px'" prop="remark">
<el-form-item label="备 注:" label-width="95px" prop="remark">
<el-input v-model="dataForm.remark" type="textarea" placeholder="备注信息" /> <el-input v-model="dataForm.remark" type="textarea" placeholder="备注信息" />
</el-form-item> </el-form-item>
</el-form> </el-form>

184
src/page-subspecialty/views/modules/optometryManagement/seeDoctor/review.vue

@ -1,13 +1,38 @@
<template> <template>
<div class="review">
<el-tabs v-model="activeName">
<el-tab-pane label="复查情况" name="first">
<review-situation :patient-id="patientId" />
</el-tab-pane>
<el-tab-pane label="角膜塑形镜复查单" name="second">
<corneal-review />
</el-tab-pane>
</el-tabs>
<div class="reviewContain">
<div class="reviewLeft">
<div class="content-top">
<div v-for="(item, index) in formList" :key="index" class="formBox" :class="[index === curIndex ? 'active' : '']" @click="handleForm(index, item)">
<div style="display: flex;padding: 2px 0">
<p :class="[index === curIndex ? 'activeFont' : 'curFont']">{{ item.createDate }}</p>
<i v-if="index === curIndex" style="margin-top: 5px;color: rgb(199,5,5);margin-left: 12px" class="el-icon-delete" @click="deleteForm(item.caseId)" />
</div>
</div>
<img v-if="!formList.length" src="@/assets/img/nodata.png" alt="" class="nodata">
</div>
<div class="content-bottom">
<div class="commonForm-text">
<span>常用表单</span>
<span class="line" />
<!-- <el-checkbox v-model="defaultChecked">默认新建今日</el-checkbox>-->
</div>
<div class="record">
<p>角膜塑形镜复查单</p>
<img :src="require('@/assets/img/add.png')" alt="" @click="addRecord()">
</div>
</div>
</div>
<div class="reviewRight">
<corneal-review :case-id="caseId" :patient-id="patientId"/>
</div>
<!-- <el-tabs v-model="activeName">-->
<!-- <el-tab-pane label="复查情况" name="first">-->
<!--&lt;!&ndash; <review-situation :patient-id="patientId" />&ndash;&gt;-->
<!-- </el-tab-pane>-->
<!-- <el-tab-pane label="角膜塑形镜复查单" name="second">-->
<!-- <corneal-review :patient-id="patientId" />-->
<!-- </el-tab-pane>-->
<!-- </el-tabs>-->
</div> </div>
</template> </template>
<script> <script>
@ -24,29 +49,148 @@ export default {
}, },
data() { data() {
return { return {
activeName: 'first'
activeName: 'first',
caseId: '',
curIndex: 0,
formList: []
} }
}, },
mounted() {
this.getFormList()
},
methods: { methods: {
async getFormList() {
const { data: res } = await this.$http.get('/hospital/notice/getAllSecDiagnosisByPid', {
params: {
patientId: this.patientId
}
})
if (res.code === 0) {
this.formList = res.data || []
if (this.formList.length) {
this.caseId = this.formList[0].caseId
}
} else {
this.$message.error(res.msg)
}
},
handleForm(index, item) {
this.curIndex = index
this.caseId = item.caseId
},
async addRecord() {
const params = {
patientId: this.patientId
}
const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateSecondDiagnosis', params)
if (res.code === 0) {
await this.getFormList()
this.$message.success('新增成功')
} else {
this.$message.error(res.msg)
}
},
deleteForm(id) {
const params = {
caseId: id
}
this.$confirmFun('你确定要删除吗?').then(async() => {
const { data: res } = await this.$http.post('/hospital/notice/delSecondDiagnosis', params)
if (res.code === 0) {
this.$message.success('删除成功')
await this.getFormList()
} else {
this.$message.error(res.msg)
}
})
}
} }
} }
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.review {
.reviewContain {
width: 100%; width: 100%;
.review-head {
height: 100%;
display: flex;
.reviewLeft{
width: 200px;
height: 100%;
margin-right: 16px;
.content-top, .content-bottom{
height: 50%;
overflow-y: auto;
}
.content-bottom {
.commonForm-text {
display: flex;
align-items: center;
font-size: 14px;
font-weight: 700;
}
.line {
border-bottom: 1px solid #e5e6eb;
flex: 1;
display: inline-block;
margin: 0 10px;
}
.record{
display: flex;
justify-content: space-between;
padding-top: 12px;
cursor: pointer;
p {
display: inline-block;
font-size: 14px;
color: rgba(0, 0, 0, 0.85);
letter-spacing: 1px;
}
img {
width: 16px;
height: 16px;
margin-top: 3px;
}
}
}
.formBox{
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
padding-bottom: 16px;
cursor: pointer;
padding: 2px 8px;
border-radius: 2px;
margin-top: 12px;
}
.active {
color: white;
background-color: #1C76FD;
} }
.review-content {
width: 100%;
height: calc( 100vh - 50px - 32px - 42px - 48px - 15px);
padding: 16px;
background: #ffffff;
overflow-x: auto;
.curFont {
color: #A6A4A4;
} }
.activeFont {
color: #D9D9D9;
}
.nodata {
width: 200px;
margin-top: 50px;
}
}
.reviewRight{
flex: 1;
//background-color: #ececf1;
}
.review-head {
display: flex;
justify-content: space-between;
padding-bottom: 16px;
}
.review-content {
width: 100%;
height: calc( 100vh - 50px - 32px - 42px - 48px - 15px);
padding: 16px;
background: #ffffff;
overflow-x: auto;
}
.vision{ .vision{
display: inline-block; display: inline-block;
width: 24px; width: 24px;

6
src/page-subspecialty/views/modules/scientificManagement/sys/project.vue

@ -288,8 +288,8 @@ export default {
data() { data() {
return { return {
mixinViewModuleOptions: { mixinViewModuleOptions: {
getDataListURL: '/project/approvalPage',
// getDataListURL: '/project/page',
// getDataListURL: '/project/approvalPage',
getDataListURL: '/project/page',
getDataListIsPage: true, getDataListIsPage: true,
deleteURL: '/project', deleteURL: '/project',
deleteIsBatch: false deleteIsBatch: false
@ -319,7 +319,7 @@ export default {
// name: 'subject' // name: 'subject'
// }) // })
// window.open(href, '_blank') // window.open(href, '_blank')
this.$router.push('subjectMgt')
// this.$router.push('subjectMgt')
}, },
handleChange(value) { handleChange(value) {
this.joinedListUserId = value this.joinedListUserId = value

Loading…
Cancel
Save