ソースを参照

Merge branch '20201109_pc_vue_new_branch' of http://git.shengws.com/csx/Vue_New into 20201109_pc_vue_new_branch

csx 4 年 前
コミット
1469ea4430

+ 45 - 0
src/api/project/project.js ファイルの表示

@@ -470,4 +470,49 @@ export function changePatient(id,params){
470 470
        method:"Get",
471 471
        params:params
472 472
      })
473
+  }
474
+
475
+  export function saveMainTemplate(params){
476
+    
477
+    return request({
478
+      url:"/api/hispatient/savemaintemplate",
479
+      method:"Get",
480
+      params:params
481
+    })
482
+  }
483
+
484
+  export function getMedicalTemplateList(params){
485
+    
486
+    return request({
487
+      url:"/api/hispatient/getmedicaltemplatelist",
488
+      method:"Get",
489
+      params:params
490
+    })
491
+  }
492
+
493
+  export function getMainTemplateById(id,params){
494
+    
495
+    return request({
496
+      url:"/api/hispatient/getmaintemplatebyid?id="+id,
497
+      method:"get",
498
+      params:params
499
+    })
500
+  }
501
+
502
+  export function UpdateMainTemplate(params){
503
+   
504
+    return request({
505
+      url:"/api/hispatient/updatemaintemplate",
506
+      method:"get",
507
+      params:params
508
+    })
509
+  }
510
+
511
+  export function deleteMainTemplate(id,params){
512
+  
513
+     return request({
514
+       url:"/api/hispatient/deletemaintemplate?id="+id,
515
+       method:"Get",
516
+       params:params
517
+     })
473 518
   }

+ 914 - 0
src/xt_pages/data/medicalTemplate.vue ファイルの表示

