9 changed files with 419 additions and 4 deletions
			
			
		| After Width: | Height: | Size: 541 B | 
| After Width: | Height: | Size: 541 B | 
| After Width: | Height: | Size: 841 B | 
| @ -0,0 +1,400 @@ | |||
| <template> | |||
|   <div id="operation-record" style=" background: #fff; padding: 10px 20px 50px 20px;page-break-after:always"> | |||
|     <div class="btnBox_top"> | |||
|       <div v-if="!onlyRead && isPlatform"> | |||
|         <el-button v-print="print" size="small" @click="handlePrint">打印</el-button> | |||
|         <template v-if="isCreator"> | |||
|           <el-button type="primary" size="small" @click="handleSaveTable">保存</el-button> | |||
|           <el-button type="danger" size="small" @click="formDelete">删除</el-button> | |||
|         </template> | |||
|       </div> | |||
|       <div style="margin: 10px 0;text-align: left;color: #409EFF"> | |||
|         <div> | |||
|           操作者:{{ creator.doctorName }} | |||
|         </div> | |||
|         <div> | |||
|           工号:{{ creator.doctorCode }} | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|     <div id="treatProcess" style="width: 840px;padding-right: 8px;text-align: left;line-height: 28px"> | |||
|       <div v-if="!isDev" class="flex j-c"> | |||
|         <img width="450" src="@/assets/img/xianganlogo.png"> | |||
|       </div> | |||
|       <hr v-if="!isDev"> | |||
|       <p style="color:#000000;font-size:32px;margin:0 0 30px 0;text-align:center;"> | |||
|         三面镜/眼部激光治疗流程 | |||
|       </p> | |||
|       <!--患者信息--> | |||
|       <div class="flex"> | |||
|         <div class="flex a-c item">姓名:<el-input v-model="confirmData.patientName" style="flex: 1" placeholder="" /></div> | |||
|         <div class="flex a-c item">登记号:<el-input v-model="confirmData.patientId" style="flex: 1" placeholder="" /></div> | |||
|         <div class="flex a-c item">时间: | |||
|           <el-date-picker | |||
|             v-model="confirmData.orderDate" | |||
|             style="width: 120px;flex: 1" | |||
|             type="date" | |||
|             value-format="yyyy-MM-dd" | |||
|           /></div> | |||
|         <div class="flex a-c item">对接医师: | |||
|           <el-select | |||
|             v-model="confirmData.djDoctorId" | |||
|             allow-create | |||
|             filterable | |||
|             style="flex: 1" | |||
|             placeholder="" | |||
|             clearable | |||
|           > | |||
|             <el-option | |||
|               v-for="item in doctorList" | |||
|               :key="item.id" | |||
|               :label="item.realName" | |||
|               :value="item.id" | |||
|             /> | |||
|           </el-select> | |||
|         </div> | |||
|       </div> | |||
|       <div class="flex j-b" style="padding: 10px 0 "> | |||
|         <div class="secondTitle" style="padding-right: 40px;text-align: center"> | |||
|           <div style="padding: 10px 0">导诊台</div> | |||
|           <img src="@/assets/img/arrow_down1.jpg"> | |||
|         </div> | |||
|         <div class="flex1" style="line-height: 40px"> | |||
|           <div class="flex"> | |||
|             <span>眼压:OD:</span><el-input v-model="confirmData.yyOd" style="width: 120px" />mmHg | |||
|             OS:<el-input v-model="confirmData.yyOs" style="width: 120px" />mmHg | |||
|           </div> | |||
|           <div> | |||
|             复方托吡卡胺滴眼液在12号房间领药。左氧氟沙星滴眼液、卡波姆滴眼液等,请到一楼药房领取。 | |||
|             <span style="font-weight: bold">检查治疗当天请携带以上药品。</span> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div class="secondTitle" style="padding: 10px 0"> | |||
|         7号房间找护士报道 | |||
|       </div> | |||
|       <div class="flex"> | |||
|         <div style="width: 130px;text-align: center;padding-right:40px "> | |||
|           <img src="@/assets/img/arrown_down2.jpg"> | |||
|         </div> | |||
|         <div style="line-height: 40px"> | |||
|           <div> | |||
|             血压: <el-input v-model="confirmData.xya" style="width: 120px" />mmHg | |||
|             脉搏:<el-input v-model="confirmData.mb" style="width: 120px" />次/分 | |||
|             血氧:<el-input v-model="confirmData.xyang" style="width: 120px" />% | |||
|           </div> | |||
|           <div>眼别: | |||
|             <el-radio-group v-model="confirmData.eyeType"> | |||
|               <el-radio label="双眼0U" /> | |||
|               <el-radio label="右眼OD" /> | |||
|               <el-radio label="左眼OS" /> | |||
|             </el-radio-group> | |||
|           </div> | |||
|           <div class="flex"> | |||
|             <div> | |||
|               <el-radio v-model="confirmData.smjYbjgzl" label="三面镜" />/ | |||
|               <el-radio v-model="confirmData.smjYbjgzl" label="眼部激光治疗">眼部激光治疗:</el-radio> | |||
|             </div> | |||
|             <div> | |||
|               <div> | |||
|                 <el-radio-group v-model="confirmData.ykWyz"> | |||
|                   <el-radio label="已开" /> | |||
|                   <el-radio label="无医嘱" /> | |||
|                 </el-radio-group> | |||
|               </div> | |||
|               <div> | |||
|                 <el-radio-group v-model="confirmData.zyMz"> | |||
|                   <el-radio label="住院" /> | |||
|                   <el-radio label="门诊" /> | |||
|                 </el-radio-group> | |||
|               </div> | |||
|             </div> | |||
|           </div> | |||
|           <div> | |||
|             自发荧光:(12号房间) | |||
|           </div> | |||
|           <div> | |||
|             <el-checkbox-group v-model="zfyg"> | |||
|               <el-checkbox label="医生需开医嘱" /> | |||
|               <el-checkbox label="需拍照" /> | |||
|               <el-checkbox label="己完成" /> | |||
|               <el-checkbox label="无需" /> | |||
|             </el-checkbox-group> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div class="secondTitle" style="padding: 10px 0"> | |||
|         7号房间门口散瞳表麻处 | |||
|       </div> | |||
|       <div class="flex"> | |||
|         <div style="width: 130px;text-align: center;padding-right:40px "> | |||
|           <img src="@/assets/img/arrow_down3.jpg"> | |||
|         </div> | |||
|         <div style="line-height: 40px"> | |||
|           <div> | |||
|             <el-radio v-model="confirmData.st" label="缩瞳"><span style="color: red">缩瞳</span></el-radio> / | |||
|             <el-radio v-model="confirmData.st" label="散瞳">散瞳:</el-radio> | |||
|             <el-checkbox v-model="confirmData.stFinish">已完成</el-checkbox>(每5分钟点一次,连续点五次) | |||
|           </div> | |||
|           <div>表麻: | |||
|             <el-checkbox v-model="confirmData.bmFinish">已完成</el-checkbox>(每5分钟点一次,连续点五次) | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <div class="secondTitle" style="padding: 10px 0"> | |||
|         请到15号房间门口稍等 | |||
|       </div> | |||
|       <div> | |||
|         散瞳后当天勿直视强光、勿驾车、骑车、勿进在危险和精细作业。 | |||
|       </div> | |||
|       <div> | |||
|         眼科导诊台电话;2889610。 | |||
|       </div> | |||
|       <div class="flex"> | |||
|         备注:<el-input v-model="confirmData.remark" class="flex1" :autosize="{ minRows: 1, maxRows: 3}" type="textarea" /> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| 
 | |||
