huangyw 2 years ago
parent
commit
2d2d918bd9

+ 192 - 71
src/xt_pages/dialysis/details/dialog/AssessmentAfterDislysis.vue View File

@@ -11,7 +11,8 @@
11 11
       <el-form ref="form" :model="form" label-width="160px">
12 12
         <el-row :gutter="20">
13 13
           <el-col :span="8" v-if="isShow('实际治疗时长')">
14
-            <el-form-item label="实际治疗时长(时):">
14
+            <el-form-item label="实际治疗时长(时):" prop="actual_treatment_minute"
15
+              :rules="isCheckmust('实际治疗时长')">
15 16
               <!-- <el-input v-model="form.actual_treatment_hour"></el-input> -->
16 17
               <el-time-picker
17 18
                 v-model="actualTreatmentHourShow"
@@ -26,24 +27,28 @@
26 27
           </el-col>
27 28
 
28 29
           <el-col :span="8" v-if="isShow('实际超滤量')">
29
-            <el-form-item
30
+            <el-form-item :prop="isName('实际超滤量')"
31
+              :rules="isCheckmust('实际超滤量')"
30 32
               label="实际超滤量(ml): "
31 33
               v-if=" this.template_id == 6 || this.template_id == 9 || this.template_id == 10 || this.template_id == 11  || this.template_id == 17 || this.template_id == 20 || this.template_id == 21 || this.template_id == 22 || this.template_id == 23 || this.template_id == 24 || this.template_id == 26 || this.template_id == 28 || this.template_id == 27 || this.template_id == 29 || this.template_id == 30 || this.template_id == 31 || this.template_id == 32 || this.template_id == 34 || this.template_id == 36 || this.template_id == 38 || this.template_id == 43 || this.template_id == 44 || this.template_id == 47 || this.template_id == 56 || this.template_id == 60 || this.$store.getters.xt_user.template_info.org_id == 10307 || this.$store.getters.xt_user.template_info.org_id == 10340 || this.$store.getters.xt_user.template_info.org_id == 9555 || this.$store.getters.xt_user.template_info.org_id == 10387 || this.$store.getters.xt_user.template_info.org_id == 10430 || this.$store.getters.xt_user.template_info.org_id == 10432 || this.$store.getters.xt_user.template_info.org_id == 10441 || this.$store.getters.xt_user.template_info.org_id == 10445"  >
32 34
               <el-input v-model="form.actual_ultrafiltration"></el-input>
33 35
             </el-form-item>
34
-            <el-form-item label="实际超滤量(L): " v-else>
36
+            <el-form-item label="实际超滤量(L): " :prop="isName('实际超滤量')"
37
+              :rules="isCheckmust('实际超滤量')" v-else>
35 38
               <el-input v-model="form.actual_ultrafiltration"></el-input>
36 39
             </el-form-item>
37 40
           </el-col>
38 41
 
39 42
           <el-col :span="8" v-if="isShow('透后称重')">
40
-            <el-form-item label="透后称重(kg): ">
43
+            <el-form-item label="透后称重(kg): " :prop="isName('透后称重')"
44
+              :rules="isCheckmust('透后称重')">
41 45
               <el-input v-model="form.weight_after"></el-input>
42 46
             </el-form-item>
43 47
           </el-col>
44 48
 
45 49
           <el-col :span="8" v-if="isShow('衣物重')">
46
-            <el-form-item label="衣物重(kg): ">
50
+            <el-form-item label="衣物重(kg): " :prop="isName('衣物重')"
51
+              :rules="isCheckmust('衣物重')">
47 52
               <el-input v-model="form.additional_weight"></el-input>
48 53
             </el-form-item>
49 54
           </el-col>
@@ -51,13 +56,15 @@
51 56
 
52 57
         <el-row :gutter="20">
53 58
           <el-col :span="8" v-if="isShow('体重减少')">
54
-            <el-form-item label="体重减少(kg): ">
59
+            <el-form-item label="体重减少(kg): " :prop="isName('体重减少')"
60
+              :rules="isCheckmust('体重减少')">
55 61
               <el-input v-model="form.weight_loss"></el-input>
56 62
             </el-form-item>
57 63
           </el-col>
58 64
 
59 65
           <el-col :span="8" v-if="isShow('穿刺处血肿')">
60
-            <el-form-item label="穿刺处血肿: ">
66
+            <el-form-item label="穿刺处血肿: " prop="puncture_point_haematoma"
67
+              :rules="isCheckmust('穿刺处血肿')">
61 68
               <el-radio-group v-model="form.puncture_point_haematoma">
62 69
                 <el-radio :label="1">有</el-radio>
63 70
                 <el-radio :label="2">无</el-radio>
@@ -66,7 +73,8 @@
66 73
           </el-col>
67 74
 
68 75
           <el-col :span="8" v-if="isShow('并发症')">
69
-            <el-form-item label="并发症: ">
76
+            <el-form-item label="并发症: " :prop="isName('并发症')"
77
+              :rules="isCheckmust('并发症')">
70 78
               <el-input
71 79
                 v-model="form.complication"
72 80
                 readonly
@@ -78,7 +86,8 @@
78 86
 
79 87
         <el-row :gutter="20">
80 88
           <el-col :span="8" v-if="isShow('内瘘')">
81
-            <el-form-item label="内瘘: ">
89
+            <el-form-item label="内瘘: " :prop="isName('内瘘')"
90
+              :rules="isCheckmust('内瘘')">
82 91
               <el-input
83 92
                 v-model="form.internal_fistula"
84 93
                 readonly
@@ -88,7 +97,8 @@
88 97
           </el-col>
89 98
 
90 99
           <el-col :span="8" v-if="isShow('导管')">
91
-            <el-form-item label="导管: ">
100
+            <el-form-item label="导管: " :prop="isName('导管')"
101
+              :rules="isCheckmust('导管')">
92 102
               <el-input
93 103
                 v-model="form.catheter"
94 104
                 readonly
@@ -98,7 +108,8 @@
98 108
           </el-col>
99 109
 
100 110
           <el-col :span="8" v-if="isShow('透析过程')">
101
-            <el-form-item label="透析过程: ">
111
+            <el-form-item label="透析过程: " :prop="isName('透析过程')"
112
+              :rules="isCheckmust('透析过程')">
102 113
               <el-select v-model="form.dialysis_process">
103 114
                 <el-option :key="0" label="请选择" :value="0"></el-option>
104 115
 
@@ -113,13 +124,15 @@
113 124
           </el-col>
114 125
 
115 126
           <el-col :span="8" v-if="isShow('透析过程提前时间')">
116
-            <el-form-item label="透析过程提前时间(min): ">
127
+            <el-form-item label="透析过程提前时间(min): " :prop="isName('透析过程提前时间')"
128
+              :rules="isCheckmust('透析过程提前时间')">
117 129
               <el-input v-model="form.in_advance_minute"></el-input>
118 130
             </el-form-item>
119 131
           </el-col>
120 132
 
121 133
           <el-col :span="8" v-if="isShow('透析过程提前原因')">
122
-            <el-form-item label="透析过程提前原因: ">
134
+            <el-form-item label="透析过程提前原因: " :prop="isName('透析过程提前原因')"
135
+              :rules="isCheckmust('透析过程提前原因')">
123 136
               <el-input
124 137
                 v-model="form.in_advance_reason"
125 138
                 readonly
@@ -129,7 +142,8 @@
129 142
           </el-col>
130 143
 
131 144
           <el-col :span="8" v-if="isShow('透析过程提前其他原因')">
132
-            <el-form-item label="透析过程提前其他原因: ">
145
+            <el-form-item label="透析过程提前其他原因: " :prop="isName('透析过程提前其他原因')"
146
+              :rules="isCheckmust('透析过程提前其他原因')">
133 147
               <el-input
134 148
                 v-model="form.in_advance_reason_other"
135 149
                 :rows="2"
@@ -140,13 +154,15 @@
140 154
 
141 155
         <el-row :gutter="20">
142 156
           <el-col :span="8" v-if="isShow('内瘘管拔针后压迫止血时间')">
143
-            <el-form-item label="内瘘管拔针后压迫止血时间(min): ">
157
+            <el-form-item label="内瘘管拔针后压迫止血时间(min): " :prop="isName('内瘘管拔针后压迫止血时间')"
158
+              :rules="isCheckmust('内瘘管拔针后压迫止血时间')">
144 159
               <el-input v-model="form.hemostasis_minute" :rows="5"></el-input>
145 160
             </el-form-item>
146 161
           </el-col>
147 162
 
148 163
           <el-col :span="8" v-if="isShow('内瘘管拔针后压迫止血操作')">
149
-            <el-form-item label="内瘘管拔针后压迫止血操作: ">
164
+            <el-form-item label="内瘘管拔针后压迫止血操作: " :prop="isName('内瘘管拔针后压迫止血操作')"
165
+              :rules="isCheckmust('内瘘管拔针后压迫止血操作')">
150 166
               <el-select v-model="form.hemostasis_opera">
151 167
                 <el-option :key="0" label="请选择" :value="0"></el-option>
152 168
 
@@ -161,7 +177,8 @@
161 177
           </el-col>
162 178
 
163 179
           <el-col :span="8" v-if="isShow('动脉管道')">
164
-            <el-form-item label="动脉管道: ">
180
+            <el-form-item label="动脉管道: " :prop="isName('动脉管道')"
181
+              :rules="isCheckmust('动脉管道')">
165 182
               <el-select v-model="form.arterial_tube">
166 183
                 <el-option :key="0" label="请选择" :value="0"></el-option>
167 184
 
@@ -177,7 +194,8 @@
177 194
         </el-row>
178 195
         <el-row :gutter="20">
179 196
           <el-col :span="8" v-if="isShow('静脉管道')">
180
-            <el-form-item label="静脉管道: ">
197
+            <el-form-item label="静脉管道: " :prop="isName('静脉管道')"
198
+              :rules="isCheckmust('静脉管道')">
181 199
               <el-select v-model="form.intravenous_tube">
182 200
                 <el-option :key="0" label="请选择" :value="0"></el-option>
183 201
 
@@ -192,7 +210,8 @@
192 210
           </el-col>
193 211
 
194 212
           <el-col :span="8" v-if="isShow('透析器凝血')">
195
-            <el-form-item label="透析器凝血: ">
213
+            <el-form-item label="透析器凝血: " :prop="isName('透析器凝血')"
214
+              :rules="isCheckmust('透析器凝血')">
196 215
               <el-input
197 216
                 v-model="form.cruor"
198 217
                 readonly
@@ -202,7 +221,8 @@
202 221
           </el-col>
203 222
 
204 223
           <el-col :span="8" v-if="isShow('管路凝血')">
205
-            <el-form-item label="管路凝血: ">
224
+            <el-form-item label="管路凝血: " :prop="isName('管路凝血')"
225
+              :rules="isCheckmust('管路凝血')">
206 226
               <el-input
207 227
                 v-model="form.pip_coagulation"
208 228
                 readonly
@@ -212,7 +232,8 @@
212 232
           </el-col>
213 233
 
214 234
           <el-col :span="8" v-if="isShow('患者去向')">
215
-            <el-form-item label="患者去向: ">
235
+            <el-form-item label="患者去向: " :prop="isName('患者去向')"
236
+              :rules="isCheckmust('患者去向')">
216 237
               <el-select v-model="form.patient_gose">
217 238
                 <el-option :key="0" label="请选择" :value="0"></el-option>
218 239
                 <el-option
@@ -228,7 +249,8 @@
228 249
 
229 250
         <el-row>
230 251
           <el-col :span="8" v-if="isShow('拔针后穿刺点渗血')">
231
-            <el-form-item label="拔针后穿刺点渗血: ">
252
+            <el-form-item label="拔针后穿刺点渗血: " :prop="isName('拔针后穿刺点渗血')"
253
+              :rules="isCheckmust('拔针后穿刺点渗血')">
232 254
               <el-radio-group v-model="form.puncture_point_oozing_blood">
233 255
                 <el-radio :label="1">有</el-radio>
234 256
                 <el-radio :label="2">无</el-radio>
@@ -253,7 +275,8 @@
253 275
 
254 276
         <el-row :gutter="20" v-if="form.patient_gose == 3 && isShow('科室')">
255 277
           <el-col :span="24">
256
-            <el-form-item label="科室: ">
278
+            <el-form-item label="科室: " :prop="isName('科室')"
279
+              :rules="isCheckmust('科室')">
257 280
               <el-input
258 281
                 v-model="form.inpatient_department"
259 282
                 :rows="5"
@@ -269,7 +292,8 @@
269 292
           "
270 293
         >
271 294
           <el-col :span="24">
272
-            <el-form-item label="交待病房护士/患者/陪人观察内容: ">
295
+            <el-form-item label="交待病房护士/患者/陪人观察内容: " :prop="isName('交待病房护士/患者/陪人观察内容')"
296
+              :rules="isCheckmust('交待病房护士/患者/陪人观察内容')">
273 297
               <el-input
274 298
                 placeholder="交待病房护士/患者/陪人观察内容"
275 299
                 v-model="form.observation_content"
@@ -286,7 +310,8 @@
286 310
           v-show="form.patient_gose == 3 && isShow('其他观察内容')"
287 311
         >
288 312
           <el-col :span="24">
289
-            <el-form-item label="其他观察内容: ">
313
+            <el-form-item label="其他观察内容: " :prop="isName('其他观察内容')"
314
+              :rules="form.patient_gose == 3 && isShow('其他观察内容')?isCheckmust('其他观察内容'):[{required:false}]">
290 315
               <el-input
291 316
                 v-model="form.observation_content_other"
292 317
                 :rows="5"
@@ -296,7 +321,8 @@
296 321
         </el-row>
297 322
 
298 323
         <el-col :span="8" v-if="isShow('体温')">
299
-          <el-form-item label="体温(℃): ">
324
+          <el-form-item label="体温(℃): " :prop="isName('体温')"
325
+              :rules="isCheckmust('体温')">
300 326
             <el-input v-model="form.temperature"></el-input>
301 327
           </el-form-item>
302 328
         </el-col>
@@ -304,55 +330,64 @@
304 330
 
305 331
         <el-row :gutter="20"> -->
306 332
         <el-col :span="8" v-if="isShow('收缩压')">
307
-          <el-form-item label="收缩压(mmHg): ">
333
+          <el-form-item label="收缩压(mmHg): " :prop="isName('收缩压')"
334
+              :rules="isCheckmust('收缩压')">
308 335
             <el-input v-model="form.systolic_blood_pressure"></el-input>
309 336
           </el-form-item>
310 337
         </el-col>
311 338
         <el-col :span="8" v-if="isShow('舒张压')">
312
-          <el-form-item label="舒张压(mmHg): ">
339
+          <el-form-item label="舒张压(mmHg): " :prop="isName('舒张压')"
340
+              :rules="isCheckmust('舒张压')">
313 341
             <el-input v-model="form.diastolic_blood_pressure"></el-input>
314 342
           </el-form-item>
315 343
         </el-col>
316 344
 
317 345
 
318 346
          <el-col :span="8" v-if="isShow('卧位收缩压')">
319
-          <el-form-item label="卧位收缩压(mmHg):">
347
+          <el-form-item label="卧位收缩压(mmHg):" :prop="isName('卧位收缩压')"
348
+              :rules="isCheckmust('卧位收缩压')">
320 349
               <el-input v-model="form.supine_systolic_blood_pressure"></el-input>
321 350
           </el-form-item>
322 351
         </el-col>
323 352
 
324 353
        <el-col :span="8" v-if="isShow('卧位舒张压')">
325
-          <el-form-item label="卧位舒张压(mmHg):">
354
+          <el-form-item label="卧位舒张压(mmHg):" :prop="isName('卧位舒张压')"
355
+              :rules="isCheckmust('卧位舒张压')">
326 356
               <el-input v-model="form.supine_diastolic_blood_pressure"></el-input>
327 357
           </el-form-item>
328 358
         </el-col>
329 359
 
330 360
         <el-col :span="8" v-if="isShow('坐位收缩压')">
331
-          <el-form-item label="坐位收缩压(mmHg):">
361
+          <el-form-item label="坐位收缩压(mmHg):" :prop="isName('坐位收缩压')"
362
+              :rules="isCheckmust('坐位收缩压')">
332 363
               <el-input v-model="form.setting_pressure"></el-input>
333 364
           </el-form-item>
334 365
         </el-col>
335 366
 
336 367
          <el-col :span="8" v-if="isShow('坐位舒张压')">
337
-          <el-form-item label="坐位舒张压(mmHg):">
368
+          <el-form-item label="坐位舒张压(mmHg):" :prop="isName('坐位舒张压')"
369
+              :rules="isCheckmust('坐位舒张压')">
338 370
               <el-input v-model="form.diastolic_pressure"></el-input>
339 371
           </el-form-item>
340 372
         </el-col>
341 373
 
342 374
         <el-col :span="8" v-if="isShow('呼吸频率')">
343
-          <el-form-item label="呼吸频率(次/min): ">
375
+          <el-form-item label="呼吸频率(次/min): " :prop="isName('呼吸频率')"
376
+              :rules="isCheckmust('呼吸频率')">
344 377
             <el-input v-model="form.breathing_rate"></el-input>
345 378
           </el-form-item>
346 379
         </el-col>
347 380
 
348 381
         <el-col :span="8" v-if="isShow('脉搏')">
349
-          <el-form-item label="脉搏(次/分): ">
382
+          <el-form-item label="脉搏(次/分): " :prop="isName('脉搏')"
383
+              :rules="isCheckmust('脉搏')">
350 384
             <el-input v-model="form.pulse_frequency"></el-input>
351 385
           </el-form-item>
352 386
         </el-col>
353 387
 
354 388
         <el-col :span="8" v-if="isShow('透后症状')">
355
-          <el-form-item label="透后症状: ">
389
+          <el-form-item label="透后症状: " :prop="isName('透后症状')"
390
+              :rules="isCheckmust('透后症状')">
356 391
             <el-input
357 392
               v-model="form.symptom_after_dialysis"
358 393
               readonly
@@ -362,13 +397,15 @@
362 397
         </el-col>
363 398
 
364 399
         <el-col :span="8" v-if="isShow('透析中入量')">
365
-          <el-form-item label="透析中入量: ">
400
+          <el-form-item label="透析中入量: " :prop="isName('透析中入量')"
401
+              :rules="isCheckmust('透析中入量')">
366 402
             <el-input v-model="form.dialysis_intakes"></el-input>
367 403
           </el-form-item>
368 404
         </el-col>
369 405
 
370 406
         <el-col :span="8" v-if="isShow('透析中入量单位')">
371
-          <el-form-item label="透析中入量单位: ">
407
+          <el-form-item label="透析中入量单位: " :prop="isName('透析中入量单位')"
408
+              :rules="isCheckmust('透析中入量单位')">
372 409
             <el-select v-model="form.dialysis_intakes_unit">
373 410
               <el-option :key="0" label="请选择" :value="0"></el-option>
374 411
               <el-option
@@ -382,34 +419,40 @@
382 419
         </el-col>
383 420
 
384 421
         <el-col :span="8" v-if="isShow('回血')">
385
-          <el-form-item label="回血(ml): ">
422
+          <el-form-item label="回血(ml): " :prop="isName('回血')"
423
+              :rules="isCheckmust('回血')">
386 424
             <el-input v-model="form.return_blood"></el-input>
387 425
           </el-form-item>
388 426
         </el-col>
389 427
 
390 428
         <el-col :span="8" v-if="isShow('补液量')">