@@ -0,0 +1,914 @@
1
+<template>
2
+  <div class="main-contain">
3
+    <div class="position">
4
+      <bread-crumb :crumbs='crumbs'></bread-crumb>
5
+    </div>
6
+
7
+    <div class="app-container">
8
+      <el-tabs v-model="activeName">
9
+        <el-tab-pane label="主诉">
10
+          <div>
11
+            <div class="filter-container">
12
+              <el-button
13
+                class="filter-item"
14
+                style="margin-left: 10px;margin-right: 10px"
15
+                @click="handleCreateTemplate"
16
+                type="primary"
17
+                size="small"
18
+                icon="el-icon-circle-plus-outline"
19
+              >新 增
20
+              </el-button>
21
+            </div>
22
+            <el-table
23
+              :data="tabledata"
24
+              border
25
+              fit
26
+              :row-style="{ color: '#303133' }"
27
+              :header-cell-style="{
28
+              backgroundColor: 'rgb(245, 247, 250)',
29
+              color: '#606266'
30
+            }"
31
+              @cell-mouse-leave="cellMouseLeave"
32
+              @cell-mouse-enter="cellMouseEnter"
33
+              :row-class-name="tableRowClassNames"
34
+              :span-method="merge"
35
+              style="width: 100%;min-height:500px;"
36
+            >
37
+              <el-table-column
38
+                prop="id"
39
+                label="标题"
40
+                align="center"
41
+               >
42
+                <template slot-scope="scope">
43
+                   {{scope.row.title}}
44
+                </template>
45
+              </el-table-column>
46
+
47
+
48
+              <el-table-column
49
+                prop="amount1"
50
+                align="center"
51
+                label="内容"
52
+               >
53
+                <template slot-scope="scope">
54
+                  {{scope.row.content}}
55
+                </template>
56
+              </el-table-column>
57
+             
58
+              <el-table-column
59
+                prop="amount1"
60
+                align="center"
61
+                label="备注"
62
+               >
63
+                <template slot-scope="scope">
64
+                  {{scope.row.remark}}
65
+                </template>
66
+              </el-table-column>
67
+
68
+              <el-table-column
69
+                align="center"
70
+                label="操作"
71
+                width="180"
72
+                class-name="small-padding fixed-width"
73
+              >
74
+                <template slot-scope="scope">
75
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
76
+                    <el-button
77
+                      type="primary"
78
+                      size="small"
79
+                      icon="el-icon-edit-outline"
80
+                      @click="edit(scope.row.id)"
81
+                    >
82
+                    </el-button>
83
+                  </el-tooltip>
84
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
85
+                    <el-button
86
+                      size="small"
87
+                      type="danger"
88
+                      icon="el-icon-delete"
89
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
90
+                    >
91
+                    </el-button>
92
+                  </el-tooltip>
93
+                </template>
94
+              </el-table-column>
95
+
96
+            </el-table>
97
+          
98
+          </div>
99
+        </el-tab-pane>
100
+         <el-tab-pane label="现病史">
101
+          <div>
102
+            <div class="filter-container">
103
+              <el-button
104
+                class="filter-item"
105
+                style="margin-left: 10px;margin-right: 10px"
106
+                @click="handleCreateTemplate"
107
+                type="primary"
108
+                size="small"
109
+                icon="el-icon-circle-plus-outline"
110
+              >新 增
111
+              </el-button>
112
+            </div>
113
+             <el-table
114
+              :data="tabledataOne"
115
+              border
116
+              fit
117
+              :row-style="{ color: '#303133' }"
118
+              :header-cell-style="{
119
+              backgroundColor: 'rgb(245, 247, 250)',
120
+              color: '#606266'
121
+            }"
122
+              @cell-mouse-leave="cellMouseLeave"
123
+              @cell-mouse-enter="cellMouseEnter"
124
+              :row-class-name="tableRowClassNames"
125
+              :span-method="merge"
126
+              style="width: 100%;min-height:500px;"
127
+            >
128
+              <el-table-column
129
+                prop="id"
130
+                label="标题"
131
+                align="center"
132
+               >
133
+                <template slot-scope="scope">
134
+                   {{scope.row.title}}
135
+                </template>
136
+              </el-table-column>
137
+
138
+
139
+              <el-table-column
140
+                prop="amount1"
141
+                align="center"
142
+                label="内容"
143
+               >
144
+                <template slot-scope="scope">
145
+                  {{scope.row.content}}
146
+                </template>
147
+              </el-table-column>
148
+             
149
+              <el-table-column
150
+                prop="amount1"
151
+                align="center"
152
+                label="备注"
153
+               >
154
+                <template slot-scope="scope">
155
+                  {{scope.row.remark}}
156
+                </template>
157
+              </el-table-column>
158
+
159
+              <el-table-column
160
+                align="center"
161
+                label="操作"
162
+                width="180"
163
+                class-name="small-padding fixed-width"
164
+              >
165
+                <template slot-scope="scope">
166
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
167
+                    <el-button
168
+                      type="primary"
169
+                      size="small"
170
+                      icon="el-icon-edit-outline"
171
+                      @click="edit(scope.row.id)"
172
+                    >
173
+                    </el-button>
174
+                  </el-tooltip>
175
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
176
+                    <el-button
177
+                      size="small"
178
+                      type="danger"
179
+                      icon="el-icon-delete"
180
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
181
+                    >
182
+                    </el-button>
183
+                  </el-tooltip>
184
+                </template>
185
+              </el-table-column>
186
+
187
+            </el-table>
188
+          
189
+          </div>
190
+        </el-tab-pane>
191
+         <el-tab-pane label="既往史">
192
+          <div>
193
+            <div class="filter-container">
194
+              <el-button
195
+                class="filter-item"
196
+                style="margin-left: 10px;margin-right: 10px"
197
+                @click="handleCreateTemplate"
198
+                type="primary"
199
+                size="small"
200
+                icon="el-icon-circle-plus-outline"
201
+              >新 增
202
+              </el-button>
203
+            </div>
204
+            <el-table
205
+              :data="tabledataTwo"
206
+              border
207
+              fit
208
+              :row-style="{ color: '#303133' }"
209
+              :header-cell-style="{
210
+              backgroundColor: 'rgb(245, 247, 250)',
211
+              color: '#606266'
212
+            }"
213
+              @cell-mouse-leave="cellMouseLeave"
214
+              @cell-mouse-enter="cellMouseEnter"
215
+              :row-class-name="tableRowClassNames"
216
+              :span-method="merge"
217
+              style="width: 100%;min-height:500px;"
218
+            >
219
+              <el-table-column
220
+                prop="id"
221
+                label="标题"
222
+                align="center"
223
+               >
224
+                <template slot-scope="scope">
225
+                   {{scope.row.title}}
226
+                </template>
227
+              </el-table-column>
228
+
229
+
230
+              <el-table-column
231
+                prop="amount1"
232
+                align="center"
233
+                label="内容"
234
+               >
235
+                <template slot-scope="scope">
236
+                  {{scope.row.content}}
237
+                </template>
238
+              </el-table-column>
239
+             
240
+              <el-table-column
241
+                prop="amount1"
242
+                align="center"
243
+                label="备注"
244
+               >
245
+                <template slot-scope="scope">
246
+                  {{scope.row.remark}}
247
+                </template>
248
+              </el-table-column>
249
+
250
+              <el-table-column
251
+                align="center"
252
+                label="操作"
253
+                width="180"
254
+                class-name="small-padding fixed-width"
255
+              >
256
+                <template slot-scope="scope">
257
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
258
+                    <el-button
259
+                      type="primary"
260
+                      size="small"
261
+                      icon="el-icon-edit-outline"
262
+                      @click="edit(scope.row.id)"
263
+                    >
264
+                    </el-button>
265
+                  </el-tooltip>
266
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
267
+                    <el-button
268
+                      size="small"
269
+                      type="danger"
270
+                      icon="el-icon-delete"
271
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
272
+                    >
273
+                    </el-button>
274
+                  </el-tooltip>
275
+                </template>
276
+              </el-table-column>
277
+
278
+            </el-table>
279
+          
280
+          </div>
281
+        </el-tab-pane>
282
+        <el-tab-pane label="个人史">
283
+          <div>
284
+            <div class="filter-container">
285
+              <el-button
286
+                class="filter-item"
287
+                style="margin-left: 10px;margin-right: 10px"
288
+                @click="handleCreateTemplate"
289
+                type="primary"
290
+                size="small"
291
+                icon="el-icon-circle-plus-outline"
292
+              >新 增
293
+              </el-button>
294
+            </div>
295
+            <el-table
296
+              :data="tabledataThree"
297
+              border
298
+              fit
299
+              :row-style="{ color: '#303133' }"
300
+              :header-cell-style="{
301
+              backgroundColor: 'rgb(245, 247, 250)',
302
+              color: '#606266'
303
+            }"
304
+              @cell-mouse-leave="cellMouseLeave"
305
+              @cell-mouse-enter="cellMouseEnter"
306
+              :row-class-name="tableRowClassNames"
307
+              :span-method="merge"
308
+              style="width: 100%;min-height:500px;"
309
+            >
310
+              <el-table-column
311
+                prop="id"
312
+                label="标题"
313
+                align="center"
314
+               >
315
+                <template slot-scope="scope">
316
+                   {{scope.row.title}}
317
+                </template>
318
+              </el-table-column>
319
+
320
+
321
+              <el-table-column
322
+                prop="amount1"
323
+                align="center"
324
+                label="内容"
325
+               >
326
+                <template slot-scope="scope">
327
+                  {{scope.row.content}}
328
+                </template>
329
+              </el-table-column>
330
+             
331
+              <el-table-column
332
+                prop="amount1"
333
+                align="center"
334
+                label="备注"
335
+               >
336
+                <template slot-scope="scope">
337
+                  {{scope.row.remark}}
338
+                </template>
339
+              </el-table-column>
340
+
341
+              <el-table-column
342
+                align="center"
343
+                label="操作"
344
+                width="180"
345
+                class-name="small-padding fixed-width"
346
+              >
347
+                <template slot-scope="scope">
348
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
349
+                    <el-button
350
+                      type="primary"
351
+                      size="small"
352
+                      icon="el-icon-edit-outline"
353
+                      @click="edit(scope.row.id)"
354
+                    >
355
+                    </el-button>
356
+                  </el-tooltip>
357
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
358
+                    <el-button
359
+                      size="small"
360
+                      type="danger"
361
+                      icon="el-icon-delete"
362
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
363
+                    >
364
+                    </el-button>
365
+                  </el-tooltip>
366
+                </template>
367
+              </el-table-column>
368
+
369
+            </el-table>
370
+          
371
+          </div>
372
+        </el-tab-pane>
373
+       
374
+        <el-tab-pane label="家族史">
375
+          <div>
376
+            <div class="filter-container">
377
+              <el-button
378
+                class="filter-item"
379
+                style="margin-left: 10px;margin-right: 10px"
380
+                @click="handleCreateTemplate"
381
+                type="primary"
382
+                size="small"
383
+                icon="el-icon-circle-plus-outline"
384
+              >新 增
385
+              </el-button>
386
+            </div>
387
+            <el-table
388
+              :data="tabledataFour"
389
+              border
390
+              fit
391
+              :row-style="{ color: '#303133' }"
392
+              :header-cell-style="{
393
+              backgroundColor: 'rgb(245, 247, 250)',
394
+              color: '#606266'
395
+            }"
396
+              @cell-mouse-leave="cellMouseLeave"
397
+              @cell-mouse-enter="cellMouseEnter"
398
+              :row-class-name="tableRowClassNames"
399
+              :span-method="merge"
400
+              style="width: 100%;min-height:500px;"
401
+            >
402
+              <el-table-column
403
+                prop="id"
404
+                label="标题"
405
+                align="center"
406
+               >
407
+                <template slot-scope="scope">
408
+                   {{scope.row.title}}
409
+                </template>
410
+              </el-table-column>
411
+
412
+
413
+              <el-table-column
414
+                prop="amount1"
415
+                align="center"
416
+                label="内容"
417
+               >
418
+                <template slot-scope="scope">
419
+                  {{scope.row.content}}
420
+                </template>
421
+              </el-table-column>
422
+             
423
+              <el-table-column
424
+                prop="amount1"
425
+                align="center"
426
+                label="备注"
427
+               >
428
+                <template slot-scope="scope">
429
+                  {{scope.row.remark}}
430
+                </template>
431
+              </el-table-column>
432
+
433
+              <el-table-column
434
+                align="center"
435
+                label="操作"
436
+                width="180"
437
+                class-name="small-padding fixed-width"
438
+              >
439
+                <template slot-scope="scope">
440
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
441
+                    <el-button
442
+                      type="primary"
443
+                      size="small"
444
+                      icon="el-icon-edit-outline"
445
+                      @click="edit(scope.row.id)"
446
+                    >
447
+                    </el-button>
448
+                  </el-tooltip>
449
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
450
+                    <el-button
451
+                      size="small"
452
+                      type="danger"
453
+                      icon="el-icon-delete"
454
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
455
+                    >
456
+                    </el-button>
457
+                  </el-tooltip>
458
+                </template>
459
+              </el-table-column>
460
+
461
+            </el-table>
462
+          
463
+          </div>
464
+        </el-tab-pane>
465
+         <el-tab-pane label="诊断信息">
466
+          <div>
467
+            <div class="filter-container">
468
+              <el-button
469
+                class="filter-item"
470
+                style="margin-left: 10px;margin-right: 10px"
471
+                @click="handleCreateTemplate"
472
+                type="primary"
473
+                size="small"
474
+                icon="el-icon-circle-plus-outline"
475
+              >新 增
476
+              </el-button>
477
+            </div>
478
+            <el-table
479
+              :data="tabledataFive"
480
+              border
481
+              fit
482
+              :row-style="{ color: '#303133' }"
483
+              :header-cell-style="{
484
+              backgroundColor: 'rgb(245, 247, 250)',
485
+              color: '#606266'
486
+            }"
487
+              @cell-mouse-leave="cellMouseLeave"
488
+              @cell-mouse-enter="cellMouseEnter"
489
+              :row-class-name="tableRowClassNames"
490
+              :span-method="merge"
491
+              style="width: 100%;min-height:500px;"
492
+            >
493
+              <el-table-column
494
+                prop="id"
495
+                label="标题"
496
+                align="center"
497
+               >
498
+                <template slot-scope="scope">
499
+                   {{scope.row.title}}
500
+                </template>
501
+              </el-table-column>
502
+
503
+
504
+              <el-table-column
505
+                prop="amount1"
506
+                align="center"
507
+                label="内容"
508
+               >
509
+                <template slot-scope="scope">
510
+                  {{scope.row.content}}
511
+                </template>
512
+              </el-table-column>
513
+             
514
+              <el-table-column
515
+                prop="amount1"
516
+                align="center"
517
+                label="备注"
518
+               >
519
+                <template slot-scope="scope">
520
+                  {{scope.row.remark}}
521
+                </template>
522
+              </el-table-column>
523
+
524
+              <el-table-column
525
+                align="center"
526
+                label="操作"
527
+                width="180"
528
+                class-name="small-padding fixed-width"
529
+              >
530
+                <template slot-scope="scope">
531
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
532
+                    <el-button
533
+                      type="primary"
534
+                      size="small"
535
+                      icon="el-icon-edit-outline"
536
+                      @click="edit(scope.row.id)"
537
+                    >
538
+                    </el-button>
539
+                  </el-tooltip>
540
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
541
+                    <el-button
542
+                      size="small"
543
+                      type="danger"
544
+                      icon="el-icon-delete"
545
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
546
+                    >
547
+                    </el-button>
548
+                  </el-tooltip>
549
+                </template>
550
+              </el-table-column>
551
+
552
+            </el-table>
553
+          
554
+          </div>
555
+        </el-tab-pane>
556
+          <el-tab-pane label="医嘱">
557
+          <div>
558
+            <div class="filter-container">
559
+              <el-button
560
+                class="filter-item"
561
+                style="margin-left: 10px;margin-right: 10px"
562
+                @click="handleCreateTemplate"
563
+                type="primary"
564
+                size="small"
565
+                icon="el-icon-circle-plus-outline"
566
+              >新 增
567
+              </el-button>
568
+            </div>
569
+             <el-table
570
+              :data="tabledataSix"
571
+              border
572
+              fit
573
+              :row-style="{ color: '#303133' }"
574
+              :header-cell-style="{
575
+              backgroundColor: 'rgb(245, 247, 250)',
576
+              color: '#606266'
577
+            }"
578
+              @cell-mouse-leave="cellMouseLeave"
579
+              @cell-mouse-enter="cellMouseEnter"
580
+              :row-class-name="tableRowClassNames"
581
+              :span-method="merge"
582
+              style="width: 100%;min-height:500px;"
583
+            >
584
+              <el-table-column
585
+                prop="id"
586
+                label="标题"
587
+                align="center"
588
+               >
589
+                <template slot-scope="scope">
590
+                   {{scope.row.title}}
591
+                </template>
592
+              </el-table-column>
593
+
594
+
595
+              <el-table-column
596
+                prop="amount1"
597
+                align="center"
598
+                label="内容"
599
+               >
600
+                <template slot-scope="scope">
601
+                  {{scope.row.content}}
602
+                </template>
603
+              </el-table-column>
604
+             
605
+              <el-table-column
606
+                prop="amount1"
607
+                align="center"
608
+                label="备注"
609
+               >
610
+                <template slot-scope="scope">
611
+                  {{scope.row.remark}}
612
+                </template>
613
+              </el-table-column>
614
+
615
+              <el-table-column
616
+                align="center"
617
+                label="操作"
618
+                width="180"
619
+                class-name="small-padding fixed-width"
620
+              >
621
+                <template slot-scope="scope">
622
+                  <el-tooltip class="item" effect="dark" content="编辑" placement="top">
623
+                    <el-button
624
+                      type="primary"
625
+                      size="small"
626
+                      icon="el-icon-edit-outline"
627
+                      @click="edit(scope.row.id)"
628
+                    >
629
+                    </el-button>
630
+                  </el-tooltip>
631
+                  <el-tooltip class="item" effect="dark" content="删除" placement="top">
632
+                    <el-button
633
+                      size="small"
634
+                      type="danger"
635
+                      icon="el-icon-delete"
636
+                      @click="deleteMainTemplate(scope.row.id,scope.$index)" 
637
+                    >
638
+                    </el-button>
639
+                  </el-tooltip>
640
+                </template>
641
+              </el-table-column>
642
+
643
+            </el-table>
644
+          
645
+          </div>
646
+        </el-tab-pane>
647
+     
648
+      </el-tabs>
649
+
650
+       <el-dialog
651
+        title="新增"
652
+        width="50%"
653
+        :visible.sync="dialogVisible"
654
+       >
655
+        <div>
656
+            <el-form :model="form" ref="form" label-width="100px" label-position="right" :rules="rules">
657
+                <el-form-item label="标题:" prop="title" required>
658
+                    <el-input v-model="form.title" placeholder="" maxlength="30"></el-input>
659
+                </el-form-item>
660
+                <el-form-item label="内容 : " prop="content" required>
661
+                    <el-input  type="textarea" v-model="form.content" placeholder=""></el-input>
662
+                </el-form-item>
663
+                <el-form-item label="备注 : " prop="remark">
664
+                    <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
665
+                </el-form-item>
666
+            </el-form>
667
+        </div>
668
+        <div slot="footer" class="dialog-footer">
669
+            <el-button @click="dialogVisible = false">取 消</el-button>
670
+            <el-button type="primary"  @click="submitAction('form')">保 存</el-button>
671
+        </div>
672
+    </el-dialog>   
673
+
674
+
675
+    <el-dialog
676
+        title="编辑"
677
+        width="50%"
678
+        :visible.sync="editDialogVisible"
679
+       >
680
+        <div>
681
+            <el-form :model="form" ref="form" label-width="100px" label-position="right" :rules="rules">
682
+                <el-form-item label="标题:" prop="title" required>
683
+                    <el-input v-model="form.title" placeholder="" maxlength="30"></el-input>
684
+                </el-form-item>
685
+                <el-form-item label="内容 : " prop="content" required>
686
+                    <el-input  type="textarea" v-model="form.content" placeholder=""></el-input>
687
+                </el-form-item>
688
+                <el-form-item label="备注 : " prop="remark">
689
+                    <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="form.remark"></el-input>
690
+                </el-form-item>
691
+            </el-form>
692
+        </div>
693
+        <div slot="footer" class="dialog-footer">
694
+            <el-button @click="editDialogVisible = false">取 消</el-button>
695
+            <el-button type="primary"  @click="UpdateMainTemplate('form')">保 存</el-button>
696
+        </div>
697
+    </el-dialog>          
698
+    </div>
699
+  </div>
700
+
701
+</template>
702
+
703
+
704
+<style>
705
+  @import "../../../static/css/table_row.css";
706
+
707
+  .filter-item {
708
+    float: right;
709
+  }
710
+</style>
711
+
712
+<script>
713
+ 
714
+  import BreadCrumb from '@/xt_pages/components/bread-crumb'
715
+  import { saveMainTemplate,getMedicalTemplateList,getMainTemplateById,UpdateMainTemplate,deleteMainTemplate} from "@/api/project/project"
716
+  export default {
717
+    name: 'hisTemplate',
718
+    components: { BreadCrumb },
719
+    data() {
720
+      return {
721
+        crumbs: [
722
+          { path: false, name: '模版管理' },
723
+          { path: '', name: '医嘱模版' }
724
+        ],
725
+        rowIndex: -1,
726
+        current_template_id: 0,
727
+        currentObject: {},
728
+        tempArr: [],
729
+        sameRowArr: [],
730
+        dialogVisible:false,
731
+        form:{
732
+          id:0,
733
+          title:"",
734
+          content:"",
735
+          remark:""  
736
+        },
737
+        rules: {
738
+            title: [{ required: true, message: "请输入标题"}],
739
+            content: [{ required: true, message: "请输入内容"}]
740
+        },
741
+        tabledata:[],
742
+        tabledataOne:[],
743
+        tabledataTwo:[],
744
+        tabledataThree:[],
745
+        tabledataFour:[],
746
+        tabledataFive:[],
747
+        tabledataSix:[],
748
+        tabledataSeven:[],
749
+        editDialogVisible:false,
750
+        activeName:0
751
+      }
752
+    },
753
+    created() {
754
+       this.getlist()
755
+    },
756
+    methods:{
757
+        handleCreateTemplate(){
758
+       
759
+        this.dialogVisible = true
760
+      },
761
+      submitAction(formName){
762
+
763
+            var template_id = 1
764
+                if(this.activeName == 0){
765
+                   template_id = 1
766
+                }
767
+                if(this.activeName == 1){
768
+                   template_id = 2
769
+                }
770
+                if(this.activeName == 2){
771
+                   template_id = 3
772
+                }
773
+
774
+                if(this.activeName == 3){
775
+                   template_id = 4
776
+                }
777
+
778
+                if(this.activeName == 4){
779
+                   template_id = 5
780
+                }
781
+
782
+                if(this.activeName == 5){
783
+                   template_id = 6
784
+                }
785
+
786
+                if(this.activeName == 6){
787
+                   template_id = 7
788
+                }
789
+
790
+                if(this.activeName == 7){
791
+                   template_id = 8
792
+                }
793
+
794
+                const params = {
795
+                   title:this.form.title,
796
+                   content:this.form.content,
797
+                   remark:this.form.remark,
798
+                   template_id:template_id,
799
+                }
800
+               console.log("params",params)
801
+         this.$refs[formName].validate(valid=>{
802
+            if(valid){
803
+             saveMainTemplate(params).then(response=>{
804
+                  if(response.data.state == 1){
805
+                     var template =  response.data.data.template
806
+                     this.$message.success("保存成功")
807
+                     this.dialogVisible = false
808
+                     this.getlist()
809
+                     this.form.title = ""
810
+                     this.form.content = ""
811
+                     this.form.remark = ""
812
+                  }
813
+               }) 
814
+            }
815
+         })
816
+      },
817
+
818
+      getlist(){
819
+        getMedicalTemplateList().then(response=>{
820
+           if(response.data.state == 1){
821
+             var list =  response.data.data.list
822
+             console.log("list",list)
823
+             this.tabledata = list
824
+             this.tabledataOne =  response.data.data.listOne
825
+             this.tabledataTwo = response.data.data.listTwo
826
+             this.tabledataThree = response.data.data.listThree
827
+             this.tabledataFour =  response.data.data.listFour
828
+             this.tabledataFive = response.data.data.listFive
829
+             this.tabledataSix = response.data.data.listSix
830
+             this.tabledataSeven =  response.data.data.listSeven
831
+           }
832
+        })   
833
+      },
834
+
835
+      edit(id){
836
+        this.editDialogVisible = true
837
+        getMainTemplateById(id).then(response=>{
838
+           if(response.data.state == 1){
839
+             var template =  response.data.data.template
840
+             this.form.title = template.title 
841
+             this.form.content =  template.content
842
+             this.form.remark = template.remark
843
+             this.form.id = template.id
844
+           }
845
+        })
846
+      },
847
+
848
+      UpdateMainTemplate(formName){
849
+          const params = {
850
+                  title:this.form.title,
851
+                  content:this.form.content,
852
+                  remark:this.form.remark,
853
+                  id:this.form.id,  
854
+           }
855
+         this.$refs[formName].validate(valid=>{
856
+             if(valid){   
857
+             
858
+              UpdateMainTemplate(params).then(response=>{
859
+                 if(response.data.state == 1){
860
+                   var template =  response.data.data.template
861
+                   this.$message.success("保存成功")
862
+                   this.editDialogVisible = false
863
+                   this.getlist()
864
+                 }
865
+              })
866
+             }
867
+         })
868
+      },
869
+
870
+      deleteMainTemplate(id,index){
871
+          this.$confirm('确认删除吗?', '删除', {
872
+            confirmButtonText: '确 定',
873
+            cancelButtonText: '取 消',
874
+            type: 'warning'
875
+         }).then(() => {
876
+             
877
+            deleteMainTemplate(id).then(response => {
878
+              if (response.data.state == 1) {
879
+                  var msg = response.data.data.msg
880
+                  this.tabledata.splice(index, 1);
881
+                  this.$message.success("删除成功")
882
+              } else {
883
+                  this.$message.error("药品已经出库不能删除")
884
+              }
885
+            })
886
+          })
887
+          .catch(() => {
888
+          }) 
889
+      }
890
+    }
891
+  }
892
+</script>
893
+<style>
894
+  .center th .cell {
895
+    text-align: center !important;
896
+  }
897
+
898
+  .templateadvicenamedisplay .cell {
899
+    float: left;
900
+    text-align: left;
901
+  }
902
+  .el-table td,
903
+  .el-table th.is-leaf,
904
+  .el-table--border,
905
+  .el-table--group {
906
+    border-color: #d0d3da;
907
+  }
908
+  .el-table--border::after,
909
+  .el-table--group::after,
910
+  .el-table::before {
911
+    background-color: #d0d3da;
912
+  }
913
+</style>
914
+

