浏览代码

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

XMLWAN 4 年前
父节点
当前提交
74b79e95f9
共有 30 个文件被更改,包括 6608 次插入19653 次删除
  1. 32 18261
      package-lock.json
  2. 39 0
      src/api/his/his.js
  3. 418 410
      src/api/project/project.js
  4. 12 0
      src/router/modules/dialysis.js
  5. 13 2
      src/xt_pages/dialysis/batch_print/batch_print_order_six.vue
  6. 1950 0
      src/xt_pages/dialysis/batch_print/batch_print_order_twentyFive.vue
  7. 12 0
      src/xt_pages/dialysis/bloodPresssWatch.vue
  8. 32 12
      src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue
  9. 4 2
      src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue
  10. 4 2
      src/xt_pages/dialysis/template/DialysisPrintOrderThirtyFour.vue
  11. 1 1
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFive.vue
  12. 5 5
      src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFour.vue
  13. 208 0
      src/xt_pages/outpatientCharges/components/chargeMonthPrescriptionTable.vue
  14. 425 0
      src/xt_pages/outpatientCharges/components/dayPrescriptionTable.vue
  15. 297 0
      src/xt_pages/outpatientCharges/components/monthPrescriptionTable.vue
  16. 279 97
      src/xt_pages/outpatientCharges/components/registerDialog.vue
  17. 1045 224
      src/xt_pages/outpatientCharges/outpatientChargesManagement.vue
  18. 3 3
      src/xt_pages/outpatientCharges/statementTemplate/printOne.vue
  19. 2 2
      src/xt_pages/outpatientCharges/summary.vue
  20. 0 2
      src/xt_pages/outpatientDoctorStation/components/callPrescription.vue
  21. 970 212
      src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue
  22. 534 308
      src/xt_pages/outpatientDoctorStation/doctorDesk.vue
  23. 253 103
      src/xt_pages/outpatientRegistration/index.vue
  24. 8 2
      src/xt_pages/qcd/officesControlAnalysis/project.vue
  25. 9 0
      src/xt_pages/stock/detail/print.vue
  26. 13 1
      src/xt_pages/stock/drugs/drugCancelDetailPrint.vue
  27. 13 1
      src/xt_pages/stock/drugs/drugCancelOurderPrint.vue
  28. 13 1
      src/xt_pages/stock/drugs/drugOutOrderPrint.vue
  29. 13 1
      src/xt_pages/stock/drugs/drugPrint.vue
  30. 1 1
      src/xt_pages/workforce/appointment.vue

文件差异内容过多而无法显示
+ 32 - 18261
package-lock.json


+ 39 - 0
src/api/his/his.js 查看文件

@@ -279,9 +279,48 @@ export function getCallHisPrescription (params) {
279 279
 
280 280
 
281 281
 
282
+export function getDayOrMonthHisPrescription (params) {
283
+  return request({
284
+    url: '/api/dayprescription/get',
285
+    method: 'get',
286
+    params:params,
287
+  })
288
+}
289
+
290
+
291
+
282 292
 
283 293
 
284 294
 
295
+export function editHisPrescription(data, params) {
296
+  return request({
297
+    url: "/api/hisprescription/edit",
298
+    method: "post",
299
+    data:data,
300
+    params:params,
301
+  });
302
+}
303
+
304
+
305
+
306
+export function getChargeHisPatientList (params) {
307
+  return request({
308
+    url: '/api/charge/list',
309
+    method: 'get',
310
+    params:params,
311
+  })
312
+}
313
+
314
+
315
+
316
+export function getChargeHisPatientInfo (params) {
317
+  return request({
318
+    url: '/api/charge/info',
319
+    method: 'get',
320
+    params:params,
321
+  })
322
+}
323
+
285 324
 
286 325
 
287 326
 

+ 418 - 410
src/api/project/project.js 查看文件

@@ -3,516 +3,524 @@ import url from "postcss-url";
3 3
 
4 4
 export function saveProject(params){
5 5
 
6
-    return request({
7
-        url:"/api/his/saveproject",
8
-        methods:"get",
9
-        params:params,
10
-    })
6
+  return request({
7
+    url:"/api/his/saveproject",
8
+    methods:"get",
9
+    params:params,
10
+  })
11 11
 }
12 12
 
13 13
 
14 14
 export function getProjectList(params){
15
-   
16
-    return request({
17
-       url:"/api/his/getprojectlist",
18
-       methods:"get",
19
-       params:params
20
-    })
15
+
16
+  return request({
17
+    url:"/api/his/getprojectlist",
18
+    methods:"get",
19
+    params:params
20
+  })
21 21
 }
22 22
 
23 23
 export function getProjectDetail(id,params){
24
-  
25
-    return request({
26
-       url:"/api/his/getprojectdetail?id="+id,
27
-       methods:"get",
28
-       params:params
29
-    })
24
+
25
+  return request({
26
+    url:"/api/his/getprojectdetail?id="+id,
27
+    methods:"get",
28
+    params:params
29
+  })
30 30
 }
31 31
 
32 32
 export function updatedProject(params){
33
-   
34
-   return request({
35
-      url:"/api/his/updatedproject",
36
-      methods:"get",
37
-      params:params
38
-   })
33
+
34
+  return request({
35
+    url:"/api/his/updatedproject",
36
+    methods:"get",
37
+    params:params
38
+  })
39 39
 }
40 40
 
41 41
 export function deleteHisProject(id,params){
42
-   
43
-    return request({
44
-      url:"/api/his/deletehisproject?id="+id,
45
-      methods:"get",
46
-      params:params
47
-    })
42
+
43
+  return request({
44
+    url:"/api/his/deletehisproject?id="+id,
45
+    methods:"get",
46
+    params:params
47
+  })
48 48
 }
49 49
 
50 50
 export function saveProjectTeam(params){
51
-  
52
-   return request({
53
-     url:"/api/his/saveprojectteam",
54
-     methods:"Get",
55
-     params:params
56
-   })
51
+
52
+  return request({
53
+    url:"/api/his/saveprojectteam",
54
+    methods:"Get",
55
+    params:params
56
+  })
57 57
 }
58 58
 
59 59
 export function getProjectTeamList(params){
60
-  
61
-    return request({
62
-       url:"/api/his/getprojectteamlist",
63
-       methods:"get",
64
-       params:params
65
-    })
60
+
61
+  return request({
62
+    url:"/api/his/getprojectteamlist",
63
+    methods:"get",
64
+    params:params
65
+  })
66 66
 }
67 67
 
68 68
 export function getProjectTeamDetail(id,params){
69
-   
70
-    return request({
71
-       url:"/api/his/getprojectteamdetail?id="+id,
72
-       methods:"get",
73
-       params:params
74
-    })
69
+
70
+  return request({
71
+    url:"/api/his/getprojectteamdetail?id="+id,
72
+    methods:"get",
73
+    params:params
74
+  })
75 75
 }
76 76
 
77 77
 export function updatedProjectTeam(params){
78
-  
79
-    return request({
80
-       url:"/api/his/updateprojectteam",
81
-       methods:"get",
82
-       params:params
83
-    })
78
+
79
+  return request({
80
+    url:"/api/his/updateprojectteam",
81
+    methods:"get",
82
+    params:params
83
+  })
84 84
 }
85 85
 
86 86
 export function DeleteProjectTeam(id,params){
87
-   
87
+
88 88
   return request({
89
-      url:"/api/his/deleteprojectteam?id="+id,
90
-      methods:"get",
91
-      params:params
89
+    url:"/api/his/deleteprojectteam?id="+id,
90
+    methods:"get",
91
+    params:params
92 92
   })
93 93
 }
94 94
 
95 95
 export function SaveDepartment(params){
96
-  
97
-    return request({
98
-       url:"/api/his/savedepartment",
99
-       methods:"get",
100
-       params:params
101
-    })
96
+
97
+  return request({
98
+    url:"/api/his/savedepartment",
99
+    methods:"get",
100
+    params:params
101
+  })
102 102
 }
103 103
 
104 104
 export function getDePartmentList(params){
105
-  
106
-    return request({
107
-       url:"/api/his/getdepartmentlist",
108
-       methods:"Get",
109
-       params:params
110
-    })
105
+
106
+  return request({
107
+    url:"/api/his/getdepartmentlist",
108
+    methods:"Get",
109
+    params:params
110
+  })
111 111
 }
112 112
 
113 113
 export function getDepartMentDetail(id,params){
114
-  
115
-    return request({
116
-        url:"/api/his/getdepartmentdetail?id="+id,
117
-        methods:"get",
118
-        params:params
119
-    })
114
+
115
+  return request({
116
+    url:"/api/his/getdepartmentdetail?id="+id,
117
+    methods:"get",
118
+    params:params
119
+  })
120 120
 }
121 121
 
122 122
 export function UpdatedDepartment(params){
123
-   
124
-    return request({
125
-        url:"/api/his/updagtedepartment",
126
-        methods:"get",
127
-        params:params
128
-    })
123
+
124
+  return request({
125
+    url:"/api/his/updagtedepartment",
126
+    methods:"get",
127
+    params:params
128
+  })
129 129
 }
130 130
 
131 131
 export function DeleteDepartment(id,params){
132
-    return request({
133
-       url:"/api/his/deletedeparment?id="+id,
134
-       methods:"get",
135
-       params:params
136
-    })
132
+  return request({
133
+    url:"/api/his/deletedeparment?id="+id,
134
+    methods:"get",
135
+    params:params
136
+  })
137 137
 }
138 138
 
139 139
 
140 140
 export function getPatientList(params){
141
-   return request({
142
-       url:"/api/his/getbloodpatient",
143
-       methods:"get",
144
-       params:params
145
-   })
141
+  return request({
142
+    url:"/api/his/getbloodpatient",
143
+    methods:"get",
144
+    params:params
145
+  })
146 146
 }
147 147
 
148 148
 export function getHisPrescription(id,params){
149
-   
150
-    return request({
151
-       url:"/api/his/gethisprescription?id="+id,
152
-       methods:"get",
153
-       params:params
154
-    })
149
+
150
+  return request({
151
+    url:"/api/his/gethisprescription?id="+id,
152
+    methods:"get",
153
+    params:params
154
+  })
155 155
 }
156 156
 
157 157
 export function saveCharges(data){
158
-    
159
-    return request({
160
-       url:"/api/his/additionalcharge",
161
-       method:"post",
162
-       data:data
163
-    })
158
+
159
+  return request({
160
+    url:"/api/his/additionalcharge",
161
+    method:"post",
162
+    data:data
163
+  })
164 164
 }
165 165
 
166 166
 
167 167
 export function getAllProjectList(params){
168
-    return request({
169
-       url:"/api/his/getallprojectlist",
170
-       methods:"get",
171
-       params:params
172
-    })
168
+  return request({
169
+    url:"/api/his/getallprojectlist",
170
+    methods:"get",
171
+    params:params
172
+  })
173 173
 }
174 174
 
175 175
 export function addProjectList(params){
176
-  
177
-    return request({
178
-       url:"/api/his/addprojectlist",
179
-       methods:"get",
180
-       params:params
181
-    })
176
+
177
+  return request({
178
+    url:"/api/his/addprojectlist",
179
+    methods:"get",
180
+    params:params
181
+  })
182 182
 }
183 183
 
184 184
 export function getPatientInformation(id,params){
185
-   
186
-   return request({
187
-     url:"/api/his/getpatientinformation?id="+id,
188
-     methods:"Get",
189
-     params:params
190
-   })
185
+
186
+  return request({
187
+    url:"/api/his/getpatientinformation?id="+id,
188
+    methods:"Get",
189
+    params:params
190
+  })
191 191
 }
192 192
 
193 193
 export function DeleteProject(id,params){
194
-   
195
-    return request({
196
-       url:"/api/his/deleteproject?id="+id,
197
-       methods:"Get",
198
-       params:params
199
-    })
194
+
195
+  return request({
196
+    url:"/api/his/deleteproject?id="+id,
197
+    methods:"Get",
198
+    params:params
199
+  })
200 200
 }
201 201
 
202 202
 
203 203
 export function getHisProject(params){
204
-  
205
-    return request({
206
-       url:"/api/his/gethisproject",
207
-       methods:"get",
208
-       params:params
209
-    })
204
+
205
+  return request({
206
+    url:"/api/his/gethisproject",
207
+    methods:"get",
208
+    params:params
209
+  })
210 210
 }
211 211
 
212 212
 export function addProjectTeam(params){
213
-   
213
+
214 214
   return request({
215
-      url:"/api/his/getprojectteam",
216
-      methods:"Get",
217
-      params:params
215
+    url:"/api/his/getprojectteam",
216
+    methods:"Get",
217
+    params:params
218 218
   })
219 219
 }
220 220
 
221 221
 export function getAllDoctorList(params){
222
-   
222
+
223 223
   return request({
224
-      url:"/api/his/getalldoctorlist",
225
-      methods:"Get",
226
-      params:params
224
+    url:"/api/his/getalldoctorlist",
225
+    methods:"Get",
226
+    params:params
227 227
   })
228
-} 
228
+}
229 229
 
230 230
 export function saveHisPatient(params){
231
-   
232
-    return request({
233
-        url:"/api/his/savehispatient",
234
-        methods:"get",
235
-        params:params
236
-    })
231
+
232
+  return request({
233
+    url:"/api/his/savehispatient",
234
+    methods:"get",
235
+    params:params
236
+  })
237 237
 }
238 238
 
239 239
 export function getAllProjectTeam(params){
240
-  
240
+
241 241
   return request({
242
-     url:"/api/hist/getallprojecteam",
243
-     methods:"get",
244
-     params:params
242
+    url:"/api/hist/getallprojecteam",
243
+    methods:"get",
244
+    params:params
245 245
   })
246 246
 }
247 247
 
248 248
 export function getPojectListById(params){
249
-  
249
+
250 250
   return request({
251 251
     url:"/api/his/getprojectlistbyid",
252 252
     methods:"get",
253
-    params:params 
253
+    params:params
254 254
   })
255 255
 }
256 256
 
257 257
 export function getHisPatientHistory(params){
258
-  
259
-    return request({
260
-        url:"/api/his/gethispatienthistory",
261
-        methods:"get",
262
-        params:params
263
-    })
258
+
259
+  return request({
260
+    url:"/api/his/gethispatienthistory",
261
+    methods:"get",
262
+    params:params
263
+  })
264 264
 }
265 265
 
266 266
 
