Browse Source

12月16 自动生成

yq1 1 week ago
parent
commit
e70160d815

+ 67 - 20
src/xt_pages/user/Informed/Informedconsent.vue View File

151
                 <div v-if="show22">
151
                 <div v-if="show22">
152
                   <Death_informed :patient_id ="this.patientID" ref="childrtwotytwo" :patientDeathPlan="patientDeathPlan" @getPatientDeathRecord="getPatientDeathRecord"></Death_informed>
152
                   <Death_informed :patient_id ="this.patientID" ref="childrtwotytwo" :patientDeathPlan="patientDeathPlan" @getPatientDeathRecord="getPatientDeathRecord"></Death_informed>
153
                 </div>
153
                 </div>
154
+                <div v-if="show23">
155
+                  <Surrender_informed :patient_id ="this.patientID" ref="childrtwotythree"></Surrender_informed>
156
+                </div>
154
               </div>
157
               </div>
155
             </div>
158
             </div>
156
           </el-tab-pane>
159
           </el-tab-pane>
184
 import CRRT_informed from './components/CRRT_informed'
187
 import CRRT_informed from './components/CRRT_informed'
185
 import Terminate_informed from './components/Terminate_informed'
188
 import Terminate_informed from './components/Terminate_informed'
186
 import hemodialysis from './components/hemodialysis'
189
 import hemodialysis from './components/hemodialysis'
190
+import Surrender_informed from './components/Surrender_informed'
187
 import { getPatientDetailInformedconsent,getFallOutBedPrintList,getFilterInformed,getProfundaInformed,
191
 import { getPatientDetailInformedconsent,getFallOutBedPrintList,getFilterInformed,getProfundaInformed,
188
   getArterOvernous,getHighRiskInformed,getPatientMeDicalList,getAnticoagulationInformed,getCriticalInformed,
192
   getArterOvernous,getHighRiskInformed,getPatientMeDicalList,getAnticoagulationInformed,getCriticalInformed,
189
   getHemoperfusionInformed,getInformedConsent,getCatheterization,getDialyzerInformed, getTherapyInformed,
193
   getHemoperfusionInformed,getInformedConsent,getCatheterization,getDialyzerInformed, getTherapyInformed,
211
     nonheparin_informed,
215
     nonheparin_informed,
212
     CRRT_informed,
216
     CRRT_informed,
213
     Terminate_informed,
217
     Terminate_informed,
214
-    hemodialysis
218
+    hemodialysis,
219
+    Surrender_informed
215
   },
220
   },