+ 21 - 2
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue ファイルの表示

@@ -214,6 +214,13 @@
214 214
 
215 215
    <register-dialog></register-dialog>
216 216
 
217
+    <el-dialog
218
+      class="centerDialog"
219
+      width="900px"
220
+      title="打印"
221
+      :visible.sync="treatVisible">
222
+      <treatPrint :paramsObj='paramsObj'></treatPrint>
223
+    </el-dialog>
217 224
   </div>
218 225
 </template>
219 226
 
@@ -228,6 +235,7 @@
228 235
   import { getPatientInformation, getPatientList } from '@/api/project/project'
229 236
   import { getPatientInfo, getSchedulePatientList, register, upload,Refund } from '@/api/his/his'
230 237
   import RegisterDialog from "./components/registerDialog";
238
+  import treatPrint from './treatPrint'
231 239
 
232 240
   const moment = require('moment')
233 241
   export default {
@@ -238,7 +246,9 @@
238 246
       charged,
239 247
       medicalInsuranceRefund,
240 248
       prescriptionTable,
241
-      additionalCharges
249
+      additionalCharges,
250
+      treatPrint,
251
+
242 252
     },
243 253
     data() {
244 254
       return {
@@ -284,6 +294,8 @@
284 294
         all_table_data:[],
285 295
         order:{},
286 296
         addtions_charge:[],
297
+        treatVisible:false,
298
+        paramsObj:{}
287 299
       }
288 300
     },
289 301
     created() {
@@ -486,7 +498,14 @@
486 498
           this.$router.push('/outpatientDoctorStation/printtwo?record=' + this.record_date)
487 499
 
488 500
         } else if (index == 3) {
489
-          this.$router.push('/outpatientCharges/treatPrint?record_date=' + this.record_date + '&patient_id=' + this.patient_id + '&prescription_id=' + this.prescription_id)
501
+          let obj = {
502
+            record_date:this.record_date,
503
+            patient_id:this.patient_id,
504
+            prescription_id:this.prescription_id
505
+          }
506
+          this.paramsObj = obj
507
+          this.treatVisible = true
508
+          // this.$router.push('/outpatientCharges/treatPrint?record_date=' + this.record_date + '&patient_id=' + this.patient_id + '&prescription_id=' + this.prescription_id)
490 509
         } else if (index == 4) {
491 510
 
492 511
           if(this.hisPatientInfo.id == 0){

+ 28 - 17
src/xt_pages/outpatientCharges/treatPrint.vue ファイルの表示

@@ -1,21 +1,19 @@
1 1
 <template>
2
-  <div class="main-contain">
3
-    <div class="position">
4
-      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
-       <template>
6
-        <el-button
7
-          :loading="loading"
8
-          size="small"
9
-          icon="el-icon-printer"
10
-          @click="printThisPage"
11
-          type="primary"
12
-          >打印</el-button
13
-        >
14
-      </template>
15
-    </div>
16
-    <div class="app-container" style="min-height:0;">
17
-        <div class='dialysisPage' style="flex: 1;height: calc(100vh - 178px);overflow-x:auto;::-webkit-scrollbar:height:15px">
18
-            <printOne v-bind:childResponse="childResponse"></printOne>
2
+  <div>
3
+    <template>
4
+      <el-button
5
+        style="position:fixed;right:25px;z-index:999"
6
+        :loading="loading"
7
+        size="small"
8
+        icon="el-icon-printer"
9
+        @click="printThisPage"
10
+        type="primary"
11
+        >打印</el-button
12
+      >
13
+    </template>
14
+    <div class="app-container" style="padding-top:40px;">
15
+        <div class='dialysisPage'>
16
+            <printOne v-bind:childResponse="childResponse" :paramsObj="paramsObj"></printOne>
19 17
         </div>
20 18
     </div>
21 19
   </div>
@@ -41,6 +39,9 @@ export default {
41 39
     BreadCrumb,
42 40
     printOne
43 41
   },
42
+  props:{
43
+    paramsObj:Object
44
+  },
44 45
   data() {
45 46
     return {
46 47
       crumbs: [
@@ -48,6 +49,7 @@ export default {
48 49
         { path: false, name: "打印单" }
49 50
       ],
50 51
       childResponse: {},
52
+      paramsObj:{}
51 53
       
52 54
 
53 55
     };
@@ -100,6 +102,15 @@ export default {
100 102
   },
101 103
   created() {
102 104
   },
105
+  watch:{
106
+    paramsObj:{//深度监听,可监听到对象、数组的变化
107
+      handler(val, oldVal){
108
+        this.paramsObj = val
109
+        
110
+      },
111
+      deep:true
112
+    }
113
+  }
103 114
 };
104 115
 </script>
105 116
 

+ 33 - 7
src/xt_pages/outpatientCharges/treatTemplate/printOne.vue ファイルの表示

@@ -6,7 +6,7 @@
6 6
             <p class="infoP">名称:血液透析中心</p>
7 7
             <p class="infoP">医生工号:</p>
8 8
             <p class="infoP">门诊流水号:</p>
9
-            <p class="infoP">科别:{{list.p_info.departments}}</p>
9
+            <p class="infoP">科别:{{list.p_info.departments?list.p_info.departments:""}}</p>
10 10
             <p class="infoP">处方单据号:</p>
11 11
             <p class="infoP">姓名:{{patient.name}}</p>
12 12
             <p class="infoP">医疗账号:</p>
@@ -34,7 +34,7 @@
34 34
                     </div>
35 35
                     <div class="chargeUl" style="border-top:1px solid #000;"> 
36 36
                         <p style="width:50%;">费用合计</p>
37
-                        <p style="width:50%;"></p>
37
+                        <p style="width:50%;">{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:""}}</p>
38 38
                     </div>
39 39
                     <div class="chargeUl" style="border-top:1px solid #000;">
40 40
                         <p style="width:50%;">记账支付</p>
@@ -71,8 +71,8 @@
71 71
             
72 72
         </div>
73 73
         <div class="moneyBox">
74
-            <p>实收金:{{list.order_info.medfee_sumamt}}</p>
75
-            <p>记账前金额:{{list.order_info.preselfpay_amt}}</p>
74
+            <p>实收金:{{list.order_info.medfee_sumamt?list.order_info.medfee_sumamt:''}}</p>
75
+            <p>记账前金额:{{list.order_info.preselfpay_amt?list.order_info.preselfpay_amt:""}}</p>
76 76
             <p>扣款金额:</p>
77 77
             <p>记账后金额:</p>
78 78
             <p>找赎金:</p>
@@ -94,6 +94,9 @@ export default {
94 94
           orgname:""
95 95
       } 
96 96
     },
97
+    props:{
98
+        paramsObj:Object
99
+    },
97 100
     methods:{
98 101
        getChargePrint(record_date,patient_id,prescription_id){
99 102
            var params = {
@@ -113,26 +116,49 @@ export default {
113 116
                var patient = response.data.data.patient
114 117
                console.log("patient",patient)
115 118
                this.patient  = patient
119
+               var histpatient =   response.data.data.hisPatient
120
+               console.log("hispatient",histpatient)
116 121
             }
117 122
          })
118 123
        }
119 124
     },
120 125
     created(){
121
-       var record_date =  this.$route.query.record_date
126
+       var record_date =  this.paramsObj.record_date
122 127
        console.log("record_date",record_date)
123
-       var patient_id = this.$route.query.patient_id
128
+       var patient_id = this.paramsObj.patient_id
124 129
        console.log("patient_id",patient_id)
125
-       var prescription_id = this.$route.query.prescription_id
130
+       var prescription_id = this.paramsObj.prescription_id
126 131
        this.getChargePrint(record_date,patient_id,prescription_id)
127 132
        var xtuser = this.$store.getters.xt_user
128 133
        this.orgname = xtuser.org.org_name
129 134
 
135
+    },
136
+    watch:{
137
+        paramsObj:{//深度监听,可监听到对象、数组的变化
138
+        handler(val, oldVal){
139
+            this.paramsObj = val
140
+            this.patient_id = this.paramsObj.patient_id
141
+            var record_date = this.paramsObj.record
142
+            this.record_date = record_date
143
+            var prescription_id = this.paramsObj.prescription_id
144
+            this.prescription_id = prescription_id
145
+            
146
+        },
147
+        deep:true
148
+        }
130 149
     }
131 150
 }
132 151
 </script>
133 152
 
134 153
 
135 154
 <style lang="scss" scoped>