| <script> | |||
| 
 | |||
| export default { | |||
|   name: 'TreatProcess', | |||
|   props: { | |||
|     isDev: { | |||
|       type: Boolean | |||
|     }, | |||
|     onlyRead: { | |||
|       type: Boolean, | |||
|       default: false | |||
|     }, | |||
|     isPlatform: { | |||
|       type: Boolean, | |||
|       default: true | |||
|     }, | |||
|     patientDetail: { | |||
|       type: Object | |||
|     }, | |||
|     caseId: { | |||
|       type: String, | |||
|       default: '' | |||
|     }, | |||
|     isCreator: { | |||
|       type: Boolean, | |||
|       default: true | |||
|     }, | |||
|     // 操作者 | |||
|     creator: { | |||
|       type: Object | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       printHidden: true, | |||
|       print: { | |||
|         id: 'treatProcess', | |||
|         closeCallback: () => { | |||
|           this.printHidden = true | |||
|         } | |||
|       }, | |||
|       doctorList: [], | |||
|       zfyg: [], | |||
|       confirmData: { | |||
|         patientAge: '', | |||
|         orderDate: '', | |||
|         patientGender: '', | |||
|         patientName: '', | |||
|         patientId: '', | |||
|         djDoctor: '', // 对接医师 | |||
|         djDoctorId: '', // 对接医师 | |||
|         yyOd: '', // 眼压 | |||
|         yyOs: '', | |||
|         xya: '', // 血压 | |||
|         mb: '', // 脉搏 | |||
|         xyang: '', // 血氧 | |||
|         eyeType: '', // 眼别 | |||
|         smjYbjgzl: '', // 项目 | |||
|         ykWyz: '', // 医嘱 | |||
|         zyMz: '', | |||
|         zfyg: '', // 自发荧光 | |||
|         st: '', // 散瞳表麻 | |||
|         stFinish: false, | |||
|         bmFinish: false, | |||
|         remark: '' | |||
|       } | |||
|     } | |||
|   }, | |||
|   watch: { | |||
|     caseId(val) { | |||
|       if (val) { | |||
|         this.getInfoDetail() | |||
|       } | |||
|     } | |||
|   }, | |||
|   created() { | |||
|     this.getDoctorList() | |||
|     this.getInfoDetail() | |||
|   }, | |||
|   methods: { | |||
|     // 获取医师列表 | |||
|     getDoctorList() { | |||
|       this.$http.get('/sys/user').then(res => { | |||
|         this.doctorList = res.data.data | |||
|       }) | |||
|     }, | |||
|     getInfoDetail() { | |||
|       this.$http.get('/jcjg/getSmjjcjl', { params: { | |||
|         caseId: this.caseId, | |||
|         patientId: this.patientDetail.patientId | |||
|       }}).then(data => { | |||
|         const detail = data.data.data | |||
|         this.confirmData = detail | |||
|         this.zfyg = this.confirmData.zfyg ? this.confirmData.zfyg.split('/') : [] | |||
|         if (!detail.jzNumber) { | |||
|           this.setData() | |||
|         } | |||
|       }) | |||
|     }, | |||
|     setData() { | |||
|       this.confirmData.patientName = this.patientDetail.patientName | |||
|       this.confirmData.patientAge = this.patientDetail.patientAge | |||
|       this.confirmData.patientGender = this.patientDetail.patientSex | |||
|       this.confirmData.patientId = this.patientDetail.patientId | |||
|     }, | |||
|     handlePrint() { | |||
|       this.printHidden = false | |||
|       if (!this.isCreator) { | |||
|         return | |||
|       } | |||
|       this.handleSaveTable() | |||
|     }, | |||
|     // 保存 | |||
|     handleSaveTable() { | |||
|       this.confirmData.jzNumber = window.sessionStorage.getItem('jzNumber') | |||
|       this.confirmData.zfyg = this.zfyg.join('/') | |||
|       this.$http.post('/jcjg/saveSmjjcjl', { | |||
|         ...this.confirmData, | |||
|         caseId: this.caseId | |||
|       }).then(() => { | |||
|         this.$emit('handleSaveTable') | |||
|       }) | |||
|     }, | |||
|     // 删除 | |||
|     formDelete() { | |||
|       this.$confirmFun('确定删除吗?').then(() => { | |||
|         this.$http.post('/jcjg/delSmjjcjl', { | |||
|           id: this.caseId | |||
|         }).then(() => { | |||
|           this.$message.success('删除成功') | |||
|           this.$emit('formDelete', 'del') | |||
|         }) | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| 
 | |||
| <style lang="scss" scoped> | |||
| #operation-record{ | |||
|   height: 100%; | |||
|   overflow: auto; | |||
|   background: #fff; | |||
|   font-size: 16px; | |||
| } | |||
| #treatProcess{ | |||
|   font-size: 18px; | |||
| } | |||
| ::v-deep .el-icon-arrow-up{ | |||
|   display: none; | |||
| } | |||
| .secondTitle{ | |||
|   font-size: 30px; | |||
|   font-weight: bold; | |||
| } | |||
| .flex{ | |||
|   display: flex; | |||
| } | |||
| .flex1{ | |||
|   flex: 1; | |||
| } | |||
| .a-c{ | |||
|   align-items: center; | |||
| } | |||
| .j-c{ | |||
|   justify-content: center; | |||
| } | |||
| .flex-end{ | |||
|   justify-content: flex-end; | |||
| } | |||
| .caseItem{ | |||
|   width: 200px; | |||
|   padding-right: 10px; | |||
| } | |||
| .caseDetail{ | |||
|   padding: 0 20px; | |||
|   display: flex; | |||
|   font-size: 14px; | |||
|   line-height: 24px; | |||
| } | |||
| .item{ | |||
|   &:not(:last-child){ | |||
|     margin-right: 15px; | |||
|   } | |||
| } | |||
| tr td{ | |||
|   border: 1px solid #000; | |||
|   text-align: center; | |||
| } | |||
| table{ | |||
|   width: 100%; | |||
| } | |||
| .img_show{ | |||
|   height: 240px; | |||
| } | |||
| .img2_show{ | |||
|   width: 450px; | |||
|   height: 300px; | |||
| } | |||
| .btnBox_top{ | |||
|   position: fixed; | |||
|   z-index: 999; | |||
|   right: 90px; | |||
| } | |||
| ::v-deep .el-input__inner { | |||
|   border: none; | |||
|   height: 26px !important; | |||
|   line-height: 26px !important; | |||
|   font-size: 18px; | |||
|   text-align: center; | |||
| } | |||
| 
 | |||
| ::v-deep .el-input__inner { | |||
|   border-bottom: 1px solid #ccc; | |||
|   border-radius: 0; | |||
|   padding: 0; | |||
| } | |||
| ::v-deep .el-input__prefix { | |||
|   display: none; | |||
| } | |||
| ::v-deep .el-checkbox__label{ | |||
|   font-size: 18px; | |||
|   color: #000; | |||
| } | |||
| ::v-deep .el-radio__label{ | |||
|   font-size: 18px; | |||
|   color: #000; | |||
| } | |||
| ::v-deep .el-checkbox{ | |||
|   margin-right: 15px; | |||
| } | |||
| ::v-deep .el-radio{ | |||
|   margin:0 10px; | |||
| } | |||
| ::v-deep .el-textarea__inner{ | |||
|   border: none; | |||
|   border-bottom: 1px solid #8e8c8c; | |||
|   border-radius: 0; | |||
|   font-size: 18px | |||
| } | |||
| </style> | |||
					Loading…
					
					
				
		Reference in new issue