267 267
 export function changePatient(id,params){
268
-   
269
-    return request({
270
-      url:"/api/patient/changepatient?id="+id,
271
-      method:"get",
272
-      params:params
273
-    })
274
-  }
275
-
276
-
277
-  export function getPatientCaseHistory(params){
278
-     
279
-    return request({
280
-        url:"/api/patient/getpatientcasehistory",
281
-        method:"get",
282
-        params:params
283
-    })
284
-  }
285
-
286
-  export function SaveHisPatientCaseHistoryTemplate(params){
287
-      
288
-    return request({
289
-       url:"/api/doctorworkstation/casehistorytemplate/create",
290
-       method:"get",
291
-       params:params
292
-    })
293
-  }
294
-
295
-  export function getHistoryTemplate(params){
296
-   
297
-    return request({
298
-      url:"/api/doctorworkstation/casehistorytemplate/get",
299
-      method:"get",
300
-      params:params
301
-    })
302
-  }
303
-
304
-  export function getTemplateDetail(id,params){
305
-     
306
-     return request({
307
-        url:"/api/doctorworkstation/gettemplatedetail?id="+id,
308
-        method:"get",
309
-        params:params
310
-     })
311
-  }
312
-
313
-  export function updateRecordTemplate(params){
314
-    
315
-    return request({
316
-        url:"/api/doctorworkstation/updaterecordtemplate",
317
-        method:"get",
318
-        params:params  
319
-    })
320
-  } 
321
-
322
-  export function getHisPatient(params){
323
-    
324
-    return request({
325
-      url:"/api/hispatient/gehispatient",
326
-      method:"get",
327
-      params:params
328
-    })
329
-  }
330
-
331
-  export function postPrintHisTemplate(params){
332
-    
333
-    return request({
334
-      url:"/api/hispatient/postprinthistemplate",
335
-      method:"get",
336
-      params:params
337
-    })
338
-  }
339
-
340
-  export function getHisPrintTemplate(params){
341
-    
342
-    return request({
343
-      url:"/api/gethisprinttemplate",
344
-      method:"get",
345
-      params:params
346
-    })
347
-  } 
348
-
349
-  export function postPrescriptionPrintTemplate(params){
350
-    
351
-    return request({
352
-      url:"/api/hispatient/postprescriptiontemplate",
353
-      method:"Get",
354
-      params:params
355
-    })
356
-  }
357
-
358
-  export function getPrescriptionTemplate(params){
359
-   
360
-    return request({
361
-      url:"/api/hispatient/getprescriptiontemplate",
362
-      method:"Get",
363
-      params:params
364
-    })
365
-  }
366
-
367
-  export function postTreatPrintTemplate(params){
368
-   
369
-    return request({
370
-      url:"/api/hispatient/posttreatprinttemplate",
371
-      method:"get",
372
-      params:params
373
-    })
374
-  }
375
-
376
-  export function getTreatPrintTemplate(params){
377
-   
378
-    return request({
379
-      url:"/api/hispatient/gettreatprinttemplate",
380
-      method:"Get",
381
-      params:params
382
-    })
383
-  }
384
-
385
-  export function postChargePrintTemplate(params){
386
-    
387
-    return request({
388
-      url:"/api/hispatient/postchargeprinttemplate",
389
-      method:"get",
390
-      params:params
391
-    })
392
-  }
393
-
394
-  export function getChargePrintTemplate(params){
395
-     
396
-    return request({
397
-       url:"/api/hispatient/getchargeprinttemplate",
398
-       method:"get",
399
-       params:params
400
-    })
401
-  }
402
-
403
-  export function getAllHisPatientList(params){
404
-    
405
-    return request({
406
-      url:"/api/hispatient/getallhispatient",
407
-      method:"get",
408
-      params:params
409
-    })
410
-  }
411
-
412
-  export function getPrescriptionPrint(params){
413
-    
414
-    return request({
415
-      url:"/api/hispatient/getprescriptionprint",
416
-      method:"get",
417
-      params:params
418
-    })
419
-  }
420
-
421
-  export function getChargePrint(params){
422
-     
423
-    return request({
424
-      url:"/api/hispatient/getchargeprint",
425
-      method:"get",
426
-      params:params
427
-    })
428
-  }
429
-
430
-  export function getTodaySchedulePatient(params){
431
-     
432
-    return request({
433
-      url:"/api/hispatient/gettodayschedulepatient",
434
-      method:"get",
435
-      params:params
436
-    })
437
-  }
438
-
439
-  export function getHisPatientDetail(params){
440
-    console.log("params99999",params)
441
-    return request({
442
-      url:"/api/hispatient/gethispatientdetail",
443
-      method:"Get",
444
-      params:params
445
-    })
446
-  }
447
-
448
-  export function getAllDePartmentList(params){
449
-   
450
-    return request({
451
-      url:"/api/hispatient/getalldepartmentlist",
452
-      method:"Get",
453
-      params:params
454
-    })
455
-  } 
456
-
457
-  export function getPrescriptionList(id,params){
458
-     
459
-    return request({
460
-      url:"/api/hispatient/getprescription?patient_id="+id,
461
-      method:"Get",
462
-      params:params
463
-    })
464
-  }
465
-
466
-  export function getPatientDetail(id,params){
467
-    
468
-     return request({
469
-       url:"/api/histpatient/getpatientdetail?id="+id,
470
-       method:"Get",
471
-       params:params
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
-     })
518
-  }
268
+
269
+  return request({
270
+    url:"/api/patient/changepatient?id="+id,
271
+    method:"get",
272
+    params:params
273
+  })
274
+}
275
+
276
+
277
+export function getPatientCaseHistory(params){
278
+
279
+  return request({
280
+    url:"/api/patient/getpatientcasehistory",
281
+    method:"get",
282
+    params:params
283
+  })
284
+}
285
+
286
+export function SaveHisPatientCaseHistoryTemplate(params){
287
+
288
+  return request({
289
+    url:"/api/doctorworkstation/casehistorytemplate/create",
290
+    method:"get",
291
+    params:params
292
+  })
293
+}
294
+
295
+export function getHistoryTemplate(params){
296
+
297
+  return request({
298
+    url:"/api/doctorworkstation/casehistorytemplate/get",
299
+    method:"get",
300
+    params:params
301
+  })
302
+}
303
+
304
+export function getTemplateDetail(id,params){
305
+
306
+  return request({
307
+    url:"/api/doctorworkstation/gettemplatedetail?id="+id,
308
+    method:"get",
309
+    params:params
310
+  })
311
+}
312
+
313
+export function updateRecordTemplate(params){
314
+
315
+  return request({
316
+    url:"/api/doctorworkstation/updaterecordtemplate",
317
+    method:"get",
318
+    params:params
319
+  })
320
+}
321
+
322
+export function getHisPatient(params){
323
+
324
+  return request({
325
+    url:"/api/hispatient/gehispatient",
326
+    method:"get",
327
+    params:params
328
+  })
329
+}
330
+
331
+export function postPrintHisTemplate(params){
332
+
333
+  return request({
334
+    url:"/api/hispatient/postprinthistemplate",
335
+    method:"get",
336
+    params:params
337
+  })
338
+}
339
+
340
+export function getHisPrintTemplate(params){
341
+
342
+  return request({
343
+    url:"/api/gethisprinttemplate",
344
+    method:"get",
345
+    params:params
346
+  })
347
+}
348
+
349
+export function postPrescriptionPrintTemplate(params){
350
+
351
+  return request({
352
+    url:"/api/hispatient/postprescriptiontemplate",
353
+    method:"Get",
354
+    params:params
355
+  })
356
+}
357
+
358
+export function getPrescriptionTemplate(params){
359
+
360
+  return request({
361
+    url:"/api/hispatient/getprescriptiontemplate",
362
+    method:"Get",
363
+    params:params
364
+  })
365
+}
366
+
367
+export function postTreatPrintTemplate(params){
368
+
369
+  return request({
370
+    url:"/api/hispatient/posttreatprinttemplate",
371
+    method:"get",
372
+    params:params
373
+  })
374
+}
375
+
376
+export function getTreatPrintTemplate(params){
377
+
378
+  return request({
379
+    url:"/api/hispatient/gettreatprinttemplate",
380
+    method:"Get",
381
+    params:params
382
+  })
383
+}
384
+
385
+export function postChargePrintTemplate(params){
386
+
387
+  return request({
388
+    url:"/api/hispatient/postchargeprinttemplate",
389
+    method:"get",
390
+    params:params
391
+  })
392
+}
393
+
394
+export function getChargePrintTemplate(params){
395
+
396
+  return request({
397
+    url:"/api/hispatient/getchargeprinttemplate",
398
+    method:"get",
399
+    params:params
400
+  })
401
+}
402
+
403
+export function getAllHisPatientList(params){
404
+
405
+  return request({
406
+    url:"/api/hispatient/getallhispatient",
407
+    method:"get",
408
+    params:params
409
+  })
410
+}
411
+
412
+export function getPrescriptionPrint(params){
413
+
414
+  return request({
415
+    url:"/api/hispatient/getprescriptionprint",
416
+    method:"get",
417
+    params:params
418
+  })
419
+}
420
+
421
+export function getChargePrint(params){
422
+
423
+  return request({
424
+    url:"/api/hispatient/getchargeprint",
425
+    method:"get",
426
+    params:params
427
+  })
428
+}
429
+
430
+export function getTodaySchedulePatient(params){
431
+
432
+  return request({
433
+    url:"/api/hispatient/gettodayschedulepatient",
434
+    method:"get",
435
+    params:params
436
+  })
437
+}
438
+
439
+export function getHisPatientDetail(params){
440
+  console.log("params99999",params)
441
+  return request({
442
+    url:"/api/hispatient/gethispatientdetail",
443
+    method:"Get",
444
+    params:params
445
+  })
446
+}
447
+
448
+export function getAllDePartmentList(params){
449
+
450
+  return request({
451
+    url:"/api/hispatient/getalldepartmentlist",
452
+    method:"Get",
453
+    params:params
454
+  })
455
+}
456
+
457
+export function getPrescriptionList(id,params){
458
+
459
+  return request({
460
+    url:"/api/hispatient/getprescription?patient_id="+id,
461
+    method:"Get",
462
+    params:params
463
+  })
464
+}
465
+
466
+export function getPatientDetail(id,params){
467
+
468
+  return request({
469
+    url:"/api/histpatient/getpatientdetail?id="+id,
470
+    method:"Get",
471
+    params:params
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
+  })
518
+}
519
+
520
+export function getUnRegisterHisPatientList (params) {
521
+  return request({
522
+    url: '/api/unregister/list',
523
+    method: 'get',
524
+    params:params,
525
+  })
526
+}

+ 12 - 0
src/router/modules/dialysis.js 查看文件

@@ -316,6 +316,18 @@ export default {
316 316
         noCache: true
317 317
       }
318 318
     },
319
+    {
320
+      path: '/dialysis/print/batch/twentyFive',
321
+      component: () =>
322
+        import('@/xt_pages/dialysis/batch_print/batch_print_order_twentyFive'),
323
+      hidden: true,
324
+      is_menu: false,
325
+      name: 'dialysis_batch_twentyFive',
326
+      meta: {
327
+        title: '批量打印',
328
+        noCache: true
329
+      }
330
+    },
319 331
     {
320 332
       path: '/dialysis/print/batch/thirty',
321 333
       component: () =>

+ 13 - 2
src/xt_pages/dialysis/batch_print/batch_print_order_six.vue 查看文件

@@ -979,6 +979,8 @@
979 979
                           <td width="50">血流量<br />(ml/min)</td>
980 980
                           <td width="50">静脉压<br />(mmHg)</td>
981 981
                           <td width="50">跨膜压<br />(mmHg)</td>
982
+                          <td width="60" v-if="org_id != 9836">透析液温度(°C)</td>
983
+                          <td width="60" v-if="org_id == 9836">体温(°C)</td>
982 984
                           <td width="60">透析液温度(°C)</td>
983 985
                           <td width="50">电导度<br />(ms/cm)</td>
984 986
                           <td width="50">超滤量<br />(ml)</td>
@@ -1049,13 +1051,20 @@
1049 1051
                                 : ""
1050 1052
                             }}
1051 1053
                           </td>
1052
-                          <td>
1054
+                          <td v-if="org_id != 9836">
1053 1055
                             {{
1054 1056
                               monitor_record.dialysate_temperature
1055 1057
                                 ? monitor_record.dialysate_temperature
1056 1058
                                 : ""
1057 1059
                             }}
1058 1060
                           </td>
1061
+                          <td v-if="org_id == 9836">
1062
+                            {{
1063
+                              monitor_record.temperature
1064
+                                ? monitor_record.temperature
1065
+                                : ""
1066
+                            }}
1067
+                          </td>
1059 1068
                           <td>
1060 1069
                             {{
1061 1070
                               monitor_record.sodium_concentration
@@ -2023,7 +2032,8 @@ export default {
2023 2032
         "出血",
2024 2033
         "心衰",
2025 2034
         "腹痛"
2026
-      ]
2035
+      ],
2036
+      org_id:''
2027 2037
     };
2028 2038
   },
2029 2039
   created() {
@@ -2037,6 +2047,7 @@ export default {
2037 2047
     this.nutrition_arr = getDataConfig("hemodialysis", "nutrition");
2038 2048
     var xtuser = this.$store.getters.xt_user;
2039 2049
     this.orgname = xtuser.org.org_name;
2050
+    this.org_id = this.$store.getters.xt_user.org.id
2040 2051
     //   this.orgname = "遂溪方济医院";
2041 2052
     this.modeOptions = this.$store.getters.treatment_mode;
2042 2053
     //   this.replacementWays = this.$store.getters.replacement_ways;

文件差异内容过多而无法显示
+ 1950 - 0
src/xt_pages/dialysis/batch_print/batch_print_order_twentyFive.vue


+ 12 - 0
src/xt_pages/dialysis/bloodPresssWatch.vue 查看文件

@@ -199,6 +199,16 @@
199 199
           >
200 200
         </div>
201 201
       </template>
202
+      <template v-if="this.template_id == 25">
203
+        <el-button
204
+          size="small"
205
+          icon="el-icon-printer"
206
+          :disabled="selecting_schs.length == 0"
207
+          @click="batchPrintAction"
208
+          type="primary"
209
+          >批量打印</el-button
210
+        >
211
+      </template>
202 212
       <template v-if="this.template_id == 30">
203 213
         <el-button
204 214
           size="small"
@@ -785,6 +795,8 @@ export default {
785 795
         this.$router.push({ path: "/dialysis/print/batch/twenty" });
786 796
       } else if (this.template_id == 22) {
787 797
         this.$router.push({ path: "/dialysis/print/batch/twentyTwo" });
798
+      } else if (this.template_id == 25) {
799
+        this.$router.push({ path: "/dialysis/print/batch/twentyFive" });
788 800
       } else if (this.template_id == 30) {
789 801
         this.$router.push({ path: "/dialysis/print/batch/thirty" });
790 802
       } else if (this.template_id == 32) {

+ 32 - 12
src/xt_pages/dialysis/details/dialog/dialysisPrescriptionDialog.vue 查看文件

@@ -139,7 +139,7 @@
139 139
               </el-select>
140 140
             </el-form-item>
141 141
           </el-col>
142
-          
142
+
143 143
 
144 144
          <el-col :span="8" v-if="isShows('抗凝剂商品名称')">
145 145
             <el-form-item label="抗凝剂商品名称:">
@@ -350,7 +350,7 @@
350 350
             </el-form-item>
351 351
           </el-col>
352 352
 
353
-      
353
+
354 354
 
355 355
           <el-col :span="8" v-if="isShows('透析器/灌流器')">
356 356
             <el-form-item label="透析器/灌流器">
@@ -1318,6 +1318,23 @@
1318 1318
 
1319 1319
             //      var dialy = this.dialyzerPerfusionApparatus[j].name.toUpperCase()
1320 1320
 
1321
+            //      if(newarr == dialy){
1322
+            //         Arr.push(this.dialyzerPerfusionApparatus[j].name)
1323
+            //      }
1324
+            //   }
1325
+            // }
1326
+            // var arrtwo = Arr.join(",")
1327
+            // console.log("Arr",arrtwo)
1328
+            //  var arr = this.dialysisPrescription.dialyzer_perfusion_apparatus
1329
+            //  var newArr =  arr.split(",")
1330
+            // console.log("透析器/灌流器",newArr)
1331
+            // var Arr = []
1332
+            // for(let i=0;i<newArr.length;i++){
1333
+            //   for(let j=0;j<this.dialyzerPerfusionApparatus.length;j++){
1334
+            //      var newarr = newArr[i].toUpperCase()
1335
+            //
1336
+            //      var dialy = this.dialyzerPerfusionApparatus[j].name.toUpperCase()
1337
+            //
1321 1338
             //      if(newarr == dialy){
1322 1339
             //         Arr.push(this.dialyzerPerfusionApparatus[j].name)
1323 1340
             //      }
@@ -1329,7 +1346,8 @@
1329 1346
             this.InnerDialogProps.titles = '透析器/灌流器'
1330 1347
             this.InnerDialogProps.type = 'dialyzer_perfusion_apparatus'
1331 1348
 
1332
-            
1349
+
1350
+            this.InnerDialogProps.selected = this.dialysisPrescription.dialyzer_perfusion_apparatus
1333 1351
             this.InnerDialogProps.selected = this.dialysisPrescription.dialyzer_perfusion_apparatus
1334 1352
             this.InnerDialogProps.isShowTextArea = false
1335 1353
             break
@@ -1340,10 +1358,10 @@
1340 1358
             this.InnerDialogProps.titles = '抽血'
1341 1359
             this.InnerDialogProps.type = 'blood'
1342 1360
             this.InnerDialogProps.selected = this.dialysisPrescription.blood
1343
-            this.InnerDialogProps.isShowTextArea = false    
1344
-          
1361
+            this.InnerDialogProps.isShowTextArea = false
1362
+
1345 1363
            case '7': // 透析器
1346
-          
1364
+
1347 1365
         }
1348 1366
       },
1349 1367
       innerDialogComfirm: function(val) {
@@ -1922,7 +1940,7 @@
1922 1940
         this.isVisibility = false
1923 1941
       },
1924 1942
       changeThisAnticoagulant: function(val) {
1925
-        
1943
+
1926 1944
         var thismode = val
1927 1945
         if (isNaN(thismode) || thismode <= 0) {
1928 1946
           return false
@@ -3200,9 +3218,9 @@
3200 3218
         const res = new Map();
3201 3219
         return arr.filter((arr) => !res.has(arr.name) && res.set(arr.name, 1));
3202 3220
       },
3203
-     
3221
+
3204 3222
     },
3205
-  
3223
+
3206 3224
     watch: {
3207 3225
       'dialysisPrescription.dialysis_duration_hour': function() {
3208 3226
         let dialysis_duration_minute = 0
@@ -3257,7 +3275,7 @@
3257 3275
           this.dialysisPrescription.anticoagulant_zongliang = ''
3258 3276
         }
3259 3277
 
3260
-       
3278
+
3261 3279
       },
3262 3280
       'dialysisPrescription.anticoagulant_shouji': function() {
3263 3281
         let dialysis_duration_minute = 0
@@ -3289,7 +3307,7 @@
3289 3307
           this.dialysisPrescription.anticoagulant_zongliang = ''
3290 3308
         }
3291 3309
 
3292
-        
3310
+
3293 3311
       },