155
+.prescription-print{
156
+    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
157
+    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; 
158
+    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
159
+    margin-bottom: 20px;
160
+    padding:20px 10px;
161
+}
136 162
 .printTitle{
137 163
     font-size: 22px;
138 164
     text-align: center;

+ 10 - 4
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue ファイルの表示

@@ -575,10 +575,9 @@
575 575
             this.doctors = response.data.data.doctors
576 576
             this.department = response.data.data.department
577 577
             this.sick = response.data.data.sick
578
-
579
-            this.sick = response.data.data.sick
580
-
581 578
             this.diagnoses = response.data.data.diagnose
579
+            this.additions = response.data.data.additions
580
+
582 581
             // var info = response.data.data.info
583 582
             // if (info.user_type == 2 || info.user_type == 1) {
584 583
             //   this.doctorValue = info.admin_user_id
@@ -713,7 +712,14 @@
713 712
               this.doctorValue = admin_info.admin_user_id
714 713
               if (admin_info.department_id == 0) {
715 714
                 if (this.department.length > 0) {
716
-                  this.departmentValue = department[0].id
715
+                  if(department && department.length > 0){
716
+                    this.departmentValue = department[0].id
717
+
718
+                  }else{
719
+
720
+                    this.departmentValue = ''
721
+
722
+                  }
717 723
                 } else {
718 724
                   this.departmentValue = ''
719 725
                 }

+ 315 - 67
src/xt_pages/outpatientDoctorStation/components/deskRecord.vue ファイルの表示

@@ -85,70 +85,189 @@
85 85
       <el-form-item label="" prop="name">
86 86
         <el-checkbox v-model="case_history.is_infect">是否传染</el-checkbox>
87 87
       </el-form-item>
88
-      <el-form-item label="主诉:" prop="name" style="width:100%;">
89
-        <el-input
90
-          type="textarea"
91
-          :rows="2"
92
-          placeholder="请输入内容"
93
-          v-model="case_history.chief_conplaint">
94
-        </el-input>
95
-      </el-form-item>
96
-      <el-form-item label="现病史:" prop="name" style="width:100%;">
97
-        <el-input
98
-          type="textarea"
99
-          :rows="2"
100
-          placeholder="请输入内容"
101
-          v-model="case_history.history_of_present_illness">
102
-        </el-input>
103
-      </el-form-item>
104
-      <el-form-item label="既往史:" prop="name" style="width:100%;">
105
-        <el-input
106
-          type="textarea"
107
-          :rows="2"
108
-          placeholder="请输入内容"
109
-          v-model="case_history.past_history">
110
-        </el-input>
111
-      </el-form-item>
112
-      <el-form-item label="个人史:" prop="name" style="width:100%;">
113
-        <el-input
114
-          type="textarea"
115
-          :rows="2"
116
-          placeholder="请输入内容"
117
-          v-model="case_history.personal_history">
118
-        </el-input>
119
-      </el-form-item>
120
-      <el-form-item label="家族史:" prop="name" style="width:100%;">
121
-        <el-input
122
-          type="textarea"
123
-          :rows="2"
124
-          placeholder="请输入内容"
125
-          v-model="case_history.family_history">
126
-        </el-input>
127
-      </el-form-item>
128
-      <el-form-item label="诊断信息:" prop="name" style="width:100%;">
129
-        <el-input
130
-          type="textarea"
131
-          :rows="2"
132
-          placeholder="请输入内容"
133
-          v-model="case_history.diagnostic">
134
-        </el-input>
135
-      </el-form-item>
136
-       <el-form-item label="医嘱:" prop="doctor_advice" style="width:100%;">
137
-        <el-input
138
-          type="textarea"
139
-          :rows="2"
140
-          placeholder="请输入内容"
141
-          v-model="case_history.doctor_advice">
142
-        </el-input>
143
-      </el-form-item>
144
-       <el-form-item label="备注:" prop="name" style="width:100%;">
145
-        <el-input
146
-          type="textarea"
147
-          :rows="2"
148
-          placeholder="请输入内容"
149
-          v-model="case_history.remark">
150
-        </el-input>
88
+      <el-row :gutter = "20">
89
+        <el-col :span="24">
90
+          <el-form-item label="主诉:">
91
+              <el-select @change="changeMainTemplate" v-model="value" style="width:200px">
92
+                  <el-option
93
+                    v-for="(item, index) in tabledata"
94
+                    :label="item.title"
95
+                    :value="item.content"
96
+                    :key="index"
97
+                  ></el-option>
98
+              </el-select>
99
+          </el-form-item>
100
+      </el-col>
101
+      <el-col :span="24">
102
+        <el-form-item  prop="name" style="width:100%;">
103
+          <el-input
104
+            type="textarea"
105
+            :rows="2"
106
+            placeholder="请输入内容"
107
+            v-model="case_history.chief_conplaint">
108
+          </el-input>
109
+        </el-form-item>
110
+      </el-col>
111
+      </el-row>
112
+      <el-row :gutter="20">
113
+        <el-col :span="24">
114
+           <el-form-item label="现病史:">
115
+              <el-select @change="changeMainTemplateOne" v-model="valueOne" style="width:200px">
116
+                  <el-option
117
+                    v-for="(item, index) in tabledataOne"
118
+                    :label="item.title"
119
+                    :value="item.content"
120
+                    :key="index"
121
+                  ></el-option>
122
+              </el-select>
123
+          </el-form-item>
124
+        </el-col>
125
+        <el-col :span="24">
126
+          <el-form-item  prop="name" style="width:100%;">
127
+            <el-input
128
+              type="textarea"
129
+              :rows="2"
130
+              placeholder="请输入内容"
131
+              v-model="case_history.history_of_present_illness">
132
+            </el-input>
133
+          </el-form-item>
134
+        </el-col>
135
+      </el-row>
136
+      <el-row :gutter="20">
137
+         <el-col :span="24">
138
+           <el-form-item label="既往史:">
139
+            <el-select @change="changeMainTemplateTwo" v-model="valueTwo" style="width:200px">
140
+                  <el-option
141
+                    v-for="(item, index) in tabledataTwo"
142
+                    :label="item.title"
143
+                    :value="item.content"
144
+                    :key="index"
145
+                  ></el-option>
146
+             </el-select>
147
+            </el-form-item>
148
+         </el-col>
149
+         <el-col :span="24">
150
+            <el-form-item  prop="name" style="width:100%;">
151
+              <el-input
152
+                type="textarea"
153
+                :rows="2"
154
+                placeholder="请输入内容"
155
+                v-model="case_history.past_history">
156
+              </el-input>
157
+           </el-form-item>
158
+         </el-col>
159
+      </el-row>
160
+     <el-row :gutter="24">
161
+       <el-col :span="20">
162
+          <el-form-item label="个人史:">
163
+            <el-select @change="changeMainTemplateThree" v-model="valueThree" style="width:200px">
164
+                  <el-option
165
+                    v-for="(item, index) in tabledataThree"
166
+                    :label="item.title"
167
+                    :value="item.content"
168
+                    :key="index"
169
+                  ></el-option>
170
+             </el-select>
171
+            </el-form-item>
172
+       </el-col>
173
+       <el-col :span="20">
174
+        <el-form-item  prop="name" style="width:100%;">
175
+          <el-input
176
+            type="textarea"
177
+            :rows="2"
178
+            placeholder="请输入内容"
179
+            v-model="case_history.personal_history">
180
+          </el-input>
181
+        </el-form-item>
182
+      </el-col>
183
+     </el-row>
184
+     <el-row :gutter="24">
185
+       <el-col :span="20">
186
+          <el-form-item  label="家族史:">
187
+            <el-select @change="changeMainTemplateFour" v-model="valueFour" style="width:200px">
188
+                  <el-option
189
+                    v-for="(item, index) in tabledataFour"
190
+                    :label="item.title"
191
+                    :value="item.content"
192
+                    :key="index"
193
+                  ></el-option>
194
+             </el-select>
195
+         </el-form-item>
196
+       </el-col>
197
+        <el-col :span="20">
198
+          <el-form-item prop="name" style="width:100%;">
199
+            <el-input
200
+              type="textarea"
201
+              :rows="2"
202
+              placeholder="请输入内容"
203
+              v-model="case_history.family_history">
204
+            </el-input>
205
+          </el-form-item>
206
+       </el-col>
207
+     </el-row>
208
+     <el-row :gutter="24">
209
+       <el-col :span="20">
210
+          <el-form-item label="诊断信息:">
211
+            <el-select @change="changeMainTemplateFive" v-model="valueFive" style="width:200px">
212
+                  <el-option
213
+                    v-for="(item, index) in tabledataFive"
214
+                    :label="item.title"
215
+                    :value="item.content"
216
+                    :key="index"
217
+                  ></el-option>
218
+             </el-select>
219
+         </el-form-item>
220
+       </el-col>
221
+       <el-col :span="20">
222
+        <el-form-item  prop="name" style="width:100%;">
223
+          <el-input
224
+            type="textarea"
225
+            :rows="2"
226
+            placeholder="请输入内容"
227
+            v-model="case_history.diagnostic">
228
+          </el-input>
151 229
       </el-form-item>
230
+       </el-col>
231
+     </el-row>
232
+
233
+     <el-row :gutter="24">
234
+       <el-col :span="20">
235
+         <el-form-item label="医嘱:">
236
+            <el-select @change="changeMainTemplateSix" v-model="valueSix" style="width:200px">
237
+                  <el-option
238
+                    v-for="(item, index) in tabledataSix"
239
+                    :label="item.title"
240
+                    :value="item.content"
241
+                    :key="index"
242
+                  ></el-option>
243
+             </el-select>
244
+         </el-form-item>
245
+       </el-col>
246
+       <el-col :span="20">
247
+        <el-form-item  prop="doctor_advice" style="width:100%;">
248
+          <el-input
249
+            type="textarea"
250
+            :rows="2"
251
+            placeholder="请输入内容"
252
+            v-model="case_history.doctor_advice">
253
+          </el-input>
254
+        </el-form-item>
255
+       </el-col>
256
+     </el-row>
257
+
258
+        <el-form-item label ="备注"  prop="name" style="width:100%;">
259
+          <el-input
260
+            type="textarea"
261
+            :rows="2"
262
+            placeholder="请输入内容"
263
+            v-model="case_history.remark">
264
+          </el-input>
265
+        </el-form-item>
266
+    
267
+    
268
+     
269
+    
270
+    
152 271
     </el-form>
153 272
 
154 273
   </div>
@@ -161,7 +280,7 @@
161 280
   import { getDictionaryDataConfig } from "@/utils/data";
162 281
   import {  createCaseHistory } from '@/api/his/his'
163 282
   import { getDataConfig } from "@/utils/data";
164
-  import { getTemplateDetail } from "@/api/project/project"
283
+  import { getTemplateDetail,getMedicalTemplateList } from "@/api/project/project"
165 284
   export default {
166 285
     props: {
167 286
       case_history: Object,
@@ -206,7 +325,23 @@
206 325
         wayOptions:[],
207 326
         start_time:moment(new Date()).add('year',0).format("YYYY-MM-DD"),
208 327
         doctor_advice:"",
209
-        remark:""
328
+        remark:"",
329
+        tabledata:[],
330
+        tabledataOne:[],
331
+        tabledataTwo:[],
332
+        tabledataThree:[],
333
+        tabledataFour:[],
334
+        tabledataFive:[],
335
+        tabledataSix:[],
336
+        tabledataSeven:[],
337
+        value:'',
338
+        valueOne:'',
339
+        valueTwo:'',
340
+        valueThree:'',
341
+        valueFour:'',
342
+        valueFive:'',
343
+        valueSix:'',
344
+        valueSeven:''
210 345
       }
211 346
     },
212 347
     methods: {
@@ -288,12 +423,125 @@
288 423
                 this.case_history.personal_history =    templatedetail.personal_history
289 424
                 this.case_history.family_history = templatedetail.family_history
290 425
                 this.case_history.diagnostic = templatedetail.diagnostic
291
-
426
+                this.case_history.doctor_advice = templatedetail.doctor_advice
427
+                this.case_history.remark = templatedetail.remark
292 428
               }
293 429
           })
294 430
         },