216
   data() {
221
   data() {
217
     return {
222
     return {
226
                 // {date:'疾病诊断证明书',value:'17'},{date:'无肝素血液透析风险知情同意书',value:'18'},
231
                 // {date:'疾病诊断证明书',value:'17'},{date:'无肝素血液透析风险知情同意书',value:'18'},
227
                 // {date:'连续肾脏替代治疗(CRRT)治疗知情同意书',value:'19'},{date:'患方要求终止治疗及风险、责任承担承诺书',value:'20'},
232
                 // {date:'连续肾脏替代治疗(CRRT)治疗知情同意书',value:'19'},{date:'患方要求终止治疗及风险、责任承担承诺书',value:'20'},
228
                 // {date:'血液透析知情同意书',value:'21'}
233
                 // {date:'血液透析知情同意书',value:'21'}
229
-                {date:'死亡病例讨论记录',value:'22'}
234
+                {date:'死亡病例讨论记录',value:'22'},
235
+                // {date:'拒绝或放弃医学治疗告知书',value:'23'}
230
       ],
236
       ],
231
 
237
 
232
       face_show:true,
238
       face_show:true,
250
       show20:false,
256
       show20:false,
251
       show21:false,
257
       show21:false,
252
       show22:false,
258
       show22:false,
259
+      show23:false,
253
       patientID:0,
260
       patientID:0,
254
       patient:{},
261
       patient:{},
255
       tableData:[],
262
       tableData:[],
448
        getPatientDeathRecord().then(response=>{
455
        getPatientDeathRecord().then(response=>{
449
          if(response.data.state == 1){
456
          if(response.data.state == 1){
450
             var list = response.data.data.record
457
             var list = response.data.data.record
451
-          
458
+
452
             this.patientDeathPlan = list
459
             this.patientDeathPlan = list
453
             console.log("list=================",this.patientDeathPlan)
460
             console.log("list=================",this.patientDeathPlan)
454
             this.$refs.childrtwotytwo.show(list)
461
             this.$refs.childrtwotytwo.show(list)
505
           this.show19 = false,
512
           this.show19 = false,
506
           this.show20 = false,
513
           this.show20 = false,
507
           this.show21 = false,
514
           this.show21 = false,
508
-          this.show22 = false
515
+          this.show22 = false,
516
+          this.show23 = false,
509
           this.getFilterInformed()
517
           this.getFilterInformed()
510
         }
518
         }
511
         if(row.value==3){
519
         if(row.value==3){
528
           this.show19 = false,
536
           this.show19 = false,
529
           this.show20 = false,
537
           this.show20 = false,
530
           this.show21 = false,
538
           this.show21 = false,
531
-          this.show22 = false
539
+          this.show22 = false,
540
+          this.show23 = false,
532
           this.getProfundaInformed()
541
           this.getProfundaInformed()
533
         }
542
         }
534
         if(row.value==4){
543
         if(row.value==4){
551
           this.show19 = false,
560
           this.show19 = false,
552
           this.show20 = false,
561
           this.show20 = false,
553
           this.show21 = false,
562
           this.show21 = false,
554
-          this.show22 = false
563
+          this.show22 = false,
564
+          this.show23 = false,
555
           this.getArterOvernous()
565
           this.getArterOvernous()
556
         }
566
         }
557
         if(row.value==5){
567
         if(row.value==5){
574
           this.show19 = false,
584
           this.show19 = false,
575
           this.show20 = false,
585
           this.show20 = false,
576
           this.show21 = false,
586
           this.show21 = false,
577
-          this.show22 = false
587
+          this.show22 = false,
588
+          this.show23 = false,
578
           this.getHighRiskInformed()
589
           this.getHighRiskInformed()
579
         }
590
         }
580
         if(row.value==6){
591
         if(row.value==6){
597
           this.show19 = false,
608
           this.show19 = false,
598
           this.show20 = false,
609
           this.show20 = false,
599
           this.show21 = false,
610
           this.show21 = false,
600
-          this.show22 = false
611
+          this.show22 = false,
612
+          this.show23 = false,
601
           this.getAnticoagulationInformed()
613
           this.getAnticoagulationInformed()
602
         }
614
         }
603
         if(row.value==7){
615
         if(row.value==7){
620
           this.show19 = false,
632
           this.show19 = false,
621
           this.show20 = false,
633
           this.show20 = false,
622
           this.show21 = false,
634
           this.show21 = false,
623
-          this.show22 = false
635
+          this.show22 = false,
636
+          this.show23 = false,
624
           this.getCriticalInformed()
637
           this.getCriticalInformed()
625
         }
638
         }
626
         if(row.value==8){
639
         if(row.value==8){
643
           this.show19 = false,
656
           this.show19 = false,
644
           this.show20 = false,
657
           this.show20 = false,
645
           this.show21 = false,
658
           this.show21 = false,
646
-          this.show22 = false
659
+          this.show22 = false,
660
+          this.show23 = false,
647
           this.getHemoperfusionInformed()
661
           this.getHemoperfusionInformed()
648
         }
662
         }
649
         if(row.value==9){
663
         if(row.value==9){
689
           this.show19 = false,
703
           this.show19 = false,
690
           this.show20 = false,
704
           this.show20 = false,
691
           this.show21 = false,
705
           this.show21 = false,
692
-          this.show22 = false
706
+          this.show22 = false,
707
+          this.show23 = false
693
         }
708
         }
694
         // if(row.value==11){
709
         // if(row.value==11){
695
         //   this.face_show=false
710
         //   this.face_show=false
731
           this.show19 = false,
746
           this.show19 = false,
732
           this.show20 = false,
747
           this.show20 = false,
733
           this.show21 = false,
748
           this.show21 = false,
734
-          this.show22 = false
749
+          this.show22 = false,
750
+          this.show23 = false,
735
           this.getTherapyInformed()
751
           this.getTherapyInformed()
736
         }
752
         }
737
         if(row.value==13){
753
         if(row.value==13){
754
           this.show19 = false,
770
           this.show19 = false,
755
           this.show20 = false,
771
           this.show20 = false,
756
           this.show21 = false,
772
           this.show21 = false,
757
-          this.show22 = false
773
+          this.show22 = false,
774
+          this.show23 = false,
758
           this.getPatientMeDicalList()
775
           this.getPatientMeDicalList()
759
         }
776
         }
760
         if(row.value==14){
777
         if(row.value==14){
777
           this.show19 = false,
794
           this.show19 = false,
778
           this.show20 = false,
795
           this.show20 = false,
779
           this.show21 = false,
796
           this.show21 = false,
780
-          this.show22 = false
797
+          this.show22 = false,
798
+          this.show23 = false,
781
           this.getTreamentPlan()
799
           this.getTreamentPlan()
782
         }
800
         }
783
         // if(row.value==15){
801
         // if(row.value==15){
842
           this.show19 = false,
860
           this.show19 = false,
843
           this.show20 = false,
861
           this.show20 = false,
844
           this.show21 = false,
862
           this.show21 = false,
845
-          this.show22 = false
863
+          this.show22 = false,
864
+          this.show23 = false
846
         }
865
         }
847
         if(row.value==18){
866
         if(row.value==18){
848
           this.filter_show=false
867
           this.filter_show=false
864
           this.show19 = false,
883
           this.show19 = false,
865
           this.show20 = false,
884
           this.show20 = false,
866
           this.show21 = false,
885
           this.show21 = false,
867
-          this.show22 = false
886
+          this.show22 = false,
887
+          this.show23 = false
868
         }
888
         }
869
         if(row.value==19){
889
         if(row.value==19){
870
           this.filter_show=false
890
           this.filter_show=false
886
           this.show19 = true,
906
           this.show19 = true,
887
           this.show20 = false,
907
           this.show20 = false,
888
           this.show21 = false,
908
           this.show21 = false,
889
-          this.show22 = false
909
+          this.show22 = false,
910
+          this.show23 = false
890
         }
911
         }
891
         if(row.value==20){
912
         if(row.value==20){
892
           this.filter_show=false
913
           this.filter_show=false
908
           this.show19 = false,
929
           this.show19 = false,
909
           this.show20 = true,
930
           this.show20 = true,
910
           this.show21 = false,
931
           this.show21 = false,
911
-          this.show22 = false
932
+          this.show22 = false,
933
+          this.show23 = false
912
         }
934
         }
913
         if(row.value==21){
935
         if(row.value==21){
914
           this.filter_show=false
936
           this.filter_show=false
930
           this.show19 = false,
952
           this.show19 = false,
931
           this.show20 = false,
953
           this.show20 = false,
932
           this.show21 = true,
954
           this.show21 = true,
933
-          this.show22 = false
955
+          this.show22 = false,
956
+          this.show23 = false
934
         }
957
         }
935
         if(row.value==22){
958
         if(row.value==22){
936
           this.filter_show=false
959
           this.filter_show=false
952
           this.show19 = false,
975
           this.show19 = false,
953
           this.show20 = false,
976
           this.show20 = false,
954
           this.show21 = false,
977
           this.show21 = false,
955
-          this.show22 = true
978
+          this.show22 = true,
979
+          this.show23 = false,
956
           this.getPatientDeathRecord()
980
           this.getPatientDeathRecord()
957
         }
981
         }
982
+        if(row.value==23){
983
+          this.filter_show=false
984
+          this.face_show=false
985
+          this.profunda_show=false,
986
+          this.arteriovenous_show=false,
987
+          this.Highrisk_show=false,
988
+          this.anticoagulation_show=false,
989
+          this.critical_show=false,
990
+          this.hemoperfusion_show=false,
991
+          this.Bring_show=false,
992
+          this.catheterization_show=false,
993
+          this.therapy_show=false,
994
+          this.history_show=false,
995
+          this.show14=false,
996
+          this.show16=false,
997
+          this.show17=false,
998
+          this.show18=false,
999
+          this.show19 = false,
1000
+          this.show20 = false,
1001
+          this.show21 = false,
1002
+          this.show22 = false,
1003
+          this.show23 = true
1004
+        }
958
     },
1005
     },