3294 3312
       'dialysisPrescription.anticoagulant_weichi': function() {
3295 3313
         let dialysis_duration_minute = 0
@@ -3316,7 +3334,9 @@
3316 3334
           this.dialysisPrescription.anticoagulant_zongliang = ''
3317 3335
         }
3318 3336
         console.log("首季",this.dialysisPrescription.anticoagulant_zongliang)
3319
-      
3337
+
3338
+
3339
+
3320 3340
       },
3321 3341
       'prescription.id': {
3322 3342
         immediate: true,

+ 4 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderSix.vue 查看文件

@@ -501,7 +501,8 @@
501 501
                       <td width="50">血流量<br />(ml/min)</td>
502 502
                       <td width="50">静脉压<br />({{monitors[0]&&monitors[0]['venous_pressure_type'] == 2 ? 'kpa' : 'mmHg'}})</td>
503 503
                       <td width="50">跨膜压<br />({{monitors[0]&&monitors[0]['transmembrane_pressure_type'] == 2 ? 'kpa' : 'mmHg'}})</td>
504
-                      <td width="60">透析液温度(°C)</td>
504
+                      <td width="60" v-if="org_id != 9836">透析液温度(°C)</td>
505
+                      <td width="60" v-if="org_id == 9836">体温(°C)</td>
505 506
                       <td width="50">电导度<br />(ms/cm)</td>
506 507
                       <td width="50">超滤量<br />(ml)</td>
507 508
                       <td v-if="prescription.mode_id == 2 || prescription.mode_id == 5 || prescription.mode_id == 12" width="50">
@@ -543,7 +544,8 @@
543 544
                           {{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : 0 }}
544 545
                         </span>
545 546
                       </td>
546
-                      <td>{{ monitor.dialysate_temperature ? monitor.dialysate_temperature : "" }}</td>
547
+                      <td v-if="org_id != 9836">{{ monitor.dialysate_temperature ? monitor.dialysate_temperature : "" }}</td>
548
+                      <td v-if="org_id == 9836">{{ monitor.temperature ? monitor.temperature : "" }}</td>
547 549
                       <td>{{ monitor.sodium_concentration ? monitor.sodium_concentration : "" }}
548 550
                       </td>
549 551
                       <td v-if="(dialysisOrder && monitor.operate_time > dialysisOrder.end_time) || (dialysisOrder && monitor.operate_time < dialysisOrder.start_time)">

+ 4 - 2
src/xt_pages/dialysis/template/DialysisPrintOrderThirtyFour.vue 查看文件

@@ -284,6 +284,7 @@
284 284
                         <td width="60" style="height:20px;line-height:20px">超滤量<br />ml</td>
285 285
                         <td width="60" style="height:20px;line-height:20px">透析液温度</td>
286 286
                         <td width="60" style="height:20px;line-height:20px">电导度<br />ms/cm</td>
287
+                        <td width="60" style="height:20px;line-height:20px">体温<br />C°</td>
287 288
                         <td width="">病情变化及处理</td>
288 289
                         <td width="60" style="height:20px;line-height:20px">签名</td>
289 290
                     </tr>
@@ -303,6 +304,7 @@
303 304
                         <td>&nbsp;{{ monitor.ultrafiltration_volume ? monitor.ultrafiltration_volume : "" }}</td>
304 305
                         <td>&nbsp;{{monitor.dialysate_temperature ? monitor.dialysate_temperature : ''}}</td>
305 306
                         <td>&nbsp;{{ monitor.conductivity ? monitor.conductivity : "" }}</td>
307
+                        <td>&nbsp;{{ monitor.temperature ? monitor.temperature : "" }}</td>
306 308
                         <td style="text-align:left;padding-left:10px;">
307 309
                             <div style="line-height:20px;text-align: left;display: inline-block;">
308 310
                                 &nbsp;{{ monitor.symptom }}{{ monitor.dispose }}{{ monitor.result }}
@@ -422,10 +424,10 @@
422 424
         <div class="row" style="padding: 2px 0;line-height:30px; display:flex;">
423 425
             <div class="inline_block">
424 426
                 医生签字
425
-                <div class="under_line" style="width: 70px;text-align: center">
427
+                <!-- <div class="under_line" style="width: 70px;text-align: center">
426 428
                     <span v-if="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) == ''"> {{ getAdminUser(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:'')) }} </span>
427 429
                     <img style="height:30px;" :src="setAdminUserES(prescription==null?0:(prescription.prescription_doctor?prescription.prescription_doctor:''))" alt="" srcset="" v-else />
428
-                </div>
430
+                </div> -->
429 431
             </div>
430 432
         </div>
431 433
       </div>

+ 1 - 1
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFive.vue 查看文件

@@ -806,7 +806,7 @@
806 806
                   <td width="20">ml</td>
807 807
                   <td width="30">V端</td>
808 808
                   <td width="30">
809
-                    <div class="under-line">{{ afterdialysis.cvc_v ? afterdialysis.cvc_v : "" }}</div>
809
+                    <div class="under-line">&nbsp;{{ afterdialysis.cvc_v ? afterdialysis.cvc_v : "" }}</div>
810 810
                   </td>
811 811
                   <td width="20">ml</td>
812 812
                   <td></td>

+ 5 - 5
src/xt_pages/dialysis/template/DialysisPrintOrderTwentyFour.vue 查看文件

@@ -597,7 +597,7 @@
597 597
                         <tr>
598 598
                             <td width='70'>抗凝方式</td>
599 599
                             <td width='100'>
600
-                                <label-box :isChecked="prescription.anticoagulant == 6 ? true:false" showValue="低分子肝素"></label-box>
600
+                                <label-box :isChecked="prescription.anticoagulant == 3 ? true : prescription.anticoagulant == 6 ? true : prescription.anticoagulant == 7 ? true : false" showValue="低分子肝素"></label-box>
601 601
                             </td>
602 602
                             <td width='100'>
603 603
                                 <div class="under-line">
@@ -608,14 +608,14 @@
608 608
                             <td width='40'>首剂</td>
609 609
                             <td width='50'>
610 610
                                 <div class="under-line">
611
-                                    &nbsp;<span v-if="prescription.anticoagulant == 6">{{ prescription.anticoagulant_shouji }}</span>
611
+                                    &nbsp;<span v-if="prescription.anticoagulant == 3 || prescription.anticoagulant == 6 || prescription.anticoagulant == 7">{{ prescription.anticoagulant_shouji }}</span>
612 612
                                 </div>
613 613
                             </td>
614 614
                             <td width='10'>IU</td>
615 615
                             <td width='40'>追加</td>
616 616
                             <td width='50'>
617 617
                                 <div class="under-line">
618
-                                    &nbsp;<span v-if="prescription.anticoagulant == 6">{{ prescription.anticoagulant_weichi }}</span>
618
+                                    &nbsp;<span v-if="prescription.anticoagulant == 3 || prescription.anticoagulant == 6 || prescription.anticoagulant == 7">{{ prescription.anticoagulant_weichi }}</span>
619 619
                                 </div>
620 620
                             </td>
621 621
                             <td width='20'>IU/h</td>
@@ -626,7 +626,7 @@
626 626
                             <td width='40'>其他</td>
627 627
                             <td width='100'>
628 628
                                 <div class="under-line">&nbsp;
629
-                                    <span v-if="prescription.anticoagulant != 1 && prescription.anticoagulant != 2 && prescription.anticoagulant != 3 && prescription.anticoagulant != 6">
629
+                                    <span v-if="prescription.anticoagulant != 1 && prescription.anticoagulant != 2 && prescription.anticoagulant != 3 && prescription.anticoagulant != 6 && prescription.anticoagulant != 7">
630 630
                                         {{ prescription.anticoagulant_name }}
631 631
                                     </span>
632 632
                                 </div>
@@ -906,7 +906,7 @@
906 906
             <td>
907 907
               &nbsp;{{ monitor.transmembrane_pressure ? monitor.transmembrane_pressure : "" }}
908 908
             </td>
909
-            <td>&nbsp;{{ monitor.ultrafiltration_rate ? monitor.ultrafiltration_rate : "" }}</td>
909
+            <td>&nbsp;<span v-if="getTime(monitor.operate_time, '{h}:{i}')">{{ monitor.ultrafiltration_rate ? monitor.ultrafiltration_rate : "0" }}</span></td>
910 910
             <td>&nbsp;{{ monitor.sodium_concentration ? monitor.sodium_concentration : "" }}</td>
911 911
             <td>&nbsp;{{ monitor.conductivity ? monitor.conductivity : "" }}</td>
912 912
 

+ 208 - 0
src/xt_pages/outpatientCharges/components/chargeMonthPrescriptionTable.vue 查看文件

@@ -0,0 +1,208 @@
1
+<template>
2
+  <div class="prescriptionTable">
3
+    <el-table v-if="prescription.type == 1" :data="prescription.advices" border style="width: 99%;"
4
+              :row-style="{ color: '#303133' }"
5
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
6
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
7
+      <el-table-column align="center" prop="name" label="名称">
8
+        <template slot-scope="scope"><span :title='scope.row.drug_name'>{{ scope.row.drug_name }}</span></template>
9
+      </el-table-column>
10
+
11
+      <el-table-column align="center" prop="name" width="90" label="单次用量">
12
+        <template slot-scope="scope">
13
+          <!--<el-input v-model="scope.row.single_dose" readonly style="width:65%;"></el-input>-->
14
+          <div>{{scope.row.single_dose}}&nbsp;&nbsp;{{scope.row.single_dose_unit}}</div>
15
+        </template>
16
+      </el-table-column>
17
+      <el-table-column align="center" prop="name" width="100" label="用法">
18
+        <template slot-scope="scope">
19
+          <!--<el-input v-model="scope.row.delivery_way" readonly></el-input>-->
20
+          <div> {{scope.row.delivery_way}}</div>
21
+
22
+        </template>
23
+      </el-table-column>
24
+      <el-table-column align="center" prop="name" width="100" label="频率">
25
+        <template slot-scope="scope">
26
+          <div> {{scope.row.execution_frequency}}</div>
27
+
28
+          <!--<el-input v-model="scope.row.execution_frequency" readonly></el-input>-->
29
+        </template>
30
+      </el-table-column>
31
+
32
+      <el-table-column align="center" prop="day" width="50" label="天数">
33
+        <template slot-scope="scope">{{scope.row.day}}天</template>
34
+      </el-table-column>
35
+
36
+      <el-table-column align="center" prop="name" width="100" label="总量">
37
+        <template slot-scope="scope">
38
+          <!--<el-input v-model="scope.row.prescribing_number" style="width:60%" readonly placeholder=""></el-input>-->
39
+          <div>{{scope.row.prescribing_number}}&nbsp;&nbsp;{{scope.row.prescribing_number_unit}}</div>
40
+        </template>
41
+      </el-table-column>
42
+      <el-table-column align="center" prop="name" width="60" label="单价">
43
+        <template slot-scope="scope">
44
+          <div> {{scope.row.retail_price}}元</div>
45
+
46
+          <!--<el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>-->
47
+        </template>
48
+      </el-table-column>
49
+      <el-table-column align="center" prop="name" width="50" label="备注">
50
+        <template slot-scope="scope">
51
+          <!--<el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder="" readonly></el-input>-->
52
+          <div> {{scope.row.remark}}</div>
53
+        </template>
54
+      </el-table-column>
55
+    </el-table>
56
+    <el-table v-if="prescription.type == 2" :data="prescription.project" border style="width: 99%;"
57
+              :row-style="{ color: '#303133' }"
58
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
59
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
60
+      <el-table-column align="center" prop="project_name" label="名称">
61
+        <template slot-scope="scope">{{ scope.row.project_name }}</template>
62
+      </el-table-column>
63
+      <el-table-column align="center" prop="statistical_classification" width="100" label="组">
64
+        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
65
+      </el-table-column>
66
+      <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
67
+        <template slot-scope="scope">{{scope.row.single_dose}}{{scope.row.unit}}</template>
68
+
69
+      </el-table-column>
70
+      <el-table-column align="center" prop="delivery_way" width="80" label="用法">
71
+        <template slot-scope="scope">
72
+          <!--<el-input v-model="scope.row.delivery_way" placeholder="" readonly></el-input>-->
73
+          {{scope.row.delivery_way}}
74
+
75
+        </template>
76
+      </el-table-column>
77
+      <el-table-column align="center" prop="execution_frequency" width="80" label="频率">
78
+        <template slot-scope="scope">
79
+          <!--<el-input v-model="scope.row.execution_frequency" placeholder="" readonly></el-input>-->
80
+          {{scope.row.execution_frequency}}
81
+
82
+        </template>
83
+      </el-table-column>
84
+      <el-table-column align="center" prop="number_days" width="50" label="天数">
85
+        <template slot-scope="scope">
86
+          <!--<el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>-->
87
+          {{scope.row.number_days}}天
88
+
89
+        </template>
90
+
91
+      </el-table-column>
92
+      <el-table-column align="center" prop="total" width="50" label="总量">
93
+        <template slot-scope="scope">
94
+          <div style="display:flex;">
95
+            <!--<el-input v-model="scope.row.total" placeholder="" readonly></el-input>-->
96
+            {{scope.row.total}}
97
+
98
+            <div>{{scope.row.unit}}</div>
99
+
100
+          </div>
101
+        </template>
102
+      </el-table-column>
103
+      <el-table-column align="center" prop="name" width="50" label="单价">
104
+        <template slot-scope="scope">
105
+          <!--<el-input v-model="scope.row.price" placeholder="" readonly></el-input>-->
106
+          {{scope.row.price}}元
107
+
108
+        </template>
109
+      </el-table-column>
110
+      <el-table-column align="center" prop="name" width="50" label="备注">
111
+        <template slot-scope="scope">
112
+          <!--<el-input v-model="scope.row.remark" readonly></el-input>-->
113
+          {{scope.row.remark}}
114
+
115
+        </template>
116
+      </el-table-column>
117
+    </el-table>
118
+
119
+    <div class="additionalBox">
120
+      <div class="additionalOne" v-for="(item,index) in prescription.addition" :key="index">
121
+        <span :title="item.item_name">{{item.item_name}}</span>
122
+        <el-input v-model="item.price" placeholder="" style="width:50px;" readonly></el-input>
123
+        共
124
+        <el-input v-model="item.count" placeholder="" style="width:50px;" readonly></el-input>
125
+        次
126
+        <!--<i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>-->
127
+      </div>
128
+    </div>
129
+  </div>
130
+</template>
131
+
132
+<script>
133
+  import { getInitData } from '@/api/his/his'
134
+  import { getDictionaryDataConfig} from "@/utils/data";
135
+
136
+  export default {
137
+    props: {
138
+      prescription: Object
139
+    },
140
+    data() {
141
+      return {
142
+        drugways: [],
143
+        efs: []
144
+      }
145
+    }, mounted() {
146
+      getInitData().then(response => {
147
+        if (response.data.state == 0) {
148
+          this.$message.error(response.data.msg)
149
+          return false
150
+        } else {
151
+          this.drugways = response.data.data.drugways
152
+          this.efs = response.data.data.efs
153
+        }
154
+      })
155
+    }, methods:  {
156
+
157
+
158
+      getGroup(id){
159
+        var name = ""
160
+        var statistics_category =  getDictionaryDataConfig('system','statistics_category')
161
+        console.log("2235",statistics_category)
162
+        for(let i=0;i<statistics_category.length;i++){
163
+          if(id == statistics_category[i].id){
164
+            name = statistics_category[i].name
165
+          }
166
+        }
167
+        return name
168
+      },
169
+
170
+
171
+    }
172
+  }
173
+</script>
174
+
175
+<style lang="scss">
176
+  .prescriptionTable{
177
+  .additionalBox{
178
+    margin-top: 20px;
179
+    display: flex;
180
+    flex-wrap: wrap;
181
+  .additionalOne{
182
+    margin-right:20px;
183
+    margin-bottom:10px;
184
+    display: flex;
185
+    align-items: center;
186
+  >span{
187
+    white-space: nowrap;
188
+    overflow: hidden;
189
+    text-overflow: ellipsis;
190
+    width:80px;
191
+    display: inline-block;
192
+    font-size: 14px;
193
+  }
194
+  }
195
+  .deleteIcon{
196
+    color:red;
197
+    margin-left:5px;
198
+  }
199
+  }
200
+  .el-table th .cell, .el-table td .cell{
201
+    padding: 0 2px;
202
+    white-space: pre-line;
203
+  }
204
+  .el-icon-delete{
205
+    color:red;
206
+  }
207
+  }
208
+</style>