431
+
432
+        getlist(){
433
+           getMedicalTemplateList().then(response=>{
434
+           if(response.data.state == 1){
435
+             var list =  response.data.data.list
436
+             console.log("list",list)
437
+             this.tabledata = list
438
+             this.tabledataOne =  response.data.data.listOne
439
+             this.tabledataTwo = response.data.data.listTwo
440
+             this.tabledataThree = response.data.data.listThree
441
+             this.tabledataFour =  response.data.data.listFour
442
+             this.tabledataFive = response.data.data.listFive
443
+             this.tabledataSix = response.data.data.listSix
444
+             this.tabledataSeven =  response.data.data.listSeven
445
+           }
446
+        })   
447
+       },
448
+
449
+       changeMainTemplate(values){
450
+         if(this.case_history.chief_conplaint == ''){
451
+           this.case_history.chief_conplaint = values
452
+         } else {
453
+          if (this.case_history.chief_conplaint.indexOf(values) == -1) {
454
+            if (this.case_history.chief_conplaint.charAt(this.case_history.chief_conplaint.length - 1).indexOf('。') == -1) {
455
+              this.case_history.chief_conplaint = this.case_history.chief_conplaint + ',' + values
456
+            } else {
457
+              this.case_history.chief_conplaint = this.case_history.chief_conplaint + values
458
+            }
459
+          }
460
+        }
461
+       },
462
+       changeMainTemplateOne(values){
463
+          if(this.case_history.history_of_present_illness == ''){
464
+           this.case_history.history_of_present_illness = values
465
+         } else {
466
+          if (this.case_history.history_of_present_illness.indexOf(values) == -1) {
467
+            if (this.case_history.history_of_present_illness.charAt(this.case_history.history_of_present_illness.length - 1).indexOf('。') == -1) {
468
+              this.case_history.history_of_present_illness = this.case_history.history_of_present_illness + ',' + values
469
+            } else {
470
+              this.case_history.history_of_present_illness = this.case_history.history_of_present_illness + values
471
+            }
472
+          }
473
+        }
474
+      },
475
+      changeMainTemplateTwo(values){
476
+         if(this.case_history.past_history == ''){
477
+           this.case_history.past_history = values
478
+         } else {
479
+          if (this.case_history.past_history.indexOf(values) == -1) {
480
+            if (this.case_history.past_history.charAt(this.case_history.past_history.length - 1).indexOf('。') == -1) {
481
+              this.case_history.past_history = this.case_history.past_history + ',' + values
482
+            } else {
483
+              this.case_history.past_history = this.case_history.past_history + values
484
+            }
485
+          }
486
+        }
487
+      },
488
+      changeMainTemplateThree(values){
489
+         if(this.case_history.personal_history == ''){
490
+           this.case_history.personal_history = values
491
+         } else {
492
+          if (this.case_history.personal_history.indexOf(values) == -1) {
493
+            if (this.case_history.personal_history.charAt(this.case_history.personal_history.length - 1).indexOf('。') == -1) {
494
+              this.case_history.personal_history = this.case_history.personal_history + ',' + values
495
+            } else {
496
+              this.case_history.personal_history = this.case_history.personal_history + values
497
+            }
498
+          }
499
+        }
500
+      },
501
+      changeMainTemplateFour(values){
502
+          if(this.case_history.family_history == ''){
503
+           this.case_history.family_history = values
504
+         } else {
505
+          if (this.case_history.family_history.indexOf(values) == -1) {
506
+            if (this.case_history.family_history.charAt(this.case_history.family_history.length - 1).indexOf('。') == -1) {
507
+              this.case_history.family_history = this.case_history.family_history + ',' + values
508
+            } else {
509
+              this.case_history.family_history = this.case_history.family_history + values
510
+            }
511
+          }
512
+        }
513
+      },
514
+
515
+      changeMainTemplateFive(values){
516
+          if(this.case_history.diagnostic == ''){
517
+           this.case_history.diagnostic = values
518
+         } else {
519
+          if (this.case_history.diagnostic.indexOf(values) == -1) {
520
+            if (this.case_history.diagnostic.charAt(this.case_history.diagnostic.length - 1).indexOf('。') == -1) {
521
+              this.case_history.diagnostic = this.case_history.diagnostic + ',' + values
522
+            } else {
523
+              this.case_history.diagnostic = this.case_history.diagnostic + values
524
+            }
525
+          }
526
+        }
527
+      },
528
+      changeMainTemplateSix(values){
529
+          if(this.case_history.doctor_advice == ''){
530
+           this.case_history.doctor_advice = values
531
+         } else {
532
+          if (this.case_history.doctor_advice.indexOf(values) == -1) {
533
+            if (this.case_history.doctor_advice.charAt(this.case_history.doctor_advice.length - 1).indexOf('。') == -1) {
534
+              this.case_history.doctor_advice = this.case_history.doctor_advice + ',' + values
535
+            } else {
536
+              this.case_history.doctor_advice = this.case_history.doctor_advice + values
537
+            }
538
+          }
539
+        }
540
+      },
541
+     
295 542
     },
296 543
     created(){
544
+       this.getlist()
297 545
        this.wayOptions = getDataConfig("patient", "reimbursement_ways");
298 546
        console.log("232322323",this)
299 547
        if(this.patientInfo.gender = 1){
@@ -301,7 +549,7 @@
301 549
        }else if(this.patientInfo.gender = 2){
302 550
           this.patientInfo.gender = '女'
303 551
         }
304
-
552
+     
305 553
     },
