Browse Source

签字问题解决

360view
bianyaqi 2 years ago
parent
commit
35f720e151
  1. 25
      src/page-subspecialty/store/modules/sign.js
  2. 36
      src/page-subspecialty/views/modules/formList/InformedConsent.vue
  3. 106
      src/page-subspecialty/views/modules/formList/laserSurgery.vue
  4. 1
      src/page-subspecialty/views/modules/formList/mraOrder.vue

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

@ -22,7 +22,10 @@ export default {
optomSign2: '',
doctorSign2: '',
patientSign2: '',
guardianSign2: ''
guardianSign2: '',
operator: '',
informedDocSign: '',
informPatientSign: ''
},
getters: {
doctorSignImg: state => state.doctorSignImg,
@ -33,7 +36,10 @@ export default {
optomSign2: state => state.optomSign2,
doctorSign2: state => state.doctorSign2,
patientSign2: state => state.patientSign2,
guardianSign2: state => state.guardianSign2
guardianSign2: state => state.guardianSign2,
operator: state => state.operator,
informedDocSign: state => state.informedDocSign,
informPatientSign: state => state.informPatientSign
},
mutations: {
// 销毁签字笔
@ -170,6 +176,12 @@ export default {
this.commit('patientSign2', img_base64)
} else if (state.type === 8) {
this.commit('guardianSign2', img_base64)
} else if (state.type === 9) {
this.commit('operator', img_base64)
} else if (state.type === 10) {
this.commit('informedDocSign', img_base64)
} else if (state.type === 11) {
this.commit('informPatientSign', img_base64)
}
} else {
// debugPrint("saveSignToBase64 error,description:" + args[0]);
@ -204,5 +216,14 @@ export default {
guardianSign2(state, val) {
state.guardianSign2 = val
},
operator(state, val) {
state.operator = val
},
informedDocSign(state, val) {
state.informedDocSign = val
},
informPatientSign(state, val) {
state.informPatientSign = val
}
}
}

36
src/page-subspecialty/views/modules/formList/InformedConsent.vue

@ -91,7 +91,11 @@
</div>
<div class="btnBox">
<div>
<div class="flex a-c">主诊/谈话医生签名<el-input v-model="confirmData.operationSign" style="flex: 1" /></div>
<div class="flex a-c">主诊/谈话医生签名
<div @click="signClick(10)">
<img v-if="!informedDocSign" :src="require('@/assets/img/signature.png')" alt="">
<img v-else style="width: 80px;height: 40px;" :src="informedDocSign">
</div></div>
<div class="flex a-c">日期<el-input v-model="confirmData.operationDate" style="flex: 1" /></div>
</div>
</div>
@ -104,7 +108,12 @@
</div>
<div class="btnBox">
<div>
<div class="flex a-c">患者或直系亲属签名<el-input v-model="confirmData.patientSign" style="flex: 1" /></div>
<div class="flex a-c">
<div>患者或直系亲属签名</div>
<div @click="signClick(11)">
<img v-if="!informPatientSign" :src="require('@/assets/img/signature.png')" alt="">
<img v-else style="width: 80px;height: 40px;" :src="informPatientSign">
</div></div>
<div class="flex a-c">日期<el-input v-model="confirmData.patientDate" style="flex: 1" /></div>
</div>
</div>
@ -312,6 +321,20 @@ export default {
postoperative: ['暂时性眼压升高', '损伤人工晶体', '角膜内皮损伤', '虹膜炎症反应', '玻璃体前界膜破裂', '视功能损伤', '渗出性视网膜脱离', '黄斑水肿', '脉络膜脱离', '虹膜(视网膜、脉络膜)出血', '其他']
}
},
computed: {
informedDocSign: {
get() {
return this.$store.getters.informedDocSign
},
set(val) {}
},
informPatientSign: {
get() {
return this.$store.getters.informPatientSign
},
set(val) {}
}
},
watch: {
caseId(val) {
if (val) {
@ -325,8 +348,13 @@ export default {
this.confirmData.patientAge = this.patientDetail.patientAge
this.confirmData.patientGender = this.patientDetail.patientSex
this.getInfoDetail()
this.queryProject()
this.$store.commit('initPlugin')
},
methods: {
signClick(index) {
this.$store.commit('beginSign', index)
},
getInfoDetail() {
this.$http.get('/mzbl/getMzblJgshzqtysInfo', { params: {
caseId: this.caseId,
@ -342,6 +370,8 @@ export default {
const jgshAreaList = detail.jgshArea && detail.jgshArea.split('/') || []
this.handleDetail(bnzList, qgyList, ydbList, swmList, detail.coats, mzfsList, jgshList, jgshAreaList)
this.confirmData.other = detail.other || ''
this.$store.commit('informedDocSign', detail.operationSign)
this.$store.commit('informPatientSign', detail.patientSign)
})
},
//
@ -492,6 +522,8 @@ export default {
this.handleList()
this.handleNarcotism()
this.handleMode()
this.confirmData.operationSign = this.informedDocSign
this.confirmData.patientSign = this.informPatientSign
this.confirmData.jzNumber = window.localStorage.getItem('jzNumber')
this.$http.post('/mzbl/saveMzblJgshzqtys', {
caseId: this.caseId,

106
src/page-subspecialty/views/modules/formList/laserSurgery.vue

@ -65,10 +65,10 @@
</tr>
<tr>
<td>
<el-input v-model="confirmData.zlqSlOd" style="flex: 1" />
<el-input v-model="confirmData.zlqSl" style="flex: 1" />
</td>
<td>
<el-input v-model="confirmData.zlqJbfqOd" style="flex: 1" />
<el-input v-model="confirmData.zlqJbfq" style="flex: 1" />
</td>
</tr>
</tbody>
@ -86,7 +86,7 @@
次数
</td>
<td>
<el-input v-model="treatData.order" style="flex: 1" />
<el-input v-model="confirmData.jgzlCount" style="flex: 1" />
</td>
</tr>
<tr>
@ -94,7 +94,7 @@
曝光时间
</td>
<td>
<el-input v-model="treatData.vision" style="flex: 1" />
<el-input v-model="confirmData.jgzlBgsj" style="flex: 1" />
</td>
</tr>
<tr>
@ -102,7 +102,7 @@
光斑大小
</td>
<td>
<el-input v-model="treatData.flareSize" style="flex: 1" />
<el-input v-model="confirmData.jgzlGb" style="flex: 1" />
</td>
</tr>
<tr>
@ -110,7 +110,7 @@
功率
</td>
<td>
<el-input v-model="treatData.power" style="flex: 1" />
<el-input v-model="confirmData.jgzlGl" style="flex: 1" />
</td>
</tr>
<tr>
@ -118,29 +118,29 @@
点数
</td>
<td>
<el-input v-model="treatData.count" style="flex: 1" />
<el-input v-model="confirmData.jgzlDs" style="flex: 1" />
</td>
</tr>
</tbody>
</table>
<div class="descImg" @click="editImg()">
<div>示意图</div>
<img v-if="treatData.imgSrc" :src="treatData.imgSrc">
<img v-if="confirmData.jgzlSyt" :src="confirmData.jgzlSyt">
</div>
</div>
<div class="flex a-c">
<div class="flex a-c item">
<div class="label_width">操作人:</div>
<div @click="signClick(9)">
<img v-if="!guardianSign2" :src="require('@/assets/img/signature.png')" alt="">
<img v-else style="width: 80px;height: 40px;" :src="guardianSign2">
<img v-if="!operator" :src="require('@/assets/img/signature.png')" alt="">
<img v-else style="width: 80px;height: 40px;" :src="operator">
</div>
<!-- <el-input v-model="confirmData.operator" style="flex: 1" />-->
</div>
<div class="flex a-c item">
<div class="label_width">操作时间:</div>
<el-date-picker
v-model="treatData.date"
v-model="confirmData.operateDate"
style="flex: 1"
type="date"
value-format="yyyy-MM-dd"
@ -190,16 +190,17 @@ export default {
idList: [],
eyeType: '',
//
zlqSlOd: '',
zlqJbfqOd: '',
//
jgzlCountOd1: '',
jgzlDsOd1: '',
jgzlGbOd1: '',
jgzlGlOd1: '',
jgzlSlOd1: '',
operator: '',
operationDate: ''
zlqSl: '',
zlqJbfq: '',
operationDate: '',
operateSign: '',
operateDate: '',
jgzlCount: '',
jgzlBgsj: '',
jgzlGb: '',
jgzlGl: '',
jgzlDs: '',
jgzlSyt: ''
},
//
options: [{
@ -208,26 +209,15 @@ export default {
}, {
value: 'OS',
label: 'OS'
}],
treatData: {
date: '',
order: '',
vision: '',
flareSize: '',
power: '',
count: '',
imgSrc: ''
}
}]
}
},
computed: {
guardianSign2: {
operator: {
get() {
return this.$store.getters.guardianSign2
return this.$store.getters.operator
},
set(val) {
}
set(val) {}
}
},
watch: {
@ -246,18 +236,47 @@ export default {
this.confirmData.patientAddress = this.patientDetail.patientAddress
this.confirmData.patientPhone = this.patientDetail.patientPhone
this.getConfirmDetail()
this.queryProject()
this.$store.commit('initPlugin')
},
methods: {
signClick(index) {
console.log(index)
this.$store.commit('beginSign', index)
},
editImg() {
this.$refs.imgEditorRef.init()
},
// id
async queryProject() {
const project = window.localStorage.getItem('projectItem') ? JSON.parse(window.localStorage.getItem('projectItem')) : []
const { data: res } = await this.$http.get(
'/patient/getZlItemDict',
{
params: {
caseName: '眼科激光手术治疗'
}
}
)
if (res.code === 0) {
const data = res.data || []
const list = []
if (data.length) {
for (let i = 0; i < data.length; i++) {
for (let j = 0; j < project.length; j++) {
if (data[i].itemId === project[j].porjectCode) {
list.push(project[j].id)
}
}
}
this.confirmData.idList = list
}
} else {
this.$message.error(res.msg)
}
},
fullImgBack(val) {
if (val) {
this.treatData.imgSrc = val
this.confirmData.jgzlSyt = val
}
},
getConfirmDetail() {
@ -265,14 +284,8 @@ export default {
caseId: this.caseId
}}).then(data => {
const detail = data.data.data
this.confirmData.diagnostic = detail.diagnostic || ''
//
this.confirmData.zlqSlOd = detail.zlqSlOd || ''
this.confirmData.zlqJbfqOd = detail.zlqJbfqOd || ''
this.confirmData.zlqSytOd = detail.zlqSytOd || ''
this.confirmData.zlqSlOs = detail.zlqSlOs || ''
this.confirmData.zlqJbfqOs = detail.zlqJbfqOs || ''
this.confirmData.zlqSytOs = detail.zlqSytOs || ''
this.confirmData = { ...detail }
this.$store.commit('operator', detail.operateSign)
})
},
//
@ -282,6 +295,7 @@ export default {
handleSaveTable() {
this.confirmData.jzNumber = window.localStorage.getItem('jzNumber')
this.handleConfirmData()
this.confirmData.operateSign = this.operator
this.$http.post('/mzbl/saveMzblJgshzl', {
caseId: this.caseId,
...this.confirmData

1
src/page-subspecialty/views/modules/formList/mraOrder.vue

@ -229,7 +229,6 @@ export default {
}
},
created() {
console.log(this.patientDetail)
this.origin = JSON.parse(JSON.stringify(this.formData))
//
this.formData.patientName = this.patientDetail.patientName

Loading…
Cancel
Save