391
-          <el-form-item label="补液量(ml): ">
429
+          <el-form-item label="补液量(ml): " :prop="isName('补液量')"
430
+              :rules="isCheckmust('补液量')">
392 431
             <el-input v-model="form.rehydration_volume"></el-input>
393 432
           </el-form-item>
394 433
         </el-col>
395 434
 
396 435
         <el-col :span="8" v-if="isShow('透析中进食')">
397
-          <el-form-item label="透析中进食(ml): " v-if="template_id != 36">
436
+          <el-form-item label="透析中进食(ml): " v-if="template_id != 36" :prop="isName('透析中进食')"
437
+              :rules="isCheckmust('透析中进食')">
398 438
             <el-input v-model="form.dialysis_during"></el-input>
399 439
           </el-form-item>
400
-          <el-form-item label="透析中进食(g): " v-if="template_id == 36">
440
+          <el-form-item label="透析中进食(g): " v-if="template_id == 36" :prop="isName('透析中进食')"
441
+              :rules="isCheckmust('透析中进食')">
401 442
             <el-input v-model="form.dialysis_during"></el-input>
402 443
           </el-form-item>
403 444
         </el-col>
404 445
 
405 446
         <el-col :span="8" v-if="isShow('出量')">
406
-          <el-form-item label="出量(ml): ">
447
+          <el-form-item label="出量(ml): " :prop="isName('出量')"
448
+              :rules="isCheckmust('出量')">
407 449
             <el-input v-model="form.stroke_volume"></el-input>
408 450
           </el-form-item>
409 451
         </el-col>
410 452
 
411 453
         <el-col :span="8" v-if="isShow('血流量')">
412
-          <el-form-item label="血流量: ">
454
+          <el-form-item label="血流量: " :prop="isName('血流量')"
455
+              :rules="isCheckmust('血流量')">
413 456
             <el-select v-model="form.blood_flow">
414 457
               <el-option :key="0" label="请选择" :value="0"></el-option>
415 458
               <el-option v-for="item in this.bloodFlowOptions" :label="item.name" :value="item.id" :key="item.id"></el-option>
@@ -418,7 +461,8 @@
418 461
         </el-col>
419 462
 
420 463
         <el-col :span="8" v-if="isShow('封管液配置')">
421
-          <el-form-item label="封管液配置:">
464
+          <el-form-item label="封管液配置:" :prop="isName('封管液配置')"
465
+              :rules="isCheckmust('封管液配置')">
422 466
             <!-- <el-select v-model="form.sealing_fluid_dispose">
423 467
               <el-option :key="0" label="请选择" :value="0"></el-option>
424 468
               <el-option v-for="item in this.sealingFluidDisposeOptions" :label="item.name" :value="item.id" :key="item.id"></el-option>
@@ -432,7 +476,8 @@
432 476
         </el-col>
433 477
 
434 478
         <el-col :span="8" v-if="sealing_fluid_special_name == '特殊'&&isShow('封管液特殊')">
435
-          <el-form-item label="封管液配置(特殊): ">
479
+          <el-form-item label="封管液配置(特殊): " :prop="isName('封管液特殊')"
480
+              :rules="isCheckmust('封管液特殊')">
436 481
             <el-input v-model="form.sealing_fluid_special"></el-input>
437 482
           </el-form-item>
438 483
         </el-col>
@@ -442,17 +487,20 @@
442 487
         <el-row :gutter="20"> -->
443 488
 
444 489
         <el-col :span="8" v-if="isShow('实际置换量')">
445
-          <el-form-item v-if="this.template_id == 20 || this.template_id == 21 || this.template_id == 13" label="实际置换量(ml): ">
490
+          <el-form-item v-if="this.template_id == 20 || this.template_id == 21 || this.template_id == 13" label="实际置换量(ml): " :prop="isName('实际置换量')"
491
+              :rules="isCheckmust('实际置换量')">
446 492
             <el-input v-model="form.actual_displacement"></el-input>
447 493
           </el-form-item>
448
-          <el-form-item v-else label="实际置换量(L): ">
494
+          <el-form-item v-else label="实际置换量(L): " :prop="isName('实际置换量')"
495
+              :rules="isCheckmust('实际置换量')">
449 496
             <el-input v-model="form.actual_displacement"></el-input>
450 497
           </el-form-item>
451 498
         </el-col>
452 499
 
453 500
 
454 501
         <el-col :span="8" v-if="isShow('失衡综合症')">
455
-          <el-form-item label="失衡综合症: ">
502
+          <el-form-item label="失衡综合症: " :prop="isName('失衡综合症')"
503
+              :rules="isCheckmust('失衡综合症')">
456 504
             <el-select v-model="form.disequilibrium_syndrome">
457 505
               <el-option :key="0" label="请选择" :value="0"></el-option>
458 506
 
@@ -467,7 +515,8 @@
467 515
         </el-col>
468 516
 
469 517
         <el-col :span="8" v-if="isShow('透析期间进食')">
470
-          <el-form-item label="透析期间进食: ">
518
+          <el-form-item label="透析期间进食: " :prop="isName('透析期间进食')"
519
+              :rules="isCheckmust('透析期间进食')">
471 520
             <el-radio-group v-model="form.is_eat">
472 521
               <el-radio :label="1">有</el-radio>
473 522
               <el-radio :label="2">无</el-radio>
@@ -476,19 +525,22 @@
476 525
         </el-col>
477 526
 
478 527
         <el-col :span="8" v-if="isShow('中心静脉封管(肝素-A端)')">
479
-          <el-form-item label="中心静脉封管(肝素-A端): ">
528
+          <el-form-item label="中心静脉封管(肝素-A端): " :prop="isName('中心静脉封管(肝素-A端)')"
529
+              :rules="isCheckmust('中心静脉封管(肝素-A端)')">
480 530
             <el-input v-model="form.cvc_a"></el-input>
481 531
           </el-form-item>
482 532
         </el-col>
483 533
 
484 534
         <el-col :span="8" v-if="isShow('中心静脉封管(肝素-V端)')">
485
-          <el-form-item label="中心静脉封管(肝素-V端): ">
535
+          <el-form-item label="中心静脉封管(肝素-V端): " :prop="isName('中心静脉封管(肝素-V端)')"
536
+              :rules="isCheckmust('中心静脉封管(肝素-V端)')">
486 537
             <el-input v-model="form.cvc_v"></el-input>
487 538
           </el-form-item>
488 539
         </el-col>
489 540
 
490 541
         <el-col :span="8" v-if="isShow('管路')">
491
-          <el-form-item label="管路: ">
542
+          <el-form-item label="管路: " :prop="isName('管路')"
543
+              :rules="isCheckmust('管路')">
492 544
             <el-select v-model="form.channel">
493 545
               <el-option :key="0" label="请选择" :value="0"></el-option>
494 546
               <el-option
@@ -502,25 +554,29 @@
502 554
         </el-col>
503 555
 
504 556
         <el-col :span="8" v-if="isShow('实际抗凝剂用量')">
505
-          <el-form-item label="实际抗凝剂用量: ">
557
+          <el-form-item label="实际抗凝剂用量: " :prop="isName('实际抗凝剂用量')"
558
+              :rules="isCheckmust('实际抗凝剂用量')">
506 559
               <el-input v-model="form.dosage_of_anticoagulants"></el-input>
507 560
           </el-form-item>
508 561
         </el-col>
509 562
 
510 563
 
511 564
         <el-col :span="8" v-if="isShow('并发症其他')">
512
-          <el-form-item label="并发症其他: ">
565
+          <el-form-item label="并发症其他: " :prop="isName('并发症其他')"
566
+              :rules="isCheckmust('并发症其他')">
513 567
             <el-input v-model="form.other_complication"></el-input>
514 568
           </el-form-item>
515 569
         </el-col>
516 570
 
517 571
         <el-col :span="8" v-if="isShow('URR')">
518
-            <el-form-item label="URR:">
572
+            <el-form-item label="URR:" :prop="isName('URR')"
573
+              :rules="isCheckmust('URR')">
519 574
                <el-input v-model="form.urr"></el-input>
520 575
             </el-form-item>
521 576
         </el-col>
522 577
         <el-col :span="8" v-if="isShow('透析相关高血压')">
523
-            <el-form-item label="透析相关高血压:">
578
+            <el-form-item label="透析相关高血压:" :prop="isName('透析相关高血压')"
579
+              :rules="isCheckmust('透析相关高血压')">
524 580
 
525 581
              <el-select v-model="form.hypertenison">
526 582
               <el-option :key="0" label="请选择" :value="0"></el-option>
@@ -534,7 +590,8 @@
534 590
             </el-form-item>
535 591
         </el-col>
536 592
          <el-col :span="8" v-if="isShow('透析相关低血压')">
537
-            <el-form-item label="透析相关低血压">
593
+            <el-form-item label="透析相关低血压" :prop="isName('透析相关低血压')"
594
+              :rules="isCheckmust('透析相关低血压')">
538 595
              <el-select v-model="form.hypopiesia">
539 596
               <el-option
540 597
                 v-for="item in optionOne"
@@ -546,7 +603,8 @@
546 603
             </el-form-item>
547 604
         </el-col>
548 605
         <el-col :span="8" v-if="isShow('离科方式')">
549
-            <el-form-item label="离科方式">
606
+            <el-form-item label="离科方式" :prop="isName('离科方式')"
607
+              :rules="isCheckmust('离科方式')">
550 608
                <el-select v-model="form.leave_office_method">
551 609
                 <el-option
552 610
                   v-for="item in leaveOfficeMethod"
@@ -558,7 +616,8 @@
558 616
             </el-form-item>
559 617
         </el-col>
560 618
          <el-col :span="8" v-if="isShow('转归')">
561
-            <el-form-item label="转归">
619
+            <el-form-item label="转归" :prop="isName('转归')"
620
+              :rules="isCheckmust('转归')">
562 621
              <el-select v-model="form.lapse">
563 622
               <el-option
564 623
                 v-for="item in lapseList"
@@ -570,7 +629,8 @@
570 629
             </el-form-item>
571 630
         </el-col>
572 631
         <el-col :span="8" v-if="isShow('意识')">
573
-            <el-form-item label="意识">
632
+            <el-form-item label="意识" :prop="isName('意识')"
633
+              :rules="isCheckmust('意识')">
574 634
              <el-select v-model="form.consciousness">
575 635
               <el-option
576 636
                 v-for="item in consciousnessList"
@@ -582,7 +642,8 @@
582 642
             </el-form-item>
583 643
         </el-col>
584 644
         <el-col :span="8" v-if="isShow('跌倒风险')">
585
-            <el-form-item label="跌倒风险">
645
+            <el-form-item label="跌倒风险" :prop="isName('跌倒风险')"
646
+              :rules="isCheckmust('跌倒风险')">
586 647
              <el-select v-model="form.fallrisk">
587 648
               <el-option
588 649
                 v-for="item in fallriskList"
@@ -595,7 +656,8 @@
595 656
         </el-col>
596 657
 
597 658
       <el-col :span="8" v-if="isShow('机器运行')">
598
-            <el-form-item label="机器运行: ">
659
+            <el-form-item label="机器运行: " :prop="isName('机器运行')"
660
+              :rules="isCheckmust('机器运行')">
599 661
               <el-select v-model="form.machine_run">
600 662
                 <el-option :key="0" label="请选择" :value="0"></el-option>
601 663
 
@@ -610,17 +672,20 @@
610 672
        </el-col>
611 673
 
612 674
        <el-col :span="8" v-if="isShow('透后尿素')">
613
-            <el-form-item label="透后尿素(mmol/L):" label-width="150px">
675
+            <el-form-item label="透后尿素(mmol/L):" :prop="isName('透后尿素')"
676
+              :rules="isCheckmust('透后尿素')" label-width="150px">
614 677
               <el-input v-model="form.after_urea"></el-input>
615 678
             </el-form-item>
616 679
        </el-col>
617 680
        <el-col :span="8" v-if="isShow('累计血容量')">
618
-            <el-form-item label="累计血容量(L):"  label-width="150px">
681
+            <el-form-item label="累计血容量(L):" :prop="isName('累计血容量')"
682
+              :rules="isCheckmust('累计血容量')"  label-width="150px">
619 683
               <el-input v-model="form.accumulated_blood_volume"></el-input>
620 684
             </el-form-item>
621 685
         </el-col>
622 686
         <el-col :span="24" v-if="isShow('KT/V')">
623
-            <el-form-item label="KT/V:">
687
+            <el-form-item label="KT/V:" :prop="isName('KT/V')"
688
+              :rules="isCheckmust('KT/V')">
624 689
               <el-input type="textarea" :rows="4" v-model="form.ktv"></el-input>
625 690
             </el-form-item>
626 691
         </el-col>
@@ -631,11 +696,12 @@
631 696
 
632 697
       <span slot="footer" class="dialog-footer">
633 698
         <el-button @click="hide">取 消</el-button>
699
+        <!-- v-if="hasPermission" -->
634 700
         <el-button
635 701
           type="primary"
636
-          @click="submitForm"
702
+          @click="submitForm('form')"
637 703
           :loading="loading"
638
-          v-if="hasPermission"
704
+          
639 705
           >保 存</el-button
640 706
         >
641 707
       </span>
@@ -935,9 +1001,50 @@ export default {
935 1001
     }
936 1002
   },