306 554
     watch:{
307 555
       detalid:function(val){

+ 2 - 2
src/xt_pages/outpatientDoctorStation/components/inquiriesDetail.vue ファイルの表示

@@ -6,10 +6,10 @@
6 6
     :before-close="_close"
7 7
     class="detailDialog"
8 8
   >
9
-    <div style="position: absolute;right:20px;z-index:99">
9
+    <!-- <div style="position: absolute;right:20px;z-index:99">
10 10
       <el-button v-if="activeName == 'first'" @click="open(1)" type="primary">打印</el-button>
11 11
       <el-button v-if="activeName == 'second'" @click="open(2)" type="primary">打印</el-button>
12
-    </div>
12
+    </div> -->
13 13
     <el-tabs v-model="activeName">
14 14
 
15 15
       <el-tab-pane label="处方详情" name="first">

+ 2 - 2
src/xt_pages/outpatientDoctorStation/components/medicalRecord.vue ファイルの表示

@@ -123,13 +123,13 @@ export default {
123 123
         },
124 124
         //获取历史数据历史模板
125 125
         getlist(){
126
-            console.log("触发了吗")
126
+            
127 127
             const params = {
128 128
                keyword:this.search_input,
129 129
                start_time:this.start_time,
130 130
                end_time:this.end_time
131 131
             }
132
-           console.log("params-----",params)
132
+         
133 133
           getHistoryTemplate(params).then(response=>{
134 134
             if(response.data.state == 1){
135 135
               var template =  response.data.data.template

+ 294 - 28
src/xt_pages/outpatientDoctorStation/components/recordTemplateDetail.vue ファイルの表示

@@ -14,53 +14,183 @@
14 14
             <el-form-item label="模板说明: " prop="name" style="width:100%;">
15 15
                 <el-input v-model="form.template_remark" placeholder=""></el-input>
16 16
             </el-form-item>
17
-            <el-form-item label="主诉:" prop="name" style="width:100%;">
18
-                <el-input
17
+           <el-row :gutter = "20">
18
+        <el-col :span="24">
19
+          <el-form-item label="主诉:">
20
+              <el-select @change="changeMainTemplate" v-model="value" style="width:200px">
21
+                  <el-option
22
+                    v-for="(item, index) in tabledata"
23
+                    :label="item.title"
24
+                    :value="item.content"
25
+                    :key="index"
26
+                  ></el-option>
27
+              </el-select>
28
+          </el-form-item>
29
+      </el-col>
30
+      <el-col :span="24">
31
+        <el-form-item  prop="name" style="width:100%;">
32
+          <el-input
33
+            type="textarea"
34
+            :rows="2"
35
+            placeholder="请输入内容"
36
+            v-model="form.chief_conplaint">
37
+          </el-input>
38
+        </el-form-item>
39
+      </el-col>
40
+      </el-row>
41
+      <el-row :gutter="20">
42
+        <el-col :span="24">
43
+           <el-form-item label="现病史:">
44
+              <el-select @change="changeMainTemplateOne" v-model="valueOne" style="width:200px">
45
+                  <el-option
46
+                    v-for="(item, index) in tabledataOne"
47
+                    :label="item.title"
48
+                    :value="item.content"
49
+                    :key="index"
50
+                  ></el-option>
51
+              </el-select>
52
+          </el-form-item>
53
+        </el-col>
54
+        <el-col :span="24">
55
+          <el-form-item  prop="name" style="width:100%;">
56
+            <el-input
57
+              type="textarea"
58
+              :rows="2"
59
+              placeholder="请输入内容"
60
+              v-model="form.history_of_present_illness">
61
+            </el-input>
62
+          </el-form-item>
63
+        </el-col>
64
+      </el-row>
65
+      <el-row :gutter="20">
66
+         <el-col :span="24">
67
+           <el-form-item label="既往史:">
68
+            <el-select @change="changeMainTemplateTwo" v-model="valueTwo" style="width:200px">
69
+                  <el-option
70
+                    v-for="(item, index) in tabledataTwo"
71
+                    :label="item.title"
72
+                    :value="item.content"
73
+                    :key="index"
74
+                  ></el-option>
75
+             </el-select>
76
+            </el-form-item>
77
+         </el-col>
78
+         <el-col :span="24">
79
+            <el-form-item  prop="name" style="width:100%;">
80
+              <el-input
19 81
                 type="textarea"
20 82
                 :rows="2"
21 83
                 placeholder="请输入内容"
22
-                v-model="form.chief_conplaint">
23
-                </el-input>
24
-            </el-form-item>
25
-            <el-form-item label="现病史:" prop="name" style="width:100%;">
26
-                <el-input
84
+                v-model="form.past_history">
85
+              </el-input>
86
+           </el-form-item>
87
+         </el-col>
88
+      </el-row>
89
+        <el-row :gutter="24">
90
+        <el-col :span="20">
91
+            <el-form-item label="个人史:">
92
+                <el-select @change="changeMainTemplateThree" v-model="valueThree" style="width:200px">
93
+                    <el-option
94
+                        v-for="(item, index) in tabledataThree"
95
+                        :label="item.title"
96
+                        :value="item.content"
97
+                        :key="index"
98
+                    ></el-option>
99
+                </el-select>
100
+                </el-form-item>
101
+        </el-col>
102
+        <el-col :span="20">
103
+            <el-form-item  prop="name" style="width:100%;">
104
+            <el-input
27 105
                 type="textarea"
28 106
                 :rows="2"
29 107
                 placeholder="请输入内容"
30
-                v-model="form.history_of_present_illness">
31
-                </el-input>
108
+                v-model="form.personal_history">
109
+            </el-input>
110
+            </el-form-item>
111
+        </el-col>
112
+        </el-row>
113
+        <el-row :gutter="24">
114
+        <el-col :span="20">
115
+            <el-form-item  label="家族史:">
116
+                <el-select @change="changeMainTemplateFour" v-model="valueFour" style="width:200px">
117
+                    <el-option
118
+                        v-for="(item, index) in tabledataFour"
119
+                        :label="item.title"
120
+                        :value="item.content"
121
+                        :key="index"
122
+                    ></el-option>
123
+                </el-select>
32 124
             </el-form-item>
33
-            <el-form-item label="既往史:" prop="name" style="width:100%;">
125
+        </el-col>
126
+            <el-col :span="20">
127
+            <el-form-item prop="name" style="width:100%;">
34 128
                 <el-input
35 129
                 type="textarea"
36 130
                 :rows="2"
37 131
                 placeholder="请输入内容"
38
-                v-model="form.past_history">
132
+                v-model="form.family_history">
39 133
                 </el-input>
40 134
             </el-form-item>
41
-            <el-form-item label="个人史:" prop="name" style="width:100%;">
42
-                <el-input
135
+        </el-col>
136
+        </el-row>
137
+        <el-row :gutter="24">
138
+        <el-col :span="20">
139
+            <el-form-item label="诊断信息:">
140
+                <el-select @change="changeMainTemplateFive" v-model="valueFive" style="width:200px">
141
+                    <el-option
142
+                        v-for="(item, index) in tabledataFive"
143
+                        :label="item.title"
144
+                        :value="item.content"
145
+                        :key="index"
146
+                    ></el-option>
147
+                </el-select>
148
+            </el-form-item>
149
+        </el-col>
150
+        <el-col :span="20">
151
+            <el-form-item  prop="name" style="width:100%;">
152
+            <el-input
43 153
                 type="textarea"
44 154
                 :rows="2"
45 155
                 placeholder="请输入内容"
46
-                v-model="form.personal_history">
47
-                </el-input>
156
+                v-model="form.diagnostic">
157
+            </el-input>
158
+        </el-form-item>
159
+        </el-col>
160
+        </el-row>
161
+
162
+        <el-row :gutter="24">
163
+        <el-col :span="20">
164
+            <el-form-item label="医嘱:">
165
+                <el-select @change="changeMainTemplateSix" v-model="valueSix" style="width:200px">
166
+                    <el-option
167
+                        v-for="(item, index) in tabledataSix"
168
+                        :label="item.title"
169
+                        :value="item.content"
170
+                        :key="index"
171
+                    ></el-option>
172
+                </el-select>
48 173
             </el-form-item>
49
-            <el-form-item label="家族史:" prop="name" style="width:100%;">
50
-                <el-input
174
+        </el-col>
175
+        <el-col :span="20">
176
+            <el-form-item  prop="doctor_advice" style="width:100%;">
177
+            <el-input
51 178
                 type="textarea"
52 179
                 :rows="2"
53 180
                 placeholder="请输入内容"
54
-                v-model="form.family_history">
55
-                </el-input>
181
+                v-model="form.doctor_advice">
182
+            </el-input>
56 183
             </el-form-item>
57
-            <el-form-item label="诊断信息:" prop="name" style="width:100%;">
58
-                <el-input
184
+        </el-col>
185
+        </el-row>
186
+
187
+            <el-form-item label ="备注"  prop="name" style="width:100%;">
188
+            <el-input
59 189
                 type="textarea"
60 190
                 :rows="2"
61 191
                 placeholder="请输入内容"
62
-                v-model="form.diagnostic">
63
-                </el-input>
192
+                v-model="form.remark">
193
+            </el-input>
64 194
             </el-form-item>
65 195
         </el-form>
66 196
         <div slot="footer" class="dialog-footer">
@@ -71,7 +201,7 @@
71 201
 </template>
72 202
 
73 203
 <script>
74
-import { getTemplateDetail,updateRecordTemplate } from "@/api/project/project"
204
+import { getTemplateDetail,updateRecordTemplate,getMedicalTemplateList } from "@/api/project/project"
75 205
 export default {
76 206
     data(){
77 207
         return{
@@ -85,10 +215,29 @@ export default {
85 215
               past_history:"",
86 216
               personal_history:"",
87 217
               family_history:"",
88
-              diagnostic:""
218
+              diagnostic:"",
219
+              remark:'',
220
+              doctor_advice:'',
221
+            
89 222
             },
90 223
             textarea:"",
91
-            templatedetail:{}
224
+            templatedetail:{},
225
+            tabledata:[],
226
+            tabledataOne:[],
227
+            tabledataTwo:[],
228
+            tabledataThree:[],
229
+            tabledataFour:[],
230
+            tabledataFive:[],
231
+            tabledataSix:[],
232
+            tabledataSeven:[],
233
+            value:'',
234
+            valueOne:'',
235
+            valueTwo:'',
236
+            valueThree:'',
237
+            valueFour:'',
238
+            valueFive:'',
239
+            valueSix:'',
240
+            valueSeven:''
92 241
         }
93 242
     },
94 243
     methods:{
@@ -124,7 +273,8 @@ export default {
124 273
                 this.form.personal_history =    templatedetail.personal_history 
125 274
                 this.form.family_history = templatedetail.family_history 
126 275
                 this.form.diagnostic = templatedetail.diagnostic 
127
-               
276
+                this.form.doctor_advice = templatedetail.doctor_advice
277
+                this.form.remark = templatedetail.remark 
128 278
               }
129 279
           })
130 280
         },
@@ -138,7 +288,9 @@ export default {
138 288
             past_history:this.form.past_history,
139 289
             personal_history:this.form.personal_history,
140 290
             family_history:this.form.family_history,
141
-            diagnostic:this.form.diagnostic
291
+            diagnostic:this.form.diagnostic,
292
+            doctor_advice:this.form.doctor_advice,
293
+            remark:this.form.remark
142 294
           }  
143 295
           updateRecordTemplate(params).then(response=>{
144 296
              if(response.data.state == 1){
@@ -148,7 +300,121 @@ export default {
148 300
                 // this.$parents.getlist()
149 301
              }
150 302
           }) 
303
+        },
304
+        
305
+         getlist(){
306
+           getMedicalTemplateList().then(response=>{
307
+           if(response.data.state == 1){
308
+             var list =  response.data.data.list
309
+             console.log("list",list)
310
+             this.tabledata = list
311
+             this.tabledataOne =  response.data.data.listOne
312
+             this.tabledataTwo = response.data.data.listTwo
313
+             this.tabledataThree = response.data.data.listThree
314
+             this.tabledataFour =  response.data.data.listFour
315
+             this.tabledataFive = response.data.data.listFive
316
+             this.tabledataSix = response.data.data.listSix
317
+             this.tabledataSeven =  response.data.data.listSeven
318
+           }
319
+        })   
320
+       },
321
+
322
+       changeMainTemplate(values){
323
+         if(this.case_history.chief_conplaint == ''){
324
+           this.case_history.chief_conplaint = values
325
+         } else {
326
+          if (this.case_history.chief_conplaint.indexOf(values) == -1) {
327
+            if (this.case_history.chief_conplaint.charAt(this.case_history.chief_conplaint.length - 1).indexOf('。') == -1) {
328
+              this.case_history.chief_conplaint = this.case_history.chief_conplaint + ',' + values
329
+            } else {
330
+              this.case_history.chief_conplaint = this.case_history.chief_conplaint + values
331
+            }
332
+          }
333
+        }
334
+       },
335
+       changeMainTemplateOne(values){
336
+          if(this.case_history.history_of_present_illness == ''){
337
+           this.case_history.history_of_present_illness = values
338
+         } else {
339
+          if (this.case_history.history_of_present_illness.indexOf(values) == -1) {
340
+            if (this.case_history.history_of_present_illness.charAt(this.case_history.history_of_present_illness.length - 1).indexOf('。') == -1) {
341
+              this.case_history.history_of_present_illness = this.case_history.history_of_present_illness + ',' + values
342
+            } else {
343
+              this.case_history.history_of_present_illness = this.case_history.history_of_present_illness + values
344
+            }
345
+          }
151 346
         }
347
+      },
348
+      changeMainTemplateTwo(values){
349
+         if(this.case_history.past_history == ''){
350
+           this.case_history.past_history = values
351
+         } else {
352
+          if (this.case_history.past_history.indexOf(values) == -1) {
353
+            if (this.case_history.past_history.charAt(this.case_history.past_history.length - 1).indexOf('。') == -1) {
354
+              this.case_history.past_history = this.case_history.past_history + ',' + values
355
+            } else {
356
+              this.case_history.past_history = this.case_history.past_history + values
357
+            }
358
+          }
359
+        }
360
+      },
361
+      changeMainTemplateThree(values){
362
+         if(this.case_history.personal_history == ''){
363
+           this.case_history.personal_history = values
364
+         } else {
365
+          if (this.case_history.personal_history.indexOf(values) == -1) {
366
+            if (this.case_history.personal_history.charAt(this.case_history.personal_history.length - 1).indexOf('。') == -1) {
367
+              this.case_history.personal_history = this.case_history.personal_history + ',' + values
368
+            } else {
369
+              this.case_history.personal_history = this.case_history.personal_history + values
370
+            }
371
+          }
372
+        }
373
+      },
374
+      changeMainTemplateFour(values){
375
+          if(this.case_history.family_history == ''){
376
+           this.case_history.family_history = values
377
+         } else {
378
+          if (this.case_history.family_history.indexOf(values) == -1) {
379
+            if (this.case_history.family_history.charAt(this.case_history.family_history.length - 1).indexOf('。') == -1) {
380
+              this.case_history.family_history = this.case_history.family_history + ',' + values
381
+            } else {
382
+              this.case_history.family_history = this.case_history.family_history + values
383
+            }
384
+          }
385
+        }
386
+      },
387
+
388
+      changeMainTemplateFive(values){
389
+          if(this.case_history.diagnostic == ''){
390
+           this.case_history.diagnostic = values
391
+         } else {
392
+          if (this.case_history.diagnostic.indexOf(values) == -1) {
393
+            if (this.case_history.diagnostic.charAt(this.case_history.diagnostic.length - 1).indexOf('。') == -1) {
394
+              this.case_history.diagnostic = this.case_history.diagnostic + ',' + values
395
+            } else {
396
+              this.case_history.diagnostic = this.case_history.diagnostic + values
397
+            }
398
+          }
399
+        }
400
+      },
401
+      changeMainTemplateSix(values){
402
+          if(this.case_history.doctor_advice == ''){
403
+           this.case_history.doctor_advice = values
404
+         } else {
405
+          if (this.case_history.doctor_advice.indexOf(values) == -1) {
406
+            if (this.case_history.doctor_advice.charAt(this.case_history.doctor_advice.length - 1).indexOf('。') == -1) {
407
+              this.case_history.doctor_advice = this.case_history.doctor_advice + ',' + values
408
+            } else {
409
+              this.case_history.doctor_advice = this.case_history.doctor_advice + values
410
+            }
411
+          }
412
+        }
413
+      },
414
+    },
415
+
416
+    created(){
417
+       this.getlist()  
152 418
     }
153 419
 }
154 420
 </script>

+ 6 - 0
src/xt_pages/outpatientDoctorStation/components/saveRecordTemplate.vue ファイルの表示

@@ -56,6 +56,8 @@ export default {
56 56
             template_name:"",
57 57
             template_remark:"",
58 58
             mode_status:0,
59
+            doctor_advice:'',
60
+            remark:''
59 61
         }
60 62
      },
61 63
     
@@ -77,6 +79,8 @@ export default {
77 79
          this.personal_history = obj.personal_history
78 80
          this.family_history = obj.family_history
79 81
          this.diagnostic = obj.diagnostic
82
+         this.doctor_advice = obj.doctor_advice
83
+         this.remark = obj.remark
80 84
          this.visible = true
81 85
         },
82 86
         hide() {
@@ -96,6 +100,8 @@ export default {
96 100
              personal_history:this.personal_history,
97 101
              family_history:this.family_history,
98 102
              diagnostic:this.diagnostic,
103
+             doctor_advice:this.doctor_advice,
104
+             remark:this.remark
99 105
             }
100 106
          console.log("params",params)
101 107
        

+ 33 - 8
src/xt_pages/outpatientDoctorStation/doctorDesk.vue ファイルの表示

@@ -114,18 +114,26 @@
114 114
     </el-table>
115 115
     <el-dialog
116 116
       class="centerDialog"
117
-      width="560px"
117
+      width="600px"
118 118
       title="打印"
119 119
       :visible.sync="innerVisible"
120 120
       append-to-body>
121
-      
122
-      <print :paramsObj='paramsObj'></print>
121
+
122
+      <print v-if="index == 2" :paramsObj='paramsObj'></print>
123
+      <treatPrint v-if="index == 6" :paramsObj='paramsObj'></treatPrint>
123 124
     </el-dialog>
124 125
       <span slot="footer" class="dialog-footer">
125 126
         <el-button @click="centerDialogVisible = false">取 消</el-button>
126 127
         <el-button type="primary" @click="savePrint">确 定</el-button>
127 128
       </span>
128 129
     </el-dialog>
130
+    <el-dialog
131
+      class="centerDialog"
132
+      width="600px"
133
+      title="打印"
134
+      :visible.sync="recordVisible">
135
+      <recordPrint :patientid="patientid"></recordPrint>
136
+    </el-dialog>
129 137
 
130 138
   </div>
131 139
 </template>
@@ -141,6 +149,8 @@
141 149
   import { uParseTime } from '@/utils/tools'
142 150
   import { getPrescriptionList } from "@/api/project/project"
143 151
   import print from './print'
152
+  import treatPrint from './treatPrint'
153
+  import recordPrint from './recordPrint'
144 154
   export default {
145 155
     components: {
146 156
       BreadCrumb,
@@ -148,7 +158,9 @@
148 158
       deskRecord,
149 159
       medicalRecord,
150 160
       saveRecordTemplate,
151
-      print
161
+      print,
162
+      treatPrint,
163
+      recordPrint
152 164
     },
153 165
     data() {
154 166
       return {
@@ -196,7 +208,10 @@
196 208
         admin_info:{},
197 209
         saveLoading:false,
198 210
         innerVisible:false,
199
-        paramsObj:{}
211
+        paramsObj:{},
212
+        recordVisible:false,
213
+        recordObj:{},
214
+        additions:[],
200 215
 
201 216
       }
202 217
     },
@@ -793,7 +808,8 @@
793 808
           }
794 809
           this.$refs.child.createCaseHistory()
795 810
         } else if (index == 2) {
796
-          this.$router.push('/outpatientDoctorStation/recordPrint?record='+this.record_date+"&patient_id="+this.patientid)
811
+          this.recordVisible = true
812
+          // this.$router.push('/outpatientDoctorStation/recordPrint?record='+this.record_date+"&patient_id="+this.patientid)
797 813
         } else if (index == 3) {
798 814
            var mode_status =   this.$refs.saveRecordTemplate.mode_status
799 815
            console.log("数据返回",mode_status)
@@ -862,11 +878,19 @@
862 878
            }
863 879
            this.paramsObj = obj
864 880
            this.innerVisible = true
865
-           
881
+
866 882
           //  this.$router.push("/outpatientDoctorStation/print?record="+this.record_date+"&prescription_id="+this.prescription_id+"&ids="+ids+"&patient_id="+this.patientid)
867 883
          }
868 884
          if(this.index == 6){
869
-            this.$router.push("/outpatientDoctorStation/treatPrint?record="+this.record_date+"&prescription_id="+this.prescription_id+"&ids="+ids+"&patient_id="+this.patientid)
885
+          let obj = {
886
+            record:this.record_date,
887
+            prescription_id:this.prescription_id,
888
+            ids:ids,
889
+            patient_id:this.patientid
890
+          }
891
+          this.paramsObj = obj
892
+          this.innerVisible = true
893
+          // this.$router.push("/outpatientDoctorStation/treatPrint?record="+this.record_date+"&prescription_id="+this.prescription_id+"&ids="+ids+"&patient_id="+this.patientid)
870 894
          }
871 895
       }
872 896
     },
@@ -1156,6 +1180,7 @@
1156 1180
   .centerDialog{
1157 1181
     .el-dialog__body{
1158 1182
       max-height: calc(100vh - 100px) !important;
1183
+      padding: 0 20px;
1159 1184
     }
1160 1185
   }
1161 1186
 </style>

+ 3 - 2
src/xt_pages/outpatientDoctorStation/print.vue ファイルの表示

@@ -1,7 +1,8 @@
1 1
 <template>
2 2
   <div>
3
-       <template>
3
+      <template>
4 4
         <el-button