+ 425 - 0
src/xt_pages/outpatientCharges/components/dayPrescriptionTable.vue 查看文件

@@ -0,0 +1,425 @@
1
+<template>
2
+  <div class="prescriptionTable">
3
+    <el-table v-if="activeType  == 1" :data="prescription.advices" border style="width: 99%;" :row-style="{ color: '#303133' }"
4
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
5
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
6
+      <el-table-column align="center" prop="drug_name" label="名称">
7
+        <template slot-scope="scope"><span :title="scope.row.drug_name">{{ scope.row.drug_name }}</span></template>
8
+      </el-table-column>
9
+
10
+      <el-table-column align="center" prop="single_dose" width="90" label="单次用量">
11
+        <template slot-scope="scope">
12
+          <div style="display:flex;align-items:center;">
13
+            <el-input v-model="scope.row.single_dose" style="width:65%;"></el-input>
14
+            <div>{{scope.row.single_dose_unit}}</div>
15
+          </div>
16
+        </template>
17
+      </el-table-column>
18
+      <el-table-column align="center" prop="delivery_way" width="100" label="用法">
19
+        <template slot-scope="scope">
20
+          <el-select v-model="scope.row.delivery_way" placeholder="请选择">
21
+            <el-option
22
+              v-for="(item,index) in drugways"
23
+              :key="index"
24
+              :label="item.name"
25
+              :value="item.name">
26
+            </el-option>
27
+          </el-select>
28
+        </template>
29
+      </el-table-column>
30
+      <el-table-column align="center" prop="execution_frequency" width="100" label="频率">
31
+        <template slot-scope="scope">
32
+          <el-select v-model="scope.row.execution_frequency" placehold er="请选择">
33
+            <el-option
34
+              v-for="item,index in efs"
35
+              :key="index"
36
+              :label="item.name"
37
+              :value="item.name">
38
+            </el-option>
39
+          </el-select>
40
+        </template>
41
+      </el-table-column>
42
+
43
+
44
+      <el-table-column align="center" prop="day" width="50" label="天数">
45
+        <template slot-scope="scope">
46
+          <el-input v-model="scope.row.day" placeholder=""></el-input>
47
+          <div>{{'天'}}</div>
48
+        </template>
49
+      </el-table-column>
50
+
51
+      <el-table-column align="center" prop="prescribing_number" width="80" label="总量">
52
+        <template slot-scope="scope">
53
+          <div style="display:flex;align-items:center;">
54
+            <el-input v-model="scope.row.prescribing_number" style="width:60%" placeholder=""></el-input>
55
+            <div> {{scope.row.prescribing_number_unit}}</div>
56
+          </div>
57
+        </template>
58
+      </el-table-column>
59
+      <el-table-column align="center" prop="retail_price" width="60" label="单价">
60
+        <template slot-scope="scope">
61
+          <el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>
62
+          <div>{{'元'}}</div>
63
+
64
+        </template>
65
+      </el-table-column>
66
+      <el-table-column align="center" prop="remark" width="50" label="备注">
67
+        <template slot-scope="scope">
68
+          <el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder=""></el-input>
69
+        </template>
70
+      </el-table-column>
71
+      <el-table-column align="center" width="40" prop="name" label="操作">
72
+        <template slot-scope="scope">
73
+          <i class="el-icon-delete" @click="deleteDrug(scope.$index, scope.row)"></i>
74
+        </template>
75
+      </el-table-column>
76
+    </el-table>
77
+
78
+    <el-table v-if="activeType == 2" :data="prescription.project" border style="width: 99%;" :row-style="{ color: '#303133' }"
79
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
80
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
81
+      <el-table-column align="center" prop="project_name" label="名称">
82
+        <template slot-scope="scope"><span :title="scope.row.project_name">{{ scope.row.project_name }}</span></template>
83
+      </el-table-column>
84
+      <el-table-column align="center" prop="statistical_classification" width="100" label="组">
85
+        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
86
+      </el-table-column>
87
+      <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
88
+        <template slot-scope="scope">
89
+          <el-input v-model="scope.row.single_dose" placeholder=""></el-input>
90
+          <div>{{scope.row.unit}}</div>
91
+
92
+        </template>
93
+      </el-table-column>
94
+      <el-table-column align="center" prop="delivery_way" width="80" label="用法">
95
+        <template slot-scope="scope">
96
+          <el-autocomplete
97
+            style="width:100%;"
98
+            class="inline-input"
99
+            v-model="scope.row.delivery_way"
100
+            :fetch-suggestions="querySearch2"
101
+            placeholder="请输入内容"
102
+          ></el-autocomplete>
103
+        </template>
104
+      </el-table-column>
105
+      <el-table-column align="center" prop="execution_frequency" width="80" label="频率">
106
+        <template slot-scope="scope">
107
+          <el-input v-model="scope.row.execution_frequency" placeholder=""></el-input>
108
+        </template>
109
+      </el-table-column>
110
+      <el-table-column align="center" prop="number_days" width="50" label="天数">
111
+        <template slot-scope="scope">
112
+          <el-input v-model="scope.row.number_days" placeholder=""></el-input>
113
+          <div>{{'天'}}</div>
114
+        </template>
115
+      </el-table-column>
116
+      <el-table-column align="center" prop="total" width="70" label="总量">
117
+        <template slot-scope="scope">
118
+          <div style="display:flex;align-items:center;">
119
+            <el-input v-model="scope.row.total" style="width:60%" placeholder=""></el-input>
120
+            <div>{{scope.row.unit}}</div>
121
+
122
+          </div>
123
+        </template>
124
+      </el-table-column>
125
+      <el-table-column align="center" prop="name" width="50" label="单价">
126
+        <template slot-scope="scope">
127
+          <el-input v-model="scope.row.price" placeholder="" readonly></el-input>
128
+          <div>{{'元'}}</div>
129
+
130
+        </template>
131
+      </el-table-column>
132
+      <el-table-column align="center" prop="name" width="50" label="备注">
133
+        <template slot-scope="scope">
134
+          <el-input v-model="scope.row.remark" :title="scope.row.remark"></el-input>
135
+        </template>
136
+      </el-table-column>
137
+      <el-table-column align="center" width="40" prop="name" label="操作">
138
+        <template slot-scope="scope">
139
+          <i class="el-icon-delete" @click="deleteProject(scope.row,scope.$index)"></i>
140
+        </template>
141
+      </el-table-column>
142
+    </el-table>
143
+
144
+    <div class="additionalBox">
145
+      <div class="additionalOne" v-for="(item,index) in prescription.addition" :key="index">
146
+        <span :title="item.item_name">{{item.item_name}}</span>
147
+        <el-input v-model="item.price" placeholder="" style="width:50px;"></el-input>
148
+        共
149
+        <el-input v-model="item.count" placeholder="" style="width:50px;"></el-input>
150
+        次
151
+        <i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>
152
+      </div>
153
+    </div>
154
+  </div>
155
+</template>
156
+
157
+<script>
158
+  import { getDictionaryDataConfig} from "@/utils/data";
159
+  import { getInitData,delHisAdvice,delHisProject,delHisAddition } from '@/api/his/his'
160
+
161
+  export default {
162
+    props: {
163
+      preDrugs: Array,
164
+      activeType: Number,
165
+      addtions_charge:Array,
166
+      prescription:{
167
+        type:Object,
168
+        default: function () {
169
+          return {
170
+            name:"",
171
+            advices:[],
172
+            project:[],
173
+            drugways:[],
174
+            efs:[],
175
+          };
176
+        }
177
+      },
178
+    },
179
+    data() {
180
+      return {
181
+        advices:[],
182
+        tableData: [],
183
+        newoptions: [{
184
+          value: '1',
185
+          label: '1'
186
+        }, {
187
+          value: '2',
188
+          label: '2'
189
+        }, {
190
+          value: '3',
191
+          label: '3'
192
+        }, {
193
+          value: '4',
194
+          label: '4'
195
+        }, {
196
+          value: '5',
197
+          label: '5'
198
+        }],
199
+        value: '1',
200
+        input: 1,
201
+      }
202
+    },
203
+    methods:{
204
+      createFilter(queryString) {
205
+        return (restaurant) => {
206
+          return (restaurant.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0)
207
+        }
208
+      },
209
+      querySearch2(queryString, cb) {
210
+        var restaurants = this.getDictionaryDataConfig("system","project_use")
211
+        restaurants.map(item => {
212
+          item.value = item.name
213
+        })
214
+        var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants
215
+        // 调用 callback 返回建议列表的数据
216
+        cb(results)
217
+      },
218
+      delAddition(index, addition){
219
+        if(this.prescription.order_status == 2){
220
+          this.$message.error('该处方已经结算,无法删除')
221
+          return
222
+        }
223
+        this.$confirm("附加费删除后不可恢复,是否确认删除", "删除", {
224
+          confirmButtonText: "确 定",
225
+          cancelButtonText: "取 消",
226
+          type: "warning"
227
+        }).then(() => {
228
+          this.$nextTick(function(){
229
+            if(addition.id == 0){
230
+              this.prescription.addition.splice(index, 1)
231
+            }else{
232
+              let params = {
233
+                'id': addition.id,
234
+              }
235
+              delHisAddition(params).then(response => {
236
+                if (response.data.state == 0) {
237
+                  this.$message.error(response.data.msg)
238
+                  return false
239
+                } else {
240
+                  var temp2 = this.deepClone(this.prescription.addition)
241
+                  temp2.splice(index, 1)
242
+                  this.prescription.addition = temp2
243
+                  this.$message.success(response.data.data.msg)
244
+                }
245
+              })
246
+            }
247
+          });
248
+
249
+        })
250
+          .catch(() => {});
251
+
252
+      },
253
+      getInitData(){
254
+        getInitData().then(response => {
255
+          if (response.data.state == 0) {
256
+            this.$message.error(response.data.msg)
257
+            return false
258
+          } else {
259
+            this.drugways = response.data.data.drugways
260
+            this.efs = response.data.data.efs
261
+          }
262
+        })
263
+
264
+      },deleteDrug:function(index, row){
265
+        if(this.prescription.order_status == 2){
266
+          this.$message.error('该处方已经结算,无法删除')
267
+          return
268
+        }
269
+        this.$confirm("药品删除后不可恢复,是否确认删除", "删除", {
270
+          confirmButtonText: "确 定",
271
+          cancelButtonText: "取 消",
272
+          type: "warning"
273
+        }).then(() => {
274
+          this.$nextTick(function(){
275
+            if(row.advice_id == 0){
276
+              this.prescription.advices.splice(index, 1)
277
+            }else{
278
+              let params = {
279
+                'id': row.advice_id,
280
+              }
281
+              delHisAdvice(params).then(response => {
282
+                if (response.data.state == 0) {
283
+                  this.$message.error(response.data.msg)
284
+                  return false
285
+                } else {
286
+                  var temp2 = this.deepClone(this.prescription.advices)
287
+                  temp2.splice(index, 1)
288
+                  this.prescription.advices = temp2
289
+                  this.$message.success(response.data.data.msg)
290
+                }
291
+              })
292
+
293
+
294
+            }
295
+
296
+          });
297
+
298
+
299
+        })
300
+          .catch(() => {});
301
+
302
+
303
+
304
+
305
+
306
+      },deepClone(source) {
307
+        if (!source && typeof source !== 'object') {
308
+          throw new Error('error arguments', 'shallowClone')
309
+        }
310
+        const targetObj = source.constructor === Array ? [] : {}
311
+        Object.keys(source).forEach((keys) => {
312
+          if (source[keys] && typeof source[keys] === 'object') {
313
+            targetObj[keys] = this.deepClone(source[keys])
314
+          } else {
315
+            targetObj[keys] = source[keys]
316
+          }
317
+        })
318
+        return targetObj
319
+      },
320
+
321
+      setNewData:function(data){
322
+        this.prescription = data
323
+
324
+        // this.prescription.advices = data.advices
325
+      },
326
+      getDictionaryDataConfig(module, filed_name) {
327
+        return getDictionaryDataConfig(module, filed_name)
328
+      },
329
+      getGroup(id){
330
+        var name = ""
331
+        var statistics_category =  getDictionaryDataConfig('system','statistics_category')
332
+        console.log("2235",statistics_category)
333
+        for(let i=0;i<statistics_category.length;i++){
334
+          if(id == statistics_category[i].id){
335
+            name = statistics_category[i].name
336
+          }
337
+        }
338
+        return name
339
+      },
340
+      deleteProject(row,i){
341
+        if(this.prescription.order_status == 2){
342
+          this.$message.error('该处方已经结算,无法删除')
343
+          return
344
+        }
345
+        this.$confirm("项目删除后不可恢复,是否确认删除", "删除", {
346
+          confirmButtonText: "确 定",
347
+          cancelButtonText: "取 消",
348
+          type: "warning"
349
+        }).then(() => {
350
+          if(row.id == 0){
351
+            this.prescription.project.splice(i, 1)
352
+
353
+          }else{
354
+            let params = {
355
+              'id': row.id,
356
+            }
357
+            delHisProject(params).then(response => {
358
+              if (response.data.state == 0) {
359
+                this.$message.error(response.data.msg)
360
+                return false
361
+              } else {
362
+                for (let i = 0; i < this.prescription.project.length; i++){
363
+                  if(this.prescription.project[i].id == row.id){
364
+                    this.prescription.project.splice(i, 1)
365
+                  }
366
+                }
367
+                this.$message.success(response.data.data.msg)
368
+              }
369
+            })
370
+          }
371
+        })
372
+          .catch(() => {});
373
+
374
+      },
375
+    },mounted(){
376
+      this.getInitData()
377
+    },
378
+  }
379
+</script>
380
+
381
+<style lang="scss">
382
+  .prescriptionTable {
383
+
384
+  .el-input__inner {
385
+    padding: 0 5px;
386
+  }
387
+
388
+  .additionalBox {
389
+    margin-top: 20px;
390
+    display: flex;
391
+    flex-wrap: wrap;
392
+
393
+  .additionalOne {
394
+    margin-right: 20px;
395
+    margin-bottom: 10px;
396
+    display: flex;
397
+    align-items: center;
398
+
399
+  > span {
400
+    white-space: nowrap;
401
+    overflow: hidden;
402
+    text-overflow: ellipsis;
403
+    width: 80px;
404
+    display: inline-block;
405
+    font-size: 14px;
406
+  }
407
+
408
+  .deleteIcon {
409
+    color: red;
410
+    margin-left: 5px;
411
+  }
412
+
413
+  }
414
+  .el-table th .cell, .el-table td .cell {
415
+    padding: 0 2px;
416
+    white-space: pre-line;
417
+  }
418
+
419
+  .el-icon-delete {
420
+    color: red;
421
+  }
422
+
423
+  }
424
+  }
425
+</style>

