15 changed files with 702 additions and 616 deletions
			
			
		| @ -0,0 +1,209 @@ | |||
| <template> | |||
|   <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.id)" /> | |||
|           </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"> | |||
|       <firstVisit v-if="formList.length" :patient-id="patientId" :id="id"></firstVisit> | |||
| <!--      <corneal-review v-if="formList.length" :case-id="caseId" :patient-id="patientId" />--> | |||
|     </div> | |||
|     <!--    <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 :patient-id="patientId" />--> | |||
|     <!--      </el-tab-pane>--> | |||
|     <!--    </el-tabs>--> | |||
|   </div> | |||
| </template> | |||
| <script> | |||
| import ReviewSituation from '@/page-subspecialty/views/modules/optometryManagement/seeDoctor/reviewSituation.vue' | |||
| import CornealReview from '@/page-subspecialty/views/modules/optometryManagement/seeDoctor/CornealReview.vue' | |||
| import firstVisit from '@/page-subspecialty/views/modules/optometryManagement/seeDoctor/first-visit/index' | |||
| 
 | |||
| export default { | |||
|   components: { CornealReview, ReviewSituation, firstVisit }, | |||
|   props: { | |||
|     patientId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       activeName: 'first', | |||
|       id: '', | |||
|       curIndex: 0, | |||
|       formList: [] | |||
|     } | |||
|   }, | |||
|   mounted() { | |||
|     this.getFormList() | |||
|   }, | |||
|   methods: { | |||
|     async getFormList() { | |||
|       const { data: res } = await this.$http.get('/hospital/notice/getFirstDiagnosis', { | |||
|         params: { | |||
|           patientId: this.patientId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         this.formList = res.data || [] | |||
|         if (this.formList.length) { | |||
|           this.id = this.formList[0].id | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handleForm(index, item) { | |||
|       this.curIndex = index | |||
|       this.id = item.id | |||
|     }, | |||
|     async addRecord() { | |||
|       const params = { | |||
|         patientId: this.patientId | |||
|       } | |||
|       const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateFirstDiagnosis', params) | |||
|       if (res.code === 0) { | |||
|         await this.getFormList() | |||
|         this.$message.success('新增成功') | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     deleteForm(id) { | |||
|       const params = { | |||
|         id: id | |||
|       } | |||
|       this.$confirmFun('你确定要删除吗?').then(async() => { | |||
|         const { data: res } = await this.$http.post('/hospital/notice/delFirstDiagnosisById', params) | |||
|         if (res.code === 0) { | |||
|           this.$message.success('删除成功') | |||
|           await this.getFormList() | |||
|         } else { | |||
|           this.$message.error(res.msg) | |||
|         } | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| <style lang="scss" scoped> | |||
| .reviewContain { | |||
|   width: 100%; | |||
|   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; | |||
|       justify-content: space-between; | |||
|       cursor: pointer; | |||
|       padding: 2px 8px; | |||
|       border-radius: 2px; | |||
|       margin-top: 12px; | |||
|     } | |||
|     .active { | |||
|       color: white; | |||
|       background-color: #1C76FD; | |||
|     } | |||
|     .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{ | |||
|     display: inline-block; | |||
|     width: 24px; | |||
|     height: 24px; | |||
|     line-height: 24px; | |||
|     border-radius: 50%; | |||
|     text-align: center; | |||
|     color: #1E79FF; | |||
|     font-weight: 600; | |||
|     margin-right: 8px; | |||
|     background-color: #EBF6FF; | |||
|   } | |||
| } | |||
| </style> | |||
| @ -0,0 +1,200 @@ | |||
| <template> | |||
|   <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.id)" /> | |||
|           </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"> | |||
|       <noticeBook v-if="formList.length" :patient-id="patientId" :id="id"></noticeBook> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| <script> | |||
| import noticeBook from './notice-book' // 告知书 | |||
| 
 | |||
| export default { | |||
|   components: { noticeBook }, | |||
|   props: { | |||
|     patientId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       activeName: 'first', | |||
|       id: '', | |||
|       curIndex: 0, | |||
|       formList: [] | |||
|     } | |||
|   }, | |||
|   mounted() { | |||
|     this.getFormList() | |||
|   }, | |||
|   methods: { | |||
|     async getFormList() { | |||
|       const { data: res } = await this.$http.get('/hospital/notice/getNoticeSign', { | |||
|         params: { | |||
|           noticeType: 1, | |||
|           patientId: this.patientId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         this.formList = res.data || [] | |||
|         if (this.formList.length) { | |||
|           this.id = this.formList[0].id | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handleForm(index, item) { | |||
|       this.curIndex = index | |||
|       this.id = item.id | |||
|     }, | |||
|     async addRecord() { | |||
|       const params = { | |||
|         patientId: this.patientId, | |||
|         noticeType: 1 | |||
|       } | |||
|       const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateNoticeSign', params) | |||
|       if (res.code === 0) { | |||
|         await this.getFormList() | |||
|         this.$message.success('新增成功') | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     deleteForm(id) { | |||
|       const params = { | |||
|         id: id | |||
|       } | |||
|       this.$confirmFun('你确定要删除吗?').then(async() => { | |||
|         const { data: res } = await this.$http.post('/hospital/notice/delNoticeSignById', params) | |||
|         if (res.code === 0) { | |||
|           this.$message.success('删除成功') | |||
|           await this.getFormList() | |||
|         } else { | |||
|           this.$message.error(res.msg) | |||
|         } | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| <style lang="scss" scoped> | |||
| .reviewContain { | |||
|   width: 100%; | |||
|   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; | |||
|       justify-content: space-between; | |||
|       cursor: pointer; | |||
|       padding: 2px 8px; | |||
|       border-radius: 2px; | |||
|       margin-top: 12px; | |||
|     } | |||
|     .active { | |||
|       color: white; | |||
|       background-color: #1C76FD; | |||
|     } | |||
|     .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{ | |||
|     display: inline-block; | |||
|     width: 24px; | |||
|     height: 24px; | |||
|     line-height: 24px; | |||
|     border-radius: 50%; | |||
|     text-align: center; | |||
|     color: #1E79FF; | |||
|     font-weight: 600; | |||
|     margin-right: 8px; | |||
|     background-color: #EBF6FF; | |||
|   } | |||
| } | |||
| </style> | |||
| @ -0,0 +1,200 @@ | |||
| <template> | |||
|   <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.id)" /> | |||
|           </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>RGP 知情同意书</p> | |||
|           <img :src="require('@/assets/img/add.png')" alt="" @click="addRecord()"> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|     <div class="reviewRight"> | |||
|       <rgpBook v-if="formList.length" :patient-id="patientId" :id="id"></rgpBook> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| <script> | |||
| import rgpBook from './rgp-book' | |||
| 
 | |||
| export default { | |||
|   components: { rgpBook }, | |||
|   props: { | |||
|     patientId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       activeName: 'first', | |||
|       id: '', | |||
|       curIndex: 0, | |||
|       formList: [] | |||
|     } | |||
|   }, | |||
|   mounted() { | |||
|     this.getFormList() | |||
|   }, | |||
|   methods: { | |||
|     async getFormList() { | |||
|       const { data: res } = await this.$http.get('/hospital/notice/getNoticeSign', { | |||
|         params: { | |||
|           noticeType: 2, | |||
|           patientId: this.patientId | |||
|         } | |||
|       }) | |||
|       if (res.code === 0) { | |||
|         this.formList = res.data || [] | |||
|         if (this.formList.length) { | |||
|           this.id = this.formList[0].id | |||
|         } | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     handleForm(index, item) { | |||
|       this.curIndex = index | |||
|       this.id = item.id | |||
|     }, | |||
|     async addRecord() { | |||
|       const params = { | |||
|         patientId: this.patientId, | |||
|         noticeType: 2 | |||
|       } | |||
|       const { data: res } = await this.$http.post('/hospital/notice/saveOrUpdateNoticeSign', params) | |||
|       if (res.code === 0) { | |||
|         await this.getFormList() | |||
|         this.$message.success('新增成功') | |||
|       } else { | |||
|         this.$message.error(res.msg) | |||
|       } | |||
|     }, | |||
|     deleteForm(id) { | |||
|       const params = { | |||
|         id: id | |||
|       } | |||
|       this.$confirmFun('你确定要删除吗?').then(async() => { | |||
|         const { data: res } = await this.$http.post('/hospital/notice/delNoticeSignById', params) | |||
|         if (res.code === 0) { | |||
|           this.$message.success('删除成功') | |||
|           await this.getFormList() | |||
|         } else { | |||
|           this.$message.error(res.msg) | |||
|         } | |||
|       }) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| <style lang="scss" scoped> | |||
| .reviewContain { | |||
|   width: 100%; | |||
|   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; | |||
|       justify-content: space-between; | |||
|       cursor: pointer; | |||
|       padding: 2px 8px; | |||
|       border-radius: 2px; | |||
|       margin-top: 12px; | |||
|     } | |||
|     .active { | |||
|       color: white; | |||
|       background-color: #1C76FD; | |||
|     } | |||
|     .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{ | |||
|     display: inline-block; | |||
|     width: 24px; | |||
|     height: 24px; | |||
|     line-height: 24px; | |||
|     border-radius: 50%; | |||
|     text-align: center; | |||
|     color: #1E79FF; | |||
|     font-weight: 600; | |||
|     margin-right: 8px; | |||
|     background-color: #EBF6FF; | |||
|   } | |||
| } | |||
| </style> | |||
| @ -1,564 +0,0 @@ | |||
| <template> | |||
|   <div class="notice-book"> | |||
|     <!-- 告知书头部 --> | |||
|     <head-template head-left="患者告知书 "> | |||
|       <el-button type="primary" size="small" @click="saveEditNotice()">保存</el-button> | |||
|       <el-button v-print="'#noticePrint'" size="small">打印</el-button> | |||
|     </head-template> | |||
|     <div id="noticePrint" class="notice-content"> | |||
|       <div v-if="isNew === 3" class="notice-box"> | |||
|         <div id="notice-three" class="notice_tip" style="page-break-after:always"> | |||
|           <h3 style="text-align: center;margin-bottom: 32px;"> | |||
|             角膜塑形镜配戴告知书 | |||
|             <p style="font-size: 13px">(此页告知书一式两份:一份存档,一份给患者)</p> | |||
|           </h3> | |||
|           <p style="color: red">角膜塑形镜(OK镜)一夜戴型高透氧性硬性隐形眼镜,属于易碎品。</p> | |||
|           <p style="font-weight: bold">角膜塑形镜的适应症:</p> | |||
|           <p>①年龄8周岁以上。近视量可矫正范围在-0.25DS~-6.00DS,以低于-4.00DS为理想矫治范围。</p> | |||
|           <p>②角膜散光小于1.50D,顺规性散光者相对合适。</p> | |||
|           <p>③角膜曲率在40.00~46.00D。角膜曲率过平(<40.0)或过陡(>46.0)效果可能不理想,需有经验医师酌情考虑处方。</p> | |||
|           <p> | |||
|             1.验配单位所提供产品为国家食品药品监督管理局注册登记的合格产品。 | |||
|           </p> | |||
|           <p> | |||
|             2.验配单位负责近视矫正过程中的配戴眼数据采集分析、镜片订制、戴镜后跟踪评估及疑难咨询等工作。 | |||
|           </p> | |||
|           <p> | |||
|             3.验配单位保证以高度责任心尽力达到最优近视矫治效果,但由于个体差异及其他多种因素的影响,验配单位无法对角膜塑形镜的效果做出任何保证性承诺。 | |||
|           </p> | |||
|           <p> | |||
|             4.OK镜属于隐形眼镜,它与其它隐形眼镜一样存在各种感染的可能,如遇严重感染,可能会影响眼睛健康。必须规范使用,按时随访。 | |||
|           </p> | |||
|           <p> | |||
|             5.OK镜对近视的加深有相对延缓作用,但并不能完全阻止近视的发展,也不可能根治近视。 | |||
|           </p> | |||
|           <p> | |||
|             6.<span style="color: red">关于0K镜破碎的优惠条款:</span>配戴者需将<span style="color: red">原包装及完整的碎片(镜片上要有完整编码)</span>交还验配单位后方可享受以下优惠:自镜片交付日算起<span style="font-weight: bold">30</span>天内,可享受<span style="color: red">免费</span>换片一次<span style="color: red">(已享受免费换片的新片,如再次破碎,无法再免费换片);</span><span style="font-weight: bold">31天~90天内</span>破碎,<span style="color: red">按原价的半价</span>补片。如镜片丢失、碎片无完整编码、粉碎性损坏、无法交还原镜片及包装、碎片缺少部分大于1/4整片等,验配单位不提供免费换片。<span style="color: red">患者收到取镜通知,30天内未取镜,则视为自动放弃该项优惠。</span> | |||
|           </p> | |||
|           <p> | |||
|             7.自镜片交付日算起90天内,按要求复查的配戴者,如果出现适配不理想的情况,经验配单位鉴定需调整镜片设计参数重新订片的,配戴者无需承担二次配镜的镜片购买费用;如经验配单位鉴定无法消除且必须终止矫正的,在配戴者退回完好无损的镜片和原包装后,双方共同承担损失,验配机构返还配戴者镜片费用<span style="font-weight: bold">百分之五十</span>的款项; | |||
|           </p> | |||
|           <p> | |||
|             8.配戴者在<span style="color: red">订单已发出或取镜后30天内</span>要求退片的,在配戴者交回完好的原镜片及原包装,将退还配戴者镜片费用<span style="color: red">百分之五十</span>的款项;超过30天,一律视为配戴者已主动放弃退片权利,验配单位有权不受理退片申请。 | |||
|           </p> | |||
|           <p> | |||
|             9.体检的配戴者镜片一旦订片概不受理退片。 | |||
|           </p> | |||
|           <p> | |||
|             10.验配单位对配戴角膜塑形镜的人员进行试戴评估,以便评估配戴者是否适合配戴角膜塑形镜。但是,鉴于个体条件的差异性、使用习惯、卫生条件以及其他外部环境的影响,上述评估效果仅在试戴时确定配戴者是否适合配戴,并非确定配戴以后任何时期是否适合配戴的有效依据,因此,验配单位无法保证正式配戴过程中不出现排异性、不适配或其他不良反应。 | |||
|           </p><p> | |||
|             11.镜片常规使用寿命为<span style="color: red">1年~1.5年。</span>夜间常规配戴时间<span style="color: red">7-10小时,不超过12小时。</span> | |||
|           </p> | |||
|           <p> | |||
|             12.常规复查时间:<span style="color: red">复查都要挂号,到1楼或2楼眼视光中心</span> 进行复查:<span style="color: red">到片取镜时学习摘戴方法(不用挂号),戴镜后的第1天早上复查(起床不摘镜)、第1周、第1个月必须按期复查,若无特殊情况,以后每3个月至少复查一次;</span>严格遵守医嘱,按时复查,这是保障角膜塑形术疗效及规避相关问题的前提;否则,验配单位具有免责权利。 | |||
|           </p> | |||
|           <p> | |||
|             13.配戴初期出现轻微的眼刺激症状或异物感,一过性的结膜充血或轻微的视物叠影,晨起后分泌物稍增多,摘镜后眼睛轻度干涩等均为正常现象,随着矫正期的延续会逐渐缓解或消失。<span style="color: red">戴镜期间如果感冒、发烧,或出现持续性眼红、眼痛、畏光、流泪等症状,必须先停戴,然后及时到医院就诊,</span>并遵循医师处理。 | |||
|           </p> | |||
|           <p> | |||
|             14.为保证矫正的安全有效及镜片的使用寿命,须使用和镜片性能相配套的护理产品和附件,若擅自使用未经验配单位认可的物品接触镜片导致的意外事件或不良反应,由配戴者自行负责。 | |||
|           </p> | |||
|           <p> | |||
|             15.矫正期间,若发现发生与配戴角膜塑形镜无关的眼疾或其他疾病,并因此导致终止矫正,配戴者应自己承担全部责任。 | |||
|           </p> | |||
|           <div style="margin-top: 30px"> | |||
|             <div style="position: relative"> | |||
|               <span style="margin-right: 8px;vertical-align: middle;">是否已阅读<span style="font-weight: bold">此页告知书</span>,并同意配戴<span style="font-weight: bold">角膜塑形镜(OK镜)</span></span> | |||
|               <span v-if="isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('1')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin: 0 16px 0 24px;vertical-align: middle">是</span> | |||
|               <span v-if="!isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('2')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin-left: 24px;vertical-align: middle">否</span> | |||
|             </div> | |||
|           </div> | |||
|           <div style="width: 100%;display: flex;justify-content: space-around;margin-top: 35px;"> | |||
|             <div @click="signClick(1)"> | |||
|               <span>验光师:</span> | |||
|               <img v-if="optomFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="doctorSign"> | |||
|             </div> | |||
|             <div> | |||
|               时间: <span v-if="doctorSignDate" style="padding-top: 8px;display: inline-block">{{ doctorSignDate ? doctorSignDate.substring(0,16) : '' }}</span> | |||
|             </div> | |||
|             <div @click="signClick(6)"> | |||
|               <span>配戴者/监护人:</span> | |||
|               <img v-if="wearerOrGuardianFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="wearerOrGuardianSign"> | |||
|             </div> | |||
|             <div> | |||
|               时间: <span v-if="doctorSignDate" style="padding-top: 8px;display: inline-block">{{ wearerOrGuardianSignDate ? wearerOrGuardianSignDate.substring(0,16) : '' }}</span> | |||
|             </div> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <!--      最老版本--> | |||
|       <div v-if="isNew === 2" class="notice-box"> | |||
|         <div id="notice-one" class="notice_tip" style="page-break-after:always"> | |||
|           <h3 style="text-align: center;margin-bottom: 32px;"> | |||
|             宁波市眼科医院角膜塑形术双方责任约定 | |||
|             <p style="font-size: 13px">(此页责任约定一式两份:一份存档,一份给患者)</p> | |||
|           </h3> | |||
|           <p style="color: red">角膜塑形镜(OK镜)一夜戴型高透氧性硬性隐形眼镜,属于易碎品。</p> | |||
|           <p>角膜塑形镜的适应症:</p> | |||
|           <p>①年龄8周岁以上。近视量可矫正范围在-0.25DS~-6.00DS,以低于-4.00DS为理想矫治范围。</p> | |||
|           <p>②角膜散光小于1.50D,顺规性散光者相对合适。</p> | |||
|           <p>③角膜曲率在40.00~46.00D。角膜曲率过平(<40.0)或过陡(>46.0)效果可能不理想,需有经验医师酌情考虑处方。</p> | |||
|           <p> | |||
|             1.验配单位所提供产品为国家食品药品监督管理局注册登记的合格产品。 | |||
|           </p> | |||
|           <p> | |||
|             2.验配单位负责近视矫正过程中的配戴眼数据采集分析、镜片订制、戴镜后跟踪评估、镜片检测及疑难咨询等工作。 | |||
|           </p> | |||
|           <p> | |||
|             3.验配单位保证以高度责任心尽力达到最优近视娇治效果,但由于个体差异及其他多种因素的影响,验配单位无法对角膜塑形术的效果做出任何保证性承诺。 | |||
|           </p> | |||
|           <p> | |||
|             4.0K镜属于隐形眼镜,它与其它隐形眼镜一样存在各种感染的可能,如遇严重感染,可能会影响眼睛健康。 需严格按照医师的指导规范使用,按时随访。 | |||
|           </p> | |||
|           <p> | |||
|             5.0K镜对近视的加深有相对延缓作用,但并不能完全阻止近视的发展,也不可能根治近视。 | |||
|           </p> | |||
|           <p> | |||
|             6.<span style="color: red">关于0K镜破碎的优惠条款:</span>配戴者需将原包装及完整的碎片(镜片上要有完整编码)交还验配单位后方可享受以下优惠:自镜片交付日算起30天内,可享受<span style="color: red">免费</span>换片一次<span style="color: red">(已享受免费换片的新片,如再次破碎,无法再免费换片);</span>31天~90天内破碎,半价补片。如镜片丢失、出现粉碎性损坏、无法交还原镜片及包装、碎片缺少部分大于1/4整片等,验配单位不提供免费换片。<span style="color: red">患者收到取镜通知,30天内未取镜,则视为自动放弃该项优惠。</span> | |||
|           </p> | |||
|           <p> | |||
|             7.自镜片交付日算起90天内,按要求复查的配戴者,如果出现适配不理想的情况,经验配单位鉴定需调整镜片设计参数重新订片的,配戴者无需承担二次配镜的镜片购买费用;如经验配单位鉴定无法消除且必须终止矫正的,在配戴者退回完好无损的镜片和原包装后,双方共同承担损失,验配机构返还配戴者镜片费用百分之五十的款项; | |||
|           </p> | |||
|           <p> | |||
|             8.除本责任书约定条件外,配戴者取镜后30天内要求退片终止矫正的,在配戴者交回完好的原德片及原包装将退还配戴者镜片费用百分之五十的款项,退款后本责任书自动终止;超过30天,一律视为配戴者已主动放弃退片权利,验配单位有权不受理退片申请。 | |||
|           </p> | |||
|           <p> | |||
|             9.体检的配戴者镜片一旦订出概不受理退片。 | |||
|           </p> | |||
|           <p> | |||
|             10.验配单位对配戴角膜塑形镜的人员进行试戴评估,以便评估配藏者是否适合配戴角膜塑形镜。但是,鉴于个体条件的差异性、使用习惯、卫生条件以及其他外部环境的影响,上述评估效果仅在试戴时确定配戴者是否适合配戴,并非确定配戴以后任何时期是否适合配戴的有效依据,因此,验配单位无法保证正式配戴过程中不出现排异性、不适配或其他不良反应。 | |||
|           </p> | |||
|           <p> | |||
|             11.镜片使用寿命为<span style="color: red">1年~1.5年。</span>夜间常规配戴时间<span style="color: red">7-10小时,不超过12小时。</span> | |||
|           </p> | |||
|           <p> | |||
|             12.常规复查时间:<span style="color: red">复查都要挂号,到2楼眼视光中心</span> 进行复查:<span style="color: red">到片取镜时学习摘藏方法(不用挂号),戴镜后的第1天早上复查(晨起不摘镜)、第1周、第1个月必须按期复查,若无特殊情况,以后每3个月至少复查一次;</span>严格遵守医嘱,按时复查,这是保障角膜塑形镜疗效及规避相关问题的前提;否则,验配单位具有免责权利。 | |||
|           </p> | |||
|           <p> | |||
|             13.配戴初期出现轻微的眼刺激症状或异物感,一过性的结膜充血或轻微的视物叠影,晨起后分泌物稍增多,摘镜后眼睛轻度干涩等均为正常现象,随着矫正期的延续会逐渐级解或消失。<span style="color: red">戴镜期间如果感冒、发烧,或出现持续性眼红、眼痛、畏光、流泪等症状,必须先停戴,然后及时到医院就诊,</span>并遵循医师处理。 | |||
|           </p> | |||
|           <p> | |||
|             14.为保证娇正的安全有效及镜片的使用寿命,须使用和镜片性能相配套的护理产品和附件,若擅自使用未经验配单位认可的物品接触镜片导致的意外事件或不良反应,由配戴者自行负责。 | |||
|           </p> | |||
|           <p> | |||
|             15.矫正期间,若发现发生与配戴角膜塑形镜无关的眼疾或其他疾病,并因此导致终止娇正,配戴者应自己承担全部责任。 | |||
|           </p> | |||
|           <div style="width: 100%;display: flex;justify-content: space-around;margin-top: 35px;"> | |||
|             <div @click="signClick(1)"> | |||
|               <span>医生/验光师:</span> | |||
|               <img v-if="optomFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="doctorSign"> | |||
|             </div> | |||
|             <div @click="signClick(2)"> | |||
|               <span>配戴者:</span> | |||
|               <img v-if="wearerFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="patientSign"> | |||
|             </div> | |||
|             <div @click="signClick(3)"> | |||
|               <span>监护人:</span> | |||
|               <img v-if="guardianFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="guardianSign"> | |||
|             </div> | |||
|           </div> | |||
|         </div> | |||
|         <div id="notice-two" class="notice_tip"> | |||
|           <h3 style="text-align: center;margin-bottom: 32px;"> | |||
|             宁波市眼科医院角膜塑形术配镜用户表暨知情同意书 | |||
|           </h3> | |||
|           <p style="font-weight: bold"> | |||
|             角膜塑形镜一夜戴型高遁氧性硬性隐形眼镜,延缓青少年近视进展 | |||
|           </p> | |||
|           <p> | |||
|             近视发生发展的原因是复杂的,主要有遗传因素与大最后天环境因素,因此,青少年近视进展是世界性难题。目前仍缺乏完全控制青少年近视进展的有效手段。 | |||
|           </p> | |||
|           <p> | |||
|             角膜塑形术对近视的加深有相对延缓作用,但并不能完全阻止近视的发展,也不可能根治近视。戴镜后依然要注意用眼卫生习惯,多去户外运动。因个体差异,戴镜后依然会呈现不同程度的近视进展。停戴后逐渐呈现原近视程度加上在配戴期间可能已缓慢加深的近视度数。 | |||
|           </p> | |||
|           <p> | |||
|             最适合对象:中低度近视无或伴低度散光的具备一定认知能力与主动性的青少年。 | |||
|           </p> | |||
|           <p> | |||
|             配戴随访期:第1天(旱上不摘镜)、第1周、第1月,之后每隔3个月。清洁护理良好情况下,1年~1.5年半更换镜片。 | |||
|           </p> | |||
|           <p> | |||
|             家长要重视监管青少年配戴、护理等操作,并且严格定期复查! | |||
|           </p> | |||
|           <p style="margin-top: 32px;"> | |||
|             是否已阅读《角膜塑形术双方责任约定》, | |||
|             <span>并同意接受</span> | |||
|             <span style="font-size: 18px;">角膜塑形镜(OK镜)</span> | |||
|           </p> | |||
|           <div style="width: 100%;display: flex;justify-content: space-around;margin-top: 35px;"> | |||
|             <div style="position: relative"> | |||
|               <span style="margin-right: 8px;vertical-align: middle;">矫治</span> | |||
|               <span v-if="isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('1')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin: 0 16px 0 24px;vertical-align: middle">是</span> | |||
|               <span v-if="!isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('2')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin-left: 24px;vertical-align: middle">否</span> | |||
|             </div> | |||
|             <div @click="signClick(4)"> | |||
|               <span style="font-size: 18px;">阅读者</span> | |||
|               <span>签名:</span> | |||
|               <img v-if="readFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="readerSign"> | |||
|             </div> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|       <!--      第二版本--> | |||
|       <div v-if="isNew === 1" class="notice-box"> | |||
|         <div id="notice-three" class="notice_tip" style="page-break-after:always"> | |||
|           <h3 style="text-align: center;margin-bottom: 32px;"> | |||
|             角膜塑形镜配戴告知书 | |||
|             <p style="font-size: 13px">(此页告知书一式两份:一份存档,一份给患者)</p> | |||
|           </h3> | |||
|           <p style="color: red">角膜塑形镜(OK镜)一夜戴型高透氧性硬性隐形眼镜,属于易碎品。</p> | |||
|           <p style="font-weight: bold">角膜塑形镜的适应症:</p> | |||
|           <p>①年龄8周岁以上。近视量可矫正范围在-0.25DS~-6.00DS,以低于-4.00DS为理想矫治范围。</p> | |||
|           <p>②角膜散光小于1.50D,顺规性散光者相对合适。</p> | |||
|           <p>③角膜曲率在40.00~46.00D。角膜曲率过平(<40.0)或过陡(>46.0)效果可能不理想,需有经验医师酌情考虑处方。</p> | |||
|           <p> | |||
|             1.验配单位所提供产品为国家食品药品监督管理局注册登记的合格产品。 | |||
|           </p> | |||
|           <p> | |||
|             2.验配单位负责近视矫正过程中的配戴眼数据采集分析、镜片订制、戴镜后跟踪评估及疑难咨询等工作。 | |||
|           </p> | |||
|           <p> | |||
|             3.验配单位保证以高度责任心尽力达到最优近视矫治效果,但由于个体差异及其他多种因素的影响,验配单位无法对角膜塑形镜的效果做出任何保证性承诺。 | |||
|           </p> | |||
|           <p> | |||
|             4.OK镜属于隐形眼镜,它与其它隐形眼镜一样存在各种感染的可能,如遇严重感染,可能会影响眼睛健康。必须规范使用,按时随访。 | |||
|           </p> | |||
|           <p> | |||
|             5.OK镜对近视的加深有相对延缓作用,但并不能完全阻止近视的发展,也不可能根治近视。 | |||
|           </p> | |||
|           <p> | |||
|             6.<span style="color: red">关于0K镜破碎的优惠条款:</span>配戴者需将<span style="color: red">原包装及完整的碎片(镜片上要有完整编码)</span>交还验配单位后方可享受以下优惠:自镜片交付日算起<span style="font-weight: bold">30</span>天内,可享受<span style="color: red">免费</span>换片一次<span style="color: red">(已享受免费换片的新片,如再次破碎,无法再免费换片);</span><span style="font-weight: bold">31天~90天内</span>破碎,<span style="color: red">按原价的半价</span>补片。如镜片丢失、碎片无完整编码、粉碎性损坏、无法交还原镜片及包装、碎片缺少部分大于1/4整片等,验配单位不提供免费换片。<span style="color: red">患者收到取镜通知,30天内未取镜,则视为自动放弃该项优惠。</span> | |||
|           </p> | |||
|           <p> | |||
|             7.自镜片交付日算起90天内,按要求复查的配戴者,如果出现适配不理想的情况,经验配单位鉴定需调整镜片设计参数重新订片的,配戴者无需承担二次配镜的镜片购买费用;如经验配单位鉴定无法消除且必须终止矫正的,在配戴者退回完好无损的镜片和原包装后,双方共同承担损失,验配机构返还配戴者镜片费用<span style="font-weight: bold">百分之五十</span>的款项; | |||
|           </p> | |||
|           <p> | |||
|             8.配戴者在<span style="color: red">订单已发出或取镜后30天内</span>要求退片的,在配戴者交回完好的原镜片及原包装,将退还配戴者镜片费用<span style="color: red">百分之五十</span>的款项;超过30天,一律视为配戴者已主动放弃退片权利,验配单位有权不受理退片申请。 | |||
|           </p> | |||
|           <p> | |||
|             9.体检的配戴者镜片一旦订片概不受理退片。 | |||
|           </p> | |||
|           <p> | |||
|             10.验配单位对配戴角膜塑形镜的人员进行试戴评估,以便评估配戴者是否适合配戴角膜塑形镜。但是,鉴于个体条件的差异性、使用习惯、卫生条件以及其他外部环境的影响,上述评估效果仅在试戴时确定配戴者是否适合配戴,并非确定配戴以后任何时期是否适合配戴的有效依据,因此,验配单位无法保证正式配戴过程中不出现排异性、不适配或其他不良反应。 | |||
|           </p><p> | |||
|             11.镜片常规使用寿命为<span style="color: red">1年~1.5年。</span>夜间常规配戴时间<span style="color: red">7-10小时,不超过12小时。</span> | |||
|           </p> | |||
|           <p> | |||
|             12.常规复查时间:<span style="color: red">复查都要挂号,到1楼或2楼眼视光中心</span> 进行复查:<span style="color: red">到片取镜时学习摘戴方法(不用挂号),戴镜后的第1天早上复查(起床不摘镜)、第1周、第1个月必须按期复查,若无特殊情况,以后每3个月至少复查一次;</span>严格遵守医嘱,按时复查,这是保障角膜塑形术疗效及规避相关问题的前提;否则,验配单位具有免责权利。 | |||
|           </p> | |||
|           <p> | |||
|             13.配戴初期出现轻微的眼刺激症状或异物感,一过性的结膜充血或轻微的视物叠影,晨起后分泌物稍增多,摘镜后眼睛轻度干涩等均为正常现象,随着矫正期的延续会逐渐缓解或消失。<span style="color: red">戴镜期间如果感冒、发烧,或出现持续性眼红、眼痛、畏光、流泪等症状,必须先停戴,然后及时到医院就诊,</span>并遵循医师处理。 | |||
|           </p> | |||
|           <p> | |||
|             14.为保证矫正的安全有效及镜片的使用寿命,须使用和镜片性能相配套的护理产品和附件,若擅自使用未经验配单位认可的物品接触镜片导致的意外事件或不良反应,由配戴者自行负责。 | |||
|           </p> | |||
|           <p> | |||
|             15.矫正期间,若发现发生与配戴角膜塑形镜无关的眼疾或其他疾病,并因此导致终止矫正,配戴者应自己承担全部责任。 | |||
|           </p> | |||
|           <div style="margin-top: 30px"> | |||
|             <div style="position: relative"> | |||
|               <span style="margin-right: 8px;vertical-align: middle;">是否已阅读<span style="font-weight: bold">此页告知书</span>,并同意配戴<span style="font-weight: bold">角膜塑形镜(OK镜)</span></span> | |||
|               <span v-if="isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('1')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin: 0 16px 0 24px;vertical-align: middle">是</span> | |||
|               <span v-if="!isCkeck" style="display:inline-block;width: 16px;height: 16px;border: solid 1px #ccc;border-radius: 50%;position: absolute;top: 5px" @click="selectRadio('2')" /> | |||
|               <img v-else style="position: absolute;top: 5px" :src="require('@/assets/img/radio.png')" alt=""> | |||
|               <span style="margin-left: 24px;vertical-align: middle">否</span> | |||
|             </div> | |||
|           </div> | |||
|           <div style="width: 100%;display: flex;justify-content: space-around;margin-top: 35px;"> | |||
|             <div @click="signClick(1)"> | |||
|               <span>医生/验光师:</span> | |||
|               <img v-if="optomFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="doctorSign"> | |||
|             </div> | |||
|             <div @click="signClick(2)"> | |||
|               <span>配戴者:</span> | |||
|               <img v-if="wearerFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="patientSign"> | |||
|             </div> | |||
|             <div @click="signClick(3)"> | |||
|               <span>监护人:</span> | |||
|               <img v-if="guardianFlag" :src="require('@/assets/img/signature.png')" alt=""> | |||
|               <img v-else style="width: 160px;height: 80px;" :src="guardianSign"> | |||
|             </div> | |||
|           </div> | |||
|         </div> | |||
|       </div> | |||
|     </div> | |||
|   </div> | |||
| </template> | |||
| <script> | |||
| import headTemplate from '@/components/head' | |||
| export default { | |||
|   components: { | |||
|     headTemplate | |||
|   }, | |||
|   props: { | |||
|     patientId: { | |||
|       type: String, | |||
|       default: '' | |||
|     } | |||
|   }, | |||
|   data() { | |||
|     return { | |||
|       isCkeck: false, | |||
|       isNew: '', | |||
|       noticeData: {}, | |||
|       isAgree: '1' // 1是 2否 | |||
|     } | |||
|   }, | |||
|   computed: { | |||
|     optomFlag: { | |||
|       get() { | |||
|         return this.$store.getters.optomFlag | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     wearerFlag: { | |||
|       get() { | |||
|         return this.$store.getters.wearerFlag | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     guardianFlag: { | |||
|       get() { | |||
|         return this.$store.getters.guardianFlag | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     readFlag: { | |||
|       get() { | |||
|         return this.$store.getters.readFlag | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     wearerOrGuardianFlag: { | |||
|       get() { | |||
|         return this.$store.getters.wearerOrGuardianFlag | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     doctorSign: { | |||
|       get() { | |||
|         return this.$store.getters.doctorSign | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     patientSign: { | |||
|       get() { | |||
|         return this.$store.getters.patientSign | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     guardianSign: { | |||
|       get() { | |||
|         return this.$store.getters.guardianSign | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     readerSign: { | |||
|       get() { | |||
|         return this.$store.getters.readerSign | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     wearerOrGuardianSign: { | |||
|       get() { | |||
|         return this.$store.getters.wearerOrGuardianSign | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     doctorSignDate: { | |||
|       get() { | |||
|         return this.$store.getters.doctorSignDate | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     }, | |||
|     wearerOrGuardianSignDate: { | |||
|       get() { | |||
|         return this.$store.getters.wearerOrGuardianSignDate | |||
|       }, | |||
|       set(val) { | |||
| 
 | |||
|       } | |||
|     } | |||
|   }, | |||
|   created() { | |||
|   }, | |||
|   mounted() { | |||
|     this.getNoticeName() | |||
|   }, | |||
|   methods: { | |||
|     selectRadio(index) { | |||
|       this.isCkeck = !this.isCkeck | |||
|       this.isAgree = index | |||
|     }, | |||
|     signClick(index) { | |||
|       this.$store.commit('beginSign', index) | |||
|     }, | |||
|     handlePrint() { | |||
|       this.printPage('notice-one') | |||
|       this.printPage('notice-two') | |||
|     }, | |||
|     // 获取告知书签名 | |||
|     getNoticeName() { | |||
|       const params = { | |||
|         patientId: this.patientId | |||
|       } | |||
|       this.$http.get('/hospital/notice/getNoticeSign', { params: params }).then(({ data: res }) => { | |||
|         if (res.code !== 0) { | |||
|           return this.$message.error(res.msg) | |||
|         } | |||
|         if (res.data) { | |||
|           this.noticeData = res.data | |||
|           this.isAgree = res.data.isAgree | |||
|           this.isNew = res.data.isNew | |||
|           this.isCkeck = this.isAgree === '2' | |||
|           this.$store.commit('optomFlag', !res.data.doctorSign) | |||
|           this.$store.commit('wearerFlag', !res.data.patientSign) | |||
|           this.$store.commit('guardianFlag', !res.data.guardianSign) | |||
|           this.$store.commit('readFlag', !res.data.readerSign) | |||
|           this.$store.commit('wearerOrGuardianFlag', !res.data.wearerOrGuardianSign) | |||
|           this.$store.commit('doctorSign', res.data.doctorSign) | |||
|           this.$store.commit('patientSign', res.data.patientSign) | |||
|           this.$store.commit('guardianSign', res.data.guardianSign) | |||
|           this.$store.commit('readerSign', res.data.readerSign) | |||
|           this.$store.commit('wearerOrGuardianSign', res.data.wearerOrGuardianSign) | |||
|           this.$store.commit('doctorSignDate', res.data.doctorSignDate) | |||
|           this.$store.commit('wearerOrGuardianSignDate', res.data.wearerOrGuardianSignDate) | |||
|         } else { | |||
|           this.isAgree = '1' | |||
|           this.isNew = 3 | |||
|           this.isCkeck = false | |||
|           this.$store.commit('optomFlag', true) | |||
|           this.$store.commit('wearerFlag', true) | |||
|           this.$store.commit('guardianFlag', true) | |||
|           this.$store.commit('readFlag', true) | |||
|           this.$store.commit('wearerOrGuardianFlag', true) | |||
|           this.$store.commit('doctorSign', '') | |||
|           this.$store.commit('patientSign', '') | |||
|           this.$store.commit('guardianSign', '') | |||
|           this.$store.commit('readerSign', '') | |||
|           this.$store.commit('wearerOrGuardianSign', '') | |||
|           this.$store.commit('doctorSignDate', '') | |||
|           this.$store.commit('wearerOrGuardianSignDate', '') | |||
|         } | |||
|       }).catch(() => {}) | |||
|     }, | |||
|     // 保存、修改告知书 | |||
|     saveEditNotice() { | |||
|       const params = { | |||
|         isNew: 3, | |||
|         patientId: this.patientId, | |||
|         drgsName: window.localStorage.getItem('identity'), | |||
|         doctorSign: this.doctorSign, | |||
|         guardianSign: this.guardianSign, | |||
|         patientSign: this.patientSign, | |||
|         readerSign: this.readerSign, | |||
|         wearerOrGuardianSign: this.wearerOrGuardianSign, | |||
|         doctorSignDate: this.doctorSignDate, | |||
|         wearerOrGuardianSignDate: this.wearerOrGuardianSignDate, | |||
|         isAgree: this.isAgree | |||
|       } | |||
|       this.$http.post('/hospital/notice', params).then(({ data: res }) => { | |||
|         if (res.code !== 0) { | |||
|           return this.$message.error(res.msg) | |||
|         } else { | |||
|           this.$message.success('保存成功!') | |||
|           this.getNoticeName() | |||
|         } | |||
|       }).catch(() => {}) | |||
|     } | |||
|   } | |||
| } | |||
| </script> | |||
| <style lang="scss" scoped> | |||
| .notice-book { | |||
|   width: 100%; | |||
|   height: 100%; | |||
|   display:flex; | |||
|   flex-direction: column; | |||
|   .notice-content{ | |||
|     width: 100%; | |||
|     flex:1; | |||
|     overflow-y: auto; | |||
| 
 | |||
|     .notice-box{ | |||
|       width: 100%; | |||
|       height: 100%; | |||
|       display: flex; | |||
|       justify-content: space-between; | |||
|     } | |||
| 
 | |||
|     .notice_tip{ | |||
|       width: 100%; | |||
|       height: fit-content; | |||
|       border: 1px solid #000; | |||
|       padding: 64px 32px; | |||
|       margin-right: 16px; | |||
| 
 | |||
|       .title{ | |||
|         text-align: center; | |||
|         margin-bottom: 32px; | |||
|       } | |||
| 
 | |||
|       p{ | |||
|         font-size: 14px; | |||
|       } | |||
|       .signature{ | |||
|         width: 100%; | |||
|         display: flex; | |||
|         justify-content: space-around; | |||
|         margin-top: 35px; | |||
|       } | |||
|       .read{ | |||
|         margin-top: 32px; | |||
|       } | |||
|       .read_18{ | |||
|         font-size: 18px; | |||
|       } | |||
|       .radios{ | |||
|         margin-right: 8px; | |||
|         vertical-align: middle; | |||
|       } | |||
|     } | |||
|   } | |||
| } | |||
| </style> | |||
					Loading…
					
					
				
		Reference in new issue