5
+          style="position:fixed;right:25px;z-index:999"
5 6
           :loading="loading"
6 7
           size="small"
7 8
           icon="el-icon-printer"
@@ -11,7 +12,7 @@
11 12
         >
12 13
       </template>
13 14
             
14
-    <div class='dialysisPage'>
15
+    <div class='dialysisPage' style="padding-top:40px;">
15 16
       <printOne v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :doctorPorject="doctorPorject" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
16 17
     </div>
17 18
   </div>

+ 19 - 39
src/xt_pages/outpatientDoctorStation/recordPrint.vue ファイルの表示

@@ -1,42 +1,18 @@
1 1
 <template>
2
-  <div class="main-contain">
3
-    <div class="position">
4
-      <bread-crumb :crumbs="crumbs"></bread-crumb>
5
-       <template>
6
-        <el-button
7
-          size="small"
8
-          icon="el-icon-printer"
9
-          @click="printThisPage"
10
-          type="primary"
11
-          >打印</el-button
12
-        >
13
-      </template>
14
-    </div>
15
-    <div class="app-container" style="min-height:0;">
16
-        <el-container class="newContainer">
17
-            <!-- <div style="width:270px;margin-right:20px;">
18
-                <div class="cell clearfix" style="margin-bottom:10px;">
19
-                    <el-input size="small"  v-model.trim="search_input" class="filter-item"/>
20
-                    <el-button size="small" class="filter-item" type="primary" :model="keyword" @click="searchAction">搜索</el-button>
21
-                </div>
22
-                <el-table ref="tab" @row-click="changePatient" highlight-current-row :data="patientTableData" height="480" border style="width: 100%">
23
-                    <el-table-column prop="date"  label="患者">
24
-                        <template slot-scope="scope">
25
-                            {{scope.row.patients.name?scope.row.patients.name:''}}
26
-                        </template>
27
-                    </el-table-column>
28
-                    <el-table-column prop="name" label="就诊号">
29
-                        <template slot-scope="scope">
30
-                           {{ scope.row.his_patient.number ?scope.row.his_patient.number:''}}
31
-                        </template>
32
-                    </el-table-column>
33
-                </el-table>
34
-            </div> -->
2
+  <div>
3
+    <template>
4
+      <el-button
5
+        style="position:fixed;right:25px;z-index:999"
6
+        size="small"
7
+        icon="el-icon-printer"
8
+        @click="printThisPage"
9
+        type="primary"
10
+        >打印</el-button
11
+      >
12
+    </template>
35 13
             
36
-            <div class='dialysisPage' style="flex: 1;height: calc(100vh - 178px);overflow-x:auto;::-webkit-scrollbar:height:15px">
37
-              <printOne v-bind:childResponse="childResponse" :patient="patient" :hispatient = "hispatient" :history="history"></printOne>
38
-            </div>
39
-        </el-container>
14
+    <div class='dialysisPage' style="padding-top:40px;">
15
+      <printOne v-bind:childResponse="childResponse" :patient="patient" :hispatient="hispatient" :history="history" :patientid="patientid"></printOne>
40 16
     </div>
41 17
   </div>
42 18
 </template>
@@ -57,6 +33,9 @@ export default {
57 33
     BreadCrumb,
58 34
     printOne
59 35
   },