937 1003
   methods: {
938
-    submitForm() {
939
-      this.loading = true
940
-      const ParamsQuery = {}
1004
+    isName(name) {
1005
+      let filedList = store.getters.xt_user.fileds;
1006
+      for (let i = 0; i < filedList.length; i++) {
1007
+        // if (filedList[i].module == 5&&filedList[i].filed_name_cn == '实际治疗时长'){console.log(filedList[i],'存储中的数据')}
1008
+        if (filedList[i].module == 5 && filedList[i].filed_name_cn == name) {
1009
+          return filedList[i].filed_name;
1010
+        }
1011
+      }
1012
+    },
1013
+
1014
+    isCheckmust(name) {
1015
+      let filedList = store.getters.xt_user.fileds;
1016
+      for (let i = 0; i < filedList.length; i++) {
1017
+        if (
1018
+          filedList[i].module == 5 &&
1019
+          filedList[i].filed_name_cn == name &&
1020
+          filedList[i].is_write == 1
1021
+        ) {
1022
+          // console.log(filedList[i].is_write,'false')
1023
+          return [{ required: true ,message:`请输入${name}`,trigger: ['blur','change'] }];
1024
+        }
1025
+          if (
1026
+          (name == "患者去向"&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1027
+          (name == "静脉导管"&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1028
+          (name=="内瘘管拔针后压迫止血操作"&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1029
+          (name=='穿刺处血肿'&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1030
+          (name=='透析过程'&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1031
+          (name=='静脉管道'&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1032
+          (name=="动脉管道"&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)||
1033
+          (name=='拔针后穿刺点渗血'&&filedList[i].filed_name_cn == name&&filedList[i].is_write == 1&&filedList[i].module == 5)
1034
+        ) {
1035
+          return [
1036
+            { required: true, message: `请输入${name}`,trigger: ['blur','change'] },
1037
+            { required: true, pattern: /^[1-9]\d*$/, message: `请输入${name}`,trigger: ['blur','change'] },
1038
+          ];
1039
+        }
1040
+      }
1041
+    },
1042
+    submitForm(formName) {
1043
+      console.log(this.form,'oooppp')
1044
+        this.$refs[formName].validate((valid) => {
1045
+      if (valid) {
1046
+              this.loading = true
1047
+              const ParamsQuery = {}
941 1048
 
942 1049
       if (!(this.patient.id > 0)) {
943 1050
         this.$message.error('没有选择患者')
@@ -1038,6 +1145,7 @@ export default {
1038 1145
       data["accumulated_blood_volume"] = this.form.accumulated_blood_volume
1039 1146
       console.log("Paramsquery",data)
1040 1147
 
1148
+
1041 1149
       postAssessmentAfterDislysis(ParamsQuery, data)
1042 1150
         .then(response => {
1043 1151
           this.loading = false
@@ -1066,6 +1174,13 @@ export default {
1066 1174
         .catch(v => {
1067 1175
           this.loading = false
1068 1176
         })
1177
+          } else {
1178
+            console.log('error submit!!');
1179
+            return false;
1180
+          }
1181
+        });
1182
+
1183
+
1069 1184
     },
1070 1185
     showDialog: function(val) {
1071 1186
       this.InnerDialogProps.visibility = true
@@ -1145,9 +1260,15 @@ export default {
1145 1260
       }
1146 1261
     },
1147 1262
     selectActualTreatmentHour(val) {
1148
-      var valTime = val.split(':')
1263
+      if(val){
1264
+      let valTime = val.split(':')
1149 1265
       this.form.actual_treatment_hour = valTime[0]
1150 1266
       this.form.actual_treatment_minute = valTime[1]
1267
+      }else{
1268
+        this.form.actual_treatment_hour = ''
1269
+        this.form.actual_treatment_minute =''
1270
+      }
1271
+      
1151 1272
     },
1152 1273
     DialogComfirm: function(val) {
1153 1274
       this.InnerDialogProps.visibility = false

+ 238 - 108
src/xt_pages/dialysis/details/dialog/acceptsTreatmentDialog.vue View File

@@ -7,66 +7,93 @@
7 7
     width="854px"
8 8
   >
9 9
     <div class="warnTxt" v-if="showTxt != ''">{{ showTxt }}</div>
10
-    <el-form :model="receiveTreatmentAsses" label-width="80px">
11
-      <el-form-item label="入室方式 : " v-if="isShow('入室方式')">
12
-        <!--<el-radio-group v-model="receiveTreatmentAsses.way">-->
10
+    <el-form
11
+      :model="receiveTreatmentAsses"
12
+      ref="receiveTreatmentAsses"
13
+      label-width="86px"
14
+    >
15
+      <el-form-item
16
+        label="入室方式 : "
17
+        :prop="isName('入室方式')"
18
+        :rules="isCheckmust('入室方式')"
19
+        v-if="isShow('入室方式')"
20
+      >
21
+        <el-radio-group v-model="receiveTreatmentAsses.way">
13 22
         <el-radio
14 23
           v-for="(item, index) in way_arr"
15 24
           :key="index"
16 25
           :label="item.id"
17
-          v-model="receiveTreatmentAsses.way"
18 26
           >{{ item.name }}
19 27
         </el-radio>
20
-        <!--</el-radio-group>-->
28
+        </el-radio-group>
21 29
       </el-form-item>
22
-      <el-form-item label="病人意识 : " v-if="isShow('病人意识')">
23
-        <!--<el-radio-group v-model="receiveTreatmentAsses.consciousness">-->
30
+      <el-form-item
31
+        label="病人意识 : "
32
+        v-if="isShow('病人意识')"
33
+        :prop="isName('病人意识')"
34
+        :rules="isCheckmust('病人意识')"
35
+      >
36
+        <el-radio-group v-model="receiveTreatmentAsses.consciousness">
24 37
         <el-radio
25 38
           v-for="(item, index) in consciousness_arr"
26 39
           :key="index"
27 40
           :label="item.id"
28
-          v-model="receiveTreatmentAsses.consciousness"
29 41
           >{{ item.name }}
30 42
         </el-radio>
31
-        <!--</el-radio-group>-->
43
+        </el-radio-group>
32 44
 
33 45
         <!--<el-radio v-model="receiveTreatmentAsses.consciousness" label="1">清醒</el-radio>-->
34 46
         <!--<el-radio v-model="receiveTreatmentAsses.consciousness" label="2">嗜睡</el-radio>-->
35 47
         <!--<el-radio v-model="receiveTreatmentAsses.consciousness" label="3">昏迷</el-radio>-->
36 48
         <!--<el-radio v-model="receiveTreatmentAsses.consciousness" label="4">模糊</el-radio>-->
37 49
       </el-form-item>
38
-      <el-form-item label="病人食欲 : " v-if="isShow('病人食欲')">
50
+      <el-form-item
51
+        label="病人食欲 : "
52
+        :prop="isName('病人食欲')"
53
+        :rules="isCheckmust('病人食欲')"
54
+        v-if="isShow('病人食欲')"
55
+      >
56
+      <el-radio-group v-model="receiveTreatmentAsses.appetite">
39 57
         <el-radio
40 58
           v-for="(item, index) in appetite_arr"
41 59
           :key="index"
42 60
           :label="item.id"
43
-          v-model="receiveTreatmentAsses.appetite"
44 61
           >{{ item.name }}
45 62
         </el-radio>
46
-
63
+      </el-radio-group>
47 64
         <!--<el-radio v-model="receiveTreatmentAsses.appetite" label="1">正常</el-radio>-->
48 65
         <!--<el-radio v-model="receiveTreatmentAsses.appetite" label="2">减退</el-radio>-->
49 66
         <!--<el-radio v-model="receiveTreatmentAsses.appetite" label="3">恶心</el-radio>-->
50 67
         <!--<el-radio v-model="receiveTreatmentAsses.appetite" label="4">呕吐</el-radio>-->
51 68
         <!--<el-radio v-model="receiveTreatmentAsses.appetite" label="5">腹泻</el-radio>-->
52 69
       </el-form-item>
53
-      <el-form-item label="病人情况 : " v-if="isShow('病人情况')">
54
-        <el-radio v-model="receiveTreatmentAsses.condition" label="1"
70
+      <el-form-item
71
+        label="病人情况 : "
72
+        prop="condition"
73
+        :rules="isCheckmust('病人情况')"
74
+        v-if="isShow('病人情况')"
75
+      >
76
+      <el-radio-group v-model="receiveTreatmentAsses.condition">
77
+        <el-radio label="1"
55 78
           >住院</el-radio
56 79
         >
57
-        <el-radio v-model="receiveTreatmentAsses.condition" label="2"
80
+        <el-radio label="2"
58 81
           >门诊</el-radio
59 82
         >
60
-        <el-radio v-model="receiveTreatmentAsses.condition" label="3"
83
+        <el-radio label="3"
61 84
           >手术期</el-radio
62 85
         >
63
-        <el-radio v-model="receiveTreatmentAsses.condition" label="4"
86
+        <el-radio label="4"
64 87
           >急诊</el-radio
65 88
         >
89
+      </el-radio-group>
90
+
66 91
       </el-form-item>
67 92
 
68 93
       <el-form-item
69 94
         label="住院号 : "
95
+        :prop="isName('住院号')"
96
+        :rules="isCheckmust('住院号')"
70 97
         v-if="this.receiveTreatmentAsses.condition == '1'"
71 98
       >
72 99
         <el-input v-model="receiveTreatmentAsses.admission_number"></el-input>
@@ -74,43 +101,63 @@
74 101
 
75 102
       <el-form-item
76 103
         label="住院科室 : "
77
-        v-if="isShow('住院科室')&&this.receiveTreatmentAsses.condition == '1'"
104
+        :prop="isName('住院科室')"
105
+        :rules="isCheckmust('住院科室')"
106
+        v-if="isShow('住院科室') && this.receiveTreatmentAsses.condition == '1'"
78 107
       >
79 108
         <el-input v-model="receiveTreatmentAsses.his_department"></el-input>
80 109
       </el-form-item>
81
-      
110
+
82 111
       <el-form-item
83 112
         label="住院床位 : "
84
-        v-if="isShow('住院床位')&&this.receiveTreatmentAsses.condition == '1'"
113
+        :prop="isName('住院床位')"
114
+        :rules="isCheckmust('住院床位')"
115
+        v-if="isShow('住院床位') && this.receiveTreatmentAsses.condition == '1'"
85 116
       >
86 117
         <el-input v-model="receiveTreatmentAsses.his_bed"></el-input>
87 118
       </el-form-item>
88
-      
89 119
 
90 120
       <el-form-item
91
-        label="诊断:" v-if="isShow('诊断') && this.receiveTreatmentAsses.condition == '1'"
121
+        label="诊断:"
122
+        :prop="isName('诊断')"
123
+        :rules="isCheckmust('诊断')"
124
+        v-if="isShow('诊断') && this.receiveTreatmentAsses.condition == '1'"
92 125
       >
93 126
         <el-input v-model="receiveTreatmentAsses.diacrisis"></el-input>
94 127
       </el-form-item>
95 128
 
96
-      <el-form-item label="体位 : " v-if="isShow('体位')">
97
-        <el-radio
129
+      <el-form-item
130
+        label="体位 : "
131
+        :prop="isName('体位')"
132
+        :rules="isCheckmust('体位')"
133
+        v-if="isShow('体位')"
134
+      >
135
+      <el-radio-group v-model="receiveTreatmentAsses.posture">
136
+           <el-radio
98 137
           v-for="(item, index) in posture_arr"
99 138
           :key="index"
100 139
           :label="item.id"
101
-          v-model="receiveTreatmentAsses.posture"
102 140
           >{{ item.name }}
103 141
         </el-radio>
142
+      </el-radio-group>
143
+     
104 144
       </el-form-item>
105 145
 
106
-      <el-form-item label="病情: " v-if="isShow('病情')">
146
+      <el-form-item
147
+        label="病情: "
148
+        :prop="isName('病情')"
149
+        :rules="isCheckmust('病情')"
150
+        v-if="isShow('病情')"
151
+      >
152
+      <el-radio-group v-model="receiveTreatmentAsses.sick_condition">
107 153
         <el-radio
108 154
           v-for="(item, index) in sick_condition_arr"
109 155
           :key="index"
110 156
           :label="item.id"
111
-          v-model="receiveTreatmentAsses.sick_condition"
112 157
           >{{ item.name }}
113 158
         </el-radio>
159
+      </el-radio-group>
160
+
114 161
         <!--<el-radio v-model="receiveTreatmentAsses.sick_condition" label="1">一般</el-radio>-->
115 162
         <!--<el-radio v-model="receiveTreatmentAsses.sick_condition" label="2">严重</el-radio>-->
116 163
         <!--<el-radio v-model="receiveTreatmentAsses.sick_condition" label="3">危</el-radio>-->
@@ -119,6 +166,8 @@
119 166
       <el-form-item
120 167
         label-width="100px"
121 168
         label="其他病情 : "
169
+        :prop="isName('其他病情')"
170
+        :rules="isCheckmust('其他病情')"
122 171
         v-if="isShow('其他病情')"
123 172
       >
124 173
         <el-input
@@ -129,6 +178,8 @@
129 178
       <el-form-item
130 179
         label-width="150px"
131 180
         label="跌倒风险评估评分 : "
181
+        :prop="isName('跌倒风险评估评分')"
182
+        :rules="isCheckmust('跌倒风险评估评分')"
132 183
         v-if="isShow('跌倒风险评估评分')"
133 184
       >
134 185
         <el-input
@@ -137,24 +188,34 @@
137 188
         ></el-input>
138 189
       </el-form-item>
139 190
 
140
-      <el-form-item label="风险程度: " v-if="isShow('风险程度')">
141
-        <el-radio v-model="receiveTreatmentAsses.danger_level" label="1"
191
+      <el-form-item
192
+        label="风险程度: "
193
+        :prop="isName('风险程度')"
194
+        :rules="isCheckmust('风险程度')"
195
+        v-if="isShow('风险程度')"
196
+      >
197
+      <el-radio-group v-model="receiveTreatmentAsses.danger_level">
198
+        <el-radio label="1"
142 199
           >无</el-radio
143 200
         >
144
-        <el-radio v-model="receiveTreatmentAsses.danger_level" label="2"
201
+        <el-radio label="2"
145 202
           >低风险</el-radio
146 203
         >
147
-        <el-radio v-model="receiveTreatmentAsses.danger_level" label="3"
204
+        <el-radio label="3"
148 205
           >中度风险</el-radio
149 206
         >
150
-        <el-radio v-model="receiveTreatmentAsses.danger_level" label="4"
207
+        <el-radio label="4"
151 208
           >高风险</el-radio
152 209
         >
210
+      </el-radio-group>
211
+ 
153 212
       </el-form-item>
154 213
 
155 214
       <el-form-item
156 215
         label-width="150px"
157 216
         label="跌倒风险预防措施: "
217
+        :prop="isName('跌倒风险预防措施')"
218
+        :rules="isCheckmust('跌倒风险预防措施')"
158 219
         v-if="isShow('跌倒风险预防措施')"
159 220
       >
160 221
         <!--        <el-radio-->
@@ -164,6 +225,7 @@
164 225
         <!--          v-model="receiveTreatmentAsses.precaution"-->
165 226
         <!--          >{{ item.name }}-->
166 227
         <!--        </el-radio>-->
228
+        
167 229
         <el-checkbox-group v-model="precautionTwo">
168 230
           <el-checkbox
169 231
             v-for="item in precaution_arr"
@@ -176,53 +238,75 @@
176 238
       <el-form-item
177 239
         label-width="200px"
178 240
         label="其他跌倒风险预防措施 : "
241
+        :prop="isName('其他跌倒风险预防措施')"
242
+        :rules="isCheckmust('其他跌倒风险预防措施')"
179 243
         v-if="isShow('其他跌倒风险预防措施')"
180 244
       >
181 245
         <el-input v-model="receiveTreatmentAsses.precaution_other"></el-input>
182 246
       </el-form-item>
183 247
 
184
-      <el-form-item label="摄入量: " v-if="isShow('摄入量')">
248
+      <el-form-item
249
+        label="摄入量: "
250
+        :prop="isName('摄入量')"
251
+        :rules="isCheckmust('摄入量')"
252
+        v-if="isShow('摄入量')"
253
+      >
185 254
         <!--<el-radio v-model="receiveTreatmentAsses.intake" label="1">正常</el-radio>-->
186 255
         <!--<el-radio v-model="receiveTreatmentAsses.intake" label="2">减少</el-radio>-->
187
-
256
+       <el-radio-group v-model="receiveTreatmentAsses.intake">
188 257
         <el-radio
189 258
           v-for="(item, index) in intake_arr"
190 259
           :key="index"
191 260
           :label="item.id"
192
-          v-model="receiveTreatmentAsses.intake"
193 261
           >{{ item.name }}
194 262
         </el-radio>
263
+       </el-radio-group>
264
+
195 265
       </el-form-item>
196
-      <el-form-item label="营养状况: " v-if="isShow('营养状况')">
266
+      <el-form-item
267
+        label="营养状况: "
268
+        :prop="isName('营养状况')"
269
+        :rules="isCheckmust('营养状况')"
270
+        v-if="isShow('营养状况')"
271
+      >
197 272
         <!--<el-radio v-model="receiveTreatmentAsses.nutrition" label="1">正常</el-radio>-->
198 273
         <!--<el-radio v-model="receiveTreatmentAsses.nutrition" label="2">营养不良</el-radio>-->
199
-
274
+        <el-radio-group v-model="receiveTreatmentAsses.nutrition">
200 275
         <el-radio
201 276
           v-for="(item, index) in nutrition_arr"
202 277
           :key="index"
203 278
           :label="item.id"
204
-          v-model="receiveTreatmentAsses.nutrition"
205 279
           >{{ item.name }}
206 280
         </el-radio>
281
+        </el-radio-group>
282
+
207 283
       </el-form-item>
208
-      <el-form-item label="心理评估: " v-if="isShow('心理评估')">
284
+      <el-form-item
285
+        label="心理评估: "
286
+        :prop="isName('心理评估')"
287
+        :rules="isCheckmust('心理评估')"
288
+        v-if="isShow('心理评估')"
289
+      >
290
+      <el-radio-group v-model="receiveTreatmentAsses.psychological_assessment">
209 291
         <el-radio
210
-          v-model="receiveTreatmentAsses.psychological_assessment"
211 292
           label="1"
212 293
           >正常</el-radio
213 294
         >
214 295
         <el-radio
215
-          v-model="receiveTreatmentAsses.psychological_assessment"
216 296
           label="2"
217 297
           >异常</el-radio
218 298
         >
299
+      </el-radio-group>
300
+
219 301
       </el-form-item>
220 302
       <el-form-item
221 303
         label-width="150px"
222 304
         label="心理评估异常情况 : "
305
+        :prop="isName('心理评估异常情况')"
306
+        :rules="isCheckmust('心理评估异常情况')"
223 307
         v-if="
224 308
           isShow('心理评估异常情况') &&
225
-            receiveTreatmentAsses.psychological_assessment == 2
309
+          receiveTreatmentAsses.psychological_assessment == 2
226 310
         "
227 311
       >
228 312
         <el-input
@@ -233,27 +317,31 @@
233 317
       <el-form-item
234 318
         label-width="150px"
235 319
         label="其他心理评估 : "
320
+        :prop="isName('其他心理评估')"
321
+        :rules="isCheckmust('其他心理评估')"
236 322
         v-if="isShow('其他心理评估')"
237 323
       >
238 324
         <el-input
239 325
           v-model="receiveTreatmentAsses.psychological_other"
240 326
         ></el-input>
241 327
       </el-form-item>
242
-        <el-form-item label="是否跌倒: " v-if="isShow('是否跌倒')">
243
-        <el-radio
244
-          v-model="receiveTreatmentAsses.tumble"
245
-          label="1"
246
-          >是</el-radio>
247
-        <el-radio
248
-          v-model="receiveTreatmentAsses.tumble"
249
-          label="2"
250
-          >否
251
-        </el-radio>
328
+      <el-form-item
329
+        label="是否跌倒: "
330
+        :prop="isName('是否跌倒')"
331
+        :rules="isCheckmust('是否跌倒')"
332
+        v-if="isShow('是否跌倒')"
333
+      >
334
+      <el-radio-group v-model="receiveTreatmentAsses.tumble">
335
+        <el-radio label="1">是</el-radio>
336
+        <el-radio label="2">否</el-radio>
337
+      </el-radio-group>
338
+
252 339
       </el-form-item>
253 340
     </el-form>
254 341
     <div slot="footer" class="dialog-footer">
255 342
       <el-button @click="handleCancle">取 消</el-button>
256
-      <el-button type="primary" v-if="hasPermission" @click="handleComfirm"
343
+      <!--v-if="hasPermission" -->
344
+      <el-button type="primary"  @click="handleComfirm('receiveTreatmentAsses')"
257 345
         >保 存</el-button
258 346
       >
259 347
     </div>
@@ -265,8 +353,7 @@ import { postAccepts } from "@/api/dialysis";
265 353
 import { uParseTime } from "@/utils/tools";
266 354
 import store from "@/store";
267 355
 import { getDataConfig } from "@/utils/data";
268
-import { parseTime } from '@/utils'
269
-
356
+import { parseTime } from "@/utils";
270 357
 import request from "@/utils/request";
271 358
 
272 359
 export default {
@@ -303,12 +390,12 @@ export default {
303 390
         precaution: "",
304 391
         precaution_other: "",
305 392
         admission_number: "",
306
-        diacrisis:"",
307
-        tumble:"",
308
-        his_department:"",
309
-        his_bed:"",
393
+        diacrisis: "",
394
+        tumble: "",
395
+        his_department: "",
396
+        his_bed: "",
310 397
       },
311
-      precautionTwo: []
398
+      precautionTwo: [],
312 399
     };
313 400
   },
314 401
   methods: {
@@ -326,9 +413,9 @@ export default {
326 413
       return false;
327 414
     },
328 415
     show(accepts) {
329
-      console.log("accepts333333",accepts)
330
-      if(accepts.id > 0){
331
-        accepts.tumble = accepts.tumble.toString()
416
+      console.log("accepts333333", accepts);
417
+      if (accepts.id > 0) {
418
+        accepts.tumble = accepts.tumble.toString();
332 419
       }
333 420
       this.accepts = accepts;
334 421
       // console.log("accepts", accepts);
@@ -359,9 +446,8 @@ export default {
359 446
           this.receiveTreatmentAsses[index] =
360 447
             this.receiver_treatment_access[index] + "";
361 448
         } else {
362
-          this.receiveTreatmentAsses[index] = this.receiver_treatment_access[
363
-            index
364
-          ];
449
+          this.receiveTreatmentAsses[index] =
450
+            this.receiver_treatment_access[index];
365 451
         }
366 452
       }
367 453
       this.isVisibility = true;
@@ -369,10 +455,10 @@ export default {
369 455
     hide() {
370 456
       this.isVisibility = false;
371 457
     },
372
-    handleCancle: function() {
458
+    handleCancle: function () {
373 459
       this.isVisibility = false;
374 460
     },
375
-    handleComfirm: function() {
461
+    handleComfirm: function (formName) {
376 462
       var arr = [];
377 463
       for (let i = 0; i < this.precaution_arr.length; i++) {
378 464
         for (let j = 0; j < this.precautionTwo.length; j++) {
@@ -399,36 +485,79 @@ export default {
399 485
           ParamsQuery["mode"] = "3";
400 486
         }
401 487
       }
402
-      // console.log("数据", this.precautionTwo);
403
-      postAccepts(ParamsQuery).then(response => {
404
-        if (response.data.state == 0) {
405
-          this.$message.error(response.data.msg);
406
-          return false;
407
-        } else {
408
-          this.$notify({
409
-            title: "成功",
410
-            message: "提交成功",
411
-            type: "success",
412
-            duration: 2000
413
-          });
488
+      console.log("数据", ParamsQuery);
489
+      this.$refs[formName].validate((valid) => {
490
+        if (valid) {
491
+          postAccepts(ParamsQuery).then((response) => {
492
+            if (response.data.state == 0) {
493
+              this.$message.error(response.data.msg);
494
+              return false;
495
+            } else {
496
+              this.$notify({
497
+                title: "成功",
498
+                message: "提交成功",
499
+                type: "success",
500
+                duration: 2000,
501
+              });
414 502
 
415
-          let receive_treatment_asses_resp =
416
-            response.data.data.receiveTreatmentAsses;
503
+              let receive_treatment_asses_resp =
504
+                response.data.data.receiveTreatmentAsses;
417 505
 
418
-          //pror
419
-          var receiver_treatment_access = this.receiver_treatment_access;
420
-          for (var index in receive_treatment_asses_resp) {
421
-            // receiver_treatment_access[index] = receive_treatment_asses_resp[index];
422
-            this.$set(
423
-              receiver_treatment_access,
424
-              index,
425
-              receive_treatment_asses_resp[index]
426
-            );
427
-          }
428
-          this.hide();
506
+              //pror
507
+              var receiver_treatment_access = this.receiver_treatment_access;
508
+              for (var index in receive_treatment_asses_resp) {
509
+                // receiver_treatment_access[index] = receive_treatment_asses_resp[index];
510
+                this.$set(
511
+                  receiver_treatment_access,
512
+                  index,
513
+                  receive_treatment_asses_resp[index]
514
+                );
515
+              }
516
+              this.hide();
517
+            }
518
+          });
519
+        } else {
520
+          console.log("error submit!!");
521
+          return false;
429 522
         }
430 523
       });
431 524
     },
525
+    isName(name) {
526
+      let filedList = store.getters.xt_user.fileds;
527
+      for (let i = 0; i < filedList.length; i++) {
528
+        if (filedList[i].module == 2 && filedList[i].filed_name_cn == name) {
529
+          return filedList[i].filed_name;
530
+        }
531
+      }
532
+    },
533
+
534
+    isCheckmust(name) {
535
+      let filedList = store.getters.xt_user.fileds;
536
+      for (let i = 0; i < filedList.length; i++) {
537
+        // if (
538
+        //   filedList[i].module == 2){console.log(filedList[i],'filedList[i]')}
539
+        if (
540
+          filedList[i].module == 2 &&
541
+          filedList[i].filed_name_cn == name &&
542
+          filedList[i].is_write == 1
543
+        ) {
544
+          if (name == "风险程度"||name == "病人情况"||name == '心理评估') {
545
+          return [
546
+            { required: true, message: `请输入${name}`,trigger: ['blur','change'] },
547
+            {
548
+              required: true,
549
+              pattern: /^[1-9]\d*$/,
550
+              message: `请输入${name}`,
551
+              trigger: ['blur','change']
552
+            },
553
+          ];
554
+        }
555
+          return [{ required: true, message: `请输入${name}`,trigger: ['blur','change'] }];
556
+        }
557
+
558
+        
559
+      }
560
+    },
432 561
     getPermission() {
433 562
       request
434 563
         .get("/api/func_per/get", {
@@ -436,10 +565,10 @@ export default {
436 565
             create_url: "/api/dialysis/accepts?mode=1",
437 566
             modify_url: "/api/dialysis/accepts?mode=2",
438 567
             modify_other_url: "/api/dialysis/accepts?mode=3",
439
-            module: 2
440
-          }
568
+            module: 2,
569
+          },
441 570
         })
442
-        .then(res => {
571
+        .then((res) => {
443 572
           // console.log(res);
444 573
           //console.log("接诊", this.accepts);
445 574
           if (res.data.state == 0) {
@@ -468,7 +597,7 @@ export default {
468 597
             }
469 598
           }
470 599
         });
471
-    }
600
+    },
472 601
   },
473 602
   props: {
474 603
     receiver_treatment_access: {
@@ -476,33 +605,34 @@ export default {
476 605
       type: Object,
477 606
       default: () => {
478 607
         return { id: 0 };
479
-      }
608
+      },
480 609
     },
481 610
     patient: {
482 611
       // 患者信息
483 612
       type: Object,
484 613
       default: () => {
485 614
         return { id: 0 };
486
-      }
487
-    }
615
+      },
616
+    },
488 617
   },
489 618
   watch: {
490 619
     isVisibility(val) {},
491
-    "receiver_treatment_access.id": function() {
620
+    "receiver_treatment_access.id": function () {
492 621
       if (this.receiver_treatment_access.id > 0) {
493 622
         for (var index in this.receiveTreatmentAsses) {
494
-          this.receiveTreatmentAsses[index] = this.receiver_treatment_access[
495
-            index
496
-          ];
623
+          this.receiveTreatmentAsses[index] =
624
+            this.receiver_treatment_access[index];
497 625
         }
498 626
       }
499
-    }
627
+    },
500 628
   },
501 629
   created() {
502 630
     // console.log("接诊评估", this.receiver_treatment_access);
503 631
     var date = this.$route.query && this.$route.query.date;
504
-    this.record_date = date ? uParseTime(date, "{y}-{m}-{d}") : parseTime(new Date(), '{y}-{m}-{d}');
505
-    console.log('this.record_date',this.record_date)
632
+    this.record_date = date
633
+      ? uParseTime(date, "{y}-{m}-{d}")
634
+      : parseTime(new Date(), "{y}-{m}-{d}");
635
+    console.log("this.record_date", this.record_date);
506 636
 
507 637
     this.way_arr = getDataConfig("hemodialysis", "way");
508 638
     this.consciousness_arr = getDataConfig("hemodialysis", "consciousness");
@@ -513,7 +643,7 @@ export default {
513 643
     // console.log("风险", this.precaution_arr);
514 644
     this.intake_arr = getDataConfig("hemodialysis", "intake");
515 645
     this.nutrition_arr = getDataConfig("hemodialysis", "nutrition");
516
-  }
646
+  },
517 647
 };
518 648
 </script>
519 649
 

+ 183 - 68
src/xt_pages/dialysis/details/dialog/assessmentBeforeDislysisDialog.vue View File

@@ -24,19 +24,23 @@
24 24
       <el-form ref="assessmentBeforeDislysis" :model="assessmentBeforeDislysis" label-width="125px">
25 25
         <el-row :gutter="24">
26 26
           <el-col :span="8">
27
-            <el-form-item label="透前称重(kg): " v-if="isShow('透前称重')">
27
+            <el-form-item label="透前称重(kg): " :prop="isName('透前称重')"
28
+              :rules="isCheckmust('透前称重')" v-if="isShow('透前称重')">
28 29
               <el-input type="number" v-model="assessmentBeforeDislysis.weight_before"></el-input>
29 30
             </el-form-item>
30 31
           </el-col>
31 32
 
32 33
           <el-col :span="8">
33
-            <el-form-item label="透前体重备注:" v-if="isShow('透前体重备注')">
34
+            <el-form-item label="透前体重备注:" :prop="isName('透前体重备注')"
35
+              :rules="isCheckmust('透前体重备注')" v-if="isShow('透前体重备注')">
34 36
               <el-input v-model="assessmentBeforeDislysis.weight_befor_remake"></el-input>
35 37
             </el-form-item>
36 38
           </el-col>
37 39
 
38 40
           <el-col :span="8">
39 41
             <el-form-item label="干体重(kg):"
42
+             :prop="isName('干体重')"
43
+              :rules="isCheckmust('干体重')"
40 44
                           v-if="isShow('干体重')">
41 45
               <el-input type="number" v-model="assessmentBeforeDislysis.dry_weight" readonly
42 46
                         @focus="showDryWeightDialog"></el-input>
@@ -45,19 +49,23 @@
45 49
 
46 50
           <el-col :span="8">
47 51
             <el-form-item label="身高(cm):"
52
+              prop="height"
53
+              :rules="isCheckmust('身高')"
48 54
                           v-if="isShow('身高')">
49 55
               <el-input  v-model="assessmentBeforeDislysis.height"></el-input>
50 56
             </el-form-item>
51 57
           </el-col>
52 58
 
53 59
           <el-col :span="8">
54
-            <el-form-item label="年龄(岁):" v-if="isShow('年龄')">
60
+            <el-form-item label="年龄(岁):" :prop="isName('年龄')"
61
+              :rules="isCheckmust('年龄')" v-if="isShow('年龄')">
55 62
               <el-input  v-model="assessmentBeforeDislysis.age" ></el-input>
56 63
             </el-form-item>
57 64
           </el-col>
58 65
 
59 66
           <el-col :span="8">
60
-            <el-form-item label="衣物重(kg):" v-if="isShow('衣物重')">
67
+            <el-form-item label="衣物重(kg):" :prop="isName('衣物重')"
68
+              :rules="isCheckmust('衣物重')" v-if="isShow('衣物重')">
61 69
               <el-input type="number" v-model="assessmentBeforeDislysis.additional_weight"></el-input>
62 70
             </el-form-item>
63 71
           </el-col>
@@ -69,7 +77,8 @@
69 77
 <!--          </el-col>-->
70 78
 
71 79
           <el-col :span="8">
72
-            <el-form-item label="透析机型号" v-if="isShow('透析机型号')">
80
+            <el-form-item label="透析机型号" :prop="isName('透析机型号')"
81
+              :rules="isCheckmust('透析机型号')" v-if="isShow('透析机型号')">
73 82
               <el-select v-model="assessmentBeforeDislysis.machine_type">
74 83
                 <el-option :key="0" label="请选择" :value="0"></el-option>
75 84
 
@@ -80,40 +89,47 @@
80 89
           </el-col>
81 90
 
82 91
           <el-col :span="8" v-if="isShow('透析频次')">
83
-            <el-form-item label="透析频次(次/周):" v-if="this.$store.getters.xt_user.template_info.org_id != 10243">
92
+            <el-form-item label="透析频次(次/周):" :prop="isName('透析频次')"
93
+              :rules="isCheckmust('透析频次')" v-if="this.$store.getters.xt_user.template_info.org_id != 10243">
84 94
               <el-input v-model="assessmentBeforeDislysis.dialysis_count"></el-input>
85 95
             </el-form-item>
86
-            <el-form-item label="透析频次:" v-else>
96
+            <el-form-item label="透析频次:" :prop="isName('透析频次')"
97
+              :rules="isCheckmust('透析频次')" v-else>
87 98
               <el-input v-model="assessmentBeforeDislysis.dialysis_count"></el-input>
88 99
             </el-form-item>
89 100
           </el-col>
90 101
 
91 102
 
92 103
           <el-col :span="8">
93
-            <el-form-item label="体温(℃):" v-if="isShow('体温')">
104
+            <el-form-item label="体温(℃):" :prop="isName('体温')"
105
+              :rules="isCheckmust('体温')" v-if="isShow('体温')">
94 106
               <el-input type="number" v-model="assessmentBeforeDislysis.temperature"></el-input>
95 107
             </el-form-item>
96 108
           </el-col>
97 109
 
98 110
           <el-col :span="8">
99
-            <el-form-item label="收缩压(mmHg): " v-if="isShow('收缩压')">
111
+            <el-form-item label="收缩压(mmHg): " :prop="isName('收缩压')"
112
+              :rules="isCheckmust('收缩压')" v-if="isShow('收缩压')">
100 113
               <el-input type="number" v-model="assessmentBeforeDislysis.systolic_blood_pressure"></el-input>
101 114
             </el-form-item>
102 115
           </el-col>
103 116
           <el-col :span="8">
104
-            <el-form-item label="舒张压(mmHg): " v-if="isShow('舒张压')">
117
+            <el-form-item label="舒张压(mmHg): " :prop="isName('舒张压')"
118
+              :rules="isCheckmust('舒张压')" v-if="isShow('舒张压')">
105 119
               <el-input type="number" v-model="assessmentBeforeDislysis.diastolic_blood_pressure"></el-input>
106 120
             </el-form-item>
107 121
           </el-col>
108 122
 
109 123
           <el-col :span="8">
110
-            <el-form-item label="呼吸频率(次/分):" v-if="isShow('呼吸频率')">
124
+            <el-form-item label="呼吸频率(次/分):" :prop="isName('呼吸频率')"
125
+              :rules="isCheckmust('呼吸频率')" v-if="isShow('呼吸频率')">
111 126
               <el-input  v-model="assessmentBeforeDislysis.breathing_rate"></el-input>
112 127
             </el-form-item>
113 128
           </el-col>
114 129
 
115 130
           <el-col :span="8">
116
-            <el-form-item label="脉搏(次/分):" v-if="isShow('脉搏')">
131
+            <el-form-item label="脉搏(次/分):" :prop="isName('脉搏')"
132
+              :rules="isCheckmust('脉搏')" v-if="isShow('脉搏')">
117 133
               <el-input type="number" v-model="assessmentBeforeDislysis.pulse_frequency"></el-input>
118 134
             </el-form-item>
119 135
           </el-col>
@@ -129,14 +145,16 @@
129 145
           </el-col> -->
130 146
 
131 147
           <el-col :span="8">
132
-            <el-form-item label="体液过多症状:" v-if="isShow('体液过多症状')">
148
+            <el-form-item label="体液过多症状:" :prop="isName('体液过多症状')"
149
+              :rules="isCheckmust('体液过多症状')" v-if="isShow('体液过多症状')">
133 150
               <el-input v-model="assessmentBeforeDislysis.humor_excessive_symptom" readonly
134 151
                         @focus="showInnerDialog('19')"></el-input>
135 152
             </el-form-item>
136 153
           </el-col>
137 154
 
138 155
           <el-col :span="8">
139
-            <el-form-item label="血管通路: " v-if="isShow('血管通路')">
156
+            <el-form-item label="血管通路: " :prop="isName('血管通路')"
157
+              :rules="isCheckmust('血管通路')" v-if="isShow('血管通路')">
140 158
               <el-select v-model="assessmentBeforeDislysis.blood_access_part_opera_id">
141 159
                 <el-option :key="0" label="请选择" :value="0"></el-option>
142 160
 
@@ -147,7 +165,8 @@
147 165
           </el-col>
148 166
 
149 167
           <el-col :span="8">
150
-            <el-form-item label="血管通路部位: " v-if="isShow('血管通路部位')">
168
+            <el-form-item label="血管通路部位: " :prop="isName('血管通路部位')"
169
+              :rules="isCheckmust('血管通路部位')" v-if="isShow('血管通路部位')">
151 170
               <!-- <el-select v-model="assessmentBeforeDislysis.blood_access_part_id">
152 171
                 <el-option :key="0" label="请选择" :value="0"></el-option>
153 172
 
@@ -159,14 +178,16 @@
159 178
           </el-col>
160 179
 
161 180
           <el-col :span="8">
162
-            <el-form-item label="血管通路其他部位:" v-if="isShow('血管通路其他部位')">
181
+            <el-form-item label="血管通路其他部位:" :prop="isName('血管通路其他部位')"
182
+              :rules="isCheckmust('血管通路其他部位')" v-if="isShow('血管通路其他部位')">
163 183
               <el-input v-model="assessmentBeforeDislysis.venous_catheterization_part_other"></el-input>
164 184
             </el-form-item>
165 185
           </el-col>
166 186
 
167 187
 
168 188
           <el-col :span="8">
169
-            <el-form-item label="内瘘: " v-if="isShow('内瘘')">
189
+            <el-form-item label="内瘘: " :prop="isName('内瘘')"
190
+              :rules="isCheckmust('内瘘')" v-if="isShow('内瘘')">
170 191
               <el-input v-model="assessmentBeforeDislysis.internal_fistula" readonly
171 192
                         @focus="showInnerDialog('7')"></el-input>
172 193
             </el-form-item>
@@ -178,20 +199,23 @@
178 199
 
179 200
 
180 201
           <el-col :span="8" v-if="assessmentBeforeDislysis.is_hemorrhage == 1&&isShow('其他出血情况')">
181
-            <el-form-item label="其他出血情况: ">
202
+            <el-form-item label="其他出血情况: " :prop="isName('其他出血情况')"
203
+              :rules="isCheckmust('其他出血情况')">
182 204
               <el-input v-model="assessmentBeforeDislysis.hemorrhage_other"></el-input>
183 205
             </el-form-item>
184 206
           </el-col>
185 207
 
186 208
 
187 209
           <el-col :span="8">
188
-            <el-form-item label="血管通路(内瘘)其他:" v-if="isShow('血管通路(内瘘)其他')">
210
+            <el-form-item label="血管通路(内瘘)其他:" :prop="isName('血管通路(内瘘)其他')"
211
+              :rules="isCheckmust('血管通路(内瘘)其他')" v-if="isShow('血管通路(内瘘)其他')">
189 212
               <el-input v-model="assessmentBeforeDislysis.internal_fistula_other"></el-input>
190 213
             </el-form-item>
191 214
           </el-col>
192 215
 
193 216
           <el-col :span="8" v-if="isShow('血管杂音')">
194
-            <el-form-item label="血管杂音: ">
217
+            <el-form-item label="血管杂音: " :prop="isName('血管杂音')"
218
+              :rules="isCheckmust('血管杂音')">
195 219
               <el-select v-model="assessmentBeforeDislysis.blood_access_noise">
196 220
                 <el-option :key="0" label="请选择" :value="0"></el-option>
197 221
 
@@ -207,7 +231,8 @@
207 231
 
208 232
 
209 233
           <el-col :span="8">
210
-            <el-form-item label="血管通路皮肤情况: " v-if="isShow('血管通路皮肤情况')">
234
+            <el-form-item label="血管通路皮肤情况: " :prop="isName('血管通路皮肤情况')"
235
+              :rules="isCheckmust('血管通路皮肤情况')" v-if="isShow('血管通路皮肤情况')">
211 236
               <el-input v-model="assessmentBeforeDislysis.internal_fistula_skin" readonly
212 237
                         @focus="showInnerDialog('8')"></el-input>
213 238
             </el-form-item>
@@ -216,7 +241,8 @@
216 241
 
217 242
           <el-col :span="8">
218 243
 
219
-            <el-form-item label="中心静脉置管: " v-if="isShow('中心静脉置管')">
244
+            <el-form-item label="中心静脉置管: " :prop="isName('中心静脉置管')"
245
+              :rules="isCheckmust('中心静脉置管')" v-if="isShow('中心静脉置管')">
220 246
               <el-select v-model="assessmentBeforeDislysis.venous_catheterization">
221 247
                 <el-option :key="0" label="请选择" :value="0"></el-option>
222 248
 
@@ -229,14 +255,16 @@
229 255
 
230 256
 
231 257
           <el-col :span="8">
232
-            <el-form-item label="导管: " v-if="isShow('导管')">
258
+            <el-form-item label="导管: " :prop="isName('导管')"
259
+              :rules="isCheckmust('导管')" v-if="isShow('导管')">
233 260
               <el-input v-model="assessmentBeforeDislysis.catheter" @focus="showInnerDialog('4')"></el-input>
234 261
             </el-form-item>
235 262
           </el-col>
236 263
            
237 264
 
238 265
           <el-col :span="8">
239
-            <el-form-item label="导管维护: " v-if="isShow('导管维护')">
266
+            <el-form-item label="导管维护: " :prop="isName('导管维护')"
267
+              :rules="isCheckmust('导管维护')" v-if="isShow('导管维护')">
240 268
               <el-input v-model="assessmentBeforeDislysis.catheter_maintenance" @focus="showInnerDialog('18')"></el-input>
241 269
             </el-form-item>
242 270
           </el-col>
@@ -254,7 +282,8 @@
254 282
 
255 283
           <el-row :gutter="20"> -->
256 284
           <el-col :span="8">
257
-            <el-form-item label="导管打折: " v-if="isShow('导管打折')">
285
+            <el-form-item label="导管打折: " :prop="isName('导管打折')"
286
+              :rules="isCheckmust('导管打折')" v-if="isShow('导管打折')">
258 287
               <el-select v-model="assessmentBeforeDislysis.catheter_bend">
259 288
                 <el-option :key="0" label="请选择" :value="0"></el-option>
260 289
 
@@ -281,21 +310,24 @@
281 310
           <el-row :gutter="20"> -->
282 311
 
283 312
           <el-col :span="8">
284
-            <el-form-item label="穿刺针: " v-if="isShow('穿刺针')">
313
+            <el-form-item label="穿刺针: " :prop="isName('穿刺针')"
314
+              :rules="isCheckmust('穿刺针')" v-if="isShow('穿刺针')">
285 315
               <el-input v-model="assessmentBeforeDislysis.puncture_needle" @focus="showInnerDialog('11')"></el-input>
286 316
             </el-form-item>
287 317
           </el-col>
288 318
 
289 319
 
290 320
           <el-col :span="8">
291
-            <el-form-item label="针眼: " v-if="isShow('针眼')">
321
+            <el-form-item label="针眼: " :prop="isName('针眼')"
322
+              :rules="isCheckmust('针眼')" v-if="isShow('针眼')">
292 323
               <el-input v-model="assessmentBeforeDislysis.pinholing" readonly
293 324
                         @focus="showInnerDialog('14')"></el-input>
294 325
             </el-form-item>
295 326
           </el-col>
296 327
 
297 328
           <el-col :span="8">
298
-            <el-form-item label="穿刺方式: " v-if="isShow('穿刺方式')">
329
+            <el-form-item label="穿刺方式: " :prop="isName('穿刺方式')"
330
+              :rules="isCheckmust('穿刺方式')" v-if="isShow('穿刺方式')">
299 331
               <!-- <el-select v-model="assessmentBeforeDislysis.puncture_way">
300 332
                 <el-option :key="0" label="请选择" :value="0"></el-option>
301 333
 
@@ -310,7 +342,8 @@
310 342
 
311 343
 
312 344
           <el-col :span="8">
313
-            <el-form-item label="出血: " v-if="isShow('出血')">
345
+            <el-form-item label="出血: " :prop="isName('出血')"
346
+              :rules="isCheckmust('出血')" v-if="isShow('出血')">
314 347
               <el-select v-model="assessmentBeforeDislysis.is_hemorrhage">
315 348
                 <el-option :key="0" label="请选择" :value="0"></el-option>
316 349
                 <el-option label="是" value="1"></el-option>
@@ -321,7 +354,8 @@
321 354
 
322 355
 
323 356
           <el-col :span="8" v-if="assessmentBeforeDislysis.is_hemorrhage == 1&&isShow('出血选项')">
324
-            <el-form-item label="出血选项: ">
357
+            <el-form-item label="出血选项: " :prop="isName('出血选项')"
358
+              :rules="isCheckmust('出血选项')">
325 359
               <div>
326 360
                 <el-input v-model="assessmentBeforeDislysis.hemorrhage" @focus="showInnerDialog('6')"></el-input>
327 361
               </div>
@@ -331,7 +365,8 @@
331 365
 
332 366
 
333 367
            <el-col :span="8">
334
-            <el-form-item label="血栓:" v-if="isShow('血栓')">
368
+            <el-form-item label="血栓:" :prop="isName('血栓')"
369
+              :rules="isCheckmust('血栓')" v-if="isShow('血栓')">
335 370
               <el-select v-model="assessmentBeforeDislysis.thromubus_type" @change="changeThrombus">
336 371
                 <el-option :key="0" label="请选择" :value="0"></el-option>
337 372
                 <el-option label="有" value="1"></el-option>
@@ -341,25 +376,29 @@
341 376
           </el-col>
342 377
           
343 378
           <el-col :span="8">
344
-            <el-form-item label="导管AV端约为(cm):" v-show="thrombuShow" label-width="200px">
379
+            <el-form-item label="导管AV端约为(cm):" :prop="isName('导管AV端各约')"
380
+              :rules="isCheckmust('导管AV端各约')" v-show="thrombuShow" label-width="200px">
345 381
               <el-input v-model="assessmentBeforeDislysis.thrombus_av" style="width:150px"></el-input>
346 382
             </el-form-item>
347 383
           </el-col>
348 384
 
349 385
           <el-col :span="8">
350
-            <el-form-item label="导管A端约(cm):" v-show="thrombuShow">
386
+            <el-form-item label="导管A端约(cm):" :prop="isName('导管A端约')"
387
+              :rules="isCheckmust('导管A端约')" v-show="thrombuShow">
351 388
               <el-input v-model="assessmentBeforeDislysis.thromubus_a" style="width:150px"></el-input>
352 389
             </el-form-item>
353 390
           </el-col>
354 391
 
355 392
           <el-col :span="8">
356
-            <el-form-item label="导管V端约(cm):" v-show="thrombuShow">
393
+            <el-form-item label="导管V端约(cm):" :prop="isName('导管V端约')"
394
+              :rules="isCheckmust('导管V端约')" v-show="thrombuShow">
357 395
               <el-input v-model="assessmentBeforeDislysis.thromubus_v" style="width:150px"></el-input>
358 396
             </el-form-item>
359 397
           </el-col>
360 398
 
361 399
           <el-col :span="8" v-if="isShow('皮肤')">
362
-            <el-form-item label="皮肤: ">
400
+            <el-form-item label="皮肤: " :prop="isName('皮肤')"
401
+              :rules="isCheckmust('皮肤')">
363 402
               <!-- <el-select v-model="assessmentBeforeDislysis.skin">
364 403
                 <el-option :key="0" label="请选择" :value="0"></el-option>
365 404
 
@@ -375,14 +414,16 @@
375 414
 
376 415
 
377 416
           <el-col :span="8">
378
-            <el-form-item label="并发症: " v-if="isShow('并发症')">
417
+            <el-form-item label="并发症: " :prop="isName('并发症')"
418
+              :rules="isCheckmust('并发症')" v-if="isShow('并发症')">
379 419
 
380 420
               <el-input v-model="assessmentBeforeDislysis.complication" @focus="showInnerDialog('5')"></el-input>
381 421
             </el-form-item>
382 422
           </el-col>
383 423
 
384 424
           <el-col :span="8">
385
-            <el-form-item label="透析前症状: " v-if="isShow('透析前症状')">
425
+            <el-form-item label="透析前症状: " :prop="isName('透析前症状')"
426
+              :rules="isCheckmust('透析前症状')" v-if="isShow('透析前症状')">
386 427
               <el-input v-model="assessmentBeforeDislysis.symptom_before_dialysis"
387 428
                         @focus="showInnerDialog('3')"></el-input>
388 429
             </el-form-item>
@@ -390,14 +431,16 @@
390 431
 
391 432
 
392 433
           <el-col :span="8">
393
-            <el-form-item label="前次透析后症状:" v-if="isShow('前次透析后症状')">
434
+            <el-form-item label="前次透析后症状:" :prop="isName('前次透析后症状')"
435
+              :rules="isCheckmust('前次透析后症状')" v-if="isShow('前次透析后症状')">
394 436
               <el-input v-model="assessmentBeforeDislysis.last_post_dialysis" @focus="showInnerDialog('1')"></el-input>
395 437
             </el-form-item>
396 438
           </el-col>
397 439
 
398 440
 
399 441
           <el-col :span="8" v-if="isShow('急诊')">
400
-            <el-form-item label="急诊: ">
442
+            <el-form-item label="急诊: " :prop="isName('急诊')"
443
+              :rules="isCheckmust('急诊')">
401 444
               <el-select v-model="assessmentBeforeDislysis.emergency_treatment">
402 445
                 <el-option :key="0" label="请选择" :value="0"></el-option>
403 446
 
@@ -408,13 +451,15 @@
408 451
           </el-col>
409 452
 
410 453
           <el-col :span="8" v-if="isShow('其他急诊情况')">
411
-            <el-form-item label="其他急诊情况:">
454
+            <el-form-item label="其他急诊情况:" :prop="isName('其他急诊情况')"
455
+              :rules="isCheckmust('其他急诊情况')">
412 456
               <el-input v-model="assessmentBeforeDislysis.emergency_treatment_other"></el-input>
413 457
             </el-form-item>
414 458
           </el-col>
415 459
             
416 460
           <el-col :span="8" v-if="isShow('特殊处理情况')">
417
-            <el-form-item label="特殊处理情况:">
461
+            <el-form-item label="特殊处理情况:" :prop="isName('特殊处理情况')"
462
+              :rules="isCheckmust('特殊处理情况')">
418 463
               <el-input v-model="assessmentBeforeDislysis.special_treatment"></el-input>
419 464
             </el-form-item>
420 465
           </el-col>
@@ -423,7 +468,8 @@
423 468
           
424 469
 
425 470
           <el-col :span="8">
426
-            <el-form-item label="透析期间: " v-if="isShow('透析期间')">
471
+            <el-form-item label="透析期间: " :prop="isName('透析期间')"
472
+              :rules="isCheckmust('透析期间')" v-if="isShow('透析期间')">
427 473
               <el-input v-model="assessmentBeforeDislysis.dialysis_interphase" @focus="showInnerDialog('2')">>
428 474
               </el-input>
429 475
             </el-form-item>
@@ -431,7 +477,8 @@
431 477
 
432 478
           <el-col :span="8">
433 479
 
434
-            <el-form-item label="位置: " v-if="isShow('位置')">
480
+            <el-form-item label="位置: " :prop="isName('位置')"
481
+              :rules="isCheckmust('位置')" v-if="isShow('位置')">
435 482
               <el-select v-model="assessmentBeforeDislysis.venous_catheterization_part">
436 483
                 <el-option :key="0" label="请选择" :value="0"></el-option>
437 484
 
@@ -443,7 +490,8 @@
443 490
           </el-col>
444 491
 
445 492
           <el-col :span="8" v-if="isShow('其他中心静脉导管')">
446
-            <el-form-item label="其他中心静脉导管:">
493
+            <el-form-item label="其他中心静脉导管:" :prop="isName('其他中心静脉导管')"
494
+              :rules="isCheckmust('其他中心静脉导管')">
447 495
               <div>
448 496
                 <el-input v-model="assessmentBeforeDislysis.ductus_arantii_other"></el-input>
449 497
               </div>
@@ -451,7 +499,8 @@
451 499
           </el-col>
452 500
          
453 501
           <el-col :span="8">
454
-            <el-form-item label="感染: " v-if="isShow('感染')">
502
+            <el-form-item label="感染: " :prop="isName('感染')"
503
+              :rules="isCheckmust('感染')" v-if="isShow('感染')">
455 504
               <el-select v-model="assessmentBeforeDislysis.is_infect">
456 505
                 <el-option :key="0" label="请选择" :value="0"></el-option>
457 506
                 <el-option label="无" value="1"></el-option>
@@ -463,7 +512,8 @@
463 512
 
464 513
 
465 514
           <el-col :span="8" v-if="isShow('其他感染情况')">
466
-            <el-form-item label="其他感染情况:">
515
+            <el-form-item label="其他感染情况:" :prop="isName('其他感染情况')"
516
+              :rules="isCheckmust('其他感染情况')">
467 517
               <el-input v-model="assessmentBeforeDislysis.infect_other"></el-input>
468 518
             </el-form-item>
469 519
           </el-col>
@@ -472,7 +522,8 @@
472 522
 
473 523
 
474 524
           <el-col :span="8" v-if="isShow('外露')">
475
-            <el-form-item label="外露(cm):">
525
+            <el-form-item label="外露(cm):" :prop="isName('外露')"
526
+              :rules="isCheckmust('外露')">
476 527
               <el-input v-model="assessmentBeforeDislysis.exposed"></el-input>
477 528
             </el-form-item>
478 529
           </el-col>
@@ -482,7 +533,8 @@
482 533
 
483 534
 
484 535
           <el-col :span="8" v-if="isShow('其他皮肤情况')">
485
-            <el-form-item label="其他皮肤情况:">
536
+            <el-form-item label="其他皮肤情况:" :prop="isName('其他皮肤情况')"
537
+              :rules="isCheckmust('其他皮肤情况')">
486 538
               <el-input v-model="assessmentBeforeDislysis.skin_other"></el-input>
487 539
             </el-form-item>
488 540
           </el-col>
@@ -494,14 +546,16 @@
494 546
 
495 547
 
496 548
           <el-col :span="8">
497
-            <el-form-item label="导管缝线:" v-if="isShow('导管缝线')">
549
+            <el-form-item label="导管缝线:" :prop="isName('导管缝线')"
550
+              :rules="isCheckmust('导管缝线')" v-if="isShow('导管缝线')">
498 551
               <el-input v-model="assessmentBeforeDislysis.catheter_suture" @focus="showInnerDialog('15')"></el-input>
499 552
             </el-form-item>
500 553
           </el-col>
501 554
 
502 555
 
503 556
           <el-col :span="8" v-if="isShow('导管缝线(其他)')">
504
-            <el-form-item label="导管缝线(其他):">
557
+            <el-form-item label="导管缝线(其他):" :prop="isName('导管缝线(其他)')"
558
+              :rules="isCheckmust('导管缝线(其他)')">
505 559
               <el-input v-model="assessmentBeforeDislysis.catheter_suture_other"></el-input>
506 560
             </el-form-item>
507 561
           </el-col>
@@ -509,7 +563,8 @@
509 563
 
510 564
 
511 565
           <el-col :span="8" v-if="isShow('尿量')">
512
-            <el-form-item label="尿量(ml):">
566
+            <el-form-item label="尿量(ml):" :prop="isName('尿量')"
567
+              :rules="isCheckmust('尿量')">
513 568
               <el-input v-model="assessmentBeforeDislysis.urine_volume"></el-input>
514 569
             </el-form-item>
515 570
           </el-col>
@@ -518,26 +573,30 @@
518 573
 
519 574
 
520 575
           <el-col :span="8">
521
-            <el-form-item label="水肿:" v-if="isShow('水肿')">
576
+            <el-form-item label="水肿:" :prop="isName('水肿')"
577
+              :rules="isCheckmust('水肿')" v-if="isShow('水肿')">
522 578
               <el-input v-model="assessmentBeforeDislysis.edema" @focus="showInnerDialog('16')"></el-input>
523 579
             </el-form-item>
524 580
           </el-col>
525 581
 
526 582
          <el-col :span="8">
527
-            <el-form-item label="预增脱水量(L):" v-if="isShow('预增脱水量')">
583
+            <el-form-item label="预增脱水量(L):" :prop="isName('预增脱水量')"
584
+              :rules="isCheckmust('预增脱水量')" v-if="isShow('预增脱水量')">
528 585
              <el-input v-model="assessmentBeforeDislysis.dehydration"></el-input>
529 586
             </el-form-item>
530 587
           </el-col>
531 588
 
532 589
 
533 590
           <el-col :span="8">
534
-            <el-form-item label="透析前药物:" v-if="isShow('透析前药物')">
591
+            <el-form-item label="透析前药物:" :prop="isName('透析前药物')"
592
+              :rules="isCheckmust('透析前药物')" v-if="isShow('透析前药物')">
535 593
              <el-input v-model="assessmentBeforeDislysis.pre_dialysis_drugs"></el-input>
536 594
             </el-form-item>
537 595
           </el-col>
538 596
 
539 597
           <el-col :span="8">
540
-            <el-form-item label="围手术期:" v-if="isShow('围手术期')">
598
+            <el-form-item label="围手术期:" :prop="isName('围手术期')"
599
+              :rules="isCheckmust('围手术期')" v-if="isShow('围手术期')">
541 600
               <el-select v-model="assessmentBeforeDislysis.period">
542 601
                 <el-option :key="0" label="请选择" :value="0"></el-option>
543 602
                 <el-option label="无" value="1"></el-option>
@@ -547,13 +606,15 @@
547 606
           </el-col>
548 607
           
549 608
           <el-col :span="8">
550
-            <el-form-item label="预计进食量(g):" v-if="isShow('预计进食量')">
609
+            <el-form-item label="预计进食量(g):" :prop="isName('预计进食量')"
610
+              :rules="isCheckmust('预计进食量')" v-if="isShow('预计进食量')">
551 611
              <el-input v-model="assessmentBeforeDislysis.estimated_food_intake"></el-input>
552 612
             </el-form-item>
553 613
           </el-col>
554 614
 
555 615
          <el-col :span="8">
556
-            <el-form-item label="透析期间血压:" v-if="isShow('透析期间血压')">
616
+            <el-form-item label="透析期间血压:" :prop="isName('透析期间血压')"
617
+              :rules="isCheckmust('透析期间血压')" v-if="isShow('透析期间血压')">
557 618
              <el-input v-model="assessmentBeforeDislysis.blood_pressure_during_dialysis"></el-input>
558 619
             </el-form-item>
559 620
           </el-col>
@@ -561,26 +622,30 @@
561 622
      
562 623
 
563 624
            <el-col :span="8" v-if="isShow('透前尿素')">
564
-            <el-form-item label="透前尿素(mmol/L):" label-width="150px">
625
+            <el-form-item label="透前尿素(mmol/L):" :prop="isName('透前尿素')"
626
+              :rules="isCheckmust('透前尿素')" label-width="150px">
565 627
               <el-input v-model="assessmentBeforeDislysis.urea_befor"></el-input>
566 628
             </el-form-item>
567 629
           </el-col>
568 630
 
569 631
           <el-col :span="8" v-if="isShow('住院科室')">
570
-            <el-form-item label="住院科室:" label-width="150px">
632
+            <el-form-item label="住院科室:" :prop="isName('住院科室')"
633
+              :rules="isCheckmust('住院科室')" label-width="150px">
571 634
               <el-input v-model="assessmentBeforeDislysis.his_department"></el-input>
572 635
             </el-form-item>
573 636
           </el-col>
574 637
 
575 638
          <el-col :span="8" v-if="isShow('住院床位')">
576
-            <el-form-item label="住院床位:" label-width="150px">
639
+            <el-form-item label="住院床位:" :prop="isName('住院床位')"
640
+              :rules="isCheckmust('住院床位')" label-width="150px">
577 641
               <el-input v-model="assessmentBeforeDislysis.his_bed"></el-input>
578 642
             </el-form-item>
579 643
           </el-col>
580 644
           
581 645
         
582 646
           <el-col :span="8">
583
-            <el-form-item label="抽吸:" v-if="isShow('抽吸')">
647
+            <el-form-item label="抽吸:" :prop="isName('抽吸')"
648
+              :rules="isCheckmust('抽吸')" v-if="isShow('抽吸')">
584 649
               <el-input v-model="assessmentBeforeDislysis.suction" @focus="showInnerDialog('20')"></el-input>
585 650
             </el-form-item>
586 651
           </el-col>
@@ -589,7 +654,8 @@
589 654
  
590 655
          
591 656
           <el-col :span="24">
592
-            <el-form-item label="备注: ">
657
+            <el-form-item label="备注: " :prop="isName('备注')"
658
+              :rules="isCheckmust('备注')">
593 659
               <el-input type="textarea" v-model="assessmentBeforeDislysis.remark" :rows="5"></el-input>
594 660
             </el-form-item>
595 661
           </el-col>
@@ -601,7 +667,8 @@
601 667
       </el-form>
602 668
       <span slot="footer" class="dialog-footer">
603 669
                 <el-button @click="handleCancle">取 消</el-button>
604
-                <el-button type="primary" v-if="hasPermission" @click="handleComfirm">保 存</el-button>
670
+                 <!-- v-if="hasPermission" -->
671
+                <el-button type="primary" @click="handleComfirm('assessmentBeforeDislysis')">保 存</el-button>
605 672
             </span>
606 673
     </el-dialog>
607 674
 
@@ -811,6 +878,42 @@
811 878
 
812 879
     },
813 880
     methods: {
881
+    isName(name) {
882
+      let filedList = store.getters.xt_user.fileds;
883
+      for (let i = 0; i < filedList.length; i++) {
884
+        if (filedList[i].module == 3 && filedList[i].filed_name_cn == name) {
885
+          return filedList[i].filed_name;
886
+        }
887
+      }
888
+    },
889
+
890
+    isCheckmust(name) {
891
+      let filedList = store.getters.xt_user.fileds;
892
+
893
+      for (let i = 0; i < filedList.length; i++) {
894
+        if (
895
+          filedList[i].module == 3 &&
896
+          filedList[i].filed_name_cn == name &&
897
+          filedList[i].is_write == 1&&
898
+          filedList[i].is_show == 1
899
+        ) {
900
+          console.log(filedList[i],'false')
901
+          if (name == "血管通路"||name == "导管打折"||name == '出血'||name == '血栓'||name == '围手术期'||name=='血管杂音'||name=='急诊'||name=='中心静脉导置管') {
902
+          return [
903
+            { required: true, message: `请输入${name}` },
904
+            {
905
+              required: true,
906
+              pattern: /^[1-9]\d*$/,
907
+              message: `请输入${name}`,
908
+            },
909
+          ];
910
+        }
911
+          return [{ required: true ,message:`请输入${name}`, trigger: ['blur','change'] }];
912
+          
913
+        }
914
+      }
915
+    },
916
+      
814 917
       setLastRecord(lastPredialysisEvaluation, lastDryWeightDislysis) {
815 918
         this.lastPredialysisEvaluation = lastPredialysisEvaluation
816 919
         this.lastDryWeightDislysis = lastDryWeightDislysis
@@ -827,9 +930,9 @@
827 930
       },
828 931
 
829 932
       show(assessment, lastDryWeightDislysis,last_predialysis_evaluation) {
933
+        let filedList = store.getters.xt_user.fileds;
934
+        console.log(filedList,'filedList')
830 935
         this.lastPredialysisEvaluation = last_predialysis_evaluation
831
-       
832
-       
833 936
         console.log("获取上次数据",this.lastPredialysisEvaluation, this.$store.getters.xt_user.org.id )
834 937
         if(this.lastPredialysisEvaluation != null) {
835 938
         // if(this.lastPredialysisEvaluation.remark == "" && this.$store.getters.xt_user.org.id == 10307){
@@ -1205,8 +1308,7 @@
1205 1308
       innerDialogCancle: function() {
1206 1309
         this.InnerDialogProps.visibility = false
1207 1310
       }, 
1208
-      handleComfirm: function() {
1209
-
1311
+      handleComfirm(formName) {
1210 1312
         var arr = this.assessmentBeforeDislysis
1211 1313
         for (let i = 0; i < this.machineType.length; i++) {
1212 1314
           if (arr.machine_type == this.machineType[i].id) {
@@ -1214,10 +1316,14 @@
1214 1316
           }
1215 1317
         }
1216 1318
         const ParamsQuery = arr
1217
-        ParamsQuery['patient'] = this.patient.id
1319
+         console.log("params",ParamsQuery)
1320
+         this.$refs.assessmentBeforeDislysis.validate((valid) => {
1321
+          if (valid) {
1322
+            ParamsQuery['patient'] = this.patient.id
1218 1323
         ParamsQuery['record_date'] = this.record_date
1219 1324
         ParamsQuery['mode'] = '1'
1220 1325
 
1326
+
1221 1327
         if (this.predialysis_evaluation.id == 0) {
1222 1328
           ParamsQuery['mode'] = '1'
1223 1329
         } else {
@@ -1261,6 +1367,13 @@
1261 1367
             this.hide()
1262 1368
           }
1263 1369
         })
1370
+          } else {
1371
+            return false;
1372
+          }
1373
+        });
1374
+        
1375
+        
1376
+        
1264 1377
       }, handleCancle: function() {
1265 1378
         this.isVisibility = false
1266 1379
       }, showDryWeightDialog: function() {
@@ -1340,6 +1453,8 @@
1340 1453
          this.thrombuShow = false
1341 1454
         }
1342 1455
       }
1456
+
1457
+      
1343 1458
     },
1344 1459
     created() {
1345 1460
   

File diff suppressed because it is too large
+ 881 - 662
src/xt_pages/dialysis/details/dialog/computer_dialog.vue


File diff suppressed because it is too large
+ 5135 - 3999
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue


File diff suppressed because it is too large
+ 1571 - 1098
src/xt_pages/dialysis/details/dialog/doubleCheckDialog.vue


+ 42 - 12
src/xt_pages/dialysis/details/dialog/finish_dialog.vue View File

@@ -5,13 +5,14 @@
5 5
       </div> -->
6 6
       <div class="warnTxt" v-if="showTxt != ''">{{ showTxt }}</div>
7 7
       <el-form :model="form" label-width="100px"  :rules="drugdicRules"  ref="form">
8
-        <el-form-item label="下机护士">
8
+        <el-form-item label="下机护士" >
9 9
           <el-select v-model="form.nurse_id" :disabled="!(dialysis_order.id != 0)">
10 10
             <el-option v-for="(admin, index) in admins" :key="index" :value="admin.id" :label="admin.name"></el-option>
11 11
           </el-select>
12 12
         </el-form-item>
13 13
 
14
-        <el-form-item label="下机时间 :" style="width:275px">
14
+        <el-form-item label="下机时间 :" :prop="isName('下机时间')"
15
+              :rules="isCheckmust('下机时间')" style="width:275px">
15 16
           <el-date-picker
16 17
             type="datetime"
17 18
             format="yyyy-MM-dd HH:mm"
@@ -22,23 +23,27 @@
22 23
           ></el-date-picker>
23 24
         </el-form-item>
24 25
 
25
-        <el-form-item label="穿刺处血肿:" v-if="isShowFiled('穿刺处血肿')" :label-width="150">
26
+        <el-form-item label="穿刺处血肿:" :prop="isName('穿刺处血肿')"
27
+              :rules="isCheckmust('穿刺处血肿')" v-if="isShowFiled('穿刺处血肿')" :label-width="150">
26 28
            <el-radio-group v-model="form.puncture_point_haematoma">
27 29
               <el-radio :label="1">有</el-radio>
28 30
               <el-radio :label="2">无</el-radio>
29 31
            </el-radio-group>
30 32
         </el-form-item>
31 33
 
32
-        <el-form-item label="内瘘: " v-if="isShowFiled('内瘘')">
34
+        <el-form-item label="内瘘: " :prop="isName('内瘘')"
35
+              :rules="isCheckmust('内瘘')" v-if="isShowFiled('内瘘')">
33 36
             <el-input v-model="form.internal_fistula" readonly  @focus="showInnerDialog('7')" style="width:200px"></el-input>
34 37
         </el-form-item>
35 38
 
36 39
 
37
-        <el-form-item label="导管: " v-if="isShowFiled('导管')">
40
+        <el-form-item label="导管: " :prop="isName('导管')"
41
+              :rules="isCheckmust('导管')" v-if="isShowFiled('导管')">
38 42
           <el-input v-model="form.catheter" @focus="showInnerDialog('4')" style="width:200px"></el-input>
39 43
         </el-form-item>
40 44
 
41
-        <el-form-item label="透析器凝血: " v-if="isShowFiled('透析器凝血')">
45
+        <el-form-item label="透析器凝血: " :prop="isName('透析器凝血')"
46
+              :rules="isCheckmust('透析器凝血')" v-if="isShowFiled('透析器凝血')">
42 47
           <el-input
43 48
             style="width:200px"
44 49
             v-model="form.cruor"
@@ -47,7 +52,8 @@
47 52
           ></el-input>
48 53
        </el-form-item>
49 54
 
50
-        <el-form-item label="宣教知识:" v-if="isShowFiled('宣教知识')">
55
+        <el-form-item label="宣教知识:" :prop="isName('宣教知识')"
56
+              :rules="isCheckmust('宣教知识')" v-if="isShowFiled('宣教知识')">
51 57
           <el-select @change="dialysisAfterTeachSelectChange" v-model="form.mission_id">
52 58
             <el-option
53 59
               v-for="(item, index) in education"
@@ -60,7 +66,8 @@
60 66
      
61 67
       <el-row :gutter="20">
62 68
         <el-col v-if="isShowFiled('宣教知识')">
63
-          <el-form-item>
69
+          <el-form-item :prop="isName('宣教知识')"
70
+              :rules="isCheckmust('宣教知识')">
64 71
             <el-input
65 72
               type="textarea"
66 73
               v-model="form.mission"
@@ -168,13 +175,13 @@
168 175
         type: Object
169 176
       }
170 177
     },
171
-    created() {
178
+      created() {
172 179
       this.education = getDataConfig('education', 'education')
173 180
       this.internal_fistula = getDataConfig('hemodialysis', 'internal_fistula')
174 181
       this.catheter = getDataConfig('hemodialysis', 'catheter')
175 182
       this.cruorOptions = getDataConfig('hemodialysis', 'cruor')
176
-    },
177
-    watch: {
183
+      },
184
+      watch: {
178 185
       'dialysis_order.id': function() {
179 186
         if (this.dialysis_order.id == 0) {
180 187
           this.form.nurse_id = 0
@@ -196,8 +203,29 @@
196 203
         },
197 204
         deep:true
198 205
       }
206
+      },
207
+      methods: {
208
+      isName(name) {
209
+      let filedList = store.getters.xt_user.fileds;
210
+      for (let i = 0; i < filedList.length; i++) {
211
+        if (filedList[i].module == 9 && filedList[i].filed_name_cn == name) {
212
+          return filedList[i].filed_name;
213
+        }
214
+      }
199 215
     },
200
-    methods: {
216
+
217
+    isCheckmust(name) {
218
+      let filedList = store.getters.xt_user.fileds;
219
+      for (let i = 0; i < filedList.length; i++) {
220
+        if (
221
+          filedList[i].module == 9 &&
222
+          filedList[i].filed_name_cn == name &&
223
+          filedList[i].is_write == 1
224
+            ) {
225
+          return [{ required: true ,message:`请输入${name}` }];
226
+            }
227
+          }
228
+        },
201 229
          dialysisAfterTeachSelectChange: function(values) {
202 230
           if (this.form.mission == '') {
203 231
             this.form.mission = values
@@ -409,6 +437,8 @@
409 437
                 this.$message.error(resp.msg)
410 438
               }
411 439
             })
440
+          }else{
441
+            return false
412 442
           }
413 443
         })
414 444
     

+ 142 - 51
src/xt_pages/dialysis/details/dialog/monitor_dialog.vue View File

@@ -879,7 +879,8 @@
879 879
       <el-form v-show="edit" ref="form" :model="form" label-width="130px">
880 880
         <el-row :gutter="20">
881 881
           <el-col :span="8" v-if="isShow('监测时间')">
882
-            <el-form-item label="监测时间:">
882
+            <el-form-item label="监测时间:" :prop="isName('监测时间')"
883
+              :rules="isCheckmust('监测时间')">
883 884
               <!-- {{ monitor_date_str }}
884 885
                 <el-time-picker v-model="form.monitoring_time" :clearable="false" arrow-control :picker-options="{format: 'HH:mm'}" prefix-icon="" value-format="HH:mm" style="width: 60%;">
885 886
                 </el-time-picker> -->
@@ -894,29 +895,34 @@
894 895
             </el-form-item>
895 896
           </el-col>
896 897
           <el-col :span="8" v-if="isShow('体温')">
897
-            <el-form-item label="体温(℃):">
898
+            <el-form-item label="体温(℃):" :prop="isName('体温')"
899
+              :rules="isCheckmust('体温')">
898 900
               <el-input v-model="form.temperature"></el-input>
899 901
             </el-form-item>
900 902
           </el-col>
901 903
 
902 904
           <el-col :span="8" v-if="isShow('收缩压')">
903
-            <el-form-item label="收缩压(mmHg):">
905
+            <el-form-item label="收缩压(mmHg):" :prop="isName('收缩压')"
906
+              :rules="isCheckmust('收缩压')">
904 907
               <el-input v-model="form.systolic_bp"></el-input>
905 908
             </el-form-item>
906 909
           </el-col>
907 910
           <el-col :span="8" v-if="isShow('舒张压')">
908
-            <el-form-item label="舒张压(mmHg):">
911
+            <el-form-item label="舒张压(mmHg):" :prop="isName('舒张压')"
912
+              :rules="isCheckmust('舒张压')">
909 913
               <el-input v-model="form.diastolic_bp"></el-input>
910 914
             </el-form-item>
911 915
           </el-col>
912 916
 
913 917
           <el-col :span="8" v-if="isShow('脉搏')">
914
-            <el-form-item label="脉搏(次/分):">
918
+            <el-form-item label="脉搏(次/分):" :prop="isName('脉搏')"
919
+              :rules="isCheckmust('脉搏')">
915 920
               <el-input v-model="form.pulse_frequency"></el-input>
916 921
             </el-form-item>
917 922
           </el-col>
918 923
           <el-col :span="8" v-if="isShow('呼吸频率')">
919
-            <el-form-item label="呼吸频率(次/分):">
924
+            <el-form-item label="呼吸频率(次/分):" :prop="isName('呼吸频率')"
925
+              :rules="isCheckmust('呼吸频率')">
920 926
               <el-input v-model="form.breathing_rated"></el-input>
921 927
             </el-form-item>
922 928
           </el-col>
@@ -924,6 +930,8 @@
924 930
             <el-form-item
925 931
               v-if="form.venous_pressure_type == 2"
926 932
               label="静脉压(kpa):"
933
+               :prop="isName('静脉压')"
934
+              :rules="isCheckmust('静脉压')"
927 935
             >
928 936
               <el-input
929 937
                 style="width: 140px"
@@ -936,7 +944,8 @@
936 944
                 >切换</el-button
937 945
               >
938 946
             </el-form-item>
939
-            <el-form-item v-else label="静脉压(mmHg):">
947
+            <el-form-item v-else label="静脉压(mmHg):" :prop="isName('静脉压')"
948
+              :rules="isCheckmust('静脉压')">
940 949
               <el-input
941 950
                 style="width: 140px"
942 951
                 v-model="form.venous_pressure"
@@ -953,6 +962,8 @@
953 962
             <el-form-item
954 963
               v-if="form.arterial_pressure_type == 2"
955 964
               label="动脉压(kpa):"
965
+               :prop="isName('动脉压')"
966
+              :rules="isCheckmust('动脉压')"
956 967
             >
957 968
               <el-input
958 969
                 style="width: 140px"
@@ -965,7 +976,8 @@
965 976
                 >切换</el-button
966 977
               >
967 978
             </el-form-item>
968
-            <el-form-item v-else label="动脉压(mmHg):">
979
+            <el-form-item v-else label="动脉压(mmHg):" :prop="isName('动脉压')"
980
+              :rules="isCheckmust('动脉压')">
969 981
               <el-input
970 982
                 style="width: 140px"
971 983
                 v-model="form.arterial_pressure"
@@ -980,7 +992,8 @@
980 992
           </el-col>
981 993
 
982 994
           <el-col :span="8" v-if="isShow('血流量')">
983
-            <el-form-item label="血流量(ml/min):">
995
+            <el-form-item label="血流量(ml/min):" :prop="isName('血流量')"
996
+              :rules="isCheckmust('血流量')">
984 997
               <el-input v-model="form.blood_flow_volume"></el-input>
985 998
             </el-form-item>
986 999
           </el-col>
@@ -989,6 +1002,8 @@
989 1002
             <el-form-item
990 1003
               v-if="form.transmembrane_pressure_type == 2"
991 1004
               label="跨膜压(kpa):"
1005
+               :prop="isName('跨膜压')"
1006
+              :rules="isCheckmust('跨膜压')"
992 1007
             >
993 1008
               <el-input
994 1009
                 style="width: 140px"
@@ -1001,7 +1016,8 @@
1001 1016
                 >切换</el-button
1002 1017
               >
1003 1018
             </el-form-item>
1004
-            <el-form-item v-else label="跨膜压(mmHg):">
1019
+            <el-form-item v-else label="跨膜压(mmHg):" :prop="isName('跨膜压')"
1020
+              :rules="isCheckmust('跨膜压')">
1005 1021
               <el-input
1006 1022
                 style="width: 140px"
1007 1023
                 v-model="form.transmembrane_pressure"
@@ -1053,7 +1069,8 @@
1053 1069
                 org_id== 10445)
1054 1070
             "
1055 1071
           >
1056
-            <el-form-item label="超滤率(ml/h)">
1072
+            <el-form-item label="超滤率(ml/h)" :prop="isName('超滤率')"
1073
+              :rules="isCheckmust('超滤率')">
1057 1074
               <el-input v-model="form.ultrafiltration_rate"></el-input>
1058 1075
             </el-form-item>
1059 1076
           </el-col>
@@ -1095,7 +1112,8 @@
1095 1112
               org_id!=10445
1096 1113
             "
1097 1114
           >
1098
-            <el-form-item label="超滤率(L/h)">
1115
+            <el-form-item label="超滤率(L/h)" :prop="isName('超滤率')"
1116
+              :rules="isCheckmust('超滤率')">
1099 1117
               <el-input v-model="form.ultrafiltration_rate"></el-input>
1100 1118
             </el-form-item>
1101 1119
           </el-col>
@@ -1147,7 +1165,8 @@
1147 1165
                 org_id == 10445)
1148 1166
             "
1149 1167
           >
1150
-            <el-form-item label="超滤量(ml):">
1168
+            <el-form-item label="超滤量(ml):" :prop="isName('超滤量')"
1169
+              :rules="isCheckmust('超滤量')">
1151 1170
               <el-input v-model="form.ultrafiltration_volume"></el-input>
1152 1171
             </el-form-item>
1153 1172
           </el-col>
@@ -1199,13 +1218,15 @@
1199 1218
               org_id!=10445
1200 1219
             "
1201 1220
           >
1202
-            <el-form-item label="超滤量(L):">
1221
+            <el-form-item label="超滤量(L):" :prop="isName('超滤量')"
1222
+              :rules="isCheckmust('超滤量')">
1203 1223
               <el-input v-model="form.ultrafiltration_volume"></el-input>
1204 1224
             </el-form-item>
1205 1225
           </el-col>
1206 1226
 
1207 1227
           <el-col :span="8" v-if="isShow('钠浓度')">
1208
-            <el-form-item label="钠浓度(mmol/L):">
1228
+            <el-form-item label="钠浓度(mmol/L):" :prop="isName('钠浓度')"
1229
+              :rules="isCheckmust('钠浓度')">
1209 1230
               <el-input v-model="form.sodium_concentration"></el-input>
1210 1231
             </el-form-item>
1211 1232
           </el-col>
@@ -1213,7 +1234,8 @@
1213 1234
 
1214 1235
           <el-row :gutter="20"> -->
1215 1236
           <el-col :span="8" v-if="isShow('透析液温度')">
1216
-            <el-form-item label="透析液温度(℃):">
1237
+            <el-form-item label="透析液温度(℃):" :prop="isName('透析液温度')"
1238
+              :rules="isCheckmust('透析液温度')">
1217 1239
               <el-input v-model="form.dialysate_temperature"></el-input>
1218 1240
             </el-form-item>
1219 1241
           </el-col>
@@ -1236,7 +1258,8 @@
1236 1258
               org_id!=10445
1237 1259
             "
1238 1260
           >
1239
-            <el-form-item label="置换率(L/h):">
1261
+            <el-form-item label="置换率(L/h):" :prop="isName('置换率')"
1262
+              :rules="isCheckmust('置换率')">
1240 1263
               <el-input v-model="form.replacement_rate"></el-input>
1241 1264
             </el-form-item>
1242 1265
           </el-col>
@@ -1259,12 +1282,14 @@
1259 1282
                 org_id!=10445)
1260 1283
             "
1261 1284
           >
1262
-            <el-form-item label="置换率(ml/min):">
1285
+            <el-form-item label="置换率(ml/min):" :prop="isName('置换率')"
1286
+              :rules="isCheckmust('置换率')">
1263 1287
               <el-input v-model="form.replacement_rate"></el-input>
1264 1288
             </el-form-item>
1265 1289
           </el-col>
1266 1290
           <el-col :span="8" v-if="isShow('置换量') && template_id == 43">
1267
-            <el-form-item label="置换量(ml/h):">
1291
+            <el-form-item label="置换量(ml/h):" :prop="isName('置换量')"
1292
+              :rules="isCheckmust('置换量')">
1268 1293
               <el-input v-model="form.displacement_quantity"></el-input>
1269 1294
             </el-form-item>
1270 1295
           </el-col>
@@ -1289,7 +1314,8 @@
1289 1314
               org_id!=10445
1290 1315
             "
1291 1316
           >
1292
-            <el-form-item label="置换量(L):">
1317
+            <el-form-item label="置换量(L):" :prop="isName('置换量')"
1318
+              :rules="isCheckmust('置换量')">
1293 1319
               <el-input v-model="form.displacement_quantity"></el-input>
1294 1320
             </el-form-item>
1295 1321
           </el-col>
@@ -1316,60 +1342,70 @@
1316 1342
                 org_id ==10445)
1317 1343
             "
1318 1344
           >
1319
-            <el-form-item label="置换量(ml):">
1345
+            <el-form-item label="置换量(ml):" :prop="isName('置换量')"
1346
+              :rules="isCheckmust('置换量')">
1320 1347
               <el-input v-model="form.displacement_quantity"></el-input>
1321 1348
             </el-form-item>
1322 1349
           </el-col>
1323 1350
 
1324 1351
           <el-col :span="8" v-if="isShow('电导度')">
1325
-            <el-form-item label="电导度(mS/m):">
1352
+            <el-form-item label="电导度(mS/m):" :prop="isName('电导度')"
1353
+              :rules="isCheckmust('电导度')">
1326 1354
               <el-input v-model="form.conductivity"></el-input>
1327 1355
             </el-form-item>
1328 1356
           </el-col>
1329 1357
 
1330 1358
           <el-col :span="8" v-if="isShow('置换液流量') && template_id != 27">
1331
-            <el-form-item label="置换液流量(ml/h):">
1359
+            <el-form-item label="置换液流量(ml/h):" :prop="isName('置换液流量')"
1360
+              :rules="isCheckmust('置换液流量')">
1332 1361
               <el-input v-model="form.displacement_flow_quantity"></el-input>
1333 1362
             </el-form-item>
1334 1363
           </el-col>
1335 1364
           <el-col :span="8" v-if="isShow('置换液流量') && template_id == 27">
1336
-            <el-form-item label="置换液流量(ml/min):">
1365
+            <el-form-item label="置换液流量(ml/min):" :prop="isName('置换液流量')"
1366
+              :rules="isCheckmust('置换液流量')">
1337 1367
               <el-input v-model="form.displacement_flow_quantity"></el-input>
1338 1368
             </el-form-item>
1339 1369
           </el-col>
1340 1370
 
1341 1371
           <el-col :span="8" v-if="isShow('透析液流量')">
1342
-            <el-form-item label="透析液流量(ml/h):">
1372
+            <el-form-item label="透析液流量(ml/h):" :prop="isName('透析液流量')"
1373
+              :rules="isCheckmust('透析液流量')">
1343 1374
               <el-input v-model="form.dialysate_flow"></el-input>
1344 1375
             </el-form-item>
1345 1376
           </el-col>
1346 1377
 
1347 1378
           <el-col :span="8" v-if="isShow('SpO₂')">
1348
-            <el-form-item label="SpO₂(%):">
1379
+            <el-form-item label="SpO₂(%):" :prop="isName('SpO₂')"
1380
+              :rules="isCheckmust('SpO₂')">
1349 1381
               <el-input v-model="form.blood_oxygen_saturation"></el-input>
1350 1382
             </el-form-item>
1351 1383
           </el-col>
1352 1384
 
1353 1385
           <el-col :span="8" v-if="isShow('血糖')">
1354
-            <el-form-item label="血糖(mmol/L):">
1386
+            <el-form-item label="血糖(mmol/L):" :prop="isName('血糖')"
1387
+              :rules="isCheckmust('血糖')">
1355 1388
               <el-input v-model="form.blood_sugar"></el-input>
1356 1389
             </el-form-item>
1357 1390
           </el-col>
1358 1391
 
1359 1392
           <el-col :span="8" v-if="isShow('肝素用量余量')">
1360
-            <el-form-item label="肝素用量余量(ml):">
1393
+            <el-form-item label="肝素用量余量(ml):" :prop="isName('肝素用量余量')"
1394
+              :rules="isCheckmust('肝素用量余量')">
1361 1395
               <el-input v-model="form.heparin"></el-input>
1362 1396
             </el-form-item>
1363 1397
           </el-col>
1364 1398
 
1365 1399
           <el-col :span="8" v-if="isShow('肝素量')">
1366
-            <el-form-item label="肝素量(mg):">
1400
+            <el-form-item label="肝素量(mg):" :prop="isName('肝素量')"
1401
+              :rules="isCheckmust('肝素量')">
1367 1402
               <el-input v-model="form.heparin_amount"></el-input>
1368 1403
             </el-form-item>
1369 1404
           </el-col>
1370 1405
 
1371 1406
           <el-col :span="8" v-if="isShow('抗凝剂')">
1372
-            <el-form-item label="抗凝剂:">
1407
+            <el-form-item label="抗凝剂:" :prop="isName('抗凝剂')"
1408
+              :rules="isCheckmust('抗凝剂')">
1373 1409
               <div style="display: flex">
1374 1410
                 <el-select
1375 1411
                   v-model="form.monitor_anticoagulant"
@@ -1392,7 +1428,8 @@
1392 1428
           </el-col>
1393 1429
 
1394 1430
           <el-col :span="8" v-if="isShow('血压监测部位')">
1395
-            <el-form-item label="血压监测部位:">
1431
+            <el-form-item label="血压监测部位:" :prop="isName('血压监测部位')"
1432
+              :rules="isCheckmust('血压监测部位')">
1396 1433
               <div style="display: flex">
1397 1434
                 <el-select
1398 1435
                   v-model="form.blood_pressure_monitoring_site"
@@ -1411,7 +1448,8 @@
1411 1448
           </el-col>
1412 1449
 
1413 1450
           <el-col :span="8" v-if="isShow('并发症')">
1414
-            <el-form-item label="并发症">
1451
+            <el-form-item label="并发症" :prop="isName('并发症')"
1452
+              :rules="isCheckmust('并发症')">
1415 1453
               <div style="display: flex">
1416 1454
                 <el-select
1417 1455
                   v-model="form.complication"
@@ -1430,49 +1468,57 @@
1430 1468
           </el-col>
1431 1469
 
1432 1470
           <el-col :span="8" v-if="isShow('累计血容量') && (template_id == 41 || org_id == 9671 || org_id == 9538 || org_id == 10340)">
1433
-            <el-form-item label="累计血容量(L):">
1471
+            <el-form-item label="累计血容量(L):" :prop="isName('累计血容量')"
1472
+              :rules="isCheckmust('累计血容量')">
1434 1473
               <el-input v-model="form.accumulated_blood_volume"></el-input>
1435 1474
             </el-form-item>
1436 1475
           </el-col>
1437 1476
 
1438 1477
           <el-col :span="8" v-if="isShow('累计血容量') && (template_id  != 41 && template_id !=9671 && org_id!=9538 && org_id!=10340)">
1439
-            <el-form-item label="累计血容量(ml):">
1478
+            <el-form-item label="累计血容量(ml):" :prop="isName('累计血容量')"
1479
+              :rules="isCheckmust('累计血容量')">
1440 1480
               <el-input v-model="form.accumulated_blood_volume"></el-input>
1441 1481
             </el-form-item>
1442 1482
           </el-col>
1443 1483
 
1444 1484
           <el-col :span="8" v-if="isShow('血容量')">
1445
-            <el-form-item label="血容量(L):">
1485
+            <el-form-item label="血容量(L):" :prop="isName('血容量')"
1486
+              :rules="isCheckmust('血容量')">
1446 1487
               <el-input v-model="form.accumulated_blood_volume"></el-input>
1447 1488
             </el-form-item>
1448 1489
           </el-col>
1449 1490
 
1450 1491
           <el-col :span="8" v-if="isShow('血温监测')">
1451
-            <el-form-item label="血温监测">
1492
+            <el-form-item label="血温监测" :prop="isName('血温监测')"
1493
+              :rules="isCheckmust('血温监测')">
1452 1494
               <el-input v-model="form.blood_temperature"></el-input>
1453 1495
             </el-form-item>
1454 1496
           </el-col>
1455 1497
 
1456 1498
           <el-col :span="8" v-if="isShow('尿素监测')">
1457
-            <el-form-item label="尿素监测">
1499
+            <el-form-item label="尿素监测" :prop="isName('尿素监测')"
1500
+              :rules="isCheckmust('尿素监测')">
1458 1501
               <el-input v-model="form.urea_monitoring"></el-input>
1459 1502
             </el-form-item>
1460 1503
           </el-col>
1461 1504
 
1462 1505
           <el-col :span="8" v-if="isShow('血浓量')">
1463
-            <el-form-item label="血浓量">
1506
+            <el-form-item label="血浓量" :prop="isName('血浓量')"
1507
+              :rules="isCheckmust('血浓量')">
1464 1508
               <el-input v-model="form.blood_thickness"></el-input>
1465 1509
             </el-form-item>
1466 1510
           </el-col>
1467 1511
 
1468 1512
           <el-col :span="8" v-if="isShow('血压监测')">
1469
-            <el-form-item label="血压监测">
1513
+            <el-form-item label="血压监测" :prop="isName('血压监测')"
1514
+              :rules="isCheckmust('血压监测')">
1470 1515
               <el-input v-model="form.blood_monitor"></el-input>
1471 1516
             </el-form-item>
1472 1517
           </el-col>
1473 1518
 
1474 1519
           <el-col :span="8" v-if="isShow('脱水')">
1475
-            <el-form-item label="脱水(L):">
1520
+            <el-form-item label="脱水(L):" :prop="isName('脱水')"
1521
+              :rules="isCheckmust('脱水')">
1476 1522
               <el-input v-model="form.dehydration"></el-input>
1477 1523
             </el-form-item>
1478 1524
           </el-col>
@@ -1481,13 +1527,15 @@
1481 1527
 
1482 1528
           <el-row :gutter="20"> -->
1483 1529
           <el-col :span="24" v-if="isShow('KT/V')">
1484
-            <el-form-item label="KT/V(在线):">
1530
+            <el-form-item label="KT/V(在线):" :prop="isName('KT/V')"
1531
+              :rules="isCheckmust('KT/V')">
1485 1532
               <el-input type="textarea" :rows="4" v-model="form.ktv"></el-input>
1486 1533
             </el-form-item>
1487 1534
           </el-col>
1488 1535
 
1489 1536
           <el-col :span="24" v-if="isShow('URR')">
1490
-            <el-form-item label="URR:">
1537
+            <el-form-item label="URR:" :prop="isName('URR')"
1538
+              :rules="isCheckmust('URR')">
1491 1539
               <el-input type="textarea" :rows="4" v-model="form.urr"></el-input>
1492 1540
             </el-form-item>
1493 1541
           </el-col>
@@ -1495,7 +1543,8 @@
1495 1543
 
1496 1544
           <el-row :gutter="20"> -->
1497 1545
           <el-col :span="24" v-if="isShow('病情变化')">
1498
-            <el-form-item label="病情变化:">
1546
+            <el-form-item label="病情变化:" :prop="isName('病情变化')"
1547
+              :rules="isCheckmust('病情变化')">
1499 1548
               <el-select
1500 1549
                 v-model="symptom_selecteds"
1501 1550
                 style="width: 100%"
@@ -1515,7 +1564,8 @@
1515 1564
           <!-- </el-row>
1516 1565
           <el-row :gutter="20"> -->
1517 1566
           <el-col :span="24" v-if="isShow('病情变化')">
1518
-            <el-form-item>
1567
+            <el-form-item :prop="isName('病情变化')"
1568
+              :rules="isCheckmust('病情变化')">
1519 1569
               <el-input
1520 1570
                 type="textarea"
1521 1571
                 :rows="4"
@@ -1529,7 +1579,8 @@
1529 1579
           <el-row :gutter="20"> -->
1530 1580
 
1531 1581
           <el-col :span="24" v-if="isShow('处理')">
1532
-            <el-form-item label="处理:">
1582
+            <el-form-item label="处理:" :prop="isName('处理')"
1583
+              :rules="isCheckmust('处理')">
1533 1584
               <el-select
1534 1585
                 v-model="dispose_selecteds"
1535 1586
                 style="width: 100%"
@@ -1550,7 +1601,8 @@
1550 1601
           <!-- </el-row>
1551 1602
           <el-row :gutter="20"> -->
1552 1603
           <el-col :span="24" v-if="isShow('处理')">
1553
-            <el-form-item>
1604
+            <el-form-item :prop="isName('处理')"
1605
+              :rules="isCheckmust('处理')">
1554 1606
               <el-input
1555 1607
                 type="textarea"
1556 1608
                 :rows="4"
@@ -1564,7 +1616,8 @@
1564 1616
 
1565 1617
           <el-row :gutter="20"> -->
1566 1618
           <el-col :span="24" v-if="isShow('结果')">
1567
-            <el-form-item label="结果:">
1619
+            <el-form-item label="结果:" :prop="isName('结果')"
1620
+              :rules="isCheckmust('结果')">
1568 1621
               <el-select
1569 1622
                 v-model="result_selecteds"
1570 1623
                 style="width: 100%"
@@ -1584,7 +1637,8 @@
1584 1637
           <!-- </el-row>
1585 1638
           <el-row :gutter="20"> -->
1586 1639
           <el-col :span="24" v-if="isShow('结果')">
1587
-            <el-form-item>
1640
+            <el-form-item :prop="isName('结果')"
1641
+              :rules="isCheckmust('结果')">
1588 1642
               <el-input
1589 1643
                 type="textarea"
1590 1644
                 :rows="4"
@@ -1598,7 +1652,7 @@
1598 1652
 
1599 1653
       <div slot="footer" class="dialog-footer" v-show="edit">
1600 1654
         <el-button @click="cancelEditAction">取 消</el-button>
1601
-        <el-button :loading="loading" type="primary"  @click="submitAction">保 存</el-button>
1655
+        <el-button :loading="loading" type="primary"  @click="submitAction('form')">保 存</el-button>
1602 1656
       </div>
1603 1657
       <!--</div>-->
1604 1658
     </el-dialog>
@@ -1743,6 +1797,34 @@ export default {
1743 1797
    
1744 1798
   },
1745 1799
   methods: {
1800
+      isName(name) {
1801
+      let filedList = store.getters.xt_user.fileds;
1802
+      for (let i = 0; i < filedList.length; i++) {
1803
+        if (filedList[i].module == 4 && filedList[i].filed_name_cn == name) {
1804
+          return filedList[i].filed_name;
1805
+        }
1806
+      }
1807
+    },
1808
+
1809
+    isCheckmust(name) {
1810
+      let filedList = store.getters.xt_user.fileds;
1811
+      for (let i = 0; i < filedList.length; i++) {
1812
+        if (
1813
+          filedList[i].module == 4
1814
+          &&filedList[i].filed_name_cn == name 
1815
+          &&filedList[i].is_write == 1
1816
+        ) {
1817
+          // console.log(filedList[i].is_write,'false')
1818
+          // console.log(name,filedList[i].filed_name_cn,'难道不一样吗')
1819
+          return [{ required: true ,message:`请输入${name}` }];
1820
+        } 
1821
+        // else {
1822
+        //   console.log(name,filedList[i].filed_name_cn,'难道不一样吗')
1823
+        //   // console.log(filedList[i].is_write,'true')
1824
+        //   return [{ required:false}];
1825
+        // }
1826
+      }
1827
+    },
1746 1828
     venousPressureChange(type) {
1747 1829
       if (type == 1) {
1748 1830
         this.form.venous_pressure = Math.ceil(
@@ -2203,9 +2285,11 @@ export default {
2203 2285
       }
2204 2286
     },
2205 2287
 
2206
-    submitAction: function () {
2288
+    submitAction: function (form) {
2207 2289
       // TODO loading
2208
-      this.loading = true
2290
+        this.$refs[form].validate((valid) => {
2291
+          if (valid) {
2292
+            this.loading = true
2209 2293
       console.log("aaaa")
2210 2294
       var is_new = this.form.id;
2211 2295
       this.form.operate_time = parseInt(this.form.operate_time / 1000);
@@ -2500,6 +2584,13 @@ export default {
2500 2584
         }
2501 2585
       );
2502 2586
       this.loading = false
2587
+          } else {
2588
+            console.log('error submit!!');
2589
+            return false;
2590
+          }
2591
+        });
2592
+
2593
+      
2503 2594
     },
2504 2595
 
2505 2596
     symptomTextareaBlur: function () {

+ 229 - 170
src/xt_pages/dialysis/details/dialog/treatmentSummaryDialog.vue View File

@@ -7,10 +7,14 @@
7 7
     :modal-append-to-body="false"
8 8
   >
9 9
     <div class="warnTxt" v-if="showTxt != ''">{{ showTxt }}</div>
10
-    <el-form :model="treatmentSummary">
10
+    <el-form :model="treatmentSummary" ref="treatmentSummary">
11 11
       <el-row :gutter="20">
12 12
         <el-col :span="24" v-if="isShow('宣教知识')">
13
-          <el-form-item label="宣教知识:">
13
+          <el-form-item
14
+            label="宣教知识:"
15
+            :prop="isName('宣教知识')"
16
+            :rules="isCheckmust('宣教知识')"
17
+          >
14 18
             <el-select @change="dialysisAfterTeachSelectChange" v-model="value">
15 19
               <el-option
16 20
                 v-for="(item, index) in education"
@@ -24,7 +28,10 @@
24 28
       </el-row>
25 29
       <el-row :gutter="20">
26 30
         <el-col v-if="isShow('宣教知识')">
27
-          <el-form-item>
31
+          <el-form-item
32
+            :prop="isName('宣教知识')"
33
+            :rules="isCheckmust('宣教知识')"
34
+          >
28 35
             <el-input
29 36
               type="textarea"
30 37
               v-model="treatmentSummary.mission"
@@ -35,7 +42,11 @@
35 42
       </el-row>
36 43
       <el-row :gutter="20">
37 44
         <el-col :span="24" v-if="isShow('透析小结')">
38
-          <el-form-item label="透析小结:">
45
+          <el-form-item
46
+            label="透析小结:"
47
+            :prop="isName('透析小结')"
48
+            :rules="isCheckmust('透析小结')"
49
+          >
39 50
             <el-select @change="dialysisSummarySelectChange" v-model="value2">
40 51
               <el-option
41 52
                 v-for="(item, index) in summary"
@@ -49,7 +60,10 @@
49 60
       </el-row>
50 61
       <el-row :gutter="20">
51 62
         <el-col v-if="isShow('透析小结')">
52
-          <el-form-item>
63
+          <el-form-item
64
+            :prop="isName('透析小结')"
65
+            :rules="isCheckmust('透析小结')"
66
+          >
53 67
             <el-input
54 68
               type="textarea"
55 69
               v-model="treatmentSummary.dialysis_summary"
@@ -60,7 +74,11 @@
60 74
       </el-row>
61 75
       <el-row :gutter="20">
62 76
         <el-col :span="24" v-if="isShow('透析护理记录')">
63
-          <el-form-item label="透析护理记录:">
77
+          <el-form-item
78
+            label="透析护理记录:"
79
+            :prop="isName('透析护理记录')"
80
+            :rules="isCheckmust('透析护理记录')"
81
+          >
64 82
             <el-select
65 83
               @change="dialysisNusingRecordSelectChange"
66 84
               v-model="value3"
@@ -77,7 +95,10 @@
77 95
       </el-row>
78 96
       <el-row :gutter="20">
79 97
         <el-col v-if="isShow('透析护理记录')">
80
-          <el-form-item>
98
+          <el-form-item
99
+            :prop="isName('透析护理记录')"
100
+            :rules="isCheckmust('透析护理记录')"
101
+          >
81 102
             <el-input
82 103
               type="textarea"
83 104
               v-model="treatmentSummary.nursing_record"
@@ -88,7 +109,11 @@
88 109
       </el-row>
89 110
       <el-row :gutter="20">
90 111
         <el-col :span="24" v-if="isShow('特殊记录')">
91
-          <el-form-item label="特殊记录:">
112
+          <el-form-item
113
+            label="特殊记录:"
114
+            :prop="isName('特殊记录')"
115
+            :rules="isCheckmust('特殊记录')"
116
+          >
92 117
             <el-select
93 118
               @change="dialysisSpecialRecordSelectChange"
94 119
               v-model="value4"
@@ -105,7 +130,10 @@
105 130
       </el-row>
106 131
       <el-row :gutter="20">
107 132
         <el-col v-if="isShow('特殊记录')">
108
-          <el-form-item>
133
+          <el-form-item
134
+            :prop="isName('特殊记录')"
135
+            :rules="isCheckmust('特殊记录')"
136
+          >
109 137
             <el-input
110 138
               type="textarea"
111 139
               v-model="treatmentSummary.special_record"
@@ -117,7 +145,10 @@
117 145
     </el-form>
118 146
     <div slot="footer" class="dialog-footer">
119 147
       <el-button @click="handleCancle">取 消</el-button>
120
-      <el-button type="primary" @click="handleComfirm" v-if="hasPermission"
148
+      <el-button
149
+        type="primary"
150
+        @click="handleComfirm('treatmentSummary')"
151
+        v-if="hasPermission"
121 152
         >保 存</el-button
122 153
       >
123 154
     </div>
@@ -125,239 +156,269 @@
125 156
 </template>
126 157
 
127 158
 <script>
128
-import { getDataConfig } from '@/utils/data'
129
-import { postTreatmentsummary } from '@/api/dialysis'
130
-import { uParseTime } from '@/utils/tools'
131
-import store from '@/store'
132
-import request from '@/utils/request'
133
-import { parseTime } from '@/utils'
159
+import { getDataConfig } from "@/utils/data";
160
+import { postTreatmentsummary } from "@/api/dialysis";
161
+import { uParseTime } from "@/utils/tools";
162
+import store from "@/store";
163
+import request from "@/utils/request";
164
+import { parseTime } from "@/utils";
134 165
 
135 166
 export default {
136
-  name: 'treatmentSummaryDialog',
167
+  name: "treatmentSummaryDialog",
137 168
 
138 169
   props: {
139 170
     treatment_summary: {
140 171
       // 治疗小结
141 172
       type: Object,
142 173
       default: () => {
143
-        return { id: 0 }
144
-      }
174
+        return { id: 0 };
175
+      },
145 176
     },
146 177
     patient: {
147 178
       // 患者信息
148 179
       type: Object,
149 180
       default: () => {
150
-        return { id: 0 }
151
-      }
181
+        return { id: 0 };
182
+      },
152 183
     },
153 184
   },
154 185
   data() {
155 186
     return {
156
-      showTxt: '',
187
+      showTxt: "",
157 188
       hasPermission: true,
158
-      value: '',
159
-      value2: '',
160
-      value3: '',
161
-      value4: '',
189
+      value: "",
190
+      value2: "",
191
+      value3: "",
192
+      value4: "",
162 193
       isVisibility: false,
163
-      record_date: '',
194
+      record_date: "",
164 195
       education: [],
165 196
       summary: [],
166 197
       nursingRecord: [],
167 198
       specialRecord: [],
168 199
       treatmentSummary: {
169
-        mission: '',
170
-        dialysis_summary: '',
171
-        sj_nurse: '',
172
-        zl_nurse: '',
173
-        hd_nurse: '',
174
-        xj_nurse: '',
175
-        zl_doctor: '',
176
-        nursing_record: '',
177
-        special_record: ''
200
+        mission: "",
201
+        dialysis_summary: "",
202
+        sj_nurse: "",
203
+        zl_nurse: "",
204
+        hd_nurse: "",
205
+        xj_nurse: "",
206
+        zl_doctor: "",
207
+        nursing_record: "",
208
+        special_record: "",
178 209
       },
179 210
       //
180
-      date:''
181
-    }
211
+      date: "",
212
+    };
182 213
   },
183 214
   methods: {
184
-    show(record,date) {
185
-      this.isVisibility = true
186
-      this.record = record
187
-      
188
-      if(date){
189
-        this.date = date
190
-        this.record_date = uParseTime(this.date, '{y}-{m}-{d}')
191
-       
215
+    isName(name) {
216
+      let filedList = store.getters.xt_user.fileds;
217
+      for (let i = 0; i < filedList.length; i++) {
218
+        if (filedList[i].module == 6 && filedList[i].filed_name_cn == name) {
219
+          return filedList[i].filed_name;
220
+        }
192 221
       }
193
-      
194
-      console.log('治疗小结', record)
195
-      this.getPermission()
222
+    },
223
+
224
+    isCheckmust(name) {
225
+      let filedList = store.getters.xt_user.fileds;
226
+      for (let i = 0; i < filedList.length; i++) {
227
+        if (
228
+          filedList[i].module == 6 &&
229
+          filedList[i].filed_name_cn == name &&
230
+          filedList[i].is_write == 1
231
+        ) {
232
+          return [{ required: true, message: `请输入${name}` }];
233
+        }
234
+      }
235
+    },
236
+    show(record, date) {
237
+      this.isVisibility = true;
238
+      this.record = record;
239
+
240
+      if (date) {
241
+        this.date = date;
242
+        this.record_date = uParseTime(this.date, "{y}-{m}-{d}");
243
+      }
244
+
245
+      console.log("治疗小结", record);
246
+      this.getPermission();
196 247
     },
197 248
     hide() {
198
-      this.isVisibility = false
249
+      this.isVisibility = false;
199 250
     },
200
-    dialysisAfterTeachSelectChange: function(values) {
201
-      if (this.treatmentSummary.mission == '') {
202
-        this.treatmentSummary.mission = values
251
+    dialysisAfterTeachSelectChange: function (values) {
252
+      if (this.treatmentSummary.mission == "") {
253
+        this.treatmentSummary.mission = values;
203 254
       } else {
204 255
         if (this.treatmentSummary.mission.indexOf(values) == -1) {
205 256
           if (
206 257
             this.treatmentSummary.mission
207 258
               .charAt(this.treatmentSummary.mission.length - 1)
208
-              .indexOf('。') == -1
259
+              .indexOf("。") == -1
209 260
           ) {
210 261
             this.treatmentSummary.mission =
211
-              this.treatmentSummary.mission + ',' + values
262
+              this.treatmentSummary.mission + "," + values;
212 263
           } else {
213 264
             this.treatmentSummary.mission =
214
-              this.treatmentSummary.mission + values
265
+              this.treatmentSummary.mission + values;
215 266
           }
216 267
         }
217 268
       }
218 269
     },
219
-    dialysisSummarySelectChange: function(values) {
220
-      if (this.treatmentSummary.dialysis_summary == '') {
221
-        this.treatmentSummary.dialysis_summary = values
270
+    dialysisSummarySelectChange: function (values) {
271
+      if (this.treatmentSummary.dialysis_summary == "") {
272
+        this.treatmentSummary.dialysis_summary = values;
222 273
       } else {
223 274
        
224 275
         if (this.treatmentSummary.dialysis_summary.indexOf(values) == -1) {
225 276
           if (
226 277
             this.treatmentSummary.dialysis_summary
227 278
               .charAt(this.treatmentSummary.dialysis_summary.length - 1)
228
-              .indexOf('。') == -1
279
+              .indexOf("。") == -1
229 280
           ) {
230 281
             this.treatmentSummary.dialysis_summary =
231
-              this.treatmentSummary.dialysis_summary + ',' + values
282
+              this.treatmentSummary.dialysis_summary + "," + values;
232 283
           } else {
233 284
             this.treatmentSummary.dialysis_summary =
234
-              this.treatmentSummary.dialysis_summary + ',' + values
285
+              this.treatmentSummary.dialysis_summary + "," + values;
235 286
             this.treatmentSummary.dialysis_summary =
236
-              this.treatmentSummary.dialysis_summary + values
287
+              this.treatmentSummary.dialysis_summary + values;
237 288
           }
238 289
         }
239 290
       }
240 291
     },
241
-    dialysisNusingRecordSelectChange: function(values) {
242
-      if (this.treatmentSummary.nursing_record == '') {
243
-        this.treatmentSummary.nursing_record = values
292
+    dialysisNusingRecordSelectChange: function (values) {
293
+      if (this.treatmentSummary.nursing_record == "") {
294
+        this.treatmentSummary.nursing_record = values;
244 295
       } else {
245 296
         if (this.treatmentSummary.nursing_record.indexOf(values) == -1) {
246 297
           if (
247 298
             this.treatmentSummary.nursing_record
248 299
               .charAt(this.treatmentSummary.nursing_record.length - 1)
249
-              .indexOf('。') == -1
300
+              .indexOf("。") == -1
250 301
           ) {
251 302
             this.treatmentSummary.nursing_record =
252
-              this.treatmentSummary.nursing_record + ',' + values
303
+              this.treatmentSummary.nursing_record + "," + values;
253 304
           } else {
254 305
             this.treatmentSummary.nursing_record =
255
-              this.treatmentSummary.nursing_record + ',' + values
306
+              this.treatmentSummary.nursing_record + "," + values;
256 307
             this.treatmentSummary.nursing_record =
257
-              this.treatmentSummary.nursing_record + values
308
+              this.treatmentSummary.nursing_record + values;
258 309
           }
259 310
         }
260 311
       }
261 312
     },
262 313
     dialysisSpecialRecordSelectChange(values) {
263
-      if (this.treatmentSummary.special_record == '') {
264
-        this.treatmentSummary.special_record = values
314
+      if (this.treatmentSummary.special_record == "") {
315
+        this.treatmentSummary.special_record = values;
265 316
       } else {
266 317
         if (this.treatmentSummary.special_record.indexOf(values) == -1) {
267 318
           if (
268 319
             this.treatmentSummary.special_record
269 320
               .charAt(this.treatmentSummary.special_record.length - 1)
270
-              .indexOf('。') == -1
321
+              .indexOf("。") == -1
271 322
           ) {
272 323
             this.treatmentSummary.special_record =
273
-              this.treatmentSummary.special_record + ',' + values
324
+              this.treatmentSummary.special_record + "," + values;
274 325
           } else {
275 326
             this.treatmentSummary.special_record =
276
-              this.treatmentSummary.special_record + ',' + values
327
+              this.treatmentSummary.special_record + "," + values;
277 328
             this.treatmentSummary.special_record =
278
-              this.treatmentSummary.special_record + values
329
+              this.treatmentSummary.special_record + values;
279 330
           }
280 331
         }
281 332
       }
282 333
     },
283
-    handleCancle: function() {
284
-      this.isVisibility = false
334
+    handleCancle: function () {
335
+      this.isVisibility = false;
285 336
     },
286
-    handleComfirm: function() {
287
-      const ParamsQuery = this.treatmentSummary
288
-      ParamsQuery['patient'] = this.patient.id
289
-      ParamsQuery['record_date'] = this.record_date
290
-      ParamsQuery['mode'] = '1'
291
-      if (this.treatment_summary.id > 0) {
292
-        ParamsQuery['mode'] = '2'
293
-        if (
294
-          this.treatment_summary.creater != this.$store.getters.xt_user.user.id
295
-        ) {
296
-          ParamsQuery['mode'] = '3'
297
-        }
298
-      }
299
-      postTreatmentsummary(ParamsQuery).then(response => {
300
-        if (response.data.state == 0) {
301
-          this.$message.error(response.data.msg)
302
-          return false
303
-        } else {
304
-          this.$notify({
305
-            title: '成功',
306
-            message: '提交成功',
307
-            type: 'success',
308
-            duration: 2000
309
-          })
310
-
311
-          const summary_resp = response.data.data.summary
312
-          // prop
313
-          var treatment_summary = this.treatment_summary
314
-          for (var index in summary_resp) {
315
-            // treatment_summary[index] = summary_resp[index];
316
-            this.$set(treatment_summary, index, summary_resp[index])
337
+    handleComfirm(formName) {
338
+      this.$refs[formName].validate((valid) => {
339
+        if (valid) {
340
+          const ParamsQuery = this.treatmentSummary;
341
+          ParamsQuery["patient"] = this.patient.id;
342
+          ParamsQuery["record_date"] = this.record_date;
343
+          ParamsQuery["mode"] = "1";
344
+          if (this.treatment_summary.id > 0) {
345
+            ParamsQuery["mode"] = "2";
346
+            if (
347
+              this.treatment_summary.creater !=
348
+              this.$store.getters.xt_user.user.id
349
+            ) {
350
+              ParamsQuery["mode"] = "3";
351
+            }
317 352
           }
353
+          postTreatmentsummary(ParamsQuery).then((response) => {
354
+            if (response.data.state == 0) {
355
+              this.$message.error(response.data.msg);
356
+              return false;
357
+            } else {
358
+              this.$notify({
359
+                title: "成功",
360
+                message: "提交成功",
361
+                type: "success",
362
+                duration: 2000,
363
+              });
318 364
 
319
-          this.hide()
365
+              const summary_resp = response.data.data.summary;
366
+              // prop
367
+              var treatment_summary = this.treatment_summary;
368
+              for (var index in summary_resp) {
369
+                // treatment_summary[index] = summary_resp[index];
370
+                this.$set(treatment_summary, index, summary_resp[index]);
371
+              }
372
+
373
+              this.hide();
374
+            }
375
+          });
376
+        } else {
377
+          console.log("error submit!!");
378
+          return false;
320 379
         }
321
-      })
380
+      });
322 381
     },
323 382
     getPermission() {
324
-      request.get('/api/func_per/get', {
383
+      request
384
+        .get("/api/func_per/get", {
325 385
           params: {
326
-            create_url: '/api/dialysis/treatmentsummary?mode=1',
327
-            modify_url: '/api/dialysis/treatmentsummary?mode=2',
328
-            modify_other_url: '/api/dialysis/treatmentsummary?mode=3',
329
-            module: 9
330
-          }
331
-        }).then(res => {
386
+            create_url: "/api/dialysis/treatmentsummary?mode=1",
387
+            modify_url: "/api/dialysis/treatmentsummary?mode=2",
388
+            modify_other_url: "/api/dialysis/treatmentsummary?mode=3",
389
+            module: 9,
390
+          },
391
+        })
392
+        .then((res) => {
332 393
           if (res.data.state == 0) {
333
-            this.hasPermission = false
394
+            this.hasPermission = false;
334 395
           } else if (res.data.state == 1) {
335
-            if (this.record.id != '' && this.record.creater != 0) {
396
+            if (this.record.id != "" && this.record.creater != 0) {
336 397
               // 有数据
337 398
               if (this.record.creater == this.$store.getters.user.admin.id) {
338 399
                 // 创建人是自己
339 400
                 if (res.data.data.is_has_modify == false) {
340
-                  this.hasPermission = false
341
-                  this.showTxt = '你没有修改治疗小结权限'
401
+                  this.hasPermission = false;
402
+                  this.showTxt = "你没有修改治疗小结权限";
342 403
                 }
343 404
               } else {
344 405
                 // 创建人不是自己
345 406
                 if (res.data.data.is_has_modify_other == false) {
346
-                  this.hasPermission = false
347
-                  this.showTxt = '你没有修改他人治疗小结权限'
407
+                  this.hasPermission = false;
408
+                  this.showTxt = "你没有修改他人治疗小结权限";
348 409
                 }
349 410
               }
350
-            } else if (this.record.id == '' || this.record.creater == 0) {
411
+            } else if (this.record.id == "" || this.record.creater == 0) {
351 412
               if (res.data.data.is_has_create == false) {
352
-                this.hasPermission = false
353
-                this.showTxt = '你没有新增治疗小结权限'
413
+                this.hasPermission = false;
414
+                this.showTxt = "你没有新增治疗小结权限";
354 415
               }
355 416
             }
356 417
           }
357
-        })
418
+        });
358 419
     },
359 420
     isShow(name) {
360
-      var filedList = store.getters.xt_user.fileds
421
+      var filedList = store.getters.xt_user.fileds;
361 422
 
362 423
       for (let i = 0; i < filedList.length; i++) {
363 424
         if (
@@ -365,73 +426,71 @@ export default {
365 426
           filedList[i].filed_name_cn == name &&
366 427
           filedList[i].is_show == 1
367 428
         ) {
368
-          return true
429
+          return true;
369 430
         }
370 431
       }
371
-      return false
372
-    }
432
+      return false;
433
+    },
373 434
   },
374 435
   watch: {
375 436
     isVisibility(val) {},
376
-    'treatment_summary.id': {
437
+    "treatment_summary.id": {
377 438
       immediate: true,
378
-      deep:true,
379
-      handler(oldVal,newVal) {
380
-        if(oldVal == newVal){
439
+      deep: true,
440
+      handler(oldVal, newVal) {
441
+        if (oldVal == newVal) {
381 442
           for (var index in this.treatmentSummary) {
382
-            this.treatmentSummary[index] = this.treatment_summary[index]
443
+            this.treatmentSummary[index] = this.treatment_summary[index];
383 444
           }
384 445
         }
385 446
         if (this.treatment_summary.id > 0) {
386 447
           for (var index in this.treatmentSummary) {
387
-            this.value = ''
388
-            this.value2 = ''
389
-            this.value3 = ''
390
-            this.value4 = ''
391
-            this.treatmentSummary[index] = this.treatment_summary[index]
448
+            this.value = "";
449
+            this.value2 = "";
450
+            this.value3 = "";
451
+            this.value4 = "";
452
+            this.treatmentSummary[index] = this.treatment_summary[index];
392 453
           }
393
-        }else if(this.treatment_summary.id == 0){
454
+        } else if (this.treatment_summary.id == 0) {
394 455
           for (var index in this.treatmentSummary) {
395 456
             // this.treatmentSummary[index] = this.treatment_summary[index]
396
-            this.value = ''
397
-            this.value2 = ''
398
-            this.value3 = ''
399
-            this.value4 = ''
457
+            this.value = "";
458
+            this.value2 = "";
459
+            this.value3 = "";
460
+            this.value4 = "";
400 461
             this.treatmentSummary = {
401
-              mission: '',
402
-              dialysis_summary: '',
403
-              sj_nurse: '',
404
-              zl_nurse: '',
405
-              hd_nurse: '',
406
-              xj_nurse: '',
407
-              zl_doctor: '',
408
-              nursing_record: '',
409
-              special_record: ''
410
-            }
462
+              mission: "",
463
+              dialysis_summary: "",
464
+              sj_nurse: "",
465
+              zl_nurse: "",
466
+              hd_nurse: "",
467
+              xj_nurse: "",
468
+              zl_doctor: "",
469
+              nursing_record: "",
470
+              special_record: "",
471
+            };
411 472
           }
412
-          
413 473
         }
414
-      }
415
-    }
474
+      },
475
+    },
416 476
   },
417 477
   created() {
418
-    this.education = getDataConfig('education', 'education')
419
-    this.summary = getDataConfig('summary', 'summary')
478
+    this.education = getDataConfig("education", "education");
479
+    this.summary = getDataConfig("summary", "summary");
420 480
 
421
-    this.nursingRecord = getDataConfig('nursing_record', 'nursing_record')
481
+    this.nursingRecord = getDataConfig("nursing_record", "nursing_record");
422 482
 
423
-    this.specialRecord = getDataConfig('special_record', 'special_record')
483
+    this.specialRecord = getDataConfig("special_record", "special_record");
424 484
 
425 485
     // var date = this.$route.query && this.$route.query.date
426 486
     // this.record_date = uParseTime(date, '{y}-{m}-{d}')
427 487
 
428
-    if(this.$route.query && this.$route.query.date){
429
-      var date = this.$route.query && this.$route.query.date
430
-      this.record_date = uParseTime(date, '{y}-{m}-{d}')
488
+    if (this.$route.query && this.$route.query.date) {
489
+      var date = this.$route.query && this.$route.query.date;
490
+      this.record_date = uParseTime(date, "{y}-{m}-{d}");
431 491
     }
432
-    
433
-  }
434
-}
492
+  },
493
+};
435 494
 </script>
436 495
 
437 496
 <style scoped>