+ 297 - 0
src/xt_pages/outpatientCharges/components/monthPrescriptionTable.vue 查看文件

@@ -0,0 +1,297 @@
1
+<template>
2
+  <div class="prescriptionTable">
3
+    <el-table v-if="activeType  == 1" :data="prescription.advices" border style="width: 99%;" :row-style="{ color: '#303133' }"
4
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
5
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
6
+      <el-table-column align="center" prop="drug_name" label="名称">
7
+        <template slot-scope="scope"><span :title="scope.row.drug_name">{{ scope.row.drug_name }}</span></template>
8
+      </el-table-column>
9
+      <el-table-column align="center" prop="single_dose" width="90" label="单次用量">
10
+        <template slot-scope="scope">
11
+          <div style="display:flex;align-items:center;">
12
+            <el-input v-model="scope.row.single_dose" style="width:65%;"></el-input>
13
+            <div>{{scope.row.single_dose_unit}}</div>
14
+          </div>
15
+        </template>
16
+      </el-table-column>
17
+      <el-table-column align="center" prop="delivery_way" width="100" label="用法">
18
+        <template slot-scope="scope">
19
+          <el-select v-model="scope.row.delivery_way" placeholder="请选择">
20
+            <el-option
21
+              readonly
22
+              v-for="(item,index) in drugways"
23
+              :key="index"
24
+              :label="item.name"
25
+              :value="item.name">
26
+            </el-option>
27
+          </el-select>
28
+        </template>
29
+      </el-table-column>
30
+      <el-table-column align="center" prop="execution_frequency" width="100" label="频率">
31
+        <template slot-scope="scope">
32
+          <el-select v-model="scope.row.execution_frequency" placehold er="请选择">
33
+            <el-option
34
+              readonly
35
+              v-for="item,index in efs"
36
+              :key="index"
37
+              :label="item.name"
38
+              :value="item.name">
39
+            </el-option>
40
+          </el-select>
41
+        </template>
42
+      </el-table-column>
43
+
44
+
45
+      <el-table-column align="center" prop="day" width="50" label="天数">
46
+        <template slot-scope="scope">
47
+          <el-input v-model="scope.row.day" placeholder="" readonly></el-input>
48
+          <div>{{'天'}}</div>
49
+        </template>
50
+      </el-table-column>
51
+
52
+      <el-table-column align="center" prop="prescribing_number" width="80" label="总量">
53
+        <template slot-scope="scope">
54
+          <div style="display:flex;align-items:center;">
55
+            <el-input v-model="scope.row.prescribing_number" style="width:60%" placeholder="" readonly></el-input>
56
+            <div> {{scope.row.prescribing_number_unit}}</div>
57
+          </div>
58
+        </template>
59
+      </el-table-column>
60
+      <el-table-column align="center" prop="retail_price" width="60" label="单价">
61
+        <template slot-scope="scope">
62
+          <el-input v-model="scope.row.retail_price" placeholder="" readonly></el-input>
63
+          <div>{{'元'}}</div>
64
+        </template>
65
+      </el-table-column>
66
+      <el-table-column align="center" prop="remark" width="50" label="备注">
67
+        <template slot-scope="scope">
68
+          <el-input v-model="scope.row.remark" :title="scope.row.remark" placeholder="" readonly></el-input>
69
+        </template>
70
+      </el-table-column>
71
+    </el-table>
72
+
73
+    <el-table v-if="activeType == 2" :data="prescription.project" border style="width: 99%;" :row-style="{ color: '#303133' }"
74
+              :header-cell-style="{backgroundColor: 'rgb(245, 247, 250)',color: '#606266'}" highlight-current-row>
75
+      <el-table-column align="center" type="index" width="40" label="序号"></el-table-column>
76
+      <el-table-column align="center" prop="project_name" label="名称">
77
+        <template slot-scope="scope"><span :title="scope.row.project_name">{{ scope.row.project_name }}</span></template>
78
+      </el-table-column>
79
+      <el-table-column align="center" prop="statistical_classification" width="100" label="组">
80
+        <template slot-scope="scope">{{getGroup(scope.row.statistical_classification)}}</template>
81
+      </el-table-column>
82
+      <el-table-column align="center" prop="single_dose" width="80" label="单次用量">
83
+        <template slot-scope="scope">
84
+          <el-input v-model="scope.row.single_dose" placeholder="" readonly></el-input>
85
+          <div>{{scope.row.unit}}</div>
86
+
87
+        </template>
88
+      </el-table-column>
89
+      <el-table-column align="center" prop="delivery_way" width="80" label="用法">
90
+        <template slot-scope="scope">
91
+          <el-autocomplete
92
+            readonly
93
+            style="width:100%;"
94
+            class="inline-input"
95
+            v-model="scope.row.delivery_way"
96
+            :fetch-suggestions="querySearch2"
97
+            placeholder="请输入内容"
98
+          ></el-autocomplete>
99
+        </template>
100
+      </el-table-column>
101
+      <el-table-column align="center" prop="execution_frequency" width="80" label="频率">
102
+        <template slot-scope="scope">
103
+          <el-input v-model="scope.row.execution_frequency" placeholder="" readonly></el-input>
104
+        </template>
105
+      </el-table-column>
106
+      <el-table-column align="center" prop="number_days" width="50" label="天数">
107
+        <template slot-scope="scope">
108
+          <el-input v-model="scope.row.number_days" placeholder="" readonly></el-input>
109
+          <div>{{'天'}}</div>
110
+        </template>
111
+      </el-table-column>
112
+      <el-table-column align="center" prop="total" width="70" label="总量">
113
+        <template slot-scope="scope">
114
+          <div style="display:flex;align-items:center;">
115
+            <el-input v-model="scope.row.total" style="width:60%" placeholder="" readonly></el-input>
116
+            <div>{{scope.row.unit}}</div>
117
+          </div>
118
+        </template>
119
+      </el-table-column>
120
+      <el-table-column align="center" prop="name" width="50" label="单价">
121
+        <template slot-scope="scope">
122
+          <el-input v-model="scope.row.price" placeholder="" readonly></el-input>
123
+          <div>{{'元'}}</div>
124
+        </template>
125
+      </el-table-column>
126
+      <el-table-column align="center" prop="name" width="50" label="备注">
127
+        <template slot-scope="scope">
128
+          <el-input v-model="scope.row.remark" :title="scope.row.remark" readonly></el-input>
129
+        </template>
130
+      </el-table-column>
131
+    </el-table>
132
+    <div class="additionalBox">
133
+      <div class="additionalOne" v-for="(item,index) in prescription.addition" :key="index">
134
+        <span :title="item.item_name">{{item.item_name}}</span>
135
+        <el-input v-model="item.price" placeholder="" style="width:50px;"></el-input>
136
+        共
137
+        <el-input v-model="item.count" placeholder="" style="width:50px;"></el-input>
138
+        次
139
+        <i class="el-icon-delete deleteIcon" @click="delAddition(index,item)"></i>
140
+      </div>
141
+    </div>
142
+  </div>
143
+</template>
144
+
145
+<script>
146
+  import { getDictionaryDataConfig} from "@/utils/data";
147
+  import { getInitData,delHisAdvice,delHisProject,delHisAddition } from '@/api/his/his'
148
+
149
+  export default {
150
+    props: {
151
+      preDrugs: Array,
152
+      activeType: Number,
153
+      addtions_charge:Array,
154
+      prescription:{
155
+        type:Object,
156
+        default: function () {
157
+          return {
158
+            name:"",
159
+            advices:[],
160
+            project:[],
161
+            drugways:[],
162
+            efs:[],
163
+          };
164
+        }
165
+      },
166
+    },
167
+    data() {
168
+      return {
169
+        advices:[],
170
+        tableData: [],
171
+        newoptions: [{
172
+          value: '1',
173
+          label: '1'
174
+        }, {
175
+          value: '2',
176
+          label: '2'
177
+        }, {
178
+          value: '3',
179
+          label: '3'
180
+        }, {
181
+          value: '4',
182
+          label: '4'
183
+        }, {
184
+          value: '5',
185
+          label: '5'
186
+        }],
187
+        value: '1',
188
+        input: 1,
189
+      }
190
+    },
191
+    methods:{
192
+      createFilter(queryString) {
193
+        return (restaurant) => {
194
+          return (restaurant.name.toLowerCase().indexOf(queryString.toLowerCase()) === 0)
195
+        }
196
+      },
197
+      querySearch2(queryString, cb) {
198
+        var restaurants = this.getDictionaryDataConfig("system","project_use")
199
+        restaurants.map(item => {
200
+          item.value = item.name
201
+        })
202
+        var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants
203
+        // 调用 callback 返回建议列表的数据
204
+        cb(results)
205
+      },
206
+      getInitData(){
207
+        getInitData().then(response => {
208
+          if (response.data.state == 0) {
209
+            this.$message.error(response.data.msg)
210
+            return false
211
+          } else {
212
+            this.drugways = response.data.data.drugways
213
+            this.efs = response.data.data.efs
214
+          }
215
+        })
216
+      },
217
+      deepClone(source) {
218
+        if (!source && typeof source !== 'object') {
219
+          throw new Error('error arguments', 'shallowClone')
220
+        }
221
+        const targetObj = source.constructor === Array ? [] : {}
222
+        Object.keys(source).forEach((keys) => {
223
+          if (source[keys] && typeof source[keys] === 'object') {
224
+            targetObj[keys] = this.deepClone(source[keys])
225
+          } else {
226
+            targetObj[keys] = source[keys]
227
+          }
228
+        })
229
+        return targetObj
230
+      },
231
+      setNewData:function(data){
232
+        this.prescription = data
233
+      },
234
+      getDictionaryDataConfig(module, filed_name) {
235
+        return getDictionaryDataConfig(module, filed_name)
236
+      },
237
+      getGroup(id){
238
+        var name = ""
239
+        var statistics_category =  getDictionaryDataConfig('system','statistics_category')
240
+        for(let i=0;i<statistics_category.length;i++){
241
+          if(id == statistics_category[i].id){
242
+            name = statistics_category[i].name
243
+          }
244
+        }
245
+        return name
246
+      },
247
+    },mounted(){
248
+      this.getInitData()
249
+    },
250
+  }
251
+</script>
252
+
253
+<style lang="scss">
254
+  .prescriptionTable {
255
+
256
+  .el-input__inner {
257
+    padding: 0 5px;
258
+  }
259
+
260
+  .additionalBox {
261
+    margin-top: 20px;
262
+    display: flex;
263
+    flex-wrap: wrap;
264
+
265
+  .additionalOne {
266
+    margin-right: 20px;
267
+    margin-bottom: 10px;
268
+    display: flex;
269
+    align-items: center;
270
+
271
+  > span {
272
+    white-space: nowrap;
273
+    overflow: hidden;
274
+    text-overflow: ellipsis;
275
+    width: 80px;
276
+    display: inline-block;
277
+    font-size: 14px;
278
+  }
279
+
280
+  .deleteIcon {
281
+    color: red;
282
+    margin-left: 5px;
283
+  }
284
+
285
+  }
286
+  .el-table th .cell, .el-table td .cell {
287
+    padding: 0 2px;
288
+    white-space: pre-line;
289
+  }
290
+
291
+  .el-icon-delete {
292
+    color: red;
293
+  }
294
+
295
+  }
296
+  }
297
+</style>

+ 279 - 97
src/xt_pages/outpatientCharges/components/registerDialog.vue 查看文件

@@ -1,10 +1,25 @@
1 1
 <template>
2
-  <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility" :close-on-click-modal="isClose"
2
+  <el-dialog width="854px" class="registerDialog" :title="titles" :visible.sync="visibility"
3
+             :close-on-click-modal="isClose"
3 4
              :close-on-press-escape="isClose">
4 5
 
5
-    <el-form :model="form"  :rules="rules"  ref="formValue"  label-width="100px">
6
-      <el-form-item label="患者姓名:"  prop="name" :validate-event="is_Name">
7
-         <el-input  v-model="form.name" :disabled="true"></el-input>
6
+    <el-form :model="form" :rules="rules" ref="formValue" label-width="100px">
7
+      <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
8
+        <el-autocomplete
9
+          class="checkSearch"
10
+          popper-class="my-autocomplete"
11
+          v-model="form.name"
12
+          :fetch-suggestions="querySearchAsync"
13
+          :trigger-on-focus="false"
14
+          placeholder="请输入病人名字"
15
+          @select="handleSelect"
16
+          style="width:160px;"
17
+        >
18
+          <i class="el-icon-search el-input__icon" slot="suffix"></i>
19
+          <template slot-scope="{ item }">
20
+            <div class="name">{{ item.name }}</div>
21
+          </template>
22
+        </el-autocomplete>
8 23
       </el-form-item>
9 24
 
10 25
       <el-form-item label="性别:" prop="gender" :validate-event="is_Name">
@@ -16,6 +31,8 @@
16 31
             :value="item.value">
17 32
           </el-option>
18 33
         </el-select>
34
+
35
+
19 36
       </el-form-item>
20 37
 
21 38
       <el-form-item label="年龄:" prop="age" :validate-event="is_Name">
@@ -24,7 +41,8 @@
24 41
 
25 42
 
26 43
       <el-form-item label="出生日期:" prop="birthday" :validate-event="is_Name">
27
-        <el-date-picker v-model="form.birthday" type="date" @change="getBirthday" placeholder="选择日期" style="width:100%;"></el-date-picker>
44
+        <el-date-picker v-model="form.birthday" type="date" format="yyyy-MM-dd"
45
+                        value-format="yyyy-MM-dd" placeholder="选择日期" style="width:100%;"></el-date-picker>
28 46
       </el-form-item>
29 47
 
30 48
       <el-form-item label="手机号码:" prop="phone">
@@ -44,8 +62,8 @@
44 62
       </el-form-item>
45 63
 
46 64
 
47
-      <el-form-item label="证件类型:">
48
-        <el-select v-model="form.certificates" placeholder="请选择"  style="width:100%;">
65
+      <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
66
+        <el-select v-model="form.certificates" placeholder="请选择" style="width:100%;">
49 67
           <el-option
50 68
             v-for="item in certificates"
51 69
             :key="item.value"
@@ -55,10 +73,43 @@
55 73
         </el-select>
56 74
       </el-form-item>
57 75
 
58
-      <el-form-item label="证件号码:" prop="id_card"  :validate-event="is_Name">
76
+      <el-form-item label="证件号码:" prop="id_card" :validate-event="is_Name">
59 77
         <el-input v-model="form.id_card"></el-input>
60 78
       </el-form-item>
61 79
 
80
+      <el-form-item label="处方类型:" prop="p_type" :validate-event="is_Name">
81
+        <el-select style="margin-right:5px;width:100px;" v-model="form.p_type" placeholder=""
82
+                   >
83
+          <el-option
84
+            v-for="(item,index) in registers"
85
+            :key="index"
86
+            :label="item.label"
87
+            :value="item.value">
88
+          </el-option>
89
+        </el-select>
90
+      </el-form-item>
91
+      <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
92
+        <el-select style="margin-right:5px;width:100px;" v-model="form.sick_type" placeholder="">
93
+          <el-option
94
+            v-for="(item,index) in sick"
95
+            :key="index"
96
+            :label="item.class_name"
97
+            :value="item.id">
98
+          </el-option>
99
+        </el-select>
100
+      </el-form-item>
101
+
102
+      <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
103
+        <el-select style="margin-right:5px;width:100px;" v-model="form.diagnosis" placeholder="">
104
+          <el-option
105
+            v-for="(item,index) in diagnoses"
106
+            :key="index"
107
+            :label="item.class_name"
108
+            :value="item.id">
109
+          </el-option>
110
+        </el-select>
111
+      </el-form-item>
112
+
62 113
 