36
+  props:{
37
+    patientid:Number,
38
+  },
60 39
   data() {
61 40
     return {
62 41
       crumbs: [
@@ -70,7 +49,8 @@ export default {
70 49
       hispatient:{},
71 50
       educationOptions:[],
72 51
       history:{},
73
-      keyword:""
52
+      keyword:"",
53
+      patientid:''
74 54
     };
75 55
   },
76 56
   methods: {
@@ -160,7 +140,7 @@ export default {
160 140
     
161 141
   },
162 142
   created() {
163
-    this.getPatientList() 
143
+    // this.getPatientList() 
164 144
    
165 145
   },
166 146
   // computed:{

+ 14 - 3
src/xt_pages/outpatientDoctorStation/recordTemplate/printOne.vue ファイルの表示

@@ -1,5 +1,6 @@
1 1
 <template>
2
-    <div id='prescription-print' class="prescription-print">
2
+<div id='prescription-print'>
3
+    <div class="prescription-print">
3 4
         <div class="printTitle">{{orgname}} &nbsp;&nbsp; 门诊病历</div>
4 5
         <div class="infoTitle">
5 6
             <div>姓名:{{patient.name?patient.name:''}}</div>
@@ -37,8 +38,9 @@
37 38
             <div style="flex:1;">{{patient.id?patient.id:''}}</div>
38 39
         </div>
39 40
         <div style="page-break-after:always;margin-top:50px;"></div>
41
+    </div>
40 42
 
41
-
43
+    <div class="prescription-print">
42 44
         <div class="printTitle">病历内容</div>
43 45
         <div class="recordTitle">
44 46
             <div>科别:{{getDeparment(hispatient.departments)?getDeparment(hispatient.departments):''}}</div>
@@ -89,6 +91,7 @@
89 91
             医生签名:{{getDoctor(history.doctor)?getDoctor(history.doctor):''}}
90 92
         </div>
91 93
     </div>
94
+</div>
92 95
 </template>
93 96
 <script>
94 97
 
@@ -98,6 +101,7 @@ export default {
98 101
     props:{
99 102
       patient:Object,
100 103
       hispatient:Object,
104
+      patientid:Number
101 105
     //   history:Object,
102 106
     },
103 107
     data(){
@@ -141,7 +145,7 @@ export default {
141 145
       getPatientCaseHistory(){
142 146
 
143 147
         const params = {
144
-          patient_id:this.$route.query.patient_id
148
+          patient_id:this.patientid
145 149
         }
146 150
       console.log("病历22222",params)
147 151
       getPatientCaseHistory(params).then(response=>{
@@ -183,6 +187,13 @@ export default {
183 187
 
184 188
 
185 189
 <style lang="scss" scoped>
190
+.prescription-print{
191
+    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
192
+    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; 
193
+    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
194
+    margin-bottom: 20px;
195
+    padding:20px 10px;
196
+}
186 197
 .printTitle{
187 198
     font-size: 22px;
188 199
     text-align: center;

+ 14 - 15
src/xt_pages/outpatientDoctorStation/template/printOne.vue ファイルの表示

@@ -2,7 +2,7 @@
2 2
   <div id='prescriptionPrint'>
3 3
     <div v-for="(item,index) in advicePrint" :key="index">
4 4
       <div id='prescription-print' class="prescription-print" style="page-break-after: always;">
5
-          <div class="printTitle">{{orgname}} &nbsp;&nbsp; 血液透析中心处方笺</div>
5
+          <div class="printTitle">血液透析中心处方笺</div>
6 6
           <div class="infoTitle">
7 7
               <p>姓名:{{item.patient.name?item.patient.name:""}}</p>
8 8
               <p>性别:
@@ -69,8 +69,8 @@ export default {
69 69
         prescriptionInfo:[],
70 70
         hisPatient:{},
71 71
         department:[],
72
-        prescriptions:[],
73
-        orgname:""
72
+        prescriptions:[]
73
+
74 74
       }
75 75
     },
76 76
    methods:{
@@ -150,6 +150,7 @@ export default {
150 150
        return name
151 151
      },
152 152
      getTotalOne(id) {
153
+        console.log("处方数据",this.prescriptions)
153 154
         var total = 0
154 155
         var addtotal = 0
155 156
         for (let i = 0; i < this.prescriptions.length; i++) {
@@ -161,8 +162,8 @@ export default {
161 162
             }
162 163
           
163 164
             if (this.prescriptions[i].additionalcharge != null) {
164
-              for (let b = 0; b < this.prescriptions[i].additionalcharge.length; b++) {
165
-                addtotal = addtotal + this.prescriptions[i].additionalcharge[b].price * this.prescriptions[i].additionalcharge[b].count
165
+              for (let a = 0; a < this.prescriptions[i].additionalcharge.length; a++) {
166
+                addtotal = addtotal + this.prescriptions[i].additionalcharge[a].price * this.prescriptions[i].additionalcharge[a].count
166 167
               }
167 168
             }
168 169
               addtotal =  Math.floor(addtotal * 100) / 100
@@ -178,17 +179,15 @@ export default {
178 179
       this.getInitData()
179 180
       this.getPrescriptionPrint()
180 181
       this.getHisPatientDetail()
181
-      var xtuser = this.$store.getters.xt_user
182
-      this.orgname = xtuser.org.org_name
182
+
183 183
      
184 184
    },
185
-  //  watch:{
186
-  //    patient_id:function(val){
187
-  //      console.log("101000010101010",this.patient_id,this.record_date,this.prescription_id)
188
-  //      this.getPrescriptionPrint()
189
-  //      this.getHisPatientDetail()
190
-  //    }
191
-  //  }
185
+   watch:{
186
+     ids:function(val){
187
+      this.ids = val
188
+      this.getPrescriptionPrint()
189
+    }
190
+   }
192 191
 }
193 192
 </script>
194 193
 
@@ -199,7 +198,7 @@ export default {
199 198
     -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; 
200 199
     box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
201 200
     margin-bottom: 20px;
202
-    padding:20px 0px;
201
+    padding:20px 10px;
203 202
 }
204 203
 .printTitle{
205 204
     font-size: 22px;

+ 32 - 32
src/xt_pages/outpatientDoctorStation/treatPrint.vue ファイルの表示

@@ -1,9 +1,8 @@
1 1
 <template>
2
-  <div class="main-contain">
3
-    <div class="position">
4
-      <bread-crumb :crumbs="crumbs"></bread-crumb>
2
+  <div>
5 3
        <template>
6 4
         <el-button
5
+          style="position:fixed;right:25px;z-index:999"
7 6
           :loading="loading"
8 7
           size="small"
9 8
           icon="el-icon-printer"
@@ -12,30 +11,10 @@
12 11
           >打印</el-button
13 12
         >
14 13
       </template>
15
-    </div>
16
-    <div class="app-container" style="min-height:0;">
17
-        <el-container class="newContainer">
18
-            <!-- <div style="width:270px;margin-right:20px;">
19
-                <div class="cell clearfix" style="margin-bottom:10px;">
20
-                    <el-input size="small"  v-model.trim="search_input" class="filter-item"/>
21
-                    <el-button size="small" class="filter-item" type="primary" @click="searchAction">搜索</el-button>
22
-                </div>
23
-                <el-table ref="tab"   @current-change="changePatient" highlight-current-row :data="patientTableData" 
24
-                 height="480" border style="width: 100%">
25
-                    <el-table-column prop="date"  label="患者">   
26
-                      <template slot-scope="scope">{{scope.row.patients?scope.row.patients.name:''}}</template> 
27
-                    </el-table-column>
28
-                    <el-table-column prop="name" label="就诊号">
29
-                        <template slot-scope="scope">{{ scope.row.his_patient ?scope.row.his_patient.number:''}}</template>
30
-                    </el-table-column>
31
-                </el-table>
32
-            </div> -->
33 14
             
34
-            <div class='dialysisPage' style="flex: 1;height: calc(100vh - 178px);overflow-x:auto;::-webkit-scrollbar:height:15px;margin:0 auto;width:960px;">
35
-              <printOne v-bind:childResponse="childResponse" :advicePrint="advicePrint" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
36
-            </div>
37
-        </el-container>
38
-    </div>
15
+      <div class='dialysisPage' style="padding-top:40px;">
16
+        <printOne v-bind:childResponse="childResponse" :advicePrint="advicePrint" :ids="ids" :patient="patient" :hisPatient="hisPatient" :patient_id="patient_id" :record_date="record_date" :prescription_id="prescription_id"></printOne>
17
+      </div>
39 18
   </div>
40 19
 </template>
41 20
 
@@ -57,6 +36,9 @@ export default {
57 36
     BreadCrumb,
58 37
     printOne
59 38
   },
39
+  props:{
40
+    paramsObj:Object
41
+  },
60 42
   data() {
61 43
     return {
62 44
       crumbs: [
@@ -71,7 +53,8 @@ export default {
71 53
       search_input:"",
72 54
       loading:false,
73 55
       patient_id:0,
74
-      prescription_id:0
56
+      prescription_id:0,
57
+      ids:''
75 58
     };
76 59
   },
77 60
   methods:{
@@ -126,9 +109,9 @@ export default {
126 109
                 cal_two = cal_two + 1
127 110
               }
128 111
             }
129
-            this.$refs.tab.setCurrentRow(this.patientTableData[0])
130
-            console.log(this.patientTableData[0])
131
-            this.choosePatient(this.patientTableData[0])
112
+            // this.$refs.tab.setCurrentRow(this.patientTableData[0])
113
+            // console.log(this.patientTableData[0])
114
+            // this.choosePatient(this.patientTableData[0])
132 115
             this.cal_one = cal_one
133 116
             this.cal_two = cal_two   
134 117
          }
@@ -169,12 +152,29 @@ export default {
169 152
 
170 153
   created() {
171 154
     this.getAllDoctorList()
172
-    var record_date = this.$route.query.record
155
+    var record_date = this.paramsObj.record
173 156
     this.record_date = record_date
174 157
     console.log("record_date",record_date)
175
-    this.prescription_id = this.$route.query.prescription_id
158
+    this.prescription_id = this.paramsObj.prescription_id
159
+    this.patient_id = this.paramsObj.patient_id
160
+    this.ids = this.paramsObj.ids
176 161
     this.getAllHisPatientList(record_date)
177 162
   },
163
+  watch:{
164
+    paramsObj:{//深度监听,可监听到对象、数组的变化
165
+      handler(val, oldVal){
166
+        this.paramsObj = val
167
+        this.patient_id = this.paramsObj.patient_id
168
+        var record_date = this.paramsObj.record
169
+        this.record_date = record_date
170
+        var prescription_id = this.paramsObj.prescription_id
171
+        this.prescription_id = prescription_id
172
+        this.ids = this.paramsObj.ids
173
+        
174
+      },
175
+      deep:true
176
+    }
177
+  }
178 178
 
179 179
 };
180 180
 </script>

+ 43 - 30
src/xt_pages/outpatientDoctorStation/treatTemplate/printOne.vue ファイルの表示

@@ -1,40 +1,39 @@
1 1
 <template>
2
-   <div>
2
+   <div id='prescriptionPrint'>
3 3
     <div id='prescription-print' class="prescription-print" v-for="(item,index) in advicePrint" :key="index">
4 4
 
5
-        <div style="display:flex;justify-content: space-between;font-weight:bold;">
6
-            <p style="width:300px;display:flex;justify-content: space-between;font-weight:bold;">
5
+        <div style="display:flex;justify-content: space-between;font-weight:bold;align-items:center;">
6
+            <div style="width:200px;display:flex;justify-content: space-between;font-weight:bold;">
7 7
                 <span>费别</span>
8 8
                 <span>自费</span>
9 9
                 <span>公费</span>
10 10
                 <span>保险</span>
11 11
                 <span>其他</span>
12
-            </p>
13
-            <p>就诊日期:{{getTime(item.ctime)}}</p>
12
+            </div>
13
+            <div>就诊日期:{{getTime(item.ctime,"{y}-{m}-{d}")}}</div>
14 14
         </div>
15 15
 
16
-        <div class="printTitle">{{orgname}} &nbsp;&nbsp; 血液透析中心处方、治疗单</div>
17
-
18
-        <!-- <div class="printTitle">处方、治疗单</div> -->
16
+        <div class="printTitle">{{orgname}}</div>
17
+        <div class="printTitle">血液透析中心处方、治疗单</div>
19 18
 
20 19
         <div class="infoTitle">
21
-            <p>门诊编号:</p>
22
-            <p>电脑号:</p>
20
+            <div>门诊编号:</div>
21
+            <div>电脑号:</div>
23 22
         </div>
24 23
 
25 24
         <div class="infoMain">
26
-            <p style="margin-bottom: 10px;width:25%">姓名:{{item.patient.name}}</p>
27
-            <p style="margin-bottom: 10px;width:25%">性别:
25
+            <div style="margin-bottom: 10px;width:25%">姓名:{{item.patient.name}}</div>
26
+            <div style="margin-bottom: 10px;width:25%">性别:
28 27
                 <span v-if="item.patient.gender == 1">男</span>
29 28
                 <span v-if="item.patient.gender == 2">女</span>
30
-            </p>
31
-            <p style="margin-bottom: 10px;width:25%">年龄:
29
+            </div>
30
+            <div style="margin-bottom: 10px;width:25%">年龄:
32 31
                 <span>{{item.patient.age}}</span>
33
-            </p>
34
-            <p style="margin-bottom: 10px;width:25%">参保类型:</p>
35
-            <p style="margin-bottom: 10px;width:50%;">联系电话:{{item.patient.phone}}</p>
36
-            <p style="width:50%;">地址:{{item.patient.unit_address}}</p>
37
-            <p style="width:50%;">诊断:{{item.patient.diagnose}}</p>
32
+            </div>
33
+            <div style="margin-bottom: 10px;width:25%">参保类型:</div>
34
+            <div style="margin-bottom: 10px;width:50%;">联系电话:{{item.patient.phone}}</div>
35
+            <div style="width:50%;">地址:{{item.patient.unit_address}}</div>
36
+            <div style="width:100%;">诊断:{{item.patient.diagnose}}</div>
38 37
         </div>
39 38
 
40 39
         <div class="prescriptionBox">
@@ -64,13 +63,13 @@
64 63
         </div>
65 64
 
66 65
         <div class="infoTitle">
67
-            <p>开单医生:{{item.doctor?item.doctor:""}}</p>
68
-            <p>签章:</p>
66
+            <div>开单医生:{{item.doctor?item.doctor:""}}</div>
67
+            <div>签章:</div>
69 68
         </div>
70 69
 
71 70
         <div class="actionBar">
72
-            <p>执行医生:{{item.doctor?item.doctor:""}}</p>
73
-            <p>费用:{{getTotalOne(item.id)?getTotalOne(item.id):''}}元</p>
71
+            <div>执行医生:{{item.doctor?item.doctor:""}}</div>
72
+            <div>费用:{{getTotalOne(item.id)?getTotalOne(item.id):''}}元</div>
74 73
         </div>
75 74
 
76 75
         <table style="width:100%;text-align:center;line-height:25px;border-collapse: collapse;" border="1">
@@ -102,7 +101,7 @@
102 101
      </div>
103 102
 
104 103
 
105
-    <div id='prescriptionPrint'>
104
+    <!-- <div id='prescriptionPrint'>
106 105
 
107 106
         <div v-for="(item,index) in advicePrint" :key="index">
108 107
             <div id='prescription-print' class="prescription-print" style="page-break-after: always;">
@@ -204,7 +203,7 @@
204 203
 
205 204
         </div>
206 205
 
207
-    </div>
206
+    </div> -->
208 207
   </div>
209 208
 </template>
210 209
 <script>
@@ -214,7 +213,8 @@ export default {
214 213
     props:{
215 214
       patient_id:Number,
216 215
       record_date:String,
217
-      prescription_id:Number
216
+      prescription_id:Number,
217
+      ids:String
218 218
     },
219 219
     data(){
220 220
       return {
@@ -271,10 +271,10 @@ export default {
271 271
         //   patient_id:this.patient_id,
272 272
         //   record_date:this.record_date,
273 273
         //   prescription_id:this.prescription_id,
274
-          patient_id:this.$route.query.patient_id,
275
-          record_date:this.$route.query.record,
276
-          prescription_id:this.$route.query.prescription_id,
277
-          ids:this.$route.query.ids,
274
+          patient_id:this.patient_id,
275
+          record_date:this.record_date,
276
+          prescription_id:this.prescription_id,
277
+          ids:this.ids,
278 278
         }
279 279
         console.log("999999",params)
280 280
        getPrescriptionPrint(params).then(response=>{
@@ -342,6 +342,11 @@ export default {
342 342
      patient_id:function(val){
343 343
        console.log("101000010101010",this.patient_id,this.record_date,this.prescription_id)
344 344
     //    this.getPrescriptionPrint()
345
+     },
346
+     ids:function(val){
347
+         this.ids = val
348
+         console.log('this.idsids',this.ids)
349
+         this.getPrescriptionPrint()
345 350
      }
346 351
    }
347 352
 }
@@ -349,6 +354,13 @@ export default {
349 354
 
350 355
 
351 356
 <style lang="scss" scoped>
357
+.prescription-print{
358
+    -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 60px rgba(0, 0, 0, 0.06) inset;
359
+    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset; 
360
+    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.27), 0 0 40px rgba(0, 0, 0, 0.06) inset;
361
+    margin-bottom: 20px;
362
+    padding:20px 10px;
363
+}
352 364
 .prescription-print{
353 365
     font-size: 14px;
354 366
 }
@@ -356,6 +368,7 @@ export default {
356 368
     font-size: 18px;
357 369
     text-align: center;
358 370
     font-weight: bold;
371
+    margin-top: 10px;
359 372
 }
360 373
 .infoTitle{
361 374
     display: flex;

+ 3 - 3
src/xt_pages/outpatientRegistration/index.vue ファイルの表示

@@ -148,9 +148,9 @@
148 148
                             </el-option>
149 149
                         </el-select>
150 150
                     </el-form-item>
151
-                    <el-form-item>
151
+                    <!-- <el-form-item>
152 152
                         <el-checkbox v-model="form.costChecked">是否需要工本费</el-checkbox>
153
-                    </el-form-item>
153
+                    </el-form-item> -->
154 154
                     <el-form-item label="挂号费:">
155 155
                         <el-input v-model.number="form.registrationFee"></el-input>
156 156
                     </el-form-item>
@@ -158,7 +158,7 @@
158 158
                         <el-input v-model.number="form.medicalExpenses"></el-input>
159 159
                     </el-form-item>
160 160
                     <el-form-item label="工本费:">
161
-                        <el-input v-model.number="form.cost" :readonly="!form.costChecked"></el-input>
161
+                        <el-input v-model.number="form.cost"></el-input>
162 162
                     </el-form-item>
163 163
                     <el-form-item label="合计:">
164 164
                         <el-input v-model.number="total" readonly></el-input>

+ 39 - 26
src/xt_pages/outpatientRegistration/registrationHistory.vue ファイルの表示

@@ -93,6 +93,9 @@
93 93
                 </el-table-column>
94 94
                 <el-table-column align="center" prop="name" label="工本费" width="70">
95 95
                     <template slot-scope="scope">{{ scope.row.cost_of_production }}</template>
96
+                </el-table-column>
97
+                 <el-table-column align="center" prop="name" label="结算类型" width="70">
98
+                    <template slot-scope="scope">{{getBanlance(scope.row.balance_accounts_type) }}</template>
96 99
                 </el-table-column>
97 100
                 <el-table-column align="center" prop="name" label="操作人" width="70">
98 101
                     <template slot-scope="scope">{{creator}}</template>
@@ -184,10 +187,11 @@
184 187
                     <el-form-item label="科室:"  prop="department" :validate-event="is_Name">
185 188
                       <div>{{ getDepartMent(form.departments) }}</div>
186 189
                     </el-form-item>
187
-                    <el-form-item label="是否需要工本费:"> 
190
+                    <!-- <el-form-item label="是否需要工本费:"> 
188 191
                       <div v-if="form.is_need_cost_of_production == 1">是</div>
189 192
                       <div v-else>否</div>
190
-                    </el-form-item>
193
+                    </el-form-item> -->
194
+                    
191 195
                     <el-form-item label="挂号费:">
192 196
                       <div>{{ form.register_cost }}</div>
193 197
                     </el-form-item>
@@ -303,29 +307,29 @@ export default {
303 307
               {value: 6,label:'职工'},
304 308
               {value: 7,label:'合同'}
305 309
             ],
306
-            medicalCare: [{
307
-              value: 1,
308
-              label: '职工基本医疗保险'
309
-              }, {
310
-              value: 2,
311
-              label: "公务员医疗补助"
312
-              },{
313
-              value: 3,
314
-              label: "大额医疗费用补助"
315
-              },{
316
-              value: 4,
317
-              label: "离休人员医疗"
318
-              },{
319
-              value: 5,
320
-              label: "城乡居民基本医疗保险"
321
-              },{
322
-              value: 6,
323
-              label: "城乡居民大病医疗保险"
324
-              },
325
-              {
326
-              value: 7,
327
-              label: "生育保险"
328
-            }],
310
+            // medicalCare: [{
311
+            //   value: 1,
312
+            //   label: '职工基本医疗保险'
313
+            //   }, {
314
+            //   value: 2,
315
+            //   label: "公务员医疗补助"
316
+            //   },{
317
+            //   value: 3,
318
+            //   label: "大额医疗费用补助"
319
+            //   },{
320
+            //   value: 4,
321
+            //   label: "离休人员医疗"
322
+            //   },{
323
+            //   value: 5,
324
+            //   label: "城乡居民基本医疗保险"
325
+            //   },{
326
+            //   value: 6,
327
+            //   label: "城乡居民大病医疗保险"
328
+            //   },
329
+            //   {
330
+            //   value: 7,
331
+            //   label: "生育保险"
332
+            // }],
329 333
             newRegister: [{
330 334
               value: 1,
331 335
               label: '普通'
@@ -580,7 +584,16 @@ export default {
580 584
         })
581 585
         return str
582 586
       },
583
-
587
+      
588
+      getBanlance(id){
589
+        var label = ""
590
+         for(let i=0;i<this.settlement.length;i++){
591
+            if(id == this.settlement[i].value){
592
+               label = this.settlement[i].label
593
+             }
594
+         }
595
+         return label
596
+      }
584 597
     }
585 598
 }
586 599
 </script>