959
 
1006
 
960
   }
1007
   }

+ 266 - 0
src/xt_pages/user/Informed/components/Surrender_informed.vue View File

1
+<!-- 透析器(滤器) -->
2
+<!-- 自带 -->
3
+<template>
4
+  <div style="border:1px solid gainsboro ;padding:10px">
5
+      <div style="position: relative; left: 400px;width: 250px;margin: 20px 0;">
6
+        <!-- <el-button type="primary">主要按钮</el-button> -->
7
+         <el-button type="primary" style=""  @click="bianji">
8
+              编辑
9
+          </el-button>
10
+        <!--<el-button type="danger" style=""  @click="">
11
+              删除
12
+        </el-button> -->
13
+        <el-button type="success" style=""  @click="printThisPage">
14
+            打印
15
+        </el-button>
16
+      </div>
17
+      <div id="print_content">
18
+          <div class="print_page_main_content">
19
+            <div class="content">
20
+              <div style="text-align: center;font-size: 20px;">{{ orgname }}</div>
21
+                <h2 style="text-align: center;margin-bottom: 10px;">拒绝或放弃医学治疗告知书</h2>
22
+
23
+                <div style="border-bottom: 1px solid gainsboro;display: flex;justify-content: space-around;">
24
+                  <div >姓名:
25
+                    {{ patient.name }}
26
+                  </div>
27
+                  <div >性别:
28
+                    <span v-if="patient.gender == 1">男</span>
29
+                    <span v-if="patient.gender == 2">女</span>
30
+                  </div>
31
+                  <div >门诊号:
32
+                    {{ patient.admission_number }}
33
+                  </div>
34
+                </div>
35
+                <div style="margin-top: 10px;" v-html="content"></div>
36
+
37
+            </div>
38
+          </div>
39
+      </div>
40
+      <el-dialog
41
+        title="提示"
42
+        :visible.sync="dialogVisible"
43
+        width="60%"
44
+        >
45
+        <div>
46
+          <h2 style="text-align: center;">患方要求终止治疗及风险、责任承担承诺书</h2>
47
+
48
+          <div style="text-align: right;">
49
+            透析号:{{ patient.dialysis_no }}
50
+          </div>
51
+          <div style="display: flex;margin: 10px 0;">
52
+            <div style="flex:1">姓名:{{ patient.name }}</div>
53
+            <div style="flex:1">性别:
54
+              <span v-if="patient.gender == 1">男</span>
55
+                <span v-if="patient.gender == 2">女</span>
56
+            </div>
57
+            <div style="flex:1">年龄:
58
+              {{ getAge(patient) }}
59
+            </div>
60
+            <div style="flex:1">住院(门诊)号:
61
+              {{ patient.admission_number }}
62
+            </div>
63
+          </div>
64
+          <div style="border-bottom: 1px solid gainsboro;">
65
+            诊断:
66
+            {{ patient.diagnose }}
67
+          </div>
68
+          <keep-alive>
69
+            <editor ref="editor"
70
+                    id="editor"
71
+                    style="width: 100%"
72
+                    v-bind:r_content="content">
73
+            </editor>
74
+          </keep-alive>
75
+        </div>
76
+        <span slot="footer" class="dialog-footer">
77
+          <el-button @click="dialogVisible = false">取 消</el-button>
78
+          <el-button type="primary" @click="saveDialyzerInformed">保 存</el-button>
79
+        </span>
80
+      </el-dialog>
81
+  </div>
82
+</template>
83
+
84
+<script>
85
+import print from "print-js";
86
+import Editor from '@/components/Editor'
87
+import { getPatientDetailInformedconsent,saveDialyzerInformed  } from '@/api/patient'
88
+import { jsGetAge, uParseTime } from "@/utils/tools";
89
+const content=`
90
+    <p style="">
91
+      <span>尊敬的患者、患者家属或患者的法定监护人、授权委托人:</span>
92
+    </p>
93
+    <p style="text-indent:20px">
94
+      <span>根据患者目前的疾病状况,医生认为患者应当接受治疗,并建议患者接受适当的医疗措施。</span>
95
+    </p>
96
+    <p style="text-indent:20px">
97
+      <span>但是患者现在拒绝或者放弃我院医护人员建议的以下医疗措施(指明操作/治疗名称):</span>
98
+    </p>
99
+    <p style="text-indent:20px">
100
+      <span>特此告知可能出现的后果,请患者、患者家属或患者的法定监护人、授权委托人认真斟酌后决定。</span>
101
+    </p>
102
+    <p style="text-indent:20px">
103
+      <span>1、拒绝或放弃医学治疗,在我院原有的治疗中断,有可能导致病情反复甚至加重,从而为以后的诊断和治疗增加困难,甚至使原有疾病无法治煎或者使患者丧失最佳治疗时机,也有可能促进或者导致患者死亡;</span>
104
+    </p>
105
+    <p style="text-indent:20px">
106
+      <span>2、拒绝或放弃医学治疗,在我院原有的治疗中断,有可能出现各种感染或使原有的感染加重、伤口延迟愈合、疼痛等各种症状加重或症状持续时间延长,增加患者的痛苦,甚至可能导致不良后果;</span>
107
+    </p>
108
+    <p style="text-indent:20px">
109
+      <span>3、拒绝或放弃医学治疗,在我院原有的治疗中断,患者有可能会出现某一个或者多个器官功能减退部分功能甚或全部功能的丧失,有可能诱发患者出现出血、休克、其他疾病和症状,甚至产生不良后果;</span>
110
+    </p>
111
+    <p style="text-indent:20px">
112
+      <span>4、拒绝或放弃医学治疗有可能导致原有的医疗花费失去应有的作用;</span>
113
+    </p>
114
+    <p style="text-indent:20px">
115
+      <span>5、拒绝或放弃医学治疗有可能增加患者其他不可预料的风险及不良后果。</span>
116
+    </p>
117
+    <p style='font-weight: bold;'>
118
+      <span>患者家属或患者的法定监护人、授权委托人意见:</span>
119
+    </p>
120
+    <p style="text-indent:20px">
121
+      <span>我(或是患者的监护人)已年满18周岁且具有完全民事行为能力,我拒绝或放弃医院对我的医学治疗服务。医护人员已经向我解释了接受医疗措施对我的疾病治疗的重要性和必要性,并且已将拒绝或者放弃医学治疗的风险及后果向我作了详细的告知。我仍然坚持拒绝或放弃医学治疗。</span>
122
+    </p>
123
+    <p style="text-indent:20px">
124
+      <span>我自愿承担拒绝或放弃医学治疗所带来的风险和不良后果。我拒绝或放弃医学治疗产生的不良后果与医院及医护人员无关。</span>
125
+    </p>
126
+    
127
+    <p style="padding:10px 0px;display:flex;align-items: center;">
128
+        <span style="display: inline-block;flex: 1;">患者/法定监护人/委托代理人/签名:&nbsp;&nbsp;&nbsp;&nbsp;</span>
129
+        <span style="display: inline-block;flex: 1;">与患者关系:&nbsp;&nbsp;&nbsp;&nbsp;</span>
130
+    </p>
131
+    <p style="padding:10px 0px;align-items: center;">
132
+        <span>签名曰期:&nbsp;&nbsp;&nbsp;&nbsp;</span>
133
+    </p>
134
+    <p style="font-weight: bold;"><span>医生陈述:</span></p>
135
+    <p style="text-indent:20px">
136
+      <span>我已经将患者继续接受医学治疗的重要性和必要性以及拒绝或者放弃治疗的风险及后果向患者、患者家属或患者的法定监护人、授权委托人告知,并且解答了关于拒绝或者放弃治疗的相关问题。</span>
137
+    </p>
138
+    <p style="padding:10px 0px;display:flex;align-items: center;">
139
+        <span style="display: inline-block;flex: 1;">医师签名:&nbsp;&nbsp;&nbsp;&nbsp;</span>
140
+        <span style="display: inline-block;flex: 1;">签名曰期:&nbsp;&nbsp;&nbsp;&nbsp;</span>
141
+    </p>`
142
+export default{
143
+  props: {
144
+    patient_id: {
145
+        type: Number,
146
+      },
147
+      dialyzerInformedPrint:{
148
+        type:Object
149
+      }
150
+   },
151
+   components:{
152
+    Editor
153
+   },
154
+  data(){
155
+    return{
156
+      patient:{},
157
+      dialogVisible:false,
158
+      content:content,
159
+      orgname:'',
160
+    }
161
+   },
162
+  methods:{
163
+      getlist(){
164
+        getPatientDetailInformedconsent(this.patient_id).then(response=>{
165
+          if(response.data.state == 1){
166
+            var patient =  response.data.data.patients
167
+            console.log("patinet",patient)
168
+            this.patient =patient
169
+          }
170
+        })
171
+      },
172
+      printThisPage(){
173
+          const style = '@media print {.content p{font-size: 16px;font-family: 新宋体;  margin-bottom: 5px;}}'
174
+          printJS({
175
+              printable: 'print_content',
176
+              type: 'html',
177
+              documentTitle: '  ',
178
+              style: style,
179
+              scanStyles: false
180
+          })
181
+      },
182
+      getAge: function(val) {
183
+          if (val.id_card_no == undefined) {
184
+            return false
185
+          }
186
+          var thisLen = val.id_card_no.length
187
+          var birth = ''
188
+          if (thisLen == 15) {
189
+            birth = '19' + val.id_card_no.substr(6, 6)
190
+          } else {
191
+            birth = val.id_card_no.substr(6, 8)
192
+          }
193
+          var birthtwo =
194
+            birth.substr(0, 4) +
195
+            '-' +
196
+            birth.substr(4, 2) +
197
+            '-' +
198
+            birth.substr(6, 2)
199
+
200
+          var age = jsGetAge(birthtwo, '-')
201
+          return age
202
+      },
203
+      bianji(){
204
+        this.dialogVisible=true
205
+      },
206
+      show(val){
207
+
208
+       if(val!=null){
209
+        console.log("valw233223",val)
210
+         if(val.content!=""){
211
+           this.content = ""
212
+           this.content = val.content
213
+         }
214
+
215
+       }
216
+     },
217
+      saveDialyzerInformed(){
218
+         var params = {
219
+          content:this.$refs.editor.content,
220
+         }
221
+        saveDialyzerInformed(params).then(response=>{
222
+           if(response.data.state ==1){
223
+             var list = response.data.data.list
224
+            this.$message.success("保存成功!")
225
+            this.dialogVisible = false
226
+            this.$emit("getDialyzerInformed","");
227
+           }
228
+        })
229
+      }
230
+
231
+  },
232
+  created(){
233
+    this.orgname = this.$store.getters.xt_user.org.org_name;
234
+    console.log("hhahdfhahdfhahdf",this.dialyzerInformedPrint)
235
+    if(this.dialyzerInformedPrint!=null&& this.dialyzerInformedPrint.id >0){
236
+        this.content = ""
237
+        this.content =this.dialyzerInformedPrint.content
238
+    }
239
+    this.getlist()
240
+  }
241
+}
242
+</script>
243
+<style lang="scss" scoped>
244
+
245
+*{
246
+  // margin: 0;
247
+  // padding: 0;
248
+  border: 0;
249
+}
250
+  .content{
251
+      p{
252
+        font-size: 16px;
253
+        font-family: '新宋体';
254
+        line-height: 22px;
255
+        // padding-left: 20px;
256
+        margin-bottom: 5px;
257
+        text-align: justify;
258
+      }
259
+  }
260
+  .print_page_main_content {
261
+    background-color: white;
262
+    width: 100%;
263
+    padding: 0 0 0 0;
264
+    page-break-after: always;
265
+  }
266
+</style>