63 114
       <el-form-item label="结算类型:">
64 115
         <el-select v-model="form.settlement_value" placeholder="请选择" style="width:100%;">
@@ -82,14 +133,30 @@
82 133
           </el-option>
83 134
         </el-select>
84 135
       </el-form-item>
136
+
137
+
138
+      <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
139
+        <el-select v-model="form.id_card_type" placeholder="请选择">
140
+          <el-option
141
+            v-for="item in IDCardTypes"
142
+            :key="item.value"
143
+            :label="item.label"
144
+            :value="item.value">
145
+          </el-option>
146
+        </el-select>
147
+      </el-form-item>
148
+
149
+
85 150
       <el-form-item class="specialFormItem" label="医保卡号:">
86 151
         <div style="display:flex;">
87 152
           <el-input v-model="form.medical_insurance_card"></el-input>
153
+          <el-button style="margin-left:10px;" type="primary" @click="reading">读卡</el-button>
154
+
88 155
         </div>
89 156
       </el-form-item>
90 157
 
91
-      <el-form-item label="挂号类型:"  prop="register_type"  :validate-event="is_Name">
92
-        <el-select v-model="form.register_type"  placeholder="请选择" style="width:100%;">
158
+      <el-form-item label="挂号类型:" prop="register" :validate-event="is_Name">
159
+        <el-select v-model="form.register" placeholder="请选择" style="width:100%;">
93 160
           <el-option
94 161
             v-for="item in register"
95 162
             :key="item.value"
@@ -107,49 +174,79 @@
107 174
     </el-form>
108 175
 
109 176
     <span slot="footer" class="dialog-footer">
110
-    <el-button  @click="cancel('formValue')">取 消</el-button>
111
-    <el-button  type="primary" @click="confirm('formValue')">挂 号</el-button>
177
+    <el-button @click="cancel('formValue')">取 消</el-button>
178
+    <el-button type="primary" @click="confirm('formValue')">挂 号</el-button>
112 179
   </span>
113 180
   </el-dialog>
114 181
 
115 182
 </template>
116 183
 
117 184
 <script>
118
-  import { getDictionaryDataConfig } from '@/utils/data'
185
+  import {uParseTime} from "@/utils/tools";
186
+  import axios from 'axios'
187
+  import {PostSearch} from '@/api/patient'
188
+
189
+  import {getDictionaryDataConfig} from '@/utils/data'
190
+
119 191
   export default {
192
+
120 193
     name: 'registerDialog',
121 194
 
122 195
     data() {
123 196
 
124 197
       return {
125
-        form:{
198
+        registers: [
199
+          {value: 11, label: "普通门诊"},
200
+          {value: 12, label: '门诊挂号'},
201
+          {value: 13, label: "急诊"},
202
+          {value: 14, label: "门诊特殊病"},
203
+          {value: 15, label: "门诊统筹"},
204
+          {value: 16, label: "门诊慢性病"},
205
+          {value: 21, label: "普通住院"},
206
+
207
+        ],
208
+        form: {
209
+          id: '',
126 210
           settlement_value: '',
127
-          medical_insurance_card:'',
128
-          name:'',
129
-          gender:'',
130
-          certificates:'',
131
-          medical_care:'',
132
-          birthday:'',
133
-          age:'',
134
-          id_card:'',
135
-          register:'',
136
-          doctor:'',
137
-          department:'',
138
-          registration_fee:'',
139
-          medical_expenses:'',
140
-          cost:'',
141
-          phone:'',
142
-          social_type:'',
143
-        },
211
+          medical_insurance_card: '',
212
+          name: '',
213
+          gender: '',
214
+          certificates: 1,
215
+          p_type:'',
216
+          sick_type:'',
217
+          diagnosis:'',
218
+          medical_care: '',
219
+          birthday: '',
220
+          age: '',
221
+          id_card: '',
222
+          register: '',
223
+          doctor: '',
224
+          id_card_type: 1,
225
+          department: '',
226
+          registration_fee: '',
227
+          medical_expenses: '',
228
+          cost: '',
229
+          phone: '',
230
+          social_type: '',
231
+        }, IDCardTypes: [{
232
+          value: 1,
233
+          label: '社保卡'
234
+        }, {
235
+          value: 2,
236
+          label: "身份证"
237
+        }, {
238
+          value: 3,
239
+          label: "电子凭证"
240
+        },],
144 241
         settlement: [
145
-            {value: 1,label: '医保'},
146
-            {value: 2,label: '自费'},
147
-            {value: 3,label:'公费'},
148
-            {value: 4,label:'农保'},
149
-            {value: 5,label:'会员'},
150
-            {value: 6,label:'职工'},
151
-            {value: 7,label:'合同'}
152
-          ],
242
+          {value: 1, label: '医保'},
243
+          {value: 2, label: '自费'},
244
+          {value: 3, label: '公费'},
245
+          {value: 4, label: '农保'},
246
+          {value: 5, label: '会员'},
247
+          {value: 6, label: '职工'},
248
+          {value: 7, label: '合同'}
249
+        ],
153 250
         sex: [{
154 251
           value: 1,
155 252
           label: '男'
@@ -163,16 +260,16 @@
163 260
         }, {
164 261
           value: 2,
165 262
           label: "社保卡"
166
-        },{
263
+        }, {
167 264
           value: 3,
168 265
           label: "护照"
169
-        },{
266
+        }, {
170 267
           value: 4,
171 268
           label: "军官证"
172
-        },{
269
+        }, {
173 270
           value: 5,
174 271
           label: "台胞证"
175
-        },{
272
+        }, {
176 273
           value: 6,
177 274
           label: "港澳地区身份证"
178 275
         }],
@@ -182,16 +279,16 @@
182 279
         }, {
183 280
           value: 2,
184 281
           label: "公务员医疗补助"
185
-        },{
282
+        }, {
186 283
           value: 3,
187 284
           label: "大额医疗费用补助"
188
-        },{
285
+        }, {
189 286
           value: 4,
190 287
           label: "离休人员医疗"
191
-        },{
288
+        }, {
192 289
           value: 5,
193 290
           label: "城乡居民基本医疗保险"
194
-        },{
291
+        }, {
195 292
           value: 6,
196 293
           label: "城乡居民大病医疗保险"
197 294
         },
@@ -205,25 +302,32 @@
205 302
         }, {
206 303
           value: 2,
207 304
           label: "主治"
208
-        },{
305
+        }, {
209 306
           value: 3,
210 307
           label: "主任"
211
-        },{
308
+        }, {
212 309
           value: 4,
213 310
           label: "免收诊金"
214
-        },{
311
+        }, {
215 312
           value: 5,
216 313
           label: "专家"
217 314
         }],
218 315
         rules: {
219
-          name:[{ required:true,message:"患者姓名不能为空",trigger: 'blur'}],
220
-          gender:[{ required:true,message:"患者性别不能为空",trigger: 'blur'}],
221
-          id_card: [{ required: true, message: '证件号码不能为空', trigger: 'blur'  }],
222
-          register_type: [{ required: true, message: '请选择挂号类型' , trigger: 'blur' }],
223
-          doctor: [{ required: true, message: '请选择医生' , trigger: 'blur' }],
224
-          department: [{ required: true, message: '请填写科室', trigger: 'blur' }],
225
-          age:[{ required:true,message:"患者年龄不能为空",trigger: 'blur'}],
226
-          birthday:[{required:true,message:"患者出生日期不能为空",trigger:'blur'}]
316
+          name: [{required: true, message: "患者姓名不能为空", trigger: 'blur'}],
317
+          gender: [{required: true, message: "患者性别不能为空", trigger: 'blur'}],
318
+          id_card: [{required: true, message: '证件号码不能为空', trigger: 'blur'}],
319
+          register: [{required: true, message: '请选择挂号类型', trigger: 'blur'}],
320
+          doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
321
+          department: [{required: true, message: '请填写科室', trigger: 'blur'}],
322
+          age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],
323
+          birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
324
+          certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
325
+          id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
326
+
327
+          p_type: [{required: true, message: "处方类型不能为空", trigger: 'change'}],
328
+          sick_type: [{required: true, message: "大病类别不能为空", trigger: 'change'}],
329
+          diagnosis: [{required: true, message: "诊断不能为空", trigger: 'change'}],
330
+
227 331
         },
228 332
 
229 333
         visibility: false,
@@ -232,22 +336,23 @@
232 336
 
233 337
         resetForm: {
234 338
           settlement_value: '',
235
-          medical_insurance_card:'',
236
-          name:'',
237
-          gender:'',
238
-          certificates:'',
239
-          medical_care:'',
240
-          birthday:'',
241
-          age:'',
242
-          id_card:'',
243
-          register:'',
244
-          doctor:'',
245
-          department:'',
246
-          registration_fee:'',
247
-          medical_expenses:'',
248
-          cost:'',
249
-          phone:'',
250
-          social_type:'',
339
+          medical_insurance_card: '',
340
+          name: '',
341
+          gender: '',
342
+          certificates: '',
343
+          id_card_type: '',
344
+          medical_care: '',
345
+          birthday: '',
346
+          age: '',
347
+          id_card: '',
348
+          register: '',
349
+          doctor: '',
350
+          department: '',
351
+          registration_fee: '',
352
+          medical_expenses: '',
353
+          cost: '',
354
+          phone: '',
355
+          social_type: '',
251 356
         },
252 357
 
253 358
       }
@@ -270,34 +375,108 @@
270 375
         type: Number,
271 376
         default: 1
272 377
 
273
-      }
378
+      },
379
+      sick: Array,
380
+      diagnoses: Array,
274 381
     },
275 382
     methods: {
383
+      handleSelect(val) {
384
+        this.form.id = val.id
385
+        this.form.name = val.name
386
+        this.form.gender = val.gender
387
+        this.form.age = val.age
388
+        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}')
389
+        this.form.phone = val.phone
390
+        this.form.id_card = val.id_card_no
391
+      },
392
+      querySearchAsync(keyword, cb) {
393
+        let key = ''
394
+        if (keyword != undefined) {
395
+          key = keyword
396
+        }
397
+        let searchArray = []
398
+        PostSearch(key).then(response => {
399
+          if (response.data.state == 1) {
400
+            searchArray = response.data.data.patient
401
+            cb(searchArray)
402
+          } else {
403
+            cb([])
404
+          }
405
+        })
406
+      },
407
+      reading(medicalInsuranceCard) {
408
+        var that = this
409
+        if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
410
+          this.$message.error("请先选择读卡类型")
411
+          return
412
+        }
413
+        let params = {
414
+          'id_card_type': this.form.id_card_type,
415
+        }
416
+        axios.get('http://127.0.0.1:9532/api/sscard', {
417
+          params: params
418
+        })
419
+          .then(function (response) {
420
+            if (response.data.state == 0) {
421
+              that.$message.error(response.data.msg)
422
+              return false
423
+            } else {
424
+              var patient = response.data.data.patient
425
+
426
+              if (that.form.id_card_type == 1) {
427
+                this.form.id = patient.id
428
+                that.form.name = patient.name
429
+                that.form.sex = patient.gender
430
+                that.form.age = patient.age
431
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
432
+                that.form.phone = patient.phone
433
+                that.form.idCard = patient.id_card_no
434
+                that.form.medicalInsuranceCard = response.data.data.number
435
+
436
+              } else if (that.form.id_card_type == 2) {
437
+                this.form.id = patient.id
438
+                that.form.name = patient.name
439
+                that.form.sex = patient.gender
440
+                that.form.age = patient.age
441
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
442
+                that.form.phone = patient.phone
443
+                that.form.idCard = patient.id_card_no
444
+              }
445
+              that.$message({message: '读卡成功', type: 'success'})
446
+            }
447
+          })
448
+          .catch(function (error) {
449
+
450
+          });
451
+
452
+
453
+      },
276 454
       getDictionaryDataConfig(module, filed_name) {
277 455
         return getDictionaryDataConfig(module, filed_name)
278 456
       },
