6 changed files with 1150 additions and 80 deletions
			
			
		| @ -0,0 +1,286 @@ | |||
| <template> | |||
|   <div class="lacrimalBox"> | |||
|     <div v-if="!onlyRead && isPlatform" class="btnBox_top"> | |||
|       <el-button v-print="'#lacrimalOperation'" size="small" @click="handlePrint">打印</el-button> | |||
|       <el-button type="primary" size="small" @click="handleSaveTable">保存</el-button> | |||
|       <el-button type="danger" size="small" @click="formDelete">删除</el-button> | |||
|     </div> | |||
|     <div id="lacrimalOperation" style="width: 840px;padding-right: 8px"> | |||
|       <div class="flex j-c"> | |||
|         <img width="450" src="@/assets/img/xianganlogo.png"> | |||
|       </div> | |||
|       <hr> | |||
|       <p style="color:#000000;font-size:32px;margin:0 0 30px 0;text-align:center;"> | |||
|         小儿泪道冲洗知情同意书 | |||
|       </p> | |||
|       <!--患者信息--> | |||
|       <div class="form_top"> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">诊断:</span><el-input v-model="confirmData.diagnose" style="width: 700px" /> | |||
|         </div> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">治疗名称:</span><el-input v-model="confirmData.treatName" style="width: 300px" /> | |||
|           <div class="flex"> | |||
|             (<div class="checkBox" @click="confirmData.isPrint='OD'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OD'">右眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isPrint='OS'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OS'">左眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isPrint='OU'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OU'">双眼 | |||
|             </div>) | |||
|           </div> | |||
|         </div> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">麻醉方式:</span><el-input v-model="confirmData.anesthesiaMode" style="width: 700px" /> | |||
|         </div> | |||
|       </div> | |||
|       <div class="form_content"> | |||
|         <div v-for="(item,index) in content" :key="index" style="margin: 5px 0"> | |||
|           <span style="font-weight: bold">{{ item.title }}</span> | |||
|           <div v-for="(text,idx) in item.detail" :key="`${index}_${idx}`" class="form_detail"> | |||
|             {{ text }} | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin-top: 15px"> | |||
|         <div class="flex a-c"> | |||
|           <div style="margin-right: 296px;"> | |||
|             <span style="word-break: keep-all">患儿监护人签名:</span> | |||
|             <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|               <img v-if="!conPatientSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-right: 12px"> | |||
|               <img v-else style="width: 80px;height: 40px;" :src="conPatientSign"> | |||
|             </span> | |||
|           </div> | |||
|           <div> | |||
|             签名日期:<el-date-picker | |||
|               v-model="confirmData.operateDate" | |||
|               type="date" | |||
|               format="yyyy年MM月dd日" | |||
|               value-format="yyyy-MM-dd" | |||
|             /> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin: 5px 0;text-align: left"> | |||
|         <span style="font-weight: bold;">医生陈述:</span> | |||
|         <div class="form_detail"> | |||
|           我已经告知患者将要进行的检查/治疗、此次检查/治疗及检查/治疗后可能发生的风险,可能存在的其它检查/治疗方法并且解答了患者关于此次检查/治疗的相关问题。 | |||
|         </div> | |||
|       </div> | |||
|       <div class="flex a-c"> | |||
|         <div style="margin-right: 296px;"> | |||
|           <span style="word-break: keep-all">医生签名:</span> | |||
|           <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|             <img style="width: 80px;height: 40px;" :src="confirmData.operator"> | |||
|           </span> | |||
|         </div> | |||
|         <div> | |||
|           签名日期:<el-date-picker | |||
|             v-model="confirmData.operate2Date" | |||
|             type="date" | |||
|             format="yyyy年MM月dd日" | |||
|             value-format="yyyy-MM-dd" | |||
|           /> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| 
 | |||