279
-      show: function(patientInfo) {
280
-        this.form.name = patientInfo.name
281
-        this.form.gender = patientInfo.gender
282
-        this.form.age = patientInfo.age
283
-        this.form.birthday = patientInfo.birthday
284
-        this.form.phone = patientInfo.phone
285
-        this.form.birthday = patientInfo.birthday
286
-        this.form.id_card = patientInfo.id_card_no
287
-        this.form.social_type = patientInfo.health_care_type
288
-        if( this.form.social_type == 0){
289
-          this.form.social_type = ""
290
-
291
-        }
457
+      show: function () {
458
+        // this.form.name = patientInfo.name
459
+        // this.form.gender = patientInfo.gender
460
+        // this.form.age = patientInfo.age
461
+        // this.form.birthday = patientInfo.birthday
462
+        // this.form.phone = patientInfo.phone
463
+        // this.form.birthday = patientInfo.birthday
464
+        // this.form.id_card = patientInfo.id_card_no
465
+        // this.form.social_type = patientInfo.health_care_type
466
+        // this.form.id_card_type = 1
467
+        // if( this.form.social_type == 0){
468
+        //   this.form.social_type = ""
469
+        //
470
+        // }
292 471
         this.visibility = true
293 472
 
294
-      }, hide: function() {
473
+      }, hide: function () {
295 474
         this.visibility = false
296
-      }, cancel: function(formName) {
475
+      }, cancel: function (formName) {
297 476
         this.$emit('cancel', this.getValue())
298 477
         this.$refs['formValue'].resetFields()
299 478
       },
300
-      confirm: function(formName) {
479
+      confirm: function (formName) {
301 480
         this.$refs['formValue'].validate((valid) => {
302 481
           if (valid) {
303 482
             let value = {}
@@ -307,7 +486,7 @@
307 486
           }
308 487
         })
309 488
       },
310
-      getValue: function() {
489
+      getValue: function () {
311 490
         let form = {}
312 491
         form = this.form
313 492
         return form
@@ -318,13 +497,16 @@
318 497
 </script>
319 498
 
320 499
 <style lang="scss" scoped>
321
-.registerDialog{
322
-  .el-form{
500
+  .registerDialog {
501
+
502
+  .el-form {
323 503
     display: flex;
324 504
     flex-wrap: wrap;
325 505
   }
326
-  .el-form-item{
327
-    width:50%;
506
+
507
+  .el-form-item {
508
+    width: 50%;
509
+  }
510
+
328 511
   }
329
-}
330 512
 </style>

文件差异内容过多而无法显示
+ 1045 - 224
src/xt_pages/outpatientCharges/outpatientChargesManagement.vue


+ 3 - 3
src/xt_pages/outpatientCharges/statementTemplate/printOne.vue 查看文件

@@ -186,9 +186,9 @@
186 186
             </tr>
187 187
             <tr>
188 188
                 <td>合计</td>
189
-                <td colspan="2" style="text-align:right;padding-right:10px;">{{(info.bed_cost_total + info.operation_cost_total + info.other_cost_total + info.material_cost_total + info.western_medicine_cost_total + info.chinese_traditional_medicine_cost_total + info.check_cost_total + info.laboratory_cost_total + info.treat_cost_total) * 100 /100 }}</td>
190
-                <td style="text-align:right;padding-right:10px;">{{(info.bed_cost_self_total + info.operation_cost_self_total + info.other_cost_self_total + info.material_cost_self_total + info.western_medicine_cost_self_total + info.chinese_traditional_medicine_cost_self_total + info.check_cost_self_total + info.laboratory_cost_self_total + info.treat_cost_self_total)*100/100}}</td>
191
-                <td colspan="2" style="text-align:right;padding-right:10px;">{{(info.bed_cost_part_self_total + info.operation_cost_part_self_total + info.other_cost_part_self_total + info.material_cost_part_self_total + info.western_medicine_cost_part_self_total + info.chinese_traditional_medicine_cost_part_self_total + info.check_cost_part_self_total + info.laboratory_cost_part_self_total + info.treat_cost_part_self_total)*100/100}}</td>
189
+                <td colspan="2" style="text-align:right;padding-right:10px;">{{(parseFloat(info.bed_cost_total) + parseFloat(info.operation_cost_total) + parseFloat(info.other_cost_total) + parseFloat(info.material_cost_total) + parseFloat(info.western_medicine_cost_total) + parseFloat(info.chinese_traditional_medicine_cost_total) + parseFloat(info.check_cost_total) + parseFloat(info.laboratory_cost_total) + parseFloat(info.treat_cost_total)).toFixed(2) }}</td>
190
+                <td style="text-align:right;padding-right:10px;">{{(parseFloat(info.bed_cost_self_total )+ parseFloat(info.operation_cost_self_total) + parseFloat(info.other_cost_self_total) + parseFloat(info.material_cost_self_total) + parseFloat(info.western_medicine_cost_self_total) + parseFloat(info.chinese_traditional_medicine_cost_self_total) + parseFloat(info.check_cost_self_total) + parseFloat(info.laboratory_cost_self_total) + parseFloat(info.treat_cost_self_total)).toFixed(2)}}</td>
191
+                <td colspan="2" style="text-align:right;padding-right:10px;">{{(parseFloat(info.bed_cost_part_self_total) + parseFloat(info.operation_cost_part_self_total) + parseFloat(info.other_cost_part_self_total) + parseFloat(info.material_cost_part_self_total) + parseFloat(info.western_medicine_cost_part_self_total) + parseFloat(info.chinese_traditional_medicine_cost_part_self_total) + parseFloat(info.check_cost_part_self_total) + parseFloat(info.laboratory_cost_part_self_total) + parseFloat(info.treat_cost_part_self_total)).toFixed(2)}}</td>
192 192
                 <td style="text-align:right;padding-right:10px;"></td>
193 193
                 <td colspan="2" style="text-align:right;padding-right:10px;"></td>
194 194
                 <td style="text-align:right;padding-right:10px;"></td>

+ 2 - 2
src/xt_pages/outpatientCharges/summary.vue 查看文件

@@ -67,13 +67,13 @@
67 67
           <template slot-scope="scope">{{scope.row.reality_price}}</template>
68 68
         </el-table-column>
69 69
         <el-table-column align="center" prop="name" label="科室">
70
-          <template slot-scope="scope">{{scope.row.p_info.department.name}}</template>
70
+          <template slot-scope="scope">{{scope.row.department_name}}</template>
71 71
         </el-table-column>
72 72
         <el-table-column align="center" prop="name" label="收费日期">
73 73
           <template slot-scope="scope">  {{getTimes(scope.row.settle_accounts_date)}}</template>
74 74
         </el-table-column>
75 75
         <el-table-column align="center" prop="name" label="收费员">
76
-          <template slot-scope="scope">{{ scope.row.p_info.doctor }}</template>
76
+          <template slot-scope="scope">{{ scope.row.doctor_name }}</template>
77 77
         </el-table-column>
78 78
         <el-table-column align="center" prop="name" label="状态">
79 79
           <template slot-scope="scope">

+ 0 - 2
src/xt_pages/outpatientDoctorStation/components/callPrescription.vue 查看文件

@@ -14,7 +14,6 @@
14 14
       :editable="false"
15 15
       style="width: 150px;"
16 16
       type="date"
17
-      :picker-options="pickerOptions"
18 17
       placeholder="选择日期时间"
19 18
       align="right"
20 19
       format="yyyy-MM-dd"
@@ -26,7 +25,6 @@
26 25
       prefix-icon="el-icon-date"
27 26
       @change="changeEndTime"
28 27
       :editable="false"
29
-      :picker-options="pickerOptions"
30 28
       style="width: 150px;"
31 29
       type="date"
32 30
       placeholder="选择日期时间"

文件差异内容过多而无法显示
+ 970 - 212
src/xt_pages/outpatientDoctorStation/components/deskPrescription.vue


文件差异内容过多而无法显示
+ 534 - 308
src/xt_pages/outpatientDoctorStation/doctorDesk.vue


+ 253 - 103
src/xt_pages/outpatientRegistration/index.vue 查看文件

@@ -7,18 +7,37 @@
7 7
       <div class="nameTitle">患者基本信息:</div>
8 8
       <div class="formMain">
9 9
         <el-form class="basicForm" :model="form" :rules="rules" ref="form" label-width="100px">
10
+          <!--<el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">-->
11
+          <!--&lt;!&ndash; <el-input  v-model="form.name"></el-input> &ndash;&gt;-->
12
+          <!--<el-select v-model="form.name" placeholder="请选择" @change="changeName">-->
13
+          <!--<el-option-->
14
+          <!--v-for="item,index in patient"-->
15
+          <!--:key="index"-->
16
+          <!--:label="item.name"-->
17
+          <!--:value="item.id">-->
18
+          <!--</el-option>-->
19
+          <!--</el-select>-->
20
+          <!--</el-form-item>-->
21
+
10 22
           <el-form-item label="患者姓名:" prop="name" :validate-event="is_Name">
11
-            <!-- <el-input  v-model="form.name"></el-input> -->
12
-            <el-select v-model="form.name" placeholder="请选择" @change="changeName">
13
-              <el-option
14
-                v-for="item in patient"
15
-                :key="item.patient_id"
16
-                :label="item.name"
17
-                :value="item.patient_id">
18
-              </el-option>
19
-            </el-select>
23
+            <el-autocomplete
24
+              class="checkSearch"
25
+              popper-class="my-autocomplete"
26
+              v-model="form.name"
27
+              :fetch-suggestions="querySearchAsync"
28
+              :trigger-on-focus="false"
29
+              placeholder="请输入病人名字"
30
+              @select="handleSelect"
31
+              style="width:160px;"
32
+            >
33
+              <i class="el-icon-search el-input__icon" slot="suffix"></i>
34
+              <template slot-scope="{ item }">
35
+                <div class="name">{{ item.name }}</div>
36
+              </template>
37
+            </el-autocomplete>
20 38
           </el-form-item>
21 39
 
40
+
22 41
           <el-form-item label="性别:" prop="sex" :validate-event="is_Name">
23 42
             <el-select v-model="form.sex" placeholder="请选择">
24 43
               <el-option
@@ -45,25 +64,7 @@
45 64
           </el-form-item>
46 65
 
47 66
 
48
-          <el-form-item label="医疗类别:">
49
-            <el-select v-model="form.medicalCare" placeholder="请选择">
50
-              <!-- <el-option
51
-              v-for="item in medicalCare"
52
-              :key="item.value"
53
-              :label="item.label"
54
-              :value="item.value">
55
-              </el-option> -->
56
-              <el-option
57
-                v-for="(item,index) in getDictionaryDataConfig('system','social_type')"
58
-                :key="index"
59
-                :label="item.name"
60
-                :value="item.id">
61
-              </el-option>
62
-            </el-select>
63
-          </el-form-item>
64
-
65
-
66
-          <el-form-item label="证件类型:">
67
+          <el-form-item label="证件类型:" prop="certificates" :validate-event="is_Name">
67 68
             <el-select v-model="form.certificates" placeholder="请选择">
68 69
               <el-option
69 70
                 v-for="item in certificates"
@@ -109,7 +110,7 @@
109 110
           </el-form-item>
110 111
 
111 112
 
112
-          <el-form-item label="读卡类型:">
113
+          <el-form-item label="读卡类型:" prop="id_card_type" :validate-event="is_Name">
113 114
             <el-select v-model="form.id_card_type" placeholder="请选择">
114 115
               <el-option
115 116
                 v-for="item in IDCardTypes"
@@ -142,6 +143,52 @@
142 143
               </el-option>
143 144
             </el-select>
144 145
           </el-form-item>
146
+
147
+          <el-form-item label="处方类型:" prop="p_type" :validate-event="is_Name">
148
+            <el-select style="margin-right:5px;width:100px;" v-model="form.p_type" placeholder=""
149
+            >
150
+              <el-option
151
+                v-for="(item,index) in registers"
152
+                :key="index"
153
+                :label="item.label"
154
+                :value="item.value">
155
+              </el-option>
156
+            </el-select>
157
+          </el-form-item>
158
+          <el-form-item label="大病类别:" prop="sick_type" :validate-event="is_Name">
159
+            <el-select style="margin-right:5px;width:100px;" v-model="form.sick_type" placeholder="">
160
+              <el-option
161
+                v-for="(item,index) in sick"
162
+                :key="index"
163
+                :label="item.class_name"
164
+                :value="item.id">
165
+              </el-option>
166
+            </el-select>
167
+          </el-form-item>
168
+
169
+          <el-form-item label="诊断:" prop="diagnosis" :validate-event="is_Name">
170
+            <el-select style="margin-right:5px;width:100px;" v-model="form.diagnosis" placeholder="">
171
+              <el-option
172
+                v-for="(item,index) in diagnoses"
173
+                :key="index"
174
+                :label="item.class_name"
175
+                :value="item.id">
176
+              </el-option>
177
+            </el-select>
178
+          </el-form-item>
179
+
180
+
181
+          <el-form-item label="医疗类别:">
182
+            <el-select v-model="form.medicalCare" placeholder="请选择">
183
+              <el-option
184
+                v-for="(item,index) in getDictionaryDataConfig('system','social_type')"
185
+                :key="index"
186
+                :label="item.name"
187
+                :value="item.id">
188
+              </el-option>
189
+            </el-select>
190
+          </el-form-item>
191
+
145 192
           <el-form-item label="医生:" prop="doctor" :validate-event="is_Name">
146 193
             <el-select v-model="form.doctor" placeholder="请选择" @change="changeDoctor">
147 194
               <el-option
@@ -189,11 +236,19 @@
189 236
 </template>
190 237
 
191 238
 <script>
239
+  import {PostSearch} from '@/api/patient'
192 240
   import BreadCrumb from '@/xt_pages/components/bread-crumb'
193 241
   import {basename} from 'path'
194
-  import {getAllDoctorList, getPatientDetail, getTodaySchedulePatient, saveHisPatient} from "@/api/project/project"
242
+  import {
243
+    getAllDoctorList,
244
+    getPatientDetail,
245
+    getTodaySchedulePatient,
246
+    getUnRegisterHisPatientList,
247
+    saveHisPatient
248
+  } from "@/api/project/project"
195 249
   import {getDictionaryDataConfig} from '@/utils/data'
196 250
   import {uParseTime} from "@/utils/tools";
251
+  import {getInitData,} from '@/api/his/his'
197 252
   import axios from 'axios'
198 253
 
199 254
   const moment = require('moment')
@@ -203,16 +258,32 @@
203 258
     },
204 259
     data() {
205 260
       return {
261
+        registers: [
262
+          {value: 11, label: "普通门诊"},
263
+          {value: 12, label: '门诊挂号'},
264
+          {value: 13, label: "急诊"},
265
+          {value: 14, label: "门诊特殊病"},
266
+          {value: 15, label: "门诊统筹"},
267
+          {value: 16, label: "门诊慢性病"},
268
+          {value: 21, label: "普通住院"},
269
+
270
+        ],
271
+        sick: [],
272
+        diagnoses: [],
206 273
         crumbs: [
207 274
           {path: false, name: '门诊挂号'},
208 275
           {path: false, name: '门诊挂号'}
209 276
         ],
210 277
         form: {
278
+          id: 0,
279
+          p_type: '',
280
+          sick_type: '',
281
+          diagnosis: '',
211 282
           settlementValue: '',
212 283
           medicalInsuranceCard: '',
213 284
           name: '',
214 285
           sex: '',
215
-          certificates: '',
286
+          certificates: 1,
216 287
           medicalCare: '',
217 288
           birthday: '',
218 289
           age: '',
@@ -227,7 +298,8 @@
227 298
           total: '',
228 299
           phone: '',
229 300
           social_type: '',
230
-          id_card_type: '',
301
+          id_card_type: 1,
302
+
231 303
         },
232 304
         settlement:
233 305
           [
@@ -332,7 +404,16 @@
332 404
           doctor: [{required: true, message: '请选择医生', trigger: 'blur'}],
333 405
           department: [{required: true, message: '请填写科室', trigger: 'blur'}],
334 406
           age: [{required: true, message: "患者年龄不能为空", trigger: 'blur'}],
335
-          birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}]
407
+          birthday: [{required: true, message: "患者出生日期不能为空", trigger: 'blur'}],
408
+          certificates: [{required: true, message: "证件类型不能为空", trigger: 'change'}],
409
+          id_card_type: [{required: true, message: "读卡类型不能为空", trigger: 'change'}],
410
+
411
+
412
+          p_type: [{required: true, message: "处方类型不能为空", trigger: 'change'}],
413
+          sick_type: [{required: true, message: "大病类别不能为空", trigger: 'change'}],
414
+          diagnosis: [{required: true, message: "诊断不能为空", trigger: 'change'}],
415
+
416
+
336 417
         },
337 418
         doctorList: [],
338 419
         departmentList: [],
@@ -351,6 +432,30 @@
351 432
       }
352 433
     },
353 434
     methods: {
435
+      handleSelect(val) {
436
+        this.form.id = val.id
437
+        this.form.name = val.name
438
+        this.form.sex = val.gender
439
+        this.form.age = val.age
440
+        this.form.birthday = uParseTime(val.birthday, '{y}-{m}-{d}')
441
+        this.form.phone = val.phone
442
+        this.form.idCard = val.id_card_no
443
+      },
444
+      querySearchAsync(keyword, cb) {
445
+        let key = ''
446
+        if (keyword != undefined) {
447
+          key = keyword
448
+        }
449
+        let searchArray = []
450
+        PostSearch(key).then(response => {
451
+          if (response.data.state == 1) {
452
+            searchArray = response.data.data.patient
453
+            cb(searchArray)
454
+          } else {
455
+            cb([])
456
+          }
457
+        })
458
+      },
354 459
       reading(medicalInsuranceCard) {
355 460
         var that = this
356 461
         if (this.form.id_card_type.length == 0 || this.form.id_card_type == 0) {
@@ -368,15 +473,26 @@
368 473
               that.$message.error(response.data.msg)
369 474
               return false
370 475
             } else {
371
-              this.form.name = this.baseinfo.psn_name
372
-              this.form.sex = parseInt(this.baseinfo.gend)
373
-              this.form.psn_cert_type = this.baseinfo.certificates
374
-              this.form.birthday = this.baseinfo.brdy
375
-              this.form.age = parseInt(this.baseinfo.age)
376
-              this.form.idCard = this.baseinfo.certno
377
-              this.form.certificates = 1
378
-
379
-
476
+              var patient = response.data.data.patient
477
+
478
+              if (that.form.id_card_type == 1) {
479
+                that.form.name = patient.ID
480
+                that.form.sex = patient.gender
481
+                that.form.age = patient.age
482
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
483
+                that.form.phone = patient.phone
484
+                that.form.idCard = patient.id_card_no
485
+                that.form.medicalInsuranceCard = response.data.data.number
486
+
487
+
488
+              } else if (that.form.id_card_type == 2) {
489
+                that.form.name = patient.ID
490
+                that.form.sex = patient.gender
491
+                that.form.age = patient.age
492
+                that.form.birthday = uParseTime(patient.birthday, '{y}-{m}-{d}')
493
+                that.form.phone = patient.phone
494
+                that.form.idCard = patient.id_card_no
495
+              }
380 496
               that.$message({message: '读卡成功', type: 'success'})
381 497
             }
382 498
           })
@@ -510,21 +626,36 @@
510 626
           this.is_Name = true
511 627
           return
512 628
         }
629
+        if (this.form.id_card_type == "") {
630
+          this.$message.error("读卡类型不能为空")
631
+          this.is_Name = true
632
+          return
633
+        }
513 634
 
514 635
         if (this.form.idCard == "") {
515 636
           this.$message.error("证件号码不能为空")
516 637
           this.is_Name = true
517 638
           return
518 639
         }
519
-        var name = ""
520
-        for (let i = 0; i < this.patient.length; i++) {
521
-          if (this.form.name == this.patient[i].patient_id) {
522
-            name = this.patient[i].name
523
-          }
640
+
641
+        if (this.form.p_type == "") {
642
+          this.$message.error("处方类型不能为空")
643
+          this.is_Name = true
644
+          return
524 645
         }
525 646
 
526
-        this.form.name = name
527 647
 
648
+        if (this.form.diagnosis == "") {
649
+          this.$message.error("诊断不能为空")
650
+          this.is_Name = true
651
+          return
652
+        }
653
+
654
+        if (this.form.sick_type == "") {
655
+          this.$message.error("大病类别不能为空")
656
+          this.is_Name = true
657
+          return
658
+        }
528 659
 
529 660
         this.$refs[formName].validate((valid) => {
530 661
           if (valid) {
@@ -539,38 +670,40 @@
539 670
             }
540 671
 
541 672
             var params = {
542
-              settlementValue: this.form.settlementValue,
543
-              medicalInsuranceCard: this.form.medicalInsuranceCard,
673
+              id: this.form.id,
674
+              settlement_value: this.form.settlementValue,
675
+              medical_insurance_card: this.form.medicalInsuranceCard,
544 676
               name: this.form.name,
545 677
               sex: this.form.sex,
546 678
               id_card_type: this.form.id_card_type,
547 679
               certificates: this.form.certificates,
548
-              medicalCare: this.form.medicalCare,
549
-              birthDay: moment(new Date(this.form.birthday)).format('YYYY-MM-DD'),
680
+              medical_care: this.form.medicalCare,
681
+              birthday: moment(new Date(this.form.birthday)).format('YYYY-MM-DD'),
550 682
               age: parseInt(this.form.age),
551
-              idCard: this.form.idCard,
683
+              id_card: this.form.idCard,
552 684
               register: this.form.register,
553 685
               doctor: this.form.doctor,
554 686
               department: this.form.department,
555 687
               costChecked: this.check,
556
-              registrationFee: this.form.registrationFee,
557
-              medicalExpenses: this.form.medicalExpenses,
688
+              registration_fee: this.form.registrationFee,
689
+              medical_expenses: this.form.medicalExpenses,
558 690
               cost: this.form.cost,
559 691
               total: this.total,
560 692
               phone: this.form.phone,
561
-              social_type: this.form.social_type
693
+              social_type: this.form.social_type,
694
+              p_type: this.form.p_type,
695
+              diagnosis: this.form.diagnosis,
696
+              sick_type: this.form.sick_type
562 697
             }
563
-
564
-            params['id'] = this.patientInfo.id,
565 698
             params['record_time'] = this.record_date,
566 699
               params['admin_user_id'] = this.$store.getters.xt_user.user.id
567 700
             this.loadingone = true
568 701
 
569
-            if (this.$store.getters.xt_user.org_id == 4 || this.$store.getters.xt_user.org_id == 9919) {
702
+            if (this.$store.getters.xt_user.org_id == 9919) {
570 703
               var that = this
571 704
 
572 705
               axios.get('http://127.0.0.1:9532/api/register/get', {
573
-                params: forms
706
+                params: params
574 707
               })
575 708
                 .then(function (response) {
576 709
                   if (response.data.state == 0) {
@@ -591,59 +724,59 @@
591 724
 
592 725
                 });
593 726
             } else {
594
-              register(forms).then(response => {
595
-                if (response.data.state == 0) {
596
-                  this.$message.error(response.data.msg)
597
-                  this.loadingone = false
598
-                  this.$refs.register.hide()
599
-                  return false
727
+              saveHisPatient(params).then(response => {
728
+                if (response.data.state == 1) {
729
+                  var patient = response.data.data.patient
730
+                  this.getTodaySchedulePatient()
731
+                  this.$message.success("保存成功")
732
+                  this.form.settlementValue = "",
733
+                    this.form.medicalInsuranceCard = "",
734
+                    this.form.name = "",
735
+                    this.form.sex = "",
736
+                    this.form.certificates = "",
737
+                    this.form.medicalCare = "",
738
+                    this.form.birthday = "",
739
+                    this.form.age = "",
740
+                    this.form.idCard = "",
741
+                    this.form.register = "",
742
+                    this.form.doctor = "",
743
+                    this.form.department = "",
744
+                    this.form.costChecked = false,
745
+                    this.form.registrationFee = "",
746
+                    this.form.medicalExpenses = "",
747
+                    this.form.cost = "",
748
+                    this.form.total = "" ,
749
+                    this.form.phone = "",
750
+                    this.form.social_type = ""
600 751
                 } else {
601
-                  this.getPatientList()
602
-                  this.$message({message: '挂号成功', type: 'success'})
603
-                  this.$refs.register.hide()
604
-                  this.loadingone = false
605
-                  var his_info = response.data.data.his_info
606
-                  this.hisPatientInfo = his_info
752
+                  this.$message.error("今日患者已挂号!")
607 753
                 }
608 754
               })
755
+
609 756
             }
610 757
 
611 758
 
612
-            saveHisPatient(params).then(response => {
613
-              if (response.data.state == 1) {
614
-                var patient = response.data.data.patient
615
-                console.log("patient", patient)
616
-                this.$message.success("保存成功")
617
-                this.form.settlementValue = "",
618
-                  this.form.medicalInsuranceCard = "",
619
-                  this.form.name = "",
620
-                  this.form.sex = "",
621
-                  this.form.certificates = "",
622
-                  this.form.medicalCare = "",
623
-                  this.form.birthday = "",
624
-                  this.form.age = "",
625
-                  this.form.idCard = "",
626
-                  this.form.register = "",
627
-                  this.form.doctor = "",
628
-                  this.form.department = "",
629
-                  this.form.costChecked = false,
630
-                  this.form.registrationFee = "",
631
-                  this.form.medicalExpenses = "",
632
-                  this.form.cost = "",
633
-                  this.form.total = "" ,
634
-                  this.form.phone = "",
635
-                  this.form.social_type = ""
636
-              } else {
637
-                this.$message.error("今日患者已挂号!")
638
-              }
639
-            })
640 759
           }
641 760
         })
642 761
       },
643 762
       getTodaySchedulePatient() {
644
-        getTodaySchedulePatient().then(response => {
763
+        var nowDate = new Date()
764
+        var nowYear = nowDate.getFullYear()
765
+        var nowMonth = nowDate.getMonth() + 1
766
+        var nowDay = nowDate.getDate()
767
+        this.record_date =
768
+          nowYear +
769
+          '-' +
770
+          (nowMonth < 10 ? '0' + nowMonth : nowMonth) +
771
+          '-' +
772
+          (nowDay < 10 ? '0' + nowDay : nowDay)
773
+        let params = {
774
+
775
+          record_date: this.record_date
776
+        }
777
+        getUnRegisterHisPatientList(params).then(response => {
645 778
           if (response.data.state == 1) {
646
-            var patient = response.data.data.patient
779
+            var patient = response.data.data.list
647 780
             console.log("今日排班", patient)
648 781
             this.patient = patient
649 782
           }
@@ -683,9 +816,26 @@
683 816
             this.form.idCard = patient.id_card_no
684 817
           }
685 818
         })
686
-      }
819
+      }, getInitData() {
820
+        getInitData().then(response => {
821
+          if (response.data.state == 0) {
822
+            this.$message.error(response.data.msg)
823
+            return false
824
+          } else {
825
+            this.doctors = response.data.data.doctors
826
+            this.department = response.data.data.department
827
+            this.sick = response.data.data.sick
828
+            this.diagnoses = response.data.data.diagnose
829
+
830
+          }
831
+        })
832
+
833
+      },
834
+
687 835
     },
688 836
     created() {
837
+      this.getInitData()
838
+
689 839
       //获取当前机构有人员信息
690 840
       this.getAllDoctorList()
691 841
       //获取今日排班的患者

+ 8 - 2
src/xt_pages/qcd/officesControlAnalysis/project.vue 查看文件

@@ -285,13 +285,13 @@ export default {
285 285
         })
286 286
     },
287 287
     handleModeType(val){
288
-     
288
+
289 289
       console.log("modetype",this.type,this.mode_type)
290 290
       if(this.type == 2){
291 291
          this.bloodType = val
292 292
         if(this.mode_type == -1 || this.mode_type == -2){
293 293
           this.getMonthBloodList()
294
-         
294
+
295 295
           return false
296 296
         }else{
297 297
             // console.log("chuff")
@@ -605,6 +605,12 @@ export default {
605 605
             }
606 606
         }
607 607
 
608
+        for(let i=0;i<this.normdata.length;i++){
609
+          if(this.normdata[i].inspection_minor == this.mode_type){
610
+            this.range_type = this.normdata[i].range_type
611
+          }
612
+        }
613
+
608 614
         const params = {
609 615
           lapseto:this.lapseto,
610 616
           itemtype:this.type,

+ 9 - 0
src/xt_pages/stock/detail/print.vue 查看文件

@@ -74,6 +74,15 @@
74 74
 
75 75
             </tbody>
76 76
           </table>
77
+
78
+          <div style="display:flex;margin-top:20px;float:right;">
79
+            <div style="width:50px;">审批:</div><div style="width:100px;"></div>
80
+            <div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
81
+            <div style="width:50px;">会计:</div><div style="width:100px;"></div>
82
+            <div style="width:50px;">审核:</div><div style="width:100px;"></div>
83
+            <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
84
+          </div>
85
+
77 86
         </div>
78 87
 
79 88
       </div>

+ 13 - 1
src/xt_pages/stock/drugs/drugCancelDetailPrint.vue 查看文件

@@ -10,7 +10,8 @@
10 10
         <div class="dialysis-print-order">
11 11
          <div class="order-yy-name">{{orgname}}</div>
12 12
           <div class="order-title">退库单</div>
13
-        <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
13
+          <div style="float: left;margin-bottom: 10px;">{{getDateOne()}}</div>
14
+          <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
14 15
 
15 16
           <table class="print-table" border="1">
16 17
             <tbody>
@@ -61,6 +62,14 @@
61 62
 
62 63
             </tbody>
63 64
           </table>
65
+
66
+          <div style="display:flex;margin-top:20px;float:right;">
67
+            <div style="width:50px;">审批:</div><div style="width:100px;"></div>
68
+            <div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
69
+            <div style="width:50px;">会计:</div><div style="width:100px;"></div>
70
+            <div style="width:50px;">审核:</div><div style="width:100px;"></div>
71
+            <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
72
+          </div>
64 73
         </div>
65 74
 
66 75
       </div>
@@ -105,6 +114,9 @@
105 114
       }
106 115
     },
107 116
     methods: {
117
+      getDateOne(){
118
+        return "出库日期: "+this.start_time +"~"+this.end_time
119
+      },
108 120
       getDateTwo(){
109 121
         var ptime = Math.round(new Date().getTime() / 1000)
110 122
         return "打印单日期:"+uParseTime(ptime, '{y}-{m}-{d}')

+ 13 - 1
src/xt_pages/stock/drugs/drugCancelOurderPrint.vue 查看文件

@@ -10,7 +10,8 @@
10 10
         <div class="dialysis-print-order">
11 11
          <div class="order-yy-name">{{orgname}}</div>
12 12
           <div class="order-title">退货单</div>
13
-        <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
13
+          <div style="float: left;margin-bottom: 10px;">{{getDateOne()}}</div>
14
+          <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
14 15
 
15 16
           <table class="print-table" border="1">
16 17
             <tbody>
@@ -60,6 +61,14 @@
60 61
 
61 62
             </tbody>
62 63
           </table>
64
+
65
+          <div style="display:flex;margin-top:20px;float:right;">
66
+            <div style="width:50px;">审批:</div><div style="width:100px;"></div>
67
+            <div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
68
+            <div style="width:50px;">会计:</div><div style="width:100px;"></div>
69
+            <div style="width:50px;">审核:</div><div style="width:100px;"></div>
70
+            <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
71
+          </div>
63 72
         </div>
64 73
 
65 74
       </div>
@@ -104,6 +113,9 @@
104 113
       }
105 114
     },
106 115
     methods: {
116
+      getDateOne(){
117
+        return "退货日期: "+this.start_time +"~"+this.end_time
118
+      },
107 119
       getDateTwo(){
108 120
         var ptime = Math.round(new Date().getTime() / 1000)
109 121
         return "打印单日期:"+uParseTime(ptime, '{y}-{m}-{d}')

+ 13 - 1
src/xt_pages/stock/drugs/drugOutOrderPrint.vue 查看文件

@@ -10,7 +10,8 @@
10 10
         <div class="dialysis-print-order">
11 11
          <div class="order-yy-name">{{orgname}}</div>
12 12
           <div class="order-title">出库单</div>
13
-        <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
13
+          <div style="float: left;margin-bottom: 10px;">{{getDateOne()}}</div>
14
+          <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
14 15
 
15 16
           <table class="print-table" border="1">
16 17
             <tbody>
@@ -68,6 +69,14 @@
68 69
 
69 70
             </tbody>
70 71
           </table>
72
+
73
+          <div style="display:flex;margin-top:20px;float:right;">
74
+            <div style="width:50px;">审批:</div><div style="width:100px;"></div>
75
+            <div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
76
+            <div style="width:50px;">会计:</div><div style="width:100px;"></div>
77
+            <div style="width:50px;">审核:</div><div style="width:100px;"></div>
78
+            <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
79
+          </div>
71 80
         </div>
72 81
 
73 82
       </div>
@@ -112,6 +121,9 @@
112 121
       }
113 122
     },
114 123
     methods: {
124
+      getDateOne(){
125
+        return "出库日期: "+this.start_time +"~"+this.end_time
126
+      },
115 127
       getDateTwo(){
116 128
         var ptime = Math.round(new Date().getTime() / 1000)
117 129
         return "打印单日期:"+uParseTime(ptime, '{y}-{m}-{d}')

+ 13 - 1
src/xt_pages/stock/drugs/drugPrint.vue 查看文件

@@ -10,7 +10,8 @@
10 10
         <div class="dialysis-print-order">
11 11
          <div class="order-yy-name">{{orgname}}</div>
12 12
           <div class="order-title">入库单</div>
13
-        <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
13
+          <div style="float: left;margin-bottom: 10px;">{{getDateOne()}}</div>
14
+          <div style="float: right;margin-bottom: 10px;">{{getDateTwo()}}</div>
14 15
 
15 16
           <table class="print-table" border="1">
16 17
             <tbody>
@@ -60,6 +61,14 @@
60 61
 
61 62
             </tbody>
62 63
           </table>
64
+
65
+          <div style="display:flex;margin-top:20px;float:right;">
66
+            <div style="width:50px;">审批:</div><div style="width:100px;"></div>
67
+            <div style="width:80px;">药材主任:</div><div style="width:100px;"></div>
68
+            <div style="width:50px;">会计:</div><div style="width:100px;"></div>
69
+            <div style="width:50px;">审核:</div><div style="width:100px;"></div>
70
+            <div style="width:70px;">制单人:</div><div style="width:100px;"></div>
71
+          </div>
63 72
         </div>
64 73
 
65 74
       </div>
@@ -104,6 +113,9 @@
104 113
       }
105 114
     },
106 115
     methods: {
116
+      getDateOne(){
117
+        return "入库日期: "+this.start_time +"~"+this.end_time
118
+      },
107 119
       getDateTwo(){
108 120
         var ptime = Math.round(new Date().getTime() / 1000)
109 121
         return "打印单日期:"+uParseTime(ptime, '{y}-{m}-{d}')

+ 1 - 1
src/xt_pages/workforce/appointment.vue 查看文件

@@ -91,7 +91,7 @@
91 91
     <div class="app-container">
92 92
       <!-- <el-row>
93 93
         <el-col :span="24"> -->
94
-      <div style="margin-left:832px;position:fixed;z-index:99">
94
+      <div style="right:30px;position:fixed;z-index:99">
95 95
        <span>导出周次:</span>
96 96
         <el-date-picker
97 97
           v-model="weekTime"