| <script> | |||
| export default { | |||
|   name: 'Lacrimal', | |||
|   props: { | |||
|     onlyRead: { | |||
|       type: Boolean, | |||
|       default: false | |||
|     }, | |||
|     isPlatform: { | |||
|       type: Boolean, | |||
|       default: true | |||
|     }, | |||
|     patientDetail: { | |||
|       type: Object | |||
|     }, | |||
|     caseId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       content: [ | |||
|         { | |||
|           title: '尊敬患儿家长:', | |||
|           detail: [ | |||
|             '您好!根据患儿目前病情需要进行泪道冲洗检查,在实施上述检查/治疗过程中及治疗后可能会发生的并发症及风险主要有:', | |||
|             '1.泪道冲洗过程中患儿无法配合检查,强烈挣扎可能造成呛咳,引发紫绀、缺氧、呼吸窒息、吸入性肺炎等,甚至危及生命;强烈挣扎可能损伤角膜、结膜、引起皮下瘀血、结膜炎等。', | |||
|             '2.泪道冲洗过程中发生出血。', | |||
|             '3.泪道冲洗后发生感染。', | |||
|             '4.泪道冲洗后形成假道;或需要多次冲洗,甚至需要行泪道探查术。', | |||
|             '5.医护人员团队将尽全力按操作规范实施上述检查/治疗,并且一旦发生并发症或意外情况,将从维护患儿及家属利益的角度出发积极采取措施,以努力降低并发症或意外情况导致的对患儿的损害后果。', | |||
|             '6.您有权选择同意或不同意接受上述检查/治疗,但是如果拒绝接受上述检查/治疗,您将面临以下风险:病情加重进展、溢泪、泪囊炎、眶蜂窝织炎 等。', | |||
|             '7.根据患者目前的病情和我院目前开展的医疗技术,您还可以选择其他替代诊疗方案  保守药物治疗,症状无法缓解,引起泪道感染等并发症。', | |||
|             '在向患方说明各治疗方案并告知利弊后,患方基于当前病情需要,经慎重考虑,自愿选择 泪道冲洗  。' | |||
|           ] | |||
|         }, | |||
|         { | |||
|           title: '患者知情选择', | |||
|           detail: [ | |||
|             '我的医生已经告知我将要进行的检查/治疗、此次检查/治疗及检查/治疗后可能发生的风险,可能存在的其它检查/治疗方法,并且解答了我关于此次检查/治疗的相关问题,以上内容我已逐条认真阅读并理解行小儿泪道冲洗的相关风险及可能并发症,同 意进行此项检查/治疗。' | |||
|           ] | |||
|         } | |||
|       ], | |||
|       print: { | |||
|         id: 'mraFunc', | |||
|         closeCallback: () => { | |||
|           this.printHidden = true | |||
|         } | |||
|       }, | |||
|       printHidden: true, | |||
|       formId: '', | |||
|       confirmData: { | |||
|         diagnose: '', | |||
|         isPrint: '', | |||
|         treatName: '泪道冲洗', | |||
|         anesthesiaMode: '表面麻醉', | |||
|         patientSign: '', | |||
|         operator: '', | |||
|         operateDate: '', | |||
|         operate2Date: '' | |||
|       } | |||
|     } | |||
|   }, | |||
|   computed: { | |||
|     conPatientSign() { | |||
|       return this.$store.getters.conPatientSign | |||
|     } | |||
|   }, | |||
|   watch: { | |||
|     caseId(val) { | |||
|       if (val) { | |||
|         this.getformList() | |||
|       } | |||
|     } | |||
|   }, | |||
|   created() { | |||
|     this.getformList() | |||
|     this.$store.commit('initPlugin') | |||
|   }, | |||
|   methods: { | |||
|     signClick(index) { | |||
|       this.$store.commit('beginSign', index) | |||
|     }, | |||
|     setData() { | |||
|       const date = this.$moment().format('YYYY-MM-DD') | |||
|       this.confirmData.operateDate = date | |||
|       this.confirmData.operate2Date = date | |||
|       this.confirmData.operate3Date = date | |||
|       const userData = JSON.parse(window.sessionStorage.getItem('qg-userData')) | |||
|       this.confirmData.operator = userData.signImgBase | |||
|     }, | |||
|     async getformList() { | |||
|       const { data: res } = await this.$http.get('/case/getCaseById', { | |||
|         params: { | |||
|           id: this.caseId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         if (res.data) { | |||
|           if (res.data.jsonText) { | |||
|             this.confirmData = JSON.parse(res.data.jsonText) | |||
|           } else { | |||
|             this.setData() | |||
|           } | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handlePrint() { | |||
|       this.printHidden = false | |||
|       this.handleSaveTable() | |||
|     }, | |||
|     // 保存 | |||
|     async handleSaveTable() { | |||
|       this.confirmData.patientSign = this.conPatientSign | |||
|       const params = { | |||
|         id: this.caseId, | |||
|         flag: '8', | |||
|         jsonText: JSON.stringify(this.confirmData), | |||
|         name: '小儿泪道冲洗知情同意书', | |||
|         patientId: this.patientDetail.patientId, | |||
|         platform: 2 | |||
|       } | |||
|       const { data: res } = await this.$http.post('/case/update', params) | |||
|       if (res.code === 0) { | |||
|         this.$message.success('保存成功') | |||
|         await this.getformList() | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     // 删除 | |||
|     formDelete() { | |||
|       this.$confirmFun('确定删除吗?').then(() => { | |||
|         this.$http.post('/case/delete', { | |||
|           id: this.caseId | |||
|         }).then(() => { | |||
|           this.$message.success('删除成功') | |||
|           this.$emit('formDelete', 'del') | |||
|         }) | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| 
 | |||
| <style lang="scss" scoped> | |||
| .flex{ | |||
|   display: flex; | |||
| } | |||
| .a-c{ | |||
|   align-items: center; | |||
| } | |||
| .j-c{ | |||
|   justify-content: center; | |||
| } | |||
| .j-b{ | |||
|   justify-content: space-between; | |||
| } | |||
| .lacrimalBox{ | |||
|   background: #fff; | |||
|   padding: 10px 20px 50px 20px; | |||
|   page-break-after:always; | |||
|   height: 100%; | |||
|   overflow: auto; | |||
| } | |||
| .btnBox_top{ | |||
|   position: fixed; | |||
|   z-index: 999; | |||
|   right: 90px; | |||
| } | |||
| .form_top{ | |||
|   margin-bottom: 15px; | |||
| } | |||
| .form_content{ | |||
|   text-align: left; | |||
| } | |||
| .form_detail{ | |||
|   text-indent: 2rem; | |||
|   margin: 3px 0; | |||
| } | |||
| ::v-deep .el-input__inner{ | |||
|   border: none; | |||
|   border-bottom: 1px solid #cccccc; | |||
|   border-radius: 0; | |||
|   font-size: 16px; | |||
|   height: 26px; | |||
|   text-align: center; | |||
| } | |||
| ::v-deep .el-input__prefix{ | |||
|   display: none; | |||
| } | |||
| </style> | |||
| @ -0,0 +1,331 @@ | |||
| <template> | |||
|   <div class="cornealBox"> | |||
|     <div v-if="!onlyRead && isPlatform" class="btnBox_top"> | |||
|       <el-button v-print="'#cornealOperation'" size="small" @click="handlePrint">打印</el-button> | |||
|       <el-button type="primary" size="small" @click="handleSaveTable">保存</el-button> | |||
|       <el-button type="danger" size="small" @click="formDelete">删除</el-button> | |||
|     </div> | |||
|     <div id="cornealOperation" style="width: 840px;padding-right: 8px"> | |||
|       <div class="flex j-c"> | |||
|         <img width="450" src="@/assets/img/xianganlogo.png"> | |||
|       </div> | |||
|       <hr> | |||
|       <p style="color:#000000;font-size:32px;margin:0 0 30px 0;text-align:center;"> | |||
|         角膜异物剔除术知情同意书 | |||
|       </p> | |||
|       <!--患者信息--> | |||
|       <div class="form_top"> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">诊断:</span><el-input v-model="confirmData.diagnose" style="width: 400px" /> | |||
|           <div class="flex"> | |||
|             (<div class="checkBox" @click="confirmData.isPrint='OD'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OD'">右眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isPrint='OS'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OS'">左眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isPrint='OU'"> | |||
|               <input type="checkbox" :checked="confirmData.isPrint==='OU'">双眼 | |||
|             </div>) | |||
|           </div> | |||
|         </div> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">治疗名称:</span><el-input v-model="confirmData.treatName" style="width: 400px" /> | |||
|           <div class="flex"> | |||
|             (<div class="checkBox" @click="confirmData.isTreat='OD'"> | |||
|               <input type="checkbox" :checked="confirmData.isTreat==='OD'">右眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isTreat='OS'"> | |||
|               <input type="checkbox" :checked="confirmData.isTreat==='OS'">左眼 | |||
|             </div> | |||
|             <div style="margin-left: 30px" class="checkBox" @click="confirmData.isTreat='OU'"> | |||
|               <input type="checkbox" :checked="confirmData.isTreat==='OU'">双眼 | |||
|             </div>) | |||
|           </div> | |||
|         </div> | |||
|         <div class="flex a-c"> | |||
|           <span style="font-weight: bold">麻醉方式:</span><el-input v-model="confirmData.anesthesiaMode" style="width: 700px" /> | |||
|         </div> | |||
|       </div> | |||
|       <div class="form_content"> | |||
|         <div v-for="(item,index) in content" :key="index" style="margin: 5px 0"> | |||
|           <span style="font-weight: bold">{{ item.title }}</span> | |||
|           <div v-for="(text,idx) in item.detail" :key="`${index}_${idx}`" class="form_detail"> | |||
|             {{ text }} | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin-top: 15px"> | |||
|         <div class="flex a-c"> | |||
|           <div style="margin-right: 296px;"> | |||
|             <span style="word-break: keep-all">患者签名:</span> | |||
|             <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|               <img v-if="!conPatientSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-right: 12px"> | |||
|               <img v-else style="width: 80px;height: 40px;" :src="conPatientSign"> | |||
|             </span> | |||
|           </div> | |||
|           <div> | |||
|             签名日期:<el-date-picker | |||
|               v-model="confirmData.operateDate" | |||
|               type="date" | |||
|               format="yyyy年MM月dd日" | |||
|               value-format="yyyy-MM-dd" | |||
|             /> | |||
|           </div> | |||
|         </div> | |||
|         <div class="flex a-c"> | |||
|           <div> | |||
|             <span>患者授权亲属签名:</span> | |||
|             <span v-if="printHidden" style="margin-left:10px" @click="signClick(18)"> | |||
|               <img v-if="!conKinSign" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 80px;height: 40px;" :src="conKinSign"> | |||
|             </span> | |||
|             <span style="margin-left: 15px">与患者关系<el-input v-model="confirmData.relation" style="width: 150px" /></span> | |||
|           </div> | |||
|           <div> | |||
|             签名日期:<el-date-picker | |||
|               v-model="confirmData.operate2Date" | |||
|               type="date" | |||
|               format="yyyy年MM月dd日" | |||
|               value-format="yyyy-MM-dd" | |||
|             /> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin: 5px 0;text-align: left"> | |||
|         <span style="font-weight: bold;">医生陈述:</span> | |||
|         <div class="form_detail"> | |||
|           我已经告知患者将要进行的治疗、此次治疗及治疗后可能发生的风险,可能存在的其它治疗方法并且解答了患者关于此次治疗的相关问题。 | |||
|         </div> | |||
|       </div> | |||
|       <div class="flex a-c"> | |||
|         <div style="margin-right: 296px;"> | |||
|           <span style="word-break: keep-all">医生签名:</span> | |||
|           <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|             <!--            <img v-if="!conPatientSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-right: 12px">--> | |||
|             <img style="width: 80px;height: 40px;" :src="confirmData.operator"> | |||
|           </span> | |||
|         </div> | |||
|         <div> | |||
|           签名日期:<el-date-picker | |||
|             v-model="confirmData.operate3Date" | |||
|             type="date" | |||
|             format="yyyy年MM月dd日" | |||
|             value-format="yyyy-MM-dd" | |||
|           /> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| 
 | |||
| <script> | |||
| export default { | |||
|   name: 'ConjunctivalOperation', | |||
|   props: { | |||
|     onlyRead: { | |||
|       type: Boolean, | |||
|       default: false | |||
|     }, | |||
|     isPlatform: { | |||
|       type: Boolean, | |||
|       default: true | |||
|     }, | |||
|     patientDetail: { | |||
|       type: Object | |||
|     }, | |||
|     caseId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       content: [ | |||
|         { | |||
|           title: '尊敬的患者、患者家属、授权委托人:', | |||
|           detail: [ | |||
|             '您好!根据患者目前病情需要行“角膜异物剔除术”,在实施该治疗疗过程中及治疗后可能会发生的并发症及风险主要有:', | |||
|             '1.麻醉意外,极少数人对麻醉药物过敏,引起药物反应。', | |||
|             '2.某些异物无法一次剔除干净,需分次剔除治疗;部分粉末状异物可能会永久残留。', | |||
|             '3.治疗过程中若配合欠佳,可能造成角膜、结膜等邻近组织的损伤。', | |||
|             '4.治疗过程出血,治疗后发生感染。', | |||
|             '5.异物剔除后异物感、畏光、流泪、疼痛加重可能。', | |||
|             '6.治疗后角膜疤痕形成而引起视力下降可能。', | |||
|             '7.异物带入致病菌引起角膜感染(真菌或细菌),可能造成角膜溃疡、角膜穿孔等,需进一步治疗。', | |||
|             '8.异物剔除后需遵医嘱按时使用滴眼液或眼膏,注意眼部卫生,勿揉眼,一周内避免不洁水进入眼中,遵医嘱复查。', | |||
|             '9.医护人员团队将尽全力按操作规范实施上述治疗,并且一旦发生并发症或意外情况,将从维护患者及家属利益的角度出发积极采取措施,以努力降低并发症或意外情况导致的对患者的损害后果。', | |||
|             '10.您有权选择同意或不同意接受上述治疗,但是如果拒绝接受上述治疗,您将面临以下风险:病情加重进展、角膜溃疡、角膜穿孔、视力丧失  等。', | |||
|             '11.根据患者目前的病情和我院目前开展的医疗技术,您还可以选择其他替代诊疗方案 保守治疗,继续局部用药,症状无法缓解,甚至进一步发展,最终导致角膜穿孔、视力下降甚至丧失等并发症,需进一步行手术治疗。', | |||
|             '在向患方说明各治疗方案并告知利弊后,患方基于当前病情需要,经慎重考虑,自愿选择 角膜异物剔除术  治疗。' | |||
|           ] | |||
|         }, | |||
|         { | |||
|           title: '患者知情选择', | |||
|           detail: [ | |||
|             '我的医生已经告知我将要进行的治疗、此次治疗及治疗后可能发生的风险,可能存在的其它治疗方法,并且解答了我关于此次治疗的相关问题,以上内容我已逐条认真阅读并理解行角膜异物剔除术的相关风险及可能并发症,同意进行此项治疗。' | |||
|           ] | |||
|         } | |||
|       ], | |||
|       print: { | |||
|         id: 'mraFunc', | |||
|         closeCallback: () => { | |||
|           this.printHidden = true | |||
|         } | |||
|       }, | |||
|       printHidden: true, | |||
|       formId: '', | |||
|       sourceData: {}, | |||
|       confirmData: { | |||
|         relation: '', | |||
|         isPrint: '', | |||
|         isTreat: '', | |||
|         diagnose: '角膜异物', | |||
|         treatName: '角膜异物剔除术', | |||
|         anesthesiaMode: '表面麻醉', | |||
|         patientSign: '', | |||
|         familySign: '', | |||
|         operator: '', | |||
|         operateDate: '', | |||
|         operate2Date: '', | |||
|         operate3Date: '' | |||
|       } | |||
|     } | |||
|   }, | |||
|   computed: { | |||
|     conPatientSign() { | |||
|       return this.$store.getters.conPatientSign | |||
|     }, | |||
|     conKinSign() { | |||
|       return this.$store.getters.conKinSign | |||
|     } | |||
|   }, | |||
|   watch: { | |||
|     caseId(val) { | |||
|       if (val) { | |||
|         this.getformList() | |||
|       } | |||
|     } | |||
|   }, | |||
|   created() { | |||
|     this.sourceData = JSON.parse(JSON.stringify(this.confirmData)) | |||
|     this.getformList() | |||
|     this.$store.commit('initPlugin') | |||
|   }, | |||
|   methods: { | |||
|     signClick(index) { | |||
|       this.$store.commit('beginSign', index) | |||
|     }, | |||
|     setData() { | |||
|       const date = this.$moment().format('YYYY-MM-DD') | |||
|       this.confirmData.operateDate = date | |||
|       this.confirmData.operate2Date = date | |||
|       this.confirmData.operate3Date = date | |||
|       const userData = JSON.parse(window.sessionStorage.getItem('qg-userData')) | |||
|       this.confirmData.operator = userData.signImgBase | |||
|     }, | |||
|     async getformList() { | |||
|       const { data: res } = await this.$http.get('/case/getCaseById', { | |||
|         params: { | |||
|           id: this.caseId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         if (res.data) { | |||
|           if (res.data.jsonText) { | |||
|             this.confirmData = JSON.parse(res.data.jsonText) | |||
|           } else { | |||
|             this.confirmData = JSON.parse(JSON.stringify(this.sourceData)) | |||
|             this.setData() | |||
|           } | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handlePrint() { | |||
|       this.printHidden = false | |||
|       this.handleSaveTable() | |||
|     }, | |||
|     // 保存 | |||
|     async handleSaveTable() { | |||
|       this.confirmData.patientSign = this.conPatientSign | |||
|       this.confirmData.familySign = this.conKinSign | |||
|       const params = { | |||
|         id: this.caseId, | |||
|         flag: '8', | |||
|         jsonText: JSON.stringify(this.confirmData), | |||
|         name: '角膜异物剔除术知情同意书', | |||
|         patientId: this.patientDetail.patientId, | |||
|         platform: 2 | |||
|       } | |||
|       const { data: res } = await this.$http.post('/case/update', params) | |||
|       if (res.code === 0) { | |||
|         this.$message.success('保存成功') | |||
|         await this.getformList() | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     // 删除 | |||
|     formDelete() { | |||
|       this.$confirmFun('确定删除吗?').then(() => { | |||
|         this.$http.post('/case/delete', { | |||
|           id: this.caseId | |||
|         }).then(() => { | |||
|           this.$message.success('删除成功') | |||
|           this.$emit('formDelete', 'del') | |||
|         }) | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| 
 | |||
| <style lang="scss" scoped> | |||
| .flex{ | |||
|   display: flex; | |||
| } | |||
| .a-c{ | |||
|   align-items: center; | |||
| } | |||
| .j-c{ | |||
|   justify-content: center; | |||
| } | |||
| .j-b{ | |||
|   justify-content: space-between; | |||
| } | |||
| .cornealBox{ | |||
|   background: #fff; | |||
|   padding: 10px 20px 50px 20px; | |||
|   page-break-after:always; | |||
|   height: 100%; | |||
|   overflow: auto; | |||
| } | |||
| .btnBox_top{ | |||
|   position: fixed; | |||
|   z-index: 999; | |||
|   right: 90px; | |||
| } | |||
| .form_top{ | |||
|   margin-bottom: 15px; | |||
| } | |||
| .form_content{ | |||
|   text-align: left; | |||
| } | |||
| .form_detail{ | |||
|   text-indent: 2rem; | |||
|   margin: 3px 0; | |||
| } | |||
| ::v-deep .el-input__inner{ | |||
|   border: none; | |||
|   border-bottom: 1px solid #cccccc; | |||
|   border-radius: 0; | |||
|   font-size: 16px; | |||
|   height: 26px; | |||
|   text-align: center; | |||
| } | |||
| ::v-deep .el-input__prefix{ | |||
|   display: none; | |||
| } | |||
| </style> | |||
| @ -0,0 +1,323 @@ | |||
| <template> | |||
|   <div class="punctureBox"> | |||
|     <div v-if="!onlyRead && isPlatform" class="btnBox_top"> | |||
|       <el-button v-print="'#punctureOperation'" size="small" @click="handlePrint">打印</el-button> | |||
|       <el-button type="primary" size="small" @click="handleSaveTable">保存</el-button> | |||
|       <el-button type="danger" size="small" @click="formDelete">删除</el-button> | |||
|     </div> | |||
|     <div id="punctureOperation" style="width: 840px;padding-right: 8px"> | |||
|       <div class="flex j-c"> | |||
|         <img width="450" src="@/assets/img/xianganlogo.png"> | |||
|       </div> | |||
|       <hr> | |||
|       <p style="color:#000000;font-size:32px;margin:0 0 30px 0;text-align:center;"> | |||
|         前房穿刺知情同意书 | |||
|       </p> | |||
|       <div class="form_content"> | |||
|         <div v-for="(item,index) in content" :key="index" style="margin: 5px 0"> | |||
|           <span style="font-weight: bold">{{ item.title }}</span> | |||
|           <div v-if="item.flag === 1"> | |||
|             <span style="margin-left: 30px">医生已告知我患有</span><el-input v-model="confirmData.illness" style="width: 180px" />,需要在<el-input v-model="confirmData.narcotize" style="width: 120px" />麻醉下进行<el-input v-model="confirmData.operation" style="width: 120px" />手术。 | |||
|           </div> | |||
|           <div v-for="(text,idx) in item.detail" :key="`${index}_${idx}`" class="form_detail"> | |||
|             {{ text }} | |||
|           </div> | |||
|           <div v-if="item.flag === 2" style="padding-left: 30px"> | |||
|             在向患方说明各治疗方案并告知利弊后,患方基于当前病情需要,经慎重考虑,自愿选择<el-input v-model="confirmData.illMode" style="width: 180px" />手术。 | |||
|           </div> | |||
|           <div v-if="item.flag === 3" style="padding-left: 30px"> | |||
|             <el-input type="textarea" :rows="3" v-model="confirmData.risk" style="width: 600px" /> | |||
|            <p>一旦发生上述风险和意外,医生会采取积极应对措施。</p> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin-top: 15px"> | |||
|         <div class="flex a-c"> | |||
|           <div style="margin-right: 296px;"> | |||
|             <span style="word-break: keep-all">患者签名:</span> | |||
|             <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|               <img v-if="!conPatientSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-right: 12px"> | |||
|               <img v-else style="width: 80px;height: 40px;" :src="conPatientSign"> | |||
|             </span> | |||
|           </div> | |||
|           <div> | |||
|             签名日期:<el-date-picker | |||
|               v-model="confirmData.operateDate" | |||
|               type="date" | |||
|               format="yyyy年MM月dd日" | |||
|               value-format="yyyy-MM-dd" | |||
|             /> | |||
|           </div> | |||
|         </div> | |||
|         <p style="text-align: left">如果患者无法签署知情同意书,请其授权的亲属在此签名:</p> | |||
|         <div class="flex a-c"> | |||
|           <div> | |||
|             <span>患者授权亲属签名:</span> | |||
|             <span v-if="printHidden" style="margin-left:10px" @click="signClick(18)"> | |||
|               <img v-if="!conKinSign" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 80px;height: 40px;" :src="conKinSign"> | |||
|             </span> | |||
|             <span style="margin-left: 15px">与患者关系<el-input v-model="confirmData.relation" style="width: 150px" /></span> | |||
|           </div> | |||
|           <div> | |||
|             签名日期:<el-date-picker | |||
|               v-model="confirmData.operate2Date" | |||
|               type="date" | |||
|               format="yyyy年MM月dd日" | |||
|               value-format="yyyy-MM-dd" | |||
|             /> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div style="margin: 5px 0;text-align: left"> | |||
|         <span style="font-weight: bold;">医生陈述:</span> | |||
|         <div class="form_detail"> | |||
|           我已经告知患者将要进行的治疗、此次治疗及治疗后可能发生的风险,可能存在的其它治疗方法并且解答了患者关于此次治疗的相关问题。 | |||
|         </div> | |||
|       </div> | |||
|       <div class="flex a-c"> | |||
|         <div style="margin-right: 296px;"> | |||
|           <span style="word-break: keep-all">医生签名:</span> | |||
|           <span v-if="printHidden" style="margin-left:10px" @click="signClick(17)"> | |||
|             <!--            <img v-if="!conPatientSign" :src="require('@/assets/img/signature.png')" alt="" style="margin-right: 12px">--> | |||
|             <img style="width: 80px;height: 40px;" :src="confirmData.operator"> | |||
|           </span> | |||
|         </div> | |||
|         <div> | |||
|           签名日期:<el-date-picker | |||
|             v-model="confirmData.operate3Date" | |||
|             type="date" | |||
|             format="yyyy年MM月dd日" | |||
|             value-format="yyyy-MM-dd" | |||
|           /> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| 
 | |||
| <script> | |||
| export default { | |||
|   name: 'Puncture', | |||
|   props: { | |||
|     onlyRead: { | |||
|       type: Boolean, | |||
|       default: false | |||
|     }, | |||
|     isPlatform: { | |||
|       type: Boolean, | |||
|       default: true | |||
|     }, | |||
|     patientDetail: { | |||
|       type: Object | |||
|     }, | |||
|     caseId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       content: [ | |||
|         { | |||
|           title: '疾病诊断和治疗建议:', | |||
|           flag: 1, | |||
|           detail: [] | |||
|         }, | |||
|         { | |||
|           title: '手术潜在风险和对策:', | |||
|           flag: 2, | |||
|           detail: [ | |||
|             '医生告知我上述治疗方案可能发生的一些风险,有些不常见的风险可能没有在此列出,具体的手术式根据不同病人的情况有所不同,医生告诉我可与我的医生讨论有关我手术的具体内容,如果我有特殊的问题可与我的医生讨论。', | |||
|             ' 一、我理解任何手术、麻醉都存在风险;如果我患有高血压、心脏病、糖尿病、肝肾功能不全、静脉血栓等疾病或者有吸烟史,以上这些风险可能会加大,或者在术中或术后出现相关的病情加重或心脑血管意外,甚至死亡。', | |||
|             ' 二、我理解任何所用药物都可能产生副作用,包括轻度的恶心、皮疹等症状到严重的过敏性休克,甚至危及生命。', | |||
|             ' 三、我理解此手术可能发生的风险及医生的对策:', | |||
|             '     1.麻醉意外', | |||
|             '     2.损伤角膜,晶体、眼内炎', | |||
|             '     3.前房出血', | |||
|             '     4.多次穿刺、冲洗,低眼压、伤口漏、感染', | |||
|             '     5.视力下降', | |||
|             ' 四、患者手术的医护人员团队将尽全力按操作规范实施上述手术,并且一旦发生并发症或意外情况,将从维护患者利益的角度出发积极采取措施,以努力降低并发症或意外情况导致的对患者的损害后果。', | |||
|             ' 五、您有权选择同意或不同意接受上述治疗,但是如果拒绝接受上述治疗,您将面临以下风险:视力丧失、高眼压、前房炎症加重。', | |||
|             ' 六、根据患者目前的病情和我院目前开展的医疗技术,您还可以选择其他替代诊疗方案', | |||
|             '     1.药物治疗:无法进一步降低眼压。', | |||
|             '     2.观察:视力丧失、高眼压、前房炎症加重。' | |||
|           ] | |||
|         }, | |||
|         { | |||
|           title: '特殊风险或主要高危因素:', | |||
|           flag: 3, | |||
|           detail: [ | |||
|             '我理解根据我个人的病情,我可能出现未包括在上述所交待并发症以外的风险:' | |||
|           ] | |||
|         }, | |||
|         { | |||
|           title: '患者知情选择', | |||
|           detail: [ | |||
|             '我的医生已经告知我将要进行的治疗方式、此次治疗及治疗后可能发生的并发症和风险、可能存在的其它治疗方法并且解答了我关于此次治疗的相关问题。', | |||
|             '我同意在治疗中医生可以根据我的病情对预定的治疗方式做出调整。', | |||
|             '我理解我的治疗需要多位医生共同进行。', | |||
|             '我并未得到治疗百分之百成功的许诺。', | |||
|             '我授权医师对治疗切除的病变器官、组织或标本进行处置,包括病理学检查、细胞学检查和医疗废物处理等。', | |||
|             '我 (同意/不同意)接受上述治疗/手术,并授权医师在实施过程中遇有异常情况时,为保障患者的生命安全对其实施必要的救治措施。今签字为证。' | |||
|           ] | |||
|         } | |||
|       ], | |||
|       print: { | |||
|         id: 'mraFunc', | |||
|         closeCallback: () => { | |||
|           this.printHidden = true | |||
|         } | |||
|       }, | |||
|       printHidden: true, | |||
|       formId: '', | |||
|       confirmData: { | |||
|         illness: '', | |||
|         narcotize: '', | |||
|         operation: '', | |||
|         illMode: '', | |||
|         risk: '', | |||
|         patientSign: '', | |||
|         familySign: '', | |||
|         operator: '', | |||
|         operateDate: '', | |||
|         operate2Date: '', | |||
|         operate3Date: '' | |||
|       } | |||
|     } | |||
|   }, | |||
|   computed: { | |||
|     conPatientSign() { | |||
|       return this.$store.getters.conPatientSign | |||
|     }, | |||
|     conKinSign() { | |||
|       return this.$store.getters.conKinSign | |||
|     } | |||
|   }, | |||
|   watch: { | |||
|     caseId(val) { | |||
|       if (val) { | |||
|         this.getformList() | |||
|       } | |||
|     } | |||
|   }, | |||
|   created() { | |||
|     this.getformList() | |||
|     this.$store.commit('initPlugin') | |||
|   }, | |||
|   methods: { | |||
|     signClick(index) { | |||
|       this.$store.commit('beginSign', index) | |||
|     }, | |||
|     setData() { | |||
|       const date = this.$moment().format('YYYY-MM-DD') | |||
|       this.confirmData.operateDate = date | |||
|       this.confirmData.operate2Date = date | |||
|       this.confirmData.operate3Date = date | |||
|       const userData = JSON.parse(window.sessionStorage.getItem('qg-userData')) | |||
|       this.confirmData.operator = userData.signImgBase | |||
|     }, | |||
|     async getformList() { | |||
|       const { data: res } = await this.$http.get('/case/getCaseById', { | |||
|         params: { | |||
|           id: this.caseId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         if (res.data) { | |||
|           if (res.data.jsonText) { | |||
|             this.confirmData = JSON.parse(res.data.jsonText) | |||
|           } else { | |||
|             this.setData() | |||
|           } | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handlePrint() { | |||
|       this.printHidden = false | |||
|       this.handleSaveTable() | |||
|     }, | |||
|     // 保存 | |||
|     async handleSaveTable() { | |||
|       this.confirmData.patientSign = this.conPatientSign | |||
|       this.confirmData.familySign = this.conKinSign | |||
|       const params = { | |||
|         id: this.caseId, | |||
|         flag: '8', | |||
|         jsonText: JSON.stringify(this.confirmData), | |||
|         name: '前房穿刺知情同意书', | |||
|         patientId: this.patientDetail.patientId, | |||
|         platform: 2 | |||
|       } | |||
|       const { data: res } = await this.$http.post('/case/update', params) | |||
|       if (res.code === 0) { | |||
|         this.$message.success('保存成功') | |||
|         await this.getformList() | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     // 删除 | |||
|     formDelete() { | |||
|       this.$confirmFun('确定删除吗?').then(() => { | |||
|         this.$http.post('/case/delete', { | |||
|           id: this.caseId | |||
|         }).then(() => { | |||
|           this.$message.success('删除成功') | |||
|           this.$emit('formDelete', 'del') | |||
|         }) | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| 
 | |||
| <style lang="scss" scoped> | |||
| .flex{ | |||
|   display: flex; | |||
| } | |||
| .a-c{ | |||
|   align-items: center; | |||
| } | |||
| .j-c{ | |||
|   justify-content: center; | |||
| } | |||
| .j-b{ | |||
|   justify-content: space-between; | |||
| } | |||
| .punctureBox{ | |||
|   background: #fff; | |||
|   padding: 10px 20px 50px 20px; | |||
|   page-break-after:always; | |||
|   height: 100%; | |||
|   overflow: auto; | |||
| } | |||
| .btnBox_top{ | |||
|   position: fixed; | |||
|   z-index: 999; | |||
|   right: 90px; | |||
| } | |||
| .form_top{ | |||
|   margin-bottom: 15px; | |||
| } | |||
| .form_content{ | |||
|   text-align: left; | |||
| } | |||
| .form_detail{ | |||
|   text-indent: 2rem; | |||
|   margin: 3px 0; | |||
| } | |||
| ::v-deep .el-input__inner{ | |||
|   border: none; | |||
|   border-bottom: 1px solid #cccccc; | |||
|   border-radius: 0; | |||
|   font-size: 16px; | |||
|   height: 26px; | |||
|   text-align: center; | |||
| } | |||
| ::v-deep .el-input__prefix{ | |||
|   display: none; | |||
| } | |||
| </style> | |||
					Loading…
					
					
				
		Reference in new issue